Merge pull request #15678 from Budibase/fix/js-binding-formatters

Fixing wrongly display bindings on JS
This commit is contained in:
Adria Navarro 2025-03-05 12:55:38 +01:00 committed by GitHub
commit a2b6e021eb
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 8 additions and 7 deletions

View File

@ -145,9 +145,11 @@
return return
} }
popoverAnchor = target popoverAnchor = target
const doc = new DOMParser().parseFromString(helper.description, "text/html")
hoverTarget = { hoverTarget = {
type: "helper", type: "helper",
description: helper.description, description: doc.body.textContent || "",
code: getHelperExample(helper, mode === BindingMode.JavaScript), code: getHelperExample(helper, mode === BindingMode.JavaScript),
} }
popover.show() popover.show()
@ -241,20 +243,19 @@
> >
{#if hoverTarget.description} {#if hoverTarget.description}
<div> <div>
<!-- eslint-disable-next-line svelte/no-at-html-tags--> {hoverTarget.description}
{@html hoverTarget.description}
</div> </div>
{/if} {/if}
{#if hoverTarget.code} {#if hoverTarget.code}
{#if mode === BindingMode.JavaScript} {#if mode === BindingMode.Text || (mode === BindingMode.JavaScript && hoverTarget.type === "binding")}
<!-- eslint-disable-next-line svelte/no-at-html-tags-->
<pre>{@html hoverTarget.code}</pre>
{:else}
<CodeEditor <CodeEditor
value={hoverTarget.code?.trim()} value={hoverTarget.code?.trim()}
mode={EditorModes.JS} mode={EditorModes.JS}
readonly readonly
/> />
{:else if mode === BindingMode.Text}
<!-- eslint-disable-next-line svelte/no-at-html-tags-->
<pre>{@html hoverTarget.code}</pre>
{/if} {/if}
{/if} {/if}
</div> </div>