@ai-ecoverse/slicc-spectrum 1.56.0 → 1.57.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 -7
- package/dist/{chunk-YVJG5657.js → chunk-XYPGNJAO.js} +10 -3
- package/dist/chunk-XYPGNJAO.js.map +7 -0
- package/dist/slicc-dummy.js +112 -15
- package/dist/slicc-dummy.js.map +2 -2
- package/dist/slicc-kernel-model.js +5 -2
- package/dist/slicc-kernel-model.js.map +2 -2
- package/dist/slicc-terminal.js +1 -1
- package/dist/slicc-ui.js +2859 -2678
- package/dist/slicc-ui.js.map +4 -4
- package/dist/types/app/monitor.d.ts +14 -0
- package/dist/types/app/network.d.ts +8 -0
- package/dist/types/app/tray.d.ts +4 -2
- package/dist/types/dummy/index.d.ts +2 -1
- package/dist/types/dummy/monitor.d.ts +3 -2
- package/dist/types/kernel/terminals.d.ts +2 -1
- package/dist/types/kernel-backend.d.ts +3 -1
- package/dist/types/model/types.d.ts +10 -7
- package/package.json +3 -3
- package/dist/chunk-YVJG5657.js.map +0 -7
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import '@adobe/spectrum-wc/components/action-button/swc-action-button.js';
|
|
2
2
|
import '@adobe/spectrum-wc/components/badge/swc-badge.js';
|
|
3
3
|
import '@adobe/spectrum-wc/components/meter/swc-meter.js';
|
|
4
|
+
import '@adobe/spectrum-wc/components/status-light/swc-status-light.js';
|
|
4
5
|
import '@adobe/spectrum-wc-icons/swc-icon-alert-triangle.js';
|
|
5
6
|
import '@adobe/spectrum-wc-icons/swc-icon-alert-diamond.js';
|
|
7
|
+
import '@adobe/spectrum-wc-icons/swc-icon-chevron-right.js';
|
|
6
8
|
import { type TemplateResult } from 'lit';
|
|
7
9
|
import type { MonitorSection, MonitorStatus, SliccModel } from '../model/types.js';
|
|
8
10
|
import { ModelElement } from './base.js';
|
|
@@ -10,12 +12,24 @@ export declare function sparkline(points: readonly number[], width?: number, hei
|
|
|
10
12
|
export declare function health(section: MonitorSection): MonitorStatus;
|
|
11
13
|
export declare function meterVariant(ratio: number): 'informative' | 'notice' | 'negative';
|
|
12
14
|
export declare const surfaces: Record<string, string>;
|
|
15
|
+
export declare const rowLights: Record<MonitorStatus, 'info' | 'neutral' | 'notice' | 'negative'>;
|
|
16
|
+
export declare function indent(depth: number | undefined): number;
|
|
13
17
|
export declare function attention(section: MonitorSection): {
|
|
14
18
|
variant: 'negative' | 'notice';
|
|
15
19
|
text: string;
|
|
16
20
|
} | null;
|
|
17
21
|
export declare class SliccMonitor extends ModelElement {
|
|
18
22
|
#private;
|
|
23
|
+
static properties: {
|
|
24
|
+
model: {
|
|
25
|
+
attribute: boolean;
|
|
26
|
+
};
|
|
27
|
+
expanded: {
|
|
28
|
+
state: boolean;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
expanded: Record<string, boolean>;
|
|
32
|
+
constructor();
|
|
19
33
|
static styles: import("lit").CSSResult[];
|
|
20
34
|
protected subscribe(model: SliccModel): Array<() => void>;
|
|
21
35
|
focus(): void;
|
|
@@ -2,6 +2,7 @@ import '@adobe/spectrum-wc/components/action-button/swc-action-button.js';
|
|
|
2
2
|
import '@adobe/spectrum-wc/components/badge/swc-badge.js';
|
|
3
3
|
import '@adobe/spectrum-wc/components/button/swc-button.js';
|
|
4
4
|
import '@adobe/spectrum-wc/components/status-light/swc-status-light.js';
|
|
5
|
+
import '@adobe/spectrum-wc/components/tooltip/swc-tooltip.js';
|
|
5
6
|
import '@adobe/spectrum-wc-icons/swc-icon-alert-triangle.js';
|
|
6
7
|
import '@adobe/spectrum-wc-icons/swc-icon-cloud.js';
|
|
7
8
|
import '@adobe/spectrum-wc-icons/swc-icon-cloud-state-error.js';
|
|
@@ -9,6 +10,8 @@ import '@adobe/spectrum-wc-icons/swc-icon-cloud-state-online.js';
|
|
|
9
10
|
import '@adobe/spectrum-wc-icons/swc-icon-cloud-state-slow-connection.js';
|
|
10
11
|
import '@adobe/spectrum-wc-icons/swc-icon-copy.js';
|
|
11
12
|
import '@adobe/spectrum-wc-icons/swc-icon-info-circle.js';
|
|
13
|
+
import '@adobe/spectrum-wc-icons/swc-icon-visibility.js';
|
|
14
|
+
import '@adobe/spectrum-wc-icons/swc-icon-visibility-off.js';
|
|
12
15
|
import { type TemplateResult } from 'lit';
|
|
13
16
|
import type { AccessKey, BrowserAutomation, DeviceAccess, LinkedDevice, LinkState, NetworkExit, NetworkLinks, NetworkPort, NetworkRoute, NetworkStatus, RemoteControlMode, SliccModel, TailnetState, TailnetStatus } from '../model/types.js';
|
|
14
17
|
import { ModelElement } from './base.js';
|
|
@@ -47,6 +50,7 @@ export declare function routeOf(status: NetworkStatus): NetworkRoute | 'link' |
|
|
|
47
50
|
export declare function routeLine(status: NetworkStatus): string;
|
|
48
51
|
export declare function networkLabel(status: NetworkStatus): string;
|
|
49
52
|
export declare const networkIcon: Record<NetworkStatus['health'], TemplateResult>;
|
|
53
|
+
export declare function maskSecret(text: string): string;
|
|
50
54
|
export declare function host(url: string): string;
|
|
51
55
|
export declare function since(at: number, now?: number): string;
|
|
52
56
|
export declare class SliccNetwork extends ModelElement {
|
|
@@ -76,6 +80,9 @@ export declare class SliccNetwork extends ModelElement {
|
|
|
76
80
|
tailnetCopied: {
|
|
77
81
|
state: boolean;
|
|
78
82
|
};
|
|
83
|
+
revealed: {
|
|
84
|
+
state: boolean;
|
|
85
|
+
};
|
|
79
86
|
linksError: {
|
|
80
87
|
state: boolean;
|
|
81
88
|
};
|
|
@@ -90,6 +97,7 @@ export declare class SliccNetwork extends ModelElement {
|
|
|
90
97
|
busy: string;
|
|
91
98
|
tailnetError: string;
|
|
92
99
|
tailnetCopied: string;
|
|
100
|
+
revealed: Record<string, string>;
|
|
93
101
|
linksError: string;
|
|
94
102
|
syncError: string;
|
|
95
103
|
constructor();
|
package/dist/types/app/tray.d.ts
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { type TemplateResult } from 'lit';
|
|
2
|
-
import type { SliccModel, TrayConnection, TrayStatus } from '../model/types.js';
|
|
2
|
+
import type { SliccModel, TrayBudget, TrayConnection, TrayStatus } from '../model/types.js';
|
|
3
3
|
import { ModelElement } from './base.js';
|
|
4
4
|
export declare const connectionVariant: Record<TrayConnection, string>;
|
|
5
5
|
export declare const connectionLabel: Record<TrayConnection, string>;
|
|
6
6
|
export declare function budgetVariant(percent: number): string;
|
|
7
|
-
export declare function
|
|
7
|
+
export declare function spendLine(status: TrayStatus): string;
|
|
8
|
+
export declare function budgetLine(status: TrayStatus, budget: TrayBudget): string;
|
|
9
|
+
export declare function shownBudget(status: TrayStatus): TrayBudget | null;
|
|
8
10
|
export declare class SliccTray extends ModelElement {
|
|
9
11
|
#private;
|
|
10
12
|
static properties: {
|
|
@@ -25,6 +25,7 @@ export interface DummyOptions {
|
|
|
25
25
|
follow?: FollowScenario | 'off';
|
|
26
26
|
browser?: BrowserScenario;
|
|
27
27
|
sprinkles?: 'builtin' | 'cones';
|
|
28
|
+
monitor?: 'dummy' | 'agent';
|
|
28
29
|
}
|
|
29
30
|
export interface DummyModel extends SliccModel {
|
|
30
31
|
browser: DummyBrowser;
|
|
@@ -35,4 +36,4 @@ export interface DummyModel extends SliccModel {
|
|
|
35
36
|
approvals?: DummyApprovals;
|
|
36
37
|
follow?: DummyFollow;
|
|
37
38
|
}
|
|
38
|
-
export declare function createDummyModel({ delay, storage, updates, packages, confirm, mounts, network, tailnet, links, changes, notices, tabs, approvals, follow, browser: scenario, sprinkles, }?: DummyOptions): DummyModel;
|
|
39
|
+
export declare function createDummyModel({ delay, storage, updates, packages, confirm, mounts, network, tailnet, links, changes, notices, tabs, approvals, follow, browser: scenario, sprinkles, monitor, }?: DummyOptions): DummyModel;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { Emitter } from '../model/emitter.js';
|
|
2
|
-
import type { MonitorEvents, MonitorPort, MonitorSnapshot, SliccModel } from '../model/types.js';
|
|
2
|
+
import type { MonitorEvents, MonitorPort, MonitorSection, MonitorSnapshot, SliccModel } from '../model/types.js';
|
|
3
3
|
export declare function wave(seed: number, length?: number): number[];
|
|
4
|
+
export declare const agentSections: MonitorSection[];
|
|
4
5
|
export declare class DummyMonitor extends Emitter<MonitorEvents> implements MonitorPort {
|
|
5
6
|
#private;
|
|
6
|
-
constructor(model: Omit<SliccModel, 'monitor'
|
|
7
|
+
constructor(model: Omit<SliccModel, 'monitor'>, extra?: MonitorSection[]);
|
|
7
8
|
snapshot(): MonitorSnapshot;
|
|
8
9
|
resync(): void;
|
|
9
10
|
}
|
|
@@ -5,12 +5,13 @@ import type { TerminalEvents, TerminalInfo, TerminalPort } from '../model/types.
|
|
|
5
5
|
export interface KernelTerminalsOptions {
|
|
6
6
|
argv?: string[];
|
|
7
7
|
cwd?: string;
|
|
8
|
+
user?: string | number;
|
|
8
9
|
env?: Record<string, string>;
|
|
9
10
|
open?: number;
|
|
10
11
|
}
|
|
11
12
|
export declare class KernelTerminals extends Emitter<TerminalEvents> implements TerminalPort {
|
|
12
13
|
#private;
|
|
13
|
-
constructor(kernel: TerminalKernel, { argv, cwd, env, open }?: KernelTerminalsOptions);
|
|
14
|
+
constructor(kernel: TerminalKernel, { argv, cwd, user, env, open }?: KernelTerminalsOptions);
|
|
14
15
|
list(): readonly TerminalInfo[];
|
|
15
16
|
open({ cwd, agentId, }?: {
|
|
16
17
|
cwd?: string;
|
|
@@ -8,6 +8,7 @@ export interface KernelTerminal {
|
|
|
8
8
|
}
|
|
9
9
|
export interface KernelTerminalOptions {
|
|
10
10
|
cwd?: string;
|
|
11
|
+
user?: string | number;
|
|
11
12
|
env?: Record<string, string>;
|
|
12
13
|
cols: number;
|
|
13
14
|
rows: number;
|
|
@@ -19,9 +20,10 @@ export interface TerminalKernel {
|
|
|
19
20
|
export interface KernelBackendOptions {
|
|
20
21
|
argv?: string[];
|
|
21
22
|
cwd?: string;
|
|
23
|
+
user?: string | number;
|
|
22
24
|
env?: Record<string, string>;
|
|
23
25
|
onCwd?: (cwd: string) => void;
|
|
24
26
|
}
|
|
25
27
|
export declare const cwdPromptCommand = "printf '\\033]7;file://%s%s\\007' \"${HOSTNAME:-}\" \"$PWD\"";
|
|
26
28
|
export declare function cwdWatcher(onCwd: (cwd: string) => void): (bytes: Uint8Array) => void;
|
|
27
|
-
export declare function kernelBackend(kernel: TerminalKernel, { argv, cwd, env, onCwd }?: KernelBackendOptions): TerminalBackend;
|
|
29
|
+
export declare function kernelBackend(kernel: TerminalKernel, { argv, cwd, user, env, onCwd }?: KernelBackendOptions): TerminalBackend;
|
|
@@ -460,10 +460,12 @@ export interface MonitorVital {
|
|
|
460
460
|
ratio?: number;
|
|
461
461
|
}
|
|
462
462
|
export interface MonitorRow {
|
|
463
|
+
id?: string;
|
|
463
464
|
name: string;
|
|
464
465
|
meta: string;
|
|
465
466
|
status: MonitorStatus;
|
|
466
467
|
badges?: string[];
|
|
468
|
+
depth?: number;
|
|
467
469
|
}
|
|
468
470
|
export interface MonitorSection {
|
|
469
471
|
id: string;
|
|
@@ -516,19 +518,20 @@ export interface Follower {
|
|
|
516
518
|
device: 'browser' | 'phone' | 'extension';
|
|
517
519
|
since: number;
|
|
518
520
|
}
|
|
521
|
+
export interface TrayBudget {
|
|
522
|
+
percent: number;
|
|
523
|
+
window: 'daily' | 'weekly' | 'monthly';
|
|
524
|
+
resets: string;
|
|
525
|
+
}
|
|
519
526
|
export interface TrayStatus {
|
|
520
527
|
name: string;
|
|
521
528
|
kind: FloatKind;
|
|
522
529
|
connection: TrayConnection;
|
|
523
530
|
role: TrayRole;
|
|
524
531
|
followers: Follower[];
|
|
525
|
-
spent
|
|
526
|
-
rate
|
|
527
|
-
budget
|
|
528
|
-
percent: number;
|
|
529
|
-
window: 'daily' | 'weekly' | 'monthly';
|
|
530
|
-
resets: string;
|
|
531
|
-
};
|
|
532
|
+
spent?: number;
|
|
533
|
+
rate?: number;
|
|
534
|
+
budget?: TrayBudget;
|
|
532
535
|
joinUrl: string;
|
|
533
536
|
}
|
|
534
537
|
export interface TrayEvents {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ai-ecoverse/slicc-spectrum",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.57.0",
|
|
4
4
|
"description": "Web components for SLICC on Spectrum Web Components: the terminal, the app shell and its surfaces",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -72,8 +72,8 @@
|
|
|
72
72
|
"devDependencies": {
|
|
73
73
|
"@adobe/spectrum-wc": "2.0.0-beta.4",
|
|
74
74
|
"@adobe/spectrum-wc-icons": "2.0.0-beta.4",
|
|
75
|
-
"@ai-ecoverse/slicc-kernel": "1.
|
|
76
|
-
"@ai-ecoverse/slicc-shared-web": "1.12.
|
|
75
|
+
"@ai-ecoverse/slicc-kernel": "1.60.1",
|
|
76
|
+
"@ai-ecoverse/slicc-shared-web": "1.12.2",
|
|
77
77
|
"@ai-ecoverse/wasm-bash": "5.3.0-17",
|
|
78
78
|
"@ai-ecoverse/wasm-coreutils": "9.7.0-3",
|
|
79
79
|
"@biomejs/biome": "2.5.15",
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../src/kernel-backend.ts"],
|
|
4
|
-
"sourcesContent": ["import type { TerminalBackend, TerminalSignal } from './backend.ts';\n\nexport interface KernelTerminal {\n readonly exited: Promise<number>;\n write(data: Uint8Array): void;\n resize(cols: number, rows: number): void;\n signal(name: TerminalSignal): void;\n close(): void;\n}\n\nexport interface KernelTerminalOptions {\n cwd?: string;\n env?: Record<string, string>;\n cols: number;\n rows: number;\n onData: (bytes: Uint8Array) => void;\n}\n\nexport interface TerminalKernel {\n openTerminal(argv: string[], options: KernelTerminalOptions): Promise<KernelTerminal>;\n}\n\nexport interface KernelBackendOptions {\n argv?: string[];\n cwd?: string;\n env?: Record<string, string>;\n onCwd?: (cwd: string) => void;\n}\n\nconst encoder = new TextEncoder();\nconst decoder = new TextDecoder();\nconst osc7 = /\\x1b\\]7;file:\\/\\/[^/\\x07\\x1b]*(\\/[^\\x07\\x1b]*)(?:\\x07|\\x1b\\\\)/g;\n\nexport const cwdPromptCommand = `printf '\\\\033]7;file://%s%s\\\\007' \"\\${HOSTNAME:-}\" \"$PWD\"`;\n\nfunction decodePath(path: string): string {\n try {\n return decodeURIComponent(path);\n } catch {\n return path;\n }\n}\n\nexport function cwdWatcher(onCwd: (cwd: string) => void): (bytes: Uint8Array) => void {\n let pending = '';\n return (bytes) => {\n const text = pending + decoder.decode(bytes, { stream: true });\n let last: string | undefined;\n for (const match of text.matchAll(osc7)) last = match[1];\n if (last !== undefined) onCwd(decodePath(last));\n const open = text.lastIndexOf('\\x1b]7;');\n pending = open >= 0 && !text.slice(open).match(/\\x07|\\x1b\\\\/) ? text.slice(open) : '';\n };\n}\n\nexport function kernelBackend(\n kernel: TerminalKernel,\n { argv = ['bash', '-i'], cwd, env, onCwd }: KernelBackendOptions = {}\n): TerminalBackend {\n return {\n async open(sink, { cols, rows }) {\n const watch = onCwd && cwdWatcher(onCwd);\n const onData = (bytes: Uint8Array) => {\n watch?.(bytes);\n sink.output(bytes);\n };\n const terminal = await kernel.openTerminal(argv, { cwd, env, cols, rows, onData });\n terminal.exited.then(\n (status) => sink.exit(status),\n (error) => {\n sink.output(encoder.encode(`\\r\\n${error instanceof Error ? error.message : error}\\r\\n`));\n sink.exit(1);\n }\n );\n return {\n write: (data) => terminal.write(data),\n resize: (c, r) => terminal.resize(c, r),\n signal: (name) => terminal.signal(name),\n close: () => terminal.close(),\n };\n },\n };\n}\n"],
|
|
5
|
-
"mappings": ";AA6BA,IAAM,UAAU,IAAI,YAAY;AAChC,IAAM,UAAU,IAAI,YAAY;AAChC,IAAM,OAAO;AAEN,IAAM,mBAAmB;AAEhC,SAAS,WAAW,MAAsB;AACxC,MAAI;AACF,WAAO,mBAAmB,IAAI;AAAA,EAChC,QAAQ;AACN,WAAO;AAAA,EACT;AACF;AAEO,SAAS,WAAW,OAA2D;AACpF,MAAI,UAAU;AACd,SAAO,CAAC,UAAU;AAChB,UAAM,OAAO,UAAU,QAAQ,OAAO,OAAO,EAAE,QAAQ,KAAK,CAAC;AAC7D,QAAI;AACJ,eAAW,SAAS,KAAK,SAAS,IAAI,EAAG,QAAO,MAAM,CAAC;AACvD,QAAI,SAAS,OAAW,OAAM,WAAW,IAAI,CAAC;AAC9C,UAAM,OAAO,KAAK,YAAY,SAAS;AACvC,cAAU,QAAQ,KAAK,CAAC,KAAK,MAAM,IAAI,EAAE,MAAM,aAAa,IAAI,KAAK,MAAM,IAAI,IAAI;AAAA,EACrF;AACF;AAEO,SAAS,cACd,QACA,EAAE,OAAO,CAAC,QAAQ,IAAI,GAAG,KAAK,KAAK,MAAM,IAA0B,CAAC,GACnD;AACjB,SAAO;AAAA,IACL,MAAM,KAAK,MAAM,EAAE,MAAM,KAAK,GAAG;AAC/B,YAAM,QAAQ,SAAS,WAAW,KAAK;AACvC,YAAM,SAAS,CAAC,UAAsB;AACpC,gBAAQ,KAAK;AACb,aAAK,OAAO,KAAK;AAAA,MACnB;AACA,YAAM,WAAW,MAAM,OAAO,aAAa,MAAM,EAAE,KAAK,KAAK,MAAM,MAAM,OAAO,CAAC;AACjF,eAAS,OAAO;AAAA,QACd,CAAC,WAAW,KAAK,KAAK,MAAM;AAAA,QAC5B,CAAC,UAAU;AACT,eAAK,OAAO,QAAQ,OAAO;AAAA,EAAO,iBAAiB,QAAQ,MAAM,UAAU,KAAK;AAAA,CAAM,CAAC;AACvF,eAAK,KAAK,CAAC;AAAA,QACb;AAAA,MACF;AACA,aAAO;AAAA,QACL,OAAO,CAAC,SAAS,SAAS,MAAM,IAAI;AAAA,QACpC,QAAQ,CAAC,GAAG,MAAM,SAAS,OAAO,GAAG,CAAC;AAAA,QACtC,QAAQ,CAAC,SAAS,SAAS,OAAO,IAAI;AAAA,QACtC,OAAO,MAAM,SAAS,MAAM;AAAA,MAC9B;AAAA,IACF;AAAA,EACF;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|