Options
All
  • Public
  • Public/Protected
  • All
Menu

@sakuli/commons

Index

Type aliases

CleanUp: () => void

Type declaration

    • (): void
    • Returns void

LogConsumerAdapter: (logger: SimpleLogger, stringifier?: LogEventStringifier) => CleanUp

Type declaration

LogEventStringifier: (event: LogEvent) => string

Type declaration

Maybe<T>: T | null | undefined

Type parameters

  • T

Reflection: (key: string) => string

Type declaration

    • (key: string): string
    • Parameters

      • key: string

      Returns string

Functions

  • BooleanProperty(path: string): (__namedParameters: any, property: string) => void
  • Converts value to Boolean if present

    Parameters

    • path: string

    Returns (__namedParameters: any, property: string) => void

      • (__namedParameters: any, property: string): void
      • Parameters

        • __namedParameters: any
        • property: string

        Returns void

  • ListProperty(path: string, __namedParameters?: Partial<ListPropertyOptions>): (__namedParameters: any, property: string) => void
  • Assuming a string string data (all inputs are converted to string).

    Parameters

    Returns (__namedParameters: any, property: string) => void

      • (__namedParameters: any, property: string): void
      • Parameters

        • __namedParameters: any
        • property: string

        Returns void

  • NumberProperty(path: string): (__namedParameters: any, property: string) => void
  • Converts value to Number if present

    Parameters

    • path: string

    Returns (__namedParameters: any, property: string) => void

      • (__namedParameters: any, property: string): void
      • Parameters

        • __namedParameters: any
        • property: string

        Returns void

  • Property(path: string, reader?: ReadMap<any, any>): (__namedParameters: any, property: string) => void
  • Parameters

    • path: string
    • reader: ReadMap<any, any> = identity

    Returns (__namedParameters: any, property: string) => void

      • (__namedParameters: any, property: string): void
      • Parameters

        • __namedParameters: any
        • property: string

        Returns void

  • StringProperty(path: string): (__namedParameters: any, property: string) => void
  • Converts value to String if present

    Parameters

    • path: string

    Returns (__namedParameters: any, property: string) => void

      • (__namedParameters: any, property: string): void
      • Parameters

        • __namedParameters: any
        • property: string

        Returns void

  • createPropertyObjectFactory(propertyMap: PropertyMap): <T>(cls: Type<T>) => T
  • defaultStringifier(event: LogEvent): string
  • ensure<T>(maybe: Maybe<T>, fallback: T): T
  • Type parameters

    • T

    Parameters

    • maybe: Maybe<T>
    • fallback: T

    Returns T

  • ensurePath(path: string): Promise<void>
  • filterAsync<T>(cb: (value: T, index: number, array: T[]) => Promise<boolean>): (data: T[]) => Promise<T[]>
  • Type parameters

    • T

    Parameters

    • cb: (value: T, index: number, array: T[]) => Promise<boolean>
        • (value: T, index: number, array: T[]): Promise<boolean>
        • Parameters

          • value: T
          • index: number
          • array: T[]

          Returns Promise<boolean>

    Returns (data: T[]) => Promise<T[]>

      • (data: T[]): Promise<T[]>
      • Parameters

        • data: T[]

        Returns Promise<T[]>

  • ifPresent<T>(maybe: Maybe<T>, then: (v: T) => void): void
  • ifPresent<T, R>(maybe: Maybe<T>, then: (v: T) => R, otherwise: () => R): R
  • Type parameters

    • T

    Parameters

    • maybe: Maybe<T>
    • then: (v: T) => void
        • (v: T): void
        • Parameters

          • v: T

          Returns void

    Returns void

  • Type parameters

    • T

    • R = void

    Parameters

    • maybe: Maybe<T>
    • then: (v: T) => R
        • (v: T): R
        • Parameters

          • v: T

          Returns R

    • otherwise: () => R
        • (): R
        • Returns R

    Returns R

  • invokeIfPresent<ARGS, R>(maybeFn: Maybe<(...args: ARGS) => R>, ...args: ARGS): Maybe<R>
  • isPresent<T>(maybe: Maybe<T>): maybe is T
  • Type parameters

    • T

    Parameters

    Returns maybe is T

  • mapAsync<T, U>(callbackfn: (value: T, index: number, array: T[]) => Promise<U>): (data: T[]) => Promise<U[]>
  • Type parameters

    • T

    • U

    Parameters

    • callbackfn: (value: T, index: number, array: T[]) => Promise<U>
        • (value: T, index: number, array: T[]): Promise<U>
        • Parameters

          • value: T
          • index: number
          • array: T[]

          Returns Promise<U>

    Returns (data: T[]) => Promise<U[]>

      • (data: T[]): Promise<U[]>
      • Parameters

        • data: T[]

        Returns Promise<U[]>

  • objectReflection(v: object, separator?: string): Reflection
  • template(t: string, interpolation?: RegExp): (dataReflection: (key: string) => string) => string
  • Parameters

    • t: string
    • interpolation: RegExp = ...

    Returns (dataReflection: (key: string) => string) => string

      • (dataReflection: (key: string) => string): string
      • Parameters

        • dataReflection: (key: string) => string
            • (key: string): string
            • Parameters

              • key: string

              Returns string

        Returns string

  • throwIfAbsent<T>(maybe: Maybe<T>, error?: Error): T | never
  • Type parameters

    • T

    Parameters

    • maybe: Maybe<T>
    • error: Error = ...

    Returns T | never

  • throwOnRuntimeTypeMissmatch(value: any, type: "Undefined" | "Object" | "Boolean" | "Number" | "BigInt" | "String" | "Symbol" | "Function", message: string): void
  • This function is useful for runtime typechecking

    Since the JS runtime does not care about types, it is possible for users to e.g. initialize objects in a wrong way, causing errors during execution. TypeScript can't help us here, so we have to provide our own typeguards during runtime.

    The reason why this function is implemented the way it is implemented and not just uses e.g. typeof arg === 'string' is the fact that typeof will not handle everything as expected. It's valid, although not common, to pass a new String("foo") object instead of just "foo" to a function, in which case typeof would return 'object' instead of 'string'.

    The typeRegex used test the output of Object.prototype.toString, which would be [object String] in both cases (new String("foo") and "foo") So no matter whether a user passes a string literal or a String object, the typecheck will handle both cases.

    Parameters

    • value: any

      The value to typecheck

    • type: "Undefined" | "Object" | "Boolean" | "Number" | "BigInt" | "String" | "Symbol" | "Function"

      The expected runtime type, one of "Undefined" | "Object" | "Boolean" | "Number" | "BigInt" | "String" | "Symbol" | "Function"

    • message: string

      The TypeError message in case of a runtime type missmatch

    Returns void