@agenshield/daemon 0.1.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/LICENSE +201 -0
- package/README.md +118 -0
- package/acl.d.ts +44 -0
- package/acl.d.ts.map +1 -0
- package/auth/index.d.ts +9 -0
- package/auth/index.d.ts.map +1 -0
- package/auth/middleware.d.ts +49 -0
- package/auth/middleware.d.ts.map +1 -0
- package/auth/passcode.d.ts +70 -0
- package/auth/passcode.d.ts.map +1 -0
- package/auth/session.d.ts +71 -0
- package/auth/session.d.ts.map +1 -0
- package/command-sync.d.ts +41 -0
- package/command-sync.d.ts.map +1 -0
- package/config/defaults.d.ts +10 -0
- package/config/defaults.d.ts.map +1 -0
- package/config/index.d.ts +7 -0
- package/config/index.d.ts.map +1 -0
- package/config/loader.d.ts +25 -0
- package/config/loader.d.ts.map +1 -0
- package/config/paths.d.ts +20 -0
- package/config/paths.d.ts.map +1 -0
- package/data/integration-catalog.d.ts +32 -0
- package/data/integration-catalog.d.ts.map +1 -0
- package/events/emitter.d.ts +126 -0
- package/events/emitter.d.ts.map +1 -0
- package/events/index.d.ts +5 -0
- package/events/index.d.ts.map +1 -0
- package/index.d.ts +19 -0
- package/index.d.ts.map +1 -0
- package/index.js +7591 -0
- package/main.d.ts +6 -0
- package/main.d.ts.map +1 -0
- package/main.js +7539 -0
- package/mcp/client.d.ts +73 -0
- package/mcp/client.d.ts.map +1 -0
- package/mcp/index.d.ts +7 -0
- package/mcp/index.d.ts.map +1 -0
- package/mcp/oauth-provider.d.ts +27 -0
- package/mcp/oauth-provider.d.ts.map +1 -0
- package/mcp/state.d.ts +31 -0
- package/mcp/state.d.ts.map +1 -0
- package/package.json +43 -0
- package/routes/agenco.d.ts +13 -0
- package/routes/agenco.d.ts.map +1 -0
- package/routes/auth.d.ts +11 -0
- package/routes/auth.d.ts.map +1 -0
- package/routes/config.d.ts +6 -0
- package/routes/config.d.ts.map +1 -0
- package/routes/discovery.d.ts +8 -0
- package/routes/discovery.d.ts.map +1 -0
- package/routes/exec.d.ts +6 -0
- package/routes/exec.d.ts.map +1 -0
- package/routes/fs.d.ts +6 -0
- package/routes/fs.d.ts.map +1 -0
- package/routes/health.d.ts +6 -0
- package/routes/health.d.ts.map +1 -0
- package/routes/index.d.ts +9 -0
- package/routes/index.d.ts.map +1 -0
- package/routes/marketplace.d.ts +9 -0
- package/routes/marketplace.d.ts.map +1 -0
- package/routes/rpc.d.ts +9 -0
- package/routes/rpc.d.ts.map +1 -0
- package/routes/secrets.d.ts +6 -0
- package/routes/secrets.d.ts.map +1 -0
- package/routes/security.d.ts +6 -0
- package/routes/security.d.ts.map +1 -0
- package/routes/skills.d.ts +11 -0
- package/routes/skills.d.ts.map +1 -0
- package/routes/sse.d.ts +9 -0
- package/routes/sse.d.ts.map +1 -0
- package/routes/status.d.ts +6 -0
- package/routes/status.d.ts.map +1 -0
- package/routes/wrappers.d.ts +12 -0
- package/routes/wrappers.d.ts.map +1 -0
- package/server.d.ts +18 -0
- package/server.d.ts.map +1 -0
- package/services/activity-log.d.ts +21 -0
- package/services/activity-log.d.ts.map +1 -0
- package/services/broker-bridge.d.ts +43 -0
- package/services/broker-bridge.d.ts.map +1 -0
- package/services/integration-skills.d.ts +26 -0
- package/services/integration-skills.d.ts.map +1 -0
- package/services/marketplace.d.ts +79 -0
- package/services/marketplace.d.ts.map +1 -0
- package/services/openclaw-config.d.ts +15 -0
- package/services/openclaw-config.d.ts.map +1 -0
- package/services/skill-analyzer.d.ts +21 -0
- package/services/skill-analyzer.d.ts.map +1 -0
- package/services/skill-lifecycle.d.ts +23 -0
- package/services/skill-lifecycle.d.ts.map +1 -0
- package/state/index.d.ts +76 -0
- package/state/index.d.ts.map +1 -0
- package/static.d.ts +9 -0
- package/static.d.ts.map +1 -0
- package/ui-assets/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff +0 -0
- package/ui-assets/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2 +0 -0
- package/ui-assets/assets/index-CC_zbvUx.css +1 -0
- package/ui-assets/assets/index-Chp3YFDr.js +947 -0
- package/ui-assets/assets/manrope-latin-400-normal-8tf8FM3T.woff +0 -0
- package/ui-assets/assets/manrope-latin-400-normal-PaqtzbVb.woff2 +0 -0
- package/ui-assets/assets/manrope-latin-500-normal-BYYD-dBL.woff2 +0 -0
- package/ui-assets/assets/manrope-latin-500-normal-DMZssgOp.woff +0 -0
- package/ui-assets/assets/manrope-latin-600-normal-4f0koTD-.woff2 +0 -0
- package/ui-assets/assets/manrope-latin-600-normal-BqgrALkZ.woff +0 -0
- package/ui-assets/assets/manrope-latin-700-normal-BZp_XxE4.woff2 +0 -0
- package/ui-assets/assets/manrope-latin-700-normal-DGRFkw-m.woff +0 -0
- package/ui-assets/assets/manrope-latin-800-normal-BfWYOv1c.woff2 +0 -0
- package/ui-assets/assets/manrope-latin-800-normal-uHUdIJgA.woff +0 -0
- package/ui-assets/favicon.svg +1 -0
- package/ui-assets/index.html +14 -0
- package/ui-assets/package.json +34 -0
- package/utils/logged-fetch.d.ts +13 -0
- package/utils/logged-fetch.d.ts.map +1 -0
- package/vault/crypto.d.ts +28 -0
- package/vault/crypto.d.ts.map +1 -0
- package/vault/index.d.ts +64 -0
- package/vault/index.d.ts.map +1 -0
- package/watchers/index.d.ts +6 -0
- package/watchers/index.d.ts.map +1 -0
- package/watchers/security.d.ts +20 -0
- package/watchers/security.d.ts.map +1 -0
- package/watchers/skills.d.ts +85 -0
- package/watchers/skills.d.ts.map +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marketplace.d.ts","sourceRoot":"","sources":["../../src/services/marketplace.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EACV,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EAOrB,MAAM,iBAAiB,CAAC;AA0MzB;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAkCzF;AAED,uDAAuD;AACvD,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,oBAAoB,CAAC,UAAU,CAAC,CAAC;CAC7C;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,IAAI,CAAC,mBAAmB,EAAE,cAAc,CAAC,EAC/C,KAAK,EAAE,oBAAoB,EAAE,GAC5B,IAAI,CAkBN;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,oBAAoB,CAAC,UAAU,CAAC,GAAG,IAAI,CAUvG;AAED,0CAA0C;AAC1C,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,mBAAmB,EAAE,CA4B5D;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,EAAE,CAqB5E;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI,CAU/E;AAMD;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAclF;AAMD;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAqGjF;AA4FD;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,oBAAoB,EAAE,EAC7B,SAAS,CAAC,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,oBAAoB,CAAC,CAgB/B;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,MAAM,EACZ,SAAS,CAAC,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,oBAAoB,CAAC,CAc/B;AAMD;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAgDtC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OpenClaw Config Service
|
|
3
|
+
*
|
|
4
|
+
* Helpers to manage per-skill entries in $AGENT_HOME/.openclaw/openclaw.json.
|
|
5
|
+
* Skills are configured under skills.entries.<skillKey> with { enabled: boolean }.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Add a skill entry to openclaw.json with enabled: true.
|
|
9
|
+
*/
|
|
10
|
+
export declare function addSkillEntry(slug: string, env?: Record<string, string>): void;
|
|
11
|
+
/**
|
|
12
|
+
* Remove a skill entry from openclaw.json.
|
|
13
|
+
*/
|
|
14
|
+
export declare function removeSkillEntry(slug: string): void;
|
|
15
|
+
//# sourceMappingURL=openclaw-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openclaw-config.d.ts","sourceRoot":"","sources":["../../src/services/openclaw-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAoCH;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAiB9E;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAQnD"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Skill Analyzer Service
|
|
3
|
+
*
|
|
4
|
+
* MVP: Extracts commands from skill metadata (frontmatter) and content (regex).
|
|
5
|
+
* Cloud API integration can be added later.
|
|
6
|
+
*/
|
|
7
|
+
import type { SkillAnalysis } from '@agenshield/ipc';
|
|
8
|
+
/**
|
|
9
|
+
* Analyze a skill and return analysis results.
|
|
10
|
+
* MVP: metadata extraction + regex detection.
|
|
11
|
+
*/
|
|
12
|
+
export declare function analyzeSkill(skillName: string, content: string, metadata?: Record<string, unknown>): SkillAnalysis;
|
|
13
|
+
/**
|
|
14
|
+
* Get cached analysis for a skill
|
|
15
|
+
*/
|
|
16
|
+
export declare function getCachedAnalysis(skillName: string): SkillAnalysis | undefined;
|
|
17
|
+
/**
|
|
18
|
+
* Clear cached analysis for a skill
|
|
19
|
+
*/
|
|
20
|
+
export declare function clearCachedAnalysis(skillName: string): void;
|
|
21
|
+
//# sourceMappingURL=skill-analyzer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-analyzer.d.ts","sourceRoot":"","sources":["../../src/services/skill-analyzer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,aAAa,EAAoB,MAAM,iBAAiB,CAAC;AAgJvE;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,aAAa,CAqEf;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAG9E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAI3D"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Skill Lifecycle Utilities
|
|
3
|
+
*
|
|
4
|
+
* Shared helpers for creating/removing skill wrappers and policies.
|
|
5
|
+
* Used by both skills routes and marketplace routes.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Create a bash wrapper in $AGENT_HOME/bin/<skill-name> that invokes the skill through policy.
|
|
9
|
+
*/
|
|
10
|
+
export declare function createSkillWrapper(name: string, binDir: string): void;
|
|
11
|
+
/**
|
|
12
|
+
* Remove the skill wrapper from $AGENT_HOME/bin/<skill-name>.
|
|
13
|
+
*/
|
|
14
|
+
export declare function removeSkillWrapper(name: string, binDir: string): void;
|
|
15
|
+
/**
|
|
16
|
+
* Add a PolicyConfig entry for the skill to the daemon config.
|
|
17
|
+
*/
|
|
18
|
+
export declare function addSkillPolicy(name: string): void;
|
|
19
|
+
/**
|
|
20
|
+
* Remove the PolicyConfig entry for a skill from the daemon config.
|
|
21
|
+
*/
|
|
22
|
+
export declare function removeSkillPolicy(name: string): void;
|
|
23
|
+
//# sourceMappingURL=skill-lifecycle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-lifecycle.d.ts","sourceRoot":"","sources":["../../src/services/skill-lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAsBrE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CASrE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAoBjD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAQpD"}
|
package/state/index.d.ts
ADDED
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* System state manager
|
|
3
|
+
*
|
|
4
|
+
* Manages the state.json file for tracking AgenShield system state.
|
|
5
|
+
*/
|
|
6
|
+
import type { SystemState, AgenCoState, DaemonState, UserState, GroupState, InstallationState, PasscodeProtectionState } from '@agenshield/ipc';
|
|
7
|
+
/**
|
|
8
|
+
* Get the state file path
|
|
9
|
+
*/
|
|
10
|
+
export declare function getStatePath(): string;
|
|
11
|
+
/**
|
|
12
|
+
* Get default system state
|
|
13
|
+
*/
|
|
14
|
+
export declare function getDefaultState(): SystemState;
|
|
15
|
+
/**
|
|
16
|
+
* Load system state from disk
|
|
17
|
+
* Returns default state if file doesn't exist or is invalid
|
|
18
|
+
*/
|
|
19
|
+
export declare function loadState(): SystemState;
|
|
20
|
+
/**
|
|
21
|
+
* Save system state to disk
|
|
22
|
+
*/
|
|
23
|
+
export declare function saveState(state: SystemState): void;
|
|
24
|
+
/**
|
|
25
|
+
* Update system state with partial updates
|
|
26
|
+
*/
|
|
27
|
+
export declare function updateState(updates: Partial<SystemState>): SystemState;
|
|
28
|
+
/**
|
|
29
|
+
* Update daemon state
|
|
30
|
+
*/
|
|
31
|
+
export declare function updateDaemonState(updates: Partial<DaemonState>): SystemState;
|
|
32
|
+
/**
|
|
33
|
+
* Update AgenCo state
|
|
34
|
+
*/
|
|
35
|
+
export declare function updateAgenCoState(updates: Partial<AgenCoState>): SystemState;
|
|
36
|
+
/**
|
|
37
|
+
* Update installation state
|
|
38
|
+
*/
|
|
39
|
+
export declare function updateInstallationState(updates: Partial<InstallationState>): SystemState;
|
|
40
|
+
/**
|
|
41
|
+
* Update passcode protection state
|
|
42
|
+
*/
|
|
43
|
+
export declare function updatePasscodeProtectionState(updates: Partial<PasscodeProtectionState>): SystemState;
|
|
44
|
+
/**
|
|
45
|
+
* Get passcode protection state
|
|
46
|
+
*/
|
|
47
|
+
export declare function getPasscodeProtectionState(): PasscodeProtectionState | undefined;
|
|
48
|
+
/**
|
|
49
|
+
* Add a user to state
|
|
50
|
+
*/
|
|
51
|
+
export declare function addUserState(user: UserState): SystemState;
|
|
52
|
+
/**
|
|
53
|
+
* Remove a user from state
|
|
54
|
+
*/
|
|
55
|
+
export declare function removeUserState(username: string): SystemState;
|
|
56
|
+
/**
|
|
57
|
+
* Add a group to state
|
|
58
|
+
*/
|
|
59
|
+
export declare function addGroupState(group: GroupState): SystemState;
|
|
60
|
+
/**
|
|
61
|
+
* Remove a group from state
|
|
62
|
+
*/
|
|
63
|
+
export declare function removeGroupState(name: string): SystemState;
|
|
64
|
+
/**
|
|
65
|
+
* Add a connected integration to AgenCo state
|
|
66
|
+
*/
|
|
67
|
+
export declare function addConnectedIntegration(integrationId: string): SystemState;
|
|
68
|
+
/**
|
|
69
|
+
* Remove a connected integration from AgenCo state
|
|
70
|
+
*/
|
|
71
|
+
export declare function removeConnectedIntegration(integrationId: string): SystemState;
|
|
72
|
+
/**
|
|
73
|
+
* Initialize state file if it doesn't exist
|
|
74
|
+
*/
|
|
75
|
+
export declare function initializeState(): SystemState;
|
|
76
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/state/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAIhJ;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,WAAW,CAqB7C;AAED;;;GAGG;AACH,wBAAgB,SAAS,IAAI,WAAW,CAuBvC;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAUlD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAyBtE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAK5E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,WAAW,CAK5E;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,WAAW,CAKxF;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,OAAO,CAAC,uBAAuB,CAAC,GAAG,WAAW,CAKpG;AAED;;GAEG;AACH,wBAAgB,0BAA0B,IAAI,uBAAuB,GAAG,SAAS,CAGhF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,SAAS,GAAG,WAAW,CAazD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,CAK7D;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,WAAW,CAa5D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAK1D;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,aAAa,EAAE,MAAM,GAAG,WAAW,CAS1E;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,aAAa,EAAE,MAAM,GAAG,WAAW,CAO7E;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,WAAW,CAU7C"}
|
package/static.d.ts
ADDED
package/static.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"static.d.ts","sourceRoot":"","sources":["../src/static.ts"],"names":[],"mappings":"AAAA;;GAEG;AASH;;;GAGG;AACH,wBAAgB,eAAe,IAAI,MAAM,GAAG,IAAI,CAc/C"}
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/manrope-latin-400-normal-PaqtzbVb.woff2) format("woff2"),url(/assets/manrope-latin-400-normal-8tf8FM3T.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/manrope-latin-500-normal-BYYD-dBL.woff2) format("woff2"),url(/assets/manrope-latin-500-normal-DMZssgOp.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/manrope-latin-600-normal-4f0koTD-.woff2) format("woff2"),url(/assets/manrope-latin-600-normal-BqgrALkZ.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/manrope-latin-700-normal-BZp_XxE4.woff2) format("woff2"),url(/assets/manrope-latin-700-normal-DGRFkw-m.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/manrope-latin-800-normal-BfWYOv1c.woff2) format("woff2"),url(/assets/manrope-latin-800-normal-uHUdIJgA.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff")}.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}
|