Utility TypeScript @ 2.0.0-beta
    Preparing search index...

    Class MessageMakerExperimental

    A configurable class for formatting message strings for various outputs.

    0.1.1 — Experimental

    Hierarchy (View Summary)

    Index

    Constructors

    Properties - Aliases

    Properties - Args

    Accessors

    Methods - Args

    Methods - Exporters

    Methods - Formatters

    Methods - Messagers

    Methods - Static

    Methods - Stylers

    Constructors

    Properties - Aliases

    mergeArgs: {
        <D extends object>(
            defaults: D,
            inputs?: undefined,
            recursive?: boolean,
        ): D;
        <D extends object, I extends Partial<D>>(
            defaults: D,
            inputs: I,
            recursive?: false,
        ): D & I;
        <D extends object, I extends Partial<D> | RecursivePartial<D>>(
            defaults: D,
            inputs: I,
            recursive: true,
        ): D & I;
        <D extends object, I extends Partial<D> | RecursivePartial<D>>(
            defaults: D,
            inputs?: I,
            recursive?: boolean,
        ): D | D & I;
    } = mergeArgs

    An alias for this package's mergeArgs().

    Type declaration

      • <D extends object>(defaults: D, inputs?: undefined, recursive?: boolean): D
      • Inputs can be undefined, and if so, the default is returned.

        Type Parameters

        • D extends object

          Default object type.

        Parameters

        • defaults: D

          Default values (if not specified in inputs).

        • Optionalinputs: undefined

          Overriding values (changes to make).

        • Optionalrecursive: boolean

          Optional. Whether to merge the object recursively. Default false.

        Returns D

        Resulting object with all the defaults and inputs keys with either default values or input values, as appropriate.

      • <D extends object, I extends Partial<D>>(
            defaults: D,
            inputs: I,
            recursive?: false,
        ): D & I
      • Passing recursive as false means that the input type must be a Partial (not RecursivePartial).

        Type Parameters

        • D extends object
        • I extends Partial<D>

        Parameters

        • defaults: D
        • inputs: I
        • Optionalrecursive: false

        Returns D & I

      • <D extends object, I extends Partial<D> | RecursivePartial<D>>(
            defaults: D,
            inputs: I,
            recursive: true,
        ): D & I
      • Passing recursive as true means that the input type may actually be a RecursivePartial.

        Type Parameters

        Parameters

        • defaults: D
        • inputs: I
        • recursive: true

        Returns D & I

      • <D extends object, I extends Partial<D> | RecursivePartial<D>>(
            defaults: D,
            inputs?: I,
            recursive?: boolean,
        ): D | D & I
      • Universal overload.

        Type Parameters

        Parameters

        • defaults: D
        • Optionalinputs: I
        • Optionalrecursive: boolean

        Returns D | D & I

    Properties - Args

    A completed args object.

    Accessors

    • get ARGS_DEFAULT(): {
          ansiColours: {
              "24": {
                  black: "2;26;26;26";
                  blue: "2;60;84;157";
                  green: "2;24;118;10";
                  grey: "2;108;108;108";
                  "light-grey": "2;208;208;208";
                  orange: "2;174;84;4";
                  pink: "2;179;77;145";
                  purple: "2;129;75;155";
                  red: "2;168;36;36";
                  turquoise: "2;0;128;98";
                  white: "2;248;248;248";
                  yellow: "2;204;182;0";
              };
              "4": {
                  bg: {
                      black: "40";
                      blue: "44";
                      green: "42";
                      grey: "40";
                      "light-grey": "47";
                      orange: "43";
                      pink: "45";
                      purple: "45";
                      red: "41";
                      turquoise: "46";
                      white: "47";
                      yellow: "43";
                  };
                  fg: {
                      black: "30";
                      blue: "34";
                      green: "32";
                      grey: "30";
                      "light-grey": "37";
                      orange: "33";
                      pink: "35";
                      purple: "35";
                      red: "31";
                      turquoise: "36";
                      white: "37";
                      yellow: "33";
                  };
              };
              "8": {
                  black: "5;232";
                  blue: "5;20";
                  green: "5;28";
                  grey: "5;241";
                  "light-grey": "5;247";
                  orange: "5;166";
                  pink: "5;162";
                  purple: "5;55";
                  red: "5;124";
                  turquoise: "5;30";
                  white: "5;255";
                  yellow: "5;208";
              };
          };
          argsRecursive: true;
          msg: {
              bold: false;
              clr: null;
              depth: 0;
              flag: false;
              fullWidth: false;
              hangingIndent: "";
              indent: "";
              italic: false;
              linesIn: 0;
              linesOut: 1;
              maxWidth: null;
              minWidth: 20;
              tab: " ";
          };
          painter: null;
          paintFormat: null;
          paintIfEmpty: false;
      }
      Experimental

      Returns {
          ansiColours: {
              "24": {
                  black: "2;26;26;26";
                  blue: "2;60;84;157";
                  green: "2;24;118;10";
                  grey: "2;108;108;108";
                  "light-grey": "2;208;208;208";
                  orange: "2;174;84;4";
                  pink: "2;179;77;145";
                  purple: "2;129;75;155";
                  red: "2;168;36;36";
                  turquoise: "2;0;128;98";
                  white: "2;248;248;248";
                  yellow: "2;204;182;0";
              };
              "4": {
                  bg: {
                      black: "40";
                      blue: "44";
                      green: "42";
                      grey: "40";
                      "light-grey": "47";
                      orange: "43";
                      pink: "45";
                      purple: "45";
                      red: "41";
                      turquoise: "46";
                      white: "47";
                      yellow: "43";
                  };
                  fg: {
                      black: "30";
                      blue: "34";
                      green: "32";
                      grey: "30";
                      "light-grey": "37";
                      orange: "33";
                      pink: "35";
                      purple: "35";
                      red: "31";
                      turquoise: "36";
                      white: "37";
                      yellow: "33";
                  };
              };
              "8": {
                  black: "5;232";
                  blue: "5;20";
                  green: "5;28";
                  grey: "5;241";
                  "light-grey": "5;247";
                  orange: "5;166";
                  pink: "5;162";
                  purple: "5;55";
                  red: "5;124";
                  turquoise: "5;30";
                  white: "5;255";
                  yellow: "5;208";
              };
          };
          argsRecursive: true;
          msg: {
              bold: false;
              clr: null;
              depth: 0;
              flag: false;
              fullWidth: false;
              hangingIndent: "";
              indent: "";
              italic: false;
              linesIn: 0;
              linesOut: 1;
              maxWidth: null;
              minWidth: 20;
              tab: " ";
          };
          painter: null;
          paintFormat: null;
          paintIfEmpty: false;
      }

    Methods - Args

    Methods - Exporters

    Methods - Formatters

    • Experimental

      Joins string arrays with a single new line and adds an indent to the beginning of every line, and adds next level of indent for child arrays.

      Parameters

      • lines: (string | string[])[]

        String to implode. Arrays are joined with '\n'.

      • indent: string = ...

        Optional. Default this.args.msg.tab.

      Returns string

      The same text, but with an indent added after every new line.

    Methods - Messagers

    • Experimental

      Formats given messages individually and then joins them on return.

      Parameters

      • messages: BulkMsgs

        Messages to display, each with their own personal override arguments. Joined with universalArgs.joiner (default '\n\n') before return.

      • universalArgs: Partial<BulkMsgArgs> = {}

        Optional. Overrides for default arguments in MessageMaker.args for all messages.

      Returns string

    • Experimental

      Used to map each line of a message in MessageMaker.msg.

      Does not wrap or split it (assumes this has already been done). Applies MessageMaker.painter and MessageMaker.Args.depth indent.

      Parameters

      • line: string

        String to map. Already wrapped to line width, if applicable.

      • args: MessageMaker.MsgArgs

        Message arguments that apply to this line. Also passed to MessageMaker.painter.

      • prefix: string = ''

        Optional. Unpainted string added before the line. Helpful for hanging indents. Default ''.

      Returns string

    Methods - Static

    Methods - Stylers