Class NodePackage

  • All Implemented Interfaces:
    software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct, software.constructs.IDependable

    @Generated(value="jsii-pacmak/1.96.0 (build 921e240)",
               date="2024-03-28T21:16:43.171Z")
    @Stability(Experimental)
    public class NodePackage
    extends Component
    (experimental) Represents the npm package.json file.
    • Constructor Detail

      • NodePackage

        protected NodePackage​(software.amazon.jsii.JsiiObjectRef objRef)
      • NodePackage

        protected NodePackage​(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
      • NodePackage

        @Stability(Experimental)
        public NodePackage​(@NotNull
                           Project project,
                           @Nullable
                           NodePackageOptions options)
        Parameters:
        project - This parameter is required.
        options -
      • NodePackage

        @Stability(Experimental)
        public NodePackage​(@NotNull
                           Project project)
        Parameters:
        project - This parameter is required.
    • Method Detail

      • of

        @Stability(Experimental)
        @Nullable
        public static NodePackage of​(@NotNull
                                     Project project)
        (experimental) Returns the NodePackage instance associated with a project or undefined if there is no NodePackage.

        Parameters:
        project - The project. This parameter is required.
        Returns:
        A NodePackage, or undefined
      • addBin

        @Stability(Experimental)
        public void addBin​(@NotNull
                           Map<String,​String> bins)
        Parameters:
        bins - This parameter is required.
      • addBundledDeps

        @Stability(Experimental)
        public void addBundledDeps​(@NotNull
                                   @NotNull String... deps)
        (experimental) Defines bundled dependencies.

        Bundled dependencies will be added as normal dependencies as well as to the bundledDependencies section of your package.json.

        Parameters:
        deps - Names modules to install. This parameter is required.
      • addDeps

        @Stability(Experimental)
        public void addDeps​(@NotNull
                            @NotNull String... deps)
        (experimental) Defines normal dependencies.

        Parameters:
        deps - Names modules to install. This parameter is required.
      • addDevDeps

        @Stability(Experimental)
        public void addDevDeps​(@NotNull
                               @NotNull String... deps)
        (experimental) Defines development/test dependencies.

        Parameters:
        deps - Names modules to install. This parameter is required.
      • addEngine

        @Stability(Experimental)
        public void addEngine​(@NotNull
                              String engine,
                              @NotNull
                              String version)
        (experimental) Adds an engines requirement to your package.

        Parameters:
        engine - The engine (e.g. node). This parameter is required.
        version - The semantic version requirement (e.g. ^10). This parameter is required.
      • addField

        @Stability(Experimental)
        public void addField​(@NotNull
                             String name,
                             @NotNull
                             Object value)
        (experimental) Directly set fields in package.json.

        Parameters:
        name - field name. This parameter is required.
        value - field value. This parameter is required.
      • addKeywords

        @Stability(Experimental)
        public void addKeywords​(@NotNull
                                @NotNull String... keywords)
        (experimental) Adds keywords to package.json (deduplicated).

        Parameters:
        keywords - The keywords to add. This parameter is required.
      • addPackageResolutions

        @Stability(Experimental)
        public void addPackageResolutions​(@NotNull
                                          @NotNull String... resolutions)
        (experimental) Defines resolutions for dependencies to change the normally resolved version of a dependency to something else.

        Parameters:
        resolutions - Names resolutions to be added. This parameter is required.
      • addPeerDeps

        @Stability(Experimental)
        public void addPeerDeps​(@NotNull
                                @NotNull String... deps)
        (experimental) Defines peer dependencies.

        When adding peer dependencies, a devDependency will also be added on the pinned version of the declared peer. This will ensure that you are testing your code against the minimum version required from your consumers.

        Parameters:
        deps - Names modules to install. This parameter is required.
      • addVersion

        @Stability(Experimental)
        public void addVersion​(@NotNull
                               String version)
        (experimental) Sets the package version.

        Parameters:
        version - Package version. This parameter is required.
      • hasScript

        @Stability(Deprecated)
        @Deprecated
        @NotNull
        public Boolean hasScript​(@NotNull
                                 String name)
        Deprecated.
        Use project.tasks.tryFind(name)
        (deprecated) Indicates if a script by the given name is defined.

        Parameters:
        name - The name of the script. This parameter is required.
      • postSynthesize

        @Stability(Experimental)
        public void postSynthesize()
        (experimental) Called after synthesis.

        Order is not guaranteed.

        Overrides:
        postSynthesize in class Component
      • removeScript

        @Stability(Experimental)
        public void removeScript​(@NotNull
                                 String name)
        (experimental) Removes an npm script (always successful).

        Parameters:
        name - The name of the script. This parameter is required.
      • setScript

        @Stability(Experimental)
        public void setScript​(@NotNull
                              String name,
                              @NotNull
                              String command)
        (experimental) Add a npm package.json script.

        Parameters:
        name - The script name. This parameter is required.
        command - The command to execute. This parameter is required.
      • synthesize

        @Stability(Experimental)
        public void synthesize()
        (experimental) Synthesizes files to the project output directory.
        Overrides:
        synthesize in class Component
      • tryResolveDependencyVersion

        @Stability(Experimental)
        @Nullable
        public String tryResolveDependencyVersion​(@NotNull
                                                  String dependencyName)
        (experimental) Attempt to resolve the currently installed version for a given dependency.

        Parameters:
        dependencyName - Dependency to resolve for. This parameter is required.
      • getAllowLibraryDependencies

        @Stability(Experimental)
        @NotNull
        public Boolean getAllowLibraryDependencies()
        (experimental) Allow project to take library dependencies.
      • getEntrypoint

        @Stability(Experimental)
        @NotNull
        public String getEntrypoint()
        (experimental) The module's entrypoint (e.g. lib/index.js).
      • getFile

        @Stability(Experimental)
        @NotNull
        public JsonFile getFile()
        (experimental) The package.json file.
      • getInstallAndUpdateLockfileCommand

        @Stability(Experimental)
        @NotNull
        public String getInstallAndUpdateLockfileCommand()
        (experimental) Renders yarn install or npm install with lockfile update (not frozen).
      • getInstallCiTask

        @Stability(Experimental)
        @NotNull
        public Task getInstallCiTask()
        (experimental) The task for installing project dependencies (frozen).
      • getInstallCommand

        @Stability(Experimental)
        @NotNull
        public String getInstallCommand()
        (experimental) Returns the command to execute in order to install all dependencies (always frozen).
      • getInstallTask

        @Stability(Experimental)
        @NotNull
        public Task getInstallTask()
        (experimental) The task for installing project dependencies (non-frozen).
      • getLockFile

        @Stability(Experimental)
        @NotNull
        public String getLockFile()
        (experimental) The name of the lock file.
      • getManifest

        @Stability(Deprecated)
        @Deprecated
        @NotNull
        public Object getManifest()
        Deprecated.
        use addField(x, y)
      • getNpmAccess

        @Stability(Experimental)
        @NotNull
        public NpmAccess getNpmAccess()
        (experimental) npm package access level.
      • getNpmProvenance

        @Stability(Experimental)
        @NotNull
        public Boolean getNpmProvenance()
        (experimental) Should provenance statements be generated when package is published.
      • getNpmRegistry

        @Stability(Experimental)
        @NotNull
        public String getNpmRegistry()
        (experimental) The npm registry host (e.g. registry.npmjs.org).
      • getNpmRegistryUrl

        @Stability(Experimental)
        @NotNull
        public String getNpmRegistryUrl()
        (experimental) npm registry (e.g. https://registry.npmjs.org). Use npmRegistryHost to get just the host name.
      • getPackageManager

        @Stability(Experimental)
        @NotNull
        public NodePackageManager getPackageManager()
        (experimental) The package manager to use.
      • getPackageName

        @Stability(Experimental)
        @NotNull
        public String getPackageName()
        (experimental) The name of the npm package.
      • getProjenCommand

        @Stability(Deprecated)
        @Deprecated
        @NotNull
        public String getProjenCommand()
        Deprecated.
        use project.projenCommand instead.
        (deprecated) The command which executes "projen".

      • getCodeArtifactOptions

        @Stability(Experimental)
        @Nullable
        public CodeArtifactOptions getCodeArtifactOptions()
        (experimental) Options for npm packages using AWS CodeArtifact.

        This is required if publishing packages to, or installing scoped packages from AWS CodeArtifact

        Default: - undefined

      • getLicense

        @Stability(Experimental)
        @Nullable
        public String getLicense()
        (experimental) The SPDX license of this module.

        undefined if this package is not licensed.

      • getMaxNodeVersion

        @Stability(Experimental)
        @Nullable
        public String getMaxNodeVersion()
        (experimental) Maximum node version required by this package.

        Default: - no maximum.

      • getMinNodeVersion

        @Stability(Experimental)
        @Nullable
        public String getMinNodeVersion()
        (experimental) Minimum node.js version required by this package.

        Default: - no minimum

      • getNpmTokenSecret

        @Stability(Experimental)
        @Nullable
        public String getNpmTokenSecret()
        (experimental) GitHub secret which contains the NPM token to use when publishing packages.
      • getPnpmVersion

        @Stability(Experimental)
        @Nullable
        public String getPnpmVersion()
        (experimental) The version of PNPM to use if using PNPM as a package manager.

        Default: "7"

      • getScopedPackagesOptions

        @Stability(Experimental)
        @Nullable
        public List<ScopedPackagesOptions> getScopedPackagesOptions()
        (experimental) Options for privately hosted scoped packages.

        Default: undefined