From d4d2f389a44a9ecc8b518bfc33f71eca1d379d72 Mon Sep 17 00:00:00 2001 From: Frank Dekker Date: Mon, 16 Jun 2025 21:28:21 +0200 Subject: [PATCH 01/13] Add json vue --- frontend/src/components/Json.vue | 33 +++++++++++++++++++++++++++ frontend/src/components/LogRecord.vue | 9 ++++---- 2 files changed, 38 insertions(+), 4 deletions(-) create mode 100644 frontend/src/components/Json.vue diff --git a/frontend/src/components/Json.vue b/frontend/src/components/Json.vue new file mode 100644 index 00000000..f93549c0 --- /dev/null +++ b/frontend/src/components/Json.vue @@ -0,0 +1,33 @@ + + + + + diff --git a/frontend/src/components/LogRecord.vue b/frontend/src/components/LogRecord.vue index 597512ea..4a2b3f4f 100644 --- a/frontend/src/components/LogRecord.vue +++ b/frontend/src/components/LogRecord.vue @@ -1,6 +1,7 @@ - - - - diff --git a/frontend/src/components/LogRecord.vue b/frontend/src/components/LogRecord.vue index 4a2b3f4f..92728a9b 100644 --- a/frontend/src/components/LogRecord.vue +++ b/frontend/src/components/LogRecord.vue @@ -1,5 +1,5 @@ + + + + diff --git a/frontend/src/components/json/JsonScalarValue.vue b/frontend/src/components/json/JsonScalarValue.vue new file mode 100644 index 00000000..bf1e3fd6 --- /dev/null +++ b/frontend/src/components/json/JsonScalarValue.vue @@ -0,0 +1,12 @@ + + + diff --git a/frontend/src/components/json/JsonValue.vue b/frontend/src/components/json/JsonValue.vue new file mode 100644 index 00000000..2965eede --- /dev/null +++ b/frontend/src/components/json/JsonValue.vue @@ -0,0 +1,26 @@ + + + + + diff --git a/frontend/src/services/Numbers.ts b/frontend/src/services/Numbers.ts index 98716a26..e028b509 100644 --- a/frontend/src/services/Numbers.ts +++ b/frontend/src/services/Numbers.ts @@ -9,4 +9,14 @@ export default class Numbers { } return number; } + + public static numeric(value: unknown): boolean { + if (typeof value === 'number') { + return true; + } + if (typeof value === 'string') { + return isNaN(Number(value)) === false; + } + return false; + } } diff --git a/frontend/src/services/Objects.ts b/frontend/src/services/Objects.ts new file mode 100644 index 00000000..5906b80f --- /dev/null +++ b/frontend/src/services/Objects.ts @@ -0,0 +1,5 @@ +export default class Objects { + public static isObject(value: unknown): value is {[key: string]: unknown} { + return value !== null && typeof value === 'object' && Array.isArray(value) === false; + } +} From dd229e8e38232a6b93ceea407e7fd6ea5ba74bbe Mon Sep 17 00:00:00 2001 From: Frank Dekker Date: Mon, 16 Jun 2025 23:49:47 +0200 Subject: [PATCH 03/13] Add json styling --- frontend/src/components/json/JsonScalarValue.vue | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/frontend/src/components/json/JsonScalarValue.vue b/frontend/src/components/json/JsonScalarValue.vue index bf1e3fd6..eb93bde3 100644 --- a/frontend/src/components/json/JsonScalarValue.vue +++ b/frontend/src/components/json/JsonScalarValue.vue @@ -5,8 +5,8 @@ const props = defineProps<{ value: unknown }>(); From b8593980c4f1d4dec885e157aa61257032d86346 Mon Sep 17 00:00:00 2001 From: Frank Dekker Date: Mon, 16 Jun 2025 23:52:49 +0200 Subject: [PATCH 04/13] Add json styling --- frontend/src/components/json/JsonValue.vue | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/frontend/src/components/json/JsonValue.vue b/frontend/src/components/json/JsonValue.vue index 2965eede..75652dde 100644 --- a/frontend/src/components/json/JsonValue.vue +++ b/frontend/src/components/json/JsonValue.vue @@ -11,7 +11,8 @@ const props = defineProps<{ value: unknown }>();
  • - + +
From aea00e170b58cd6e68b261b144334deb6c8ffd32 Mon Sep 17 00:00:00 2001 From: Frank Dekker Date: Tue, 17 Jun 2025 09:43:23 +0200 Subject: [PATCH 05/13] Add json styling --- frontend/src/components/LogRecord.vue | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/frontend/src/components/LogRecord.vue b/frontend/src/components/LogRecord.vue index 92728a9b..423bc279 100644 --- a/frontend/src/components/LogRecord.vue +++ b/frontend/src/components/LogRecord.vue @@ -1,10 +1,11 @@ diff --git a/frontend/src/components/json/JsonValue.vue b/frontend/src/components/json/JsonValue.vue index d5e597ab..d3bd3442 100644 --- a/frontend/src/components/json/JsonValue.vue +++ b/frontend/src/components/json/JsonValue.vue @@ -5,19 +5,24 @@ import JsonValue from '@/components/json/JsonValue.vue'; import Objects from '@/services/Objects.ts'; const props = defineProps<{ path: string, data: unknown }>(); +const emit = defineEmits(['click']); + +function click(value: string) { + emit('click', value); +}