runpane 2.3.3 → 2.3.5

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.
@@ -0,0 +1,285 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createInitialTelemetryContext = createInitialTelemetryContext;
7
+ exports.applyParsedArgsToTelemetryContext = applyParsedArgsToTelemetryContext;
8
+ exports.setSetupSelection = setSetupSelection;
9
+ exports.categorizeFailure = categorizeFailure;
10
+ exports.detectNpmInvocation = detectNpmInvocation;
11
+ exports.buildWrapperTelemetryProperties = buildWrapperTelemetryProperties;
12
+ exports.trackWrapperEvent = trackWrapperEvent;
13
+ const promises_1 = __importDefault(require("fs/promises"));
14
+ const os_1 = __importDefault(require("os"));
15
+ const path_1 = __importDefault(require("path"));
16
+ const crypto_1 = require("crypto");
17
+ const version_1 = require("./version");
18
+ const TELEMETRY_ENDPOINT = 'https://runpane.com/api/runpane/telemetry';
19
+ const INSTALL_ID_PATTERN = /^install_[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
20
+ const TELEMETRY_TIMEOUT_MS = 1500;
21
+ function createInitialTelemetryContext(argv) {
22
+ const first = argv[0];
23
+ if (!first) {
24
+ return { command: 'setup', resolvedCommand: 'help' };
25
+ }
26
+ if (first === '-h' || first === '--help' || first === 'help') {
27
+ return { command: 'help', resolvedCommand: 'help' };
28
+ }
29
+ if (first === '-v' || first === '--version') {
30
+ return { command: 'version' };
31
+ }
32
+ if (first === 'install') {
33
+ const target = argv[1] === 'daemon' || argv[1] === 'client' ? argv[1] : 'client';
34
+ return { command: 'install', resolvedCommand: 'install', target };
35
+ }
36
+ if (first === 'setup') {
37
+ return { command: 'setup' };
38
+ }
39
+ if (first === 'update') {
40
+ return { command: 'update', resolvedCommand: 'update', target: 'client' };
41
+ }
42
+ if (first === 'doctor') {
43
+ return { command: 'doctor', resolvedCommand: 'doctor' };
44
+ }
45
+ if (first === 'version') {
46
+ return { command: 'version' };
47
+ }
48
+ if (first === 'agent-context') {
49
+ return { command: 'agent-context' };
50
+ }
51
+ if (first === 'repos') {
52
+ return { command: argv[1] === 'add' ? 'repos add' : 'repos list' };
53
+ }
54
+ if (first === 'panes') {
55
+ return { command: argv[1] === 'list' ? 'panes list' : 'panes create' };
56
+ }
57
+ if (first === 'panels') {
58
+ if (argv[1] === 'output')
59
+ return { command: 'panels output' };
60
+ if (argv[1] === 'input')
61
+ return { command: 'panels input' };
62
+ return { command: 'panels list' };
63
+ }
64
+ return { command: 'unknown' };
65
+ }
66
+ function applyParsedArgsToTelemetryContext(context, parsed) {
67
+ context.command = parsed.command;
68
+ context.target = parsed.command === 'update' ? 'client' : parsed.target;
69
+ context.paneVersion = parsed.paneVersion;
70
+ context.channel = parsed.channel;
71
+ context.format = parsed.format;
72
+ context.dryRun = parsed.dryRun;
73
+ if (parsed.command === 'install' || parsed.command === 'update') {
74
+ context.resolvedCommand = parsed.command;
75
+ }
76
+ if (parsed.command === 'help') {
77
+ context.resolvedCommand = 'help';
78
+ }
79
+ if (parsed.command === 'doctor') {
80
+ context.resolvedCommand = 'doctor';
81
+ }
82
+ }
83
+ function setSetupSelection(context, resolvedCommand, target) {
84
+ context.command = 'setup';
85
+ context.resolvedCommand = resolvedCommand;
86
+ context.target = target;
87
+ }
88
+ function categorizeFailure(error) {
89
+ const message = error instanceof Error ? error.message : String(error);
90
+ const normalized = message.toLowerCase();
91
+ if (normalized.includes('checksum'))
92
+ return 'checksum';
93
+ if (normalized.includes('timeout') || normalized.includes('timed out'))
94
+ return 'timeout';
95
+ if (normalized.includes('enoent') || normalized.includes('not found') || normalized.includes('404'))
96
+ return 'not_found';
97
+ if (normalized.includes('permission') || normalized.includes('eacces') || normalized.includes('eperm'))
98
+ return 'permission';
99
+ if (normalized.includes('unsupported'))
100
+ return 'unsupported_platform';
101
+ if (normalized.includes('invalid') || normalized.includes('required') || normalized.includes('validation'))
102
+ return 'validation';
103
+ if (normalized.includes('network') ||
104
+ normalized.includes('fetch') ||
105
+ normalized.includes('socket') ||
106
+ normalized.includes('econn') ||
107
+ normalized.includes('enotfound')) {
108
+ return 'network';
109
+ }
110
+ return 'unknown';
111
+ }
112
+ function detectNpmInvocation(env = process.env, argv = process.argv) {
113
+ const userAgent = (env.npm_config_user_agent ?? '').toLowerCase();
114
+ const npmCommand = (env.npm_command ?? '').toLowerCase();
115
+ const execPath = (env.npm_execpath ?? '').toLowerCase();
116
+ const argvText = argv.join(' ').toLowerCase();
117
+ if (userAgent.includes('bun') || execPath.includes('bun') || argvText.includes('bunx')) {
118
+ return 'bunx';
119
+ }
120
+ if (userAgent.includes('yarn') || execPath.includes('yarn')) {
121
+ return 'yarn_dlx';
122
+ }
123
+ if (userAgent.includes('pnpm') || execPath.includes('pnpm')) {
124
+ return npmCommand === 'dlx' || argvText.includes(' dlx ') ? 'pnpm_dlx' : 'pnpm';
125
+ }
126
+ if (npmCommand === 'exec' || argvText.includes('npx')) {
127
+ return 'npx';
128
+ }
129
+ if (env.npm_config_global === 'true') {
130
+ return 'npm_global';
131
+ }
132
+ if (userAgent.includes('npm') || execPath.includes('npm')) {
133
+ return 'npm';
134
+ }
135
+ return 'unknown';
136
+ }
137
+ function buildWrapperTelemetryProperties(input) {
138
+ const { context } = input;
139
+ const properties = {
140
+ install_id: input.installId,
141
+ wrapper: 'npm',
142
+ invocation: input.invocation,
143
+ command: context.command,
144
+ download_source: 'npm',
145
+ };
146
+ setIfDefined(properties, 'wrapper_version', sanitizeShortString(input.wrapperVersion));
147
+ setIfDefined(properties, 'resolved_command', context.resolvedCommand);
148
+ setIfDefined(properties, 'target', context.target);
149
+ setIfDefined(properties, 'platform', context.platform?.os);
150
+ setIfDefined(properties, 'arch', context.platform?.arch);
151
+ setIfDefined(properties, 'pane_version', sanitizeShortString(context.paneVersion));
152
+ setIfDefined(properties, 'channel', context.channel);
153
+ setIfDefined(properties, 'format', context.resolvedFormat ?? context.format);
154
+ setIfDefined(properties, 'dry_run', context.dryRun);
155
+ setIfDefined(properties, 'install_kind', context.installKind);
156
+ setIfDefined(properties, 'used_fallback', context.usedFallback);
157
+ setIfDefined(properties, 'failure_stage', context.failureStage);
158
+ setIfDefined(properties, 'failure_category', context.failureCategory);
159
+ setIfDefined(properties, 'exit_code', sanitizeExitCode(context.exitCode));
160
+ return properties;
161
+ }
162
+ async function trackWrapperEvent(event, context) {
163
+ if (isTelemetryDisabled()) {
164
+ return;
165
+ }
166
+ try {
167
+ const installId = await getOrCreateWrapperInstallId();
168
+ const properties = buildWrapperTelemetryProperties({
169
+ installId,
170
+ wrapperVersion: (0, version_1.getWrapperVersion)(),
171
+ invocation: detectNpmInvocation(),
172
+ context,
173
+ });
174
+ await postTelemetry({ event, properties });
175
+ }
176
+ catch {
177
+ // Telemetry must not affect wrapper behavior.
178
+ }
179
+ }
180
+ function appDirectory() {
181
+ return process.env.PANE_DIR || process.env.FOOZOL_DIR || path_1.default.join(os_1.default.homedir(), '.pane');
182
+ }
183
+ async function getOrCreateWrapperInstallId() {
184
+ const dir = appDirectory();
185
+ const configPath = path_1.default.join(dir, 'config.json');
186
+ const fallbackPath = path_1.default.join(dir, 'runpane-wrapper-identity.json');
187
+ await promises_1.default.mkdir(dir, { recursive: true });
188
+ const config = await readConfig(configPath);
189
+ if (config.status === 'ok') {
190
+ const analytics = isRecord(config.value.analytics) ? config.value.analytics : {};
191
+ const existing = analytics.installId;
192
+ if (typeof existing === 'string' && INSTALL_ID_PATTERN.test(existing)) {
193
+ return existing;
194
+ }
195
+ const installId = createInstallId();
196
+ const nextConfig = {
197
+ ...config.value,
198
+ analytics: {
199
+ ...analytics,
200
+ installId,
201
+ },
202
+ };
203
+ await promises_1.default.writeFile(configPath, `${JSON.stringify(nextConfig, null, 2)}\n`, 'utf8');
204
+ return installId;
205
+ }
206
+ if (config.status === 'missing') {
207
+ const installId = createInstallId();
208
+ await promises_1.default.writeFile(configPath, `${JSON.stringify({ analytics: { installId } }, null, 2)}\n`, 'utf8');
209
+ return installId;
210
+ }
211
+ return getOrCreateFallbackInstallId(fallbackPath);
212
+ }
213
+ async function readConfig(configPath) {
214
+ try {
215
+ const raw = await promises_1.default.readFile(configPath, 'utf8');
216
+ const parsed = JSON.parse(raw);
217
+ return isRecord(parsed) ? { status: 'ok', value: parsed } : { status: 'invalid' };
218
+ }
219
+ catch (error) {
220
+ if (isNodeError(error) && error.code === 'ENOENT') {
221
+ return { status: 'missing' };
222
+ }
223
+ return { status: 'invalid' };
224
+ }
225
+ }
226
+ async function getOrCreateFallbackInstallId(fallbackPath) {
227
+ try {
228
+ const raw = await promises_1.default.readFile(fallbackPath, 'utf8');
229
+ const parsed = JSON.parse(raw);
230
+ if (isRecord(parsed) && typeof parsed.installId === 'string' && INSTALL_ID_PATTERN.test(parsed.installId)) {
231
+ return parsed.installId;
232
+ }
233
+ }
234
+ catch {
235
+ // Fall through and create a new fallback identity.
236
+ }
237
+ const installId = createInstallId();
238
+ await promises_1.default.writeFile(fallbackPath, `${JSON.stringify({ installId }, null, 2)}\n`, 'utf8');
239
+ return installId;
240
+ }
241
+ async function postTelemetry(payload) {
242
+ const controller = new AbortController();
243
+ const timeout = setTimeout(() => controller.abort(), TELEMETRY_TIMEOUT_MS);
244
+ try {
245
+ await fetch(TELEMETRY_ENDPOINT, {
246
+ method: 'POST',
247
+ headers: { 'content-type': 'application/json', 'user-agent': 'runpane-installer' },
248
+ body: JSON.stringify(payload),
249
+ signal: controller.signal,
250
+ });
251
+ }
252
+ finally {
253
+ clearTimeout(timeout);
254
+ }
255
+ }
256
+ function isTelemetryDisabled() {
257
+ return Boolean(process.env.CI || process.env.RUNPANE_TELEMETRY_DISABLED);
258
+ }
259
+ function createInstallId() {
260
+ return `install_${(0, crypto_1.randomUUID)()}`;
261
+ }
262
+ function sanitizeShortString(value) {
263
+ if (!value || value.length > 80 || /[\\/]/.test(value)) {
264
+ return undefined;
265
+ }
266
+ return value;
267
+ }
268
+ function sanitizeExitCode(value) {
269
+ if (value === undefined || !Number.isInteger(value) || value < 0 || value > 255) {
270
+ return undefined;
271
+ }
272
+ return value;
273
+ }
274
+ function setIfDefined(properties, key, value) {
275
+ if (value !== undefined) {
276
+ properties[key] = value;
277
+ }
278
+ }
279
+ function isRecord(value) {
280
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
281
+ }
282
+ function isNodeError(error) {
283
+ return error instanceof Error && 'code' in error;
284
+ }
285
+ //# sourceMappingURL=telemetry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../src/telemetry.ts"],"names":[],"mappings":";;;;;AA+EA,sEA0CC;AAED,8EA0BC;AAED,8CAQC;AAED,8CAmBC;AAED,kDA4BC;AAED,0EA+BC;AAED,8CAoBC;AAzQD,2DAA6B;AAC7B,4CAAoB;AACpB,gDAAwB;AACxB,mCAAoC;AAGpC,uCAA8C;AAE9C,MAAM,kBAAkB,GAAG,2CAA2C,CAAC;AACvE,MAAM,kBAAkB,GAAG,yEAAyE,CAAC;AACrG,MAAM,oBAAoB,GAAG,IAAI,CAAC;AAqElC,SAAgB,6BAA6B,CAAC,IAAc;IAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACtB,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC;IACvD,CAAC;IACD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;QAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC;IACtD,CAAC;IACD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;QAC5C,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IAChC,CAAC;IACD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QACjF,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IACpE,CAAC;IACD,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;QACtB,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IAC9B,CAAC;IACD,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvB,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IAC5E,CAAC;IACD,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvB,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC;IAC1D,CAAC;IACD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IAChC,CAAC;IACD,IAAI,KAAK,KAAK,eAAe,EAAE,CAAC;QAC9B,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;IACtC,CAAC;IACD,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;QACtB,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC;IACrE,CAAC;IACD,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;QACtB,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC;IACzE,CAAC;IACD,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ;YAAE,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;QAC9D,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO;YAAE,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC;QAC5D,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;IACpC,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;AAChC,CAAC;AAED,SAAgB,iCAAiC,CAC/C,OAAgC,EAChC,MAOC;IAED,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IACjC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;IACxE,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IACzC,OAAO,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IACjC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC/B,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC/B,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChE,OAAO,CAAC,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC;IAC3C,CAAC;IACD,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;QAC9B,OAAO,CAAC,eAAe,GAAG,MAAM,CAAC;IACnC,CAAC;IACD,IAAI,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,CAAC,eAAe,GAAG,QAAQ,CAAC;IACrC,CAAC;AACH,CAAC;AAED,SAAgB,iBAAiB,CAC/B,OAAgC,EAChC,eAAgD,EAChD,MAAsB;IAEtB,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;IAC1B,OAAO,CAAC,eAAe,GAAG,eAAe,CAAC;IAC1C,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;AAC1B,CAAC;AAED,SAAgB,iBAAiB,CAAC,KAAc;IAC9C,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvE,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACzC,IAAI,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,UAAU,CAAC;IACvD,IAAI,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAO,SAAS,CAAC;IACzF,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,WAAW,CAAC;IACxH,IAAI,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,YAAY,CAAC;IAC5H,IAAI,UAAU,CAAC,QAAQ,CAAC,aAAa,CAAC;QAAE,OAAO,sBAAsB,CAAC;IACtE,IAAI,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC;QAAE,OAAO,YAAY,CAAC;IAChI,IACE,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC9B,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC;QAC5B,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC7B,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC;QAC5B,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,EAChC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAgB,mBAAmB,CACjC,MAAyB,OAAO,CAAC,GAAG,EACpC,OAAiB,OAAO,CAAC,IAAI;IAE7B,MAAM,SAAS,GAAG,CAAC,GAAG,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAClE,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACzD,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IAE9C,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACvF,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5D,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5D,OAAO,UAAU,KAAK,KAAK,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC;IAClF,CAAC;IACD,IAAI,UAAU,KAAK,MAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACtD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,GAAG,CAAC,iBAAiB,KAAK,MAAM,EAAE,CAAC;QACrC,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1D,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAgB,+BAA+B,CAAC,KAK/C;IACC,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAC1B,MAAM,UAAU,GAA+B;QAC7C,UAAU,EAAE,KAAK,CAAC,SAAS;QAC3B,OAAO,EAAE,KAAK;QACd,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,eAAe,EAAE,KAAK;KACvB,CAAC;IAEF,YAAY,CAAC,UAAU,EAAE,iBAAiB,EAAE,mBAAmB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;IACvF,YAAY,CAAC,UAAU,EAAE,kBAAkB,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IACtE,YAAY,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACnD,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC3D,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACzD,YAAY,CAAC,UAAU,EAAE,cAAc,EAAE,mBAAmB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IACnF,YAAY,CAAC,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IACrD,YAAY,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7E,YAAY,CAAC,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACpD,YAAY,CAAC,UAAU,EAAE,cAAc,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9D,YAAY,CAAC,UAAU,EAAE,eAAe,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAChE,YAAY,CAAC,UAAU,EAAE,eAAe,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAChE,YAAY,CAAC,UAAU,EAAE,kBAAkB,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IACtE,YAAY,CAAC,UAAU,EAAE,WAAW,EAAE,gBAAgB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE1E,OAAO,UAAU,CAAC;AACpB,CAAC;AAEM,KAAK,UAAU,iBAAiB,CACrC,KAAgC,EAChC,OAAgC;IAEhC,IAAI,mBAAmB,EAAE,EAAE,CAAC;QAC1B,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,2BAA2B,EAAE,CAAC;QACtD,MAAM,UAAU,GAAG,+BAA+B,CAAC;YACjD,SAAS;YACT,cAAc,EAAE,IAAA,2BAAiB,GAAE;YACnC,UAAU,EAAE,mBAAmB,EAAE;YACjC,OAAO;SACR,CAAC,CAAC;QACH,MAAM,aAAa,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,8CAA8C;IAChD,CAAC;AACH,CAAC;AAED,SAAS,YAAY;IACnB,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,cAAI,CAAC,IAAI,CAAC,YAAE,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;AAC5F,CAAC;AAED,KAAK,UAAU,2BAA2B;IACxC,MAAM,GAAG,GAAG,YAAY,EAAE,CAAC;IAC3B,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IACjD,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,+BAA+B,CAAC,CAAC;IACrE,MAAM,kBAAE,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEzC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,CAAC;IAC5C,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QACjF,MAAM,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC;QACrC,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtE,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;QACpC,MAAM,UAAU,GAAe;YAC7B,GAAG,MAAM,CAAC,KAAK;YACf,SAAS,EAAE;gBACT,GAAG,SAAS;gBACZ,SAAS;aACV;SACF,CAAC;QACF,MAAM,kBAAE,CAAC,SAAS,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACnF,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;QACpC,MAAM,kBAAE,CAAC,SAAS,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACrG,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,4BAA4B,CAAC,YAAY,CAAC,CAAC;AACpD,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,UAAkB;IAK1C,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAY,CAAC;QAC1C,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAClG,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,WAAW,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAClD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;QAC/B,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAC/B,CAAC;AACH,CAAC;AAED,KAAK,UAAU,4BAA4B,CAAC,YAAoB;IAC9D,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAY,CAAC;QAC1C,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,IAAI,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1G,OAAO,MAAM,CAAC,SAAS,CAAC;QAC1B,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,mDAAmD;IACrD,CAAC;IAED,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;IACpC,MAAM,kBAAE,CAAC,SAAS,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACxF,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,OAAqF;IAChH,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,oBAAoB,CAAC,CAAC;IAC3E,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,kBAAkB,EAAE;YAC9B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,YAAY,EAAE,mBAAmB,EAAE;YAClF,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;YAC7B,MAAM,EAAE,UAAU,CAAC,MAAM;SAC1B,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,OAAO,CAAC,CAAC;IACxB,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB;IAC1B,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;AAC3E,CAAC;AAED,SAAS,eAAe;IACtB,OAAO,WAAW,IAAA,mBAAU,GAAE,EAAE,CAAC;AACnC,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAyB;IACpD,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,EAAE,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACvD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAyB;IACjD,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,GAAG,EAAE,CAAC;QAChF,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,YAAY,CACnB,UAAsC,EACtC,GAAW,EACX,KAA4C;IAE5C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,UAAU,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAC1B,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,OAAO,KAAK,YAAY,KAAK,IAAI,MAAM,IAAI,KAAK,CAAC;AACnD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "runpane",
3
- "version": "2.3.3",
3
+ "version": "2.3.5",
4
4
  "description": "Thin npm installer and remote setup CLI for Pane",
5
5
  "license": "AGPL-3.0",
6
6
  "homepage": "https://runpane.com",