Options
All
  • Public
  • Public/Protected
  • All
Menu

Represent a key chain config backed by a json file.

Hierarchy

Implements

Index

Constructors

constructor

Properties

Protected options

options: Options

Methods

access

  • access(perm: number): Promise<boolean>
  • Determines if the config file is read/write accessible.

    see

    fs.access

    Parameters

    • perm: number

      The permission.

    Returns Promise<boolean>

    true if the user has capabilities specified by perm.

awaitEach

  • awaitEach(actionFn: function): Promise<void>
  • Asynchronously invokes actionFn once for each key-value pair present in the config object.

    Parameters

    • actionFn: function

      The function (key: string, value: ConfigValue) => Promise<void> to be called for each element.

        • Parameters

          Returns Promise<void>

    Returns Promise<void>

clear

  • clear(): void

entries

exists

  • exists(): Promise<boolean>
  • Check to see if the config file exists.

    Returns Promise<boolean>

    True if the config file exists and has access, false otherwise.

forEach

  • forEach(actionFn: function): void
  • Invokes actionFn once for each key-value pair present in the config object.

    Parameters

    • actionFn: function

      The function (key: string, value: ConfigValue) => void to be called for each element.

    Returns void

get

  • Returns the value associated to the key, or undefined if there is none.

    Parameters

    • key: string

      The key.

    Returns Optional<ConfigValue>

getContents

getKeysByValue

getPath

  • getPath(): string
  • Returns the path to the config file.

    Returns string

has

  • has(key: string): boolean
  • Returns a boolean asserting whether a value has been associated to the key in the config object or not.

    Parameters

    • key: string

      The key.

    Returns boolean

Protected init

  • init(): Promise<void>
  • Used to initialize asynchronous components.

    Returns Promise<void>

isGlobal

  • isGlobal(): boolean
  • Returns true if this config is using the global path, false otherwise.

    Returns boolean

keys

  • keys(): string[]
  • Returns an array that contains the keys for each element in the config object.

    Returns string[]

read

  • Read the config file and set the config contents.

    throws

    {SfdxError} {name: 'UnexpectedJsonFileFormat'}: There was a problem reading or parsing the file.

    Parameters

    • Default value throwOnNotFound: boolean = false

    Returns Promise<ConfigContents>

    The config contents of the config file.

set

setContents

setContentsFromObject

  • setContentsFromObject<U>(obj: U): void

stat

  • stat(): Promise<fsStats>
  • Get the stats of the file.

    see

    fs.stat

    Returns Promise<fsStats>

    The stats of the file.

toObject

  • toObject(): JsonMap
  • Convert the config object to a JSON object.

    Returns JsonMap

    Returns the config contents. Same as calling ConfigStore.getContents

unlink

  • unlink(): Promise<void>
  • Delete the config file if it exists.

    see

    fs.unlink

    Returns Promise<void>

    True if the file was deleted, false otherwise.

unset

  • unset(key: string): boolean
  • Returns true if an element in the config object existed and has been removed, or false if the element does not exist. {@link BaseConfigStore.has(key)} will return false afterwards.

    Parameters

    • key: string

      The key.

    Returns boolean

unsetAll

  • unsetAll(keys: string[]): boolean
  • Returns true if all elements in the config object existed and have been removed, or false if all the elements do not exist (some may have been removed). {@link BaseConfigStore.has(key)} will return false afterwards.

    Parameters

    • keys: string[]

      The keys.

    Returns boolean

values

write

  • Write the config file with new contents. If no new contents are passed in it will write this.contents that was set from read().

    Parameters

    Returns Promise<ConfigContents>

    the written contents

Static create

  • create<P, T>(this: object, options: P): Promise<T>
  • Asynchronously constructs and initializes a new instance of a concrete subclass with the provided options.

    Type parameters

    • P

    • T: AsyncCreatable<P>

    Parameters

    • this: object
    • options: P

      An options object providing initialization params to the async constructor.

    Returns Promise<T>

Static getDefaultOptions

  • getDefaultOptions(isGlobal?: boolean, filename?: undefined | string): Options
  • Parameters

    • Default value isGlobal: boolean = true
    • Optional filename: undefined | string

    Returns Options

Static getFileName

  • getFileName(): string

Static resolveRootFolder

  • resolveRootFolder(isGlobal: boolean): Promise<string>
  • Helper used to determined what the local and global folder point to.

    Parameters

    • isGlobal: boolean

      True if the config should be global. False for local.

    Returns Promise<string>

    The file path of the root folder.

Static retrieve

  • retrieve<T>(options: Options): Promise<T>
  • Creates the config instance and reads the contents of the existing file, if there is one.

    This is the same as

    const myConfig = await MyConfig.create<MyConfig>();
    await myConfig.read();

    Note: Cast to the extended class. e.g. await MyConfig.retrieve<MyConfig>();

    Type parameters

    Parameters

    Returns Promise<T>