cerevox 0.4.12 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/dist/cli/cerevox-run.d.ts.map +1 -1
  2. package/dist/cli/cerevox-run.js +5 -9
  3. package/dist/cli/cerevox-run.js.map +1 -1
  4. package/dist/core/ai.d.ts +0 -1
  5. package/dist/core/ai.d.ts.map +1 -1
  6. package/dist/core/ai.js +14 -18
  7. package/dist/core/ai.js.map +1 -1
  8. package/dist/core/base.d.ts +1 -3
  9. package/dist/core/base.d.ts.map +1 -1
  10. package/dist/core/base.js +1 -2
  11. package/dist/core/base.js.map +1 -1
  12. package/dist/core/browser.d.ts +1 -6
  13. package/dist/core/browser.d.ts.map +1 -1
  14. package/dist/core/browser.js +34 -50
  15. package/dist/core/browser.js.map +1 -1
  16. package/dist/core/cerevox.d.ts +3 -11
  17. package/dist/core/cerevox.d.ts.map +1 -1
  18. package/dist/core/cerevox.js +10 -155
  19. package/dist/core/cerevox.js.map +1 -1
  20. package/dist/core/code-runner.d.ts +1 -1
  21. package/dist/core/code-runner.d.ts.map +1 -1
  22. package/dist/core/code-runner.js +2 -2
  23. package/dist/core/code-runner.js.map +1 -1
  24. package/dist/core/file-system.d.ts +12 -33
  25. package/dist/core/file-system.d.ts.map +1 -1
  26. package/dist/core/file-system.js +111 -93
  27. package/dist/core/file-system.js.map +1 -1
  28. package/dist/core/sandbox.d.ts +19 -0
  29. package/dist/core/sandbox.d.ts.map +1 -0
  30. package/dist/core/sandbox.js +114 -0
  31. package/dist/core/sandbox.js.map +1 -0
  32. package/dist/core/session.d.ts +5 -8
  33. package/dist/core/session.d.ts.map +1 -1
  34. package/dist/core/session.js +29 -64
  35. package/dist/core/session.js.map +1 -1
  36. package/dist/core/terminal.d.ts +6 -5
  37. package/dist/core/terminal.d.ts.map +1 -1
  38. package/dist/core/terminal.js +175 -58
  39. package/dist/core/terminal.js.map +1 -1
  40. package/dist/core/types.d.ts +23 -0
  41. package/dist/core/types.d.ts.map +1 -0
  42. package/dist/core/types.js +3 -0
  43. package/dist/core/types.js.map +1 -0
  44. package/dist/mcp/servers/browser-use.d.ts.map +1 -1
  45. package/dist/mcp/servers/browser-use.js +3 -7
  46. package/dist/mcp/servers/browser-use.js.map +1 -1
  47. package/dist/mcp/servers/zerocut.d.ts.map +1 -1
  48. package/dist/mcp/servers/zerocut.js +8 -71
  49. package/dist/mcp/servers/zerocut.js.map +1 -1
  50. package/package.json +6 -3
  51. package/dist/utils/auth.d.ts +0 -4
  52. package/dist/utils/auth.d.ts.map +0 -1
  53. package/dist/utils/auth.js +0 -14
  54. package/dist/utils/auth.js.map +0 -1
@@ -1,22 +1,12 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.Cerevox = void 0;
7
- const e2b_1 = __importDefault(require("e2b"));
8
4
  const session_1 = require("./session");
9
- const node_fs_1 = require("node:fs");
10
- const node_path_1 = __importDefault(require("node:path"));
11
- const promises_1 = require("node:timers/promises");
12
- const session_2 = require("./session");
13
5
  require("dotenv/config");
14
- const auth_1 = require("../utils/auth");
15
6
  const logger_1 = require("../utils/logger");
7
+ const sandbox_1 = require("./sandbox");
16
8
  class Cerevox {
17
9
  constructor(options = {}) {
18
- this.token = '';
19
- this.domain = 'sandbox.novita.ai';
20
10
  this.debug = false;
21
11
  this.apiKey = options.apiKey || process.env.CEREVOX_API_KEY || '';
22
12
  this.debug = !!options.debug;
@@ -24,153 +14,20 @@ class Cerevox {
24
14
  this.logLevel = options.logLevel || (this.debug ? 'debug' : 'error');
25
15
  this.logger = (0, logger_1.createClassLogger)('Cerevox', {}, this.logLevel);
26
16
  }
27
- async getToken() {
28
- if (this.token) {
29
- return this.token;
30
- }
31
- const res = await (0, auth_1.verify)({ key: this.apiKey });
32
- if (!res.success) {
33
- throw new Error('Invalid Cerevox key');
34
- }
35
- this.token = res.data.token;
36
- return this.token;
37
- }
38
- async createSession(session, headless = true) {
39
- let remoteScript = '/home/user/http-proxy.js';
40
- const localPath = node_path_1.default.resolve(__dirname, `../../sandbox/http-proxy.js`);
41
- const logger = session.getLogger();
42
- if ((0, node_fs_1.existsSync)(localPath)) {
43
- remoteScript = '/home/user/http-proxy.local.js';
44
- logger.debug(`🗂️ Load local file: ${localPath}`);
45
- await session.files.upload(localPath, remoteScript);
46
- }
47
- const command = headless
48
- ? `node ${remoteScript}`
49
- : `xvfb-run -a node ${remoteScript}`;
50
- session.process = await session.terminal.run(command);
51
- if (this.debug) {
52
- const serverLogger = logger.child({ class: 'Server' });
53
- session.process.stdout.on('data', msg => {
54
- serverLogger.debug(msg.toString('utf-8').trim());
55
- });
56
- session.process.stderr.on('data', msg => {
57
- serverLogger.warn(msg.toString('utf-8').trim());
58
- });
59
- }
60
- }
61
- async waitForHttpServerReady(session) {
62
- const host = session.getHost();
63
- const interval = 50;
64
- const maxTries = 1000;
65
- let tries = 0;
66
- while (tries++ < maxTries) {
67
- await (0, promises_1.setTimeout)(interval);
68
- try {
69
- const response = await fetch(`https://${host}/health`);
70
- if (response.ok) {
71
- return;
72
- }
73
- }
74
- catch (error) {
75
- /* empty */
76
- }
77
- }
78
- }
79
- async waitForBrowserReady(session) {
80
- const host = session.getHost();
81
- const interval = 50;
82
- const maxTries = 1000;
83
- let tries = 0;
84
- const logger = session.getLogger();
85
- while (tries++ < maxTries) {
86
- try {
87
- const response = await fetch(`https://${host}/json/version`);
88
- if (response.ok) {
89
- const responseText = await response.text();
90
- if (responseText.includes('Browser')) {
91
- const metaData = JSON.parse(responseText);
92
- metaData.wsUrl = metaData.webSocketDebuggerUrl;
93
- metaData.httpUrl = `https://${host}`;
94
- delete metaData.webSocketDebuggerUrl;
95
- logger.debug('CDP server is ready', metaData);
96
- session._setConnectionMetaData(metaData);
97
- return metaData;
98
- }
99
- }
100
- }
101
- catch (error) {
102
- logger.debug(`CDP check failed (attempt ${tries}):`, error);
103
- }
104
- await (0, promises_1.setTimeout)(interval);
105
- }
106
- throw new Error('CDP server failed to become ready within timeout');
17
+ get workspace() {
18
+ return this.apiKey.slice(3, 19);
107
19
  }
108
20
  getLogger() {
109
21
  return this.logger;
110
22
  }
111
- get workspace() {
112
- return this.apiKey.slice(3, 19);
113
- }
114
- async connect(sandboxId) {
115
- if (session_2.sessions[sandboxId]) {
116
- return session_2.sessions[sandboxId];
117
- }
118
- const token = await this.getToken();
119
- const sandbox = await e2b_1.default.connect(sandboxId, {
120
- apiKey: token,
121
- });
122
- const session = new session_1.Session(sandbox, {
123
- envs: {
124
- SANDBOX_ID: sandbox.sandboxId,
125
- },
126
- logLevel: this.logLevel,
127
- workspace: this.workspace,
128
- });
129
- await this.waitForHttpServerReady(session);
130
- this.waitForBrowserReady(session); // 不需要 await
131
- return session;
23
+ async createSandbox(timeout = 60, metadata) {
24
+ const logger = this.logger;
25
+ const sandbox = await (0, sandbox_1.createSandbox)(this.apiKey, logger, timeout, metadata);
26
+ return sandbox;
132
27
  }
133
28
  async launch(config = {}) {
134
- const { browser, ...options } = config;
135
- const browserConfig = {
136
- type: 'chromium',
137
- args: [],
138
- headless: true,
139
- liveview: false,
140
- adblock: false,
141
- webgl: false,
142
- ...browser,
143
- };
144
- const launchConfig = {
145
- timeoutMS: config.timeoutMS || 300000,
146
- keepAliveMS: config.keepAliveMS || 5000,
147
- ...options,
148
- };
149
- const token = await this.getToken();
150
- const sandbox = await e2b_1.default.create(`cerevox-${browserConfig.type}`, {
151
- timeoutMs: launchConfig.timeoutMS,
152
- apiKey: token,
153
- domain: this.domain,
154
- metadata: launchConfig.metadata,
155
- envs: {
156
- NODE_ENV: this.debug ? 'development' : 'production',
157
- PLAYWRIGHT_BROWSERS_PATH: '0',
158
- CDP_PORT: '9222',
159
- HEADLESS: browserConfig.headless.toString(),
160
- ADBLOCK: browserConfig.adblock.toString(),
161
- SANDBOX_TIMEOUT: launchConfig.timeoutMS.toString(),
162
- ENABLE_LIVEVIEW: browserConfig.liveview.toString(),
163
- KEEP_ALIVE_MS: launchConfig.keepAliveMS.toString(),
164
- APIKEY: token,
165
- WORKSPACE: this.workspace,
166
- SANDBOX_DOMAIN: this.domain,
167
- BROWSER_TYPE: browserConfig.type,
168
- ENABLE_WEBGL: browserConfig.webgl.toString(),
169
- BROWSER_ARGS: JSON.stringify(browserConfig.args),
170
- CEREVOX_DOMAIN: 'cerevox.io',
171
- PW_TEST_SCREENSHOT_NO_FONTS_READY: '1', // 避免 page.screenshot 崩溃
172
- },
173
- });
29
+ const { timeout, metadata } = config;
30
+ const sandbox = await this.createSandbox(timeout, metadata);
174
31
  const session = new session_1.Session(sandbox, {
175
32
  envs: {
176
33
  SANDBOX_ID: sandbox.sandboxId,
@@ -178,9 +35,7 @@ class Cerevox {
178
35
  logLevel: this.logLevel,
179
36
  workspace: this.workspace,
180
37
  });
181
- await this.createSession(session, browserConfig.headless);
182
- await this.waitForHttpServerReady(session);
183
- this.waitForBrowserReady(session); // 不需要 await
38
+ await session.connect();
184
39
  return session;
185
40
  }
186
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cerevox.js","sourceRoot":"","sources":["../../src/core/cerevox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cerevox.js","sourceRoot":"","sources":["../../src/core/cerevox.ts"],"names":[],"mappings":";;;AAAA,uCAAoC;AACpC,yBAAuB;AACvB,4CAAoD;AAEpD,uCAA0C;AAgB1C,MAAa,OAAO;IAMlB,YACE,UAII,EAAE;QATA,UAAK,GAAY,KAAK,CAAC;QAW7B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC;QAClE,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;QAC7B,0CAA0C;QAC1C,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACrE,IAAI,CAAC,MAAM,GAAG,IAAA,0BAAiB,EAAC,SAAS,EAAE,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChE,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,UAAkB,EAAE,EAAE,QAAiC;QACzE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,OAAO,GAAG,MAAM,IAAA,uBAAa,EAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC5E,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,SAAwB,EAAE;QACrC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;QAErC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAE5D,MAAM,OAAO,GAAG,IAAI,iBAAO,CAAC,OAAO,EAAE;YACnC,IAAI,EAAE;gBACJ,UAAU,EAAE,OAAO,CAAC,SAAU;aAC/B;YACD,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC,CAAC;QACH,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QACxB,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AAjDD,0BAiDC"}
@@ -1,4 +1,4 @@
1
- import { CommandResult } from 'e2b';
1
+ import { CommandResult } from './types';
2
2
  import { BaseClass } from './base';
3
3
  import { Session } from './session';
4
4
  export declare class CodeRunner extends BaseClass {
@@ -1 +1 @@
1
- {"version":3,"file":"code-runner.d.ts","sourceRoot":"","sources":["../../src/core/code-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,SAAS,EAAU,MAAM,QAAQ,CAAC;AAI3C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,qBACa,UAAW,SAAQ,SAAS;IACvC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,OAAO,CAAU;IAEzB;;;;;OAKG;gBACS,OAAO,EAAE,OAAO;YASd,UAAU;IAuGlB,GAAG,CACP,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAO,GACrE,OAAO,CAAC,aAAa,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAmChD"}
1
+ {"version":3,"file":"code-runner.d.ts","sourceRoot":"","sources":["../../src/core/code-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,SAAS,EAAU,MAAM,QAAQ,CAAC;AAI3C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,qBACa,UAAW,SAAQ,SAAS;IACvC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,OAAO,CAAU;IAEzB;;;;;OAKG;gBACS,OAAO,EAAE,OAAO;YAQd,UAAU;IAuGlB,GAAG,CACP,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAO,GACrE,OAAO,CAAC,aAAa,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAmChD"}
@@ -27,12 +27,12 @@ let CodeRunner = class CodeRunner extends base_1.BaseClass {
27
27
  * @param logLevel - 日志级别
28
28
  */
29
29
  constructor(session) {
30
- super(session.getSandbox(), session.getLogger().level);
30
+ super(session.getLogger().level);
31
31
  this.terminal = session.terminal.create();
32
32
  this.session = session;
33
33
  }
34
34
  async injectCode(code, type) {
35
- const wsUrl = await this.session.browser.getEndpoint();
35
+ const wsUrl = await this.session.browser.getCDPEndpoint();
36
36
  if (type === 'py') {
37
37
  // 替换 python 调用
38
38
  code = code.replace(/\.launch\s*\(/gm, `.connect_over_cdp('${wsUrl}',`);
@@ -1 +1 @@
1
- {"version":3,"file":"code-runner.js","sourceRoot":"","sources":["../../src/core/code-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"code-runner.js","sourceRoot":"","sources":["../../src/core/code-runner.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import Sandbox from 'e2b';
2
1
  import { BaseClass } from './base';
2
+ import { Session } from './session';
3
3
  /**
4
4
  * FileSystem 类 - 提供沙箱环境中的文件系统操作功能
5
5
  *
@@ -25,21 +25,14 @@ import { BaseClass } from './base';
25
25
  * ```
26
26
  */
27
27
  export declare class FileSystem extends BaseClass {
28
+ private session;
28
29
  /**
29
30
  * 创建 FileSystem 实例
30
31
  * @param sandbox - E2B 沙箱实例
32
+ * @param session - Session 实例(用于获取 API 主机地址)
31
33
  * @param options - 可选配置参数
32
34
  */
33
- constructor(sandbox: Sandbox, options?: {
34
- logLevel?: 'debug' | 'info' | 'warn' | 'error' | 'fatal';
35
- });
36
- /**
37
- * 检查文件是否为二进制文件(基于文件扩展名)
38
- * @param filePath - 要检查的文件路径
39
- * @returns 如果是二进制文件返回 true,否则返回 false
40
- * @private
41
- */
42
- private isBinaryFile;
35
+ constructor(session: Session);
43
36
  /**
44
37
  * 验证路径是否安全,只允许同步 /home/user 目录下的子目录
45
38
  * @param path - 要验证的路径
@@ -47,14 +40,6 @@ export declare class FileSystem extends BaseClass {
47
40
  * @private
48
41
  */
49
42
  private validateSafePathToDownload;
50
- /**
51
- * 根据指定编码格式转换数据
52
- * @param data - 要转换的数据(Buffer 或 Uint8Array)
53
- * @param encoding - 目标编码格式
54
- * @returns 转换后的数据
55
- * @private
56
- */
57
- private encodeContent;
58
43
  /**
59
44
  * 列出沙箱目录中的文件
60
45
  * @param path - 沙箱中的目录路径
@@ -79,31 +64,25 @@ export declare class FileSystem extends BaseClass {
79
64
  */
80
65
  private syncDirectoryRecursive;
81
66
  /**
82
- * 向沙箱中写入文件
67
+ * 向沙箱中写入文件(通过 API 接口)
83
68
  * @param path - 沙箱中的文件路径
84
- * @param content - 要写入的内容
69
+ * @param content - 要写入的文本内容(仅支持字符串)
85
70
  */
86
- write(path: string, content: string | ArrayBuffer): Promise<void>;
71
+ write(path: string, content: string): Promise<void>;
87
72
  /**
88
- * 从沙箱中读取文件
73
+ * 从沙箱中读取文件(通过 API 接口,仅支持 UTF-8 编码)
89
74
  * @param remotePath - 沙箱中的文件路径
90
- * @param options - 读取选项,包含编码格式
91
- * @returns 文件内容
75
+ * @returns 文件的文本内容
92
76
  */
93
- read(remotePath: string, options?: {
94
- encoding: 'utf8' | 'base64';
95
- }): Promise<string>;
96
- read(remotePath: string, options?: {
97
- encoding: 'binary';
98
- }): Promise<Buffer>;
77
+ read(remotePath: string): Promise<string>;
99
78
  /**
100
- * 上传本地文件到沙箱
79
+ * 上传本地文件到沙箱(通过 API 接口)
101
80
  * @param localPath - 本地文件路径
102
81
  * @param remotePath - 沙箱中的目标路径
103
82
  */
104
83
  upload(localPath: string, remotePath: string): Promise<void>;
105
84
  /**
106
- * 从沙箱下载文件到本地
85
+ * 从沙箱下载文件到本地(通过 API 接口)
107
86
  * @param remotePath - 沙箱中的文件路径
108
87
  * @param localPath - 本地目标路径
109
88
  */
@@ -1 +1 @@
1
- {"version":3,"file":"file-system.d.ts","sourceRoot":"","sources":["../../src/core/file-system.ts"],"names":[],"mappings":"AAEA,OAAO,OAA0B,MAAM,KAAK,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAU,MAAM,QAAQ,CAAC;AAG3C;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBACa,UAAW,SAAQ,SAAS;IACvC;;;;OAIG;gBAED,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;KAC1D;IAMH;;;;;OAKG;IACH,OAAO,CAAC,YAAY;IAoCpB;;;;;OAKG;IACH,OAAO,CAAC,0BAA0B;IAgClC;;;;;;OAMG;IACH,OAAO,CAAC,aAAa;IAYrB;;;;;OAKG;IACG,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAkChD;;;;;OAKG;IACG,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAgBjD,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWxC;;;;;;OAMG;YACW,sBAAsB;IAsEpC;;;;OAIG;IACG,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAWvE;;;;;OAKG;IACG,IAAI,CACR,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAAA;KAAE,GACxC,OAAO,CAAC,MAAM,CAAC;IACZ,IAAI,CACR,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE;QAAE,QAAQ,EAAE,QAAQ,CAAA;KAAE,GAC/B,OAAO,CAAC,MAAM,CAAC;IA6BlB;;;;OAIG;IACG,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBlE;;;;OAIG;IACG,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYpE;;;;;;OAMG;IACU,sBAAsB,CACjC,IAAI,GAAE,MAAiC,EACvC,GAAG,GAAE,MAA+B,EACpC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAC3E,OAAO,CAAC,MAAM,CAAC;CAyDnB"}
1
+ {"version":3,"file":"file-system.d.ts","sourceRoot":"","sources":["../../src/core/file-system.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAU,MAAM,QAAQ,CAAC;AAE3C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBACa,UAAW,SAAQ,SAAS;IAO3B,OAAO,CAAC,OAAO;IAN3B;;;;;OAKG;gBACiB,OAAO,EAAE,OAAO;IAOpC;;;;;OAKG;IACH,OAAO,CAAC,0BAA0B;IAgClC;;;;;OAKG;IACG,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAkChD;;;;;OAKG;IACG,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAkBjD,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWxC;;;;;;OAMG;YACW,sBAAsB;IAsEpC;;;;OAIG;IACG,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAoCzD;;;;OAIG;IACG,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAkC/C;;;;OAIG;IACG,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA+ClE;;;;OAIG;IACG,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2CpE;;;;;;OAMG;IACU,sBAAsB,CACjC,IAAI,GAAE,MAAiC,EACvC,GAAG,GAAE,MAA+B,EACpC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GAC3E,OAAO,CAAC,MAAM,CAAC;CAyDnB"}