ДокументацияОператоры маппера

Как читать статью оператора

Каждая статья оператора содержит:

  • Видтрансформер (перестраивает значение) или фильтр (отбирает/отбрасывает значения до маппинга).
  • Обработка значения — как оператор трактует скалярный, массивный и объектный вход:
    • per-item — применяется к скаляру напрямую; над массивом обрабатывает поэлементно (элементы неподходящего типа проходят насквозь без изменений).
    • whole-value — работает со значением как с единым целым независимо от его формы.
    • array — ориентирован на массив; вход, не являющийся массивом, проходит насквозь без изменений (если не указано иное).
    • item-filter — операторы-фильтры: массив фильтруется поэлементно; скаляр трактуется как один элемент, а не прошедший фильтр скаляр отбрасывается (становится отсутствующим, поэтому правило маппинга откатывается к своему значению по умолчанию).
  • Аргументы — имя, тип (string / number / boolean / json), его обязательность и значение по умолчанию, используемое при его отсутствии.
  • Поведение, крайние случаи и один разобранный Пример (input + аргументы → output).

Общие соглашения (верны для каждого оператора, если в статье не сказано иное):

  • Несоответствие типа — это проброс, а не ошибка. Строковый оператор, получивший число, оператор массива, получивший объект, оператор даты, получивший неразбираемую строку, и т. п. возвращают вход без изменений. Операторы никогда не выбрасывают исключение на пути ingest; действительно сбойное правило откатывается согласно собственной политике ошибок.
  • null / отсутствующий вход. Отсутствующий исходный путь не даёт значения; правило маппинга применяет своё значение по умолчанию до запуска трансформеров. Большинство трансформеров возвращают вход null/отсутствие без изменений. Операторы-предикаты (семейство is*) сначала приводят через String(value), поэтому null становится текстом "null".
  • Неизменяемость. Операторы объектов и массивов никогда не мутируют вход; они возвращают новое значение.
  • Безопасность регулярных выражений. Каждый аргумент-регулярное выражение проверяется при сохранении и повторно во время выполнения защитой от ReDoS (шаблоны длиннее 512 символов или с вложенными неограниченными квантификаторами вроде (a+)+ отклоняются). Отклонённый или некорректный шаблон делает оператор безопасной no-op-операцией (он возвращает вход или не срабатывает), не рискуя неконтролируемым разрастанием сопоставления.
  • Синонимы аргументов. Некоторые аргументы принимают альтернативные имена (например, dt также принимает expression или path). Синонимы перечислены в таблице аргументов.

Алфавитный указатель

Оператор Вид Группа
abs трансформер Числа и математика
add трансформер Числа и математика
AppendIfNotEmpty трансформер Условия и контент
append трансформер Списки и массивы
arrayLength трансформер Условия и контент
attachmentMetadata трансформер Условия и контент
attachmentNames трансформер Условия и контент
average трансформер Списки и массивы
base64Decode трансформер Конвертация и кодирование
base64Encode трансформер Конвертация и кодирование
chunk трансформер Списки и массивы
compact трансформер Списки и массивы
compact (filter) фильтр Фильтры
count трансформер Списки и массивы
countBy трансформер Списки и массивы
dateAdd трансформер Дата и время
dateDiff трансформер Дата и время
dateSubtract трансформер Дата и время
decodeURL трансформер Конвертация и кодирование
deepMerge трансформер Объекты
defangIP трансформер Сеть и IOC
defangURL трансформер Сеть и IOC
deleteField трансформер Объекты
difference трансформер Списки и массивы
divide трансформер Числа и математика
domainExtract трансформер Сеть и IOC
drop_empty (filter) фильтр Фильтры
DT трансформер Условия и контент
emailAddress трансформер Условия и контент
emailAddressList трансформер Условия и контент
encodeURL трансформер Конвертация и кодирование
entries трансформер Объекты
escapeHTML трансформер Строки
extractDomains трансформер Сеть и IOC
extractEmails трансформер Сеть и IOC
extractHashes трансформер Сеть и IOC
extractIPs трансформер Сеть и IOC
extractURLs трансформер Сеть и IOC
filter (filter) фильтр Фильтры
first трансформер Списки и массивы
first (filter) фильтр Фильтры
firstItem трансформер Условия и контент
firstN трансформер Списки и массивы
flatten трансформер Списки и массивы
flattenDeep трансформер Списки и массивы
flattenObject трансформер Объекты
formatDate трансформер Дата и время
FormatTemplate трансформер Условия и контент
fromEpoch трансформер Дата и время
getByPath трансформер Объекты
getDay трансформер Дата и время
getDayOfWeek трансформер Дата и время
getField трансформер Объекты
getMonth трансформер Дата и время
getYear трансформер Дата и время
groupBy трансформер Списки и массивы
htmlToText трансформер Строки
If-Elif трансформер Условия и контент
If-Then-Else (filter) фильтр Фильтры
index трансформер Списки и массивы
indexBy трансформер Списки и массивы
intersection трансформер Списки и массивы
ipInCIDR трансформер Сеть и IOC
isCIDR трансформер Сеть и IOC
isDomain трансформер Сеть и IOC
isEmail трансформер Сеть и IOC
isHash трансформер Сеть и IOC
isIP трансформер Сеть и IOC
isIPv4 трансформер Сеть и IOC
isIPv6 трансформер Сеть и IOC
isPrivateIP трансформер Сеть и IOC
isURL трансформер Сеть и IOC
isAfterDate трансформер Дата и время
isBeforeDate трансформер Дата и время
isBetweenDates трансформер Дата и время
join трансформер Строки
joinComma трансформер Условия и контент
jsonStringify трансформер Условия и контент
keys трансформер Объекты
last трансформер Списки и массивы
lastItem трансформер Условия и контент
lastN трансформер Списки и массивы
MapPattern трансформер Условия и контент
Math.ceil трансформер Числа и математика
Math.floor трансформер Числа и математика
Math.round трансформер Числа и математика
max трансформер Списки и массивы
merge трансформер Объекты
min трансформер Списки и массивы
modulo трансформер Числа и математика
multiply трансформер Числа и математика
omit трансформер Объекты
padEnd трансформер Строки
padStart трансформер Строки
parseCSV трансформер Конвертация и кодирование
parseDate трансформер Дата и время
parseXML трансформер Конвертация и кодирование
pick трансформер Объекты
pluck трансформер Списки и массивы
RegexExtractAll (filter) фильтр Фильтры
refangIP трансформер Сеть и IOC
refangURL трансформер Сеть и IOC
regexReplace трансформер Строки
replace трансформер Строки
replaceAll трансформер Строки
setByPath трансформер Объекты
SetByIndex (filter) фильтр Фильтры
setField трансформер Объекты
SetIfEmpty трансформер Условия и контент
size трансформер Списки и массивы
sort трансформер Списки и массивы
splice трансформер Списки и массивы
split трансформер Строки
splitComma трансформер Условия и контент
StripChars трансформер Строки
stringCount трансформер Строки
stringReverse трансформер Строки
subtract трансформер Числа и математика
substring трансформер Строки
sum трансформер Списки и массивы
TimeComponents трансформер Условия и контент
TimeStampToDate трансформер Условия и контент
timeZoneConvert трансформер Дата и время
toArray трансформер Конвертация и кодирование
toBoolean трансформер Конвертация и кодирование
toCSV трансформер Конвертация и кодирование
toEpoch трансформер Дата и время
toFixed трансформер Числа и математика
toJSON трансформер Конвертация и кодирование
toLowerCase трансформер Строки
toMarkdownTable трансформер Конвертация и кодирование
toNumber трансформер Конвертация и кодирование
toString трансформер Конвертация и кодирование
toUpperCase трансформер Строки
trim трансформер Строки
trimEnd трансформер Строки
trimStart трансформер Строки
union трансформер Списки и массивы
unique трансформер Списки и массивы
unique (filter) фильтр Фильтры
unescapeHTML трансформер Строки
unzip трансформер Списки и массивы
urlParse трансформер Конвертация и кодирование
utcNow трансформер Дата и время
values трансформер Объекты
where_equals (filter) фильтр Фильтры
where_exists (filter) фильтр Фильтры
zip трансформер Списки и массивы