From 9a3a2ee48b6358c90eb0e8bf9beb83ed5b97e560 Mon Sep 17 00:00:00 2001 From: maxcoulombe Date: Tue, 28 Feb 2023 08:06:16 -0500 Subject: [PATCH] * waiting for result of evaluate to account for jsonata v2 changes --- src/secrets.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/secrets.js b/src/secrets.js index 3834f6d..875249b 100644 --- a/src/secrets.js +++ b/src/secrets.js @@ -55,7 +55,7 @@ async function getSecrets(secretRequests, client) { selector = "data." + selector } - const value = selectData(body, selector); + const value = await selectData(body, selector); results.push({ request: secretRequest, value, @@ -70,12 +70,12 @@ async function getSecrets(secretRequests, client) { * @param {object} data * @param {string} selector */ -function selectData(data, selector) { +async function selectData(data, selector) { const ata = jsonata(selector); - let result = JSON.stringify(ata.evaluate(data)); + let result = JSON.stringify(await ata.evaluate(data)); // Compat for custom engines if (!result && ((ata.ast().type === "path" && ata.ast()['steps'].length === 1) || ata.ast().type === "string") && selector !== 'data' && 'data' in data) { - result = JSON.stringify(jsonata(`data.${selector}`).evaluate(data)); + result = JSON.stringify(await jsonata(`data.${selector}`).evaluate(data)); } else if (!result) { throw Error(`Unable to retrieve result for ${selector}. No match data was found. Double check your Key or Selector.`); }