auklet 0.1.4 → 0.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/README.md +113 -429
  2. package/dist/cli/build.d.ts +3 -5
  3. package/dist/cli/build.js +84 -23
  4. package/dist/cli/buildCss.d.ts +10 -5
  5. package/dist/cli/buildCss.js +21 -17
  6. package/dist/cli/buildWorkspace.d.ts +23 -0
  7. package/dist/cli/buildWorkspace.js +43 -0
  8. package/dist/cli/dev.d.ts +2 -1
  9. package/dist/cli/dev.js +128 -23
  10. package/dist/cli/main.js +36 -12
  11. package/dist/cli/parse/build.d.ts +62 -0
  12. package/dist/cli/{buildArgs.js → parse/build.js} +47 -22
  13. package/dist/cli/parse/core.d.ts +14 -0
  14. package/dist/cli/parse/core.js +68 -0
  15. package/dist/cli/parse/dev.d.ts +17 -0
  16. package/dist/cli/parse/dev.js +4 -0
  17. package/dist/cli/parse/owner.d.ts +11 -0
  18. package/dist/cli/parse/owner.js +25 -0
  19. package/dist/cli/parse/publish.d.ts +19 -0
  20. package/dist/cli/parse/publish.js +60 -0
  21. package/dist/cli/parse/workspace.d.ts +12 -0
  22. package/dist/cli/parse/workspace.js +45 -0
  23. package/dist/css/inspect.js +4 -3
  24. package/dist/publish/api/pnpmApi.d.ts +0 -4
  25. package/dist/publish/api/pnpmApi.js +0 -34
  26. package/dist/publish/cli.d.ts +0 -16
  27. package/dist/publish/cli.js +5 -122
  28. package/dist/publish/inspect.js +2 -2
  29. package/dist/publish/targetResolver.js +26 -71
  30. package/dist/publish/types.d.ts +1 -7
  31. package/dist/workspace/targets.d.ts +31 -0
  32. package/dist/workspace/targets.js +144 -0
  33. package/package.json +1 -1
  34. package/dist/cli/buildArgs.d.ts +0 -9
  35. package/dist/cli/publish.d.ts +0 -2
  36. package/dist/cli/publish.js +0 -9
  37. /package/dist/cli/{values.d.ts → parse/values.d.ts} +0 -0
  38. /package/dist/cli/{values.js → parse/values.js} +0 -0
@@ -1,13 +1,48 @@
1
1
  import { hasTsdownConfigArg } from '#auklet/build/runTsdown';
2
2
  import { aukletCliConfigOverridesEnv, encodeAukletCliConfigOverrides, } from '#auklet/build/cliOverrides';
3
- import { resolveCliBoolean, resolveCliValue } from '#auklet/cli/values';
4
- import { AukletEnvContext } from '#auklet/env';
3
+ import { resolveCliBoolean, resolveCliValue } from '#auklet/cli/parse/values';
4
+ import { readFlagValue, readOptionalFlagValue } from '#auklet/cli/parse/core';
5
+ import { parseWorkspaceSelectionArgs } from '#auklet/cli/parse/workspace';
5
6
  const buildFormats = new Set(['cjs', 'esm', 'iife']);
6
7
  const buildPlatforms = new Set(['node', 'neutral', 'browser']);
7
8
  const hasAukletConfig = (config) => {
8
9
  return Object.keys(config).length > 0;
9
10
  };
10
- export function resolveBuildCliArgs(args, envContext = new AukletEnvContext(process.cwd())) {
11
+ export function parseBuildCommand(args, options) {
12
+ const workspaceArgs = parseWorkspaceSelectionArgs(args, options.envContext);
13
+ const buildArgs = parseBuildOverrideArgs(workspaceArgs.remainingArgs, options.envContext);
14
+ return {
15
+ cwd: options.cwd,
16
+ envContext: options.envContext,
17
+ workspace: workspaceArgs.workspace,
18
+ overrides: buildArgs.config,
19
+ passthroughArgs: buildArgs.args,
20
+ workspaceScriptArgs: workspaceArgs.remainingArgs,
21
+ };
22
+ }
23
+ export function parseBuildJsCommand(args, options) {
24
+ const buildArgs = parseBuildOverrideArgs(args, options.envContext);
25
+ return {
26
+ cwd: options.cwd,
27
+ envContext: options.envContext,
28
+ overrides: buildArgs.config,
29
+ passthroughArgs: buildArgs.args,
30
+ };
31
+ }
32
+ export function parseBuildCssCommand(args, options) {
33
+ const buildArgs = parseBuildOverrideArgs(args, options.envContext);
34
+ const remainingArgs = buildArgs.args.filter((arg) => arg !== '--watch' && arg !== '-w');
35
+ if (remainingArgs.length) {
36
+ throw new Error(`[build-css] unknown build-css argument: ${remainingArgs[0]}`);
37
+ }
38
+ return {
39
+ cwd: options.cwd,
40
+ envContext: options.envContext,
41
+ overrides: buildArgs.config,
42
+ watch: buildArgs.args.includes('--watch') || buildArgs.args.includes('-w'),
43
+ };
44
+ }
45
+ export function parseBuildOverrideArgs(args, envContext) {
11
46
  const remainingArgs = [];
12
47
  const config = {};
13
48
  for (let index = 0; index < args.length; index += 1) {
@@ -26,7 +61,7 @@ export function resolveBuildCliArgs(args, envContext = new AukletEnvContext(proc
26
61
  continue;
27
62
  }
28
63
  if (name === '--modules') {
29
- const value = getOptionalFlagValue(args, index, inlineValue);
64
+ const value = readOptionalFlagValue(args, index, inlineValue);
30
65
  config.modules =
31
66
  value === undefined
32
67
  ? true
@@ -42,7 +77,12 @@ export function resolveBuildCliArgs(args, envContext = new AukletEnvContext(proc
42
77
  if (name === '--build.formats') {
43
78
  config.build = {
44
79
  ...config.build,
45
- formats: parseBuildFormats(getResolvedFlagValue(args, index, inlineValue, name, envContext)),
80
+ formats: parseBuildFormats(inlineValue === undefined
81
+ ? getResolvedFlagValue(args, index, inlineValue, name, envContext)
82
+ : (resolveCliValue(inlineValue, {
83
+ label: name,
84
+ context: envContext,
85
+ }) ?? inlineValue)),
46
86
  };
47
87
  if (inlineValue === undefined)
48
88
  index += 1;
@@ -92,23 +132,8 @@ export function createBuildEnv(config) {
92
132
  [aukletCliConfigOverridesEnv]: encodeAukletCliConfigOverrides(config),
93
133
  };
94
134
  }
95
- const getFlagValue = (args, index, inlineValue, flag) => {
96
- const value = inlineValue ?? args[index + 1];
97
- if (!value || value.startsWith('--')) {
98
- throw new Error(`${flag} requires a value.`);
99
- }
100
- return value;
101
- };
102
- const getOptionalFlagValue = (args, index, inlineValue) => {
103
- if (inlineValue !== undefined)
104
- return inlineValue;
105
- const value = args[index + 1];
106
- if (!value || value.startsWith('--'))
107
- return undefined;
108
- return value;
109
- };
110
135
  const getResolvedFlagValue = (args, index, inlineValue, flag, envContext) => {
111
- return resolveCliValue(getFlagValue(args, index, inlineValue, flag), {
136
+ return resolveCliValue(readFlagValue(args, index, inlineValue, flag), {
112
137
  label: flag,
113
138
  context: envContext,
114
139
  });
@@ -116,7 +141,7 @@ const getResolvedFlagValue = (args, index, inlineValue, flag, envContext) => {
116
141
  const parseBuildFormats = (value) => {
117
142
  const formats = value
118
143
  .split(',')
119
- .map((format) => format.trim())
144
+ .map((item) => item.trim())
120
145
  .filter(Boolean);
121
146
  if (!formats.length) {
122
147
  throw new Error('--build.formats requires at least one format.');
@@ -0,0 +1,14 @@
1
+ import type { AukletEnvContext } from '#auklet/env';
2
+ export declare function stripArgsSeparator(args: Array<string>): string[];
3
+ export declare function readFlagValue(args: Array<string>, index: number, inlineValue: string | undefined, flag: string): string;
4
+ export declare function readOptionalFlagValue(args: Array<string>, index: number, inlineValue: string | undefined): string | undefined;
5
+ export declare function dedupe<T>(items: Array<T>): T[];
6
+ export declare function stringOption(value: unknown, label: string, envContext: AukletEnvContext): string | undefined;
7
+ export declare function deferredStringOption(value: unknown, label: string): {
8
+ raw: string;
9
+ resolve(context: AukletEnvContext): string | undefined;
10
+ } | undefined;
11
+ export declare function booleanOption(value: unknown, label: string, envContext: AukletEnvContext, defaultValue?: boolean): boolean;
12
+ export declare function stringArrayOption(value: unknown, label: string, envContext: AukletEnvContext): string[];
13
+ export declare function validateUnknownFlags(argv: Record<string, unknown>, allowedFlags: Set<string>, scope: string): void;
14
+ export declare function validateNoPrefixedFlags(args: Array<string>, allowedFlags: Set<string>, scope: string): void;
@@ -0,0 +1,68 @@
1
+ import { isArray } from 'aidly';
2
+ import { createDeferredCliValue, resolveCliBoolean, resolveCliValue, } from '#auklet/cli/parse/values';
3
+ export function stripArgsSeparator(args) {
4
+ return args.filter((arg) => arg !== '--');
5
+ }
6
+ export function readFlagValue(args, index, inlineValue, flag) {
7
+ const value = inlineValue ?? args[index + 1];
8
+ if (!value || value.startsWith('--')) {
9
+ throw new Error(`${flag} requires a value.`);
10
+ }
11
+ return value;
12
+ }
13
+ export function readOptionalFlagValue(args, index, inlineValue) {
14
+ if (inlineValue !== undefined)
15
+ return inlineValue;
16
+ const value = args[index + 1];
17
+ if (!value || value.startsWith('--'))
18
+ return undefined;
19
+ return value;
20
+ }
21
+ export function dedupe(items) {
22
+ return [...new Set(items)];
23
+ }
24
+ export function stringOption(value, label, envContext) {
25
+ if (value === undefined)
26
+ return undefined;
27
+ if (isArray(value))
28
+ return stringOption(value.at(-1), label, envContext);
29
+ return resolveCliValue(String(value), { label, context: envContext });
30
+ }
31
+ export function deferredStringOption(value, label) {
32
+ if (value === undefined)
33
+ return undefined;
34
+ if (isArray(value))
35
+ return deferredStringOption(value.at(-1), label);
36
+ return createDeferredCliValue(String(value), { label });
37
+ }
38
+ export function booleanOption(value, label, envContext, defaultValue = false) {
39
+ if (value === undefined)
40
+ return defaultValue;
41
+ if (isArray(value)) {
42
+ return booleanOption(value.at(-1), label, envContext, defaultValue);
43
+ }
44
+ if (typeof value === 'boolean')
45
+ return value;
46
+ return resolveCliBoolean(String(value), { label, context: envContext });
47
+ }
48
+ export function stringArrayOption(value, label, envContext) {
49
+ if (value === undefined)
50
+ return [];
51
+ const values = isArray(value)
52
+ ? value.map((item) => stringOption(item, label, envContext)).filter(Boolean)
53
+ : [stringOption(value, label, envContext)].filter(Boolean);
54
+ return values.filter((item) => Boolean(item));
55
+ }
56
+ export function validateUnknownFlags(argv, allowedFlags, scope) {
57
+ for (const flag of Object.keys(argv)) {
58
+ if (!allowedFlags.has(flag)) {
59
+ throw new Error(`[${scope}] unknown option: --${flag}`);
60
+ }
61
+ }
62
+ }
63
+ export function validateNoPrefixedFlags(args, allowedFlags, scope) {
64
+ const flag = args.find((arg) => arg.startsWith('--no-') && !allowedFlags.has(arg));
65
+ if (flag) {
66
+ throw new Error(`[${scope}] unknown option: ${flag}`);
67
+ }
68
+ }
@@ -0,0 +1,17 @@
1
+ import type { AukletEnvContext } from '#auklet/env';
2
+ import type { BuildCommandOptions } from '#auklet/cli/parse/build';
3
+ export type DevCommandOptions = BuildCommandOptions;
4
+ export declare function parseDevCommand(args: Array<string>, options: {
5
+ cwd: string;
6
+ envContext: AukletEnvContext;
7
+ }): {
8
+ cwd: string;
9
+ envContext: AukletEnvContext;
10
+ workspace: {
11
+ filters: string[];
12
+ includeDependencies: boolean;
13
+ };
14
+ overrides: import("../..").AukletConfig;
15
+ passthroughArgs: string[];
16
+ workspaceScriptArgs: string[];
17
+ };
@@ -0,0 +1,4 @@
1
+ import { parseBuildCommand } from '#auklet/cli/parse/build';
2
+ export function parseDevCommand(args, options) {
3
+ return parseBuildCommand(args, options);
4
+ }
@@ -0,0 +1,11 @@
1
+ import type { AukletEnvContext } from '#auklet/env';
2
+ export declare function parseOwnerCommand(args: Array<string>, options: {
3
+ cwd: string;
4
+ envContext: AukletEnvContext;
5
+ }): {
6
+ cwd: string;
7
+ users: string[];
8
+ filters: string[];
9
+ packages: string[];
10
+ otp: string | undefined;
11
+ };
@@ -0,0 +1,25 @@
1
+ import minimist from 'minimist';
2
+ import { stringArrayOption, stringOption, stripArgsSeparator, validateNoPrefixedFlags, validateUnknownFlags, } from '#auklet/cli/parse/core';
3
+ const ownerFlags = new Set(['_', 'filter', 'package', 'otp']);
4
+ export function parseOwnerCommand(args, options) {
5
+ const cliArgs = stripArgsSeparator(args);
6
+ validateNoPrefixedFlags(cliArgs, new Set(), 'publish');
7
+ const argv = minimist(cliArgs, {
8
+ string: ['filter', 'package', 'otp'],
9
+ });
10
+ validateUnknownFlags(argv, ownerFlags, 'publish');
11
+ const [subcommand, ...users] = argv._;
12
+ if (subcommand !== 'add') {
13
+ throw new Error('[publish] expected owner command: auk owner add <user...>');
14
+ }
15
+ if (!users.length) {
16
+ throw new Error('[publish] owner add requires at least one user.');
17
+ }
18
+ return {
19
+ cwd: options.cwd,
20
+ users,
21
+ filters: stringArrayOption(argv.filter, '--filter', options.envContext),
22
+ packages: stringArrayOption(argv.package, '--package', options.envContext),
23
+ otp: stringOption(argv.otp, '--otp', options.envContext),
24
+ };
25
+ }
@@ -0,0 +1,19 @@
1
+ import type { AukletEnvContext } from '#auklet/env';
2
+ export declare function parsePublishCommand(args: Array<string>, options: {
3
+ cwd: string;
4
+ envContext: AukletEnvContext;
5
+ }): {
6
+ cwd: string;
7
+ otp: string | undefined;
8
+ filters: string[];
9
+ version: string | undefined;
10
+ git: boolean;
11
+ format: boolean;
12
+ dryRun: boolean;
13
+ allowDirty: boolean;
14
+ ignoreScripts: boolean;
15
+ token: {
16
+ raw: string;
17
+ resolve(context: AukletEnvContext): string | undefined;
18
+ } | undefined;
19
+ };
@@ -0,0 +1,60 @@
1
+ import minimist from 'minimist';
2
+ import { booleanOption, deferredStringOption, dedupe, stringArrayOption, stringOption, stripArgsSeparator, validateNoPrefixedFlags, validateUnknownFlags, } from '#auklet/cli/parse/core';
3
+ const publishFlags = new Set([
4
+ '_',
5
+ 'filter',
6
+ 'workspace',
7
+ 'version',
8
+ 'dry-run',
9
+ 'format',
10
+ 'git',
11
+ 'otp',
12
+ 'token',
13
+ 'ignore-scripts',
14
+ 'allow-dirty',
15
+ ]);
16
+ export function parsePublishCommand(args, options) {
17
+ const argv = parsePublishArgs(args);
18
+ if (argv._.length) {
19
+ throw new Error(`[publish] unknown publish argument: ${argv._.join(' ')}`);
20
+ }
21
+ return {
22
+ cwd: options.cwd,
23
+ otp: stringOption(argv.otp, '--otp', options.envContext),
24
+ filters: resolvePublishFilters(argv, options.envContext),
25
+ version: stringOption(argv.version, '--version', options.envContext),
26
+ git: booleanOption(argv.git, '--git', options.envContext, true),
27
+ format: booleanOption(argv.format, '--format', options.envContext, true),
28
+ dryRun: booleanOption(argv['dry-run'], '--dry-run', options.envContext),
29
+ allowDirty: booleanOption(argv['allow-dirty'], '--allow-dirty', options.envContext),
30
+ ignoreScripts: booleanOption(argv['ignore-scripts'], '--ignore-scripts', options.envContext),
31
+ token: deferredStringOption(argv.token, '--token'),
32
+ };
33
+ }
34
+ const parsePublishArgs = (args) => {
35
+ const cliArgs = stripArgsSeparator(args);
36
+ validateNoPrefixedFlags(cliArgs, new Set(['--no-format', '--no-git']), 'publish');
37
+ const argv = minimist(cliArgs, {
38
+ string: [
39
+ 'filter',
40
+ 'version',
41
+ 'otp',
42
+ 'token',
43
+ 'dry-run',
44
+ 'format',
45
+ 'git',
46
+ 'ignore-scripts',
47
+ 'allow-dirty',
48
+ ],
49
+ boolean: ['workspace'],
50
+ });
51
+ validateUnknownFlags(argv, publishFlags, 'publish');
52
+ return argv;
53
+ };
54
+ const resolvePublishFilters = (argv, envContext) => {
55
+ const filters = stringArrayOption(argv.filter, '--filter', envContext);
56
+ if (booleanOption(argv.workspace, '--workspace', envContext)) {
57
+ filters.push('*');
58
+ }
59
+ return dedupe(filters);
60
+ };
@@ -0,0 +1,12 @@
1
+ import type { AukletEnvContext } from '#auklet/env';
2
+ export type WorkspaceSelection = {
3
+ filters: Array<string>;
4
+ includeDependencies: boolean;
5
+ };
6
+ export declare function parseWorkspaceSelectionArgs(args: Array<string>, envContext: AukletEnvContext): {
7
+ remainingArgs: string[];
8
+ workspace: {
9
+ filters: string[];
10
+ includeDependencies: boolean;
11
+ };
12
+ };
@@ -0,0 +1,45 @@
1
+ import { resolveCliBoolean, resolveCliValue } from '#auklet/cli/parse/values';
2
+ import { dedupe, readFlagValue, readOptionalFlagValue, } from '#auklet/cli/parse/core';
3
+ export function parseWorkspaceSelectionArgs(args, envContext) {
4
+ const remainingArgs = [];
5
+ const filters = [];
6
+ let includeDependencies = false;
7
+ for (let index = 0; index < args.length; index += 1) {
8
+ const arg = args[index];
9
+ const [name, inlineValue] = arg.split('=', 2);
10
+ if (name === '--workspace') {
11
+ if (inlineValue !== undefined) {
12
+ throw new Error('--workspace does not accept a value.');
13
+ }
14
+ filters.push('*');
15
+ continue;
16
+ }
17
+ if (name === '--filter') {
18
+ filters.push(resolveCliValue(readFlagValue(args, index, inlineValue, name), {
19
+ label: name,
20
+ context: envContext,
21
+ }));
22
+ if (inlineValue === undefined)
23
+ index += 1;
24
+ continue;
25
+ }
26
+ if (name === '--deps') {
27
+ const value = readOptionalFlagValue(args, index, inlineValue);
28
+ includeDependencies =
29
+ value === undefined
30
+ ? true
31
+ : resolveCliBoolean(value, { label: name, context: envContext });
32
+ if (inlineValue === undefined && value !== undefined)
33
+ index += 1;
34
+ continue;
35
+ }
36
+ remainingArgs.push(arg);
37
+ }
38
+ return {
39
+ remainingArgs,
40
+ workspace: {
41
+ filters: dedupe(filters),
42
+ includeDependencies,
43
+ },
44
+ };
45
+ }
@@ -3,7 +3,8 @@ import { readFileSync } from 'node:fs';
3
3
  import { isPlainObject, isString } from 'aidly';
4
4
  import { normalizeAukletConfig } from '#auklet/config';
5
5
  import { loadAukletConfig } from '#auklet/configLoader';
6
- import { resolveBuildCliArgs } from '#auklet/cli/buildArgs';
6
+ import { parseBuildOverrideArgs } from '#auklet/cli/parse/build';
7
+ import { AukletEnvContext } from '#auklet/env';
7
8
  import { moduleStyleBuildConfig } from '#auklet/css/config';
8
9
  import { mergeAukletConfigOverrides } from '#auklet/build/cliOverrides';
9
10
  import { createExternalEntryParts, createModuleStyleEntryPlans, createStyleEntryParts, createThemeEntryParts, } from '#auklet/css/core/style/entries';
@@ -20,11 +21,11 @@ export async function runInspectCssCli(args) {
20
21
  return 0;
21
22
  }
22
23
  export async function resolveInspectCssOptions(args) {
23
- const buildArgs = resolveBuildCliArgs(args.filter((arg) => arg !== '--'));
24
+ const cwd = process.cwd();
25
+ const buildArgs = parseBuildOverrideArgs(args.filter((arg) => arg !== '--'), new AukletEnvContext(cwd));
24
26
  if (buildArgs.args.length) {
25
27
  throw new Error(`[inspect] unknown inspect css argument: ${buildArgs.args[0]}`);
26
28
  }
27
- const cwd = process.cwd();
28
29
  const workspaceRoot = findWorkspaceRoot(cwd);
29
30
  const packageRoots = workspaceRoot === cwd
30
31
  ? (await readPnpmWorkspacePackageInfo(cwd))
@@ -1,5 +1,4 @@
1
1
  import { execa, type Options } from 'execa';
2
- import type { WorkspacePackage } from '#auklet/publish/types';
3
2
  export declare class NpmPublishAuthenticationError extends Error {
4
3
  readonly packageRoot: string;
5
4
  constructor(packageRoot: string);
@@ -11,9 +10,6 @@ export declare function withPnpmTimeout(subprocess: ReturnType<typeof execa>, ti
11
10
  export declare function ensurePnpm(options?: {
12
11
  env?: Record<string, string | undefined>;
13
12
  }): Promise<string>;
14
- export declare function readPnpmWorkspacePackages(root: string, options?: {
15
- env?: Record<string, string | undefined>;
16
- }): Promise<WorkspacePackage[]>;
17
13
  export declare function runPnpmBuild(packageRoot: string, options?: {
18
14
  env?: Record<string, string | undefined>;
19
15
  }): Promise<void>;
@@ -1,7 +1,5 @@
1
- import { isPlainObject, isString } from 'aidly';
2
1
  import { execa } from 'execa';
3
2
  import semver from 'semver';
4
- import { readPnpmWorkspacePackageInfo } from '#auklet/workspace/packages';
5
3
  const supportedPnpmRange = '>=10.0.0';
6
4
  export class NpmPublishAuthenticationError extends Error {
7
5
  packageRoot;
@@ -68,22 +66,6 @@ export async function ensurePnpm(options = {}) {
68
66
  }
69
67
  return version;
70
68
  }
71
- export async function readPnpmWorkspacePackages(root, options = {}) {
72
- try {
73
- return (await readPnpmWorkspacePackageInfo(root, {
74
- env: options.env,
75
- })).map((item) => {
76
- if (!isWorkspacePackage(item))
77
- throwInvalidWorkspacePackages();
78
- return item;
79
- });
80
- }
81
- catch (error) {
82
- throw new Error('[publish] failed to read pnpm workspace packages.', {
83
- cause: error,
84
- });
85
- }
86
- }
87
69
  export async function runPnpmBuild(packageRoot, options = {}) {
88
70
  const result = await runPnpm(['run', 'build'], {
89
71
  cwd: packageRoot,
@@ -159,18 +141,6 @@ export async function runPnpmOwnerAdd(packageName, user, options) {
159
141
  throw new Error(`[publish] pnpm owner add failed for ${user} -> ${packageName}.`);
160
142
  }
161
143
  }
162
- const isWorkspacePackage = (value) => {
163
- if (!isPlainObject(value)) {
164
- return false;
165
- }
166
- return (isString(value.name) &&
167
- value.name.length > 0 &&
168
- isString(value.path) &&
169
- value.path.length > 0 &&
170
- isString(value.version) &&
171
- value.version.length > 0 &&
172
- (value.private === undefined || typeof value.private === 'boolean'));
173
- };
174
144
  const hasFailedPnpmResult = (result) => {
175
145
  return result.failed === true || result.exitCode !== 0;
176
146
  };
@@ -181,10 +151,6 @@ const getPnpmFailureReason = (result) => {
181
151
  const stdout = String(result.stdout ?? '').trim();
182
152
  return stdout || null;
183
153
  };
184
- function throwInvalidWorkspacePackages() {
185
- throw new Error('[publish] failed to read pnpm workspace packages.\n' +
186
- '[publish] Expected `pnpm list -r --depth -1 --json` to return package objects with name/path/version.');
187
- }
188
154
  export function hasNpmAuthChallenge(result) {
189
155
  const output = [result.stdout, result.stderr]
190
156
  .map((value) => String(value ?? ''))
@@ -1,18 +1,2 @@
1
- import { AukletEnvContext } from '#auklet/env';
2
1
  export declare function runPublishCli(args: Array<string>): Promise<void>;
3
- export declare function resolvePublishCliOptions(args: Array<string>, cwd?: string, envContext?: AukletEnvContext): {
4
- cwd: string;
5
- otp: string | undefined;
6
- filters: string[];
7
- version: string | undefined;
8
- git: boolean;
9
- format: boolean;
10
- dryRun: boolean;
11
- allowDirty: boolean;
12
- ignoreScripts: boolean;
13
- token: {
14
- raw: string;
15
- resolve(context: AukletEnvContext): string | undefined;
16
- } | undefined;
17
- };
18
2
  export declare function runOwnerCli(args: Array<string>): Promise<void>;