@coze-arch/cli 0.0.36-alpha.2c0689 → 0.0.36-alpha.75f808
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/lib/cli.js +293 -155
- package/package.json +1 -1
package/lib/cli.js
CHANGED
|
@@ -1635,7 +1635,7 @@ function createNodeTransport() {
|
|
|
1635
1635
|
};
|
|
1636
1636
|
}
|
|
1637
1637
|
|
|
1638
|
-
function _nullishCoalesce$c(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain$
|
|
1638
|
+
function _nullishCoalesce$c(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain$F(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }/**
|
|
1639
1639
|
* Slardar CLI Reporter 主类
|
|
1640
1640
|
* 封装 @slardar/base 的初始化和上报逻辑
|
|
1641
1641
|
*/
|
|
@@ -1707,7 +1707,7 @@ class SlardarCLIReporter {constructor() { SlardarCLIReporter.prototype.__init.ca
|
|
|
1707
1707
|
this.client.on('send', (ev) => {
|
|
1708
1708
|
log$6(
|
|
1709
1709
|
'send hook called for event: %s',
|
|
1710
|
-
(_optionalChain$
|
|
1710
|
+
(_optionalChain$F([ev, 'optionalAccess', _ => _.ev_type]) ) || 'unknown',
|
|
1711
1711
|
);
|
|
1712
1712
|
});
|
|
1713
1713
|
|
|
@@ -1765,7 +1765,7 @@ class SlardarCLIReporter {constructor() { SlardarCLIReporter.prototype.__init.ca
|
|
|
1765
1765
|
)
|
|
1766
1766
|
: undefined;
|
|
1767
1767
|
|
|
1768
|
-
_optionalChain$
|
|
1768
|
+
_optionalChain$F([this, 'access', _2 => _2.client, 'access', _3 => _3.sendEvent, 'optionalCall', _4 => _4({
|
|
1769
1769
|
name,
|
|
1770
1770
|
metrics: cleanMetrics ,
|
|
1771
1771
|
categories: cleanCategories ,
|
|
@@ -1836,7 +1836,7 @@ class SlardarCLIReporter {constructor() { SlardarCLIReporter.prototype.__init.ca
|
|
|
1836
1836
|
log$6('Reporting JS error:', {
|
|
1837
1837
|
name: error.name,
|
|
1838
1838
|
message: error.message.slice(0, 100),
|
|
1839
|
-
stack: _optionalChain$
|
|
1839
|
+
stack: _optionalChain$F([error, 'access', _5 => _5.stack, 'optionalAccess', _6 => _6.slice, 'call', _7 => _7(0, 200)]),
|
|
1840
1840
|
extra,
|
|
1841
1841
|
source,
|
|
1842
1842
|
});
|
|
@@ -1856,7 +1856,7 @@ class SlardarCLIReporter {constructor() { SlardarCLIReporter.prototype.__init.ca
|
|
|
1856
1856
|
if (!this.ensureInitialized()) {
|
|
1857
1857
|
return;
|
|
1858
1858
|
}
|
|
1859
|
-
_optionalChain$
|
|
1859
|
+
_optionalChain$F([this, 'access', _8 => _8.client, 'access', _9 => _9.context, 'optionalAccess', _10 => _10.set, 'call', _11 => _11(key, value)]);
|
|
1860
1860
|
}
|
|
1861
1861
|
|
|
1862
1862
|
/**
|
|
@@ -1867,7 +1867,7 @@ class SlardarCLIReporter {constructor() { SlardarCLIReporter.prototype.__init.ca
|
|
|
1867
1867
|
return;
|
|
1868
1868
|
}
|
|
1869
1869
|
log$6('Merging context:', context);
|
|
1870
|
-
_optionalChain$
|
|
1870
|
+
_optionalChain$F([this, 'access', _12 => _12.client, 'access', _13 => _13.context, 'optionalAccess', _14 => _14.merge, 'call', _15 => _15(context)]);
|
|
1871
1871
|
}
|
|
1872
1872
|
|
|
1873
1873
|
/**
|
|
@@ -1877,7 +1877,7 @@ class SlardarCLIReporter {constructor() { SlardarCLIReporter.prototype.__init.ca
|
|
|
1877
1877
|
if (!this.ensureInitialized()) {
|
|
1878
1878
|
return;
|
|
1879
1879
|
}
|
|
1880
|
-
_optionalChain$
|
|
1880
|
+
_optionalChain$F([this, 'access', _16 => _16.client, 'access', _17 => _17.context, 'optionalAccess', _18 => _18.delete, 'call', _19 => _19(key)]);
|
|
1881
1881
|
}
|
|
1882
1882
|
|
|
1883
1883
|
/**
|
|
@@ -1887,7 +1887,7 @@ class SlardarCLIReporter {constructor() { SlardarCLIReporter.prototype.__init.ca
|
|
|
1887
1887
|
if (!this.ensureInitialized()) {
|
|
1888
1888
|
return;
|
|
1889
1889
|
}
|
|
1890
|
-
_optionalChain$
|
|
1890
|
+
_optionalChain$F([this, 'access', _20 => _20.client, 'access', _21 => _21.context, 'optionalAccess', _22 => _22.clear, 'call', _23 => _23()]);
|
|
1891
1891
|
}
|
|
1892
1892
|
|
|
1893
1893
|
/**
|
|
@@ -1924,7 +1924,7 @@ class SlardarCLIReporter {constructor() { SlardarCLIReporter.prototype.__init.ca
|
|
|
1924
1924
|
return;
|
|
1925
1925
|
}
|
|
1926
1926
|
log$6('Flushing Slardar data...');
|
|
1927
|
-
_optionalChain$
|
|
1927
|
+
_optionalChain$F([this, 'access', _24 => _24.client, 'access', _25 => _25.getSender, 'optionalCall', _26 => _26(), 'optionalAccess', _27 => _27.flush, 'call', _28 => _28()]);
|
|
1928
1928
|
log$6('Waiting %dms for events to be sent...', waitMs);
|
|
1929
1929
|
await new Promise(resolve => setTimeout(resolve, waitMs));
|
|
1930
1930
|
log$6('Slardar data flushed');
|
|
@@ -1943,7 +1943,7 @@ class SlardarCLIReporter {constructor() { SlardarCLIReporter.prototype.__init.ca
|
|
|
1943
1943
|
*/
|
|
1944
1944
|
const reporter = new SlardarCLIReporter();
|
|
1945
1945
|
|
|
1946
|
-
function _optionalChain$
|
|
1946
|
+
function _optionalChain$E(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
1947
1947
|
|
|
1948
1948
|
|
|
1949
1949
|
|
|
@@ -2003,11 +2003,11 @@ const EventBuilder = {
|
|
|
2003
2003
|
name: CLI_EVENTS.CLI_COMMAND,
|
|
2004
2004
|
categories: {
|
|
2005
2005
|
command,
|
|
2006
|
-
args: _optionalChain$
|
|
2006
|
+
args: _optionalChain$E([options, 'optionalAccess', _ => _.args]),
|
|
2007
2007
|
status: 'running' ,
|
|
2008
|
-
..._optionalChain$
|
|
2008
|
+
..._optionalChain$E([options, 'optionalAccess', _2 => _2.categories]),
|
|
2009
2009
|
},
|
|
2010
|
-
metrics: _optionalChain$
|
|
2010
|
+
metrics: _optionalChain$E([options, 'optionalAccess', _3 => _3.metrics]),
|
|
2011
2011
|
};
|
|
2012
2012
|
},
|
|
2013
2013
|
|
|
@@ -2028,13 +2028,13 @@ const EventBuilder = {
|
|
|
2028
2028
|
name: CLI_EVENTS.CLI_COMMAND_COMPLETE,
|
|
2029
2029
|
categories: {
|
|
2030
2030
|
command,
|
|
2031
|
-
args: _optionalChain$
|
|
2031
|
+
args: _optionalChain$E([options, 'optionalAccess', _4 => _4.args]),
|
|
2032
2032
|
status: success ? ('success' ) : ('fail' ),
|
|
2033
|
-
..._optionalChain$
|
|
2033
|
+
..._optionalChain$E([options, 'optionalAccess', _5 => _5.categories]),
|
|
2034
2034
|
},
|
|
2035
2035
|
metrics: {
|
|
2036
2036
|
duration,
|
|
2037
|
-
...(_optionalChain$
|
|
2037
|
+
...(_optionalChain$E([options, 'optionalAccess', _6 => _6.errorCode]) && { errorCode: options.errorCode }),
|
|
2038
2038
|
},
|
|
2039
2039
|
};
|
|
2040
2040
|
},
|
|
@@ -2055,12 +2055,12 @@ const EventBuilder = {
|
|
|
2055
2055
|
name: CLI_EVENTS.NETWORK_REQUEST,
|
|
2056
2056
|
categories: {
|
|
2057
2057
|
url,
|
|
2058
|
-
method: _optionalChain$
|
|
2059
|
-
statusCode: _optionalChain$
|
|
2060
|
-
status: _optionalChain$
|
|
2058
|
+
method: _optionalChain$E([options, 'optionalAccess', _7 => _7.method]) || 'GET',
|
|
2059
|
+
statusCode: _optionalChain$E([options, 'optionalAccess', _8 => _8.statusCode, 'optionalAccess', _9 => _9.toString, 'call', _10 => _10()]),
|
|
2060
|
+
status: _optionalChain$E([options, 'optionalAccess', _11 => _11.success]) ? ('success' ) : ('fail' ),
|
|
2061
2061
|
},
|
|
2062
2062
|
metrics: {
|
|
2063
|
-
duration: _optionalChain$
|
|
2063
|
+
duration: _optionalChain$E([options, 'optionalAccess', _12 => _12.duration]),
|
|
2064
2064
|
},
|
|
2065
2065
|
};
|
|
2066
2066
|
},
|
|
@@ -2082,11 +2082,11 @@ const EventBuilder = {
|
|
|
2082
2082
|
categories: {
|
|
2083
2083
|
operation,
|
|
2084
2084
|
filePath,
|
|
2085
|
-
status: _optionalChain$
|
|
2085
|
+
status: _optionalChain$E([options, 'optionalAccess', _13 => _13.success]) ? ('success' ) : ('fail' ),
|
|
2086
2086
|
},
|
|
2087
2087
|
metrics: {
|
|
2088
|
-
duration: _optionalChain$
|
|
2089
|
-
fileSize: _optionalChain$
|
|
2088
|
+
duration: _optionalChain$E([options, 'optionalAccess', _14 => _14.duration]),
|
|
2089
|
+
fileSize: _optionalChain$E([options, 'optionalAccess', _15 => _15.fileSize]),
|
|
2090
2090
|
},
|
|
2091
2091
|
};
|
|
2092
2092
|
},
|
|
@@ -2114,7 +2114,7 @@ const EventBuilder = {
|
|
|
2114
2114
|
};
|
|
2115
2115
|
|
|
2116
2116
|
var name = "@coze-arch/cli";
|
|
2117
|
-
var version = "0.0.36-alpha.
|
|
2117
|
+
var version = "0.0.36-alpha.75f808";
|
|
2118
2118
|
var description = "coze coding devtools cli";
|
|
2119
2119
|
var license = "MIT";
|
|
2120
2120
|
var author = "fanwenjie.fe@bytedance.com";
|
|
@@ -2224,7 +2224,7 @@ var packageJson = {
|
|
|
2224
2224
|
cozePublishConfig: cozePublishConfig
|
|
2225
2225
|
};
|
|
2226
2226
|
|
|
2227
|
-
function _optionalChain$
|
|
2227
|
+
function _optionalChain$D(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }/**
|
|
2228
2228
|
* Slardar 监控初始化和上报
|
|
2229
2229
|
*/
|
|
2230
2230
|
|
|
@@ -2327,11 +2327,11 @@ const reportCommandComplete = safeRun(
|
|
|
2327
2327
|
,
|
|
2328
2328
|
) => {
|
|
2329
2329
|
const event = EventBuilder.cliCommandComplete(command, success, duration, {
|
|
2330
|
-
args: _optionalChain$
|
|
2331
|
-
errorCode: _optionalChain$
|
|
2330
|
+
args: _optionalChain$D([options, 'optionalAccess', _ => _.args]),
|
|
2331
|
+
errorCode: _optionalChain$D([options, 'optionalAccess', _2 => _2.errorCode]),
|
|
2332
2332
|
categories: {
|
|
2333
|
-
...(_optionalChain$
|
|
2334
|
-
..._optionalChain$
|
|
2333
|
+
...(_optionalChain$D([options, 'optionalAccess', _3 => _3.errorMessage]) && { errorMessage: options.errorMessage }),
|
|
2334
|
+
..._optionalChain$D([options, 'optionalAccess', _4 => _4.categories]),
|
|
2335
2335
|
},
|
|
2336
2336
|
});
|
|
2337
2337
|
reporter.sendEvent(event.name, event.metrics, event.categories);
|
|
@@ -2390,7 +2390,7 @@ const flushSlardar = safeRun('flushSlardar', async () => {
|
|
|
2390
2390
|
await reporter.flush();
|
|
2391
2391
|
});
|
|
2392
2392
|
|
|
2393
|
-
function _nullishCoalesce$b(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain$
|
|
2393
|
+
function _nullishCoalesce$b(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain$C(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var LogLevel; (function (LogLevel) {
|
|
2394
2394
|
const ERROR = 0; LogLevel[LogLevel["ERROR"] = ERROR] = "ERROR";
|
|
2395
2395
|
const WARN = 1; LogLevel[LogLevel["WARN"] = WARN] = "WARN";
|
|
2396
2396
|
const SUCCESS = 2; LogLevel[LogLevel["SUCCESS"] = SUCCESS] = "SUCCESS";
|
|
@@ -2437,7 +2437,7 @@ class Logger {
|
|
|
2437
2437
|
return level;
|
|
2438
2438
|
}
|
|
2439
2439
|
|
|
2440
|
-
const envLevel = _optionalChain$
|
|
2440
|
+
const envLevel = _optionalChain$C([process, 'access', _ => _.env, 'access', _2 => _2.LOG_LEVEL, 'optionalAccess', _3 => _3.toLowerCase, 'call', _4 => _4()]);
|
|
2441
2441
|
if (envLevel && envLevel in LOG_LEVEL_MAP) {
|
|
2442
2442
|
// envLevel 已通过 `in` 检查确认为 LOG_LEVEL_MAP 的键;
|
|
2443
2443
|
// 显式判空以满足 noUncheckedIndexedAccess,运行时行为不变
|
|
@@ -2454,7 +2454,7 @@ class Logger {
|
|
|
2454
2454
|
// 简单检测:Node.js 环境且支持 TTY
|
|
2455
2455
|
return (
|
|
2456
2456
|
typeof process !== 'undefined' &&
|
|
2457
|
-
_optionalChain$
|
|
2457
|
+
_optionalChain$C([process, 'access', _5 => _5.stdout, 'optionalAccess', _6 => _6.isTTY]) === true &&
|
|
2458
2458
|
process.env.NO_COLOR === undefined
|
|
2459
2459
|
);
|
|
2460
2460
|
}
|
|
@@ -3262,7 +3262,7 @@ const registerCommand$6 = program => {
|
|
|
3262
3262
|
});
|
|
3263
3263
|
};
|
|
3264
3264
|
|
|
3265
|
-
function _optionalChain$
|
|
3265
|
+
function _optionalChain$B(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }// Safe JSON parsing utilities with type safety and error handling
|
|
3266
3266
|
// Provides fallback values, validation, and error monitoring capabilities
|
|
3267
3267
|
|
|
3268
3268
|
/**
|
|
@@ -3362,12 +3362,12 @@ function safeJsonParse(
|
|
|
3362
3362
|
const parsed = JSON.parse(String(input));
|
|
3363
3363
|
|
|
3364
3364
|
// Optional validation
|
|
3365
|
-
if (_optionalChain$
|
|
3365
|
+
if (_optionalChain$B([options, 'optionalAccess', _ => _.validate])) {
|
|
3366
3366
|
if (options.validate(parsed)) {
|
|
3367
3367
|
return parsed;
|
|
3368
3368
|
} else {
|
|
3369
3369
|
const validationError = new Error('JSON validation failed');
|
|
3370
|
-
_optionalChain$
|
|
3370
|
+
_optionalChain$B([options, 'access', _2 => _2.onError, 'optionalCall', _3 => _3(validationError, input)]);
|
|
3371
3371
|
|
|
3372
3372
|
if (options.throwOnValidationError) {
|
|
3373
3373
|
throw validationError;
|
|
@@ -3379,10 +3379,10 @@ function safeJsonParse(
|
|
|
3379
3379
|
return parsed;
|
|
3380
3380
|
} catch (error) {
|
|
3381
3381
|
// Re-throw validation errors when throwOnValidationError is true
|
|
3382
|
-
if (error instanceof Error && error.message === 'JSON validation failed' && _optionalChain$
|
|
3382
|
+
if (error instanceof Error && error.message === 'JSON validation failed' && _optionalChain$B([options, 'optionalAccess', _4 => _4.throwOnValidationError])) {
|
|
3383
3383
|
throw error;
|
|
3384
3384
|
}
|
|
3385
|
-
_optionalChain$
|
|
3385
|
+
_optionalChain$B([options, 'optionalAccess', _5 => _5.onError, 'optionalCall', _6 => _6(error , input)]);
|
|
3386
3386
|
return defaultValue;
|
|
3387
3387
|
}
|
|
3388
3388
|
}
|
|
@@ -3422,7 +3422,7 @@ function isNode(node) {
|
|
|
3422
3422
|
}
|
|
3423
3423
|
const hasAnchor = (node) => (isScalar(node) || isCollection(node)) && !!node.anchor;
|
|
3424
3424
|
|
|
3425
|
-
function _optionalChain$
|
|
3425
|
+
function _optionalChain$A(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
3426
3426
|
const BREAK = Symbol('break visit');
|
|
3427
3427
|
const SKIP = Symbol('skip children');
|
|
3428
3428
|
const REMOVE = Symbol('remove node');
|
|
@@ -3535,15 +3535,15 @@ function callVisitor(key, node, visitor, path) {
|
|
|
3535
3535
|
if (typeof visitor === 'function')
|
|
3536
3536
|
return visitor(key, node, path);
|
|
3537
3537
|
if (isMap(node))
|
|
3538
|
-
return _optionalChain$
|
|
3538
|
+
return _optionalChain$A([visitor, 'access', _ => _.Map, 'optionalCall', _2 => _2(key, node, path)]);
|
|
3539
3539
|
if (isSeq(node))
|
|
3540
|
-
return _optionalChain$
|
|
3540
|
+
return _optionalChain$A([visitor, 'access', _3 => _3.Seq, 'optionalCall', _4 => _4(key, node, path)]);
|
|
3541
3541
|
if (isPair(node))
|
|
3542
|
-
return _optionalChain$
|
|
3542
|
+
return _optionalChain$A([visitor, 'access', _5 => _5.Pair, 'optionalCall', _6 => _6(key, node, path)]);
|
|
3543
3543
|
if (isScalar(node))
|
|
3544
|
-
return _optionalChain$
|
|
3544
|
+
return _optionalChain$A([visitor, 'access', _7 => _7.Scalar, 'optionalCall', _8 => _8(key, node, path)]);
|
|
3545
3545
|
if (isAlias(node))
|
|
3546
|
-
return _optionalChain$
|
|
3546
|
+
return _optionalChain$A([visitor, 'access', _9 => _9.Alias, 'optionalCall', _10 => _10(key, node, path)]);
|
|
3547
3547
|
return undefined;
|
|
3548
3548
|
}
|
|
3549
3549
|
function replaceNode(key, path, node) {
|
|
@@ -3634,7 +3634,7 @@ function applyReviver(reviver, obj, key, val) {
|
|
|
3634
3634
|
return reviver.call(obj, key, val);
|
|
3635
3635
|
}
|
|
3636
3636
|
|
|
3637
|
-
function _optionalChain$
|
|
3637
|
+
function _optionalChain$z(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
3638
3638
|
/**
|
|
3639
3639
|
* Recursively convert any node or its contents to native JavaScript
|
|
3640
3640
|
*
|
|
@@ -3664,7 +3664,7 @@ function toJS(value, arg, ctx) {
|
|
|
3664
3664
|
ctx.onCreate(res);
|
|
3665
3665
|
return res;
|
|
3666
3666
|
}
|
|
3667
|
-
if (typeof value === 'bigint' && !_optionalChain$
|
|
3667
|
+
if (typeof value === 'bigint' && !_optionalChain$z([ctx, 'optionalAccess', _ => _.keep]))
|
|
3668
3668
|
return Number(value);
|
|
3669
3669
|
return value;
|
|
3670
3670
|
}
|
|
@@ -3702,7 +3702,7 @@ class NodeBase {
|
|
|
3702
3702
|
}
|
|
3703
3703
|
}
|
|
3704
3704
|
|
|
3705
|
-
function _optionalChain$
|
|
3705
|
+
function _optionalChain$y(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
3706
3706
|
class Alias extends NodeBase {
|
|
3707
3707
|
constructor(source) {
|
|
3708
3708
|
super(ALIAS);
|
|
@@ -3718,10 +3718,10 @@ class Alias extends NodeBase {
|
|
|
3718
3718
|
* instance of the `source` anchor before this node.
|
|
3719
3719
|
*/
|
|
3720
3720
|
resolve(doc, ctx) {
|
|
3721
|
-
if (_optionalChain$
|
|
3721
|
+
if (_optionalChain$y([ctx, 'optionalAccess', _ => _.maxAliasCount]) === 0)
|
|
3722
3722
|
throw new ReferenceError('Alias resolution is disabled');
|
|
3723
3723
|
let nodes;
|
|
3724
|
-
if (_optionalChain$
|
|
3724
|
+
if (_optionalChain$y([ctx, 'optionalAccess', _2 => _2.aliasResolveCache])) {
|
|
3725
3725
|
nodes = ctx.aliasResolveCache;
|
|
3726
3726
|
}
|
|
3727
3727
|
else {
|
|
@@ -3760,7 +3760,7 @@ class Alias extends NodeBase {
|
|
|
3760
3760
|
data = anchors.get(source);
|
|
3761
3761
|
}
|
|
3762
3762
|
/* istanbul ignore if */
|
|
3763
|
-
if (_optionalChain$
|
|
3763
|
+
if (_optionalChain$y([data, 'optionalAccess', _3 => _3.res]) === undefined) {
|
|
3764
3764
|
const msg = 'This should not happen: Alias anchor was not resolved?';
|
|
3765
3765
|
throw new ReferenceError(msg);
|
|
3766
3766
|
}
|
|
@@ -3812,7 +3812,7 @@ function getAliasCount(doc, node, anchors) {
|
|
|
3812
3812
|
return 1;
|
|
3813
3813
|
}
|
|
3814
3814
|
|
|
3815
|
-
function _optionalChain$
|
|
3815
|
+
function _optionalChain$x(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
3816
3816
|
const isScalarValue = (value) => !value || (typeof value !== 'function' && typeof value !== 'object');
|
|
3817
3817
|
class Scalar extends NodeBase {
|
|
3818
3818
|
constructor(value) {
|
|
@@ -3820,7 +3820,7 @@ class Scalar extends NodeBase {
|
|
|
3820
3820
|
this.value = value;
|
|
3821
3821
|
}
|
|
3822
3822
|
toJSON(arg, ctx) {
|
|
3823
|
-
return _optionalChain$
|
|
3823
|
+
return _optionalChain$x([ctx, 'optionalAccess', _ => _.keep]) ? this.value : toJS(this.value, arg, ctx);
|
|
3824
3824
|
}
|
|
3825
3825
|
toString() {
|
|
3826
3826
|
return String(this.value);
|
|
@@ -3832,7 +3832,7 @@ Scalar.PLAIN = 'PLAIN';
|
|
|
3832
3832
|
Scalar.QUOTE_DOUBLE = 'QUOTE_DOUBLE';
|
|
3833
3833
|
Scalar.QUOTE_SINGLE = 'QUOTE_SINGLE';
|
|
3834
3834
|
|
|
3835
|
-
function _nullishCoalesce$a(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain$
|
|
3835
|
+
function _nullishCoalesce$a(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain$w(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
3836
3836
|
const defaultTagPrefix = 'tag:yaml.org,2002:';
|
|
3837
3837
|
function findTagObject(value, tagName, tags) {
|
|
3838
3838
|
if (tagName) {
|
|
@@ -3842,7 +3842,7 @@ function findTagObject(value, tagName, tags) {
|
|
|
3842
3842
|
throw new Error(`Tag ${tagName} not found`);
|
|
3843
3843
|
return tagObj;
|
|
3844
3844
|
}
|
|
3845
|
-
return tags.find(t => _optionalChain$
|
|
3845
|
+
return tags.find(t => _optionalChain$w([t, 'access', _ => _.identify, 'optionalCall', _2 => _2(value)]) && !t.format);
|
|
3846
3846
|
}
|
|
3847
3847
|
function createNode(value, tagName, ctx) {
|
|
3848
3848
|
if (isDocument(value))
|
|
@@ -3850,7 +3850,7 @@ function createNode(value, tagName, ctx) {
|
|
|
3850
3850
|
if (isNode(value))
|
|
3851
3851
|
return value;
|
|
3852
3852
|
if (isPair(value)) {
|
|
3853
|
-
const map = _optionalChain$
|
|
3853
|
+
const map = _optionalChain$w([ctx, 'access', _3 => _3.schema, 'access', _4 => _4[MAP], 'access', _5 => _5.createNode, 'optionalCall', _6 => _6(ctx.schema, null, ctx)]);
|
|
3854
3854
|
map.items.push(value);
|
|
3855
3855
|
return map;
|
|
3856
3856
|
}
|
|
@@ -3877,7 +3877,7 @@ function createNode(value, tagName, ctx) {
|
|
|
3877
3877
|
sourceObjects.set(value, ref);
|
|
3878
3878
|
}
|
|
3879
3879
|
}
|
|
3880
|
-
if (_optionalChain$
|
|
3880
|
+
if (_optionalChain$w([tagName, 'optionalAccess', _7 => _7.startsWith, 'call', _8 => _8('!!')]))
|
|
3881
3881
|
tagName = defaultTagPrefix + tagName.slice(2);
|
|
3882
3882
|
let tagObj = findTagObject(value, tagName, schema.tags);
|
|
3883
3883
|
if (!tagObj) {
|
|
@@ -3902,9 +3902,9 @@ function createNode(value, tagName, ctx) {
|
|
|
3902
3902
|
onTagObj(tagObj);
|
|
3903
3903
|
delete ctx.onTagObj;
|
|
3904
3904
|
}
|
|
3905
|
-
const node = _optionalChain$
|
|
3905
|
+
const node = _optionalChain$w([tagObj, 'optionalAccess', _9 => _9.createNode])
|
|
3906
3906
|
? tagObj.createNode(ctx.schema, value, ctx)
|
|
3907
|
-
: typeof _optionalChain$
|
|
3907
|
+
: typeof _optionalChain$w([tagObj, 'optionalAccess', _10 => _10.nodeClass, 'optionalAccess', _11 => _11.from]) === 'function'
|
|
3908
3908
|
? tagObj.nodeClass.from(ctx.schema, value, ctx)
|
|
3909
3909
|
: new Scalar(value);
|
|
3910
3910
|
if (tagName)
|
|
@@ -4222,7 +4222,7 @@ function consumeMoreIndentedLines(text, i, indent) {
|
|
|
4222
4222
|
return end;
|
|
4223
4223
|
}
|
|
4224
4224
|
|
|
4225
|
-
function _optionalChain$
|
|
4225
|
+
function _optionalChain$v(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
4226
4226
|
const getFoldOptions = (ctx, isBlock) => ({
|
|
4227
4227
|
indentAtStart: isBlock ? ctx.indent.length : ctx.indentAtStart,
|
|
4228
4228
|
lineWidth: ctx.options.lineWidth,
|
|
@@ -4507,9 +4507,9 @@ function plainString(item, ctx, onComment, onChompKeep) {
|
|
|
4507
4507
|
// booleans get parsed with those types in v1.2 (e.g. '42', 'true' & '0.9e-3'),
|
|
4508
4508
|
// and others in v1.1.
|
|
4509
4509
|
if (actualString) {
|
|
4510
|
-
const test = (tag) => tag.default && tag.tag !== 'tag:yaml.org,2002:str' && _optionalChain$
|
|
4510
|
+
const test = (tag) => tag.default && tag.tag !== 'tag:yaml.org,2002:str' && _optionalChain$v([tag, 'access', _ => _.test, 'optionalAccess', _2 => _2.test, 'call', _3 => _3(str)]);
|
|
4511
4511
|
const { compat, tags } = ctx.doc.schema;
|
|
4512
|
-
if (tags.some(test) || _optionalChain$
|
|
4512
|
+
if (tags.some(test) || _optionalChain$v([compat, 'optionalAccess', _4 => _4.some, 'call', _5 => _5(test)]))
|
|
4513
4513
|
return quotedString(value, ctx);
|
|
4514
4514
|
}
|
|
4515
4515
|
return implicitKey
|
|
@@ -4555,7 +4555,7 @@ function stringifyString(item, ctx, onComment, onChompKeep) {
|
|
|
4555
4555
|
return res;
|
|
4556
4556
|
}
|
|
4557
4557
|
|
|
4558
|
-
function _nullishCoalesce$9(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain$
|
|
4558
|
+
function _nullishCoalesce$9(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain$u(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
4559
4559
|
function createStringifyContext(doc, options) {
|
|
4560
4560
|
const opt = Object.assign({
|
|
4561
4561
|
blockQuote: true,
|
|
@@ -4608,7 +4608,7 @@ function getTagObject(tags, item) {
|
|
|
4608
4608
|
let obj;
|
|
4609
4609
|
if (isScalar(item)) {
|
|
4610
4610
|
obj = item.value;
|
|
4611
|
-
let match = tags.filter(t => _optionalChain$
|
|
4611
|
+
let match = tags.filter(t => _optionalChain$u([t, 'access', _ => _.identify, 'optionalCall', _2 => _2(obj)]));
|
|
4612
4612
|
if (match.length > 1) {
|
|
4613
4613
|
const testMatch = match.filter(t => t.test);
|
|
4614
4614
|
if (testMatch.length > 0)
|
|
@@ -4622,7 +4622,7 @@ function getTagObject(tags, item) {
|
|
|
4622
4622
|
tagObj = tags.find(t => t.nodeClass && obj instanceof t.nodeClass);
|
|
4623
4623
|
}
|
|
4624
4624
|
if (!tagObj) {
|
|
4625
|
-
const name = _nullishCoalesce$9(_optionalChain$
|
|
4625
|
+
const name = _nullishCoalesce$9(_optionalChain$u([obj, 'optionalAccess', _3 => _3.constructor, 'optionalAccess', _4 => _4.name]), () => ( (obj === null ? 'null' : typeof obj)));
|
|
4626
4626
|
throw new Error(`Tag not resolved for ${name} value`);
|
|
4627
4627
|
}
|
|
4628
4628
|
return tagObj;
|
|
@@ -4648,7 +4648,7 @@ function stringify(item, ctx, onComment, onChompKeep) {
|
|
|
4648
4648
|
if (isAlias(item)) {
|
|
4649
4649
|
if (ctx.doc.directives)
|
|
4650
4650
|
return item.toString(ctx);
|
|
4651
|
-
if (_optionalChain$
|
|
4651
|
+
if (_optionalChain$u([ctx, 'access', _5 => _5.resolvedAliases, 'optionalAccess', _6 => _6.has, 'call', _7 => _7(item)])) {
|
|
4652
4652
|
throw new TypeError(`Cannot stringify circular structure without alias nodes`);
|
|
4653
4653
|
}
|
|
4654
4654
|
else {
|
|
@@ -4830,7 +4830,7 @@ function warn(logLevel, warning) {
|
|
|
4830
4830
|
}
|
|
4831
4831
|
}
|
|
4832
4832
|
|
|
4833
|
-
function _optionalChain$
|
|
4833
|
+
function _optionalChain$t(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
4834
4834
|
// If the value associated with a merge key is a single mapping node, each of
|
|
4835
4835
|
// its key/value pairs is inserted into the current mapping, unless the key
|
|
4836
4836
|
// already exists in it. If the value associated with the merge key is a
|
|
@@ -4854,7 +4854,7 @@ const isMergeKey = (ctx, key) => (merge.identify(key) ||
|
|
|
4854
4854
|
(isScalar(key) &&
|
|
4855
4855
|
(!key.type || key.type === Scalar.PLAIN) &&
|
|
4856
4856
|
merge.identify(key.value))) &&
|
|
4857
|
-
_optionalChain$
|
|
4857
|
+
_optionalChain$t([ctx, 'optionalAccess', _ => _.doc, 'access', _2 => _2.schema, 'access', _3 => _3.tags, 'access', _4 => _4.some, 'call', _5 => _5(tag => tag.tag === merge.tag && tag.default)]);
|
|
4858
4858
|
function addMergeToJSMap(ctx, map, value) {
|
|
4859
4859
|
const source = resolveAliasValue(ctx, value);
|
|
4860
4860
|
if (isSeq(source))
|
|
@@ -4894,7 +4894,7 @@ function resolveAliasValue(ctx, value) {
|
|
|
4894
4894
|
return ctx && isAlias(value) ? value.resolve(ctx.doc, ctx) : value;
|
|
4895
4895
|
}
|
|
4896
4896
|
|
|
4897
|
-
function _optionalChain$
|
|
4897
|
+
function _optionalChain$s(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
4898
4898
|
function addPairToJSMap(ctx, map, { key, value }) {
|
|
4899
4899
|
if (isNode(key) && key.addToJSMap)
|
|
4900
4900
|
key.addToJSMap(ctx, map, value);
|
|
@@ -4931,7 +4931,7 @@ function stringifyKey(key, jsKey, ctx) {
|
|
|
4931
4931
|
// eslint-disable-next-line @typescript-eslint/no-base-to-string
|
|
4932
4932
|
if (typeof jsKey !== 'object')
|
|
4933
4933
|
return String(jsKey);
|
|
4934
|
-
if (isNode(key) && _optionalChain$
|
|
4934
|
+
if (isNode(key) && _optionalChain$s([ctx, 'optionalAccess', _ => _.doc])) {
|
|
4935
4935
|
const strCtx = createStringifyContext(ctx.doc, {});
|
|
4936
4936
|
strCtx.anchors = new Set();
|
|
4937
4937
|
for (const node of ctx.anchors.keys())
|
|
@@ -4951,7 +4951,7 @@ function stringifyKey(key, jsKey, ctx) {
|
|
|
4951
4951
|
return JSON.stringify(jsKey);
|
|
4952
4952
|
}
|
|
4953
4953
|
|
|
4954
|
-
function _optionalChain$
|
|
4954
|
+
function _optionalChain$r(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
4955
4955
|
function createPair(key, value, ctx) {
|
|
4956
4956
|
const k = createNode(key, undefined, ctx);
|
|
4957
4957
|
const v = createNode(value, undefined, ctx);
|
|
@@ -4972,17 +4972,17 @@ class Pair {
|
|
|
4972
4972
|
return new Pair(key, value);
|
|
4973
4973
|
}
|
|
4974
4974
|
toJSON(_, ctx) {
|
|
4975
|
-
const pair = _optionalChain$
|
|
4975
|
+
const pair = _optionalChain$r([ctx, 'optionalAccess', _2 => _2.mapAsMap]) ? new Map() : {};
|
|
4976
4976
|
return addPairToJSMap(ctx, pair, this);
|
|
4977
4977
|
}
|
|
4978
4978
|
toString(ctx, onComment, onChompKeep) {
|
|
4979
|
-
return _optionalChain$
|
|
4979
|
+
return _optionalChain$r([ctx, 'optionalAccess', _3 => _3.doc])
|
|
4980
4980
|
? stringifyPair(this, ctx, onComment, onChompKeep)
|
|
4981
4981
|
: JSON.stringify(this);
|
|
4982
4982
|
}
|
|
4983
4983
|
}
|
|
4984
4984
|
|
|
4985
|
-
function _nullishCoalesce$7(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain$
|
|
4985
|
+
function _nullishCoalesce$7(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain$q(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
4986
4986
|
function stringifyCollection(collection, ctx, options) {
|
|
4987
4987
|
const flow = _nullishCoalesce$7(ctx.inFlow, () => ( collection.flow));
|
|
4988
4988
|
const stringify = flow ? stringifyFlowCollection : stringifyBlockCollection;
|
|
@@ -5076,7 +5076,7 @@ function stringifyFlowCollection({ items }, ctx, { flowChars, itemIndent }) {
|
|
|
5076
5076
|
if (iv.commentBefore)
|
|
5077
5077
|
reqNewline = true;
|
|
5078
5078
|
}
|
|
5079
|
-
else if (item.value == null && _optionalChain$
|
|
5079
|
+
else if (item.value == null && _optionalChain$q([ik, 'optionalAccess', _ => _.comment])) {
|
|
5080
5080
|
comment = ik.comment;
|
|
5081
5081
|
}
|
|
5082
5082
|
}
|
|
@@ -5131,7 +5131,7 @@ function addCommentBefore({ indent, options: { commentString } }, lines, comment
|
|
|
5131
5131
|
}
|
|
5132
5132
|
}
|
|
5133
5133
|
|
|
5134
|
-
function _nullishCoalesce$6(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain$
|
|
5134
|
+
function _nullishCoalesce$6(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain$p(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
5135
5135
|
function findPair(items, key) {
|
|
5136
5136
|
const k = isScalar(key) ? key.value : key;
|
|
5137
5137
|
for (const it of items) {
|
|
@@ -5192,12 +5192,12 @@ class YAMLMap extends Collection {
|
|
|
5192
5192
|
_pair = pair;
|
|
5193
5193
|
else if (!pair || typeof pair !== 'object' || !('key' in pair)) {
|
|
5194
5194
|
// In TypeScript, this never happens.
|
|
5195
|
-
_pair = new Pair(pair, _optionalChain$
|
|
5195
|
+
_pair = new Pair(pair, _optionalChain$p([pair, 'optionalAccess', _2 => _2.value]));
|
|
5196
5196
|
}
|
|
5197
5197
|
else
|
|
5198
5198
|
_pair = new Pair(pair.key, pair.value);
|
|
5199
5199
|
const prev = findPair(this.items, _pair.key);
|
|
5200
|
-
const sortEntries = _optionalChain$
|
|
5200
|
+
const sortEntries = _optionalChain$p([this, 'access', _3 => _3.schema, 'optionalAccess', _4 => _4.sortMapEntries]);
|
|
5201
5201
|
if (prev) {
|
|
5202
5202
|
if (!overwrite)
|
|
5203
5203
|
throw new Error(`Key ${_pair.key} already set`);
|
|
@@ -5227,7 +5227,7 @@ class YAMLMap extends Collection {
|
|
|
5227
5227
|
}
|
|
5228
5228
|
get(key, keepScalar) {
|
|
5229
5229
|
const it = findPair(this.items, key);
|
|
5230
|
-
const node = _optionalChain$
|
|
5230
|
+
const node = _optionalChain$p([it, 'optionalAccess', _5 => _5.value]);
|
|
5231
5231
|
return _nullishCoalesce$6((!keepScalar && isScalar(node) ? node.value : node), () => ( undefined));
|
|
5232
5232
|
}
|
|
5233
5233
|
has(key) {
|
|
@@ -5242,8 +5242,8 @@ class YAMLMap extends Collection {
|
|
|
5242
5242
|
* @returns Instance of Type, Map, or Object
|
|
5243
5243
|
*/
|
|
5244
5244
|
toJSON(_, ctx, Type) {
|
|
5245
|
-
const map = Type ? new Type() : _optionalChain$
|
|
5246
|
-
if (_optionalChain$
|
|
5245
|
+
const map = Type ? new Type() : _optionalChain$p([ctx, 'optionalAccess', _6 => _6.mapAsMap]) ? new Map() : {};
|
|
5246
|
+
if (_optionalChain$p([ctx, 'optionalAccess', _7 => _7.onCreate]))
|
|
5247
5247
|
ctx.onCreate(map);
|
|
5248
5248
|
for (const item of this.items)
|
|
5249
5249
|
addPairToJSMap(ctx, map, item);
|
|
@@ -5268,7 +5268,7 @@ class YAMLMap extends Collection {
|
|
|
5268
5268
|
}
|
|
5269
5269
|
}
|
|
5270
5270
|
|
|
5271
|
-
function _optionalChain$
|
|
5271
|
+
function _optionalChain$o(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
5272
5272
|
class YAMLSeq extends Collection {
|
|
5273
5273
|
static get tagName() {
|
|
5274
5274
|
return 'tag:yaml.org,2002:seq';
|
|
@@ -5331,7 +5331,7 @@ class YAMLSeq extends Collection {
|
|
|
5331
5331
|
}
|
|
5332
5332
|
toJSON(_, ctx) {
|
|
5333
5333
|
const seq = [];
|
|
5334
|
-
if (_optionalChain$
|
|
5334
|
+
if (_optionalChain$o([ctx, 'optionalAccess', _2 => _2.onCreate]))
|
|
5335
5335
|
ctx.onCreate(seq);
|
|
5336
5336
|
let i = 0;
|
|
5337
5337
|
for (const item of this.items)
|
|
@@ -5410,7 +5410,7 @@ function createPairs(schema, iterable, ctx) {
|
|
|
5410
5410
|
return pairs;
|
|
5411
5411
|
}
|
|
5412
5412
|
|
|
5413
|
-
function _optionalChain$
|
|
5413
|
+
function _optionalChain$n(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
5414
5414
|
class YAMLOMap extends YAMLSeq {
|
|
5415
5415
|
constructor() {
|
|
5416
5416
|
super();
|
|
@@ -5429,7 +5429,7 @@ class YAMLOMap extends YAMLSeq {
|
|
|
5429
5429
|
if (!ctx)
|
|
5430
5430
|
return super.toJSON(_);
|
|
5431
5431
|
const map = new Map();
|
|
5432
|
-
if (_optionalChain$
|
|
5432
|
+
if (_optionalChain$n([ctx, 'optionalAccess', _2 => _2.onCreate]))
|
|
5433
5433
|
ctx.onCreate(map);
|
|
5434
5434
|
for (const pair of this.items) {
|
|
5435
5435
|
let key, value;
|
|
@@ -5547,7 +5547,7 @@ const isDirExists = async (file) => {
|
|
|
5547
5547
|
}
|
|
5548
5548
|
};
|
|
5549
5549
|
|
|
5550
|
-
function _optionalChain$
|
|
5550
|
+
function _optionalChain$m(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }// ABOUTME: Project type detection utility
|
|
5551
5551
|
|
|
5552
5552
|
/**
|
|
5553
5553
|
* 支持的项目类型枚举
|
|
@@ -5649,7 +5649,7 @@ const collectProjectInfo = async (
|
|
|
5649
5649
|
}
|
|
5650
5650
|
|
|
5651
5651
|
const scripts = Object.entries(
|
|
5652
|
-
(_optionalChain$
|
|
5652
|
+
(_optionalChain$m([packageJson, 'optionalAccess', _ => _.scripts]) ) || {},
|
|
5653
5653
|
).reduce((acc, [name, script]) => {
|
|
5654
5654
|
if (typeof script === 'string') {
|
|
5655
5655
|
acc[name] = script;
|
|
@@ -5803,7 +5803,7 @@ const detectProjectType = async (
|
|
|
5803
5803
|
};
|
|
5804
5804
|
};
|
|
5805
5805
|
|
|
5806
|
-
function _optionalChain$
|
|
5806
|
+
function _optionalChain$l(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
5807
5807
|
|
|
5808
5808
|
|
|
5809
5809
|
/**
|
|
@@ -5970,13 +5970,13 @@ const getDefaultCommandConfig = (
|
|
|
5970
5970
|
) => {
|
|
5971
5971
|
switch (commandName) {
|
|
5972
5972
|
case 'dev':
|
|
5973
|
-
return _optionalChain$
|
|
5973
|
+
return _optionalChain$l([config, 'access', _ => _.dev, 'optionalAccess', _2 => _2.run]);
|
|
5974
5974
|
case 'build':
|
|
5975
|
-
return _optionalChain$
|
|
5975
|
+
return _optionalChain$l([config, 'access', _3 => _3.deploy, 'optionalAccess', _4 => _4.build]);
|
|
5976
5976
|
case 'start':
|
|
5977
|
-
return _optionalChain$
|
|
5977
|
+
return _optionalChain$l([config, 'access', _5 => _5.deploy, 'optionalAccess', _6 => _6.run]);
|
|
5978
5978
|
case 'validate':
|
|
5979
|
-
return _optionalChain$
|
|
5979
|
+
return _optionalChain$l([config, 'access', _7 => _7.dev, 'optionalAccess', _8 => _8.validate]);
|
|
5980
5980
|
default:
|
|
5981
5981
|
throw new Error(`Unknown command: ${commandName}`);
|
|
5982
5982
|
}
|
|
@@ -5988,13 +5988,13 @@ const getWindowsCommandConfig = (
|
|
|
5988
5988
|
) => {
|
|
5989
5989
|
switch (commandName) {
|
|
5990
5990
|
case 'dev':
|
|
5991
|
-
return _optionalChain$
|
|
5991
|
+
return _optionalChain$l([config, 'access', _9 => _9.dev, 'optionalAccess', _10 => _10.run_win]);
|
|
5992
5992
|
case 'build':
|
|
5993
|
-
return _optionalChain$
|
|
5993
|
+
return _optionalChain$l([config, 'access', _11 => _11.deploy, 'optionalAccess', _12 => _12.build_win]);
|
|
5994
5994
|
case 'start':
|
|
5995
|
-
return _optionalChain$
|
|
5995
|
+
return _optionalChain$l([config, 'access', _13 => _13.deploy, 'optionalAccess', _14 => _14.run_win]);
|
|
5996
5996
|
case 'validate':
|
|
5997
|
-
return _optionalChain$
|
|
5997
|
+
return _optionalChain$l([config, 'access', _15 => _15.dev, 'optionalAccess', _16 => _16.validate_win]);
|
|
5998
5998
|
default:
|
|
5999
5999
|
throw new Error(`Unknown command: ${commandName}`);
|
|
6000
6000
|
}
|
|
@@ -6019,7 +6019,7 @@ const getCommandConfig = (
|
|
|
6019
6019
|
platform === 'win32'
|
|
6020
6020
|
? getWindowsCommandConfig(config, commandName)
|
|
6021
6021
|
: undefined;
|
|
6022
|
-
const commandConfig = _optionalChain$
|
|
6022
|
+
const commandConfig = _optionalChain$l([windowsCommandConfig, 'optionalAccess', _17 => _17.length])
|
|
6023
6023
|
? windowsCommandConfig
|
|
6024
6024
|
: defaultCommandConfig;
|
|
6025
6025
|
|
|
@@ -6168,7 +6168,7 @@ const byFlag = (flag) => {
|
|
|
6168
6168
|
return predicate;
|
|
6169
6169
|
};
|
|
6170
6170
|
|
|
6171
|
-
function _optionalChain$
|
|
6171
|
+
function _optionalChain$k(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
6172
6172
|
|
|
6173
6173
|
|
|
6174
6174
|
|
|
@@ -6199,7 +6199,7 @@ echo "Validate passed!"
|
|
|
6199
6199
|
* @returns
|
|
6200
6200
|
*/
|
|
6201
6201
|
const isCozeValid$3 = (cozeConfig) => {
|
|
6202
|
-
if (_optionalChain$
|
|
6202
|
+
if (_optionalChain$k([cozeConfig, 'access', _ => _.dev, 'optionalAccess', _2 => _2.validate])) {
|
|
6203
6203
|
logger.info('[patch-expo-validate] NOT APPLY: dev.validate exists');
|
|
6204
6204
|
return false;
|
|
6205
6205
|
}
|
|
@@ -6344,7 +6344,7 @@ const patchExpoValidate = {
|
|
|
6344
6344
|
},
|
|
6345
6345
|
};
|
|
6346
6346
|
|
|
6347
|
-
function _optionalChain$
|
|
6347
|
+
function _optionalChain$j(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
6348
6348
|
|
|
6349
6349
|
|
|
6350
6350
|
|
|
@@ -6377,7 +6377,7 @@ echo "Validate passed!"
|
|
|
6377
6377
|
* @returns
|
|
6378
6378
|
*/
|
|
6379
6379
|
const isCozeValid$2 = (cozeConfig) => {
|
|
6380
|
-
if (_optionalChain$
|
|
6380
|
+
if (_optionalChain$j([cozeConfig, 'access', _ => _.dev, 'optionalAccess', _2 => _2.validate])) {
|
|
6381
6381
|
logger.info('[patch-nextjs-validate] NOT APPLY: dev.validate exists');
|
|
6382
6382
|
return false;
|
|
6383
6383
|
}
|
|
@@ -6525,7 +6525,7 @@ const patchNextjsValidate = {
|
|
|
6525
6525
|
},
|
|
6526
6526
|
};
|
|
6527
6527
|
|
|
6528
|
-
function _optionalChain$
|
|
6528
|
+
function _optionalChain$i(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
6529
6529
|
|
|
6530
6530
|
const PATCH_ID$5 = 'nextjs/validate-concurrently@0.0.30';
|
|
6531
6531
|
const PACKAGE_JSON_FILE$3 = 'package.json';
|
|
@@ -6558,7 +6558,7 @@ const readPackageJson = async (projectFolder) => {
|
|
|
6558
6558
|
};
|
|
6559
6559
|
|
|
6560
6560
|
const getTargetValidateScript = (packageJson) => {
|
|
6561
|
-
const validateScript = _optionalChain$
|
|
6561
|
+
const validateScript = _optionalChain$i([packageJson, 'access', _ => _.scripts, 'optionalAccess', _2 => _2.validate]);
|
|
6562
6562
|
if (typeof validateScript !== 'string') {
|
|
6563
6563
|
return null;
|
|
6564
6564
|
}
|
|
@@ -6575,7 +6575,7 @@ const getTargetValidateScript = (packageJson) => {
|
|
|
6575
6575
|
|
|
6576
6576
|
const canStackAfterNextjsValidatePatch = async (context, packageJson) => {
|
|
6577
6577
|
const scripts = packageJson.scripts || {};
|
|
6578
|
-
if (typeof scripts.validate !== 'undefined' || typeof scripts['ts-check'] !== 'string' || _optionalChain$
|
|
6578
|
+
if (typeof scripts.validate !== 'undefined' || typeof scripts['ts-check'] !== 'string' || _optionalChain$i([context, 'access', _3 => _3.cozeConfig, 'access', _4 => _4.dev, 'optionalAccess', _5 => _5.validate])) {
|
|
6579
6579
|
return false;
|
|
6580
6580
|
}
|
|
6581
6581
|
|
|
@@ -6644,7 +6644,7 @@ const patchNextjsValidateConcurrently = {
|
|
|
6644
6644
|
apply: patchPackageJson$2,
|
|
6645
6645
|
};
|
|
6646
6646
|
|
|
6647
|
-
function _optionalChain$
|
|
6647
|
+
function _optionalChain$h(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
6648
6648
|
|
|
6649
6649
|
|
|
6650
6650
|
|
|
@@ -6677,7 +6677,7 @@ echo "Validate passed!"
|
|
|
6677
6677
|
* @returns
|
|
6678
6678
|
*/
|
|
6679
6679
|
const isCozeValid$1 = (cozeConfig) => {
|
|
6680
|
-
if (_optionalChain$
|
|
6680
|
+
if (_optionalChain$h([cozeConfig, 'access', _ => _.dev, 'optionalAccess', _2 => _2.validate])) {
|
|
6681
6681
|
logger.info('[patch-vite-validate] NOT APPLY: dev.validate exists');
|
|
6682
6682
|
return false;
|
|
6683
6683
|
}
|
|
@@ -6822,7 +6822,7 @@ const patchViteValidate = {
|
|
|
6822
6822
|
},
|
|
6823
6823
|
};
|
|
6824
6824
|
|
|
6825
|
-
function _optionalChain$
|
|
6825
|
+
function _optionalChain$g(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
6826
6826
|
|
|
6827
6827
|
|
|
6828
6828
|
|
|
@@ -6859,7 +6859,7 @@ echo "Validate passed!"
|
|
|
6859
6859
|
* @returns
|
|
6860
6860
|
*/
|
|
6861
6861
|
const isCozeValid = (cozeConfig) => {
|
|
6862
|
-
if (_optionalChain$
|
|
6862
|
+
if (_optionalChain$g([cozeConfig, 'access', _ => _.dev, 'optionalAccess', _2 => _2.validate])) {
|
|
6863
6863
|
logger.info('[patch-taro-validate] NOT APPLY: dev.validate exists');
|
|
6864
6864
|
return false;
|
|
6865
6865
|
}
|
|
@@ -7008,7 +7008,7 @@ const patchTaroValidate = {
|
|
|
7008
7008
|
},
|
|
7009
7009
|
};
|
|
7010
7010
|
|
|
7011
|
-
function _optionalChain$
|
|
7011
|
+
function _optionalChain$f(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
7012
7012
|
const PATCH_ID$2 = 'taro/update-pack-script-for-tt-build@0.0.13';
|
|
7013
7013
|
const PACKAGE_JSON_FILE = 'package.json';
|
|
7014
7014
|
const PACK_SCRIPT_FILE = '.cozeproj/scripts/pack.sh';
|
|
@@ -7087,12 +7087,12 @@ const readPackageScripts = async (
|
|
|
7087
7087
|
const packageJsonContent = await fs$1.readFile(packageJsonPath, 'utf-8');
|
|
7088
7088
|
const packageJson = safeJsonParse(packageJsonContent, null);
|
|
7089
7089
|
|
|
7090
|
-
return _optionalChain$
|
|
7090
|
+
return _optionalChain$f([packageJson, 'optionalAccess', _ => _.scripts]) || null;
|
|
7091
7091
|
};
|
|
7092
7092
|
|
|
7093
7093
|
const hasBuildTtScript = async (projectFolder) => {
|
|
7094
7094
|
const scripts = await readPackageScripts(projectFolder);
|
|
7095
|
-
return typeof _optionalChain$
|
|
7095
|
+
return typeof _optionalChain$f([scripts, 'optionalAccess', _2 => _2['build:tt']]) === 'string';
|
|
7096
7096
|
};
|
|
7097
7097
|
|
|
7098
7098
|
const hasLegacyPackScript = async (projectFolder) => {
|
|
@@ -7446,7 +7446,7 @@ const getTemplatePatches = (
|
|
|
7446
7446
|
) =>
|
|
7447
7447
|
patches.filter(patch => patch.template === template);
|
|
7448
7448
|
|
|
7449
|
-
function _nullishCoalesce$5(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain$
|
|
7449
|
+
function _nullishCoalesce$5(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain$e(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
7450
7450
|
const DEFAULT_LEGACY_VERSION = 'legacy';
|
|
7451
7451
|
|
|
7452
7452
|
const loadFlagsWithFallback = async () => {
|
|
@@ -7552,7 +7552,7 @@ const getNextPatchState = (
|
|
|
7552
7552
|
|
|
7553
7553
|
) => ({
|
|
7554
7554
|
template,
|
|
7555
|
-
version: _optionalChain$
|
|
7555
|
+
version: _optionalChain$e([config, 'access', _ => _.project, 'optionalAccess', _2 => _2.version]) || DEFAULT_LEGACY_VERSION,
|
|
7556
7556
|
appliedPatches: [...appliedPatches, patchId],
|
|
7557
7557
|
});
|
|
7558
7558
|
|
|
@@ -7576,15 +7576,15 @@ const executePatch = async (
|
|
|
7576
7576
|
}
|
|
7577
7577
|
|
|
7578
7578
|
const template =
|
|
7579
|
-
_optionalChain$
|
|
7579
|
+
_optionalChain$e([config, 'access', _3 => _3.project, 'optionalAccess', _4 => _4.template]) || (await detectTemplateKey(projectFolder));
|
|
7580
7580
|
|
|
7581
7581
|
if (!template) {
|
|
7582
7582
|
logger.info('Patch skipped: template not detected');
|
|
7583
7583
|
return;
|
|
7584
7584
|
}
|
|
7585
7585
|
|
|
7586
|
-
const appliedPatches = [...(_optionalChain$
|
|
7587
|
-
const projectVersion = _optionalChain$
|
|
7586
|
+
const appliedPatches = [...(_optionalChain$e([config, 'access', _5 => _5.project, 'optionalAccess', _6 => _6.appliedPatches]) || [])];
|
|
7587
|
+
const projectVersion = _optionalChain$e([config, 'access', _7 => _7.project, 'optionalAccess', _8 => _8.version]);
|
|
7588
7588
|
const flags = await loadFlagsWithFallback();
|
|
7589
7589
|
|
|
7590
7590
|
const context = {
|
|
@@ -7687,14 +7687,14 @@ const registerCommand$5 = program => {
|
|
|
7687
7687
|
) => {
|
|
7688
7688
|
await executePatch({
|
|
7689
7689
|
directory,
|
|
7690
|
-
dryRun: _optionalChain$
|
|
7691
|
-
showFlags: _optionalChain$
|
|
7690
|
+
dryRun: _optionalChain$e([command, 'optionalAccess', _9 => _9.dryRun]),
|
|
7691
|
+
showFlags: _optionalChain$e([command, 'optionalAccess', _10 => _10.showFlags]),
|
|
7692
7692
|
});
|
|
7693
7693
|
},
|
|
7694
7694
|
);
|
|
7695
7695
|
};
|
|
7696
7696
|
|
|
7697
|
-
function _nullishCoalesce$4(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain$
|
|
7697
|
+
function _nullishCoalesce$4(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain$d(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
7698
7698
|
const d$1 = debug('coze-init-cli:run');
|
|
7699
7699
|
|
|
7700
7700
|
/**
|
|
@@ -7825,12 +7825,12 @@ const executeRun = async (commandName, options = {}) => {
|
|
|
7825
7825
|
}
|
|
7826
7826
|
|
|
7827
7827
|
// 将输出同时写入控制台和日志文件
|
|
7828
|
-
_optionalChain$
|
|
7828
|
+
_optionalChain$d([childProcess, 'access', _ => _.stdout, 'optionalAccess', _2 => _2.on, 'call', _3 => _3('data', (data) => {
|
|
7829
7829
|
process.stdout.write(data);
|
|
7830
7830
|
logStream.write(data);
|
|
7831
7831
|
})]);
|
|
7832
7832
|
|
|
7833
|
-
_optionalChain$
|
|
7833
|
+
_optionalChain$d([childProcess, 'access', _4 => _4.stderr, 'optionalAccess', _5 => _5.on, 'call', _6 => _6('data', (data) => {
|
|
7834
7834
|
process.stderr.write(data);
|
|
7835
7835
|
logStream.write(data);
|
|
7836
7836
|
})]);
|
|
@@ -8774,7 +8774,7 @@ const scanRoutesOnce = async (
|
|
|
8774
8774
|
}
|
|
8775
8775
|
};
|
|
8776
8776
|
|
|
8777
|
-
function _optionalChain$
|
|
8777
|
+
function _optionalChain$c(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }// Route manifest generation command
|
|
8778
8778
|
|
|
8779
8779
|
|
|
8780
8780
|
const log = debug('coze:routes');
|
|
@@ -8875,7 +8875,7 @@ const registerCommand$3 = program => {
|
|
|
8875
8875
|
'Output file path (defaults to ~/.coze/routes.json)',
|
|
8876
8876
|
)
|
|
8877
8877
|
.action(async (directory, options) => {
|
|
8878
|
-
await executeRoutes({ directory, output: _optionalChain$
|
|
8878
|
+
await executeRoutes({ directory, output: _optionalChain$c([options, 'optionalAccess', _ => _.output]) });
|
|
8879
8879
|
});
|
|
8880
8880
|
};
|
|
8881
8881
|
|
|
@@ -10466,7 +10466,7 @@ const withRequestedApplicationType = (
|
|
|
10466
10466
|
};
|
|
10467
10467
|
};
|
|
10468
10468
|
|
|
10469
|
-
function _optionalChain$
|
|
10469
|
+
function _optionalChain$b(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
10470
10470
|
|
|
10471
10471
|
const DEFAULT_CONFIG = {
|
|
10472
10472
|
apiBaseUrl: 'https://code.coze.cn/',
|
|
@@ -10495,7 +10495,7 @@ const readJson = async (path) => {
|
|
|
10495
10495
|
};
|
|
10496
10496
|
|
|
10497
10497
|
const configuredPath = (options) =>
|
|
10498
|
-
_optionalChain$
|
|
10498
|
+
_optionalChain$b([options, 'optionalAccess', _ => _.config]) || process.env.COZE_CONFIG_FILE;
|
|
10499
10499
|
|
|
10500
10500
|
const loadConfig = async (options = {}) => {
|
|
10501
10501
|
const customPath = configuredPath(options);
|
|
@@ -10850,7 +10850,7 @@ const loginWithOAuth = async (
|
|
|
10850
10850
|
await saveOAuthToken(config, options, await pollToken(config, deviceCode));
|
|
10851
10851
|
};
|
|
10852
10852
|
|
|
10853
|
-
function _optionalChain$
|
|
10853
|
+
function _optionalChain$a(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
10854
10854
|
|
|
10855
10855
|
|
|
10856
10856
|
|
|
@@ -10916,10 +10916,10 @@ const unwrap = (
|
|
|
10916
10916
|
responseMetadata,
|
|
10917
10917
|
) => {
|
|
10918
10918
|
const root = isRecord(payload) ? payload : undefined;
|
|
10919
|
-
const first = isRecord(_optionalChain$
|
|
10920
|
-
const second = isRecord(_optionalChain$
|
|
10919
|
+
const first = isRecord(_optionalChain$a([root, 'optionalAccess', _ => _.data])) ? root.data : undefined;
|
|
10920
|
+
const second = isRecord(_optionalChain$a([first, 'optionalAccess', _2 => _2.data])) ? first.data : undefined;
|
|
10921
10921
|
const envelope = [root, first].find(candidate => candidate && 'code' in candidate);
|
|
10922
|
-
if (_optionalChain$
|
|
10922
|
+
if (_optionalChain$a([envelope, 'optionalAccess', _3 => _3.code]) !== undefined && Number(envelope.code) !== 0) {
|
|
10923
10923
|
throw new CliError(
|
|
10924
10924
|
typeof envelope.msg === 'string'
|
|
10925
10925
|
? envelope.msg.slice(0, MAX_MESSAGE_LENGTH)
|
|
@@ -10983,7 +10983,7 @@ class DeployApiClient {
|
|
|
10983
10983
|
if (cozeAccount) {
|
|
10984
10984
|
headers['x-coze-account'] = cozeAccount;
|
|
10985
10985
|
}
|
|
10986
|
-
const lane = _optionalChain$
|
|
10986
|
+
const lane = _optionalChain$a([this, 'access', _4 => _4.globalOptions, 'access', _5 => _5.lane, 'optionalAccess', _6 => _6.trim, 'call', _7 => _7()]) || _optionalChain$a([this, 'access', _8 => _8.config, 'access', _9 => _9.xTTEnv, 'optionalAccess', _10 => _10.trim, 'call', _11 => _11()]);
|
|
10987
10987
|
if (lane) {
|
|
10988
10988
|
headers['x-use-ppe'] = '1';
|
|
10989
10989
|
headers['x-tt-env'] = lane;
|
|
@@ -11014,7 +11014,7 @@ class DeployApiClient {
|
|
|
11014
11014
|
if (!response.ok) {
|
|
11015
11015
|
const root = isRecord(payload) ? payload : undefined;
|
|
11016
11016
|
throw new CliError(
|
|
11017
|
-
typeof _optionalChain$
|
|
11017
|
+
typeof _optionalChain$a([root, 'optionalAccess', _12 => _12.msg]) === 'string'
|
|
11018
11018
|
? root.msg.slice(0, MAX_MESSAGE_LENGTH)
|
|
11019
11019
|
: `Deployment API failed: ${response.status} ${response.statusText}` +
|
|
11020
11020
|
`${validJson ? '' : '; response was not JSON'}`,
|
|
@@ -11047,6 +11047,17 @@ class DeployApiClient {
|
|
|
11047
11047
|
);
|
|
11048
11048
|
}
|
|
11049
11049
|
|
|
11050
|
+
// 回读当前登录态对应的 Coze 账号 id。无入参:账号由服务端从登录态解析(X-Coze-Account →
|
|
11051
|
+
// access token → 兜底登录用户),客户端传什么都只有「等于登录态」一种合法取值。
|
|
11052
|
+
// 只在建 Project 前用一次,用来定这个 Project 下应用的账号归属。
|
|
11053
|
+
getCozeAccount() {
|
|
11054
|
+
return this.post(
|
|
11055
|
+
'/account/get',
|
|
11056
|
+
{},
|
|
11057
|
+
'coze_account_id',
|
|
11058
|
+
);
|
|
11059
|
+
}
|
|
11060
|
+
|
|
11050
11061
|
listSpaces(body
|
|
11051
11062
|
|
|
11052
11063
|
|
|
@@ -11481,7 +11492,7 @@ const registerDoctor = (program) => {
|
|
|
11481
11492
|
});
|
|
11482
11493
|
};
|
|
11483
11494
|
|
|
11484
|
-
function _optionalChain$
|
|
11495
|
+
function _optionalChain$9(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
11485
11496
|
|
|
11486
11497
|
|
|
11487
11498
|
|
|
@@ -11512,13 +11523,66 @@ function _optionalChain$7(ops) { let lastAccessLHS = undefined; let value = ops[
|
|
|
11512
11523
|
|
|
11513
11524
|
|
|
11514
11525
|
const getDeployParentOptions = (command) =>
|
|
11515
|
-
_optionalChain$
|
|
11526
|
+
_optionalChain$9([command, 'access', _ => _.parent, 'optionalAccess', _2 => _2.opts, 'call', _3 => _3()]) || {};
|
|
11516
11527
|
|
|
11517
11528
|
const getDeployAppIdOption = (
|
|
11518
11529
|
options,
|
|
11519
11530
|
command,
|
|
11520
11531
|
) => options.appId || getDeployParentOptions(command).appId;
|
|
11521
11532
|
|
|
11533
|
+
function _optionalChain$8(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } async function _asyncOptionalChain$1(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = await fn(value); } else if (op === 'call' || op === 'optionalCall') { value = await fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
11534
|
+
|
|
11535
|
+
const isAccountId = (value) => /^[1-9]\d*$/u.test(value);
|
|
11536
|
+
|
|
11537
|
+
/**
|
|
11538
|
+
* 定出这个 Project 下的应用该归属哪个 Coze 账号,写进 project_settings.extra.coze_account_id。
|
|
11539
|
+
*
|
|
11540
|
+
* 优先级(与 api-client 里 x-coze-account 的取值顺序一致,不另立一套口径):
|
|
11541
|
+
* 1. COZE_ACCOUNT_ID(config.cozeAccountId)—— 用户显式指定
|
|
11542
|
+
* 2. COZE_ORG_ID / --org-id(config.organizationId)—— 用户显式指定组织
|
|
11543
|
+
* 3. 登录态回读(deploy v2 account/get)
|
|
11544
|
+
*
|
|
11545
|
+
* ⚠️ 1、2 命中时**不打接口**:本地已经知道账号了,再问一次服务端只是多一个 RTT 和一个失败点。
|
|
11546
|
+
*
|
|
11547
|
+
* 拿不到就返回 undefined(不写 extra),部署照常继续:服务端在 deploy_history/create 里仍会
|
|
11548
|
+
* 按同一条阶梯解析账号,结果与不加这段逻辑时完全一致 —— 只是无登录态的预览初始化那条链路
|
|
11549
|
+
* 少了 Project 上这份归属记录。这是一个辅助接口,不该成为首次部署的单点。
|
|
11550
|
+
*/
|
|
11551
|
+
const resolveCozeAccountId = async (
|
|
11552
|
+
runtime,
|
|
11553
|
+
) => {
|
|
11554
|
+
const configured =
|
|
11555
|
+
_optionalChain$8([runtime, 'access', _ => _.config, 'access', _2 => _2.cozeAccountId, 'optionalAccess', _3 => _3.trim, 'call', _4 => _4()]) || _optionalChain$8([runtime, 'access', _5 => _5.config, 'access', _6 => _6.organizationId, 'optionalAccess', _7 => _7.trim, 'call', _8 => _8()]);
|
|
11556
|
+
if (configured) {
|
|
11557
|
+
if (!isAccountId(configured)) {
|
|
11558
|
+
// 不把非法值写进 Project —— 它会被服务端当成「明确但损坏的归属」直接报错。
|
|
11559
|
+
// 该值仍会作为 x-coze-account 发出去,由服务端给出明确的参数错误。
|
|
11560
|
+
runtime.output.debug(
|
|
11561
|
+
`[deploy] Ignoring malformed Coze account id for project settings: ${configured}`,
|
|
11562
|
+
);
|
|
11563
|
+
return undefined;
|
|
11564
|
+
}
|
|
11565
|
+
runtime.output.debug(`[deploy] Using configured Coze account ${configured}`);
|
|
11566
|
+
return configured;
|
|
11567
|
+
}
|
|
11568
|
+
try {
|
|
11569
|
+
const accountId = await _asyncOptionalChain$1([(await runtime.client.getCozeAccount()), 'access', async _9 => _9.coze_account_id, 'optionalAccess', async _10 => _10.trim, 'call', async _11 => _11()]);
|
|
11570
|
+
if (!accountId || !isAccountId(accountId)) {
|
|
11571
|
+
runtime.output.debug(
|
|
11572
|
+
`[deploy] Deployment API returned no usable Coze account id: ${String(accountId)}`,
|
|
11573
|
+
);
|
|
11574
|
+
return undefined;
|
|
11575
|
+
}
|
|
11576
|
+
runtime.output.debug(`[deploy] Resolved Coze account ${accountId} from the current login`);
|
|
11577
|
+
return accountId;
|
|
11578
|
+
} catch (error) {
|
|
11579
|
+
runtime.output.warn(
|
|
11580
|
+
`Unable to resolve the Coze account from the current login; the project will be created without an explicit account: ${String(error)}`,
|
|
11581
|
+
);
|
|
11582
|
+
return undefined;
|
|
11583
|
+
}
|
|
11584
|
+
};
|
|
11585
|
+
|
|
11522
11586
|
const getCreateDeployConfig = (config) => ({
|
|
11523
11587
|
deploy_config: {
|
|
11524
11588
|
cpu: config.deploy_config.cpu,
|
|
@@ -11552,20 +11616,31 @@ const STATUS_NAMES = {
|
|
|
11552
11616
|
[DEPLOY_STATUS.preDeploy]: 'WaitingForUpload',
|
|
11553
11617
|
};
|
|
11554
11618
|
|
|
11619
|
+
/**
|
|
11620
|
+
* 终态 = 不会再变了。
|
|
11621
|
+
*
|
|
11622
|
+
* ⚠️ `interrupted(6)` **不是**终态,别再往这里加。它是过程态:服务端某条流水线自身轮询超时时,
|
|
11623
|
+
* 会把整次部署标成 Interrupted 并安排稍后重新触发(`base_pipe.NewInterruptedResult`),之后仍
|
|
11624
|
+
* 会推进到 Succeeded。安卓构建 10 分钟起步,几乎必然经过至少一次 Interrupted —— 把它当终态会
|
|
11625
|
+
* 让 `deploy --wait` 在构建中途就收工返回,此时 APK 还没产出,`mobile_artifact_list` 是空的。
|
|
11626
|
+
*/
|
|
11555
11627
|
const TERMINAL_STATUSES = new Set([
|
|
11556
11628
|
DEPLOY_STATUS.succeeded,
|
|
11557
11629
|
DEPLOY_STATUS.failed,
|
|
11558
11630
|
DEPLOY_STATUS.canceled,
|
|
11559
|
-
DEPLOY_STATUS.interrupted,
|
|
11560
11631
|
]);
|
|
11561
11632
|
|
|
11562
11633
|
const getDeployStatusText = (status) =>
|
|
11563
11634
|
status ? STATUS_NAMES[status] || 'Unknown' : 'Unknown';
|
|
11564
11635
|
|
|
11565
|
-
|
|
11636
|
+
/** 这次部署的结果是否已经定下来了(到了终态就不会再变)。 */
|
|
11637
|
+
const isDeploymentSettled = (status) =>
|
|
11638
|
+
status !== undefined && TERMINAL_STATUSES.has(status);
|
|
11639
|
+
|
|
11640
|
+
function _optionalChain$7(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
11566
11641
|
|
|
11567
11642
|
const formatDeployDetails = (history) =>
|
|
11568
|
-
(_optionalChain$
|
|
11643
|
+
(_optionalChain$7([history, 'optionalAccess', _ => _.deploy_detail]) || []).map(detail => ({
|
|
11569
11644
|
target: detail.target,
|
|
11570
11645
|
status: getDeployStatusText(detail.status),
|
|
11571
11646
|
deploy_log_key: detail.deploy_log_key,
|
|
@@ -11575,7 +11650,7 @@ const formatDeployDetails = (history) =>
|
|
|
11575
11650
|
const getDeployLogKeys = (history) =>
|
|
11576
11651
|
[...new Set(
|
|
11577
11652
|
(history.deploy_detail || [])
|
|
11578
|
-
.map(detail => _optionalChain$
|
|
11653
|
+
.map(detail => _optionalChain$7([detail, 'access', _2 => _2.deploy_log_key, 'optionalAccess', _3 => _3.trim, 'call', _4 => _4()]))
|
|
11579
11654
|
.filter((key) => Boolean(key)),
|
|
11580
11655
|
)];
|
|
11581
11656
|
|
|
@@ -11590,7 +11665,7 @@ const resolveDeployHistoryId = (
|
|
|
11590
11665
|
) =>
|
|
11591
11666
|
normalizePositiveId(deployHistoryId) || normalizePositiveId(previousDeployHistoryId);
|
|
11592
11667
|
|
|
11593
|
-
function _optionalChain$
|
|
11668
|
+
function _optionalChain$6(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
11594
11669
|
|
|
11595
11670
|
const SOURCE_SNAPSHOT_BYTES = 20;
|
|
11596
11671
|
const PROJECT_METADATA_FILE_MODE = 0o644;
|
|
@@ -11600,7 +11675,7 @@ const isId = (value) =>
|
|
|
11600
11675
|
|
|
11601
11676
|
|
|
11602
11677
|
const resolveAppId = async (cwd, appId) => {
|
|
11603
|
-
const explicit = _optionalChain$
|
|
11678
|
+
const explicit = _optionalChain$6([appId, 'optionalAccess', _ => _.trim, 'call', _2 => _2()]);
|
|
11604
11679
|
if (explicit) {
|
|
11605
11680
|
return explicit;
|
|
11606
11681
|
}
|
|
@@ -11646,11 +11721,11 @@ const readProjectMetadata = async (
|
|
|
11646
11721
|
}
|
|
11647
11722
|
throw error;
|
|
11648
11723
|
}
|
|
11649
|
-
const projectSection = _optionalChain$
|
|
11724
|
+
const projectSection = _optionalChain$6([cozeFileContent, 'access', _3 => _3.match, 'call', _4 => _4(
|
|
11650
11725
|
/^\s*\[project\]\s*(?:#.*)?$([\s\S]*?)(?=^\s*\[[^\]]+\]\s*(?:#.*)?$|(?![\s\S]))/mu,
|
|
11651
11726
|
), 'optionalAccess', _5 => _5[1]]);
|
|
11652
11727
|
const readProjectString = (key) =>
|
|
11653
|
-
_optionalChain$
|
|
11728
|
+
_optionalChain$6([projectSection
|
|
11654
11729
|
, 'optionalAccess', _6 => _6.match, 'call', _7 => _7(new RegExp(`^\\s*${key}\\s*=\\s*["']([^"']+)["']`, 'mu')), 'optionalAccess', _8 => _8[1]
|
|
11655
11730
|
, 'optionalAccess', _9 => _9.trim, 'call', _10 => _10()]);
|
|
11656
11731
|
const name = readProjectString('name');
|
|
@@ -11658,7 +11733,7 @@ const readProjectMetadata = async (
|
|
|
11658
11733
|
const projectId = readProjectString('project_id');
|
|
11659
11734
|
const appId = readProjectString('app_id');
|
|
11660
11735
|
const hasUnquotedId = (key) =>
|
|
11661
|
-
Boolean(_optionalChain$
|
|
11736
|
+
Boolean(_optionalChain$6([projectSection, 'optionalAccess', _11 => _11.match, 'call', _12 => _12(new RegExp(`^\\s*${key}\\s*=\\s*(?!["'])\\S+`, 'mu'))]));
|
|
11662
11737
|
if (hasUnquotedId('project_id') || hasUnquotedId('app_id')) {
|
|
11663
11738
|
throw new CliError(
|
|
11664
11739
|
'.coze [project].project_id and app_id must be quoted decimal strings.',
|
|
@@ -11683,7 +11758,7 @@ const updateProjectValue = (content, key, value) => {
|
|
|
11683
11758
|
const sectionStart = sectionMatch.index + sectionMatch[0].length;
|
|
11684
11759
|
const following = content.slice(sectionStart);
|
|
11685
11760
|
const nextSection = /^\s*\[[^\]]+\]\s*(?:#.*)?$/mu.exec(following);
|
|
11686
|
-
const sectionEnd = _optionalChain$
|
|
11761
|
+
const sectionEnd = _optionalChain$6([nextSection, 'optionalAccess', _13 => _13.index]) === undefined
|
|
11687
11762
|
? content.length
|
|
11688
11763
|
: sectionStart + nextSection.index;
|
|
11689
11764
|
const before = content.slice(0, sectionStart);
|
|
@@ -11737,8 +11812,8 @@ const ensureProjectMetadata = async (
|
|
|
11737
11812
|
throw error;
|
|
11738
11813
|
}
|
|
11739
11814
|
}
|
|
11740
|
-
const name = _optionalChain$
|
|
11741
|
-
const projectType = _optionalChain$
|
|
11815
|
+
const name = _optionalChain$6([options, 'access', _14 => _14.name, 'optionalAccess', _15 => _15.trim, 'call', _16 => _16()]) || 'Pages application';
|
|
11816
|
+
const projectType = _optionalChain$6([options, 'access', _17 => _17.projectType, 'optionalAccess', _18 => _18.trim, 'call', _19 => _19()]) || 'web';
|
|
11742
11817
|
await promises.writeFile(
|
|
11743
11818
|
node_path.join(sourceRoot, '.coze'),
|
|
11744
11819
|
`[project]\nname = ${JSON.stringify(name)}\nproject_type = ${JSON.stringify(projectType)}\n`,
|
|
@@ -11748,7 +11823,7 @@ const ensureProjectMetadata = async (
|
|
|
11748
11823
|
return readProjectMetadata(sourceRoot);
|
|
11749
11824
|
};
|
|
11750
11825
|
|
|
11751
|
-
function _optionalChain$
|
|
11826
|
+
function _optionalChain$5(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
11752
11827
|
const isFile = async (path) => {
|
|
11753
11828
|
try {
|
|
11754
11829
|
return (await promises.stat(path)).isFile();
|
|
@@ -11778,14 +11853,14 @@ const validatePagesSource = async (
|
|
|
11778
11853
|
);
|
|
11779
11854
|
}
|
|
11780
11855
|
const project = config.project ;
|
|
11781
|
-
if (typeof _optionalChain$
|
|
11856
|
+
if (typeof _optionalChain$5([project, 'optionalAccess', _ => _.template]) !== 'string' || project.template.trim().toLowerCase() !== 'nextjs') {
|
|
11782
11857
|
throw new CliError(
|
|
11783
11858
|
'Pages source contains no index.html; .coze project.template must be "nextjs".',
|
|
11784
11859
|
'PAGES_BUILD_CONFIG_REQUIRED',
|
|
11785
11860
|
);
|
|
11786
11861
|
}
|
|
11787
11862
|
const deploy = config.deploy ;
|
|
11788
|
-
const build = _optionalChain$
|
|
11863
|
+
const build = _optionalChain$5([deploy, 'optionalAccess', _2 => _2.build]);
|
|
11789
11864
|
if (!Array.isArray(build) || build.length === 0 || !build.every(part => typeof part === 'string' && part.length > 0)) {
|
|
11790
11865
|
throw new CliError(
|
|
11791
11866
|
'Pages source contains no index.html; .coze deploy.build must be a non-empty string array.',
|
|
@@ -11826,6 +11901,27 @@ const readDeployLocalContext = async (
|
|
|
11826
11901
|
return { ...sourceSnapshot, metadata, isPagesDeployment };
|
|
11827
11902
|
};
|
|
11828
11903
|
|
|
11904
|
+
function _optionalChain$4(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
11905
|
+
|
|
11906
|
+
/**
|
|
11907
|
+
* 把 `mobile_artifact_list` 连同「这个空数组到底什么意思」一起输出。
|
|
11908
|
+
*
|
|
11909
|
+
* 产物是部署过程中逐步落库的:APK 要等安卓构建跑完才写进去,比部署记录本身晚好几分钟。部署没到
|
|
11910
|
+
* 终态时,空的 `mobile_artifact_list` 只代表「还没产出来」,不代表「没有产物」—— 可这两种情况在
|
|
11911
|
+
* 输出里长得一模一样,调用方(尤其是 agent)会把前者读成后者,然后得出「部署成功但系统没返回
|
|
11912
|
+
* APK 下载地址」这种错误结论。线上真发生过。
|
|
11913
|
+
*
|
|
11914
|
+
* 所以未定终态时额外带一个 `artifacts_pending: true`;这个字段不出现,就表示这份列表已经是最终
|
|
11915
|
+
* 结果。`mobile_artifact_list` 本身保持恒存在,避免破坏已有脚本的读法。
|
|
11916
|
+
*/
|
|
11917
|
+
const mobileArtifactsOutput = (
|
|
11918
|
+
history,
|
|
11919
|
+
status = _optionalChain$4([history, 'optionalAccess', _ => _.status]),
|
|
11920
|
+
) => ({
|
|
11921
|
+
mobile_artifact_list: _optionalChain$4([history, 'optionalAccess', _2 => _2.mobile_artifact_list]) || [],
|
|
11922
|
+
...(isDeploymentSettled(status) ? {} : { artifacts_pending: true }),
|
|
11923
|
+
});
|
|
11924
|
+
|
|
11829
11925
|
// 服务端 deploy_app/list 的 page_size 上限,超了会被判参数错误。
|
|
11830
11926
|
// 客户端先拦一道,是为了把错误说在本地(带上上限值),而不是回一句服务端的通用参数错误。
|
|
11831
11927
|
const APP_LIST_MAX_PAGE_SIZE = 100;
|
|
@@ -11942,7 +12038,7 @@ const registerDeployReadCommands = (deploy) => {
|
|
|
11942
12038
|
error_analysis: history.error_analysis,
|
|
11943
12039
|
deploy_detail: formatDeployDetails(history),
|
|
11944
12040
|
connector_data_list: history.connector_data_list || [],
|
|
11945
|
-
|
|
12041
|
+
...mobileArtifactsOutput(history),
|
|
11946
12042
|
});
|
|
11947
12043
|
});
|
|
11948
12044
|
|
|
@@ -11972,7 +12068,7 @@ const registerDeployReadCommands = (deploy) => {
|
|
|
11972
12068
|
can_rollback: item.can_rollback,
|
|
11973
12069
|
deploy_detail: formatDeployDetails(item),
|
|
11974
12070
|
connector_data_list: item.connector_data_list || [],
|
|
11975
|
-
|
|
12071
|
+
...mobileArtifactsOutput(item),
|
|
11976
12072
|
})),
|
|
11977
12073
|
next_page_token: data.next_page_token,
|
|
11978
12074
|
has_more: data.has_more,
|
|
@@ -11997,7 +12093,7 @@ const registerDeployReadCommands = (deploy) => {
|
|
|
11997
12093
|
created_at: item.created_at,
|
|
11998
12094
|
deploy_detail: formatDeployDetails(item),
|
|
11999
12095
|
domains: item.domain_list || [],
|
|
12000
|
-
|
|
12096
|
+
...mobileArtifactsOutput(item),
|
|
12001
12097
|
})),
|
|
12002
12098
|
});
|
|
12003
12099
|
});
|
|
@@ -12440,6 +12536,16 @@ function _optionalChain$2(ops) { let lastAccessLHS = undefined; let value = ops[
|
|
|
12440
12536
|
const POLL_INTERVAL_MS = 3000;
|
|
12441
12537
|
const MAX_CONSECUTIVE_RETRIES = 5;
|
|
12442
12538
|
const TRANSIENT_RPC_ERROR_CODE = 230000001;
|
|
12539
|
+
/**
|
|
12540
|
+
* `--wait` 的总时长上限。
|
|
12541
|
+
*
|
|
12542
|
+
* Interrupted 不再算终态(见 status.ts),轮询只能靠这个兜底,否则一次卡住的部署会把 CLI
|
|
12543
|
+
* 永远挂在这里。取 60min 是照安卓构建定的:实测 10 分钟起步,中途还会经历若干次
|
|
12544
|
+
* Interrupted → 重新触发。
|
|
12545
|
+
*/
|
|
12546
|
+
const POLL_TIMEOUT_MS = 3600000; // 60min
|
|
12547
|
+
/** 心跳间隔:text 模式下每隔这么久报一次「还在跑」,免得长构建看起来像挂死。 */
|
|
12548
|
+
const HEARTBEAT_MS = 30000;
|
|
12443
12549
|
|
|
12444
12550
|
const wait = async () =>
|
|
12445
12551
|
new Promise(resolve => setTimeout(resolve, POLL_INTERVAL_MS));
|
|
@@ -12453,11 +12559,15 @@ const pollHistory = async (
|
|
|
12453
12559
|
command,
|
|
12454
12560
|
appId,
|
|
12455
12561
|
deployHistoryId,
|
|
12562
|
+
timeoutMs = POLL_TIMEOUT_MS,
|
|
12456
12563
|
) => {
|
|
12457
12564
|
const runtime = await getRuntime(command);
|
|
12458
12565
|
const startedAt = Date.now();
|
|
12459
12566
|
let consecutiveFailures = 0;
|
|
12567
|
+
let lastStatus;
|
|
12568
|
+
let lastBeatAt = startedAt;
|
|
12460
12569
|
while (true) {
|
|
12570
|
+
const elapsed = () => Math.floor((Date.now() - startedAt) / 1000);
|
|
12461
12571
|
try {
|
|
12462
12572
|
const history = await runtime.client.getDeployHistory({
|
|
12463
12573
|
app_id: appId,
|
|
@@ -12466,11 +12576,21 @@ const pollHistory = async (
|
|
|
12466
12576
|
consecutiveFailures = 0;
|
|
12467
12577
|
const status = getDeployStatusText(history.status);
|
|
12468
12578
|
runtime.output.debug(
|
|
12469
|
-
`[deploy] History ${deployHistoryId}: ${status} (${String(
|
|
12579
|
+
`[deploy] History ${deployHistoryId}: ${status} (${String(elapsed())}s elapsed)`,
|
|
12470
12580
|
);
|
|
12471
12581
|
if (history.status && TERMINAL_STATUSES.has(history.status)) {
|
|
12472
12582
|
return history;
|
|
12473
12583
|
}
|
|
12584
|
+
// 长构建(安卓十几分钟)期间给点动静:状态一变就报,否则每 30s 报一次还活着。
|
|
12585
|
+
// output.info 只在 text 模式写 stderr,json 模式是 no-op,不会污染机器可读输出。
|
|
12586
|
+
if (history.status !== lastStatus) {
|
|
12587
|
+
lastStatus = history.status;
|
|
12588
|
+
lastBeatAt = Date.now();
|
|
12589
|
+
runtime.output.info(`[deploy] ${status} (${String(elapsed())}s)`);
|
|
12590
|
+
} else if (Date.now() - lastBeatAt >= HEARTBEAT_MS) {
|
|
12591
|
+
lastBeatAt = Date.now();
|
|
12592
|
+
runtime.output.info(`[deploy] still ${status} (${String(elapsed())}s)`);
|
|
12593
|
+
}
|
|
12474
12594
|
} catch (error) {
|
|
12475
12595
|
if (!isRetryablePollError(error) || consecutiveFailures >= MAX_CONSECUTIVE_RETRIES) {
|
|
12476
12596
|
throw error;
|
|
@@ -12480,6 +12600,15 @@ const pollHistory = async (
|
|
|
12480
12600
|
`[deploy] Status check failed transiently; retrying (${String(consecutiveFailures)}/${String(MAX_CONSECUTIVE_RETRIES)}).`,
|
|
12481
12601
|
);
|
|
12482
12602
|
}
|
|
12603
|
+
if (Date.now() - startedAt >= timeoutMs) {
|
|
12604
|
+
throw new CliError(
|
|
12605
|
+
`Timed out after ${String(elapsed())}s waiting for deployment ${deployHistoryId}; ` +
|
|
12606
|
+
`last status: ${getDeployStatusText(lastStatus)}. The deployment may still be running — ` +
|
|
12607
|
+
'check it with `deploy code status`.',
|
|
12608
|
+
'DEPLOY_WAIT_TIMEOUT',
|
|
12609
|
+
{ app_id: appId, deploy_history_id: deployHistoryId, last_status: lastStatus },
|
|
12610
|
+
);
|
|
12611
|
+
}
|
|
12483
12612
|
await wait();
|
|
12484
12613
|
}
|
|
12485
12614
|
};
|
|
@@ -13200,12 +13329,18 @@ const registerDeploy = (code) => {
|
|
|
13200
13329
|
runtime.output.debug(
|
|
13201
13330
|
'[deploy] Creating a dedicated deployment project in personal space...',
|
|
13202
13331
|
);
|
|
13332
|
+
// 账号归属只在建 Project 这一次定死:写进 project_settings.extra 之后,有登录态的首次
|
|
13333
|
+
// 部署和无登录态的预览初始化读到的是同一个账号。本地已经知道账号就不打这次接口。
|
|
13334
|
+
const cozeAccountId = await resolveCozeAccountId(runtime);
|
|
13203
13335
|
const project = await runtime.client.createDeploymentProject({
|
|
13204
13336
|
space_id: '0',
|
|
13205
13337
|
user_query: deploymentName || 'CLI deployment project',
|
|
13206
13338
|
project_type: resolveCreationProjectType(metadata.projectType),
|
|
13207
13339
|
create_source: 'cli',
|
|
13208
|
-
project_settings: {
|
|
13340
|
+
project_settings: {
|
|
13341
|
+
project_symbol: 'v3.5',
|
|
13342
|
+
...(cozeAccountId ? { extra: { coze_account_id: cozeAccountId } } : {}),
|
|
13343
|
+
},
|
|
13209
13344
|
});
|
|
13210
13345
|
projectId = project.project_id;
|
|
13211
13346
|
projectCreated = true;
|
|
@@ -13338,16 +13473,19 @@ const registerDeploy = (code) => {
|
|
|
13338
13473
|
const history = options.wait
|
|
13339
13474
|
? await pollHistory(command, result.app_id, deployHistoryId)
|
|
13340
13475
|
: undefined;
|
|
13476
|
+
// 不带 --wait 时 history 是 undefined,产物必然还没落库:这里一定会带上
|
|
13477
|
+
// artifacts_pending,而不是甩一个看起来像「查过了,没有」的空数组出去。
|
|
13478
|
+
const effectiveStatus = _nullishCoalesce(_optionalChain([history, 'optionalAccess', _2 => _2.status]), () => ( result.status));
|
|
13341
13479
|
runtime.output.print({
|
|
13342
13480
|
app_id: result.app_id,
|
|
13343
13481
|
deploy_history_id: deployHistoryId,
|
|
13344
13482
|
version: result.version,
|
|
13345
13483
|
commit_hash: commitHash,
|
|
13346
|
-
status: getDeployStatusText(
|
|
13484
|
+
status: getDeployStatusText(effectiveStatus),
|
|
13347
13485
|
source_package_size_bytes: sourcePackage.sizeBytes,
|
|
13348
13486
|
upload_mode: deployment.uploadMode,
|
|
13349
13487
|
local_link: appId && !projectCreated ? 'unchanged' : 'written',
|
|
13350
|
-
|
|
13488
|
+
...mobileArtifactsOutput(history, effectiveStatus),
|
|
13351
13489
|
});
|
|
13352
13490
|
});
|
|
13353
13491
|
|
|
@@ -13450,7 +13588,7 @@ const registerDeploy = (code) => {
|
|
|
13450
13588
|
.action(async (options, command) => {
|
|
13451
13589
|
const runtime = await getRuntime(command);
|
|
13452
13590
|
const appId = await requireAppId(runtime.cwd, getDeployAppIdOption(options, command));
|
|
13453
|
-
let key = _optionalChain([options, 'access',
|
|
13591
|
+
let key = _optionalChain([options, 'access', _3 => _3.key, 'optionalAccess', _4 => _4.trim, 'call', _5 => _5()]);
|
|
13454
13592
|
if (!key) {
|
|
13455
13593
|
const history = await runtime.client.getDeployHistory({
|
|
13456
13594
|
app_id: appId,
|
|
@@ -13492,7 +13630,7 @@ const registerDeploy = (code) => {
|
|
|
13492
13630
|
const runtime = await getRuntime(command);
|
|
13493
13631
|
const appId = await requireAppId(runtime.cwd, getDeployAppIdOption(options, command));
|
|
13494
13632
|
const application = await runtime.client.getApplication(appId);
|
|
13495
|
-
const commitHash = options.commitId || _optionalChain([application, 'access',
|
|
13633
|
+
const commitHash = options.commitId || _optionalChain([application, 'access', _6 => _6.latest_deployment, 'optionalAccess', _7 => _7.commit_hash]);
|
|
13496
13634
|
if (!commitHash) {
|
|
13497
13635
|
throw new CliError('No deployment commit is available.', 'DEPLOYMENT_NOT_FOUND');
|
|
13498
13636
|
}
|