From 984a6636474e5c6bcd374126b83bf9497b2eeab6 Mon Sep 17 00:00:00 2001 From: Tobias Klika Date: Thu, 28 Apr 2022 16:00:15 +0200 Subject: [PATCH] v-multiline directive (nl2br) --- zero.Backoffice.UI/app/directives/register.ts | 4 +++- zero.Backoffice.UI/app/directives/v-multiline.ts | 11 +++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 zero.Backoffice.UI/app/directives/v-multiline.ts diff --git a/zero.Backoffice.UI/app/directives/register.ts b/zero.Backoffice.UI/app/directives/register.ts index dc4bc6fb..79516803 100644 --- a/zero.Backoffice.UI/app/directives/register.ts +++ b/zero.Backoffice.UI/app/directives/register.ts @@ -10,6 +10,7 @@ import vPlaceholder from './v-placeholder'; import vResizeable from './v-resizeable'; import vSortable from './v-sortable'; import vEncode from './v-encode' +import vMultiline from './v-multiline'; const directives = [ { key: 'click-outside', definition: vClickOutside }, @@ -21,7 +22,8 @@ const directives = [ { key: 'placeholder', definition: vPlaceholder }, { key: 'resizeable', definition: vResizeable }, { key: 'sortable', definition: vSortable }, - { key: 'encode', definition: vEncode } + { key: 'encode', definition: vEncode }, + { key: 'multiline', definition: vMultiline } ]; export default function (app: App) diff --git a/zero.Backoffice.UI/app/directives/v-multiline.ts b/zero.Backoffice.UI/app/directives/v-multiline.ts new file mode 100644 index 00000000..a599cd8a --- /dev/null +++ b/zero.Backoffice.UI/app/directives/v-multiline.ts @@ -0,0 +1,11 @@ + +/** + * Converts new line chars to
+ */ +export default (el, binding) => +{ + if (binding.value !== binding.oldValue) + { + el.innerHTML = binding.value.split('\n').join('
'); + } +}; \ No newline at end of file