From 3c8ac16367b039bc88e12e616ce8ed76d3a2fb8f Mon Sep 17 00:00:00 2001 From: Bo26fhmC5M <88071760+Bo26fhmC5M@users.noreply.github.com> Date: Mon, 2 Dec 2024 13:04:56 +0900 Subject: [PATCH] Fix {{#if_pure}} syntax issue where spaces and whitespace were not preserved as intended. --- src/ts/parser.svelte.ts | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/ts/parser.svelte.ts b/src/ts/parser.svelte.ts index 71dbe1f3..1b63994a 100644 --- a/src/ts/parser.svelte.ts +++ b/src/ts/parser.svelte.ts @@ -1760,16 +1760,19 @@ function trimLines(p1:string){ } function blockEndMatcher(p1:string,type:{type:blockMatch,type2?:string},matcherArg:matcherArg):string{ + const p1Trimed = p1.trim() switch(type.type){ case 'pure': - case 'parse-pure': case 'pure-display': case 'function':{ - return p1 + return p1Trimed } case 'parse': case 'each':{ - return trimLines(p1) + return trimLines(p1Trimed) + } + case 'parse-pure':{ + return p1 } default:{ return '' @@ -1952,7 +1955,7 @@ export function risuChatParser(da:string, arg:{ } blockNestType.delete(nested.length) const dat2 = nested.shift() - const matchResult = blockEndMatcher(dat2.trim(), blockType, matcherObj) + const matchResult = blockEndMatcher(dat2, blockType, matcherObj) if(blockType.type === 'each'){ const subind = blockType.type2.lastIndexOf(' ') const sub = blockType.type2.substring(subind + 1)