@workflow/cli 5.0.0-beta.26 → 5.0.0-beta.28
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/dist/base.d.ts.map +1 -1
- package/dist/base.js +8 -2
- package/dist/commands/cancel.d.ts.map +1 -1
- package/dist/commands/cancel.js +52 -9
- package/dist/commands/inspect.d.ts +2 -0
- package/dist/commands/inspect.d.ts.map +1 -1
- package/dist/commands/inspect.js +23 -3
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +8 -3
- package/dist/lib/config/types.d.ts +4 -0
- package/dist/lib/config/types.d.ts.map +1 -1
- package/dist/lib/config/types.js +1 -1
- package/dist/lib/inspect/env.d.ts +1 -1
- package/dist/lib/inspect/env.js +2 -2
- package/dist/lib/inspect/errors.d.ts +3 -0
- package/dist/lib/inspect/errors.d.ts.map +1 -0
- package/dist/lib/inspect/errors.js +27 -0
- package/dist/lib/inspect/output.d.ts +2 -2
- package/dist/lib/inspect/output.d.ts.map +1 -1
- package/dist/lib/inspect/output.js +253 -130
- package/dist/lib/inspect/output.test.js +403 -3
- package/dist/lib/inspect/pagination.d.ts +10 -1
- package/dist/lib/inspect/pagination.d.ts.map +1 -1
- package/dist/lib/inspect/pagination.js +20 -4
- package/dist/lib/inspect/run.d.ts.map +1 -1
- package/dist/lib/inspect/run.js +32 -9
- package/dist/lib/inspect/setup.d.ts.map +1 -1
- package/dist/lib/inspect/setup.js +42 -6
- package/dist/lib/inspect/time-window.d.ts +28 -0
- package/dist/lib/inspect/time-window.d.ts.map +1 -0
- package/dist/lib/inspect/time-window.js +61 -0
- package/dist/lib/inspect/time-window.test.d.ts +2 -0
- package/dist/lib/inspect/time-window.test.d.ts.map +1 -0
- package/dist/lib/inspect/time-window.test.js +58 -0
- package/package.json +9 -9
package/dist/lib/inspect/env.js
CHANGED
|
@@ -12,7 +12,7 @@ import { findRepoRoot, getProjectLink, isOneOfErrNoExceptions, } from './vercel-
|
|
|
12
12
|
* Used by the CLI to configure environment variables that are read by
|
|
13
13
|
* various subsystems (e.g., WORKFLOW_TARGET_WORLD, WORKFLOW_LOCAL_DATA_DIR).
|
|
14
14
|
* Note: WORKFLOW_VERCEL_* env vars are read back via getEnvVars() and passed
|
|
15
|
-
* to
|
|
15
|
+
* to @workflow/world-vercel's createWorld() explicitly — they are NOT read by runtime createWorld().
|
|
16
16
|
*/
|
|
17
17
|
export const writeEnvVars = (envVars) => {
|
|
18
18
|
Object.entries(envVars).forEach(([key, value]) => {
|
|
@@ -223,4 +223,4 @@ export const inferVercelEnvVars = async () => {
|
|
|
223
223
|
teamId: envVars.WORKFLOW_VERCEL_TEAM || undefined,
|
|
224
224
|
};
|
|
225
225
|
};
|
|
226
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9pbnNwZWN0L2Vudi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDMUMsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDMUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDckUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFDTCxZQUFZLEVBQ1osY0FBYyxFQUNkLHNCQUFzQixHQUV2QixNQUFNLGtCQUFrQixDQUFDO0FBRTFCOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxPQUErQixFQUFFLEVBQUU7SUFDOUQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFO1FBQy9DLElBQ0UsS0FBSyxLQUFLLFNBQVM7WUFDbkIsS0FBSyxLQUFLLElBQUk7WUFDZCxLQUFLLEtBQUssRUFBRTtZQUNaLEtBQUssS0FBSyxXQUFXLEVBQ3JCLENBQUM7WUFDRCxPQUFPO1FBQ1QsQ0FBQztRQUNELE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO0lBQzNCLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLEdBQTJCLEVBQUU7SUFDckQs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WSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXRCLE9BQU87UUFDTCxLQUFLLEVBQUUsT0FBTyxDQUFDLDBCQUEwQixJQUFJLFNBQVM7UUFDdEQsV0FBVyxFQUFFLE9BQU8sQ0FBQyxtQkFBbUIsSUFBSSxTQUFTO1FBQ3JELFNBQVMsRUFBRSxPQUFPLENBQUMsdUJBQXVCLElBQUksU0FBUztRQUN2RCxXQUFXLEVBQUUsT0FBTyxDQUFDLDRCQUE0QixJQUFJLFNBQVM7UUFDOUQsTUFBTSxFQUFFLE9BQU8sQ0FBQyxvQkFBb0IsSUFBSSxTQUFTO0tBQ2xELENBQUM7QUFDSixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhY2Nlc3MgfSBmcm9tICdub2RlOmZzL3Byb21pc2VzJztcbmltcG9ydCB7IGpvaW4sIHJlc29sdmUgfSBmcm9tICdub2RlOnBhdGgnO1xuaW1wb3J0IHsgZmluZFdvcmtmbG93RGF0YURpciB9IGZyb20gJ0B3b3JrZmxvdy91dGlscy9jaGVjay1kYXRhLWRpcic7XG5pbXBvcnQgeyBsb2dnZXIgfSBmcm9tICcuLi9jb25maWcvbG9nLmpzJztcbmltcG9ydCB7IGdldFdvcmtmbG93Q29uZmlnIH0gZnJvbSAnLi4vY29uZmlnL3dvcmtmbG93LWNvbmZpZy5qcyc7XG5pbXBvcnQgeyBnZXRBdXRoVG9rZW4gfSBmcm9tICcuL2F1dGguanMnO1xuaW1wb3J0IHsgZmV0Y2hUZWFtSW5mbyB9IGZyb20gJy4vdmVyY2VsLWFwaS5qcyc7XG5pbXBvcnQge1xuICBmaW5kUmVwb1Jvb3QsXG4gIGdldFByb2plY3RMaW5rLFxuICBpc09uZU9mRXJyTm9FeGNlcHRpb25zLFxuICB0eXBlIFByb2plY3RMaW5rLFxufSBmcm9tICcuL3ZlcmNlbC1saW5rLmpzJztcblxuLyoqXG4gKiBPdmVyd3JpdGUgdmFsdWVzIG9uIHByb2Nlc3MuZW52IHdpdGggdGhlIGdpdmVuIHZhbHVlcyAoaWYgbm90IHVuZGVmaW5lZClcbiAqXG4gKiBVc2VkIGJ5IHRoZSBDTEkgdG8gY29uZmlndXJlIGVudmlyb25tZW50IHZhcmlhYmxlcyB0aGF0IGFyZSByZWFkIGJ5XG4gKiB2YXJpb3VzIHN1YnN5c3RlbXMgKGUuZy4sIFdPUktGTE9XX1RBUkdFVF9XT1JMRCwgV09SS0ZMT1dfTE9DQUxfREFUQV9ESVIpLlxuICogTm90ZTogV09SS0ZMT1dfVkVSQ0VMXyogZW52IHZhcnMgYXJlIHJlYWQgYmFjayB2aWEgZ2V0RW52VmFycygpIGFuZCBwYXNzZWRcbiAqIHRvIGNyZWF0ZVZlcmNlbFdvcmxkKCkgZXhwbGljaXRseSDigJQgdGhleSBhcmUgTk9UIHJlYWQgYnkgY3JlYXRlV29ybGQoKS5cbiAqL1xuZXhwb3J0IGNvbnN0IHdyaXRlRW52VmFycyA9IChlbnZWYXJzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+KSA9PiB7XG4gIE9iamVjdC5lbnRyaWVzKGVudlZhcnMpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgIGlmIChcbiAgICAgIHZhbHVlID09PSB1bmRlZmluZWQgfHxcbiAgICAgIHZhbHVlID09PSBudWxsIHx8XG4gICAgICB2YWx1ZSA9PT0gJycgfHxcbiAgICAgIHZhbHVlID09PSAndW5kZWZpbmVkJ1xuICAgICkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBwcm9jZXNzLmVudltrZXldID0gdmFsdWU7XG4gIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldEVudlZhcnMgPSAoKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9PiB7XG4gIGNvbnN0IGVudiA9IHByb2Nlc3MuZW52O1xuICByZXR1cm4ge1xuICAgIFdPUktGTE9XX1RBUkdFVF9XT1JMRDogZW52LldPUktGTE9XX1RBUkdFVF9XT1JMRCB8fCAnJyxcbiAgICBXT1JLRkxPV19WRVJDRUxfRU5WOiBlbnYuV09SS0ZMT1dfVkVSQ0VMX0VOViB8fCAnJyxcbiAgICBXT1JLRkxPV19WRVJDRUxfQVVUSF9UT0tFTjogZW52LldPUktGTE9XX1ZFUkNFTF9BVVRIX1RPS0VOIHx8ICcnLFxuICAgIFdPUktGTE9XX1ZFUkNFTF9QUk9KRUNUOiBlbnYuV09SS0ZMT1dfVkVSQ0VMX1BST0pFQ1QgfHwgJycsXG4gICAgV09SS0ZMT1dfVkVSQ0VMX1BST0pFQ1RfTkFNRTogZW52LldPUktGTE9XX1ZFUkNFTF9QUk9KRUNUX05BTUUgfHwgJycsXG4gICAgV09SS0ZMT1dfVkVSQ0VMX1RFQU06IGVudi5XT1JLRkxPV19WRVJDRUxfVEVBTSB8fCAnJyxcbiAgICBXT1JLRkxPV19MT0NBTF9CQVNFX1VSTDogZW52LldPUktGTE9XX0xPQ0FMX0JBU0VfVVJMIHx8ICcnLFxuICAgIFdPUktGTE9XX0xPQ0FMX1VJOiBlbnYuV09SS0ZMT1dfTE9DQUxfVUkgfHwgJycsXG4gICAgUE9SVDogZW52LlBPUlQgfHwgJycsXG4gICAgV09SS0ZMT1dfTE9DQUxfREFUQV9ESVI6IGVudi5XT1JLRkxPV19MT0NBTF9EQVRBX0RJUiB8fCAnJyxcbiAgICBXT1JLRkxPV19NQU5JRkVTVF9QQVRIOiBlbnYuV09SS0ZMT1dfTUFOSUZFU1RfUEFUSCB8fCAnJyxcbiAgfTtcbn07XG5cbmNvbnN0IHBvc3NpYmxlTWFuaWZlc3RQYXRocyA9IFtcbiAgJ2FwcC8ud2VsbC1rbm93bi93b3JrZmxvdy92MS9tYW5pZmVzdC5qc29uJyxcbiAgJ3NyYy9hcHAvLndlbGwta25vd24vd29ya2Zsb3cvdjEvbWFuaWZlc3QuanNvbicsXG4gICcud2VsbC1rbm93bi93b3JrZmxvdy92MS9tYW5pZmVzdC5qc29uJyxcbl07XG5cbmFzeW5jIGZ1bmN0aW9uIGZpbmRNYW5pZmVzdFBhdGgoY3dkOiBzdHJpbmcpIHtcbiAgZm9yIChjb25zdCBwYXRoIG9mIHBvc3NpYmxlTWFuaWZlc3RQYXRocykge1xuICAgIGNvbnN0IGZ1bGxQYXRoID0gam9pbihjd2QsIHBhdGgpO1xuICAgIGlmIChcbiAgICAgIGF3YWl0IGFjY2VzcyhmdWxsUGF0aClcbiAgICAgICAgLnRoZW4oKCkgPT4gdHJ1ZSlcbiAgICAgICAgLmNhdGNoKCgpID0+IGZhbHNlKVxuICAgICkge1xuICAgICAgY29uc3QgYWJzb2x1dGVQYXRoID0gcmVzb2x2ZShmdWxsUGF0aCk7XG4gICAgICBsb2dnZXIuZGVidWcoJ0ZvdW5kIHdvcmtmbG93IG1hbmlmZXN0OicsIGFic29sdXRlUGF0aCk7XG4gICAgICByZXR1cm4gYWJzb2x1dGVQYXRoO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIE92ZXJ3cml0ZXMgcHJvY2Vzcy5lbnYgdmFyaWFibGVzIHJlbGF0ZWQgdG8gbG9jYWwgd29ybGQgY29uZmlndXJhdGlvbixcbiAqIGlmIHJlbGV2YW50IGVudmlyb25tZW50IHZhcmlhYmxlcyBhcmVuJ3Qgc2V0IGFscmVhZHkuXG4gKlxuICogVGhyb3dzIGlmIHRoZSB3b3JrZmxvdyBkYXRhIGRpcmVjdG9yeSBjYW4gbm90IGJlIGZvdW5kLlxuICovXG5leHBvcnQgY29uc3QgaW5mZXJMb2NhbFdvcmxkRW52VmFycyA9IGFzeW5jICgpID0+IHtcbiAgY29uc3QgZW52VmFycyA9IGdldEVudlZhcnMoKTtcbiAgY29uc3QgY3dkID0gZ2V0V29ya2Zsb3dDb25maWcoKS53b3JraW5nRGlyO1xuICBsZXQgcmVwb1Jvb3Q6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvLyBBbHdheXMgZXhwb3NlIHRoZSBlZmZlY3RpdmUgd29ya2luZyBkaXJlY3RvcnkgdG8gdGhlIHdlYiBVSS9zZXJ2ZXItc2lkZSBoZWxwZXJzLlxuICAvLyBUaGlzIGlzIGVzcGVjaWFsbHkgdXNlZnVsIHdoZW4gZGV2ZWxvcGluZyB0aGUgd2ViIFVJIGZyb20gdGhlIHdvcmtmbG93IHJlcG9cbiAgLy8gd2hpbGUgdGFyZ2V0aW5nIGFub3RoZXIgcHJvamVjdCBkaXJlY3RvcnkuXG4gIGlmICghcHJvY2Vzcy5lbnYuV09SS0ZMT1dfT0JTRVJWQUJJTElUWV9DV0QpIHtcbiAgICB3cml0ZUVudlZhcnMoeyBXT1JLRkxPV19PQlNFUlZBQklMSVRZX0NXRDogY3dkIH0pO1xuICB9XG5cbiAgLy8gU2V0IGRlZmF1bHQgYmFzZSBVUkwgZm9yIGxvY2FsIHF1ZXVlIGlmIG5vdCBhbHJlYWR5IGNvbmZpZ3VyZWRcbiAgLy8gV2UgdXNlIFdPUktGTE9XX0xPQ0FMX0JBU0VfVVJMIGluc3RlYWQgb2YgUE9SVCB0byBhdm9pZCBjb25mbGljdHNcbiAgLy8gd2l0aCBvdGhlciB0b29scyAobGlrZSBOZXh0LmpzKSB0aGF0IGFsc28gdXNlIHRoZSBQT1JUIGVudiB2YXJcbiAgaWYgKCFlbnZWYXJzLldPUktGTE9XX0xPQ0FMX0JBU0VfVVJMICYmICFlbnZWYXJzLlBPUlQpIHtcbiAgICBsb2dnZXIuZGVidWcoXG4gICAgICAnVXNpbmcgZGVmYXVsdCBxdWV1ZSB0YXJnZXQgaHR0cDovL2xvY2FsaG9zdDozMDAwLCBzZXQgV09SS0ZMT1dfTE9DQUxfQkFTRV9VUkwgb3IgUE9SVCB0byBvdmVycmlkZS4nXG4gICAgKTtcbiAgICBlbnZWYXJzLldPUktGTE9XX0xPQ0FMX0JBU0VfVVJMID0gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwMCc7XG4gICAgd3JpdGVFbnZWYXJzKGVudlZhcnMpO1xuICB9XG5cbiAgLy8gSW5mZXIgd29ya2Zsb3cgZGF0YSBkaXJlY3RvcnlcbiAgaWYgKCFlbnZWYXJzLldPUktGTE9XX0xPQ0FMX0RBVEFfRElSKSB7XG4gICAgY29uc3QgbG9jYWxSZXN1bHQgPSBhd2FpdCBmaW5kV29ya2Zsb3dEYXRhRGlyKGN3ZCk7XG4gICAgaWYgKGxvY2FsUmVzdWx0LmRhdGFEaXIpIHtcbiAgICAgIGxvZ2dlci5kZWJ1ZygnRm91bmQgd29ya2Zsb3cgZGF0YSBkaXJlY3Rvcnk6JywgbG9jYWxSZXN1bHQuZGF0YURpcik7XG4gICAgICBlbnZWYXJzLldPUktGTE9XX0xPQ0FMX0RBVEFfRElSID0gbG9jYWxSZXN1bHQuZGF0YURpcjtcbiAgICAgIHdyaXRlRW52VmFycyhlbnZWYXJzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gQXMgYSBmYWxsYmFjaywgZmluZCB0aGUgcmVwbyByb290LCBhbmQgdHJ5IHRvIGluZmVyIHRoZSBkYXRhIGRpciBmcm9tIHRoZXJlXG4gICAgICByZXBvUm9vdCA9IGF3YWl0IGZpbmRSZXBvUm9vdChjd2QsIGN3ZCk7XG4gICAgICBpZiAocmVwb1Jvb3QpIHtcbiAgICAgICAgY29uc3QgcmVwb1Jlc3VsdCA9IGF3YWl0IGZpbmRXb3JrZmxvd0RhdGFEaXIocmVwb1Jvb3QpO1xuICAgICAgICBpZiAocmVwb1Jlc3VsdC5kYXRhRGlyKSB7XG4gICAgICAgICAgbG9nZ2VyLmRlYnVnKCdGb3VuZCB3b3JrZmxvdyBkYXRhIGRpcmVjdG9yeTonLCByZXBvUmVzdWx0LmRhdGFEaXIpO1xuICAgICAgICAgIGVudlZhcnMuV09SS0ZMT1dfTE9DQUxfREFUQV9ESVIgPSByZXBvUmVzdWx0LmRhdGFEaXI7XG4gICAgICAgICAgd3JpdGVFbnZWYXJzKGVudlZhcnMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAoIWVudlZhcnMuV09SS0ZMT1dfTE9DQUxfREFUQV9ESVIpIHtcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9IGBObyB3b3JrZmxvdyBkYXRhIGRpcmVjdG9yeSBmb3VuZCBpbiBcIiR7Y3dkfVwiLiBIYXZlIHlvdSBydW4gYW55IHdvcmtmbG93cyB5ZXQ/YDtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1lc3NhZ2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEluZmVyIHdvcmtmbG93IG1hbmlmZXN0IHBhdGggKGZvciBHcmFwaCB0YWIgaW4gd2ViIFVJKVxuICBpZiAoIWVudlZhcnMuV09SS0ZMT1dfTUFOSUZFU1RfUEFUSCkge1xuICAgIGNvbnN0IGxvY2FsTWFuaWZlc3QgPSBhd2FpdCBmaW5kTWFuaWZlc3RQYXRoKGN3ZCk7XG4gICAgaWYgKGxvY2FsTWFuaWZlc3QpIHtcbiAgICAgIGVudlZhcnMuV09SS0ZMT1dfTUFOSUZFU1RfUEFUSCA9IGxvY2FsTWFuaWZlc3Q7XG4gICAgICB3cml0ZUVudlZhcnMoZW52VmFycyk7XG4gICAgICBsb2dnZXIuZGVidWcoYEZvdW5kIHdvcmtmbG93IG1hbmlmZXN0IGF0OiAke2xvY2FsTWFuaWZlc3R9YCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEFzIGEgZmFsbGJhY2ssIGZpbmQgdGhlIHJlcG8gcm9vdCwgYW5kIHRyeSB0byBpbmZlciB0aGUgbWFuaWZlc3QgZnJvbSB0aGVyZVxuICAgICAgaWYgKCFyZXBvUm9vdCkge1xuICAgICAgICByZXBvUm9vdCA9IGF3YWl0IGZpbmRSZXBvUm9vdChjd2QsIGN3ZCk7XG4gICAgICB9XG4gICAgICBpZiAocmVwb1Jvb3QpIHtcbiAgICAgICAgY29uc3QgcmVwb01hbmlmZXN0ID0gYXdhaXQgZmluZE1hbmlmZXN0UGF0aChyZXBvUm9vdCk7XG4gICAgICAgIGlmIChyZXBvTWFuaWZlc3QpIHtcbiAgICAgICAgICBlbnZWYXJzLldPUktGTE9XX01BTklGRVNUX1BBVEggPSByZXBvTWFuaWZlc3Q7XG4gICAgICAgICAgd3JpdGVFbnZWYXJzKGVudlZhcnMpO1xuICAgICAgICAgIGxvZ2dlci5kZWJ1ZyhgRm91bmQgd29ya2Zsb3cgbWFuaWZlc3QgYXQ6ICR7cmVwb01hbmlmZXN0fWApO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEl0J3Mgb2theSBpZiBtYW5pZmVzdCBpcyBub3QgZm91bmQgLSB0aGUgd2ViIFVJIHdpbGwganVzdCBzaG93IGVtcHR5IHdvcmtmbG93c1xuICAgICAgaWYgKCFlbnZWYXJzLldPUktGTE9XX01BTklGRVNUX1BBVEgpIHtcbiAgICAgICAgbG9nZ2VyLmRlYnVnKFxuICAgICAgICAgICdObyB3b3JrZmxvdyBtYW5pZmVzdCBmb3VuZC4gV29ya2Zsb3dzIHRhYiB3aWxsIGJlIGVtcHR5LidcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBpbmZlclZlcmNlbFByb2plY3RBbmRUZWFtID0gYXN5bmMgKCkgPT4ge1xuICBjb25zdCBjd2QgPSBnZXRXb3JrZmxvd0NvbmZpZygpLndvcmtpbmdEaXI7XG4gIGxldCBwcm9qZWN0OiBQcm9qZWN0TGluayB8IG51bGwgPSBudWxsO1xuICB0cnkge1xuICAgIGxvZ2dlci5kZWJ1ZyhgSW5mZXJyaW5nIHByb2plY3QgYW5kIHRlYW0gZnJvbSBDV0Q6ICR7Y3dkfWApO1xuICAgIHByb2plY3QgPSBhd2FpdCBnZXRQcm9qZWN0TGluayhjd2QpO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGlmICghaXNPbmVPZkVyck5vRXhjZXB0aW9ucyhlcnJvciwgWydFTk9FTlQnXSkpIHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbiAgfVxuICBpZiAoIXByb2plY3QpIHtcbiAgICBsb2dnZXIuZGVidWcoJ0NvdWxkIG5vdCBmaW5kIHByb2plY3QgbGluayBmb2xkZXInKTtcbiAgICByZXR1cm47XG4gIH1cbiAgbG9nZ2VyLmRlYnVnKGBGb3VuZCBwcm9qZWN0ICR7cHJvamVjdC5wcm9qZWN0SWR9IGFuZCB0ZWFtICR7cHJvamVjdC5vcmdJZH1gKTtcbiAgcmV0dXJuIHtcbiAgICBwcm9qZWN0SWQ6IHByb2plY3QucHJvamVjdElkLFxuICAgIHByb2plY3ROYW1lOiBwcm9qZWN0LnByb2plY3ROYW1lLFxuICAgIHRlYW1JZDogcHJvamVjdC5vcmdJZCxcbiAgfTtcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmVyY2VsRW52VmFycyB7XG4gIHRva2VuPzogc3RyaW5nO1xuICBlbnZpcm9ubWVudD86IHN0cmluZztcbiAgcHJvamVjdElkPzogc3RyaW5nO1xuICBwcm9qZWN0TmFtZT86IHN0cmluZztcbiAgdGVhbUlkPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEluZmVycyBWZXJjZWwgV29ybGQgY29uZmlndXJhdGlvbiBmcm9tIHRoZSBsb2NhbCBlbnZpcm9ubWVudCAoYC52ZXJjZWxgXG4gKiBmb2xkZXIsIENMSSBhdXRoIGZpbGUsIFZlcmNlbCBBUEkpIGFuZCByZXR1cm5zIGEgcmVzb2x2ZWQgY29uZmlnIG9iamVjdC5cbiAqXG4gKiBBbHNvIHdyaXRlcyB0aGUgcmVzb2x2ZWQgdmFsdWVzIHRvIGBwcm9jZXNzLmVudmAgc28gdGhlIGVtYmVkZGVkIHdlYiBVSVxuICogKHdoaWNoIHJlYWRzIGBwcm9jZXNzLmVudmAgYXMgYSBmYWxsYmFjaykgY2FuIHBpY2sgdGhlbSB1cC5cbiAqL1xuZXhwb3J0IGNvbnN0IGluZmVyVmVyY2VsRW52VmFycyA9IGFzeW5jICgpOiBQcm9taXNlPFZlcmNlbEVudlZhcnM+ID0+IHtcbiAgY29uc3QgZW52VmFycyA9IGdldEVudlZhcnMoKTtcblxuICAvLyBJbmZlciBwcm9qZWN0L3RlYW0gZnJvbSAudmVyY2VsIGZvbGRlciB3aGVuOlxuICAvLyAtIFdPUktGTE9XX1ZFUkNFTF9QUk9KRUNUIG9yIFdPUktGTE9XX1ZFUkNFTF9URUFNIGlzIG1pc3NpbmcsIE9SXG4gIC8vIC0gV09SS0ZMT1dfVkVSQ0VMX1BST0pFQ1QgaXMgc2V0IGJ1dCBkb2Vzbid0IGxvb2sgbGlrZSBhIHJlYWwgcHJvamVjdCBJRFxuICAvLyAgIChlLmcuLCB1c2VyIHBhc3NlZCBhIHNsdWcgdmlhIC0tcHJvamVjdCBmbGFnKSwgT1JcbiAgLy8gLSBXT1JLRkxPV19WRVJDRUxfUFJPSkVDVF9OQU1FIGlzIG1pc3NpbmcgKG5lZWQgdG8gcG9wdWxhdGUgdGhlIHNsdWcpXG4gIGNvbnN0IG5lZWRzSW5mZXJlbmNlID1cbiAgICAhZW52VmFycy5XT1JLRkxPV19WRVJDRUxfUFJPSkVDVCB8fFxuICAgICFlbnZWYXJzLldPUktGTE9XX1ZFUkNFTF9URUFNIHx8XG4gICAgIWVudlZhcnMuV09SS0ZMT1dfVkVSQ0VMX1BST0pFQ1RfTkFNRSB8fFxuICAgICFlbnZWYXJzLldPUktGTE9XX1ZFUkNFTF9QUk9KRUNULnN0YXJ0c1dpdGgoJ3Byal8nKTtcblxuICBpZiAobmVlZHNJbmZlcmVuY2UpIHtcbiAgICBsb2dnZXIuZGVidWcoJ0luZmVycmluZyB2ZXJjZWwgcHJvamVjdCBhbmQgdGVhbSBmcm9tIC52ZXJjZWwgZm9sZGVyJyk7XG4gICAgY29uc3QgaW5mZXJyZWRQcm9qZWN0ID0gYXdhaXQgaW5mZXJWZXJjZWxQcm9qZWN0QW5kVGVhbSgpO1xuICAgIGlmIChpbmZlcnJlZFByb2plY3QpIHtcbiAgICAgIGNvbnN0IHsgcHJvamVjdElkLCBwcm9qZWN0TmFtZSwgdGVhbUlkIH0gPSBpbmZlcnJlZFByb2plY3Q7XG4gICAgICAvLyBXT1JLRkxPV19WRVJDRUxfUFJPSkVDVCBpcyB0aGUgcmVhbCBwcm9qZWN0IElEIChlLmcuLCBwcmpfeHh4KVxuICAgICAgZW52VmFycy5XT1JLRkxPV19WRVJDRUxfUFJPSkVDVCA9IHByb2plY3RJZDtcbiAgICAgIC8vIFdPUktGTE9XX1ZFUkNFTF9QUk9KRUNUX05BTUUgaXMgdGhlIHByb2plY3Qgc2x1ZyAoZS5nLiwgbXktYXBwKVxuICAgICAgZW52VmFycy5XT1JLRkxPV19WRVJDRUxfUFJPSkVDVF9OQU1FID0gcHJvamVjdE5hbWUgfHwgcHJvamVjdElkO1xuICAgICAgZW52VmFycy5XT1JLRkxPV19WRVJDRUxfVEVBTSA9IGVudlZhcnMuV09SS0ZMT1dfVkVSQ0VMX1RFQU0gfHwgdGVhbUlkO1xuICAgIH0gZWxzZSB7XG4gICAgICBsb2dnZXIud2FybihcbiAgICAgICAgJ0NvdWxkIG5vdCBpbmZlciB2ZXJjZWwgcHJvamVjdCBhbmQgdGVhbSBmcm9tIC52ZXJjZWwgZm9sZGVyLCBzZXJ2ZXIgYXV0aGVudGljYXRpb24gbWlnaHQgZmFpbC4nXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIGlmICghZW52VmFycy5XT1JLRkxPV19WRVJDRUxfQVVUSF9UT0tFTikge1xuICAgIGxvZ2dlci5kZWJ1ZygnSW5mZXJyaW5nIHZlcmNlbCBhdXRoIHRva2VuIGZyb20gQ0xJIGF1dGggZmlsZScpO1xuICAgIGNvbnN0IHRva2VuID0gYXdhaXQgZ2V0QXV0aFRva2VuKCk7XG4gICAgaWYgKCF0b2tlbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDb3VsZCBub3QgZmluZCBjcmVkZW50aWFscy4gUnVuIGB2YyBsb2dpbmAgdG8gbG9nIGluLicpO1xuICAgIH1cbiAgICBlbnZWYXJzLldPUktGTE9XX1ZFUkNFTF9BVVRIX1RPS0VOID0gdG9rZW47XG4gIH1cblxuICAvLyBGZXRjaCB0ZWFtIGluZm9ybWF0aW9uIGZyb20gVmVyY2VsIEFQSSB0byBnZXQgdGhlIHRlYW0gc2x1Z1xuICAvLyBUT0RPOiBTYWRseSwgaW4gb3JkZXIgdG8gcmVkaXJlY3QgdG8gVmVyY2VsIGRhc2hib2FyZCBjb3JyZWN0bHksIHdlIG5lZWQgdG9cbiAgLy8gcmVzb2x2ZSB0aGUgdGVhbSBuYW1lLCB3aGljaCBpcyBhIHdob2xlIEFQSSByZXF1ZXN0LiBUaGUgYWx0ZXJuYXRpdmUgd291bGQgYmUgdG9cbiAgLy8gY2hhbmdlIGZyb250IHRvIGFsbG93IHBhc3NpbmcgaW4gdGhlIHRlYW0gc2x1ZyBkaXJlY3RseSwgb3IgYWRkIHNvbWUgZ2VuZXJpYyByZWRpcmVjdC5cbiAgaWYgKGVudlZhcnMuV09SS0ZMT1dfVkVSQ0VMX1RFQU0gJiYgZW52VmFycy5XT1JLRkxPV19WRVJDRUxfQVVUSF9UT0tFTikge1xuICAgIGxvZ2dlci5pbmZvKCdWZXJjZWwgcHJvamVjdCBkZXRlY3RlZC4gTG9hZGluZyBwcm9qZWN0IGRhdGEuLi4nKTtcbiAgICBsb2dnZXIuZGVidWcoJ0ZldGNoaW5nIHRlYW0gaW5mb3JtYXRpb24gZnJvbSBWZXJjZWwgQVBJJyk7XG4gICAgY29uc3QgdGVhbUluZm8gPSBhd2FpdCBmZXRjaFRlYW1JbmZvKFxuICAgICAgZW52VmFycy5XT1JLRkxPV19WRVJDRUxfVEVBTSxcbiAgICAgIGVudlZhcnMuV09SS0ZMT1dfVkVSQ0VMX0FVVEhfVE9LRU5cbiAgICApO1xuICAgIGlmICh0ZWFtSW5mbykge1xuICAgICAgZW52VmFycy5XT1JLRkxPV19WRVJDRUxfVEVBTSA9IHRlYW1JbmZvLnRlYW1TbHVnO1xuICAgICAgbG9nZ2VyLmRlYnVnKGBGb3VuZCB0ZWFtIHNsdWc6ICR7dGVhbUluZm8udGVhbVNsdWd9YCk7XG4gICAgfVxuICB9XG5cbiAgLy8gV3JpdGUgcmVzb2x2ZWQgdmFsdWVzIHRvIHByb2Nlc3MuZW52IGZvciB0aGUgZW1iZWRkZWQgd2ViIFVJLCB3aGljaFxuICAvLyByZWFkcyB0aGVtIGFzIGZhbGxiYWNrcyBpbiBpdHMgc2VydmVyIGFjdGlvbnMuXG4gIHdyaXRlRW52VmFycyhlbnZWYXJzKTtcblxuICByZXR1cm4ge1xuICAgIHRva2VuOiBlbnZWYXJzLldPUktGTE9XX1ZFUkNFTF9BVVRIX1RPS0VOIHx8IHVuZGVmaW5lZCxcbiAgICBlbnZpcm9ubWVudDogZW52VmFycy5XT1JLRkxPV19WRVJDRUxfRU5WIHx8IHVuZGVmaW5lZCxcbiAgICBwcm9qZWN0SWQ6IGVudlZhcnMuV09SS0ZMT1dfVkVSQ0VMX1BST0pFQ1QgfHwgdW5kZWZpbmVkLFxuICAgIHByb2plY3ROYW1lOiBlbnZWYXJzLldPUktGTE9XX1ZFUkNFTF9QUk9KRUNUX05BTUUgfHwgdW5kZWZpbmVkLFxuICAgIHRlYW1JZDogZW52VmFycy5XT1JLRkxPV19WRVJDRUxfVEVBTSB8fCB1bmRlZmluZWQsXG4gIH07XG59O1xuIl19
|
|
226
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9pbnNwZWN0L2Vudi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDMUMsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDMUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDckUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDekMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2hELE9BQU8sRUFDTCxZQUFZLEVBQ1osY0FBYyxFQUNkLHNCQUFzQixHQUV2QixNQUFNLGtCQUFrQixDQUFDO0FBRTFCOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxPQUErQixFQUFFLEVBQUU7SUFDOUQsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFO1FBQy9DLElBQ0UsS0FBSyxLQUFLLFNBQVM7WUFDbkIsS0FBSyxLQUFLLElBQUk7WUFDZCxLQUFLLEtBQUssRUFBRTtZQUNaLEtBQUssS0FBSyxXQUFXLEVBQ3JCLENBQUM7WUFDRCxPQUFPO1FBQ1QsQ0FBQztRQUNELE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDO0lBQzNCLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLEdBQTJCLEVBQUU7SUFDckQs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WSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBRXRCLE9BQU87UUFDTCxLQUFLLEVBQUUsT0FBTyxDQUFDLDBCQUEwQixJQUFJLFNBQVM7UUFDdEQsV0FBVyxFQUFFLE9BQU8sQ0FBQyxtQkFBbUIsSUFBSSxTQUFTO1FBQ3JELFNBQVMsRUFBRSxPQUFPLENBQUMsdUJBQXVCLElBQUksU0FBUztRQUN2RCxXQUFXLEVBQUUsT0FBTyxDQUFDLDRCQUE0QixJQUFJLFNBQVM7UUFDOUQsTUFBTSxFQUFFLE9BQU8sQ0FBQyxvQkFBb0IsSUFBSSxTQUFTO0tBQ2xELENBQUM7QUFDSixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhY2Nlc3MgfSBmcm9tICdub2RlOmZzL3Byb21pc2VzJztcbmltcG9ydCB7IGpvaW4sIHJlc29sdmUgfSBmcm9tICdub2RlOnBhdGgnO1xuaW1wb3J0IHsgZmluZFdvcmtmbG93RGF0YURpciB9IGZyb20gJ0B3b3JrZmxvdy91dGlscy9jaGVjay1kYXRhLWRpcic7XG5pbXBvcnQgeyBsb2dnZXIgfSBmcm9tICcuLi9jb25maWcvbG9nLmpzJztcbmltcG9ydCB7IGdldFdvcmtmbG93Q29uZmlnIH0gZnJvbSAnLi4vY29uZmlnL3dvcmtmbG93LWNvbmZpZy5qcyc7XG5pbXBvcnQgeyBnZXRBdXRoVG9rZW4gfSBmcm9tICcuL2F1dGguanMnO1xuaW1wb3J0IHsgZmV0Y2hUZWFtSW5mbyB9IGZyb20gJy4vdmVyY2VsLWFwaS5qcyc7XG5pbXBvcnQge1xuICBmaW5kUmVwb1Jvb3QsXG4gIGdldFByb2plY3RMaW5rLFxuICBpc09uZU9mRXJyTm9FeGNlcHRpb25zLFxuICB0eXBlIFByb2plY3RMaW5rLFxufSBmcm9tICcuL3ZlcmNlbC1saW5rLmpzJztcblxuLyoqXG4gKiBPdmVyd3JpdGUgdmFsdWVzIG9uIHByb2Nlc3MuZW52IHdpdGggdGhlIGdpdmVuIHZhbHVlcyAoaWYgbm90IHVuZGVmaW5lZClcbiAqXG4gKiBVc2VkIGJ5IHRoZSBDTEkgdG8gY29uZmlndXJlIGVudmlyb25tZW50IHZhcmlhYmxlcyB0aGF0IGFyZSByZWFkIGJ5XG4gKiB2YXJpb3VzIHN1YnN5c3RlbXMgKGUuZy4sIFdPUktGTE9XX1RBUkdFVF9XT1JMRCwgV09SS0ZMT1dfTE9DQUxfREFUQV9ESVIpLlxuICogTm90ZTogV09SS0ZMT1dfVkVSQ0VMXyogZW52IHZhcnMgYXJlIHJlYWQgYmFjayB2aWEgZ2V0RW52VmFycygpIGFuZCBwYXNzZWRcbiAqIHRvIEB3b3JrZmxvdy93b3JsZC12ZXJjZWwncyBjcmVhdGVXb3JsZCgpIGV4cGxpY2l0bHkg4oCUIHRoZXkgYXJlIE5PVCByZWFkIGJ5IHJ1bnRpbWUgY3JlYXRlV29ybGQoKS5cbiAqL1xuZXhwb3J0IGNvbnN0IHdyaXRlRW52VmFycyA9IChlbnZWYXJzOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+KSA9PiB7XG4gIE9iamVjdC5lbnRyaWVzKGVudlZhcnMpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgIGlmIChcbiAgICAgIHZhbHVlID09PSB1bmRlZmluZWQgfHxcbiAgICAgIHZhbHVlID09PSBudWxsIHx8XG4gICAgICB2YWx1ZSA9PT0gJycgfHxcbiAgICAgIHZhbHVlID09PSAndW5kZWZpbmVkJ1xuICAgICkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBwcm9jZXNzLmVudltrZXldID0gdmFsdWU7XG4gIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldEVudlZhcnMgPSAoKTogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9PiB7XG4gIGNvbnN0IGVudiA9IHByb2Nlc3MuZW52O1xuICByZXR1cm4ge1xuICAgIFdPUktGTE9XX1RBUkdFVF9XT1JMRDogZW52LldPUktGTE9XX1RBUkdFVF9XT1JMRCB8fCAnJyxcbiAgICBXT1JLRkxPV19WRVJDRUxfRU5WOiBlbnYuV09SS0ZMT1dfVkVSQ0VMX0VOViB8fCAnJyxcbiAgICBXT1JLRkxPV19WRVJDRUxfQVVUSF9UT0tFTjogZW52LldPUktGTE9XX1ZFUkNFTF9BVVRIX1RPS0VOIHx8ICcnLFxuICAgIFdPUktGTE9XX1ZFUkNFTF9QUk9KRUNUOiBlbnYuV09SS0ZMT1dfVkVSQ0VMX1BST0pFQ1QgfHwgJycsXG4gICAgV09SS0ZMT1dfVkVSQ0VMX1BST0pFQ1RfTkFNRTogZW52LldPUktGTE9XX1ZFUkNFTF9QUk9KRUNUX05BTUUgfHwgJycsXG4gICAgV09SS0ZMT1dfVkVSQ0VMX1RFQU06IGVudi5XT1JLRkxPV19WRVJDRUxfVEVBTSB8fCAnJyxcbiAgICBXT1JLRkxPV19MT0NBTF9CQVNFX1VSTDogZW52LldPUktGTE9XX0xPQ0FMX0JBU0VfVVJMIHx8ICcnLFxuICAgIFdPUktGTE9XX0xPQ0FMX1VJOiBlbnYuV09SS0ZMT1dfTE9DQUxfVUkgfHwgJycsXG4gICAgUE9SVDogZW52LlBPUlQgfHwgJycsXG4gICAgV09SS0ZMT1dfTE9DQUxfREFUQV9ESVI6IGVudi5XT1JLRkxPV19MT0NBTF9EQVRBX0RJUiB8fCAnJyxcbiAgICBXT1JLRkxPV19NQU5JRkVTVF9QQVRIOiBlbnYuV09SS0ZMT1dfTUFOSUZFU1RfUEFUSCB8fCAnJyxcbiAgfTtcbn07XG5cbmNvbnN0IHBvc3NpYmxlTWFuaWZlc3RQYXRocyA9IFtcbiAgJ2FwcC8ud2VsbC1rbm93bi93b3JrZmxvdy92MS9tYW5pZmVzdC5qc29uJyxcbiAgJ3NyYy9hcHAvLndlbGwta25vd24vd29ya2Zsb3cvdjEvbWFuaWZlc3QuanNvbicsXG4gICcud2VsbC1rbm93bi93b3JrZmxvdy92MS9tYW5pZmVzdC5qc29uJyxcbl07XG5cbmFzeW5jIGZ1bmN0aW9uIGZpbmRNYW5pZmVzdFBhdGgoY3dkOiBzdHJpbmcpIHtcbiAgZm9yIChjb25zdCBwYXRoIG9mIHBvc3NpYmxlTWFuaWZlc3RQYXRocykge1xuICAgIGNvbnN0IGZ1bGxQYXRoID0gam9pbihjd2QsIHBhdGgpO1xuICAgIGlmIChcbiAgICAgIGF3YWl0IGFjY2VzcyhmdWxsUGF0aClcbiAgICAgICAgLnRoZW4oKCkgPT4gdHJ1ZSlcbiAgICAgICAgLmNhdGNoKCgpID0+IGZhbHNlKVxuICAgICkge1xuICAgICAgY29uc3QgYWJzb2x1dGVQYXRoID0gcmVzb2x2ZShmdWxsUGF0aCk7XG4gICAgICBsb2dnZXIuZGVidWcoJ0ZvdW5kIHdvcmtmbG93IG1hbmlmZXN0OicsIGFic29sdXRlUGF0aCk7XG4gICAgICByZXR1cm4gYWJzb2x1dGVQYXRoO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIE92ZXJ3cml0ZXMgcHJvY2Vzcy5lbnYgdmFyaWFibGVzIHJlbGF0ZWQgdG8gbG9jYWwgd29ybGQgY29uZmlndXJhdGlvbixcbiAqIGlmIHJlbGV2YW50IGVudmlyb25tZW50IHZhcmlhYmxlcyBhcmVuJ3Qgc2V0IGFscmVhZHkuXG4gKlxuICogVGhyb3dzIGlmIHRoZSB3b3JrZmxvdyBkYXRhIGRpcmVjdG9yeSBjYW4gbm90IGJlIGZvdW5kLlxuICovXG5leHBvcnQgY29uc3QgaW5mZXJMb2NhbFdvcmxkRW52VmFycyA9IGFzeW5jICgpID0+IHtcbiAgY29uc3QgZW52VmFycyA9IGdldEVudlZhcnMoKTtcbiAgY29uc3QgY3dkID0gZ2V0V29ya2Zsb3dDb25maWcoKS53b3JraW5nRGlyO1xuICBsZXQgcmVwb1Jvb3Q6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvLyBBbHdheXMgZXhwb3NlIHRoZSBlZmZlY3RpdmUgd29ya2luZyBkaXJlY3RvcnkgdG8gdGhlIHdlYiBVSS9zZXJ2ZXItc2lkZSBoZWxwZXJzLlxuICAvLyBUaGlzIGlzIGVzcGVjaWFsbHkgdXNlZnVsIHdoZW4gZGV2ZWxvcGluZyB0aGUgd2ViIFVJIGZyb20gdGhlIHdvcmtmbG93IHJlcG9cbiAgLy8gd2hpbGUgdGFyZ2V0aW5nIGFub3RoZXIgcHJvamVjdCBkaXJlY3RvcnkuXG4gIGlmICghcHJvY2Vzcy5lbnYuV09SS0ZMT1dfT0JTRVJWQUJJTElUWV9DV0QpIHtcbiAgICB3cml0ZUVudlZhcnMoeyBXT1JLRkxPV19PQlNFUlZBQklMSVRZX0NXRDogY3dkIH0pO1xuICB9XG5cbiAgLy8gU2V0IGRlZmF1bHQgYmFzZSBVUkwgZm9yIGxvY2FsIHF1ZXVlIGlmIG5vdCBhbHJlYWR5IGNvbmZpZ3VyZWRcbiAgLy8gV2UgdXNlIFdPUktGTE9XX0xPQ0FMX0JBU0VfVVJMIGluc3RlYWQgb2YgUE9SVCB0byBhdm9pZCBjb25mbGljdHNcbiAgLy8gd2l0aCBvdGhlciB0b29scyAobGlrZSBOZXh0LmpzKSB0aGF0IGFsc28gdXNlIHRoZSBQT1JUIGVudiB2YXJcbiAgaWYgKCFlbnZWYXJzLldPUktGTE9XX0xPQ0FMX0JBU0VfVVJMICYmICFlbnZWYXJzLlBPUlQpIHtcbiAgICBsb2dnZXIuZGVidWcoXG4gICAgICAnVXNpbmcgZGVmYXVsdCBxdWV1ZSB0YXJnZXQgaHR0cDovL2xvY2FsaG9zdDozMDAwLCBzZXQgV09SS0ZMT1dfTE9DQUxfQkFTRV9VUkwgb3IgUE9SVCB0byBvdmVycmlkZS4nXG4gICAgKTtcbiAgICBlbnZWYXJzLldPUktGTE9XX0xPQ0FMX0JBU0VfVVJMID0gJ2h0dHA6Ly9sb2NhbGhvc3Q6MzAwMCc7XG4gICAgd3JpdGVFbnZWYXJzKGVudlZhcnMpO1xuICB9XG5cbiAgLy8gSW5mZXIgd29ya2Zsb3cgZGF0YSBkaXJlY3RvcnlcbiAgaWYgKCFlbnZWYXJzLldPUktGTE9XX0xPQ0FMX0RBVEFfRElSKSB7XG4gICAgY29uc3QgbG9jYWxSZXN1bHQgPSBhd2FpdCBmaW5kV29ya2Zsb3dEYXRhRGlyKGN3ZCk7XG4gICAgaWYgKGxvY2FsUmVzdWx0LmRhdGFEaXIpIHtcbiAgICAgIGxvZ2dlci5kZWJ1ZygnRm91bmQgd29ya2Zsb3cgZGF0YSBkaXJlY3Rvcnk6JywgbG9jYWxSZXN1bHQuZGF0YURpcik7XG4gICAgICBlbnZWYXJzLldPUktGTE9XX0xPQ0FMX0RBVEFfRElSID0gbG9jYWxSZXN1bHQuZGF0YURpcjtcbiAgICAgIHdyaXRlRW52VmFycyhlbnZWYXJzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gQXMgYSBmYWxsYmFjaywgZmluZCB0aGUgcmVwbyByb290LCBhbmQgdHJ5IHRvIGluZmVyIHRoZSBkYXRhIGRpciBmcm9tIHRoZXJlXG4gICAgICByZXBvUm9vdCA9IGF3YWl0IGZpbmRSZXBvUm9vdChjd2QsIGN3ZCk7XG4gICAgICBpZiAocmVwb1Jvb3QpIHtcbiAgICAgICAgY29uc3QgcmVwb1Jlc3VsdCA9IGF3YWl0IGZpbmRXb3JrZmxvd0RhdGFEaXIocmVwb1Jvb3QpO1xuICAgICAgICBpZiAocmVwb1Jlc3VsdC5kYXRhRGlyKSB7XG4gICAgICAgICAgbG9nZ2VyLmRlYnVnKCdGb3VuZCB3b3JrZmxvdyBkYXRhIGRpcmVjdG9yeTonLCByZXBvUmVzdWx0LmRhdGFEaXIpO1xuICAgICAgICAgIGVudlZhcnMuV09SS0ZMT1dfTE9DQUxfREFUQV9ESVIgPSByZXBvUmVzdWx0LmRhdGFEaXI7XG4gICAgICAgICAgd3JpdGVFbnZWYXJzKGVudlZhcnMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAoIWVudlZhcnMuV09SS0ZMT1dfTE9DQUxfREFUQV9ESVIpIHtcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9IGBObyB3b3JrZmxvdyBkYXRhIGRpcmVjdG9yeSBmb3VuZCBpbiBcIiR7Y3dkfVwiLiBIYXZlIHlvdSBydW4gYW55IHdvcmtmbG93cyB5ZXQ/YDtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKG1lc3NhZ2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEluZmVyIHdvcmtmbG93IG1hbmlmZXN0IHBhdGggKGZvciBHcmFwaCB0YWIgaW4gd2ViIFVJKVxuICBpZiAoIWVudlZhcnMuV09SS0ZMT1dfTUFOSUZFU1RfUEFUSCkge1xuICAgIGNvbnN0IGxvY2FsTWFuaWZlc3QgPSBhd2FpdCBmaW5kTWFuaWZlc3RQYXRoKGN3ZCk7XG4gICAgaWYgKGxvY2FsTWFuaWZlc3QpIHtcbiAgICAgIGVudlZhcnMuV09SS0ZMT1dfTUFOSUZFU1RfUEFUSCA9IGxvY2FsTWFuaWZlc3Q7XG4gICAgICB3cml0ZUVudlZhcnMoZW52VmFycyk7XG4gICAgICBsb2dnZXIuZGVidWcoYEZvdW5kIHdvcmtmbG93IG1hbmlmZXN0IGF0OiAke2xvY2FsTWFuaWZlc3R9YCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIEFzIGEgZmFsbGJhY2ssIGZpbmQgdGhlIHJlcG8gcm9vdCwgYW5kIHRyeSB0byBpbmZlciB0aGUgbWFuaWZlc3QgZnJvbSB0aGVyZVxuICAgICAgaWYgKCFyZXBvUm9vdCkge1xuICAgICAgICByZXBvUm9vdCA9IGF3YWl0IGZpbmRSZXBvUm9vdChjd2QsIGN3ZCk7XG4gICAgICB9XG4gICAgICBpZiAocmVwb1Jvb3QpIHtcbiAgICAgICAgY29uc3QgcmVwb01hbmlmZXN0ID0gYXdhaXQgZmluZE1hbmlmZXN0UGF0aChyZXBvUm9vdCk7XG4gICAgICAgIGlmIChyZXBvTWFuaWZlc3QpIHtcbiAgICAgICAgICBlbnZWYXJzLldPUktGTE9XX01BTklGRVNUX1BBVEggPSByZXBvTWFuaWZlc3Q7XG4gICAgICAgICAgd3JpdGVFbnZWYXJzKGVudlZhcnMpO1xuICAgICAgICAgIGxvZ2dlci5kZWJ1ZyhgRm91bmQgd29ya2Zsb3cgbWFuaWZlc3QgYXQ6ICR7cmVwb01hbmlmZXN0fWApO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEl0J3Mgb2theSBpZiBtYW5pZmVzdCBpcyBub3QgZm91bmQgLSB0aGUgd2ViIFVJIHdpbGwganVzdCBzaG93IGVtcHR5IHdvcmtmbG93c1xuICAgICAgaWYgKCFlbnZWYXJzLldPUktGTE9XX01BTklGRVNUX1BBVEgpIHtcbiAgICAgICAgbG9nZ2VyLmRlYnVnKFxuICAgICAgICAgICdObyB3b3JrZmxvdyBtYW5pZmVzdCBmb3VuZC4gV29ya2Zsb3dzIHRhYiB3aWxsIGJlIGVtcHR5LidcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBpbmZlclZlcmNlbFByb2plY3RBbmRUZWFtID0gYXN5bmMgKCkgPT4ge1xuICBjb25zdCBjd2QgPSBnZXRXb3JrZmxvd0NvbmZpZygpLndvcmtpbmdEaXI7XG4gIGxldCBwcm9qZWN0OiBQcm9qZWN0TGluayB8IG51bGwgPSBudWxsO1xuICB0cnkge1xuICAgIGxvZ2dlci5kZWJ1ZyhgSW5mZXJyaW5nIHByb2plY3QgYW5kIHRlYW0gZnJvbSBDV0Q6ICR7Y3dkfWApO1xuICAgIHByb2plY3QgPSBhd2FpdCBnZXRQcm9qZWN0TGluayhjd2QpO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGlmICghaXNPbmVPZkVyck5vRXhjZXB0aW9ucyhlcnJvciwgWydFTk9FTlQnXSkpIHtcbiAgICAgIHRocm93IGVycm9yO1xuICAgIH1cbiAgfVxuICBpZiAoIXByb2plY3QpIHtcbiAgICBsb2dnZXIuZGVidWcoJ0NvdWxkIG5vdCBmaW5kIHByb2plY3QgbGluayBmb2xkZXInKTtcbiAgICByZXR1cm47XG4gIH1cbiAgbG9nZ2VyLmRlYnVnKGBGb3VuZCBwcm9qZWN0ICR7cHJvamVjdC5wcm9qZWN0SWR9IGFuZCB0ZWFtICR7cHJvamVjdC5vcmdJZH1gKTtcbiAgcmV0dXJuIHtcbiAgICBwcm9qZWN0SWQ6IHByb2plY3QucHJvamVjdElkLFxuICAgIHByb2plY3ROYW1lOiBwcm9qZWN0LnByb2plY3ROYW1lLFxuICAgIHRlYW1JZDogcHJvamVjdC5vcmdJZCxcbiAgfTtcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmVyY2VsRW52VmFycyB7XG4gIHRva2VuPzogc3RyaW5nO1xuICBlbnZpcm9ubWVudD86IHN0cmluZztcbiAgcHJvamVjdElkPzogc3RyaW5nO1xuICBwcm9qZWN0TmFtZT86IHN0cmluZztcbiAgdGVhbUlkPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEluZmVycyBWZXJjZWwgV29ybGQgY29uZmlndXJhdGlvbiBmcm9tIHRoZSBsb2NhbCBlbnZpcm9ubWVudCAoYC52ZXJjZWxgXG4gKiBmb2xkZXIsIENMSSBhdXRoIGZpbGUsIFZlcmNlbCBBUEkpIGFuZCByZXR1cm5zIGEgcmVzb2x2ZWQgY29uZmlnIG9iamVjdC5cbiAqXG4gKiBBbHNvIHdyaXRlcyB0aGUgcmVzb2x2ZWQgdmFsdWVzIHRvIGBwcm9jZXNzLmVudmAgc28gdGhlIGVtYmVkZGVkIHdlYiBVSVxuICogKHdoaWNoIHJlYWRzIGBwcm9jZXNzLmVudmAgYXMgYSBmYWxsYmFjaykgY2FuIHBpY2sgdGhlbSB1cC5cbiAqL1xuZXhwb3J0IGNvbnN0IGluZmVyVmVyY2VsRW52VmFycyA9IGFzeW5jICgpOiBQcm9taXNlPFZlcmNlbEVudlZhcnM+ID0+IHtcbiAgY29uc3QgZW52VmFycyA9IGdldEVudlZhcnMoKTtcblxuICAvLyBJbmZlciBwcm9qZWN0L3RlYW0gZnJvbSAudmVyY2VsIGZvbGRlciB3aGVuOlxuICAvLyAtIFdPUktGTE9XX1ZFUkNFTF9QUk9KRUNUIG9yIFdPUktGTE9XX1ZFUkNFTF9URUFNIGlzIG1pc3NpbmcsIE9SXG4gIC8vIC0gV09SS0ZMT1dfVkVSQ0VMX1BST0pFQ1QgaXMgc2V0IGJ1dCBkb2Vzbid0IGxvb2sgbGlrZSBhIHJlYWwgcHJvamVjdCBJRFxuICAvLyAgIChlLmcuLCB1c2VyIHBhc3NlZCBhIHNsdWcgdmlhIC0tcHJvamVjdCBmbGFnKSwgT1JcbiAgLy8gLSBXT1JLRkxPV19WRVJDRUxfUFJPSkVDVF9OQU1FIGlzIG1pc3NpbmcgKG5lZWQgdG8gcG9wdWxhdGUgdGhlIHNsdWcpXG4gIGNvbnN0IG5lZWRzSW5mZXJlbmNlID1cbiAgICAhZW52VmFycy5XT1JLRkxPV19WRVJDRUxfUFJPSkVDVCB8fFxuICAgICFlbnZWYXJzLldPUktGTE9XX1ZFUkNFTF9URUFNIHx8XG4gICAgIWVudlZhcnMuV09SS0ZMT1dfVkVSQ0VMX1BST0pFQ1RfTkFNRSB8fFxuICAgICFlbnZWYXJzLldPUktGTE9XX1ZFUkNFTF9QUk9KRUNULnN0YXJ0c1dpdGgoJ3Byal8nKTtcblxuICBpZiAobmVlZHNJbmZlcmVuY2UpIHtcbiAgICBsb2dnZXIuZGVidWcoJ0luZmVycmluZyB2ZXJjZWwgcHJvamVjdCBhbmQgdGVhbSBmcm9tIC52ZXJjZWwgZm9sZGVyJyk7XG4gICAgY29uc3QgaW5mZXJyZWRQcm9qZWN0ID0gYXdhaXQgaW5mZXJWZXJjZWxQcm9qZWN0QW5kVGVhbSgpO1xuICAgIGlmIChpbmZlcnJlZFByb2plY3QpIHtcbiAgICAgIGNvbnN0IHsgcHJvamVjdElkLCBwcm9qZWN0TmFtZSwgdGVhbUlkIH0gPSBpbmZlcnJlZFByb2plY3Q7XG4gICAgICAvLyBXT1JLRkxPV19WRVJDRUxfUFJPSkVDVCBpcyB0aGUgcmVhbCBwcm9qZWN0IElEIChlLmcuLCBwcmpfeHh4KVxuICAgICAgZW52VmFycy5XT1JLRkxPV19WRVJDRUxfUFJPSkVDVCA9IHByb2plY3RJZDtcbiAgICAgIC8vIFdPUktGTE9XX1ZFUkNFTF9QUk9KRUNUX05BTUUgaXMgdGhlIHByb2plY3Qgc2x1ZyAoZS5nLiwgbXktYXBwKVxuICAgICAgZW52VmFycy5XT1JLRkxPV19WRVJDRUxfUFJPSkVDVF9OQU1FID0gcHJvamVjdE5hbWUgfHwgcHJvamVjdElkO1xuICAgICAgZW52VmFycy5XT1JLRkxPV19WRVJDRUxfVEVBTSA9IGVudlZhcnMuV09SS0ZMT1dfVkVSQ0VMX1RFQU0gfHwgdGVhbUlkO1xuICAgIH0gZWxzZSB7XG4gICAgICBsb2dnZXIud2FybihcbiAgICAgICAgJ0NvdWxkIG5vdCBpbmZlciB2ZXJjZWwgcHJvamVjdCBhbmQgdGVhbSBmcm9tIC52ZXJjZWwgZm9sZGVyLCBzZXJ2ZXIgYXV0aGVudGljYXRpb24gbWlnaHQgZmFpbC4nXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIGlmICghZW52VmFycy5XT1JLRkxPV19WRVJDRUxfQVVUSF9UT0tFTikge1xuICAgIGxvZ2dlci5kZWJ1ZygnSW5mZXJyaW5nIHZlcmNlbCBhdXRoIHRva2VuIGZyb20gQ0xJIGF1dGggZmlsZScpO1xuICAgIGNvbnN0IHRva2VuID0gYXdhaXQgZ2V0QXV0aFRva2VuKCk7XG4gICAgaWYgKCF0b2tlbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDb3VsZCBub3QgZmluZCBjcmVkZW50aWFscy4gUnVuIGB2YyBsb2dpbmAgdG8gbG9nIGluLicpO1xuICAgIH1cbiAgICBlbnZWYXJzLldPUktGTE9XX1ZFUkNFTF9BVVRIX1RPS0VOID0gdG9rZW47XG4gIH1cblxuICAvLyBGZXRjaCB0ZWFtIGluZm9ybWF0aW9uIGZyb20gVmVyY2VsIEFQSSB0byBnZXQgdGhlIHRlYW0gc2x1Z1xuICAvLyBUT0RPOiBTYWRseSwgaW4gb3JkZXIgdG8gcmVkaXJlY3QgdG8gVmVyY2VsIGRhc2hib2FyZCBjb3JyZWN0bHksIHdlIG5lZWQgdG9cbiAgLy8gcmVzb2x2ZSB0aGUgdGVhbSBuYW1lLCB3aGljaCBpcyBhIHdob2xlIEFQSSByZXF1ZXN0LiBUaGUgYWx0ZXJuYXRpdmUgd291bGQgYmUgdG9cbiAgLy8gY2hhbmdlIGZyb250IHRvIGFsbG93IHBhc3NpbmcgaW4gdGhlIHRlYW0gc2x1ZyBkaXJlY3RseSwgb3IgYWRkIHNvbWUgZ2VuZXJpYyByZWRpcmVjdC5cbiAgaWYgKGVudlZhcnMuV09SS0ZMT1dfVkVSQ0VMX1RFQU0gJiYgZW52VmFycy5XT1JLRkxPV19WRVJDRUxfQVVUSF9UT0tFTikge1xuICAgIGxvZ2dlci5pbmZvKCdWZXJjZWwgcHJvamVjdCBkZXRlY3RlZC4gTG9hZGluZyBwcm9qZWN0IGRhdGEuLi4nKTtcbiAgICBsb2dnZXIuZGVidWcoJ0ZldGNoaW5nIHRlYW0gaW5mb3JtYXRpb24gZnJvbSBWZXJjZWwgQVBJJyk7XG4gICAgY29uc3QgdGVhbUluZm8gPSBhd2FpdCBmZXRjaFRlYW1JbmZvKFxuICAgICAgZW52VmFycy5XT1JLRkxPV19WRVJDRUxfVEVBTSxcbiAgICAgIGVudlZhcnMuV09SS0ZMT1dfVkVSQ0VMX0FVVEhfVE9LRU5cbiAgICApO1xuICAgIGlmICh0ZWFtSW5mbykge1xuICAgICAgZW52VmFycy5XT1JLRkxPV19WRVJDRUxfVEVBTSA9IHRlYW1JbmZvLnRlYW1TbHVnO1xuICAgICAgbG9nZ2VyLmRlYnVnKGBGb3VuZCB0ZWFtIHNsdWc6ICR7dGVhbUluZm8udGVhbVNsdWd9YCk7XG4gICAgfVxuICB9XG5cbiAgLy8gV3JpdGUgcmVzb2x2ZWQgdmFsdWVzIHRvIHByb2Nlc3MuZW52IGZvciB0aGUgZW1iZWRkZWQgd2ViIFVJLCB3aGljaFxuICAvLyByZWFkcyB0aGVtIGFzIGZhbGxiYWNrcyBpbiBpdHMgc2VydmVyIGFjdGlvbnMuXG4gIHdyaXRlRW52VmFycyhlbnZWYXJzKTtcblxuICByZXR1cm4ge1xuICAgIHRva2VuOiBlbnZWYXJzLldPUktGTE9XX1ZFUkNFTF9BVVRIX1RPS0VOIHx8IHVuZGVmaW5lZCxcbiAgICBlbnZpcm9ubWVudDogZW52VmFycy5XT1JLRkxPV19WRVJDRUxfRU5WIHx8IHVuZGVmaW5lZCxcbiAgICBwcm9qZWN0SWQ6IGVudlZhcnMuV09SS0ZMT1dfVkVSQ0VMX1BST0pFQ1QgfHwgdW5kZWZpbmVkLFxuICAgIHByb2plY3ROYW1lOiBlbnZWYXJzLldPUktGTE9XX1ZFUkNFTF9QUk9KRUNUX05BTUUgfHwgdW5kZWZpbmVkLFxuICAgIHRlYW1JZDogZW52VmFycy5XT1JLRkxPV19WRVJDRUxfVEVBTSB8fCB1bmRlZmluZWQsXG4gIH07XG59O1xuIl19
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/lib/inspect/errors.ts"],"names":[],"mappings":"AAsBA,eAAO,MAAM,mCAAmC,GAC9C,OAAO,OAAO,KACb,OAUF,CAAC;AAEF,eAAO,MAAM,sCAAsC,QAAO,MAClB,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
const OBSERVABILITY_UPGRADE_REQUIRED_CODE = 'observability-upgrade-required';
|
|
2
|
+
const OBSERVABILITY_UPGRADE_REQUIRED_MESSAGE = 'This workflow observability data is outside your current plan window. Upgrade Observability Plus to view up to 30 days of workflow data.';
|
|
3
|
+
const extractErrorCode = (err) => {
|
|
4
|
+
if (err.code && typeof err.code === 'string') {
|
|
5
|
+
return err.code;
|
|
6
|
+
}
|
|
7
|
+
if (err.body && typeof err.body === 'object') {
|
|
8
|
+
const body = err.body;
|
|
9
|
+
if (body.code && typeof body.code === 'string') {
|
|
10
|
+
return body.code;
|
|
11
|
+
}
|
|
12
|
+
if (body.error && typeof body.error === 'string') {
|
|
13
|
+
return body.error;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
return undefined;
|
|
17
|
+
};
|
|
18
|
+
export const isObservabilityUpgradeRequiredError = (error) => {
|
|
19
|
+
if (!error || typeof error !== 'object') {
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
const err = error;
|
|
23
|
+
return (err.status === 402 &&
|
|
24
|
+
extractErrorCode(err) === OBSERVABILITY_UPGRADE_REQUIRED_CODE);
|
|
25
|
+
};
|
|
26
|
+
export const getObservabilityUpgradeRequiredMessage = () => OBSERVABILITY_UPGRADE_REQUIRED_MESSAGE;
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9pbnNwZWN0L2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLG1DQUFtQyxHQUFHLGdDQUFnQyxDQUFDO0FBQzdFLE1BQU0sc0NBQXNDLEdBQzFDLDBJQUEwSSxDQUFDO0FBRTdJLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxHQUE0QixFQUFzQixFQUFFO0lBQzVFLElBQUksR0FBRyxDQUFDLElBQUksSUFBSSxPQUFPLEdBQUcsQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDN0MsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxJQUFJLEdBQUcsQ0FBQyxJQUFJLElBQUksT0FBTyxHQUFHLENBQUMsSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzdDLE1BQU0sSUFBSSxHQUFHLEdBQUcsQ0FBQyxJQUErQixDQUFDO1FBQ2pELElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDL0MsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQ25CLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ2pELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztRQUNwQixDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG1DQUFtQyxHQUFHLENBQ2pELEtBQWMsRUFDTCxFQUFFO0lBQ1gsSUFBSSxDQUFDLEtBQUssSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUN4QyxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxNQUFNLEdBQUcsR0FBRyxLQUFnQyxDQUFDO0lBQzdDLE9BQU8sQ0FDTCxHQUFHLENBQUMsTUFBTSxLQUFLLEdBQUc7UUFDbEIsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLEtBQUssbUNBQW1DLENBQzlELENBQUM7QUFDSixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxzQ0FBc0MsR0FBRyxHQUFXLEVBQUUsQ0FDakUsc0NBQXNDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBPQlNFUlZBQklMSVRZX1VQR1JBREVfUkVRVUlSRURfQ09ERSA9ICdvYnNlcnZhYmlsaXR5LXVwZ3JhZGUtcmVxdWlyZWQnO1xuY29uc3QgT0JTRVJWQUJJTElUWV9VUEdSQURFX1JFUVVJUkVEX01FU1NBR0UgPVxuICAnVGhpcyB3b3JrZmxvdyBvYnNlcnZhYmlsaXR5IGRhdGEgaXMgb3V0c2lkZSB5b3VyIGN1cnJlbnQgcGxhbiB3aW5kb3cuIFVwZ3JhZGUgT2JzZXJ2YWJpbGl0eSBQbHVzIHRvIHZpZXcgdXAgdG8gMzAgZGF5cyBvZiB3b3JrZmxvdyBkYXRhLic7XG5cbmNvbnN0IGV4dHJhY3RFcnJvckNvZGUgPSAoZXJyOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPik6IHN0cmluZyB8IHVuZGVmaW5lZCA9PiB7XG4gIGlmIChlcnIuY29kZSAmJiB0eXBlb2YgZXJyLmNvZGUgPT09ICdzdHJpbmcnKSB7XG4gICAgcmV0dXJuIGVyci5jb2RlO1xuICB9XG5cbiAgaWYgKGVyci5ib2R5ICYmIHR5cGVvZiBlcnIuYm9keSA9PT0gJ29iamVjdCcpIHtcbiAgICBjb25zdCBib2R5ID0gZXJyLmJvZHkgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gICAgaWYgKGJvZHkuY29kZSAmJiB0eXBlb2YgYm9keS5jb2RlID09PSAnc3RyaW5nJykge1xuICAgICAgcmV0dXJuIGJvZHkuY29kZTtcbiAgICB9XG4gICAgaWYgKGJvZHkuZXJyb3IgJiYgdHlwZW9mIGJvZHkuZXJyb3IgPT09ICdzdHJpbmcnKSB7XG4gICAgICByZXR1cm4gYm9keS5lcnJvcjtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdW5kZWZpbmVkO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzT2JzZXJ2YWJpbGl0eVVwZ3JhZGVSZXF1aXJlZEVycm9yID0gKFxuICBlcnJvcjogdW5rbm93blxuKTogYm9vbGVhbiA9PiB7XG4gIGlmICghZXJyb3IgfHwgdHlwZW9mIGVycm9yICE9PSAnb2JqZWN0Jykge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0IGVyciA9IGVycm9yIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICByZXR1cm4gKFxuICAgIGVyci5zdGF0dXMgPT09IDQwMiAmJlxuICAgIGV4dHJhY3RFcnJvckNvZGUoZXJyKSA9PT0gT0JTRVJWQUJJTElUWV9VUEdSQURFX1JFUVVJUkVEX0NPREVcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRPYnNlcnZhYmlsaXR5VXBncmFkZVJlcXVpcmVkTWVzc2FnZSA9ICgpOiBzdHJpbmcgPT5cbiAgT0JTRVJWQUJJTElUWV9VUEdSQURFX1JFUVVJUkVEX01FU1NBR0U7XG4iXX0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { WorkflowRun,
|
|
1
|
+
import type { WorkflowRun, World } from '@workflow/world';
|
|
2
2
|
import type { InspectCLIOptions } from '../config/types.js';
|
|
3
3
|
import { getDisplaySettings } from './terminal-utils.js';
|
|
4
4
|
export declare const formatTableValue: (prop: string, value: unknown, opts?: InspectCLIOptions, displaySettings?: ReturnType<typeof getDisplaySettings>, item?: Record<string, unknown>) => unknown;
|
|
@@ -8,7 +8,7 @@ export declare const formatTableValue: (prop: string, value: unknown, opts?: Ins
|
|
|
8
8
|
*/
|
|
9
9
|
export declare const hasExpiredData: (run: WorkflowRun) => boolean;
|
|
10
10
|
export declare const listRuns: (world: World, opts?: InspectCLIOptions) => Promise<void>;
|
|
11
|
-
export declare const getRecentRun: (world: World, opts?: InspectCLIOptions) => Promise<WorkflowRunWithoutData>;
|
|
11
|
+
export declare const getRecentRun: (world: World, opts?: InspectCLIOptions) => Promise<import("@workflow/world").WorkflowRunWithoutData>;
|
|
12
12
|
export declare const showRun: (world: World, runId: string, opts?: InspectCLIOptions) => Promise<void>;
|
|
13
13
|
export declare const listSteps: (world: World, opts?: InspectCLIOptions) => Promise<void>;
|
|
14
14
|
export declare const showStep: (world: World, stepId: string, opts?: InspectCLIOptions) => Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../src/lib/inspect/output.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../src/lib/inspect/output.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAqB,WAAW,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAM7E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AA0C5D,OAAO,EAGL,kBAAkB,EAGnB,MAAM,qBAAqB,CAAC;AAuO7B,eAAO,MAAM,gBAAgB,GAC3B,MAAM,MAAM,EACZ,OAAO,OAAO,EACd,OAAM,iBAAsB,EAC5B,kBAAkB,UAAU,CAAC,OAAO,kBAAkB,CAAC,EACvD,OAAO,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAuE/B,CAAC;AAuJF;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,KAAK,WAAW,KAAG,OAMjD,CAAC;AA4EF,eAAO,MAAM,QAAQ,GAAU,OAAO,KAAK,EAAE,OAAM,iBAAsB,kBAyGxE,CAAC;AAEF,eAAO,MAAM,YAAY,GACvB,OAAO,KAAK,EACZ,OAAM,iBAAsB,8DAoB7B,CAAC;AAEF,eAAO,MAAM,OAAO,GAClB,OAAO,KAAK,EACZ,OAAO,MAAM,EACb,OAAM,iBAAsB,kBA2B7B,CAAC;AAEF,eAAO,MAAM,SAAS,GACpB,OAAO,KAAK,EACZ,OAAM,iBAEL,kBA2GF,CAAC;AAEF,eAAO,MAAM,QAAQ,GACnB,OAAO,KAAK,EACZ,QAAQ,MAAM,EACd,OAAM,iBAAsB,kBA+C7B,CAAC;AAEF,eAAO,MAAM,UAAU,GACrB,OAAO,KAAK,EACZ,UAAU,MAAM,EAChB,OAAM,iBAAsB,kBA2C7B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,GAC7B,OAAO,KAAK,EACZ,OAAM,iBAAsB,kBAgD7B,CAAC;AAEF,eAAO,MAAM,UAAU,GACrB,OAAO,KAAK,EACZ,OAAM,iBAAsB,kBA0G7B,CAAC;AAEF,eAAO,MAAM,SAAS,GAAU,OAAO,KAAK,EAAE,OAAM,iBAAsB,kBA6EzE,CAAC;AAEF,eAAO,MAAM,QAAQ,GACnB,OAAO,KAAK,EACZ,QAAQ,MAAM,EACd,OAAM,iBAAsB,kBA+B7B,CAAC;AAqDF,eAAO,MAAM,UAAU,GACrB,OAAO,KAAK,EACZ,OAAM,iBAAsB,kBAmI7B,CAAC"}
|