diff --git a/_yaml/data-functions.yml b/_yaml/data-functions.yml
index 00279f335..0e45a688e 100644
--- a/_yaml/data-functions.yml
+++ b/_yaml/data-functions.yml
@@ -8,6 +8,12 @@ df_types:
- month
- year
df_string:
+ - funcName: base64Encode
+ returns: A base64 encoded string.
+ description: Encode a string as base64.
+ - funcName: base64Decode
+ returns: A plain string.
+ description: Convert a base64 encoded string to a normal string.
- funcName: extractDomain
returns: String
description: Extracts a domain from a string containing a valid URL. Returns undefined if none is found.
@@ -17,6 +23,9 @@ df_string:
- funcName: extractUrl
returns: String
description: Extracts a URL from a string. Returns undefined if none is found.
+ - funcName: extractUrlPath
+ returns: String
+ description: Extract the path but not the root domain from a URL. For example, "https://example.com/orders/1/details".extractUrlPath() returns "/orders/1/details/".
- funcName: hash
args:
- argName: algo
@@ -55,6 +64,9 @@ df_string:
- funcName: isUrl
returns: Boolean
description: Checks if a string is a valid URL.
+ - funcName: parseJson
+ returns: Object
+ description: Equivalent of JSON.parse(). Parses a string as a JSON object.
- funcName: quote
args:
- argName: mark
@@ -75,9 +87,12 @@ df_string:
- funcName: removeTags
returns: String
description: Remove tags, such as HTML or XML, from a string.
- - funcName: toDate
+ - funcName: toBoolean
+ returns: Boolean
+ description: Convert a string to a boolean. "false", "0", "", and "no" convert to false.
+ - funcName: toDateTime
returns: Date
- description: Converts a string to a date.
+ description: Converts a string to a Luxon date object.
- funcName: toDecimalNumber
returns: Number
description: See toFloat
@@ -171,6 +186,9 @@ df_object:
- funcName: compact
returns: Object
description: Removes empty values from an Object.
+ - funcName: toJsonString
+ returns: String
+ description: Convert an object to a JSON string. Equivalent of JSON.stringify.
- funcName: urlEncode
returns: String
description: Transforms an Object into a URL parameter list. Only top-level keys are supported.
@@ -212,6 +230,15 @@ df_number:
description: How many decimal places to round to.
returns: Number
description: Returns the value of a number rounded to the nearest whole number, unless a decimal place is specified.
+ - funcName: toBoolean
+ returns: Boolean
+ description: Converts a number to a boolean. 0 converts to false. All other values convert to true.
+ - funcName: toDateTime
+ returns: Date
+ description: Converts a number to a Luxon date object.
+ - funcName: toInt
+ returns: Integer
+ description: Convert a number to an integer by rounding up or down. .5 and above rounds up.
df_date:
- funcName: beginningOf
args:
@@ -316,6 +343,12 @@ df_date:
options: *df_durationUnit
returns: Date
description: Adds a given time period to a Date. Returns either a JavaScript Date or Luxon Date, depending on input.
+ - funcName: toDateTime
+ returns: Date
+ description: Converts a JavaScript date to a Luxon date object.
+ - funcName: toInt
+ returns: Number
+ description: Gets the milliseconds for the current DateTime and returns it as a number. For example, DateTime.fromISO('2024-01-01T00:00:00.000Z').toInt() returns 1704067200000
df_array:
- funcName: average
returns: Number
@@ -432,6 +465,9 @@ df_array:
- funcName: sum
returns: Number
description: Returns the total sum all the values in an array of parsable numbers.
+ - funcName: toJsonString
+ returns: String
+ description: Convert an array to a JSON string. Equivalent of JSON.stringify.
- funcName: union
args:
- argName: arr
@@ -450,3 +486,7 @@ df_array:
description: A key, or comma-separated list of keys, to check for duplicates.
returns: Array
description: Remove duplicates from an array.
+df_boolean:
+ - funcName: toInt
+ returns: Number
+ description: Convert a boolean to a number. false converts to 0, true converts to 1.
diff --git a/docs/code/builtin/data-transformation-functions/booleans.md b/docs/code/builtin/data-transformation-functions/booleans.md
new file mode 100644
index 000000000..8e370324c
--- /dev/null
+++ b/docs/code/builtin/data-transformation-functions/booleans.md
@@ -0,0 +1,18 @@
+---
+title: Data transformation functions for booleans
+description: A reference document listing built-in convenience functions to support data transformation in expressions for booleans.
+contentType: reference
+---
+
+# Booleans
+
+A reference document listing built-in convenience functions to support data transformation in expressions for arrays.
+
+/// note | JavaScript in expressions
+You can use any JavaScript in expressions. Refer to [Expressions](/code/expressions/) for more information.
+///
+[[% import "_macros/data-functions.html" as dataFunctions %]]
+
+[[% for func in df_boolean %]]
+[[ dataFunctions.dataFunctions("boolean", func.funcName, func.returns, func.description, func.args, func.examples ) ]]
+[[% endfor %]]
diff --git a/mkdocs.yml b/mkdocs.yml
index 2fe85bcad..05bae9514 100644
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -1166,6 +1166,7 @@ nav:
- Data transformation functions:
- code/builtin/data-transformation-functions/index.md
- Arrays: code/builtin/data-transformation-functions/arrays.md
+ - Booleans: code/builtin/data-transformation-functions/booleans.md
- Dates: code/builtin/data-transformation-functions/dates.md
- Numbers: code/builtin/data-transformation-functions/numbers.md
- Objects: code/builtin/data-transformation-functions/objects.md