Estou tentando substituir valores de um array com base em um mapa de pesquisa usando Jolt, mas a especificação não parece funcionar. Ela funciona até atingir o mapa de pesquisa e eu posso deslocar o mapa inteiro, mas referenciar cada chave usando & não está funcionando como esperado.
Entrada:
{
"records": [
{
"id": "1",
"keys": [
"ba2c89c3",
"aa2c89c3"
]
}
],
"lookup": {
"ba2c89c3": "EE",
"aa2c89c3": "EL"
}
}
Saída esperada:
{
"data": {
"records": [
{
"id": "1",
"vals": [
"EE",
"EL"
]
}
]
}
}
Tentei especificar, mas parece que não funciona.
[
{
"operation": "shift",
"spec": {
"records": {
"*": {
"id": "data.records[&1].id",
"keys": {
"*": {
"@(4,lookup.&)": "data.records[&3].vals"
}
}
}
}
}
}
]