From ef25a2e24b65ba1c273e695d46b7af406a0f8205 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonatan=20K=C5=82osko?= Date: Fri, 24 May 2024 23:00:12 +0700 Subject: [PATCH] Fix JS output export when data includes structs --- lib/livebook/live_markdown/export.ex | 2 +- test/livebook/live_markdown/export_test.exs | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/lib/livebook/live_markdown/export.ex b/lib/livebook/live_markdown/export.ex index 726a6fe86..72e9849e1 100644 --- a/lib/livebook/live_markdown/export.ex +++ b/lib/livebook/live_markdown/export.ex @@ -413,7 +413,7 @@ defmodule Livebook.LiveMarkdown.Export do end end - defp ensure_order(%{} = map) do + defp ensure_order(%{} = map) when not is_struct(map) do map |> Enum.sort() |> Enum.map(fn {key, value} -> {key, ensure_order(value)} end) diff --git a/test/livebook/live_markdown/export_test.exs b/test/livebook/live_markdown/export_test.exs index 85423fd3e..8a92ad184 100644 --- a/test/livebook/live_markdown/export_test.exs +++ b/test/livebook/live_markdown/export_test.exs @@ -903,7 +903,11 @@ defmodule Livebook.LiveMarkdown.ExportTest do ref: "1", pid: spawn_widget_with_data("1", %{ - spec: %{"height" => 50, "width" => 50}, + spec: %{ + "height" => 50, + "width" => 50, + "data" => %{"x" => 1, "y" => 1, "date" => ~D[2024-05-24]} + }, datasets: [] }), assets: %{archive_path: "", hash: "abcd", js_path: "main.js"} @@ -929,7 +933,7 @@ defmodule Livebook.LiveMarkdown.ExportTest do ```vega-lite - {"height":50,"width":50} + {"data":{"date":"2024-05-24","x":1,"y":1},"height":50,"width":50} ``` """