sh3-core 0.6.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 +9 -0
- package/dist/Shell.svelte +283 -0
- package/dist/Shell.svelte.d.ts +5 -0
- package/dist/api.d.ts +28 -0
- package/dist/api.js +50 -0
- package/dist/app/admin/ApiKeysView.svelte +169 -0
- package/dist/app/admin/ApiKeysView.svelte.d.ts +3 -0
- package/dist/app/admin/AuthSettingsView.svelte +105 -0
- package/dist/app/admin/AuthSettingsView.svelte.d.ts +3 -0
- package/dist/app/admin/SystemView.svelte +73 -0
- package/dist/app/admin/SystemView.svelte.d.ts +3 -0
- package/dist/app/admin/UsersView.svelte +188 -0
- package/dist/app/admin/UsersView.svelte.d.ts +3 -0
- package/dist/app/admin/adminApp.d.ts +7 -0
- package/dist/app/admin/adminApp.js +25 -0
- package/dist/app/admin/adminShard.svelte.d.ts +4 -0
- package/dist/app/admin/adminShard.svelte.js +62 -0
- package/dist/app/store/InstalledView.svelte +246 -0
- package/dist/app/store/InstalledView.svelte.d.ts +3 -0
- package/dist/app/store/StoreView.svelte +522 -0
- package/dist/app/store/StoreView.svelte.d.ts +3 -0
- package/dist/app/store/storeApp.d.ts +10 -0
- package/dist/app/store/storeApp.js +26 -0
- package/dist/app/store/storeShard.svelte.d.ts +38 -0
- package/dist/app/store/storeShard.svelte.js +218 -0
- package/dist/apps/lifecycle.d.ts +42 -0
- package/dist/apps/lifecycle.js +184 -0
- package/dist/apps/registry.svelte.d.ts +40 -0
- package/dist/apps/registry.svelte.js +59 -0
- package/dist/apps/terminal/manifest.d.ts +8 -0
- package/dist/apps/terminal/manifest.js +13 -0
- package/dist/apps/terminal/terminal-app.d.ts +7 -0
- package/dist/apps/terminal/terminal-app.js +14 -0
- package/dist/apps/types.d.ts +93 -0
- package/dist/apps/types.js +10 -0
- package/dist/artifact.d.ts +32 -0
- package/dist/artifact.js +1 -0
- package/dist/assets/SH3.png +0 -0
- package/dist/assets/icons.svg +1126 -0
- package/dist/assets.d.ts +13 -0
- package/dist/auth/GuestBanner.svelte +134 -0
- package/dist/auth/GuestBanner.svelte.d.ts +3 -0
- package/dist/auth/SignInWall.svelte +203 -0
- package/dist/auth/SignInWall.svelte.d.ts +7 -0
- package/dist/auth/auth.svelte.d.ts +69 -0
- package/dist/auth/auth.svelte.js +165 -0
- package/dist/auth/index.d.ts +2 -0
- package/dist/auth/index.js +1 -0
- package/dist/auth/types.d.ts +41 -0
- package/dist/auth/types.js +6 -0
- package/dist/build.d.ts +49 -0
- package/dist/build.js +236 -0
- package/dist/contract.d.ts +20 -0
- package/dist/contract.js +28 -0
- package/dist/createShell.d.ts +24 -0
- package/dist/createShell.js +131 -0
- package/dist/documents/backends.d.ts +17 -0
- package/dist/documents/backends.js +156 -0
- package/dist/documents/config.d.ts +7 -0
- package/dist/documents/config.js +27 -0
- package/dist/documents/handle.d.ts +6 -0
- package/dist/documents/handle.js +154 -0
- package/dist/documents/http-backend.d.ts +22 -0
- package/dist/documents/http-backend.js +78 -0
- package/dist/documents/index.d.ts +6 -0
- package/dist/documents/index.js +8 -0
- package/dist/documents/notifications.d.ts +9 -0
- package/dist/documents/notifications.js +39 -0
- package/dist/documents/types.d.ts +97 -0
- package/dist/documents/types.js +12 -0
- package/dist/env/client.d.ts +44 -0
- package/dist/env/client.js +106 -0
- package/dist/env/index.d.ts +2 -0
- package/dist/env/index.js +1 -0
- package/dist/env/types.d.ts +12 -0
- package/dist/env/types.js +8 -0
- package/dist/host-entry.d.ts +13 -0
- package/dist/host-entry.js +17 -0
- package/dist/host.d.ts +15 -0
- package/dist/host.js +86 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +14 -0
- package/dist/layout/DragPreview.svelte +63 -0
- package/dist/layout/DragPreview.svelte.d.ts +3 -0
- package/dist/layout/LayoutRenderer.svelte +262 -0
- package/dist/layout/LayoutRenderer.svelte.d.ts +6 -0
- package/dist/layout/SlotContainer.svelte +140 -0
- package/dist/layout/SlotContainer.svelte.d.ts +8 -0
- package/dist/layout/SlotDropZone.svelte +122 -0
- package/dist/layout/SlotDropZone.svelte.d.ts +8 -0
- package/dist/layout/drag.svelte.d.ts +45 -0
- package/dist/layout/drag.svelte.js +200 -0
- package/dist/layout/inspection.d.ts +72 -0
- package/dist/layout/inspection.js +209 -0
- package/dist/layout/ops.d.ts +100 -0
- package/dist/layout/ops.js +310 -0
- package/dist/layout/slotHostPool.svelte.d.ts +36 -0
- package/dist/layout/slotHostPool.svelte.js +229 -0
- package/dist/layout/store.svelte.d.ts +39 -0
- package/dist/layout/store.svelte.js +153 -0
- package/dist/layout/tree-walk.d.ts +15 -0
- package/dist/layout/tree-walk.js +33 -0
- package/dist/layout/types.d.ts +108 -0
- package/dist/layout/types.js +25 -0
- package/dist/migrations/shell-rename.d.ts +16 -0
- package/dist/migrations/shell-rename.js +48 -0
- package/dist/overlays/ModalFrame.svelte +87 -0
- package/dist/overlays/ModalFrame.svelte.d.ts +10 -0
- package/dist/overlays/PopupFrame.svelte +85 -0
- package/dist/overlays/PopupFrame.svelte.d.ts +10 -0
- package/dist/overlays/ToastItem.svelte +77 -0
- package/dist/overlays/ToastItem.svelte.d.ts +9 -0
- package/dist/overlays/focusTrap.d.ts +1 -0
- package/dist/overlays/focusTrap.js +64 -0
- package/dist/overlays/modal.d.ts +9 -0
- package/dist/overlays/modal.js +141 -0
- package/dist/overlays/popup.d.ts +9 -0
- package/dist/overlays/popup.js +108 -0
- package/dist/overlays/roots.d.ts +4 -0
- package/dist/overlays/roots.js +31 -0
- package/dist/overlays/toast.d.ts +6 -0
- package/dist/overlays/toast.js +93 -0
- package/dist/overlays/types.d.ts +31 -0
- package/dist/overlays/types.js +15 -0
- package/dist/platform/index.d.ts +10 -0
- package/dist/platform/index.js +33 -0
- package/dist/platform/tauri-backend.d.ts +15 -0
- package/dist/platform/tauri-backend.js +58 -0
- package/dist/primitives/.gitkeep +0 -0
- package/dist/primitives/ResizableSplitter.svelte +333 -0
- package/dist/primitives/ResizableSplitter.svelte.d.ts +35 -0
- package/dist/primitives/TabbedPanel.svelte +305 -0
- package/dist/primitives/TabbedPanel.svelte.d.ts +50 -0
- package/dist/primitives/base.css +42 -0
- package/dist/registry/client.d.ts +74 -0
- package/dist/registry/client.js +117 -0
- package/dist/registry/index.d.ts +13 -0
- package/dist/registry/index.js +14 -0
- package/dist/registry/installer.d.ts +53 -0
- package/dist/registry/installer.js +168 -0
- package/dist/registry/integrity.d.ts +32 -0
- package/dist/registry/integrity.js +92 -0
- package/dist/registry/loader.d.ts +50 -0
- package/dist/registry/loader.js +145 -0
- package/dist/registry/schema.d.ts +47 -0
- package/dist/registry/schema.js +185 -0
- package/dist/registry/storage.d.ts +37 -0
- package/dist/registry/storage.js +101 -0
- package/dist/registry/types.d.ts +262 -0
- package/dist/registry/types.js +14 -0
- package/dist/server-shard/types.d.ts +67 -0
- package/dist/server-shard/types.js +13 -0
- package/dist/sh3core-shard/ShellHome.svelte +192 -0
- package/dist/sh3core-shard/ShellHome.svelte.d.ts +3 -0
- package/dist/sh3core-shard/ShellTitle.svelte +171 -0
- package/dist/sh3core-shard/ShellTitle.svelte.d.ts +3 -0
- package/dist/sh3core-shard/sh3coreShard.svelte.d.ts +2 -0
- package/dist/sh3core-shard/sh3coreShard.svelte.js +53 -0
- package/dist/shards/activate.svelte.d.ts +52 -0
- package/dist/shards/activate.svelte.js +186 -0
- package/dist/shards/registry.d.ts +4 -0
- package/dist/shards/registry.js +28 -0
- package/dist/shards/types.d.ts +207 -0
- package/dist/shards/types.js +20 -0
- package/dist/shell-shard/InputLine.svelte +133 -0
- package/dist/shell-shard/InputLine.svelte.d.ts +11 -0
- package/dist/shell-shard/ScrollbackView.svelte +47 -0
- package/dist/shell-shard/ScrollbackView.svelte.d.ts +7 -0
- package/dist/shell-shard/Terminal.svelte +122 -0
- package/dist/shell-shard/Terminal.svelte.d.ts +8 -0
- package/dist/shell-shard/entries/PromptEntry.svelte +25 -0
- package/dist/shell-shard/entries/PromptEntry.svelte.d.ts +7 -0
- package/dist/shell-shard/entries/RichEntry.svelte +19 -0
- package/dist/shell-shard/entries/RichEntry.svelte.d.ts +8 -0
- package/dist/shell-shard/entries/StatusEntry.svelte +22 -0
- package/dist/shell-shard/entries/StatusEntry.svelte.d.ts +7 -0
- package/dist/shell-shard/entries/TextEntry.svelte +25 -0
- package/dist/shell-shard/entries/TextEntry.svelte.d.ts +7 -0
- package/dist/shell-shard/manifest.d.ts +2 -0
- package/dist/shell-shard/manifest.js +11 -0
- package/dist/shell-shard/protocol.d.ts +90 -0
- package/dist/shell-shard/protocol.js +11 -0
- package/dist/shell-shard/registry.d.ts +69 -0
- package/dist/shell-shard/registry.js +47 -0
- package/dist/shell-shard/rich/AppCard.svelte +25 -0
- package/dist/shell-shard/rich/AppCard.svelte.d.ts +10 -0
- package/dist/shell-shard/rich/AppsTable.svelte +29 -0
- package/dist/shell-shard/rich/AppsTable.svelte.d.ts +12 -0
- package/dist/shell-shard/rich/EnvTable.svelte +27 -0
- package/dist/shell-shard/rich/EnvTable.svelte.d.ts +8 -0
- package/dist/shell-shard/rich/HelpTable.svelte +29 -0
- package/dist/shell-shard/rich/HelpTable.svelte.d.ts +12 -0
- package/dist/shell-shard/rich/HistoryList.svelte +37 -0
- package/dist/shell-shard/rich/HistoryList.svelte.d.ts +9 -0
- package/dist/shell-shard/rich/ShardsTable.svelte +28 -0
- package/dist/shell-shard/rich/ShardsTable.svelte.d.ts +12 -0
- package/dist/shell-shard/rich/ViewsTable.svelte +31 -0
- package/dist/shell-shard/rich/ViewsTable.svelte.d.ts +13 -0
- package/dist/shell-shard/rich/ZoneTree.svelte +19 -0
- package/dist/shell-shard/rich/ZoneTree.svelte.d.ts +8 -0
- package/dist/shell-shard/rich/ZonesTable.svelte +27 -0
- package/dist/shell-shard/rich/ZonesTable.svelte.d.ts +11 -0
- package/dist/shell-shard/scrollback.svelte.d.ts +36 -0
- package/dist/shell-shard/scrollback.svelte.js +43 -0
- package/dist/shell-shard/session-client.svelte.d.ts +23 -0
- package/dist/shell-shard/session-client.svelte.js +120 -0
- package/dist/shell-shard/shellShard.svelte.d.ts +2 -0
- package/dist/shell-shard/shellShard.svelte.js +139 -0
- package/dist/shell-shard/verbs/apps.d.ts +3 -0
- package/dist/shell-shard/verbs/apps.js +50 -0
- package/dist/shell-shard/verbs/clear.d.ts +2 -0
- package/dist/shell-shard/verbs/clear.js +7 -0
- package/dist/shell-shard/verbs/help.d.ts +2 -0
- package/dist/shell-shard/verbs/help.js +21 -0
- package/dist/shell-shard/verbs/history.d.ts +2 -0
- package/dist/shell-shard/verbs/history.js +20 -0
- package/dist/shell-shard/verbs/index.d.ts +2 -0
- package/dist/shell-shard/verbs/index.js +29 -0
- package/dist/shell-shard/verbs/session.d.ts +5 -0
- package/dist/shell-shard/verbs/session.js +65 -0
- package/dist/shell-shard/verbs/shards.d.ts +2 -0
- package/dist/shell-shard/verbs/shards.js +14 -0
- package/dist/shell-shard/verbs/views.d.ts +4 -0
- package/dist/shell-shard/verbs/views.js +90 -0
- package/dist/shell-shard/verbs/zones.d.ts +3 -0
- package/dist/shell-shard/verbs/zones.js +38 -0
- package/dist/shellRuntime.svelte.d.ts +27 -0
- package/dist/shellRuntime.svelte.js +27 -0
- package/dist/state/backends.d.ts +26 -0
- package/dist/state/backends.js +99 -0
- package/dist/state/manage.d.ts +14 -0
- package/dist/state/manage.js +40 -0
- package/dist/state/types.d.ts +55 -0
- package/dist/state/types.js +17 -0
- package/dist/state/zones.svelte.d.ts +53 -0
- package/dist/state/zones.svelte.js +141 -0
- package/dist/theme.d.ts +28 -0
- package/dist/theme.js +92 -0
- package/dist/tokens.css +102 -0
- package/dist/version.d.ts +2 -0
- package/dist/version.js +2 -0
- package/package.json +60 -0
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import type { LayoutNode } from '../layout/types';
|
|
2
|
+
import type { ZoneSchema, ZoneManager } from '../state/types';
|
|
3
|
+
import type { StateZones } from '../state/zones.svelte';
|
|
4
|
+
/**
|
|
5
|
+
* Static description of an app. Declared by every app module and read by
|
|
6
|
+
* the shell launcher to populate the home screen list without running any
|
|
7
|
+
* activation code.
|
|
8
|
+
*/
|
|
9
|
+
export interface AppManifest {
|
|
10
|
+
/** Unique app identifier. Must match the app's registration key. */
|
|
11
|
+
id: string;
|
|
12
|
+
/** Human-readable display name shown in the launcher. */
|
|
13
|
+
label: string;
|
|
14
|
+
/** Semver string for the app package. */
|
|
15
|
+
version: string;
|
|
16
|
+
/**
|
|
17
|
+
* Shard ids this app requires. All required shards are activated at
|
|
18
|
+
* launch time (skipping any already-active from a previous launch or
|
|
19
|
+
* from self-starting). Deactivation at unload deactivates only the
|
|
20
|
+
* shards this app is the last consumer of; shared shards and self-
|
|
21
|
+
* starting shards (diagnostic, __sh3core__) stay running.
|
|
22
|
+
*/
|
|
23
|
+
requiredShards: string[];
|
|
24
|
+
/**
|
|
25
|
+
* Bump to invalidate persisted layouts. On launch, a persisted blob
|
|
26
|
+
* whose version doesn't match this is discarded and `initialLayout`
|
|
27
|
+
* is used instead. Phase 8 does not migrate — version bumps reset
|
|
28
|
+
* user customization.
|
|
29
|
+
*/
|
|
30
|
+
layoutVersion: number;
|
|
31
|
+
/**
|
|
32
|
+
* When true, the app is only visible on the shell home screen in
|
|
33
|
+
* admin mode. Server-side routes may still enforce their own auth
|
|
34
|
+
* independently. Defaults to false (visible to everyone).
|
|
35
|
+
*/
|
|
36
|
+
admin?: boolean;
|
|
37
|
+
/**
|
|
38
|
+
* Optional permissions this app requests beyond the default sandbox.
|
|
39
|
+
* Declared in the manifest and surfaced to the user at install time
|
|
40
|
+
* by the store app. Currently recognized: `'state:manage'` — cross-
|
|
41
|
+
* shard zone access.
|
|
42
|
+
*/
|
|
43
|
+
permissions?: string[];
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Context object passed to `App.activate`. Provides app-scoped state zones
|
|
47
|
+
* that are namespaced to the app id, preventing collision with any shard
|
|
48
|
+
* that happens to share the same name.
|
|
49
|
+
*/
|
|
50
|
+
export interface AppContext {
|
|
51
|
+
/**
|
|
52
|
+
* App-scoped state zones. The shardId underneath is the app id, so
|
|
53
|
+
* `state({ workspace: { x: 0 } }).workspace.x = 1` persists to
|
|
54
|
+
* `sh3:workspace:<appId>` with no collision risk against any shard
|
|
55
|
+
* of the same name.
|
|
56
|
+
*/
|
|
57
|
+
state<T extends ZoneSchema>(schema: T): StateZones<T>;
|
|
58
|
+
/**
|
|
59
|
+
* Cross-shard zone management API. Only present when the app's
|
|
60
|
+
* manifest declares the `'state:manage'` permission. Check with
|
|
61
|
+
* `if (ctx.zones)` before use.
|
|
62
|
+
*/
|
|
63
|
+
zones?: ZoneManager;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* An app module. An app is a composition document — it declares required
|
|
67
|
+
* shards and an initial layout blueprint, but does not register views or
|
|
68
|
+
* commands itself. The framework activates the required shards on launch,
|
|
69
|
+
* restores or applies the initial layout, and calls the optional hooks.
|
|
70
|
+
*/
|
|
71
|
+
export interface App {
|
|
72
|
+
/** Static manifest describing the app and its requirements. */
|
|
73
|
+
manifest: AppManifest;
|
|
74
|
+
/** Starting layout tree. Used on first launch or when the persisted layout version mismatches. */
|
|
75
|
+
initialLayout: LayoutNode;
|
|
76
|
+
/** Optional hook called after all required shards are active and the layout is attached. */
|
|
77
|
+
activate?(ctx: AppContext): void | Promise<void>;
|
|
78
|
+
/** Optional hook called before the app's shards are deactivated and the layout is detached. */
|
|
79
|
+
deactivate?(): void | Promise<void>;
|
|
80
|
+
/**
|
|
81
|
+
* Called when the user navigates to Home while the app is active. The
|
|
82
|
+
* app's shards, state, and pooled views remain alive. Return `false`
|
|
83
|
+
* (sync or async) to cancel the navigation — useful for "unsaved
|
|
84
|
+
* changes" confirmation modals.
|
|
85
|
+
*/
|
|
86
|
+
suspend?(): void | false | Promise<void | false>;
|
|
87
|
+
/**
|
|
88
|
+
* Called when the app is re-entered from Home (root swap back to app).
|
|
89
|
+
* Does NOT fire on first launch — that is `activate`. Receives the
|
|
90
|
+
* same `AppContext` that `activate` received.
|
|
91
|
+
*/
|
|
92
|
+
resume?(ctx: AppContext): void | Promise<void>;
|
|
93
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* App contract — phase 8.
|
|
3
|
+
*
|
|
4
|
+
* An app is a composition document. It declares what shards it needs
|
|
5
|
+
* and what layout to start with, plus an optional activate hook for
|
|
6
|
+
* app-internal startup work. Apps are NOT shards — they do not register
|
|
7
|
+
* contributions, do not have their own views, and do not contribute to
|
|
8
|
+
* other apps' layouts. They compose existing shard views.
|
|
9
|
+
*/
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Static manifest file included in every SH3 artifact directory.
|
|
3
|
+
* Generated at build time from the shard/app manifest in code.
|
|
4
|
+
* This is the single source of truth for package metadata —
|
|
5
|
+
* registries, servers, and install tools read this instead of
|
|
6
|
+
* requiring manual metadata entry.
|
|
7
|
+
*/
|
|
8
|
+
export interface ArtifactManifest {
|
|
9
|
+
/** Unique package identifier. Matches the shard/app manifest id. */
|
|
10
|
+
id: string;
|
|
11
|
+
/** Whether this is a shard or app (or both via combo bundle). */
|
|
12
|
+
type: 'shard' | 'app' | 'combo';
|
|
13
|
+
/** Human-readable display name. */
|
|
14
|
+
label: string;
|
|
15
|
+
/** Version string (semver). */
|
|
16
|
+
version: string;
|
|
17
|
+
/** SH3 contract version this artifact was built against. */
|
|
18
|
+
contractVersion: number;
|
|
19
|
+
/** Relative path to the client bundle within the artifact directory. Omit if server-only. */
|
|
20
|
+
client?: string;
|
|
21
|
+
/** Relative path to the server bundle within the artifact directory. Omit if client-only. */
|
|
22
|
+
server?: string;
|
|
23
|
+
/** Short description (one or two sentences). */
|
|
24
|
+
description?: string;
|
|
25
|
+
/** Author name. */
|
|
26
|
+
author?: string;
|
|
27
|
+
/** Package dependencies. */
|
|
28
|
+
requires?: Array<{
|
|
29
|
+
id: string;
|
|
30
|
+
versionRange: string;
|
|
31
|
+
}>;
|
|
32
|
+
}
|
package/dist/artifact.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
Binary file
|