Class NodePackageOptions.Jsii$Proxy

    • Constructor Detail

      • Jsii$Proxy

        protected Jsii$Proxy​(software.amazon.jsii.JsiiObjectRef objRef)
        Constructor that initializes the object based on values retrieved from the JsiiObject.
        Parameters:
        objRef - Reference to the JSII managed object.
    • Method Detail

      • getAllowLibraryDependencies

        public final Boolean getAllowLibraryDependencies()
        Description copied from interface: NodePackageOptions
        (experimental) Allow the project to include peerDependencies and bundledDependencies.

        This is normally only allowed for libraries. For apps, there's no meaning for specifying these.

        Default: true

        Specified by:
        getAllowLibraryDependencies in interface NodePackageOptions
      • getAutoDetectBin

        public final Boolean getAutoDetectBin()
        Description copied from interface: NodePackageOptions
        (experimental) Automatically add all executables under the bin directory to your package.json file under the bin section.

        Default: true

        Specified by:
        getAutoDetectBin in interface NodePackageOptions
      • getBin

        public final Map<String,​String> getBin()
        Description copied from interface: NodePackageOptions
        (experimental) Binary programs vended with your module.

        You can use this option to add/customize how binaries are represented in your package.json, but unless autoDetectBin is false, every executable file under bin will automatically be added to this section.

        Specified by:
        getBin in interface NodePackageOptions
      • getBundledDeps

        public final List<String> getBundledDeps()
        Description copied from interface: NodePackageOptions
        (experimental) List of dependencies to bundle into this module.

        These modules will be added both to the dependencies section and bundledDependencies section of your package.json.

        The recommendation is to only specify the module name here (e.g. express). This will behave similar to yarn add or npm install in the sense that it will add the module as a dependency to your package.json file with the latest version (^). You can specify semver requirements in the same syntax passed to npm i or yarn add (e.g. express@^2) and this will be what you package.json will eventually include.

        Specified by:
        getBundledDeps in interface NodePackageOptions
      • getCodeArtifactOptions

        public final CodeArtifactOptions getCodeArtifactOptions()
        Description copied from interface: NodePackageOptions
        (experimental) Options for npm packages using AWS CodeArtifact.

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

        Default: - undefined

        Specified by:
        getCodeArtifactOptions in interface NodePackageOptions
      • getDeps

        public final List<String> getDeps()
        Description copied from interface: NodePackageOptions
        (experimental) Runtime dependencies of this module.

        The recommendation is to only specify the module name here (e.g. express). This will behave similar to yarn add or npm install in the sense that it will add the module as a dependency to your package.json file with the latest version (^). You can specify semver requirements in the same syntax passed to npm i or yarn add (e.g. express@^2) and this will be what you package.json will eventually include.

        Default: []

        Example:

         [ 'express', 'lodash', 'foo@^2' ]
         
        Specified by:
        getDeps in interface NodePackageOptions
      • getDescription

        public final String getDescription()
        Description copied from interface: NodePackageOptions
        (experimental) The description is just a string that helps people understand the purpose of the package.

        It can be used when searching for packages in a package manager as well. See https://classic.yarnpkg.com/en/docs/package-json/#toc-description

        Specified by:
        getDescription in interface NodePackageOptions
      • getDevDeps

        public final List<String> getDevDeps()
        Description copied from interface: NodePackageOptions
        (experimental) Build dependencies for this module.

        These dependencies will only be available in your build environment but will not be fetched when this module is consumed.

        The recommendation is to only specify the module name here (e.g. express). This will behave similar to yarn add or npm install in the sense that it will add the module as a dependency to your package.json file with the latest version (^). You can specify semver requirements in the same syntax passed to npm i or yarn add (e.g. express@^2) and this will be what you package.json will eventually include.

        Default: []

        Example:

         [ 'typescript', '@types/express' ]
         
        Specified by:
        getDevDeps in interface NodePackageOptions
      • getEntrypoint

        public final String getEntrypoint()
        Description copied from interface: NodePackageOptions
        (experimental) Module entrypoint (main in package.json).

        Set to an empty string to not include main in your package.json

        Default: "lib/index.js"

        Specified by:
        getEntrypoint in interface NodePackageOptions
      • getLicense

        public final String getLicense()
        Description copied from interface: NodePackageOptions
        (experimental) License's SPDX identifier.

        See https://github.com/projen/projen/tree/main/license-text for a list of supported licenses. Use the licensed option if you want to no license to be specified.

        Default: "Apache-2.0"

        Specified by:
        getLicense in interface NodePackageOptions
      • getMinNodeVersion

        public final String getMinNodeVersion()
        Description copied from interface: NodePackageOptions
        (experimental) Minimum Node.js version to require via package.json engines (inclusive).

        Default: - no "engines" specified

        Specified by:
        getMinNodeVersion in interface NodePackageOptions
      • getNpmAccess

        public final NpmAccess getNpmAccess()
        Description copied from interface: NodePackageOptions
        (experimental) Access level of the npm package.

        Default: - for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.

        Specified by:
        getNpmAccess in interface NodePackageOptions
      • getNpmProvenance

        public final Boolean getNpmProvenance()
        Description copied from interface: NodePackageOptions
        (experimental) Should provenance statements be generated when the package is published.

        A supported package manager is required to publish a package with npm provenance statements and you will need to use a supported CI/CD provider.

        Note that the projen Release and Publisher components are using publib to publish packages, which is using npm internally and supports provenance statements independently of the package manager used.

        Default: - true for public packages, false otherwise

        Specified by:
        getNpmProvenance in interface NodePackageOptions
        See Also:
        https://docs.npmjs.com/generating-provenance-statements
      • getNpmRegistryUrl

        public final String getNpmRegistryUrl()
        Description copied from interface: NodePackageOptions
        (experimental) The base URL of the npm package registry.

        Must be a URL (e.g. start with "https://" or "http://")

        Default: "https://registry.npmjs.org"

        Specified by:
        getNpmRegistryUrl in interface NodePackageOptions
      • getPeerDeps

        public final List<String> getPeerDeps()
        Description copied from interface: NodePackageOptions
        (experimental) Peer dependencies for this module.

        Dependencies listed here are required to be installed (and satisfied) by the consumer of this library. Using peer dependencies allows you to ensure that only a single module of a certain library exists in the node_modules tree of your consumers.

        Note that prior to npm@7, peer dependencies are not automatically installed, which means that adding peer dependencies to a library will be a breaking change for your customers.

        Unless peerDependencyOptions.pinnedDevDependency is disabled (it is enabled by default), projen will automatically add a dev dependency with a pinned version for each peer dependency. This will ensure that you build & test your module against the lowest peer version required.

        Default: []

        Specified by:
        getPeerDeps in interface NodePackageOptions
      • getRepository

        public final String getRepository()
        Description copied from interface: NodePackageOptions
        (experimental) The repository is the location where the actual code for your package lives.

        See https://classic.yarnpkg.com/en/docs/package-json/#toc-repository

        Specified by:
        getRepository in interface NodePackageOptions
      • getRepositoryDirectory

        public final String getRepositoryDirectory()
        Description copied from interface: NodePackageOptions
        (experimental) If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives.
        Specified by:
        getRepositoryDirectory in interface NodePackageOptions
      • getScripts

        public final Map<String,​String> getScripts()
        Description copied from interface: NodePackageOptions
        (deprecated) npm scripts to include.

        If a script has the same name as a standard script, the standard script will be overwritten. Also adds the script as a task.

        Default: {}

        Specified by:
        getScripts in interface NodePackageOptions
      • $jsii$toJson

        @Internal
        public com.fasterxml.jackson.databind.JsonNode $jsii$toJson()
        Specified by:
        $jsii$toJson in interface software.amazon.jsii.JsiiSerializable
      • hashCode

        public final int hashCode()
        Overrides:
        hashCode in class Object