@probelabs/visor 0.1.129 → 0.1.130-ee
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 +23 -0
- package/dist/cli-main.d.ts.map +1 -1
- package/dist/config.d.ts +4 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/docs/author-permissions.md +20 -0
- package/dist/docs/enterprise-policy.md +1325 -0
- package/dist/docs/index.md +10 -0
- package/dist/docs/scheduler-storage.md +433 -0
- package/dist/docs/scheduler.md +12 -2
- package/dist/enterprise/license/validator.d.ts +39 -0
- package/dist/enterprise/license/validator.d.ts.map +1 -0
- package/dist/enterprise/loader.d.ts +25 -0
- package/dist/enterprise/loader.d.ts.map +1 -0
- package/dist/enterprise/policy/opa-compiler.d.ts +37 -0
- package/dist/enterprise/policy/opa-compiler.d.ts.map +1 -0
- package/dist/enterprise/policy/opa-http-evaluator.d.ts +36 -0
- package/dist/enterprise/policy/opa-http-evaluator.d.ts.map +1 -0
- package/dist/enterprise/policy/opa-policy-engine.d.ts +48 -0
- package/dist/enterprise/policy/opa-policy-engine.d.ts.map +1 -0
- package/dist/enterprise/policy/opa-wasm-evaluator.d.ts +34 -0
- package/dist/enterprise/policy/opa-wasm-evaluator.d.ts.map +1 -0
- package/dist/enterprise/policy/policy-input-builder.d.ts +120 -0
- package/dist/enterprise/policy/policy-input-builder.d.ts.map +1 -0
- package/dist/enterprise/scheduler/knex-store.d.ts +41 -0
- package/dist/enterprise/scheduler/knex-store.d.ts.map +1 -0
- package/dist/examples/README.md +23 -0
- package/dist/examples/enterprise-policy/README.md +344 -0
- package/dist/examples/enterprise-policy/policies/capability_resolve.rego +29 -0
- package/dist/examples/enterprise-policy/policies/capability_resolve_test.rego +230 -0
- package/dist/examples/enterprise-policy/policies/check_execute.rego +71 -0
- package/dist/examples/enterprise-policy/policies/check_execute_test.rego +321 -0
- package/dist/examples/enterprise-policy/policies/deploy_production.rego +33 -0
- package/dist/examples/enterprise-policy/policies/deploy_production_test.rego +29 -0
- package/dist/examples/enterprise-policy/policies/slack_channel_gate.rego +17 -0
- package/dist/examples/enterprise-policy/policies/slack_tool_restrict.rego +16 -0
- package/dist/examples/enterprise-policy/policies/tool_invoke.rego +24 -0
- package/dist/examples/enterprise-policy/policies/tool_invoke_test.rego +227 -0
- package/dist/examples/enterprise-policy/visor.yaml +64 -0
- package/dist/failure-condition-evaluator.d.ts +18 -0
- package/dist/failure-condition-evaluator.d.ts.map +1 -1
- package/dist/frontends/slack-frontend.d.ts +1 -0
- package/dist/frontends/slack-frontend.d.ts.map +1 -1
- package/dist/generated/config-schema.d.ts +139 -0
- package/dist/generated/config-schema.d.ts.map +1 -1
- package/dist/index.js +13821 -7172
- package/dist/liquid-extensions.d.ts.map +1 -1
- package/dist/policy/default-engine.d.ts +17 -0
- package/dist/policy/default-engine.d.ts.map +1 -0
- package/dist/policy/index.d.ts +4 -0
- package/dist/policy/index.d.ts.map +1 -0
- package/dist/policy/policy-check-command.d.ts +65 -0
- package/dist/policy/policy-check-command.d.ts.map +1 -0
- package/dist/policy/types.d.ts +81 -0
- package/dist/policy/types.d.ts.map +1 -0
- package/dist/providers/ai-check-provider.d.ts.map +1 -1
- package/dist/providers/check-provider.interface.d.ts +2 -0
- package/dist/providers/check-provider.interface.d.ts.map +1 -1
- package/dist/providers/claude-code-check-provider.d.ts.map +1 -1
- package/dist/providers/mcp-check-provider.d.ts.map +1 -1
- package/dist/providers/mcp-custom-sse-server.d.ts.map +1 -1
- package/dist/providers/workflow-check-provider.d.ts.map +1 -1
- package/dist/scheduler/index.d.ts +2 -0
- package/dist/scheduler/index.d.ts.map +1 -1
- package/dist/scheduler/schedule-store.d.ts +33 -59
- package/dist/scheduler/schedule-store.d.ts.map +1 -1
- package/dist/scheduler/schedule-tool.d.ts.map +1 -1
- package/dist/scheduler/scheduler.d.ts +24 -3
- package/dist/scheduler/scheduler.d.ts.map +1 -1
- package/dist/scheduler/store/index.d.ts +7 -0
- package/dist/scheduler/store/index.d.ts.map +1 -0
- package/dist/scheduler/store/json-migrator.d.ts +10 -0
- package/dist/scheduler/store/json-migrator.d.ts.map +1 -0
- package/dist/scheduler/store/sqlite-store.d.ts +32 -0
- package/dist/scheduler/store/sqlite-store.d.ts.map +1 -0
- package/dist/scheduler/store/types.d.ts +127 -0
- package/dist/scheduler/store/types.d.ts.map +1 -0
- package/dist/sdk/check-provider-registry-PANIXYRB.mjs +28 -0
- package/dist/sdk/check-provider-registry-S7DKTEM6.mjs +28 -0
- package/dist/sdk/{chunk-D5KI4YQ4.mjs → chunk-DIND4ZCV.mjs} +2 -2
- package/dist/sdk/{chunk-XDLQ3UNF.mjs → chunk-GEW6LS32.mjs} +2 -2
- package/dist/sdk/{chunk-N7HO6KKC.mjs → chunk-HOKQOO3G.mjs} +11 -6
- package/dist/sdk/chunk-HOKQOO3G.mjs.map +1 -0
- package/dist/sdk/{chunk-XR7XXGL7.mjs → chunk-JL7JXCET.mjs} +2 -2
- package/dist/sdk/{chunk-6W75IMDC.mjs → chunk-LG4AUKHB.mjs} +2 -2
- package/dist/sdk/{chunk-BDGUM6BA.mjs → chunk-S6CD7GFM.mjs} +1463 -568
- package/dist/sdk/chunk-S6CD7GFM.mjs.map +1 -0
- package/dist/sdk/{chunk-PO7X5XI7.mjs → chunk-SZXICFQ3.mjs} +2 -2
- package/dist/sdk/{chunk-DGZPPGJJ.mjs → chunk-TQ4D3YOF.mjs} +1463 -568
- package/dist/sdk/chunk-TQ4D3YOF.mjs.map +1 -0
- package/dist/sdk/{chunk-HEX3RL32.mjs → chunk-UCMJJ3IM.mjs} +5 -2
- package/dist/sdk/{chunk-HEX3RL32.mjs.map → chunk-UCMJJ3IM.mjs.map} +1 -1
- package/dist/sdk/{chunk-7YSOINAQ.mjs → chunk-UCNT3PDT.mjs} +342 -5
- package/dist/sdk/chunk-UCNT3PDT.mjs.map +1 -0
- package/dist/sdk/{chunk-R5Z7YWPB.mjs → chunk-V2IV3ILA.mjs} +7 -5
- package/dist/sdk/chunk-V2IV3ILA.mjs.map +1 -0
- package/dist/sdk/{chunk-SGS2VMEL.mjs → chunk-VMLORODQ.mjs} +107 -20
- package/dist/sdk/chunk-VMLORODQ.mjs.map +1 -0
- package/dist/sdk/{chunk-2KB35MB7.mjs → chunk-VPC3QSPW.mjs} +2 -2
- package/dist/sdk/{chunk-J5RGJQ53.mjs → chunk-YJRBN3XS.mjs} +2 -2
- package/dist/sdk/{command-executor-DVVXERLR.mjs → command-executor-TOYBBE7S.mjs} +4 -4
- package/dist/sdk/{config-7VTT64SQ.mjs → config-OGOS4ZU4.mjs} +4 -4
- package/dist/sdk/failure-condition-evaluator-HC3M5377.mjs +17 -0
- package/dist/sdk/{github-frontend-3N2NLO66.mjs → github-frontend-E2KJSC3Y.mjs} +7 -7
- package/dist/sdk/{host-ONVMEHAA.mjs → host-EE6EJ2FM.mjs} +4 -4
- package/dist/sdk/host-OUSD2OIQ.mjs +63 -0
- package/dist/sdk/host-OUSD2OIQ.mjs.map +1 -0
- package/dist/sdk/knex-store-HPXJILBL.mjs +411 -0
- package/dist/sdk/knex-store-HPXJILBL.mjs.map +1 -0
- package/dist/sdk/lazy-otel-5NH4ZJJM.mjs +24 -0
- package/dist/sdk/{liquid-extensions-5IZLTFSZ.mjs → liquid-extensions-E4EUOCES.mjs} +5 -5
- package/dist/sdk/loader-ID5LMXOW.mjs +89 -0
- package/dist/sdk/loader-ID5LMXOW.mjs.map +1 -0
- package/dist/sdk/memory-store-AAPL2MTE.mjs +12 -0
- package/dist/sdk/{metrics-GXQ2EDXA.mjs → metrics-I6A7IHG4.mjs} +3 -3
- package/dist/sdk/opa-policy-engine-UUPFN5CL.mjs +655 -0
- package/dist/sdk/opa-policy-engine-UUPFN5CL.mjs.map +1 -0
- package/dist/sdk/{prompt-state-YHGXB2OA.mjs → prompt-state-VAKKC773.mjs} +4 -4
- package/dist/sdk/{renderer-schema-CMXOLNIG.mjs → renderer-schema-HXEW6BRJ.mjs} +3 -3
- package/dist/sdk/{routing-S3Y7T2X3.mjs → routing-OZQWAGAI.mjs} +9 -8
- package/dist/sdk/schedule-tool-handler-B7TMSG6A.mjs +38 -0
- package/dist/sdk/schedule-tool-handler-EBNKDUJC.mjs +38 -0
- package/dist/sdk/sdk.d.mts +134 -4
- package/dist/sdk/sdk.d.ts +134 -4
- package/dist/sdk/sdk.js +3787 -1105
- package/dist/sdk/sdk.js.map +1 -1
- package/dist/sdk/sdk.mjs +14 -14
- package/dist/sdk/{slack-frontend-R3M2CACB.mjs → slack-frontend-LAY45IBR.mjs} +119 -29
- package/dist/sdk/slack-frontend-LAY45IBR.mjs.map +1 -0
- package/dist/sdk/{trace-helpers-YHNPC7MR.mjs → trace-helpers-PP3YHTAM.mjs} +3 -3
- package/dist/sdk/{tui-frontend-S546M7A7.mjs → tui-frontend-T56PZB67.mjs} +25 -16
- package/dist/sdk/tui-frontend-T56PZB67.mjs.map +1 -0
- package/dist/sdk/validator-XTZJZZJH.mjs +134 -0
- package/dist/sdk/validator-XTZJZZJH.mjs.map +1 -0
- package/dist/sdk/workflow-check-provider-E7YPEZ45.mjs +28 -0
- package/dist/sdk/workflow-check-provider-E7YPEZ45.mjs.map +1 -0
- package/dist/sdk/workflow-check-provider-HB4XTD4Z.mjs +28 -0
- package/dist/sdk/workflow-check-provider-HB4XTD4Z.mjs.map +1 -0
- package/dist/sdk/workflow-registry-AAD37XKZ.mjs +12 -0
- package/dist/sdk/workflow-registry-AAD37XKZ.mjs.map +1 -0
- package/dist/slack/client.d.ts +12 -0
- package/dist/slack/client.d.ts.map +1 -1
- package/dist/slack/slack-output-adapter.d.ts.map +1 -1
- package/dist/slack/socket-runner.d.ts.map +1 -1
- package/dist/state-machine/dispatch/execution-invoker.d.ts.map +1 -1
- package/dist/state-machine/dispatch/policy-gate.d.ts +28 -0
- package/dist/state-machine/dispatch/policy-gate.d.ts.map +1 -0
- package/dist/state-machine/states/level-dispatch.d.ts.map +1 -1
- package/dist/state-machine/states/routing.d.ts.map +1 -1
- package/dist/state-machine/states/wave-planning.d.ts.map +1 -1
- package/dist/state-machine-execution-engine.d.ts.map +1 -1
- package/dist/test-runner/core/flow-stage.d.ts.map +1 -1
- package/dist/test-runner/validator.d.ts.map +1 -1
- package/dist/tui/chat-runner.d.ts.map +1 -1
- package/dist/tui/chat-state.d.ts +1 -0
- package/dist/tui/chat-state.d.ts.map +1 -1
- package/dist/tui/chat-tui.d.ts +3 -2
- package/dist/tui/chat-tui.d.ts.map +1 -1
- package/dist/tui/components/chat-box.d.ts +9 -0
- package/dist/tui/components/chat-box.d.ts.map +1 -1
- package/dist/tui/components/input-bar.d.ts +18 -1
- package/dist/tui/components/input-bar.d.ts.map +1 -1
- package/dist/tui/components/status-bar.d.ts +5 -2
- package/dist/tui/components/status-bar.d.ts.map +1 -1
- package/dist/tui/components/trace-viewer.d.ts +1 -0
- package/dist/tui/components/trace-viewer.d.ts.map +1 -1
- package/dist/tui/tui-frontend.d.ts.map +1 -1
- package/dist/types/config.d.ts +107 -3
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/engine.d.ts +5 -0
- package/dist/types/engine.d.ts.map +1 -1
- package/dist/types/execution.d.ts +1 -1
- package/dist/types/execution.d.ts.map +1 -1
- package/package.json +14 -4
- package/dist/output/traces/run-2026-02-08T18-16-04-160Z.ndjson +0 -138
- package/dist/output/traces/run-2026-02-08T18-16-51-253Z.ndjson +0 -1357
- package/dist/sdk/check-provider-registry-ACRGIYOB.mjs +0 -28
- package/dist/sdk/check-provider-registry-VYHKFHK2.mjs +0 -28
- package/dist/sdk/chunk-7YSOINAQ.mjs.map +0 -1
- package/dist/sdk/chunk-BDGUM6BA.mjs.map +0 -1
- package/dist/sdk/chunk-DGZPPGJJ.mjs.map +0 -1
- package/dist/sdk/chunk-N7HO6KKC.mjs.map +0 -1
- package/dist/sdk/chunk-R5Z7YWPB.mjs.map +0 -1
- package/dist/sdk/chunk-SGS2VMEL.mjs.map +0 -1
- package/dist/sdk/failure-condition-evaluator-4WMDF4Q3.mjs +0 -17
- package/dist/sdk/memory-store-3N4AZCYB.mjs +0 -12
- package/dist/sdk/slack-frontend-R3M2CACB.mjs.map +0 -1
- package/dist/sdk/tui-frontend-S546M7A7.mjs.map +0 -1
- package/dist/sdk/workflow-check-provider-4F3432ZP.mjs +0 -28
- package/dist/sdk/workflow-check-provider-A44PBPG2.mjs +0 -28
- package/dist/sdk/workflow-registry-ZAYYXLEP.mjs +0 -12
- package/dist/traces/run-2026-02-08T18-16-04-160Z.ndjson +0 -138
- package/dist/traces/run-2026-02-08T18-16-51-253Z.ndjson +0 -1357
- /package/dist/sdk/{check-provider-registry-ACRGIYOB.mjs.map → check-provider-registry-PANIXYRB.mjs.map} +0 -0
- /package/dist/sdk/{check-provider-registry-VYHKFHK2.mjs.map → check-provider-registry-S7DKTEM6.mjs.map} +0 -0
- /package/dist/sdk/{chunk-D5KI4YQ4.mjs.map → chunk-DIND4ZCV.mjs.map} +0 -0
- /package/dist/sdk/{chunk-XDLQ3UNF.mjs.map → chunk-GEW6LS32.mjs.map} +0 -0
- /package/dist/sdk/{chunk-XR7XXGL7.mjs.map → chunk-JL7JXCET.mjs.map} +0 -0
- /package/dist/sdk/{chunk-6W75IMDC.mjs.map → chunk-LG4AUKHB.mjs.map} +0 -0
- /package/dist/sdk/{chunk-PO7X5XI7.mjs.map → chunk-SZXICFQ3.mjs.map} +0 -0
- /package/dist/sdk/{chunk-2KB35MB7.mjs.map → chunk-VPC3QSPW.mjs.map} +0 -0
- /package/dist/sdk/{chunk-J5RGJQ53.mjs.map → chunk-YJRBN3XS.mjs.map} +0 -0
- /package/dist/sdk/{command-executor-DVVXERLR.mjs.map → command-executor-TOYBBE7S.mjs.map} +0 -0
- /package/dist/sdk/{config-7VTT64SQ.mjs.map → config-OGOS4ZU4.mjs.map} +0 -0
- /package/dist/sdk/{failure-condition-evaluator-4WMDF4Q3.mjs.map → failure-condition-evaluator-HC3M5377.mjs.map} +0 -0
- /package/dist/sdk/{github-frontend-3N2NLO66.mjs.map → github-frontend-E2KJSC3Y.mjs.map} +0 -0
- /package/dist/sdk/{host-ONVMEHAA.mjs.map → host-EE6EJ2FM.mjs.map} +0 -0
- /package/dist/sdk/{liquid-extensions-5IZLTFSZ.mjs.map → lazy-otel-5NH4ZJJM.mjs.map} +0 -0
- /package/dist/sdk/{memory-store-3N4AZCYB.mjs.map → liquid-extensions-E4EUOCES.mjs.map} +0 -0
- /package/dist/sdk/{metrics-GXQ2EDXA.mjs.map → memory-store-AAPL2MTE.mjs.map} +0 -0
- /package/dist/sdk/{prompt-state-YHGXB2OA.mjs.map → metrics-I6A7IHG4.mjs.map} +0 -0
- /package/dist/sdk/{routing-S3Y7T2X3.mjs.map → prompt-state-VAKKC773.mjs.map} +0 -0
- /package/dist/sdk/{renderer-schema-CMXOLNIG.mjs.map → renderer-schema-HXEW6BRJ.mjs.map} +0 -0
- /package/dist/sdk/{trace-helpers-YHNPC7MR.mjs.map → routing-OZQWAGAI.mjs.map} +0 -0
- /package/dist/sdk/{workflow-check-provider-4F3432ZP.mjs.map → schedule-tool-handler-B7TMSG6A.mjs.map} +0 -0
- /package/dist/sdk/{workflow-check-provider-A44PBPG2.mjs.map → schedule-tool-handler-EBNKDUJC.mjs.map} +0 -0
- /package/dist/sdk/{workflow-registry-ZAYYXLEP.mjs.map → trace-helpers-PP3YHTAM.mjs.map} +0 -0
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import {
|
|
2
|
+
__esm
|
|
3
|
+
} from "./chunk-J7LXIPZS.mjs";
|
|
4
|
+
|
|
5
|
+
// src/enterprise/license/validator.ts
|
|
6
|
+
import * as crypto from "crypto";
|
|
7
|
+
import * as fs from "fs";
|
|
8
|
+
import * as path from "path";
|
|
9
|
+
var LicenseValidator;
|
|
10
|
+
var init_validator = __esm({
|
|
11
|
+
"src/enterprise/license/validator.ts"() {
|
|
12
|
+
LicenseValidator = class _LicenseValidator {
|
|
13
|
+
/** Ed25519 public key for license verification (PEM format). */
|
|
14
|
+
static PUBLIC_KEY = "-----BEGIN PUBLIC KEY-----\nMCowBQYDK2VwAyEAI/Zd08EFmgIdrDm/HXd0l3/5GBt7R1PrdvhdmEXhJlU=\n-----END PUBLIC KEY-----\n";
|
|
15
|
+
cache = null;
|
|
16
|
+
static CACHE_TTL = 5 * 60 * 1e3;
|
|
17
|
+
// 5 minutes
|
|
18
|
+
static GRACE_PERIOD = 72 * 3600 * 1e3;
|
|
19
|
+
// 72 hours after expiry
|
|
20
|
+
/**
|
|
21
|
+
* Load and validate license from environment or file.
|
|
22
|
+
*
|
|
23
|
+
* Resolution order:
|
|
24
|
+
* 1. VISOR_LICENSE env var (JWT string)
|
|
25
|
+
* 2. VISOR_LICENSE_FILE env var (path to file)
|
|
26
|
+
* 3. .visor-license in project root (cwd)
|
|
27
|
+
* 4. .visor-license in ~/.config/visor/
|
|
28
|
+
*/
|
|
29
|
+
async loadAndValidate() {
|
|
30
|
+
if (this.cache && Date.now() - this.cache.validatedAt < _LicenseValidator.CACHE_TTL) {
|
|
31
|
+
return this.cache.payload;
|
|
32
|
+
}
|
|
33
|
+
const token = this.resolveToken();
|
|
34
|
+
if (!token) return null;
|
|
35
|
+
const payload = this.verifyAndDecode(token);
|
|
36
|
+
if (!payload) return null;
|
|
37
|
+
this.cache = { payload, validatedAt: Date.now() };
|
|
38
|
+
return payload;
|
|
39
|
+
}
|
|
40
|
+
/** Check if a specific feature is licensed */
|
|
41
|
+
hasFeature(feature) {
|
|
42
|
+
if (!this.cache) return false;
|
|
43
|
+
return this.cache.payload.features.includes(feature);
|
|
44
|
+
}
|
|
45
|
+
/** Check if license is valid (with grace period) */
|
|
46
|
+
isValid() {
|
|
47
|
+
if (!this.cache) return false;
|
|
48
|
+
const now = Date.now();
|
|
49
|
+
const expiryMs = this.cache.payload.exp * 1e3;
|
|
50
|
+
return now < expiryMs + _LicenseValidator.GRACE_PERIOD;
|
|
51
|
+
}
|
|
52
|
+
/** Check if the license is within its grace period (expired but still valid) */
|
|
53
|
+
isInGracePeriod() {
|
|
54
|
+
if (!this.cache) return false;
|
|
55
|
+
const now = Date.now();
|
|
56
|
+
const expiryMs = this.cache.payload.exp * 1e3;
|
|
57
|
+
return now >= expiryMs && now < expiryMs + _LicenseValidator.GRACE_PERIOD;
|
|
58
|
+
}
|
|
59
|
+
resolveToken() {
|
|
60
|
+
if (process.env.VISOR_LICENSE) {
|
|
61
|
+
return process.env.VISOR_LICENSE.trim();
|
|
62
|
+
}
|
|
63
|
+
if (process.env.VISOR_LICENSE_FILE) {
|
|
64
|
+
const resolved = path.resolve(process.env.VISOR_LICENSE_FILE);
|
|
65
|
+
const home2 = process.env.HOME || process.env.USERPROFILE || "";
|
|
66
|
+
const allowedPrefixes = [path.normalize(process.cwd())];
|
|
67
|
+
if (home2) allowedPrefixes.push(path.normalize(path.join(home2, ".config", "visor")));
|
|
68
|
+
let realPath;
|
|
69
|
+
try {
|
|
70
|
+
realPath = fs.realpathSync(resolved);
|
|
71
|
+
} catch {
|
|
72
|
+
return null;
|
|
73
|
+
}
|
|
74
|
+
const isSafe = allowedPrefixes.some(
|
|
75
|
+
(prefix) => realPath === prefix || realPath.startsWith(prefix + path.sep)
|
|
76
|
+
);
|
|
77
|
+
if (!isSafe) return null;
|
|
78
|
+
return this.readFile(realPath);
|
|
79
|
+
}
|
|
80
|
+
const cwdPath = path.join(process.cwd(), ".visor-license");
|
|
81
|
+
const cwdToken = this.readFile(cwdPath);
|
|
82
|
+
if (cwdToken) return cwdToken;
|
|
83
|
+
const home = process.env.HOME || process.env.USERPROFILE || "";
|
|
84
|
+
if (home) {
|
|
85
|
+
const configPath = path.join(home, ".config", "visor", ".visor-license");
|
|
86
|
+
const configToken = this.readFile(configPath);
|
|
87
|
+
if (configToken) return configToken;
|
|
88
|
+
}
|
|
89
|
+
return null;
|
|
90
|
+
}
|
|
91
|
+
readFile(filePath) {
|
|
92
|
+
try {
|
|
93
|
+
return fs.readFileSync(filePath, "utf-8").trim();
|
|
94
|
+
} catch {
|
|
95
|
+
return null;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
verifyAndDecode(token) {
|
|
99
|
+
try {
|
|
100
|
+
const parts = token.split(".");
|
|
101
|
+
if (parts.length !== 3) return null;
|
|
102
|
+
const [headerB64, payloadB64, signatureB64] = parts;
|
|
103
|
+
const header = JSON.parse(Buffer.from(headerB64, "base64url").toString());
|
|
104
|
+
if (header.alg !== "EdDSA") return null;
|
|
105
|
+
const data = `${headerB64}.${payloadB64}`;
|
|
106
|
+
const signature = Buffer.from(signatureB64, "base64url");
|
|
107
|
+
const publicKey = crypto.createPublicKey(_LicenseValidator.PUBLIC_KEY);
|
|
108
|
+
if (publicKey.asymmetricKeyType !== "ed25519") {
|
|
109
|
+
return null;
|
|
110
|
+
}
|
|
111
|
+
const isValid = crypto.verify(null, Buffer.from(data), publicKey, signature);
|
|
112
|
+
if (!isValid) return null;
|
|
113
|
+
const payload = JSON.parse(Buffer.from(payloadB64, "base64url").toString());
|
|
114
|
+
if (!payload.org || !Array.isArray(payload.features) || typeof payload.exp !== "number" || typeof payload.iat !== "number" || !payload.sub) {
|
|
115
|
+
return null;
|
|
116
|
+
}
|
|
117
|
+
const now = Date.now();
|
|
118
|
+
const expiryMs = payload.exp * 1e3;
|
|
119
|
+
if (now >= expiryMs + _LicenseValidator.GRACE_PERIOD) {
|
|
120
|
+
return null;
|
|
121
|
+
}
|
|
122
|
+
return payload;
|
|
123
|
+
} catch {
|
|
124
|
+
return null;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
};
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
init_validator();
|
|
131
|
+
export {
|
|
132
|
+
LicenseValidator
|
|
133
|
+
};
|
|
134
|
+
//# sourceMappingURL=validator-XTZJZZJH.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/enterprise/license/validator.ts"],"sourcesContent":["/**\n * Copyright (c) ProbeLabs. All rights reserved.\n * Licensed under the Elastic License 2.0; you may not use this file except\n * in compliance with the Elastic License 2.0.\n */\n\nimport * as crypto from 'crypto';\nimport * as fs from 'fs';\nimport * as path from 'path';\n\nexport interface LicensePayload {\n org: string;\n features: string[];\n exp: number;\n iat: number;\n sub: string;\n}\n\nexport class LicenseValidator {\n /** Ed25519 public key for license verification (PEM format). */\n private static PUBLIC_KEY =\n '-----BEGIN PUBLIC KEY-----\\n' +\n 'MCowBQYDK2VwAyEAI/Zd08EFmgIdrDm/HXd0l3/5GBt7R1PrdvhdmEXhJlU=\\n' +\n '-----END PUBLIC KEY-----\\n';\n\n private cache: { payload: LicensePayload; validatedAt: number } | null = null;\n private static CACHE_TTL = 5 * 60 * 1000; // 5 minutes\n private static GRACE_PERIOD = 72 * 3600 * 1000; // 72 hours after expiry\n\n /**\n * Load and validate license from environment or file.\n *\n * Resolution order:\n * 1. VISOR_LICENSE env var (JWT string)\n * 2. VISOR_LICENSE_FILE env var (path to file)\n * 3. .visor-license in project root (cwd)\n * 4. .visor-license in ~/.config/visor/\n */\n async loadAndValidate(): Promise<LicensePayload | null> {\n // Return cached result if still fresh\n if (this.cache && Date.now() - this.cache.validatedAt < LicenseValidator.CACHE_TTL) {\n return this.cache.payload;\n }\n\n const token = this.resolveToken();\n if (!token) return null;\n\n const payload = this.verifyAndDecode(token);\n if (!payload) return null;\n\n this.cache = { payload, validatedAt: Date.now() };\n return payload;\n }\n\n /** Check if a specific feature is licensed */\n hasFeature(feature: string): boolean {\n if (!this.cache) return false;\n return this.cache.payload.features.includes(feature);\n }\n\n /** Check if license is valid (with grace period) */\n isValid(): boolean {\n if (!this.cache) return false;\n const now = Date.now();\n const expiryMs = this.cache.payload.exp * 1000;\n return now < expiryMs + LicenseValidator.GRACE_PERIOD;\n }\n\n /** Check if the license is within its grace period (expired but still valid) */\n isInGracePeriod(): boolean {\n if (!this.cache) return false;\n const now = Date.now();\n const expiryMs = this.cache.payload.exp * 1000;\n return now >= expiryMs && now < expiryMs + LicenseValidator.GRACE_PERIOD;\n }\n\n private resolveToken(): string | null {\n // 1. Direct env var\n if (process.env.VISOR_LICENSE) {\n return process.env.VISOR_LICENSE.trim();\n }\n\n // 2. File path from env (validate against path traversal)\n if (process.env.VISOR_LICENSE_FILE) {\n // path.resolve() produces an absolute path with all '..' segments resolved,\n // so a separate resolved.includes('..') check is unnecessary.\n const resolved = path.resolve(process.env.VISOR_LICENSE_FILE);\n const home = process.env.HOME || process.env.USERPROFILE || '';\n const allowedPrefixes = [path.normalize(process.cwd())];\n if (home) allowedPrefixes.push(path.normalize(path.join(home, '.config', 'visor')));\n\n // Resolve symlinks so an attacker cannot create a symlink inside an\n // allowed prefix that points to an arbitrary file outside it.\n let realPath: string;\n try {\n realPath = fs.realpathSync(resolved);\n } catch {\n return null; // File doesn't exist or isn't accessible\n }\n\n const isSafe = allowedPrefixes.some(\n prefix => realPath === prefix || realPath.startsWith(prefix + path.sep)\n );\n if (!isSafe) return null;\n return this.readFile(realPath);\n }\n\n // 3. .visor-license in cwd\n const cwdPath = path.join(process.cwd(), '.visor-license');\n const cwdToken = this.readFile(cwdPath);\n if (cwdToken) return cwdToken;\n\n // 4. ~/.config/visor/.visor-license\n const home = process.env.HOME || process.env.USERPROFILE || '';\n if (home) {\n const configPath = path.join(home, '.config', 'visor', '.visor-license');\n const configToken = this.readFile(configPath);\n if (configToken) return configToken;\n }\n\n return null;\n }\n\n private readFile(filePath: string): string | null {\n try {\n return fs.readFileSync(filePath, 'utf-8').trim();\n } catch {\n return null;\n }\n }\n\n private verifyAndDecode(token: string): LicensePayload | null {\n try {\n const parts = token.split('.');\n if (parts.length !== 3) return null;\n\n const [headerB64, payloadB64, signatureB64] = parts;\n\n // Decode header to verify algorithm\n const header = JSON.parse(Buffer.from(headerB64, 'base64url').toString());\n if (header.alg !== 'EdDSA') return null;\n\n // Verify signature\n const data = `${headerB64}.${payloadB64}`;\n const signature = Buffer.from(signatureB64, 'base64url');\n\n const publicKey = crypto.createPublicKey(LicenseValidator.PUBLIC_KEY);\n\n // Validate that the loaded public key is actually Ed25519 (OID 1.3.101.112).\n // This prevents algorithm-confusion attacks if the embedded key were ever\n // swapped to a different type.\n if (publicKey.asymmetricKeyType !== 'ed25519') {\n return null;\n }\n\n // Ed25519 verification: algorithm must be null because EdDSA performs its\n // own internal hashing (SHA-512) — passing a digest algorithm here would\n // cause Node.js to throw. The key type is validated above.\n const isValid = crypto.verify(null, Buffer.from(data), publicKey, signature);\n if (!isValid) return null;\n\n // Decode payload\n const payload: LicensePayload = JSON.parse(Buffer.from(payloadB64, 'base64url').toString());\n\n // Validate required fields\n if (\n !payload.org ||\n !Array.isArray(payload.features) ||\n typeof payload.exp !== 'number' ||\n typeof payload.iat !== 'number' ||\n !payload.sub\n ) {\n return null;\n }\n\n // Check expiry (with grace period)\n const now = Date.now();\n const expiryMs = payload.exp * 1000;\n if (now >= expiryMs + LicenseValidator.GRACE_PERIOD) {\n return null;\n }\n\n return payload;\n } catch {\n return null;\n }\n }\n}\n"],"mappings":"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","names":["home"]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import {
|
|
2
|
+
WorkflowCheckProvider,
|
|
3
|
+
init_workflow_check_provider
|
|
4
|
+
} from "./chunk-TQ4D3YOF.mjs";
|
|
5
|
+
import "./chunk-KFKHU6CM.mjs";
|
|
6
|
+
import "./chunk-LG4AUKHB.mjs";
|
|
7
|
+
import "./chunk-B7BVQM5K.mjs";
|
|
8
|
+
import "./chunk-XXAEN5KU.mjs";
|
|
9
|
+
import "./chunk-GEW6LS32.mjs";
|
|
10
|
+
import "./chunk-DIND4ZCV.mjs";
|
|
11
|
+
import "./chunk-UCNT3PDT.mjs";
|
|
12
|
+
import "./chunk-NCWIZVOT.mjs";
|
|
13
|
+
import "./chunk-VMLORODQ.mjs";
|
|
14
|
+
import "./chunk-HOKQOO3G.mjs";
|
|
15
|
+
import "./chunk-YJRBN3XS.mjs";
|
|
16
|
+
import "./chunk-JL7JXCET.mjs";
|
|
17
|
+
import "./chunk-V2IV3ILA.mjs";
|
|
18
|
+
import "./chunk-25IC7KXZ.mjs";
|
|
19
|
+
import "./chunk-VF6XIUE4.mjs";
|
|
20
|
+
import "./chunk-VPC3QSPW.mjs";
|
|
21
|
+
import "./chunk-SZXICFQ3.mjs";
|
|
22
|
+
import "./chunk-UCMJJ3IM.mjs";
|
|
23
|
+
import "./chunk-J7LXIPZS.mjs";
|
|
24
|
+
init_workflow_check_provider();
|
|
25
|
+
export {
|
|
26
|
+
WorkflowCheckProvider
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=workflow-check-provider-E7YPEZ45.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import {
|
|
2
|
+
WorkflowCheckProvider,
|
|
3
|
+
init_workflow_check_provider
|
|
4
|
+
} from "./chunk-S6CD7GFM.mjs";
|
|
5
|
+
import "./chunk-LG4AUKHB.mjs";
|
|
6
|
+
import "./chunk-KFKHU6CM.mjs";
|
|
7
|
+
import "./chunk-B7BVQM5K.mjs";
|
|
8
|
+
import "./chunk-XXAEN5KU.mjs";
|
|
9
|
+
import "./chunk-GEW6LS32.mjs";
|
|
10
|
+
import "./chunk-DIND4ZCV.mjs";
|
|
11
|
+
import "./chunk-UCNT3PDT.mjs";
|
|
12
|
+
import "./chunk-NCWIZVOT.mjs";
|
|
13
|
+
import "./chunk-VMLORODQ.mjs";
|
|
14
|
+
import "./chunk-HOKQOO3G.mjs";
|
|
15
|
+
import "./chunk-YJRBN3XS.mjs";
|
|
16
|
+
import "./chunk-JL7JXCET.mjs";
|
|
17
|
+
import "./chunk-V2IV3ILA.mjs";
|
|
18
|
+
import "./chunk-25IC7KXZ.mjs";
|
|
19
|
+
import "./chunk-VF6XIUE4.mjs";
|
|
20
|
+
import "./chunk-VPC3QSPW.mjs";
|
|
21
|
+
import "./chunk-SZXICFQ3.mjs";
|
|
22
|
+
import "./chunk-UCMJJ3IM.mjs";
|
|
23
|
+
import "./chunk-J7LXIPZS.mjs";
|
|
24
|
+
init_workflow_check_provider();
|
|
25
|
+
export {
|
|
26
|
+
WorkflowCheckProvider
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=workflow-check-provider-HB4XTD4Z.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import {
|
|
2
|
+
WorkflowRegistry,
|
|
3
|
+
init_workflow_registry
|
|
4
|
+
} from "./chunk-DIND4ZCV.mjs";
|
|
5
|
+
import "./chunk-SZXICFQ3.mjs";
|
|
6
|
+
import "./chunk-UCMJJ3IM.mjs";
|
|
7
|
+
import "./chunk-J7LXIPZS.mjs";
|
|
8
|
+
init_workflow_registry();
|
|
9
|
+
export {
|
|
10
|
+
WorkflowRegistry
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=workflow-registry-AAD37XKZ.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
package/dist/slack/client.d.ts
CHANGED
|
@@ -27,9 +27,17 @@ export declare class SlackClient {
|
|
|
27
27
|
text: string;
|
|
28
28
|
thread_ts?: string;
|
|
29
29
|
}) => Promise<{
|
|
30
|
+
ok: false;
|
|
31
|
+
ts: undefined;
|
|
32
|
+
message: undefined;
|
|
33
|
+
data: any;
|
|
34
|
+
error: any;
|
|
35
|
+
} | {
|
|
36
|
+
ok: true;
|
|
30
37
|
ts: any;
|
|
31
38
|
message: any;
|
|
32
39
|
data: any;
|
|
40
|
+
error: undefined;
|
|
33
41
|
}>;
|
|
34
42
|
update: ({ channel, ts, text }: {
|
|
35
43
|
channel: string;
|
|
@@ -38,9 +46,13 @@ export declare class SlackClient {
|
|
|
38
46
|
}) => Promise<{
|
|
39
47
|
ok: false;
|
|
40
48
|
ts: string;
|
|
49
|
+
error: any;
|
|
50
|
+
data: any;
|
|
41
51
|
} | {
|
|
42
52
|
ok: true;
|
|
43
53
|
ts: any;
|
|
54
|
+
error: undefined;
|
|
55
|
+
data: any;
|
|
44
56
|
}>;
|
|
45
57
|
};
|
|
46
58
|
getBotUserId(): Promise<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/slack/client.ts"],"names":[],"mappings":"AAGA,qBAAa,WAAW;IACtB,OAAO,CAAC,KAAK,CAAS;gBAEV,QAAQ,EAAE,MAAM;IAO5B,SAAgB,SAAS;6CAKpB;YACD,OAAO,EAAE,MAAM,CAAC;YAChB,SAAS,EAAE,MAAM,CAAC;YAClB,IAAI,EAAE,MAAM,CAAC;SACd;;;;;gDAcE;YACD,OAAO,EAAE,MAAM,CAAC;YAChB,SAAS,EAAE,MAAM,CAAC;YAClB,IAAI,EAAE,MAAM,CAAC;SACd;;;;;MASD;IAEF,SAAgB,IAAI;qDAKf;YACD,OAAO,EAAE,MAAM,CAAC;YAChB,IAAI,EAAE,MAAM,CAAC;YACb,SAAS,CAAC,EAAE,MAAM,CAAC;SACpB
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/slack/client.ts"],"names":[],"mappings":"AAGA,qBAAa,WAAW;IACtB,OAAO,CAAC,KAAK,CAAS;gBAEV,QAAQ,EAAE,MAAM;IAO5B,SAAgB,SAAS;6CAKpB;YACD,OAAO,EAAE,MAAM,CAAC;YAChB,SAAS,EAAE,MAAM,CAAC;YAClB,IAAI,EAAE,MAAM,CAAC;SACd;;;;;gDAcE;YACD,OAAO,EAAE,MAAM,CAAC;YAChB,SAAS,EAAE,MAAM,CAAC;YAClB,IAAI,EAAE,MAAM,CAAC;SACd;;;;;MASD;IAEF,SAAgB,IAAI;qDAKf;YACD,OAAO,EAAE,MAAM,CAAC;YAChB,IAAI,EAAE,MAAM,CAAC;YACb,SAAS,CAAC,EAAE,MAAM,CAAC;SACpB;;;;;;;;;;;;;wCA4CqC;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,EAAE,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;MA8BnF;IAEI,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IASrC;;;OAGG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QACzC,EAAE,EAAE,OAAO,CAAC;QACZ,IAAI,CAAC,EAAE;YACL,EAAE,EAAE,MAAM,CAAC;YACX,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,aAAa,CAAC,EAAE,OAAO,CAAC;YACxB,mBAAmB,CAAC,EAAE,OAAO,CAAC;YAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;YACjB,WAAW,CAAC,EAAE,OAAO,CAAC;YACtB,OAAO,CAAC,EAAE,OAAO,CAAC;YAClB,EAAE,CAAC,EAAE,MAAM,CAAC;YACZ,SAAS,CAAC,EAAE,MAAM,CAAC;SACpB,CAAC;KACH,CAAC;IA4BF;;;OAGG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAgBlE,kBAAkB,CACtB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,KAAK,GAAE,MAAW,GACjB,OAAO,CACR,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CACzF;IAwCD,SAAgB,KAAK;QACnB;;;WAGG;uFAQA;YACD,OAAO,EAAE,MAAM,CAAC;YAChB,QAAQ,EAAE,MAAM,CAAC;YACjB,OAAO,EAAE,MAAM,CAAC;YAChB,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,eAAe,CAAC,EAAE,MAAM,CAAC;SAC1B,KAAG,OAAO,CAAC;YAAE,EAAE,EAAE,OAAO,CAAC;YAAC,IAAI,CAAC,EAAE;gBAAE,EAAE,EAAE,MAAM,CAAC;gBAAC,SAAS,CAAC,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,CAAC;MA+CvE;IAEF,YAAY,IAAI,GAAG;YAaL,GAAG;CAYlB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"slack-output-adapter.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/slack/slack-output-adapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,EAAE,QAAQ,EAAyB,MAAM,6BAA6B,CAAC;AACnF,OAAO,KAAK,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAG7F;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,0DAA0D;IAC1D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kDAAkD;IAClD,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,iDAAiD;IACjD,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;GAEG;AACH,qBAAa,kBAAmB,YAAW,qBAAqB;IAC9D,QAAQ,CAAC,IAAI,EAAG,OAAO,CAAU;IACjC,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,MAAM,CAA2B;gBAE7B,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,wBAAwB;IAKlE;;OAEG;IACG,UAAU,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"slack-output-adapter.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/slack/slack-output-adapter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,EAAE,QAAQ,EAAyB,MAAM,6BAA6B,CAAC;AACnF,OAAO,KAAK,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAG7F;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,0DAA0D;IAC1D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kDAAkD;IAClD,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,iDAAiD;IACjD,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED;;GAEG;AACH,qBAAa,kBAAmB,YAAW,qBAAqB;IAC9D,QAAQ,CAAC,IAAI,EAAG,OAAO,CAAU;IACjC,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,MAAM,CAA2B;gBAE7B,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE,wBAAwB;IAKlE;;OAEG;IACG,UAAU,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IAuDpF;;OAEG;YACW,aAAa;IAsC3B;;OAEG;IACH,OAAO,CAAC,YAAY;CAuDrB;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,WAAW,EACnB,MAAM,CAAC,EAAE,wBAAwB,GAChC,kBAAkB,CAEpB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"socket-runner.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/slack/socket-runner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAmB,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAOhF,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAGnD,KAAK,iBAAiB,GAAG;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC;IAC5B,OAAO,CAAC,EAAE,UAAU,GAAG,KAAK,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,EAAE,CAAC,CAAY;IACvB,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,MAAM,CAAC,CAAc;IAC7B,OAAO,CAAC,OAAO,CAAC,CAAc;IAC9B,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,gBAAgB,CAAkB;IAC1C,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,aAAa,CAAkC;IACvD,OAAO,CAAC,aAAa,CASP;IACd,OAAO,CAAC,OAAO,CAAC,CAAe;IAC/B,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,gBAAgB,CAAC,CAAY;gBAEzB,MAAM,EAAE,2BAA2B,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,iBAAiB;IAqB1F;;;OAGG;YACW,YAAY;IAYpB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YA0Ed,cAAc;YAiBd,OAAO;YAgBP,OAAO;IAerB,OAAO,CAAC,IAAI;IAMZ,OAAO,CAAC,gBAAgB;IAQxB;;;OAGG;YACW,aAAa;IAyC3B;;OAEG;YACW,WAAW;YAKX,aAAa;
|
|
1
|
+
{"version":3,"file":"socket-runner.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/slack/socket-runner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAmB,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAOhF,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAGnD,KAAK,iBAAiB,GAAG;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC;IAC5B,OAAO,CAAC,EAAE,UAAU,GAAG,KAAK,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,EAAE,CAAC,CAAY;IACvB,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,MAAM,CAAC,CAAc;IAC7B,OAAO,CAAC,OAAO,CAAC,CAAc;IAC9B,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,gBAAgB,CAAkB;IAC1C,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,aAAa,CAAkC;IACvD,OAAO,CAAC,aAAa,CASP;IACd,OAAO,CAAC,OAAO,CAAC,CAAe;IAC/B,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,gBAAgB,CAAC,CAAY;gBAEzB,MAAM,EAAE,2BAA2B,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,iBAAiB;IAqB1F;;;OAGG;YACW,YAAY;IAYpB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YA0Ed,cAAc;YAiBd,OAAO;YAgBP,OAAO;IAerB,OAAO,CAAC,IAAI;IAMZ,OAAO,CAAC,gBAAgB;IAQxB;;;OAGG;YACW,aAAa;IAyC3B;;OAEG;YACW,WAAW;YAKX,aAAa;IA6S3B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAyB3B;;OAEG;IACH,YAAY,IAAI,SAAS,GAAG,SAAS;IAIrC,0FAA0F;IAC1F,OAAO,CAAC,eAAe;CA+BxB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution-invoker.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/state-machine/dispatch/execution-invoker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC5F,OAAO,KAAK,EAAe,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"execution-invoker.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/state-machine/dispatch/execution-invoker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC5F,OAAO,KAAK,EAAe,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAkRtD;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,QAAQ,EACf,SAAS,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,EACvC,UAAU,EAAE,CAAC,QAAQ,EAAE,WAAW,KAAK,IAAI,EAC3C,UAAU,EAAE,CACV,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,QAAQ,KACZ,OAAO,CAAC,OAAO,CAAC,EACrB,aAAa,CAAC,EAAE,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,GACtD,OAAO,CAAC,aAAa,CAAC,CA+oBxB"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared policy engine gating logic.
|
|
3
|
+
*
|
|
4
|
+
* Used by both execution-invoker and level-dispatch to evaluate whether
|
|
5
|
+
* a check is allowed to run according to the policy engine.
|
|
6
|
+
*/
|
|
7
|
+
import type { PolicyEngine } from '../../policy/types';
|
|
8
|
+
export interface PolicyGateResult {
|
|
9
|
+
/** Whether the check should be skipped (policy denied and not in warn-only mode) */
|
|
10
|
+
skip: boolean;
|
|
11
|
+
/** Human-readable reason for the decision */
|
|
12
|
+
reason?: string;
|
|
13
|
+
/** Whether a warn/audit message was emitted (allowed but flagged) */
|
|
14
|
+
warn?: boolean;
|
|
15
|
+
/** The audit reason string when warn is true */
|
|
16
|
+
auditReason?: string;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Evaluate the policy engine for a given check and return a gating result.
|
|
20
|
+
*
|
|
21
|
+
* This function:
|
|
22
|
+
* - Calls policyEngine.evaluateCheckExecution
|
|
23
|
+
* - On evaluation error, treats the check as denied
|
|
24
|
+
* - Logs audit warnings when decision.warn is true
|
|
25
|
+
* - Returns a simple result indicating skip/allow and any audit info
|
|
26
|
+
*/
|
|
27
|
+
export declare function applyPolicyGate(checkId: string, checkConfig: unknown, policyEngine: PolicyEngine): Promise<PolicyGateResult>;
|
|
28
|
+
//# sourceMappingURL=policy-gate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policy-gate.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/state-machine/dispatch/policy-gate.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAkB,MAAM,oBAAoB,CAAC;AAGvE,MAAM,WAAW,gBAAgB;IAC/B,oFAAoF;IACpF,IAAI,EAAE,OAAO,CAAC;IACd,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,gDAAgD;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,OAAO,EACpB,YAAY,EAAE,YAAY,GACzB,OAAO,CAAC,gBAAgB,CAAC,CA+B3B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"level-dispatch.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/state-machine/states/level-dispatch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,QAAQ,EACR,WAAW,EACX,WAAW,EAEZ,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"level-dispatch.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/state-machine/states/level-dispatch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,QAAQ,EACR,WAAW,EACX,WAAW,EAEZ,MAAM,oBAAoB,CAAC;AAsR5B,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,QAAQ,EACf,UAAU,EAAE,CAAC,QAAQ,EAAE,WAAW,KAAK,IAAI,EAC3C,SAAS,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,GACtC,OAAO,CAAC,IAAI,CAAC,CAyFf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/state-machine/states/routing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC5F,OAAO,KAAK,EAAE,aAAa,EAAe,MAAM,gBAAgB,CAAC;AACjE,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/state-machine/states/routing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC5F,OAAO,KAAK,EAAE,aAAa,EAAe,MAAM,gBAAgB,CAAC;AACjE,OAAO,KAAK,EACV,WAAW,EAEX,cAAc,EAIf,MAAM,oBAAoB,CAAC;AA2K5B;;GAEG;AACH,UAAU,cAAc;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,MAAM,EAAE,aAAa,CAAC;IACtB,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;CAClB;AA0ED;;;GAGG;AACH,wBAAsB,aAAa,CACjC,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,QAAQ,EACf,UAAU,EAAE,CAAC,QAAQ,EAAE,WAAW,KAAK,IAAI,EAC3C,SAAS,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,EACvC,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC,OAAO,CAAC,CA2ElB;AAmdD;;GAEG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,QAAQ,EACf,MAAM,EAAE,YAAY,GAAG,SAAS,GAAG,WAAW,EAC9C,MAAM,EAAE,KAAK,GAAG,MAAM,GACrB,OAAO,CAUT;AAgxBD;;GAEG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,QAAQ,GACf,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAuJxB;AAID;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACvC,WAAW,EAAE,cAAc,EAAE,GAAG,SAAS,EACzC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,QAAQ,GACf,OAAO,CACR;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,oBAAoB,EAAE,YAAY,CAAA;CAAE,GAAG,IAAI,GAAG,SAAS,CAC1F,CA0FA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wave-planning.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/state-machine/states/wave-planning.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAe,MAAM,oBAAoB,CAAC;AAI5F,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,QAAQ,EACf,UAAU,EAAE,CAAC,QAAQ,EAAE,WAAW,KAAK,IAAI,GAC1C,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"wave-planning.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/state-machine/states/wave-planning.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAe,MAAM,oBAAoB,CAAC;AAI5F,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,QAAQ,EACf,UAAU,EAAE,CAAC,QAAQ,EAAE,WAAW,KAAK,IAAI,GAC1C,OAAO,CAAC,IAAI,CAAC,CAodf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/state-machine-execution-engine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAK5C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAK1E;;;;;GAKG;AACH,qBAAa,2BAA2B;IACtC,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,gBAAgB,CAAC,CAAkE;IAC3F,OAAO,CAAC,WAAW,CAAC,CAAwB;IAC5C,OAAO,CAAC,YAAY,CAAC,CAAgB;IACrC,OAAO,CAAC,WAAW,CAAC,CAAqB;gBAGvC,gBAAgB,CAAC,EAAE,MAAM,EACzB,OAAO,CAAC,EAAE,OAAO,eAAe,EAAE,OAAO,EACzC,WAAW,CAAC,EAAE,qBAAqB;IAMrC;;;;OAIG;IACG,aAAa,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/state-machine-execution-engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow-stage.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/test-runner/core/flow-stage.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAQhE,KAAK,aAAa,GAAG,CACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,MAAM,KACb,IAAI,CAAC;AACV,KAAK,aAAa,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;AAChD,KAAK,UAAU,GAAG,CAAC,WAAW,CAAC,EAAE,MAAM,KAAK,OAAO,oBAAoB,EAAE,YAAY,CAAC;AACtF,KAAK,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,MAAM,EAAE,CAAC;AACpF,KAAK,cAAc,GAAG,CACpB,KAAK,EAAE,mBAAmB,EAC1B,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC3B,IAAI,CAAC;AAEV,qBAAa,SAAS;IAElB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,uBAAuB;IACxC,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IACpC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IACpC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBAbjB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,2BAA2B,EACnC,QAAQ,EAAE,gBAAgB,EAC1B,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EACjC,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,uBAAuB,EAAE,UAAU,EACnC,kBAAkB,EAAE,eAAe,EACnC,gBAAgB,EAAE,aAAa,EAC/B,mBAAmB,EAAE,aAAa,EAClC,qBAAqB,EAAE,cAAc,EACrC,kBAAkB,CAAC,EAAE,MAAM,EAAE,YAAA,EAC7B,kBAAkB,CAAC,EAAE,MAAM,EAAE,YAAA,EAC7B,gBAAgB,CAAC,EAAE,GAAG,EAAE,YAAA;IAGrC,GAAG,CACP,KAAK,EAAE,GAAG,EACV,QAAQ,EAAE,GAAG,EACb,MAAM,EAAE,OAAO,GACd,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,mBAAmB,CAAA;KAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"flow-stage.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/test-runner/core/flow-stage.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AACnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAQhE,KAAK,aAAa,GAAG,CACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,MAAM,KACb,IAAI,CAAC;AACV,KAAK,aAAa,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;AAChD,KAAK,UAAU,GAAG,CAAC,WAAW,CAAC,EAAE,MAAM,KAAK,OAAO,oBAAoB,EAAE,YAAY,CAAC;AACtF,KAAK,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,MAAM,EAAE,CAAC;AACpF,KAAK,cAAc,GAAG,CACpB,KAAK,EAAE,mBAAmB,EAC1B,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC3B,IAAI,CAAC;AAEV,qBAAa,SAAS;IAElB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,uBAAuB;IACxC,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IACtC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IACpC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IACpC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBAbjB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,2BAA2B,EACnC,QAAQ,EAAE,gBAAgB,EAC1B,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EACjC,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,uBAAuB,EAAE,UAAU,EACnC,kBAAkB,EAAE,eAAe,EACnC,gBAAgB,EAAE,aAAa,EAC/B,mBAAmB,EAAE,aAAa,EAClC,qBAAqB,EAAE,cAAc,EACrC,kBAAkB,CAAC,EAAE,MAAM,EAAE,YAAA,EAC7B,kBAAkB,CAAC,EAAE,MAAM,EAAE,YAAA,EAC7B,gBAAgB,CAAC,EAAE,GAAG,EAAE,YAAA;IAGrC,GAAG,CACP,KAAK,EAAE,GAAG,EACV,QAAQ,EAAE,GAAG,EACb,MAAM,EAAE,OAAO,GACd,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,CAAC,EAAE,mBAAmB,CAAA;KAAE,CAAC;CAwgB7E"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/test-runner/validator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/test-runner/validator.ts"],"names":[],"mappings":"AAigBA,MAAM,MAAM,gBAAgB,GAAG;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAE9E,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAS/D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-runner.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/tui/chat-runner.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAuB,MAAM,cAAc,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,2BAA2B,CAAC;IACrC,MAAM,EAAE,WAAW,CAAC;IACpB,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,YAAY,CAAmB;IACvC,OAAO,CAAC,OAAO,CAAC,CAAU;IAC1B,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,gBAAgB,CAAC,CAAgB;gBAE7B,MAAM,EAAE,mBAAmB;IAUjC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAwBtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB3B,UAAU,IAAI,OAAO,GAAG,SAAS;IAIjC,eAAe,IAAI,gBAAgB;IAInC,cAAc,IAAI,WAAW,GAAG,SAAS;YAI3B,iBAAiB;YAwBjB,iBAAiB;YAajB,eAAe;
|
|
1
|
+
{"version":3,"file":"chat-runner.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/tui/chat-runner.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,2BAA2B,EAAE,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAuB,MAAM,cAAc,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,2BAA2B,CAAC;IACrC,MAAM,EAAE,WAAW,CAAC;IACpB,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,YAAY,CAAmB;IACvC,OAAO,CAAC,OAAO,CAAC,CAAU;IAC1B,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,gBAAgB,CAAC,CAAgB;gBAE7B,MAAM,EAAE,mBAAmB;IAUjC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAwBtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB3B,UAAU,IAAI,OAAO,GAAG,SAAS;IAIjC,eAAe,IAAI,gBAAgB;IAInC,cAAc,IAAI,WAAW,GAAG,SAAS;YAI3B,iBAAiB;YAwBjB,iBAAiB;YAajB,eAAe;IAmH7B,OAAO,CAAC,mBAAmB;IAiBrB,WAAW,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAIrD;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,aAAa,CAAC,CAItF"}
|
package/dist/tui/chat-state.d.ts
CHANGED
|
@@ -48,6 +48,7 @@ export declare class ChatStateManager {
|
|
|
48
48
|
clearHistory(): void;
|
|
49
49
|
getRecentMessages(count: number): ChatMessage[];
|
|
50
50
|
formatMessageForDisplay(message: ChatMessage): string;
|
|
51
|
+
private escapeTags;
|
|
51
52
|
formatHistoryForDisplay(): string;
|
|
52
53
|
}
|
|
53
54
|
export declare function getChatStateManager(): ChatStateManager;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-state.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/tui/chat-state.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,uBAAuB;IACtC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,aAAa,CAAC,CAAe;IACrC,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,WAAW,CAAW;gBAElB,OAAO,GAAE,uBAA4B;IAIjD,IAAI,OAAO,IAAI,WAAW,EAAE,CAE3B;IAED,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,IAAI,YAAY,IAAI,YAAY,GAAG,SAAS,CAE3C;IAED,IAAI,cAAc,IAAI,OAAO,CAE5B;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI7B,UAAU,CACR,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,EACrC,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,GACf,WAAW;IAmBd,aAAa,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI;IASxC,UAAU,CAAC,KAAK,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI;IASjD,YAAY,IAAI,IAAI;IAOpB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI/B,YAAY,IAAI,MAAM,GAAG,SAAS;IAIlC,UAAU,IAAI,IAAI;IAIlB,YAAY,IAAI,IAAI;IAIpB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,EAAE;IAI/C,uBAAuB,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM;
|
|
1
|
+
{"version":3,"file":"chat-state.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/tui/chat-state.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,uBAAuB;IACtC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,aAAa,CAAC,CAAe;IACrC,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,WAAW,CAAW;gBAElB,OAAO,GAAE,uBAA4B;IAIjD,IAAI,OAAO,IAAI,WAAW,EAAE,CAE3B;IAED,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,IAAI,YAAY,IAAI,YAAY,GAAG,SAAS,CAE3C;IAED,IAAI,cAAc,IAAI,OAAO,CAE5B;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI7B,UAAU,CACR,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,EACrC,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,GACf,WAAW;IAmBd,aAAa,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI;IASxC,UAAU,CAAC,KAAK,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI;IASjD,YAAY,IAAI,IAAI;IAOpB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI/B,YAAY,IAAI,MAAM,GAAG,SAAS;IAIlC,UAAU,IAAI,IAAI;IAIlB,YAAY,IAAI,IAAI;IAIpB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,EAAE;IAI/C,uBAAuB,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM;IA6BrD,OAAO,CAAC,UAAU;IAIlB,uBAAuB,IAAI,MAAM;CAQlC;AAKD,wBAAgB,mBAAmB,IAAI,gBAAgB,CAKtD;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAEnE;AAED,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C"}
|
package/dist/tui/chat-tui.d.ts
CHANGED
|
@@ -13,8 +13,6 @@ export declare class ChatTUI {
|
|
|
13
13
|
private chatBox?;
|
|
14
14
|
private inputBar?;
|
|
15
15
|
private statusBar?;
|
|
16
|
-
private logsStatusBar?;
|
|
17
|
-
private tracesStatusBar?;
|
|
18
16
|
private logsBox?;
|
|
19
17
|
private traceViewer?;
|
|
20
18
|
private activeTab;
|
|
@@ -28,6 +26,7 @@ export declare class ChatTUI {
|
|
|
28
26
|
private abortHandler?;
|
|
29
27
|
private pendingLogs;
|
|
30
28
|
private running;
|
|
29
|
+
private mouseEnabled;
|
|
31
30
|
constructor(options?: ChatTUIOptions);
|
|
32
31
|
getStateManager(): ChatStateManager;
|
|
33
32
|
setTraceFile(path: string): void;
|
|
@@ -35,6 +34,7 @@ export declare class ChatTUI {
|
|
|
35
34
|
private setupKeyBindings;
|
|
36
35
|
stop(): void;
|
|
37
36
|
setRunning(running: boolean): void;
|
|
37
|
+
private toggleMouseMode;
|
|
38
38
|
setProcessing(processing: boolean): void;
|
|
39
39
|
setWaiting(waiting: boolean, prompt?: string): void;
|
|
40
40
|
setStatus(text: string): void;
|
|
@@ -63,6 +63,7 @@ export declare class ChatTUI {
|
|
|
63
63
|
private handleInputEscape;
|
|
64
64
|
private toggleTab;
|
|
65
65
|
private setActiveTab;
|
|
66
|
+
private _flushPendingLogs;
|
|
66
67
|
private updateLayout;
|
|
67
68
|
private updateStatusBar;
|
|
68
69
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-tui.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/tui/chat-tui.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"chat-tui.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/tui/chat-tui.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,11 +13,19 @@ export interface ChatBoxOptions {
|
|
|
13
13
|
export declare class ChatBox {
|
|
14
14
|
private box;
|
|
15
15
|
private parent;
|
|
16
|
+
private _progressTimer?;
|
|
17
|
+
private _elapsedSeconds;
|
|
18
|
+
private _baseContent;
|
|
16
19
|
constructor(options: ChatBoxOptions);
|
|
17
20
|
getElement(): Box;
|
|
18
21
|
focus(): void;
|
|
19
22
|
setContent(content: string): void;
|
|
20
23
|
appendMessage(message: ChatMessage): void;
|
|
24
|
+
showProgress(): void;
|
|
25
|
+
hideProgress(): void;
|
|
26
|
+
private _isProgressing;
|
|
27
|
+
private _progressLine;
|
|
28
|
+
private _renderProgress;
|
|
21
29
|
scrollToBottom(): void;
|
|
22
30
|
scrollUp(lines?: number): void;
|
|
23
31
|
scrollDown(lines?: number): void;
|
|
@@ -25,6 +33,7 @@ export declare class ChatBox {
|
|
|
25
33
|
show(): void;
|
|
26
34
|
hide(): void;
|
|
27
35
|
private formatMessage;
|
|
36
|
+
private escapeTags;
|
|
28
37
|
setHeight(height: number | string): void;
|
|
29
38
|
setTop(top: number | string): void;
|
|
30
39
|
render(screen: Screen): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-box.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/tui/components/chat-box.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,KAAK,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;AACrC,KAAK,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;AAEtC,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,GAAG,CAAC;CACb;
|
|
1
|
+
{"version":3,"file":"chat-box.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/tui/components/chat-box.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjD,KAAK,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;AACrC,KAAK,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;AAEtC,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,GAAG,CAAC;CACb;AAKD,qBAAa,OAAO;IAClB,OAAO,CAAC,GAAG,CAAM;IACjB,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,cAAc,CAAC,CAAiC;IACxD,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,YAAY,CAAM;gBAEd,OAAO,EAAE,cAAc;IA0BnC,UAAU,IAAI,GAAG;IAIjB,KAAK,IAAI,IAAI;IAIb,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAMjC,aAAa,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAUzC,YAAY,IAAI,IAAI;IAapB,YAAY,IAAI,IAAI;IAYpB,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,eAAe;IAMvB,cAAc,IAAI,IAAI;IAItB,QAAQ,CAAC,KAAK,SAAI,GAAG,IAAI;IAIzB,UAAU,CAAC,KAAK,SAAI,GAAG,IAAI;IAI3B,KAAK,IAAI,IAAI;IAIb,IAAI,IAAI,IAAI;IAIZ,IAAI,IAAI,IAAI;IAIZ,OAAO,CAAC,aAAa;IAgCrB,OAAO,CAAC,UAAU;IAKlB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAIxC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAIlC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;CAG7B"}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
* InputBar Component
|
|
3
3
|
*
|
|
4
4
|
* Persistent input bar at the bottom of the chat interface.
|
|
5
|
-
*
|
|
5
|
+
* Features a top border separator, multiline textarea with auto-grow,
|
|
6
|
+
* Enter to submit, and Shift+Enter for newline.
|
|
6
7
|
*/
|
|
7
8
|
import blessed from 'blessed';
|
|
8
9
|
type Screen = blessed.Widgets.Screen;
|
|
@@ -13,9 +14,12 @@ export interface InputBarOptions {
|
|
|
13
14
|
onEscape?: () => void;
|
|
14
15
|
onTab?: () => void;
|
|
15
16
|
onAbort?: () => void;
|
|
17
|
+
onResize?: (height: number) => void;
|
|
16
18
|
}
|
|
17
19
|
export declare class InputBar {
|
|
18
20
|
private container;
|
|
21
|
+
private topBorder;
|
|
22
|
+
private bottomBorder;
|
|
19
23
|
private input;
|
|
20
24
|
private placeholder;
|
|
21
25
|
private parent;
|
|
@@ -23,14 +27,26 @@ export declare class InputBar {
|
|
|
23
27
|
private _placeholderText;
|
|
24
28
|
private _hasFocus;
|
|
25
29
|
private _lastActivation;
|
|
30
|
+
private _currentHeight;
|
|
26
31
|
private onSubmit?;
|
|
27
32
|
private onEscape?;
|
|
28
33
|
private onTab?;
|
|
29
34
|
private onAbort?;
|
|
35
|
+
private onResize?;
|
|
30
36
|
constructor(options: InputBarOptions);
|
|
37
|
+
private _updateBorders;
|
|
38
|
+
private _overrideInputListener;
|
|
31
39
|
private setupEventHandlers;
|
|
40
|
+
private _autoGrow;
|
|
41
|
+
private _resetHeight;
|
|
32
42
|
private _activateInput;
|
|
43
|
+
/**
|
|
44
|
+
* Re-acquire focus if the input was previously active.
|
|
45
|
+
* Call this when the terminal window regains focus.
|
|
46
|
+
*/
|
|
47
|
+
refocus(): void;
|
|
33
48
|
getElement(): Box;
|
|
49
|
+
getHeight(): number;
|
|
34
50
|
focus(): void;
|
|
35
51
|
blur(): void;
|
|
36
52
|
clear(): void;
|
|
@@ -39,6 +55,7 @@ export declare class InputBar {
|
|
|
39
55
|
setPlaceholder(text: string): void;
|
|
40
56
|
disable(): void;
|
|
41
57
|
enable(): void;
|
|
58
|
+
hasFocus(): boolean;
|
|
42
59
|
isDisabled(): boolean;
|
|
43
60
|
show(): void;
|
|
44
61
|
hide(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input-bar.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/tui/components/input-bar.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"input-bar.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/tui/components/input-bar.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,KAAK,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;AACrC,KAAK,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;AAMtC,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,GAAG,CAAC;IACZ,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,IAAI,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC;AAED,qBAAa,QAAQ;IACnB,OAAO,CAAC,SAAS,CAAM;IACvB,OAAO,CAAC,SAAS,CAAM;IACvB,OAAO,CAAC,YAAY,CAAM;IAC1B,OAAO,CAAC,KAAK,CAAW;IACxB,OAAO,CAAC,WAAW,CAAM;IACzB,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,gBAAgB,CAAuB;IAC/C,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,cAAc,CAAc;IACpC,OAAO,CAAC,QAAQ,CAAC,CAA0B;IAC3C,OAAO,CAAC,QAAQ,CAAC,CAAa;IAC9B,OAAO,CAAC,KAAK,CAAC,CAAa;IAC3B,OAAO,CAAC,OAAO,CAAC,CAAa;IAC7B,OAAO,CAAC,QAAQ,CAAC,CAA2B;gBAEhC,OAAO,EAAE,eAAe;IA2FpC,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,sBAAsB;IAmB9B,OAAO,CAAC,kBAAkB;IAiF1B,OAAO,CAAC,SAAS;IAejB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,cAAc;IA0BtB;;;OAGG;IACH,OAAO,IAAI,IAAI;IAQf,UAAU,IAAI,GAAG;IAIjB,SAAS,IAAI,MAAM;IAInB,KAAK,IAAI,IAAI;IAKb,IAAI,IAAI,IAAI;IASZ,KAAK,IAAI,IAAI;IAMb,QAAQ,IAAI,MAAM;IAIlB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAS7B,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAKlC,OAAO,IAAI,IAAI;IAOf,MAAM,IAAI,IAAI;IAOd,QAAQ,IAAI,OAAO;IAInB,UAAU,IAAI,OAAO;IAIrB,IAAI,IAAI,IAAI;IAIZ,IAAI,IAAI,IAAI;IAIZ,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAIxC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI5B,OAAO,IAAI,IAAI;CAKhB"}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* StatusBar Component
|
|
3
3
|
*
|
|
4
|
-
* Status line at the very bottom showing mode
|
|
4
|
+
* Status line at the very bottom showing mode indicator, current view name,
|
|
5
|
+
* and a hint for tab cycling. No background color — minimal design.
|
|
5
6
|
*/
|
|
6
7
|
import blessed from 'blessed';
|
|
7
8
|
type Screen = blessed.Widgets.Screen;
|
|
8
9
|
type Box = blessed.Widgets.BoxElement;
|
|
9
10
|
export type StatusMode = 'ready' | 'processing' | 'waiting' | 'error';
|
|
10
11
|
export interface StatusBarOptions {
|
|
11
|
-
parent: Box;
|
|
12
|
+
parent: Box | Screen;
|
|
12
13
|
}
|
|
13
14
|
export declare class StatusBar {
|
|
14
15
|
private bar;
|
|
@@ -22,9 +23,11 @@ export declare class StatusBar {
|
|
|
22
23
|
setStatus(text: string): void;
|
|
23
24
|
setActiveTab(tab: 'chat' | 'logs' | 'traces'): void;
|
|
24
25
|
private render;
|
|
26
|
+
private getViewLabel;
|
|
25
27
|
private getModeIndicatorStyled;
|
|
26
28
|
show(): void;
|
|
27
29
|
hide(): void;
|
|
30
|
+
destroy(): void;
|
|
28
31
|
update(screen: Screen): void;
|
|
29
32
|
}
|
|
30
33
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status-bar.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/tui/components/status-bar.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"status-bar.d.ts","sourceRoot":"","sources":["file:///home/runner/work/visor/visor/src/tui/components/status-bar.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,KAAK,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC;AACrC,KAAK,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC;AAEtC,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,YAAY,GAAG,SAAS,GAAG,OAAO,CAAC;AAEtE,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,GAAG,GAAG,MAAM,CAAC;CACtB;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,GAAG,CAAM;IACjB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,WAAW,CAAM;IACzB,OAAO,CAAC,UAAU,CAAsC;gBAE5C,OAAO,EAAE,gBAAgB;IAmBrC,UAAU,IAAI,GAAG;IAIjB,OAAO,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;IAK/B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK7B,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,IAAI;IAKnD,OAAO,CAAC,MAAM;IAYd,OAAO,CAAC,YAAY;IAapB,OAAO,CAAC,sBAAsB;IAe9B,IAAI,IAAI,IAAI;IAIZ,IAAI,IAAI,IAAI;IAIZ,OAAO,IAAI,IAAI;IAIf,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;CAI7B"}
|