@pnpm/releasing.commands 1100.5.5 → 1100.6.1

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 (88) hide show
  1. package/CHANGELOG.md +73 -0
  2. package/lib/index.js +2 -0
  3. package/package.json +34 -29
  4. package/lib/deploy/createDeployFiles.d.ts +0 -23
  5. package/lib/deploy/createDeployFiles.js +0 -218
  6. package/lib/deploy/deploy.d.ts +0 -12
  7. package/lib/deploy/deploy.js +0 -393
  8. package/lib/deploy/deployHook.d.ts +0 -2
  9. package/lib/deploy/deployHook.js +0 -15
  10. package/lib/deploy/index.d.ts +0 -2
  11. package/lib/deploy/index.js +0 -3
  12. package/lib/index.d.ts +0 -5
  13. package/lib/pack-app/index.d.ts +0 -2
  14. package/lib/pack-app/index.js +0 -3
  15. package/lib/pack-app/packApp.d.ts +0 -22
  16. package/lib/pack-app/packApp.js +0 -558
  17. package/lib/publish/FailedToPublishError.d.ts +0 -22
  18. package/lib/publish/FailedToPublishError.js +0 -40
  19. package/lib/publish/batchPublish.d.ts +0 -20
  20. package/lib/publish/batchPublish.js +0 -201
  21. package/lib/publish/displayError.d.ts +0 -1
  22. package/lib/publish/displayError.js +0 -23
  23. package/lib/publish/executeTokenHelper.d.ts +0 -4
  24. package/lib/publish/executeTokenHelper.js +0 -17
  25. package/lib/publish/extractManifestFromPacked.d.ts +0 -12
  26. package/lib/publish/extractManifestFromPacked.js +0 -71
  27. package/lib/publish/index.d.ts +0 -3
  28. package/lib/publish/index.js +0 -4
  29. package/lib/publish/oidc/authToken.d.ts +0 -73
  30. package/lib/publish/oidc/authToken.js +0 -97
  31. package/lib/publish/oidc/idToken.d.ts +0 -76
  32. package/lib/publish/oidc/idToken.js +0 -90
  33. package/lib/publish/oidc/provenance.d.ts +0 -73
  34. package/lib/publish/oidc/provenance.js +0 -91
  35. package/lib/publish/otp.d.ts +0 -38
  36. package/lib/publish/otp.js +0 -38
  37. package/lib/publish/otpEnv.d.ts +0 -7
  38. package/lib/publish/otpEnv.js +0 -5
  39. package/lib/publish/pack.d.ts +0 -34
  40. package/lib/publish/pack.js +0 -354
  41. package/lib/publish/publish.d.ts +0 -40
  42. package/lib/publish/publish.js +0 -256
  43. package/lib/publish/publishPackedPkg.d.ts +0 -79
  44. package/lib/publish/publishPackedPkg.js +0 -298
  45. package/lib/publish/recursivePublish.d.ts +0 -18
  46. package/lib/publish/recursivePublish.js +0 -132
  47. package/lib/publish/registryConfigKeys.d.ts +0 -30
  48. package/lib/publish/registryConfigKeys.js +0 -50
  49. package/lib/publish/utils/shared-context.d.ts +0 -7
  50. package/lib/publish/utils/shared-context.js +0 -20
  51. package/lib/stage/approve.d.ts +0 -2
  52. package/lib/stage/approve.js +0 -14
  53. package/lib/stage/context.d.ts +0 -14
  54. package/lib/stage/context.js +0 -25
  55. package/lib/stage/download.d.ts +0 -2
  56. package/lib/stage/download.js +0 -32
  57. package/lib/stage/errors.d.ts +0 -15
  58. package/lib/stage/errors.js +0 -17
  59. package/lib/stage/help.d.ts +0 -1
  60. package/lib/stage/help.js +0 -84
  61. package/lib/stage/index.d.ts +0 -13
  62. package/lib/stage/index.js +0 -57
  63. package/lib/stage/list.d.ts +0 -2
  64. package/lib/stage/list.js +0 -49
  65. package/lib/stage/parsing.d.ts +0 -6
  66. package/lib/stage/parsing.js +0 -27
  67. package/lib/stage/publish.d.ts +0 -7
  68. package/lib/stage/publish.js +0 -38
  69. package/lib/stage/reject.d.ts +0 -2
  70. package/lib/stage/reject.js +0 -16
  71. package/lib/stage/rendering.d.ts +0 -11
  72. package/lib/stage/rendering.js +0 -50
  73. package/lib/stage/request.d.ts +0 -29
  74. package/lib/stage/request.js +0 -110
  75. package/lib/stage/types.d.ts +0 -38
  76. package/lib/stage/types.js +0 -3
  77. package/lib/stage/view.d.ts +0 -2
  78. package/lib/stage/view.js +0 -14
  79. package/lib/tarball/index.d.ts +0 -2
  80. package/lib/tarball/index.js +0 -3
  81. package/lib/tarball/publishSummary.d.ts +0 -47
  82. package/lib/tarball/publishSummary.js +0 -36
  83. package/lib/tarball/safeTarballFilename.d.ts +0 -8
  84. package/lib/tarball/safeTarballFilename.js +0 -21
  85. package/lib/tarball/summarizeTarball.d.ts +0 -12
  86. package/lib/tarball/summarizeTarball.js +0 -84
  87. package/lib/version/index.d.ts +0 -31
  88. package/lib/version/index.js +0 -248
@@ -1,393 +0,0 @@
1
- import fs from 'node:fs';
2
- import path from 'node:path';
3
- import { FILTERING } from '@pnpm/cli.common-cli-options-help';
4
- import { docsUrl } from '@pnpm/cli.utils';
5
- import { types as configTypes } from '@pnpm/config.reader';
6
- import { WORKSPACE_MANIFEST_FILENAME } from '@pnpm/constants';
7
- import { PnpmError } from '@pnpm/error';
8
- import { fetchFromDir } from '@pnpm/fetching.directory-fetcher';
9
- import { createIndexedPkgImporter } from '@pnpm/fs.indexed-pkg-importer';
10
- import { isEmptyDirOrNothing } from '@pnpm/fs.is-empty-dir-or-nothing';
11
- import { install } from '@pnpm/installing.commands';
12
- import { getLockfileImporterId, readWantedLockfile, writeWantedLockfile } from '@pnpm/lockfile.fs';
13
- import { globalWarn, logger } from '@pnpm/logger';
14
- import { rimraf } from '@zkochan/rimraf';
15
- import { isSubdir } from 'is-subdir';
16
- import { pick } from 'ramda';
17
- import { renderHelp } from 'render-help';
18
- import { writeYamlFile } from 'write-yaml-file';
19
- import { createDeployFiles } from './createDeployFiles.js';
20
- import { deployHook } from './deployHook.js';
21
- const FORCE_LEGACY_DEPLOY = 'force-legacy-deploy';
22
- export const shorthands = {
23
- ...install.shorthands,
24
- legacy: [`--config.${FORCE_LEGACY_DEPLOY}=true`],
25
- };
26
- const DEPLOY_OWN_OPTIONS = pick([FORCE_LEGACY_DEPLOY], configTypes);
27
- export function rcOptionsTypes() {
28
- return {
29
- ...install.rcOptionsTypes(),
30
- ...DEPLOY_OWN_OPTIONS,
31
- };
32
- }
33
- export function cliOptionsTypes() {
34
- return {
35
- ...install.cliOptionsTypes(),
36
- ...DEPLOY_OWN_OPTIONS,
37
- };
38
- }
39
- export const commandNames = ['deploy'];
40
- export const overridableByScript = true;
41
- export function help() {
42
- return renderHelp({
43
- description: 'Experimental! Deploy a package from a workspace',
44
- url: docsUrl('deploy'),
45
- usages: ['pnpm --filter=<deployed project name> deploy <target directory>'],
46
- descriptionLists: [
47
- {
48
- title: 'Options',
49
- list: [
50
- {
51
- description: "Packages in `devDependencies` won't be installed",
52
- name: '--prod',
53
- shortAlias: '-P',
54
- },
55
- {
56
- description: 'Only `devDependencies` are installed',
57
- name: '--dev',
58
- shortAlias: '-D',
59
- },
60
- {
61
- description: '`optionalDependencies` are not installed',
62
- name: '--no-optional',
63
- },
64
- {
65
- description: 'Force legacy deploy implementation',
66
- name: '--legacy',
67
- },
68
- ],
69
- },
70
- FILTERING,
71
- ],
72
- });
73
- }
74
- export async function handler(opts, params) {
75
- if (!opts.workspaceDir) {
76
- let hint;
77
- if (opts.rootProjectManifest?.scripts?.['deploy'] != null) {
78
- hint = 'Maybe you wanted to invoke "pnpm run deploy"';
79
- }
80
- throw new PnpmError('CANNOT_DEPLOY', 'A deploy is only possible from inside a workspace', { hint });
81
- }
82
- const selectedProjects = Object.values(opts.selectedProjectsGraph ?? {});
83
- if (selectedProjects.length === 0) {
84
- throw new PnpmError('NOTHING_TO_DEPLOY', 'No project was selected for deployment');
85
- }
86
- if (selectedProjects.length > 1) {
87
- throw new PnpmError('CANNOT_DEPLOY_MANY', 'Cannot deploy more than 1 project');
88
- }
89
- if (params.length !== 1) {
90
- throw new PnpmError('INVALID_DEPLOY_TARGET', 'This command requires one parameter');
91
- }
92
- const selectedProject = selectedProjects[0].package;
93
- const deployDirParam = params[0];
94
- const deployDir = path.isAbsolute(deployDirParam) ? deployDirParam : path.join(opts.dir, deployDirParam);
95
- validateDeployTarget(deployDir, {
96
- dir: opts.dir,
97
- force: opts.force,
98
- projectDir: selectedProject.rootDir,
99
- workspaceDir: opts.workspaceDir,
100
- });
101
- const normalizedDeployDir = path.resolve(deployDir);
102
- const normalizedWorkspaceDir = path.resolve(opts.workspaceDir);
103
- const workspaceChildTarget = isChildPath(normalizedDeployDir, normalizedWorkspaceDir);
104
- if (workspaceChildTarget) {
105
- createWorkspaceChildTargetParents(normalizedWorkspaceDir, normalizedDeployDir);
106
- }
107
- if (!isEmptyDirOrNothing(deployDir)) {
108
- if (!opts.force) {
109
- throw new PnpmError('DEPLOY_DIR_NOT_EMPTY', `Deploy path ${deployDir} is not empty`);
110
- }
111
- logger.warn({ message: 'using --force, deleting deploy path', prefix: deployDir });
112
- }
113
- if (workspaceChildTarget) {
114
- validateWorkspaceChildTargetComponents(normalizedWorkspaceDir, normalizedDeployDir);
115
- }
116
- await rimraf(deployDir);
117
- if (workspaceChildTarget) {
118
- createWorkspaceChildTargetParents(normalizedWorkspaceDir, normalizedDeployDir);
119
- createWorkspaceChildTargetDir(normalizedWorkspaceDir, normalizedDeployDir);
120
- }
121
- else {
122
- await fs.promises.mkdir(deployDir, { recursive: true });
123
- }
124
- const includeOnlyPackageFiles = !opts.deployAllFiles;
125
- await copyProject(selectedProject.rootDir, deployDir, { includeOnlyPackageFiles });
126
- if (opts.sharedWorkspaceLockfile) {
127
- const warning = opts.forceLegacyDeploy
128
- ? 'Shared workspace lockfile detected but configuration forces legacy deploy implementation.'
129
- : await deployFromSharedLockfile(opts, selectedProject, deployDir);
130
- if (warning) {
131
- globalWarn(warning);
132
- }
133
- else {
134
- return;
135
- }
136
- }
137
- const deployedProject = opts.allProjects?.find(({ rootDir }) => rootDir === selectedProject.rootDir);
138
- if (deployedProject) {
139
- deployedProject.modulesDir = path.relative(selectedProject.rootDir, path.join(deployDir, 'node_modules'));
140
- }
141
- await install.handler({
142
- ...opts,
143
- confirmModulesPurge: false,
144
- // Deploy doesn't work with dedupePeerDependents=true currently as for deploy
145
- // we need to select a single project for install, while dedupePeerDependents
146
- // doesn't work with filters right now.
147
- // Related issue: https://github.com/pnpm/pnpm/issues/6858
148
- dedupePeerDependents: false,
149
- // If enabled, dedupe-injected-deps will symlink workspace packages in the
150
- // deployed dir to their original (non-deployed) directory in an attempt to
151
- // dedupe workspace packages that don't need to be injected. The deployed
152
- // dir shouldn't have symlinks to the original workspace. Disable
153
- // dedupe-injected-deps to always inject workspace packages since copying is
154
- // desirable.
155
- dedupeInjectedDeps: false,
156
- // Compute the wanted lockfile correctly by setting pruneLockfileImporters.
157
- // Since pnpm deploy only installs dependencies for a single selected
158
- // project, other projects in the "importers" lockfile section will be
159
- // empty when node-linker=hoisted.
160
- //
161
- // For example, when deploying project-1, project-2 may not be populated,
162
- // even if it has dependencies.
163
- //
164
- // importers:
165
- // project-1:
166
- // dependencies:
167
- // foo:
168
- // specifier: ^1.0.0
169
- // version: ^1.0.0
170
- // project-2: {}
171
- //
172
- // Avoid including these empty importers in the in-memory wanted lockfile.
173
- // This is important when node-linker=hoisted to prevent project-2 from
174
- // being included in the hoisted install. If project-2 is errantly hoisted
175
- // to the root node_modules dir, downstream logic will fail to inject it to
176
- // the deploy directory. It's also just weird to include empty importers
177
- // that don't matter to the filtered lockfile generated for pnpm deploy.
178
- pruneLockfileImporters: true,
179
- // The node_modules for a pnpm deploy should be self-contained. The global
180
- // virtual store would create symlinks outside of the deploy directory.
181
- enableGlobalVirtualStore: false,
182
- depth: Infinity,
183
- hooks: {
184
- ...opts.hooks,
185
- readPackage: [
186
- ...(opts.hooks?.readPackage ?? []),
187
- deployHook,
188
- ],
189
- },
190
- frozenLockfile: false,
191
- preferFrozenLockfile: false,
192
- // Deploy doesn't work currently with hoisted node_modules.
193
- // TODO: make it work as we need to prefer packages from the lockfile during deployment.
194
- useLockfile: opts.nodeLinker !== 'hoisted',
195
- saveLockfile: false,
196
- virtualStoreDir: path.join(deployDir, 'node_modules/.pnpm'),
197
- modulesDir: path.relative(opts.workspaceDir, path.join(deployDir, 'node_modules')),
198
- includeOnlyPackageFiles,
199
- });
200
- }
201
- async function copyProject(src, dest, opts) {
202
- const { filesMap } = await fetchFromDir(src, opts);
203
- const importPkg = createIndexedPkgImporter('clone-or-copy');
204
- importPkg(dest, { filesMap, force: true, resolvedFrom: 'local-dir' });
205
- }
206
- function validateDeployTarget(deployDir, opts) {
207
- const normalizedDeployDir = path.resolve(deployDir);
208
- const workspaceDir = path.resolve(opts.workspaceDir);
209
- const projectDir = path.resolve(opts.projectDir);
210
- const dir = path.resolve(opts.dir);
211
- if (samePath(normalizedDeployDir, workspaceDir)) {
212
- throw unsafeDeployTarget(normalizedDeployDir, 'target is the workspace root');
213
- }
214
- if (isAncestorPath(normalizedDeployDir, workspaceDir)) {
215
- throw unsafeDeployTarget(normalizedDeployDir, 'target contains the workspace root');
216
- }
217
- if (samePath(normalizedDeployDir, projectDir)) {
218
- throw unsafeDeployTarget(normalizedDeployDir, 'target is the selected project root');
219
- }
220
- if (isAncestorPath(normalizedDeployDir, projectDir)) {
221
- throw unsafeDeployTarget(normalizedDeployDir, 'target contains the selected project');
222
- }
223
- if (samePath(normalizedDeployDir, dir)) {
224
- throw unsafeDeployTarget(normalizedDeployDir, 'target is the current directory');
225
- }
226
- if (isAncestorPath(normalizedDeployDir, dir)) {
227
- throw unsafeDeployTarget(normalizedDeployDir, 'target contains the current directory');
228
- }
229
- if (opts.force && !isChildPath(normalizedDeployDir, workspaceDir)) {
230
- throw unsafeDeployTarget(normalizedDeployDir, 'target is outside the workspace');
231
- }
232
- if (isChildPath(normalizedDeployDir, workspaceDir)) {
233
- validateWorkspaceChildTargetComponents(workspaceDir, normalizedDeployDir);
234
- }
235
- }
236
- function validateWorkspaceChildTargetComponents(workspaceDir, deployDir) {
237
- const relative = path.relative(workspaceDir, deployDir);
238
- let current = workspaceDir;
239
- for (const component of relative.split(path.sep)) {
240
- if (!component)
241
- continue;
242
- current = path.join(current, component);
243
- let stat;
244
- try {
245
- stat = fs.lstatSync(current);
246
- }
247
- catch (error) {
248
- if (isENOENT(error))
249
- return;
250
- throw error;
251
- }
252
- if (stat.isSymbolicLink()) {
253
- throw unsafeDeployTarget(current, 'target path contains a symlink');
254
- }
255
- }
256
- }
257
- function createWorkspaceChildTargetParents(workspaceDir, deployDir) {
258
- const parent = path.dirname(deployDir);
259
- const relative = path.relative(workspaceDir, parent);
260
- let current = workspaceDir;
261
- for (const component of relative.split(path.sep)) {
262
- if (!component)
263
- continue;
264
- current = path.join(current, component);
265
- createWorkspaceChildTargetComponent(current);
266
- }
267
- }
268
- function createWorkspaceChildTargetDir(workspaceDir, deployDir) {
269
- try {
270
- fs.mkdirSync(deployDir);
271
- }
272
- catch (error) {
273
- if (isEEXIST(error)) {
274
- throw unsafeDeployTarget(deployDir, 'target changed during deploy preparation');
275
- }
276
- throw error;
277
- }
278
- validateWorkspaceChildTargetComponents(workspaceDir, deployDir);
279
- }
280
- function createWorkspaceChildTargetComponent(component) {
281
- try {
282
- fs.mkdirSync(component);
283
- }
284
- catch (error) {
285
- if (!isEEXIST(error))
286
- throw error;
287
- }
288
- const stat = fs.lstatSync(component);
289
- if (stat.isSymbolicLink()) {
290
- throw unsafeDeployTarget(component, 'target path contains a symlink');
291
- }
292
- if (!stat.isDirectory()) {
293
- throw unsafeDeployTarget(component, 'target path contains a non-directory');
294
- }
295
- }
296
- function unsafeDeployTarget(deployDir, reason) {
297
- return new PnpmError('INVALID_DEPLOY_TARGET', `Refusing to deploy to unsafe target ${deployDir}: ${reason}`);
298
- }
299
- function samePath(left, right) {
300
- return path.normalize(left) === path.normalize(right);
301
- }
302
- function isAncestorPath(parent, child) {
303
- return isChildPath(child, parent);
304
- }
305
- function isChildPath(child, parent) {
306
- return !samePath(child, parent) && isSubdir(parent, child);
307
- }
308
- function isENOENT(error) {
309
- return typeof error === 'object' && error != null && 'code' in error && error.code === 'ENOENT';
310
- }
311
- function isEEXIST(error) {
312
- return typeof error === 'object' && error != null && 'code' in error && error.code === 'EEXIST';
313
- }
314
- async function deployFromSharedLockfile(opts, selectedProject, deployDir) {
315
- if (!opts.injectWorkspacePackages) {
316
- throw new PnpmError('DEPLOY_NONINJECTED_WORKSPACE', 'By default, starting from pnpm v10, we only deploy from workspaces that have "inject-workspace-packages=true" set', {
317
- hint: 'If you want to deploy without using injected dependencies, run "pnpm deploy" with the "--legacy" flag or set "force-legacy-deploy" to true',
318
- });
319
- }
320
- const { allProjects, lockfileDir, rootProjectManifestDir, workspaceDir, } = opts;
321
- // The following errors should not be possible. It is a programmer error if they are reached.
322
- if (!allProjects)
323
- throw new Error('opts.allProjects is undefined.');
324
- if (!lockfileDir)
325
- throw new Error('opts.lockfileDir is undefined.');
326
- if (!workspaceDir)
327
- throw new Error('opts.workspaceDir is undefined.');
328
- const lockfile = await readWantedLockfile(lockfileDir, { ignoreIncompatible: false });
329
- if (!lockfile) {
330
- return 'Shared lockfile not found. Falling back to installing without a lockfile.';
331
- }
332
- const projectId = getLockfileImporterId(lockfileDir, selectedProject.rootDir);
333
- const deployFiles = createDeployFiles({
334
- allProjects,
335
- deployDir,
336
- lockfile,
337
- lockfileDir,
338
- patchedDependencies: opts.patchedDependencies,
339
- selectedProjectManifest: selectedProject.manifest,
340
- projectId,
341
- rootProjectManifestDir,
342
- allowBuilds: opts.allowBuilds,
343
- });
344
- const filesToWrite = [
345
- fs.promises.writeFile(path.join(deployDir, 'package.json'), JSON.stringify(deployFiles.manifest, undefined, 2) + '\n'),
346
- writeWantedLockfile(deployDir, deployFiles.lockfile),
347
- ];
348
- if (deployFiles.workspaceManifest) {
349
- filesToWrite.push(writeYamlFile(path.join(deployDir, WORKSPACE_MANIFEST_FILENAME), deployFiles.workspaceManifest));
350
- }
351
- await Promise.all(filesToWrite);
352
- try {
353
- await install.handler({
354
- ...opts,
355
- allProjects: undefined,
356
- allProjectsGraph: undefined,
357
- selectedProjectsGraph: undefined,
358
- rootProjectManifest: deployFiles.manifest,
359
- // The node_modules for a pnpm deploy should be self-contained. The global
360
- // virtual store would create symlinks outside of the deploy directory.
361
- enableGlobalVirtualStore: false,
362
- rootProjectManifestDir: deployDir,
363
- dir: deployDir,
364
- lockfileDir: deployDir,
365
- workspaceDir: undefined,
366
- virtualStoreDir: undefined,
367
- modulesDir: undefined,
368
- confirmModulesPurge: false,
369
- frozenLockfile: true,
370
- injectWorkspacePackages: undefined, // the effects of injecting workspace packages should already be part of the package snapshots
371
- overrides: undefined, // the effects of the overrides should already be part of the package snapshots
372
- packageExtensions: undefined, // the effects of the package extensions should already be part of the package snapshots
373
- configDependencies: undefined, // configDependencies (e.g. pacquet) are not installed into the deploy dir, so the install engine they designate isn't on disk to invoke
374
- hooks: {
375
- ...opts.hooks,
376
- readPackage: [
377
- ...(opts.hooks?.readPackage ?? []),
378
- deployHook,
379
- ],
380
- calculatePnpmfileChecksum: undefined, // the effects of the pnpmfile should already be part of the package snapshots
381
- },
382
- });
383
- }
384
- catch (error) {
385
- globalWarn(`Deployment with a shared lockfile has failed. If this is a bug, please report it at <https://github.com/pnpm/pnpm/issues>.
386
- As a workaround, add the following to pnpm-workspace.yaml:
387
-
388
- forceLegacyDeploy: true`);
389
- throw error;
390
- }
391
- return undefined;
392
- }
393
- //# sourceMappingURL=deploy.js.map
@@ -1,2 +0,0 @@
1
- import { type BaseManifest } from '@pnpm/types';
2
- export declare function deployHook<Pkg extends BaseManifest>(pkg: Pkg): Pkg;
@@ -1,15 +0,0 @@
1
- import { DEPENDENCIES_FIELDS } from '@pnpm/types';
2
- export function deployHook(pkg) {
3
- pkg.dependenciesMeta = pkg.dependenciesMeta ?? {};
4
- for (const depField of DEPENDENCIES_FIELDS) {
5
- for (const [depName, depVersion] of Object.entries(pkg[depField] ?? {})) {
6
- if (depVersion.startsWith('workspace:')) {
7
- pkg.dependenciesMeta[depName] = {
8
- injected: true,
9
- };
10
- }
11
- }
12
- }
13
- return pkg;
14
- }
15
- //# sourceMappingURL=deployHook.js.map
@@ -1,2 +0,0 @@
1
- import * as deploy from './deploy.js';
2
- export { deploy };
@@ -1,3 +0,0 @@
1
- import * as deploy from './deploy.js';
2
- export { deploy };
3
- //# sourceMappingURL=index.js.map
package/lib/index.d.ts DELETED
@@ -1,5 +0,0 @@
1
- export { deploy } from './deploy/index.js';
2
- export { packApp } from './pack-app/index.js';
3
- export { pack, publish } from './publish/index.js';
4
- export * as stage from './stage/index.js';
5
- export { version } from './version/index.js';
@@ -1,2 +0,0 @@
1
- import * as packApp from './packApp.js';
2
- export { packApp };
@@ -1,3 +0,0 @@
1
- import * as packApp from './packApp.js';
2
- export { packApp };
3
- //# sourceMappingURL=index.js.map
@@ -1,22 +0,0 @@
1
- import type { Config } from '@pnpm/config.reader';
2
- export declare const commandNames: string[];
3
- export declare function rcOptionsTypes(): Record<string, unknown>;
4
- export declare function cliOptionsTypes(): Record<string, unknown>;
5
- export declare const shorthands: Record<string, string>;
6
- export declare function help(): string;
7
- export type PackAppOptions = Pick<Config, 'dir' | 'pnpmHomeDir'> & Partial<Pick<Config, 'ca' | 'cert' | 'configByUri' | 'httpProxy' | 'httpsProxy' | 'key' | 'localAddress' | 'nodeDownloadMirrors' | 'noProxy' | 'strictSsl' | 'userAgent'>> & {
8
- entry?: string;
9
- target?: string | string[];
10
- runtime?: string;
11
- outputDir?: string;
12
- outputName?: string;
13
- };
14
- export declare function handler(opts: PackAppOptions, params: string[]): Promise<string>;
15
- /** Fields pack-app reads from `pnpm.app` in package.json. */
16
- export interface ProjectAppConfig {
17
- entry?: string;
18
- targets?: string[];
19
- runtime?: string;
20
- outputDir?: string;
21
- outputName?: string;
22
- }