@doist/twist-cli 2.36.2 → 2.36.4
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/CHANGELOG.md +12 -0
- package/dist/commands/auth/helpers.d.ts +8 -1
- package/dist/commands/auth/helpers.d.ts.map +1 -1
- package/dist/commands/auth/helpers.js +12 -7
- package/dist/commands/auth/helpers.js.map +1 -1
- package/dist/commands/auth/index.d.ts.map +1 -1
- package/dist/commands/auth/index.js +12 -12
- package/dist/commands/auth/index.js.map +1 -1
- package/dist/commands/auth/login.d.ts +3 -3
- package/dist/commands/auth/login.d.ts.map +1 -1
- package/dist/commands/auth/login.js +24 -62
- package/dist/commands/auth/login.js.map +1 -1
- package/dist/commands/auth/logout.d.ts +10 -1
- package/dist/commands/auth/logout.d.ts.map +1 -1
- package/dist/commands/auth/logout.js +18 -6
- package/dist/commands/auth/logout.js.map +1 -1
- package/dist/commands/auth/status.d.ts +15 -3
- package/dist/commands/auth/status.d.ts.map +1 -1
- package/dist/commands/auth/status.js +87 -22
- package/dist/commands/auth/status.js.map +1 -1
- package/dist/commands/changelog.d.ts +0 -5
- package/dist/commands/changelog.d.ts.map +1 -1
- package/dist/commands/changelog.js +9 -103
- package/dist/commands/changelog.js.map +1 -1
- package/dist/commands/channel/list.js +5 -5
- package/dist/commands/channel/list.js.map +1 -1
- package/dist/commands/config/view.d.ts.map +1 -1
- package/dist/commands/config/view.js +3 -3
- package/dist/commands/config/view.js.map +1 -1
- package/dist/commands/conversation/helpers.d.ts.map +1 -1
- package/dist/commands/conversation/helpers.js +4 -3
- package/dist/commands/conversation/helpers.js.map +1 -1
- package/dist/commands/conversation/unread.d.ts.map +1 -1
- package/dist/commands/conversation/unread.js +5 -4
- package/dist/commands/conversation/unread.js.map +1 -1
- package/dist/commands/conversation/view.d.ts.map +1 -1
- package/dist/commands/conversation/view.js +8 -6
- package/dist/commands/conversation/view.js.map +1 -1
- package/dist/commands/inbox.d.ts.map +1 -1
- package/dist/commands/inbox.js +9 -7
- package/dist/commands/inbox.js.map +1 -1
- package/dist/commands/thread/view.d.ts.map +1 -1
- package/dist/commands/thread/view.js +14 -12
- package/dist/commands/thread/view.js.map +1 -1
- package/dist/commands/update/index.d.ts.map +1 -1
- package/dist/commands/update/index.js +43 -14
- package/dist/commands/update/index.js.map +1 -1
- package/dist/index.js +27 -4
- package/dist/index.js.map +1 -1
- package/dist/lib/api.d.ts +16 -5
- package/dist/lib/api.d.ts.map +1 -1
- package/dist/lib/api.js +49 -3
- package/dist/lib/api.js.map +1 -1
- package/dist/lib/auth-pages.d.ts +3 -0
- package/dist/lib/auth-pages.d.ts.map +1 -0
- package/dist/lib/{oauth-server.js → auth-pages.js} +3 -120
- package/dist/lib/auth-pages.js.map +1 -0
- package/dist/lib/auth-provider.d.ts +28 -0
- package/dist/lib/auth-provider.d.ts.map +1 -0
- package/dist/lib/auth-provider.js +241 -0
- package/dist/lib/auth-provider.js.map +1 -0
- package/dist/lib/auth.d.ts +16 -10
- package/dist/lib/auth.d.ts.map +1 -1
- package/dist/lib/auth.js +18 -0
- package/dist/lib/auth.js.map +1 -1
- package/dist/lib/config.d.ts +23 -2
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +95 -47
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/errors.d.ts +15 -6
- package/dist/lib/errors.d.ts.map +1 -1
- package/dist/lib/errors.js +14 -9
- package/dist/lib/errors.js.map +1 -1
- package/dist/lib/global-args.d.ts +35 -21
- package/dist/lib/global-args.d.ts.map +1 -1
- package/dist/lib/global-args.js +84 -64
- package/dist/lib/global-args.js.map +1 -1
- package/dist/lib/markdown.d.ts +1 -0
- package/dist/lib/markdown.d.ts.map +1 -1
- package/dist/lib/markdown.js +9 -14
- package/dist/lib/markdown.js.map +1 -1
- package/dist/lib/options.d.ts +2 -3
- package/dist/lib/options.d.ts.map +1 -1
- package/dist/lib/output.d.ts +5 -3
- package/dist/lib/output.d.ts.map +1 -1
- package/dist/lib/output.js +15 -17
- package/dist/lib/output.js.map +1 -1
- package/dist/lib/skills/content.d.ts +1 -1
- package/dist/lib/skills/content.d.ts.map +1 -1
- package/dist/lib/skills/content.js +16 -6
- package/dist/lib/skills/content.js.map +1 -1
- package/dist/lib/spinner.d.ts +2 -23
- package/dist/lib/spinner.d.ts.map +1 -1
- package/dist/lib/spinner.js +6 -107
- package/dist/lib/spinner.js.map +1 -1
- package/dist/lib/update.d.ts +9 -13
- package/dist/lib/update.d.ts.map +1 -1
- package/dist/lib/update.js +17 -43
- package/dist/lib/update.js.map +1 -1
- package/package.json +7 -7
- package/dist/commands/update/action.d.ts +0 -12
- package/dist/commands/update/action.d.ts.map +0 -1
- package/dist/commands/update/action.js +0 -104
- package/dist/commands/update/action.js.map +0 -1
- package/dist/commands/update/switch.d.ts +0 -5
- package/dist/commands/update/switch.d.ts.map +0 -1
- package/dist/commands/update/switch.js +0 -28
- package/dist/commands/update/switch.js.map +0 -1
- package/dist/lib/oauth-server.d.ts +0 -13
- package/dist/lib/oauth-server.d.ts.map +0 -1
- package/dist/lib/oauth-server.js.map +0 -1
- package/dist/lib/oauth.d.ts +0 -31
- package/dist/lib/oauth.d.ts.map +0 -1
- package/dist/lib/oauth.js +0 -150
- package/dist/lib/oauth.js.map +0 -1
- package/dist/lib/pkce.d.ts +0 -16
- package/dist/lib/pkce.d.ts.map +0 -1
- package/dist/lib/pkce.js +0 -35
- package/dist/lib/pkce.js.map +0 -1
- package/dist/test-helpers/empty-output.d.ts +0 -18
- package/dist/test-helpers/empty-output.d.ts.map +0 -1
- package/dist/test-helpers/empty-output.js +0 -43
- package/dist/test-helpers/empty-output.js.map +0 -1
package/dist/lib/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/errors.d.ts
CHANGED
|
@@ -1,19 +1,28 @@
|
|
|
1
|
+
import { CliError as BaseCliError, type CliErrorCode, type ErrorType } from '@doist/cli-core';
|
|
2
|
+
export { BaseCliError };
|
|
3
|
+
export type { ErrorType } from '@doist/cli-core';
|
|
1
4
|
/**
|
|
2
5
|
* Known error codes used across the CLI.
|
|
3
6
|
* This union provides intellisense suggestions while still accepting any string,
|
|
4
7
|
* allowing dynamic codes and future additions.
|
|
5
8
|
*/
|
|
6
9
|
export type ErrorCode = 'AUTH_FAILED' | 'INSUFFICIENT_SCOPE' | 'INVALID_TOKEN' | 'NO_TOKEN' | 'READ_ONLY' | 'CONFLICTING_OPTIONS' | 'INVALID_CURSOR' | 'INVALID_DATE' | 'INVALID_ID' | 'INVALID_MINUTES' | 'INVALID_REF' | 'INVALID_SCOPE' | 'INVALID_STATE' | 'INVALID_TYPE' | 'INVALID_URL' | 'INVALID_VALUE' | 'MISSING_CONTENT' | 'MISSING_YES_FLAG' | 'UNKNOWN_KEY' | 'INVALID_NAME' | 'MISSING_USERS' | 'CHANNEL_NOT_FOUND' | 'GROUP_NOT_FOUND' | 'NOT_FOUND' | 'USER_NOT_FOUND' | 'WORKSPACE_NOT_FOUND' | 'AMBIGUOUS_CHANNEL' | 'AMBIGUOUS_GROUP' | 'AMBIGUOUS_USER' | 'AMBIGUOUS_WORKSPACE' | 'ALREADY_INSTALLED' | 'BATCH_FAILED' | 'FILE_READ_ERROR' | 'NOT_CREATOR' | 'NOT_INSTALLED' | 'UNKNOWN_AGENT' | 'API_ERROR' | 'INTERNAL_ERROR' | 'CONFIG_READ_FAILED' | 'CONFIG_INVALID_JSON' | 'CONFIG_INVALID_SHAPE' | (string & {});
|
|
7
|
-
export type ErrorType = 'error' | 'info';
|
|
8
10
|
/**
|
|
9
11
|
* Check whether an error is a Twist API 403 "Insufficient scope" response.
|
|
10
12
|
* Works with any error shaped like TwistRequestError (httpStatusCode + responseData).
|
|
11
13
|
*/
|
|
12
14
|
export declare function isInsufficientScope(error: unknown): boolean;
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
/**
|
|
16
|
+
* Twist-flavoured CliError that preserves the historical positional
|
|
17
|
+
* `(code, message, hints?, type?)` signature used across hundreds of call
|
|
18
|
+
* sites. Internally it forwards to the cli-core options-object form.
|
|
19
|
+
*
|
|
20
|
+
* `code` accepts the local twist `ErrorCode` union plus any cli-core
|
|
21
|
+
* canonical code (`CliErrorCode`), so call sites like
|
|
22
|
+
* `new CliError('CONFIG_READ_FAILED', …)` still type-check without
|
|
23
|
+
* `CONFIG_*` having to live in the local union.
|
|
24
|
+
*/
|
|
25
|
+
export declare class CliError extends BaseCliError<ErrorCode> {
|
|
26
|
+
constructor(code: ErrorCode | CliErrorCode, message: string, hints?: string[], type?: ErrorType);
|
|
18
27
|
}
|
|
19
28
|
//# sourceMappingURL=errors.d.ts.map
|
package/dist/lib/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/lib/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAEf,aAAa,GACb,oBAAoB,GACpB,eAAe,GACf,UAAU,GACV,WAAW,GAEX,qBAAqB,GACrB,gBAAgB,GAChB,cAAc,GACd,YAAY,GACZ,iBAAiB,GACjB,aAAa,GACb,eAAe,GACf,eAAe,GACf,cAAc,GACd,aAAa,GACb,eAAe,GACf,iBAAiB,GACjB,kBAAkB,GAClB,aAAa,GACb,cAAc,GACd,eAAe,GAEf,mBAAmB,GACnB,iBAAiB,GACjB,WAAW,GACX,gBAAgB,GAChB,qBAAqB,GAErB,mBAAmB,GACnB,iBAAiB,GACjB,gBAAgB,GAChB,qBAAqB,GAErB,mBAAmB,GACnB,cAAc,GACd,iBAAiB,GACjB,aAAa,GACb,eAAe,GACf,eAAe,GAEf,WAAW,GACX,gBAAgB,GAEhB,oBAAoB,GACpB,qBAAqB,GACrB,sBAAsB,GAEtB,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;AAEnB
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/lib/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE7F,OAAO,EAAE,YAAY,EAAE,CAAA;AACvB,YAAY,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAEhD;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAEf,aAAa,GACb,oBAAoB,GACpB,eAAe,GACf,UAAU,GACV,WAAW,GAEX,qBAAqB,GACrB,gBAAgB,GAChB,cAAc,GACd,YAAY,GACZ,iBAAiB,GACjB,aAAa,GACb,eAAe,GACf,eAAe,GACf,cAAc,GACd,aAAa,GACb,eAAe,GACf,iBAAiB,GACjB,kBAAkB,GAClB,aAAa,GACb,cAAc,GACd,eAAe,GAEf,mBAAmB,GACnB,iBAAiB,GACjB,WAAW,GACX,gBAAgB,GAChB,qBAAqB,GAErB,mBAAmB,GACnB,iBAAiB,GACjB,gBAAgB,GAChB,qBAAqB,GAErB,mBAAmB,GACnB,cAAc,GACd,iBAAiB,GACjB,aAAa,GACb,eAAe,GACf,eAAe,GAEf,WAAW,GACX,gBAAgB,GAEhB,oBAAoB,GACpB,qBAAqB,GACrB,sBAAsB,GAEtB,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;AAEnB;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAkB3D;AAED;;;;;;;;;GASG;AACH,qBAAa,QAAS,SAAQ,YAAY,CAAC,SAAS,CAAC;gBAE7C,IAAI,EAAE,SAAS,GAAG,YAAY,EAC9B,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,EAAE,EAChB,IAAI,GAAE,SAAmB;CAIhC"}
|
package/dist/lib/errors.js
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { CliError as BaseCliError } from '@doist/cli-core';
|
|
2
|
+
export { BaseCliError };
|
|
1
3
|
/**
|
|
2
4
|
* Check whether an error is a Twist API 403 "Insufficient scope" response.
|
|
3
5
|
* Works with any error shaped like TwistRequestError (httpStatusCode + responseData).
|
|
@@ -14,16 +16,19 @@ export function isInsufficientScope(error) {
|
|
|
14
16
|
typeof responseData?.error_string === 'string' &&
|
|
15
17
|
responseData.error_string.includes('Insufficient scope'));
|
|
16
18
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
/**
|
|
20
|
+
* Twist-flavoured CliError that preserves the historical positional
|
|
21
|
+
* `(code, message, hints?, type?)` signature used across hundreds of call
|
|
22
|
+
* sites. Internally it forwards to the cli-core options-object form.
|
|
23
|
+
*
|
|
24
|
+
* `code` accepts the local twist `ErrorCode` union plus any cli-core
|
|
25
|
+
* canonical code (`CliErrorCode`), so call sites like
|
|
26
|
+
* `new CliError('CONFIG_READ_FAILED', …)` still type-check without
|
|
27
|
+
* `CONFIG_*` having to live in the local union.
|
|
28
|
+
*/
|
|
29
|
+
export class CliError extends BaseCliError {
|
|
21
30
|
constructor(code, message, hints, type = 'error') {
|
|
22
|
-
super(message);
|
|
23
|
-
this.code = code;
|
|
24
|
-
this.hints = hints;
|
|
25
|
-
this.type = type;
|
|
26
|
-
this.name = 'CliError';
|
|
31
|
+
super(code, message, { hints, type });
|
|
27
32
|
}
|
|
28
33
|
}
|
|
29
34
|
//# sourceMappingURL=errors.js.map
|
package/dist/lib/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/lib/errors.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/lib/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAqC,MAAM,iBAAiB,CAAA;AAE7F,OAAO,EAAE,YAAY,EAAE,CAAA;AA4DvB;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAc;IAC9C,IACI,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,CAAC,CAAC,gBAAgB,IAAI,KAAK,CAAC;QAC5B,CAAC,CAAC,cAAc,IAAI,KAAK,CAAC,EAC5B,CAAC;QACC,OAAO,KAAK,CAAA;IAChB,CAAC;IACD,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,KAGxC,CAAA;IACD,OAAO,CACH,cAAc,KAAK,GAAG;QACtB,OAAO,YAAY,EAAE,YAAY,KAAK,QAAQ;QAC9C,YAAY,CAAC,YAAY,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAC3D,CAAA;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,OAAO,QAAS,SAAQ,YAAuB;IACjD,YACI,IAA8B,EAC9B,OAAe,EACf,KAAgB,EAChB,OAAkB,OAAO;QAEzB,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;IACzC,CAAC;CACJ"}
|
|
@@ -1,38 +1,52 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Per-CLI extension of `@doist/cli-core`'s global-args parser.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
4
|
+
* Layers twist's `--include-private-channels`, `--non-interactive`,
|
|
5
|
+
* `--interactive`, and the `--progress-jsonl <path>` space form on top of
|
|
6
|
+
* the subset of cli-core's canonical shape that twist actually registers
|
|
7
|
+
* with Commander (`--json`, `--ndjson`, `--accessible`, `--no-spinner`,
|
|
8
|
+
* `--progress-jsonl[=path]`).
|
|
7
9
|
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
+
* cli-core's parser also surfaces `quiet` and `verbose` from argv, but
|
|
11
|
+
* twist does not register `--quiet` or `--verbose` globally (Commander
|
|
12
|
+
* would reject them) — so we drop them from the exported shape to avoid
|
|
13
|
+
* the type/API leak where helpers believe the binary supports them.
|
|
10
14
|
*/
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
15
|
+
import { type GlobalArgs as CoreGlobalArgs } from '@doist/cli-core';
|
|
16
|
+
type TwSpecificFlags = {
|
|
17
|
+
/** Bare/string/false — see `TwLocalFlags.progressJsonl` for semantics. */
|
|
18
|
+
progressJsonl: string | true | false;
|
|
19
|
+
/** Resolved path for `--progress-jsonl` (any form). `undefined` when bare or absent. */
|
|
16
20
|
progressJsonlPath: string | undefined;
|
|
17
21
|
includePrivateChannels: boolean;
|
|
18
|
-
accessible: boolean;
|
|
19
22
|
nonInteractive: boolean;
|
|
20
23
|
interactive: boolean;
|
|
21
|
-
}
|
|
24
|
+
};
|
|
22
25
|
/**
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
26
|
+
* Public shape exposed to twist callers. Drops cli-core's `quiet` and
|
|
27
|
+
* `verbose` because twist does not register `--quiet` / `--verbose` with
|
|
28
|
+
* Commander — exposing them in the type would lie about what the binary
|
|
29
|
+
* supports.
|
|
30
|
+
*/
|
|
31
|
+
export type TwGlobalArgs = Pick<CoreGlobalArgs, 'json' | 'ndjson' | 'accessible' | 'noSpinner'> & TwSpecificFlags;
|
|
32
|
+
/** Back-compat alias — pre-cli-core twist code imported `GlobalArgs` from this module. */
|
|
33
|
+
export type GlobalArgs = TwGlobalArgs;
|
|
34
|
+
/**
|
|
35
|
+
* Parse well-known global flags from an argv array. Pure — pass an explicit
|
|
36
|
+
* array for testing, or omit to read `process.argv`. Returns the narrowed
|
|
37
|
+
* twist surface; cli-core's `quiet` and `verbose` are intentionally
|
|
38
|
+
* dropped (see {@link TwGlobalArgs}).
|
|
27
39
|
*/
|
|
28
|
-
export declare function parseGlobalArgs(argv?: string[]):
|
|
40
|
+
export declare function parseGlobalArgs(argv?: string[]): TwGlobalArgs;
|
|
29
41
|
/** Clear the cached parse result. Call in test teardown. */
|
|
30
|
-
export declare
|
|
42
|
+
export declare const resetGlobalArgs: () => void;
|
|
31
43
|
export declare function isJsonMode(): boolean;
|
|
32
|
-
export declare function
|
|
44
|
+
export declare function isNdjsonMode(): boolean;
|
|
33
45
|
export declare function isNonInteractive(): boolean;
|
|
34
46
|
export declare function includePrivateChannels(): boolean;
|
|
35
|
-
export declare function shouldDisableSpinner(): boolean;
|
|
36
47
|
export declare function isProgressJsonlEnabled(): boolean;
|
|
37
48
|
export declare function getProgressJsonlPath(): string | undefined;
|
|
49
|
+
export declare const isAccessible: () => boolean;
|
|
50
|
+
export declare const shouldDisableSpinner: () => boolean;
|
|
51
|
+
export {};
|
|
38
52
|
//# sourceMappingURL=global-args.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global-args.d.ts","sourceRoot":"","sources":["../../src/lib/global-args.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"global-args.d.ts","sourceRoot":"","sources":["../../src/lib/global-args.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAIH,KAAK,UAAU,IAAI,cAAc,EAEpC,MAAM,iBAAiB,CAAA;AAExB,KAAK,eAAe,GAAG;IACnB,0EAA0E;IAC1E,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,KAAK,CAAA;IACpC,wFAAwF;IACxF,iBAAiB,EAAE,MAAM,GAAG,SAAS,CAAA;IACrC,sBAAsB,EAAE,OAAO,CAAA;IAC/B,cAAc,EAAE,OAAO,CAAA;IACvB,WAAW,EAAE,OAAO,CAAA;CACvB,CAAA;AAED;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,QAAQ,GAAG,YAAY,GAAG,WAAW,CAAC,GAC3F,eAAe,CAAA;AAEnB,0FAA0F;AAC1F,MAAM,MAAM,UAAU,GAAG,YAAY,CAAA;AA+ErC;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,YAAY,CAG7D;AAID,4DAA4D;AAC5D,eAAO,MAAM,eAAe,YAAc,CAAA;AAM1C,wBAAgB,UAAU,IAAI,OAAO,CAEpC;AAED,wBAAgB,YAAY,IAAI,OAAO,CAEtC;AAED,wBAAgB,gBAAgB,IAAI,OAAO,CAK1C;AAED,wBAAgB,sBAAsB,IAAI,OAAO,CAMhD;AAED,wBAAgB,sBAAsB,IAAI,OAAO,CAEhD;AAED,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,SAAS,CAEzD;AAED,eAAO,MAAM,YAAY,eAGvB,CAAA;AAEF,eAAO,MAAM,oBAAoB,eAI/B,CAAA"}
|
package/dist/lib/global-args.js
CHANGED
|
@@ -1,75 +1,94 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Per-CLI extension of `@doist/cli-core`'s global-args parser.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
4
|
+
* Layers twist's `--include-private-channels`, `--non-interactive`,
|
|
5
|
+
* `--interactive`, and the `--progress-jsonl <path>` space form on top of
|
|
6
|
+
* the subset of cli-core's canonical shape that twist actually registers
|
|
7
|
+
* with Commander (`--json`, `--ndjson`, `--accessible`, `--no-spinner`,
|
|
8
|
+
* `--progress-jsonl[=path]`).
|
|
7
9
|
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
+
* cli-core's parser also surfaces `quiet` and `verbose` from argv, but
|
|
11
|
+
* twist does not register `--quiet` or `--verbose` globally (Commander
|
|
12
|
+
* would reject them) — so we drop them from the exported shape to avoid
|
|
13
|
+
* the type/API leak where helpers believe the binary supports them.
|
|
10
14
|
*/
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
let progressJsonlPath;
|
|
27
|
-
if (progressIndices.length > 0) {
|
|
28
|
-
const { arg, index } = progressIndices[progressIndices.length - 1];
|
|
29
|
-
if (arg.includes('=')) {
|
|
30
|
-
progressJsonlPath = arg.slice(arg.indexOf('=') + 1);
|
|
15
|
+
import { createAccessibleGate, createGlobalArgsStore, createSpinnerGate, parseGlobalArgs as parseCoreGlobalArgs, } from '@doist/cli-core';
|
|
16
|
+
function parseTwLocalFlags(argv) {
|
|
17
|
+
let includePrivate = false;
|
|
18
|
+
let nonInteractive = false;
|
|
19
|
+
let interactive = false;
|
|
20
|
+
let progressJsonl = false;
|
|
21
|
+
for (let i = 0; i < argv.length; i++) {
|
|
22
|
+
const arg = argv[i];
|
|
23
|
+
if (arg === '--')
|
|
24
|
+
break;
|
|
25
|
+
if (arg === '--include-private-channels') {
|
|
26
|
+
includePrivate = true;
|
|
27
|
+
}
|
|
28
|
+
else if (arg === '--non-interactive') {
|
|
29
|
+
nonInteractive = true;
|
|
31
30
|
}
|
|
32
|
-
else if (
|
|
33
|
-
|
|
31
|
+
else if (arg === '--interactive') {
|
|
32
|
+
interactive = true;
|
|
33
|
+
}
|
|
34
|
+
else if (arg === '--progress-jsonl') {
|
|
35
|
+
// Bare or space form. Last one wins — overwrite any prior value.
|
|
36
|
+
if (i + 1 < argv.length && !argv[i + 1].startsWith('-')) {
|
|
37
|
+
progressJsonl = argv[i + 1];
|
|
38
|
+
i++;
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
progressJsonl = true;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
else if (arg.startsWith('--progress-jsonl=')) {
|
|
45
|
+
progressJsonl = arg.slice('--progress-jsonl='.length);
|
|
34
46
|
}
|
|
35
47
|
}
|
|
36
48
|
return {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
progressJsonl
|
|
41
|
-
progressJsonlPath,
|
|
42
|
-
includePrivateChannels: has('--include-private-channels'),
|
|
43
|
-
accessible: has('--accessible'),
|
|
44
|
-
nonInteractive: has('--non-interactive'),
|
|
45
|
-
interactive: has('--interactive'),
|
|
49
|
+
includePrivateChannels: includePrivate,
|
|
50
|
+
nonInteractive,
|
|
51
|
+
interactive,
|
|
52
|
+
progressJsonl,
|
|
46
53
|
};
|
|
47
54
|
}
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
55
|
+
function parseFullArgs(argv) {
|
|
56
|
+
const args = argv ?? process.argv;
|
|
57
|
+
const base = parseCoreGlobalArgs(args);
|
|
58
|
+
const local = parseTwLocalFlags(args);
|
|
59
|
+
return {
|
|
60
|
+
...base,
|
|
61
|
+
progressJsonl: local.progressJsonl,
|
|
62
|
+
progressJsonlPath: typeof local.progressJsonl === 'string' ? local.progressJsonl : undefined,
|
|
63
|
+
includePrivateChannels: local.includePrivateChannels,
|
|
64
|
+
nonInteractive: local.nonInteractive,
|
|
65
|
+
interactive: local.interactive,
|
|
66
|
+
};
|
|
57
67
|
}
|
|
58
|
-
/**
|
|
59
|
-
|
|
60
|
-
|
|
68
|
+
/**
|
|
69
|
+
* Parse well-known global flags from an argv array. Pure — pass an explicit
|
|
70
|
+
* array for testing, or omit to read `process.argv`. Returns the narrowed
|
|
71
|
+
* twist surface; cli-core's `quiet` and `verbose` are intentionally
|
|
72
|
+
* dropped (see {@link TwGlobalArgs}).
|
|
73
|
+
*/
|
|
74
|
+
export function parseGlobalArgs(argv) {
|
|
75
|
+
const { quiet: _quiet, verbose: _verbose, ...rest } = parseFullArgs(argv);
|
|
76
|
+
return rest;
|
|
61
77
|
}
|
|
78
|
+
const store = createGlobalArgsStore(() => parseFullArgs());
|
|
79
|
+
/** Clear the cached parse result. Call in test teardown. */
|
|
80
|
+
export const resetGlobalArgs = store.reset;
|
|
62
81
|
// ---------------------------------------------------------------------------
|
|
63
82
|
// Query functions — drop-in replacements for the old process.argv checks
|
|
64
83
|
// ---------------------------------------------------------------------------
|
|
65
84
|
export function isJsonMode() {
|
|
66
|
-
return
|
|
85
|
+
return store.get().json;
|
|
67
86
|
}
|
|
68
|
-
export function
|
|
69
|
-
return
|
|
87
|
+
export function isNdjsonMode() {
|
|
88
|
+
return store.get().ndjson;
|
|
70
89
|
}
|
|
71
90
|
export function isNonInteractive() {
|
|
72
|
-
const args =
|
|
91
|
+
const args = store.get();
|
|
73
92
|
if (args.interactive)
|
|
74
93
|
return false;
|
|
75
94
|
if (args.nonInteractive)
|
|
@@ -81,20 +100,21 @@ export function includePrivateChannels() {
|
|
|
81
100
|
if (envVal === '1' || envVal === 'true') {
|
|
82
101
|
return true;
|
|
83
102
|
}
|
|
84
|
-
return
|
|
85
|
-
}
|
|
86
|
-
export function shouldDisableSpinner() {
|
|
87
|
-
if (process.env.TW_SPINNER === 'false')
|
|
88
|
-
return true;
|
|
89
|
-
if (process.env.CI)
|
|
90
|
-
return true;
|
|
91
|
-
const args = getGlobalArgs();
|
|
92
|
-
return args.json || args.ndjson || args.noSpinner || args.progressJsonl || args.nonInteractive;
|
|
103
|
+
return store.get().includePrivateChannels;
|
|
93
104
|
}
|
|
94
105
|
export function isProgressJsonlEnabled() {
|
|
95
|
-
return
|
|
106
|
+
return store.get().progressJsonl !== false;
|
|
96
107
|
}
|
|
97
108
|
export function getProgressJsonlPath() {
|
|
98
|
-
return
|
|
109
|
+
return store.get().progressJsonlPath;
|
|
99
110
|
}
|
|
111
|
+
export const isAccessible = createAccessibleGate({
|
|
112
|
+
envVar: 'TW_ACCESSIBLE',
|
|
113
|
+
getArgs: store.get,
|
|
114
|
+
});
|
|
115
|
+
export const shouldDisableSpinner = createSpinnerGate({
|
|
116
|
+
envVar: 'TW_SPINNER',
|
|
117
|
+
getArgs: store.get,
|
|
118
|
+
extraTriggers: () => store.get().nonInteractive,
|
|
119
|
+
});
|
|
100
120
|
//# sourceMappingURL=global-args.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global-args.js","sourceRoot":"","sources":["../../src/lib/global-args.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"global-args.js","sourceRoot":"","sources":["../../src/lib/global-args.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/markdown.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../src/lib/markdown.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../src/lib/markdown.ts"],"names":[],"mappings":"AAWA,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAGrD;AAED,wBAAsB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAGrE"}
|
package/dist/lib/markdown.js
CHANGED
|
@@ -1,20 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
let markedInstance = null;
|
|
4
|
-
function getMarkedInstance() {
|
|
5
|
-
if (!markedInstance) {
|
|
6
|
-
const instance = new Marked();
|
|
7
|
-
instance.use(createTerminalRenderer(darkTheme()));
|
|
8
|
-
markedInstance = instance;
|
|
9
|
-
}
|
|
10
|
-
return markedInstance;
|
|
11
|
-
}
|
|
1
|
+
import { preloadMarkdown as corePreloadMarkdown, renderMarkdown as coreRenderMarkdown, } from '@doist/cli-core/markdown';
|
|
2
|
+
let preloadPromise = null;
|
|
12
3
|
function preprocessMentions(content) {
|
|
13
4
|
return content.replace(/\[([^\]]+)\]\((twist-mention:\/\/\d+)\)/g, '[@$1]($2)');
|
|
14
5
|
}
|
|
6
|
+
export async function preloadMarkdown() {
|
|
7
|
+
if (!preloadPromise)
|
|
8
|
+
preloadPromise = corePreloadMarkdown();
|
|
9
|
+
return preloadPromise;
|
|
10
|
+
}
|
|
15
11
|
export async function renderMarkdown(content) {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
return rendered.trimEnd();
|
|
12
|
+
await preloadMarkdown();
|
|
13
|
+
return coreRenderMarkdown(preprocessMentions(content));
|
|
19
14
|
}
|
|
20
15
|
//# sourceMappingURL=markdown.js.map
|
package/dist/lib/markdown.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../src/lib/markdown.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../src/lib/markdown.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,eAAe,IAAI,mBAAmB,EACtC,cAAc,IAAI,kBAAkB,GACvC,MAAM,0BAA0B,CAAA;AAEjC,IAAI,cAAc,GAAyB,IAAI,CAAA;AAE/C,SAAS,kBAAkB,CAAC,OAAe;IACvC,OAAO,OAAO,CAAC,OAAO,CAAC,0CAA0C,EAAE,WAAW,CAAC,CAAA;AACnF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe;IACjC,IAAI,CAAC,cAAc;QAAE,cAAc,GAAG,mBAAmB,EAAE,CAAA;IAC3D,OAAO,cAAc,CAAA;AACzB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAAe;IAChD,MAAM,eAAe,EAAE,CAAA;IACvB,OAAO,kBAAkB,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAA;AAC1D,CAAC"}
|
package/dist/lib/options.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/lib/options.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/lib/options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,IAAI,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAErE,MAAM,MAAM,WAAW,GAAG,eAAe,GAAG;IACxC,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,GAAG,CAAC,EAAE,OAAO,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,WAAW,GAAG;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,IAAI,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA"}
|
package/dist/lib/output.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { BaseCliError } from './errors.js';
|
|
2
|
+
type AnyCliError = BaseCliError<string>;
|
|
2
3
|
export declare const colors: {
|
|
3
4
|
author: import("chalk").ChalkInstance;
|
|
4
5
|
timestamp: import("chalk").ChalkInstance;
|
|
@@ -18,9 +19,9 @@ export interface PaginatedOutput<T> {
|
|
|
18
19
|
}
|
|
19
20
|
export declare function formatPaginatedJson<T extends object>(data: PaginatedOutput<T>, type?: EntityType, full?: boolean): string;
|
|
20
21
|
export declare function formatPaginatedNdjson<T extends object>(data: PaginatedOutput<T>, type?: EntityType, full?: boolean): string;
|
|
21
|
-
export declare function formatError(error:
|
|
22
|
+
export declare function formatError(error: AnyCliError): string;
|
|
22
23
|
export declare function formatError(message: string): string;
|
|
23
|
-
export declare function formatErrorJson(error:
|
|
24
|
+
export declare function formatErrorJson(error: AnyCliError): string;
|
|
24
25
|
export declare function formatErrorJson(code: string, message: string, hints?: string[]): string;
|
|
25
26
|
export declare function printError(message: string): void;
|
|
26
27
|
export declare function printJson<T extends object>(data: T | T[], type?: EntityType, full?: boolean): void;
|
|
@@ -36,4 +37,5 @@ export declare function printEmpty({ options, type, message, }: {
|
|
|
36
37
|
}): void;
|
|
37
38
|
export declare function pluralize(count: number, singular: string): string;
|
|
38
39
|
export declare function printDryRun(action: string, details?: Record<string, string | undefined>): void;
|
|
40
|
+
export {};
|
|
39
41
|
//# sourceMappingURL=output.d.ts.map
|
package/dist/lib/output.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../src/lib/output.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../src/lib/output.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/output.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { formatJson as formatJsonCore, formatNdjson as formatNdjsonCore } from '@doist/cli-core';
|
|
1
2
|
import chalk from 'chalk';
|
|
2
3
|
export const colors = {
|
|
3
4
|
author: chalk.cyan,
|
|
@@ -91,30 +92,27 @@ export function filterEntityFields(data, type, full = false) {
|
|
|
91
92
|
return pickFields(data, fields);
|
|
92
93
|
}
|
|
93
94
|
export function formatJson(data, type, full = false) {
|
|
94
|
-
if (full || !type)
|
|
95
|
-
return
|
|
96
|
-
|
|
97
|
-
return JSON.stringify(filterEntityFields(data, type), null, 2);
|
|
95
|
+
if (full || !type)
|
|
96
|
+
return formatJsonCore(data);
|
|
97
|
+
return formatJsonCore(filterEntityFields(data, type));
|
|
98
98
|
}
|
|
99
99
|
export function formatNdjson(items, type, full = false) {
|
|
100
|
-
if (full || !type)
|
|
101
|
-
return items
|
|
102
|
-
|
|
103
|
-
return filterEntityFields(items, type)
|
|
104
|
-
.map((item) => JSON.stringify(item))
|
|
105
|
-
.join('\n');
|
|
100
|
+
if (full || !type)
|
|
101
|
+
return formatNdjsonCore(items);
|
|
102
|
+
return formatNdjsonCore(filterEntityFields(items, type));
|
|
106
103
|
}
|
|
107
104
|
export function formatPaginatedJson(data, type, full = false) {
|
|
108
105
|
const results = type ? filterEntityFields(data.results, type, full) : data.results;
|
|
109
|
-
return
|
|
106
|
+
return formatJson({ results, nextCursor: data.nextCursor });
|
|
110
107
|
}
|
|
111
108
|
export function formatPaginatedNdjson(data, type, full = false) {
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
109
|
+
if (!data.nextCursor)
|
|
110
|
+
return formatNdjson(data.results, type, full);
|
|
111
|
+
// Build the trailer with a string concat (not an array spread) so a
|
|
112
|
+
// 10k-row page doesn't pay an O(n) copy just to add one meta line.
|
|
113
|
+
const body = formatNdjson(data.results, type, full);
|
|
114
|
+
const trailer = JSON.stringify({ _meta: true, nextCursor: data.nextCursor });
|
|
115
|
+
return body ? `${body}\n${trailer}` : trailer;
|
|
118
116
|
}
|
|
119
117
|
export function formatError(messageOrError) {
|
|
120
118
|
if (typeof messageOrError === 'string') {
|
package/dist/lib/output.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/lib/output.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/lib/output.ts"],"names":[],"mappings":"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"}
|