Handlebars

Admin UI has custom functions added to standard Handlebars library

The following functions can be used in addition to specification provided by Handlebars language, to support common use cases:

Implementation Domain

Server Side

These functions are available for server side rendering using Handlebars template event handler.

Client Side

These functions are available for Handlebars widgets and menus.

Functions

not(boolean)

Returns opposite of the given boolean value.

eq(any, any)

Returns true if the provided two values (e.g. number, string) are equal to each other.

neq(any, any)

Returns true if the provided two values (e.g. number, string) are not equal to each other.

gt(any, any)

Returns true if the first provided value is greater than the second.

gte(any, any)

Returns true if the first provided value is greater than or equal to the second.

lt(any, any)

Returns true if the first provided value is less than the second.

lte(any, any)

Returns true if the first provided value is less than or equal to the second.

and(...boolean)

Returns true if all of the provided values are true.

or(...boolean)

Returns true if any of the provided values is true.

cond(boolean, any, any)

If a given condition value is true, returns the first given parameter, otherwise returns the second given parameter.

max(array)

Returns the maximum value in provided array.

min(array)

Returns the minimum value in provided array.

range(number)

Creates an array with elements ranging from 0 to provided value-1.

slice(array, number=0, number=array.length)

Returns array elements from start to end index.

size(array)

Returns the number of elements in an array.

len(string)

Returns the length of a given string.

arr(...any)

Converts provided list of values to an array.

coalesce(...any)

the first non-null element in an array.

lines(string)

lines of string into an array of string.

math(number, string, number)

Calculates given operation (+,-,/,*,%) between two given numbers.

a given json object into string.

toJson(string)

Converts a given string into json object.

md(string)

provided markdown text into HTML string.

eval(object, string)

a JMESPath expression string on a given object.

dateToString(number, string="en-US", string="MM-dd-yyyy")

given epoch milliseconds into date with given locale and pattern strings.

stringToDate(string, string="en-US", string="MM-dd-yyyy")

Converts given date string in given locale and pattern into epoch milliseconds.

dataLookup(string, string | string[])

and returns record(s) from a given source, using a given id or ids. If "*" is given as the id, all records in the source are returned. If a string array is provided as the ids, their list is returned as an array. Otherwise, a single record for the provided id is returned.

For client side, the source given must match a source record from design application.

For server side, the source given must match a state name on current runner.

As this helper gives access to all states on a runner without checking access rights, it is recommended to limit its use to runners that do not have access to sensitive states such as customer data for server-side use cases.

setVar(string, any)

Creates a contectual variable with given name and value, typically used for storing and reusing calculated values without "with" expressions.

Last updated