Formatter

Monster.Text. Formatter

Messages can be formatted with the formatter. To do this, an object with the values must be passed to the formatter. The message can then contain placeholders.

Look at the example below. The placeholders use the logic of Pipe.

You can call the method via the monster namespace new Monster.Text.Formatter().

<script type="module">
import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.23.0/dist/modules/text/formatter.js';
console.log(new Monster.Text.Formatter())
</script>

Alternatively, you can also integrate this function individually.

<script type="module">
import {Formatter} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.23.0/dist/modules/text/formatter.js';
console.log(new Formatter())
</script>

Constructor

# new Formatter(object)

Default values for the markers are ${ and }

Parameters:
Name Type Description
object object
Since:
  • 1.12.0
Throws:

value is not a object

Type
TypeError
Example
new Formatter({
      a: {
          b: {
              c: "Hello"
          },
          d: "world",
      }
  }).format("${a.b.c} ${a.d | ucfirst}!");

// ↦ Hello World!

Methods

# format(text) → {string}

Parameters:
Name Type Description
text string
Throws:

value is not a string

Type
TypeError
Returns:
Type
string

# setMarker(open, close) → {Formatter}

Set new Marker

Default values for the markers are ${ and }

formatter.setMarker('#'); // open and close are both #
formatter.setMarker('[',']');
formatter.setMarker('i18n{','}');
Parameters:
Name Type Description
open string
close string
Since:
  • 1.12.0
Throws:

value is not a string

Type
TypeError
Returns:
Type
Formatter