about summary refs log tree commit diff
path: root/Utilities/LibMatrix.E2eeTestKit/Pages/CSTJTest.razor
diff options
context:
space:
mode:
authorRory& <root@rory.gay>2024-07-15 13:52:47 +0200
committerRory& <root@rory.gay>2024-07-16 09:33:56 +0200
commitf761990225fd98160b52ef90f88b769c0f6b0dc6 (patch)
treedc6e670d1b28e4ea9399f8584cf24156935b76af /Utilities/LibMatrix.E2eeTestKit/Pages/CSTJTest.razor
parentImport unit test fixes from dev/home-changes (diff)
downloadLibMatrix-f761990225fd98160b52ef90f88b769c0f6b0dc6.tar.xz
Working json canonicalisation dev/e2ee{canonical-json}
Diffstat (limited to 'Utilities/LibMatrix.E2eeTestKit/Pages/CSTJTest.razor')
-rw-r--r--Utilities/LibMatrix.E2eeTestKit/Pages/CSTJTest.razor39
1 files changed, 39 insertions, 0 deletions
diff --git a/Utilities/LibMatrix.E2eeTestKit/Pages/CSTJTest.razor b/Utilities/LibMatrix.E2eeTestKit/Pages/CSTJTest.razor
new file mode 100644
index 0000000..0d01428
--- /dev/null
+++ b/Utilities/LibMatrix.E2eeTestKit/Pages/CSTJTest.razor
@@ -0,0 +1,39 @@
+@page "/CSTJTest"

+@using System.Text.Json

+@using System.Text.Json.Nodes

+@using LibMatrix.Extensions

+

+<PageTitle>Counter</PageTitle>

+

+<h3>Canonicalise JSON</h3>

+<hr/>

+

+<InputTextArea @bind-Value="@JsonInput" rows="@(JsonInput.Split('\n').Length + 1)"></InputTextArea>

+<br/>

+<pre>@JsonOutput</pre>

+

+@code {

+    private string _jsonInput = "";

+

+    private string JsonInput {

+        get => _jsonInput;

+        set {

+            _jsonInput = value;

+            try {

+                Console.WriteLine("Input updated");

+                var obj = JsonSerializer.Deserialize<dynamic>(value);

+                Console.WriteLine("Deserialised");

+                JsonOutput = CanonicalJsonSerializer.Serialize(obj);

+                Console.WriteLine("Serialised: " + JsonOutput ?? "null");

+            }

+            catch (Exception e) {

+                JsonOutput = e.ToString();

+            }

+

+            StateHasChanged();

+        }

+    }

+

+    private string? JsonOutput { get; set; }

+

+}
\ No newline at end of file