Skip to content

Commit

Permalink
Merge pull request #414 from netux/fix/editor-compiler-parameter-obje…
Browse files Browse the repository at this point in the history
…ct-ignore-linemarker

Remove [linemarker]s from parameter object keys in the Editor compiler
  • Loading branch information
Mitcheljager authored Feb 12, 2024
2 parents ce5b715 + 3a0b8b4 commit 8c55f7a
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 2 deletions.
7 changes: 5 additions & 2 deletions app/javascript/src/utils/compiler/parameterObjects.js
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,11 @@ export function getFirstParameterObject(content, startFromIndex = 0) {
const given = {}

splitParameters.forEach(item => {
const [key, value] = item.split(/:(.*)/s)
given[key.trim()] = (value || "").trim()
let [key, value] = item.split(/:(.*)/s)
key = key.replace(/\[linemarker\].*?\[\/linemarker\]/, "").trim()
value = (value || "").trim()
if (!key) return
given[key] = value
})

const result = { start: start + startFromIndex, end: end + startFromIndex, given }
Expand Down
13 changes: 13 additions & 0 deletions spec/javascript/utils/compiler/parameterObjects.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,19 @@ describe("parameterObjects.js", () => {

expect(getFirstParameterObject(content, 20)).toEqual(expected)
})

test("Should ignore [linemarker]s", () => {
const content = "[linemarker]itemID|1[/linemarker]Some Action({\n[linemarker]itemID|2[/linemarker]\tOne: 10,\n[linemarker]itemID|3[/linemarker]\tThree: 20,\n[linemarker]itemID|4[/linemarker]})"
const expected = {
start: 45,
end: 168,
given: { One: "10", Three: "20" },
phraseParameters: ["One", "Two", "Three"],
phraseDefaults: [0, 0, 0]
}

expect(getFirstParameterObject(content)).toEqual(expected)
})
})

describe("replaceParameterObject", () => {
Expand Down

0 comments on commit 8c55f7a

Please sign in to comment.