@marimo-team/islands 0.23.17-dev4 → 0.23.17-dev40

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. package/dist/{ConnectedDataExplorerComponent-f9vLjQiF.js → ConnectedDataExplorerComponent-BBZRR1-C.js} +16 -16
  2. package/dist/{ErrorBoundary-DhLqwSWA.js → ErrorBoundary-CptUP1_t.js} +3 -3
  3. package/dist/{ImageComparisonComponent-C3y7L3eJ.js → ImageComparisonComponent-fdY0LUuf.js} +38 -27
  4. package/dist/{any-language-editor-DifE-fl7.js → any-language-editor-BnIS9Mvg.js} +21 -21
  5. package/dist/assets/__vite-browser-external-DUz7vvG0.js +1 -0
  6. package/dist/assets/{worker-CDEKsBgX.js → worker-Cl1KJG2_.js} +2 -2
  7. package/dist/{button-BSm8IXRU.js → button-8aS1QcHr.js} +4 -2
  8. package/dist/{capabilities-C6OQ5YBO.js → capabilities-D23lgbH_.js} +1 -1
  9. package/dist/chat-ui-DH9M4L-6.js +8620 -0
  10. package/dist/{check-DP7U0H0G.js → check-D-BaEjEh.js} +1 -1
  11. package/dist/{common-BcQ4kHDP.js → common-DSVkRiDF.js} +652 -652
  12. package/dist/{copy-DNq8q3zw.js → copy-BkA3t7rJ.js} +2 -2
  13. package/dist/{defaultLocale-BpsHxBd7.js → defaultLocale-BsfI21d_.js} +26 -26
  14. package/dist/{diagram-PSM6KHXK-D4ftnaua.js → diagram-PSM6KHXK-D3GsWNcQ.js} +1 -1
  15. package/dist/{dist-BpeiYpG2.js → dist-3F1XDSYc.js} +2 -2
  16. package/dist/{dist-BP39XM8u.js → dist-B-upo54Y.js} +1 -1
  17. package/dist/{dist-BdqCKQ1O.js → dist-B1W12VzQ.js} +2 -2
  18. package/dist/{dist-3NCqaWjt.js → dist-B6au1PTB.js} +2 -2
  19. package/dist/{dist-BCX980mU.js → dist-BDwn6WIk.js} +2 -2
  20. package/dist/dist-BDzVdDo2.js +8 -0
  21. package/dist/dist-BH2Tq1S1.js +5 -0
  22. package/dist/dist-BIhBrzqg.js +5 -0
  23. package/dist/dist-BLCsvXTG.js +6 -0
  24. package/dist/dist-BNVtuFdd.js +5 -0
  25. package/dist/{dist-BOMbzyb3.js → dist-BNeJ8P-4.js} +3 -3
  26. package/dist/{dist-LpLXa9Lb.js → dist-BT96P4oR.js} +2 -2
  27. package/dist/{dist-CFSb_Frm.js → dist-BUzxp0Xf.js} +1 -1
  28. package/dist/{dist-JGehap7K.js → dist-Ba1WFESi.js} +5 -5
  29. package/dist/{dist-CRmSjkLP.js → dist-BrKNRKC8.js} +2 -2
  30. package/dist/{dist-BIEt-mlF.js → dist-BvvQUFUK.js} +1 -1
  31. package/dist/{dist-pqIwD8VD.js → dist-BxR-g1ig.js} +2 -2
  32. package/dist/{dist-DviUBLUp.js → dist-CBraAJlT.js} +4 -4
  33. package/dist/{dist-BwhXBwMd.js → dist-CDBV8n0I.js} +1 -1
  34. package/dist/dist-CEJ6Lowi.js +5 -0
  35. package/dist/{dist-CSlJrrAw.js → dist-CWYsUX_O.js} +1 -1
  36. package/dist/dist-CYoa69kj.js +5 -0
  37. package/dist/{dist-DwqBJ014.js → dist-CdKRSqjo.js} +2 -2
  38. package/dist/{dist-De-GlSAs.js → dist-Cds3J-EE.js} +15 -9
  39. package/dist/dist-CnZyXFq3.js +8 -0
  40. package/dist/dist-D-4HaJKc.js +8 -0
  41. package/dist/{dist-C18MUWTj.js → dist-D8SX5Qdg.js} +2 -2
  42. package/dist/{dist-D3bdsa1d.js → dist-DFQ91Mx1.js} +4 -4
  43. package/dist/{dist-BPF0gTRZ.js → dist-DGQmYLkh.js} +1 -1
  44. package/dist/dist-DIGyvbg3.js +5 -0
  45. package/dist/dist-DIhaoCL4.js +5 -0
  46. package/dist/{dist-C2_4pjuS.js → dist-DK0pFEmc.js} +1 -1
  47. package/dist/{dist-BTdrwBWP.js → dist-DQj6A7SE.js} +3 -3
  48. package/dist/{dist-DIlxLFXG.js → dist-DarwE0ZO.js} +11 -11
  49. package/dist/{dist-DaXJPX8F.js → dist-Ddb0VFS3.js} +2 -2
  50. package/dist/dist-DgQleHmb.js +8 -0
  51. package/dist/{dist-DZwp8lro.js → dist-DgkJegw4.js} +3 -3
  52. package/dist/{dist-BO5HRiTf.js → dist-DjQRRttD.js} +2 -2
  53. package/dist/dist-JaoLzZmt.js +5 -0
  54. package/dist/{dist-B2jmQKKx.js → dist-PQDZaPEo.js} +2 -2
  55. package/dist/{dist-4lVIWUT3.js → dist-Slyx4vXr.js} +1 -1
  56. package/dist/{dist-DgjbnqTg.js → dist-dJeh9ef4.js} +2 -2
  57. package/dist/dist-pEX0t8ZV.js +6 -0
  58. package/dist/{dist-w_gWE5Wf.js → dist-v-kAJfMq.js} +1 -1
  59. package/dist/{error-banner-B_GQfxxD.js → error-banner-dmkbm21G.js} +2 -2
  60. package/dist/{esm-DzZVaNH4.js → esm-D8vjxCyn.js} +3 -3
  61. package/dist/{esm-DKOv6P2M.js → esm-DEQU-LUO.js} +22 -22
  62. package/dist/{extends-w2_S44bV.js → extends-DDOVg_b8.js} +5 -5
  63. package/dist/{formats-Dwq1THhr.js → formats-xc-Msa0v.js} +3 -3
  64. package/dist/{ganttDiagram-JELNMOA3-CXXCN7LN.js → ganttDiagram-JELNMOA3-D9ywbC5g.js} +3 -3
  65. package/dist/{glide-data-editor-B9K6-MJe.js → glide-data-editor-CyTNN635.js} +9 -9
  66. package/dist/{html-to-image-CZ1kLKkq.js → html-to-image-DrEMf75G.js} +2219 -2209
  67. package/dist/{input-C5K4VBvB.js → input-B4ddy8Jy.js} +6 -6
  68. package/dist/{label-DjoYwqmj.js → label-CzHncDvS.js} +2 -2
  69. package/dist/{linear-H_vsH9ao.js → linear-BOGUO8Cd.js} +2 -2
  70. package/dist/{loader-DX-IDS7n.js → loader-C7SfUdOD.js} +10 -10
  71. package/dist/main.js +729 -733
  72. package/dist/{mermaid-hv6IckVw.js → mermaid-CpL8y5pw.js} +9 -9
  73. package/dist/{precisionRound-CnHPY_5v.js → precisionRound-Bq50n-bG.js} +1 -1
  74. package/dist/{process-output-bVfbcx5_.js → process-output-B9IHQuus.js} +3 -3
  75. package/dist/{quadrantDiagram-AYHSOK5B-BqDB9tUC.js → quadrantDiagram-AYHSOK5B-DD4QBdSv.js} +2 -2
  76. package/dist/{react-vega-BazDALhI.js → react-vega-Cg17A6rO.js} +8017 -4777
  77. package/dist/{reveal-component-9QGZq7uF.js → reveal-component-CUzZw4ZH.js} +19 -19
  78. package/dist/{spec-CQKL_D3i.js → spec-uMKNvMRZ.js} +4 -4
  79. package/dist/{strings-DIy9NAmg.js → strings-BUDhKc0s.js} +299 -299
  80. package/dist/style.css +1 -1
  81. package/dist/{swiper-component-CEdAYjb7.js → swiper-component-dl1H9WIW.js} +2 -2
  82. package/dist/{time-Bb4A7I6a.js → time-CQnohwNM.js} +2 -2
  83. package/dist/{toDate-CqhBWjvO.js → toDate-BiyuFdnT.js} +3 -3
  84. package/dist/{tooltip-f-qR0iUx.js → tooltip-CkCWlUOf.js} +3 -3
  85. package/dist/{types-DicH9Oi0.js → types-uENjXsiC.js} +1 -1
  86. package/dist/{useAsyncData-CYOQb1EW.js → useAsyncData-DqJLysjC.js} +1 -1
  87. package/dist/{useDateFormatter-Bt2qr_XS.js → useDateFormatter-BeN3fHMH.js} +2 -2
  88. package/dist/{useDeepCompareMemoize-CSHQeQEI.js → useDeepCompareMemoize-CvlmHAmy.js} +1 -1
  89. package/dist/{useIframeCapabilities-kA09ykNq.js → useIframeCapabilities-pLC-ceDP.js} +1 -1
  90. package/dist/{useLifecycle-CMJGqBaY.js → useLifecycle-D4N02q82.js} +3 -3
  91. package/dist/{useTheme-DYfby65G.js → useTheme-Dur2p3iC.js} +4 -3
  92. package/dist/{vega-component-C7nO5zcf.js → vega-component-Cft458Sr.js} +13 -13
  93. package/dist/{vega-embed-container-DAQAMjiO.js → vega-embed-container-S9gRu4TZ.js} +3 -3
  94. package/dist/{vega-loader.browser-DmpxCJqx.js → vega-loader.browser-CmLRI3wk.js} +104 -111
  95. package/dist/{xychartDiagram-PRI3JC2R-BSkNxYNw.js → xychartDiagram-PRI3JC2R-D9DgEtKn.js} +2 -2
  96. package/dist/{zod-BUcyXSdR.js → zod-yTHHzJiv.js} +37 -38
  97. package/package.json +6 -6
  98. package/src/__mocks__/requests.ts +5 -0
  99. package/src/components/app-config/user-config-form.tsx +26 -0
  100. package/src/components/chat/__tests__/chat-abort.test.ts +51 -0
  101. package/src/components/chat/chat-abort.ts +44 -0
  102. package/src/components/chat/chat-display.tsx +17 -0
  103. package/src/components/chat/chat-panel.tsx +85 -37
  104. package/src/components/chat/chat-utils.ts +1 -1
  105. package/src/components/data-table/charts/__tests__/schemas.test.ts +35 -0
  106. package/src/components/data-table/charts/schemas.ts +5 -2
  107. package/src/components/databases/icons/huggingface.svg +8 -0
  108. package/src/components/datasets/__tests__/icons.test.ts +21 -0
  109. package/src/components/datasets/icons.tsx +10 -0
  110. package/src/components/datasources/__tests__/components.test.tsx +29 -0
  111. package/src/components/datasources/components.tsx +8 -3
  112. package/src/components/editor/actions/export-dialog/__tests__/export-dialog.test.tsx +35 -0
  113. package/src/components/editor/actions/export-dialog/__tests__/state.test.ts +61 -0
  114. package/src/components/editor/actions/export-dialog/export-command.ts +4 -9
  115. package/src/components/editor/actions/export-dialog/export-dialog.tsx +27 -23
  116. package/src/components/editor/actions/export-dialog/format-notice.tsx +28 -0
  117. package/src/components/editor/actions/export-dialog/state.ts +23 -5
  118. package/src/components/editor/actions/export-dialog/use-export-dialog.ts +7 -15
  119. package/src/components/editor/actions/useConfigActions.tsx +24 -0
  120. package/src/components/editor/ai/add-cell-with-ai.tsx +2 -2
  121. package/src/components/editor/ai/ai-completion-editor.tsx +2 -2
  122. package/src/components/editor/chrome/panels/outline/__tests__/useActiveOutline.test.ts +26 -0
  123. package/src/components/editor/code/__tests__/readonly-python-code.test.tsx +114 -2
  124. package/src/components/editor/connections/storage/__tests__/__snapshots__/as-code.test.ts.snap +14 -0
  125. package/src/components/editor/connections/storage/__tests__/as-code.test.ts +20 -0
  126. package/src/components/editor/connections/storage/add-storage-form.tsx +10 -0
  127. package/src/components/editor/connections/storage/as-code.ts +19 -1
  128. package/src/components/editor/connections/storage/schemas.ts +19 -0
  129. package/src/components/storage/__tests__/storage-snippets.test.ts +88 -0
  130. package/src/components/storage/components.tsx +2 -0
  131. package/src/components/storage/storage-snippets.ts +58 -0
  132. package/src/core/__tests__/mode.test.ts +85 -0
  133. package/src/core/ai/constants.ts +7 -0
  134. package/src/core/ai/staged-cells.ts +3 -0
  135. package/src/core/codemirror/__tests__/setup.test.ts +1 -1
  136. package/src/core/codemirror/cm.ts +2 -2
  137. package/src/core/codemirror/code-lens/__tests__/extension.test.ts +4 -5
  138. package/src/core/codemirror/code-lens/extension.ts +3 -3
  139. package/src/core/codemirror/find-replace/search-highlight.ts +8 -3
  140. package/src/core/codemirror/language/languages/sql/__tests__/renderers.test.tsx +44 -0
  141. package/src/core/codemirror/language/languages/sql/renderers.tsx +3 -3
  142. package/src/core/codemirror/theme/__tests__/light.test.ts +59 -123
  143. package/src/core/codemirror/theme/dark.ts +6 -5
  144. package/src/core/codemirror/theme/light.ts +6 -4
  145. package/src/core/config/__tests__/config-schema.test.ts +2 -0
  146. package/src/core/config/config-schema.ts +1 -0
  147. package/src/core/config/feature-flag.tsx +0 -2
  148. package/src/core/dom/outline.ts +25 -2
  149. package/src/core/hotkeys/hotkeys.ts +2 -0
  150. package/src/core/mode.ts +11 -9
  151. package/src/core/network/__tests__/api.test.ts +132 -17
  152. package/src/core/network/__tests__/export-filename.test.ts +43 -0
  153. package/src/core/network/__tests__/requests-lazy.test.ts +1 -0
  154. package/src/core/network/api.ts +47 -12
  155. package/src/core/network/export-filename.ts +37 -0
  156. package/src/core/network/markdown-export.ts +19 -0
  157. package/src/core/network/requests-network.ts +29 -5
  158. package/src/core/network/types.ts +3 -0
  159. package/src/core/storage/types.ts +1 -0
  160. package/src/css/app/codemirror.css +11 -7
  161. package/src/css/globals.css +8 -0
  162. package/src/plugins/impl/DataEditorPlugin.tsx +2 -9
  163. package/src/plugins/impl/__tests__/DataEditorPlugin.test.ts +18 -0
  164. package/src/plugins/impl/chat/chat-ui.tsx +51 -3
  165. package/src/plugins/impl/data-frames/__tests__/schema.test.ts +30 -0
  166. package/src/plugins/impl/data-frames/schema.ts +4 -1
  167. package/src/plugins/impl/image-comparison/ImageComparisonComponent.tsx +20 -1
  168. package/src/plugins/impl/image-comparison/__tests__/ImageComparisonComponent.test.tsx +58 -0
  169. package/src/stories/theme.stories.tsx +71 -1
  170. package/dist/assets/__vite-browser-external-DltVXDv7.js +0 -1
  171. package/dist/chat-ui-DsZJj75A.js +0 -8369
  172. package/dist/dist-5o9uz19x.js +0 -5
  173. package/dist/dist-BpDH0DEP.js +0 -5
  174. package/dist/dist-BpXhbQXO.js +0 -8
  175. package/dist/dist-ByadAk_L.js +0 -5
  176. package/dist/dist-CK0g7JvP.js +0 -8
  177. package/dist/dist-CfzCtiq2.js +0 -5
  178. package/dist/dist-D8JtVFrW.js +0 -8
  179. package/dist/dist-DK2Oocpu.js +0 -6
  180. package/dist/dist-DnSu977r.js +0 -5
  181. package/dist/dist-UmxJm6sW.js +0 -8
  182. package/dist/dist-aYSBQSyM.js +0 -5
  183. package/dist/dist-kkZ1Ztlh.js +0 -6
  184. package/dist/dist-ngPczwNi.js +0 -5
  185. package/dist/dist-wQRyxyTV.js +0 -5
@@ -3,18 +3,18 @@ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { en
3
3
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
4
4
  var _a;
5
5
  import { s as __toESM } from "./chunk-BNovOVIE.js";
6
- import { f as composeRefs, g as Logger, h as cn, m as Events, p as useComposedRefs, u as createSlot } from "./button-BSm8IXRU.js";
6
+ import { f as composeRefs, g as Logger, h as cn, m as Events, p as useComposedRefs, u as createSlot } from "./button-8aS1QcHr.js";
7
7
  import { t as require_react } from "./react-DA-nE2FX.js";
8
8
  import { t as require_compiler_runtime } from "./compiler-runtime-CEbnTgxf.js";
9
- import { a as createPopperScope, i as Root2$1, n as Arrow, r as Content, t as Anchor, u as createLucideIcon } from "./dist-DIlxLFXG.js";
10
- import { t as Check } from "./check-DP7U0H0G.js";
11
- import { E as $18f2051aff69b9bf$export$43bb16f9c6d9e3f7, F as createCollection, I as X, L as ChevronUp, P as useDirection, R as ChevronDown, T as $488c6ddbf4ef74c2$export$cc77c4ff7e8673c5, _ as menuControlVariants, b as menuSeparatorVariants, g as menuControlCheckVariants, h as menuContentCommon, k as $b5e257d569688ac6$export$619500959fc48b26, m as MenuShortcut, v as menuItemVariants, w as $a916eb452884faea$export$b7a616150fdb9f44, x as menuSubTriggerVariants, y as menuLabelVariants } from "./strings-DIy9NAmg.js";
9
+ import { a as createPopperScope, i as Root2$1, n as Arrow, r as Content, t as Anchor, u as createLucideIcon } from "./dist-DarwE0ZO.js";
10
+ import { t as Check } from "./check-D-BaEjEh.js";
11
+ import { E as $18f2051aff69b9bf$export$43bb16f9c6d9e3f7, F as createCollection, I as X, L as ChevronUp, P as useDirection, R as ChevronDown, T as $488c6ddbf4ef74c2$export$cc77c4ff7e8673c5, _ as menuControlVariants, b as menuSeparatorVariants, g as menuControlCheckVariants, h as menuContentCommon, k as $b5e257d569688ac6$export$619500959fc48b26, m as MenuShortcut, v as menuItemVariants, w as $a916eb452884faea$export$b7a616150fdb9f44, x as menuSubTriggerVariants, y as menuLabelVariants } from "./strings-BUDhKc0s.js";
12
12
  import { n as clsx_default } from "./clsx-CIWA5tNO.js";
13
13
  import { t as require_react_dom } from "./react-dom-BTJzcVJ9.js";
14
14
  import { t as require_jsx_runtime } from "./jsx-runtime-DebpN0FN.js";
15
- import { Q as withSmartCollisionBoundary, Y as MAX_HEIGHT_OFFSET, Z as withFullScreenAsRoot, _t as createContextScope, at as Portal, ct as DismissableLayer, dt as useId, et as StyleNamespace, ft as Presence, ht as composeEventHandlers, it as useFocusGuards, nt as Combination_default, ot as FocusScope, pt as useControllableState, tt as hideOthers, ut as useCallbackRef, vt as Primitive, yt as dispatchDiscreteCustomEvent } from "./zod-BUcyXSdR.js";
15
+ import { $ as StyleNamespace, J as MAX_HEIGHT_OFFSET, X as withFullScreenAsRoot, Z as withSmartCollisionBoundary, _t as Primitive, at as FocusScope, dt as Presence, et as hideOthers, ft as useControllableState, gt as createContextScope, it as Portal, lt as useCallbackRef, mt as composeEventHandlers, rt as useFocusGuards, st as DismissableLayer, tt as Combination_default, ut as useId, vt as dispatchDiscreteCustomEvent } from "./zod-yTHHzJiv.js";
16
16
  import { t as debounce_default } from "./debounce-BOD3DbfP.js";
17
- import { A as useEvent_default } from "./useTheme-DYfby65G.js";
17
+ import { A as useEvent_default } from "./useTheme-Dur2p3iC.js";
18
18
  import { t as memoizeLastValue } from "./once-B60G2fuJ.js";
19
19
  var ChevronRight = createLucideIcon("chevron-right", [["path", {
20
20
  d: "m9 18 6-6-6-6",
@@ -1,9 +1,9 @@
1
1
  import { s as __toESM } from "./chunk-BNovOVIE.js";
2
- import { h as cn, r as cva } from "./button-BSm8IXRU.js";
2
+ import { h as cn, r as cva } from "./button-8aS1QcHr.js";
3
3
  import { t as require_react } from "./react-DA-nE2FX.js";
4
4
  import { t as require_compiler_runtime } from "./compiler-runtime-CEbnTgxf.js";
5
5
  import { t as require_jsx_runtime } from "./jsx-runtime-DebpN0FN.js";
6
- import { vt as Primitive } from "./zod-BUcyXSdR.js";
6
+ import { _t as Primitive } from "./zod-yTHHzJiv.js";
7
7
  var import_react = /* @__PURE__ */ __toESM(require_react(), 1), import_jsx_runtime = /* @__PURE__ */ __toESM(require_jsx_runtime(), 1), NAME = "Label", Label$1 = import_react.forwardRef((e, c) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Primitive.label, {
8
8
  ...e,
9
9
  ref: c,
@@ -1,5 +1,5 @@
1
- import { a as tickStep, c as ascending, i as tickIncrement, n as precisionPrefix_default, o as ticks, r as precisionFixed_default, s as bisector, t as precisionRound_default } from "./precisionRound-CnHPY_5v.js";
2
- import { i as formatSpecifier, n as formatPrefix, t as format } from "./defaultLocale-BpsHxBd7.js";
1
+ import { a as tickStep, c as ascending, i as tickIncrement, n as precisionPrefix_default, o as ticks, r as precisionFixed_default, s as bisector, t as precisionRound_default } from "./precisionRound-Bq50n-bG.js";
2
+ import { i as formatSpecifier, n as formatPrefix, t as format } from "./defaultLocale-BsfI21d_.js";
3
3
  import { n as initRange } from "./init-DNBbYZd_.js";
4
4
  import { d as value_default, p as number_default, u as round_default } from "./timer-BpI_FKSA.js";
5
5
  function number$1(i) {
@@ -2,25 +2,25 @@ var __defProp = Object.defineProperty;
2
2
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
3
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
4
4
  var _a, _b, _c, _d, _e;
5
- import { g as Logger } from "./button-BSm8IXRU.js";
5
+ import { g as Logger } from "./button-8aS1QcHr.js";
6
6
  import { t as Objects } from "./objects-De59twF-.js";
7
- import { Rt as isObject, a as loader, c as typeParsers$1, o as read$1, rt as isString, zt as isArray } from "./vega-loader.browser-DmpxCJqx.js";
7
+ import { Dt as isObject, K as isString, Ot as isArray, a as loader, c as typeParsers$1, o as read$1 } from "./vega-loader.browser-CmLRI3wk.js";
8
8
  var pkg = { version: "1.1.0" };
9
- function formatValue(m2, U, G, K) {
10
- if (isArray(m2)) return `[${m2.map((m3) => U(isString(m3) ? m3 : stringify(m3, G))).join(", ")}]`;
9
+ function formatValue(m2, U, q, J) {
10
+ if (isArray(m2)) return `[${m2.map((m3) => U(isString(m3) ? m3 : stringify(m3, q))).join(", ")}]`;
11
11
  if (isObject(m2)) {
12
- let q = "", { title: J, image: Y, ...X } = m2;
13
- J && (q += `<h2>${U(J)}</h2>`), Y && (q += `<img src="${new URL(U(Y), K || location.href).href}">`);
12
+ let G = "", { title: K, image: Y, ...X } = m2;
13
+ K && (G += `<h2>${U(K)}</h2>`), Y && (G += `<img src="${new URL(U(Y), J || location.href).href}">`);
14
14
  let Z = Object.keys(X);
15
15
  if (Z.length > 0) {
16
- q += "<table>";
16
+ G += "<table>";
17
17
  for (let m3 of Z) {
18
18
  let K2 = X[m3];
19
- K2 !== void 0 && (isObject(K2) && (K2 = stringify(K2, G)), q += `<tr><td class="key">${U(m3)}</td><td class="value">${U(K2)}</td></tr>`);
19
+ K2 !== void 0 && (isObject(K2) && (K2 = stringify(K2, q)), G += `<tr><td class="key">${U(m3)}</td><td class="value">${U(K2)}</td></tr>`);
20
20
  }
21
- q += "</table>";
21
+ G += "</table>";
22
22
  }
23
- return q || "{}";
23
+ return G || "{}";
24
24
  }
25
25
  return U(m2);
26
26
  }