@marimo-team/islands 0.25.1-dev4 → 0.25.1-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.
- package/dist/{ConnectedDataExplorerComponent-KVhjDMSe.js → ConnectedDataExplorerComponent-CwMXfDQR.js} +3 -3
- package/dist/{ErrorBoundary-pV36lYEK.js → ErrorBoundary-CAJO-M56.js} +1 -1
- package/dist/{ImageComparisonComponent-Dlm5aWnH.js → ImageComparisonComponent-Cpfz30OZ.js} +51 -52
- package/dist/{abnfDiagram-VCTEODGH-CpN0FRda.js → abnfDiagram-VCTEODGH-AFhOQTt8.js} +3 -3
- package/dist/{architectureDiagram-5GKGNRK7-DDyj5SRB.js → architectureDiagram-5GKGNRK7-BngksAAQ.js} +5 -5
- package/dist/{blockDiagram-I7D4REHJ-BbXEXJRu.js → blockDiagram-I7D4REHJ-CvBmppdy.js} +9 -9
- package/dist/{c4Diagram-7LVT6UL2-DcLsbQmR.js → c4Diagram-7LVT6UL2-EceL4_jH.js} +7 -7
- package/dist/{cells-B5-y5EY3.js → cells-Cv93oav_.js} +3 -3
- package/dist/{channel-B5XnTarr.js → channel-z7HZXHwv.js} +1 -1
- package/dist/{chat-ui-HJZsTl7o.js → chat-ui-DLSF8a04.js} +4 -4
- package/dist/{chunk-4HAMMTFA-D2qv8E0X.js → chunk-4HAMMTFA-BPTTOOC5.js} +5 -5
- package/dist/{chunk-75Z2AOVW-5_HsvXwr.js → chunk-75Z2AOVW-C4AOleKf.js} +1 -1
- package/dist/{chunk-DU6HZSFF-BUgAHvnM.js → chunk-DU6HZSFF-1TwWR6gh.js} +1 -1
- package/dist/{chunk-F27PBJKO-DHmYWZXr.js → chunk-F27PBJKO-DMI1PBe4.js} +1 -1
- package/dist/{chunk-GMAD6QVW-Czynz8aA.js → chunk-GMAD6QVW-vStrMz2P.js} +3 -3
- package/dist/{chunk-GVQU2GXP-yQEdulRS.js → chunk-GVQU2GXP-2HwWgs4u.js} +2 -2
- package/dist/{chunk-IMKFNOWR-BfwTebD0.js → chunk-IMKFNOWR-UOVZuZVn.js} +5 -5
- package/dist/{chunk-L3NEJ4N5-DwRWnDDK.js → chunk-L3NEJ4N5-RhC7i0I2.js} +5 -5
- package/dist/{chunk-OSK3NFVY-BBKU_Ign.js → chunk-OSK3NFVY-CZV09N-U.js} +6 -6
- package/dist/{chunk-P2QGCYS3-C0iGU29N.js → chunk-P2QGCYS3-0TAWai9C.js} +1 -1
- package/dist/{chunk-POPQ4Y6H-BCbS3Ozc.js → chunk-POPQ4Y6H-Cc3_56GX.js} +1 -1
- package/dist/{chunk-PWAF6VOD-CTFCL0jI.js → chunk-PWAF6VOD-lNxB9k8z.js} +1 -1
- package/dist/{chunk-SHT3W25Y-BspJEJ5H.js → chunk-SHT3W25Y-CrEPyWy1.js} +7 -7
- package/dist/{chunk-SVP7TREG-DX3rFNTe.js → chunk-SVP7TREG-uIyyySp6.js} +2 -2
- package/dist/{chunk-TICWLB2K-fVF7Uujg.js → chunk-TICWLB2K-DdXM3eg6.js} +5 -5
- package/dist/classDiagram-ZZMXUADV-BiATbBE4.js +30 -0
- package/dist/classDiagram-v2-VYDZK3BY-JnH97GYw.js +30 -0
- package/dist/{code-visibility-CgZS2a3W.js → code-visibility-XU9RAJNV.js} +2 -2
- package/dist/{common-DnMDPPaW.js → common-C0fbrgB8.js} +13 -13
- package/dist/{cynefinDiagram-5FMLGOSQ-CFQrqzSX.js → cynefinDiagram-5FMLGOSQ-zknaAsGy.js} +3 -3
- package/dist/{dagre-GXQ25YYZ-xHNAUTyG.js → dagre-GXQ25YYZ-BhMOoMGJ.js} +10 -10
- package/dist/{data-grid-overlay-editor-hHYgD_Sm.js → data-grid-overlay-editor-BnhbJgoq.js} +1 -1
- package/dist/{diagram-S7CK7UJ4-Bt1rPbAx.js → diagram-S7CK7UJ4-V5-Z-EDY.js} +4 -4
- package/dist/{diagram-UQ7AKVKN-D1sq5FoZ.js → diagram-UQ7AKVKN-qw8AjDal.js} +3 -3
- package/dist/{diagram-VSXAHHWV-BKpmG23x.js → diagram-VSXAHHWV-CR7BJygZ.js} +2 -2
- package/dist/{diagram-VX7I27RA-BMwGFVD6.js → diagram-VX7I27RA-DfuqFb1E.js} +5 -5
- package/dist/{diagram-Z3DM3KII--KLDR9Pl.js → diagram-Z3DM3KII-DpWwlYZB.js} +3 -3
- package/dist/{dist-BaHjhkpZ.js → dist-CcyKTBTF.js} +1 -1
- package/dist/{ebnfDiagram-PWID7BFC-WnG4cvSQ.js → ebnfDiagram-PWID7BFC-C20OnNMZ.js} +3 -3
- package/dist/{erDiagram-RLTQ6QDP-DhzKiYHc.js → erDiagram-RLTQ6QDP-DBXLWO9v.js} +12 -12
- package/dist/{error-entries-Bkbpx0T0.js → error-entries-DLl0XqoW.js} +1 -1
- package/dist/{feedback-button-CvKssdG_.js → feedback-button-B0QSkbSp.js} +4 -4
- package/dist/flowDiagram-HODETNUW-DL52nMkt.js +16 -0
- package/dist/{formats-C8rLgZT9.js → formats-Cl_67ghI.js} +1 -1
- package/dist/{ganttDiagram-EL5Y4UJY-DbzEBLbl.js → ganttDiagram-EL5Y4UJY-cRRaDt88.js} +2 -2
- package/dist/{gitGraphDiagram-WWUBYQGX-BMf0iKi1.js → gitGraphDiagram-WWUBYQGX-Pox5k9-Y.js} +2 -2
- package/dist/{glide-data-editor-Ohetlgag.js → glide-data-editor-ymIQdwrb.js} +3 -3
- package/dist/{globals-CPNNcOJI.js → globals-B0S3-e_D.js} +1 -1
- package/dist/{html-to-image-BAgJOlSW.js → html-to-image-CGVgroef.js} +2 -2
- package/dist/{infoDiagram-27XIBGKW-BagtCX_5.js → infoDiagram-27XIBGKW-ntpxMfrq.js} +2 -2
- package/dist/{ishikawaDiagram-5VMMS53U-DByDehYy.js → ishikawaDiagram-5VMMS53U-BllIlHE5.js} +3 -3
- package/dist/{journeyDiagram-3NMN7TZE-D2LcKDUO.js → journeyDiagram-3NMN7TZE-EPJDPlt0.js} +2 -2
- package/dist/{kanban-definition-UXKFOSKX-BxwkbBI_.js → kanban-definition-UXKFOSKX-GYtNMjtS.js} +9 -9
- package/dist/{katex-C6D4cX_N.js → katex-BNCmKUol.js} +983 -1120
- package/dist/{loader-D2W4oM-3.js → loader-DEZSzvma.js} +253 -248
- package/dist/main.js +72 -69
- package/dist/{mermaid-DPNuhemn.js → mermaid-Dnzoxjt1.js} +49 -49
- package/dist/{mhchem-DWCF06w9.js → mhchem-BEc7A1or.js} +1 -1
- package/dist/{mindmap-definition-YA3MSWOX-Cgvojw3y.js → mindmap-definition-YA3MSWOX-Cth76xgH.js} +11 -11
- package/dist/{number-overlay-editor-CHWg5gGO.js → number-overlay-editor-DB3HJDI1.js} +1 -1
- package/dist/{pegDiagram-XKGWAZYB-DahHhYyN.js → pegDiagram-XKGWAZYB-Cu4uOXii.js} +3 -3
- package/dist/{pieDiagram-E7YTZNPT-CCtX0oCK.js → pieDiagram-E7YTZNPT-Bh3eDa9s.js} +3 -3
- package/dist/{process-output-zDX4jbhd.js → process-output-CGfg-JmZ.js} +2 -2
- package/dist/{quadrantDiagram-AXDQQJYC-DftINo6g.js → quadrantDiagram-AXDQQJYC--kqzFC3w.js} +1 -1
- package/dist/{railroadDiagram-O6MQD6OU-Du5NsPUb.js → railroadDiagram-O6MQD6OU-DG-M6Rnc.js} +3 -3
- package/dist/{react-vega-5AcMW8gG.js → react-vega-ewj7q_U5.js} +1 -1
- package/dist/{requirementDiagram-BXWQKSXE-0pmmxL6_.js → requirementDiagram-BXWQKSXE-DCwsThh0.js} +11 -11
- package/dist/{reveal-component-BujcZI2B.js → reveal-component-CfTzIkA2.js} +3 -3
- package/dist/{sankeyDiagram-P5KCCOFB-CDKR5TJH.js → sankeyDiagram-P5KCCOFB-BdzhT0BM.js} +1 -1
- package/dist/{sequenceDiagram-WJ2MYXX4-DB-ChWwU.js → sequenceDiagram-WJ2MYXX4-CbXB1_PU.js} +4 -4
- package/dist/{stateDiagram-D77RDMKH-orN6AwMx.js → stateDiagram-D77RDMKH-A-Zf3Sb2.js} +13 -13
- package/dist/stateDiagram-v2-MP3YSRHH-D9YMnUGx.js +30 -0
- package/dist/style.css +1 -1
- package/dist/{swimlanes-42K2YHIH-BkSDcqDT.js → swimlanes-42K2YHIH-B_pMf0J4.js} +10 -10
- package/dist/swimlanesDiagram-VR7AAH4N-Ctgy-yGP.js +30 -0
- package/dist/{timeline-definition-24CTP7MA-BuqJUIRZ.js → timeline-definition-24CTP7MA-DTXFjTTM.js} +3 -3
- package/dist/{vega-component-CNf5gcrm.js → vega-component-tFOzgarw.js} +4 -4
- package/dist/{vega-embed-container-CbnTccZi.js → vega-embed-container-sSR5hAsy.js} +2 -2
- package/dist/{vega-loader.browser-D95WfUcj.js → vega-loader.browser-DNST6uVf.js} +2 -2
- package/dist/{vennDiagram-4TSXK5OY-CTUlJ2PK.js → vennDiagram-4TSXK5OY-BPHjZo0R.js} +3 -3
- package/dist/{wardleyDiagram-VM6X3IG4-3evLUb0M.js → wardleyDiagram-VM6X3IG4-6fTLYBuD.js} +3 -3
- package/dist/{xychartDiagram-S5SC5T6Z-DL2E3K8-.js → xychartDiagram-S5SC5T6Z-BYjwjrzE.js} +5 -5
- package/package.json +1 -2
- package/src/__mocks__/common.ts +3 -3
- package/src/__tests__/CellStatus.test.tsx +1 -1
- package/src/__tests__/setup.ts +7 -7
- package/src/components/app-config/ai-config.tsx +2 -0
- package/src/components/app-config/optional-features.tsx +1 -1
- package/src/components/chat/chat-panel.tsx +19 -8
- package/src/components/data-table/charts/__tests__/chart-panel.test.tsx +286 -0
- package/src/components/data-table/charts/charts.tsx +26 -13
- package/src/components/data-table/column-summary/chart-spec-model.tsx +4 -4
- package/src/components/dependency-graph/elements.ts +2 -2
- package/src/components/editor/__tests__/package-alert.test.tsx +140 -0
- package/src/components/editor/actions/__tests__/pair-with-agent.test.tsx +107 -0
- package/src/components/editor/actions/pair-with-agent.tsx +119 -0
- package/src/components/editor/actions/useNotebookActions.tsx +2 -1
- package/src/components/editor/ai/add-cell-with-ai.tsx +2 -0
- package/src/components/editor/ai/staged-cell-submission.ts +2 -2
- package/src/components/editor/ai/transport/chat-transport.tsx +1 -1
- package/src/components/editor/chrome/components/contribute-snippet-button.tsx +6 -1
- package/src/components/editor/connections/database/as-code.ts +44 -44
- package/src/components/editor/connections/storage/as-code.ts +3 -3
- package/src/components/editor/file-tree/requesting-tree.tsx +16 -13
- package/src/components/editor/navigation/clipboard.ts +2 -2
- package/src/components/editor/notebook-cell.tsx +2 -2
- package/src/components/editor/output/MarimoTracebackOutput.tsx +1 -1
- package/src/components/editor/output/VideoOutput.tsx +1 -1
- package/src/components/editor/output/ansi-reduce.ts +21 -17
- package/src/components/editor/output/console/ConsoleOutput.tsx +3 -3
- package/src/components/editor/output/console/__tests__/ConsoleOutput.test.tsx +59 -0
- package/src/components/editor/output/console/text-rendering.tsx +3 -1
- package/src/components/editor/package-alert.tsx +20 -7
- package/src/components/home/components.tsx +1 -0
- package/src/components/pages/run-page.tsx +1 -0
- package/src/components/slides/__tests__/minimap-actions.test.tsx +7 -7
- package/src/components/slides/__tests__/minimap.test.ts +12 -12
- package/src/components/slides/__tests__/slide-scroll-hint.test.tsx +8 -8
- package/src/components/static-html/share-modal.tsx +2 -1
- package/src/components/static-html/static-banner.tsx +2 -2
- package/src/components/ui/links.tsx +6 -1
- package/src/components/ui/typography.tsx +16 -8
- package/src/core/ai/context/__tests__/registry.test.ts +31 -28
- package/src/core/ai/context/providers/cell-output.ts +8 -8
- package/src/core/ai/context/providers/datasource.ts +10 -7
- package/src/core/ai/context/providers/error.ts +7 -7
- package/src/core/ai/context/providers/file.ts +8 -8
- package/src/core/ai/context/providers/tables.ts +7 -7
- package/src/core/ai/context/providers/variable.ts +7 -7
- package/src/core/ai/context/registry.ts +18 -18
- package/src/core/ai/ids/ids.ts +5 -5
- package/src/core/ai/model-registry.ts +12 -9
- package/src/core/ai/staged-cells.ts +6 -6
- package/src/core/ai/tools/base.ts +6 -6
- package/src/core/ai/tools/edit-notebook-tool.ts +6 -6
- package/src/core/ai/tools/registry.ts +4 -4
- package/src/core/ai/tools/run-cells-tool.ts +7 -7
- package/src/core/ai/tools/sample-tool.ts +6 -6
- package/src/core/cells/__tests__/cells.test.ts +27 -0
- package/src/core/cells/cells.ts +2 -1
- package/src/core/codemirror/cells/debugger-decorations.ts +13 -7
- package/src/core/codemirror/cells/line-timing-decorations.ts +9 -9
- package/src/core/codemirror/cells/traceback-decorations.ts +7 -4
- package/src/core/codemirror/code-lens/extension.ts +13 -13
- package/src/core/codemirror/copilot/__tests__/language-server.test.ts +6 -6
- package/src/core/codemirror/copilot/__tests__/transport.test.ts +12 -12
- package/src/core/codemirror/copilot/language-server.ts +13 -13
- package/src/core/codemirror/copilot/transport.ts +1 -1
- package/src/core/codemirror/find-replace/search-highlight.ts +5 -5
- package/src/core/codemirror/go-to-definition/underline.ts +3 -3
- package/src/core/codemirror/keymaps/vim.ts +3 -3
- package/src/core/codemirror/language/languages/markdown.ts +8 -8
- package/src/core/codemirror/language/languages/python.ts +7 -7
- package/src/core/codemirror/language/languages/sql/completion-builder.ts +5 -5
- package/src/core/codemirror/language/languages/sql/completion-store.ts +4 -4
- package/src/core/codemirror/language/languages/sql/sql.ts +21 -21
- package/src/core/codemirror/lsp/__tests__/transports.test.ts +10 -10
- package/src/core/codemirror/lsp/federated-lsp.ts +29 -27
- package/src/core/codemirror/lsp/notebook-lsp.ts +21 -21
- package/src/core/codemirror/misc/__tests__/dnd.test.ts +10 -10
- package/src/core/codemirror/misc/__tests__/paste.test.ts +7 -4
- package/src/core/codemirror/reactive-references/extension.ts +3 -3
- package/src/core/codemirror/rtc/loro/awareness.ts +12 -12
- package/src/core/codemirror/rtc/loro/sync.ts +5 -5
- package/src/core/codemirror/vim/cursor-visibility.ts +3 -3
- package/src/core/dom/ui-element.ts +5 -5
- package/src/core/dom/uiregistry.ts +10 -10
- package/src/core/hotkeys/hotkeys.ts +9 -9
- package/src/core/islands/__tests__/bridge.test.ts +4 -4
- package/src/core/islands/__tests__/test-utils.tsx +4 -4
- package/src/core/islands/bridge.ts +85 -82
- package/src/core/islands/components/web-components.tsx +7 -7
- package/src/core/islands/worker/__tests__/controller.test.ts +1 -1
- package/src/core/islands/worker/controller.ts +6 -3
- package/src/core/islands/worker-factory.ts +2 -2
- package/src/core/kernel/RuntimeState.ts +4 -4
- package/src/core/lsp/__tests__/transport.test.ts +19 -19
- package/src/core/lsp/transport.ts +5 -5
- package/src/core/network/CachingRequestRegistry.ts +2 -2
- package/src/core/network/DeferredRequestRegistry.ts +4 -4
- package/src/core/runtime/runtime.ts +25 -20
- package/src/core/static/virtual-file-tracker.ts +5 -5
- package/src/core/wasm/__tests__/bridge.test.ts +2 -2
- package/src/core/wasm/bridge.ts +130 -126
- package/src/core/wasm/router.ts +5 -5
- package/src/core/wasm/store.ts +4 -4
- package/src/core/wasm/worker/bootstrap.ts +8 -5
- package/src/core/wasm/worker/message-buffer.ts +3 -3
- package/src/core/websocket/transports/__tests__/ws.test.ts +8 -8
- package/src/core/websocket/transports/basic.ts +15 -8
- package/src/core/websocket/transports/sse.ts +7 -7
- package/src/core/websocket/transports/transport.ts +3 -3
- package/src/core/websocket/transports/ws.ts +9 -7
- package/src/css/globals.css +18 -21
- package/src/css/katex.min.css +260 -241
- package/src/hooks/__tests__/useOverflowDetection.test.tsx +5 -5
- package/src/hooks/__tests__/useResizeObserver.test.tsx +12 -12
- package/src/plugins/core/registerReactComponent.tsx +5 -5
- package/src/plugins/core/sidebar-element.tsx +2 -2
- package/src/plugins/impl/ButtonPlugin.tsx +3 -3
- package/src/plugins/impl/CheckboxPlugin.tsx +3 -3
- package/src/plugins/impl/CodeEditorPlugin.tsx +3 -3
- package/src/plugins/impl/DatePickerPlugin.tsx +3 -3
- package/src/plugins/impl/DateRangePlugin.tsx +3 -3
- package/src/plugins/impl/DateTimePickerPlugin.tsx +3 -3
- package/src/plugins/impl/DictPlugin.tsx +3 -3
- package/src/plugins/impl/DropdownPlugin.tsx +3 -3
- package/src/plugins/impl/FileUploadPlugin.tsx +3 -3
- package/src/plugins/impl/MatrixPlugin.tsx +4 -4
- package/src/plugins/impl/MicrophonePlugin.tsx +3 -3
- package/src/plugins/impl/MultiselectPlugin.tsx +3 -3
- package/src/plugins/impl/NumberPlugin.tsx +3 -3
- package/src/plugins/impl/RadioPlugin.tsx +9 -5
- package/src/plugins/impl/RangeSliderPlugin.tsx +3 -3
- package/src/plugins/impl/RefreshPlugin.tsx +3 -3
- package/src/plugins/impl/SliderPlugin.tsx +3 -3
- package/src/plugins/impl/SwitchPlugin.tsx +3 -3
- package/src/plugins/impl/TabsPlugin.tsx +3 -3
- package/src/plugins/impl/TextAreaPlugin.tsx +3 -3
- package/src/plugins/impl/TextInputPlugin.tsx +3 -3
- package/src/plugins/impl/__tests__/MatrixPlugin.test.tsx +2 -2
- package/src/plugins/impl/anywidget/model.ts +10 -10
- package/src/plugins/impl/anywidget/registry.ts +12 -9
- package/src/plugins/impl/anywidget/runtime.ts +11 -9
- package/src/plugins/impl/anywidget/widget-binding.ts +6 -6
- package/src/plugins/impl/image-comparison/ImageComparisonComponent.tsx +7 -6
- package/src/plugins/impl/matplotlib/MatplotlibPlugin.tsx +3 -3
- package/src/plugins/impl/matplotlib/__tests__/matplotlib-renderer.test.ts +2 -2
- package/src/plugins/impl/matplotlib/matplotlib-renderer.ts +2 -2
- package/src/plugins/impl/mpl-interactive/mpl-websocket-shim.ts +10 -10
- package/src/plugins/impl/panel/utils.ts +5 -5
- package/src/plugins/impl/plotly/PlotlyPlugin.tsx +3 -3
- package/src/plugins/impl/vega/VegaPlugin.tsx +3 -3
- package/src/plugins/impl/vega/__tests__/use-vega-container-remeasure.test.ts +7 -7
- package/src/plugins/impl/vega/__tests__/utils.test.ts +16 -1
- package/src/plugins/impl/vega/__tests__/vega.test.ts +37 -0
- package/src/plugins/impl/vega/loader.ts +23 -1
- package/src/plugins/impl/vega/utils.ts +5 -4
- package/src/plugins/layout/AccordionPlugin.tsx +3 -3
- package/src/plugins/layout/CalloutPlugin.tsx +3 -3
- package/src/plugins/layout/ImageComparisonPlugin.tsx +5 -3
- package/src/plugins/layout/JsonOutputPlugin.tsx +3 -3
- package/src/plugins/layout/MimeRenderPlugin.tsx +3 -3
- package/src/plugins/layout/NavigationMenuPlugin.tsx +3 -3
- package/src/plugins/layout/OutlinePlugin.tsx +3 -3
- package/src/plugins/layout/ProgressPlugin.tsx +3 -3
- package/src/plugins/layout/RoutesPlugin.tsx +6 -8
- package/src/plugins/layout/StatPlugin.tsx +3 -3
- package/src/plugins/layout/TexPlugin.tsx +3 -3
- package/src/plugins/layout/carousel/CarouselPlugin.tsx +4 -4
- package/src/plugins/layout/mermaid/MermaidPlugin.tsx +3 -3
- package/src/utils/Deferred.ts +6 -6
- package/src/utils/async-capture-tracker.ts +10 -7
- package/src/utils/errors.ts +5 -5
- package/src/utils/id-tree.tsx +83 -80
- package/src/utils/lru.ts +1 -1
- package/src/utils/multi-map.ts +14 -12
- package/src/utils/paths.ts +6 -6
- package/src/utils/pluralize.ts +3 -3
- package/src/utils/progress.ts +6 -6
- package/src/utils/python-poet/poet.ts +14 -14
- package/src/utils/routes.ts +4 -2
- package/src/utils/semaphore.ts +6 -6
- package/src/utils/storage/storage.ts +6 -6
- package/src/utils/storage/typed.ts +16 -12
- package/src/utils/time.ts +9 -9
- package/src/utils/timed-cache.ts +4 -4
- package/src/utils/tracer.ts +9 -6
- package/dist/classDiagram-ZZMXUADV-Fe-V14Sc.js +0 -30
- package/dist/classDiagram-v2-VYDZK3BY-xTDg7lOs.js +0 -30
- package/dist/flowDiagram-HODETNUW-6dMdB8pR.js +0 -16
- package/dist/katex-DFBiSucW.js +0 -21840
- package/dist/stateDiagram-v2-MP3YSRHH-o05_rJN8.js +0 -30
- package/dist/swimlanesDiagram-VR7AAH4N-D_nFQfRc.js +0 -30
|
@@ -8,12 +8,12 @@ export class MessageBuffer<T> {
|
|
|
8
8
|
private buffer: T[];
|
|
9
9
|
private started = false;
|
|
10
10
|
private onMessage: (data: T) => void;
|
|
11
|
-
constructor(onMessage: (data: T) => void) {
|
|
11
|
+
public constructor(onMessage: (data: T) => void) {
|
|
12
12
|
this.onMessage = onMessage;
|
|
13
13
|
this.buffer = [];
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
-
push = (data: T) => {
|
|
16
|
+
public push = (data: T) => {
|
|
17
17
|
if (this.started) {
|
|
18
18
|
this.onMessage(data);
|
|
19
19
|
} else {
|
|
@@ -24,7 +24,7 @@ export class MessageBuffer<T> {
|
|
|
24
24
|
/**
|
|
25
25
|
* Start processing messages
|
|
26
26
|
*/
|
|
27
|
-
start = () => {
|
|
27
|
+
public start = () => {
|
|
28
28
|
this.started = true;
|
|
29
29
|
// Flush the buffer
|
|
30
30
|
this.buffer.forEach((data) => this.onMessage(data));
|
|
@@ -7,20 +7,20 @@ let innerListeners: Record<string, ((e: unknown) => void)[]>;
|
|
|
7
7
|
|
|
8
8
|
vi.mock("partysocket/ws", () => {
|
|
9
9
|
class FakeReconnectingWebSocket {
|
|
10
|
-
retryCount = 0;
|
|
11
|
-
readyState = WebSocket.CONNECTING;
|
|
12
|
-
constructor() {
|
|
10
|
+
public retryCount = 0;
|
|
11
|
+
public readyState = WebSocket.CONNECTING;
|
|
12
|
+
public constructor() {
|
|
13
13
|
innerListeners = { open: [], close: [], message: [], error: [] };
|
|
14
14
|
}
|
|
15
|
-
addEventListener(event: string, cb: (e: unknown) => void) {
|
|
15
|
+
public addEventListener(event: string, cb: (e: unknown) => void) {
|
|
16
16
|
innerListeners[event].push(cb);
|
|
17
17
|
}
|
|
18
|
-
removeEventListener(event: string, cb: (e: unknown) => void) {
|
|
18
|
+
public removeEventListener(event: string, cb: (e: unknown) => void) {
|
|
19
19
|
innerListeners[event] = innerListeners[event].filter((c) => c !== cb);
|
|
20
20
|
}
|
|
21
|
-
reconnect() {}
|
|
22
|
-
close() {}
|
|
23
|
-
send() {}
|
|
21
|
+
public reconnect() {}
|
|
22
|
+
public close() {}
|
|
23
|
+
public send() {}
|
|
24
24
|
}
|
|
25
25
|
return { default: FakeReconnectingWebSocket };
|
|
26
26
|
});
|
|
@@ -13,11 +13,13 @@ export class BasicTransport implements IConnectionTransport {
|
|
|
13
13
|
private subscriptions = new ConnectionSubscriptions();
|
|
14
14
|
private producer?: MessageProducer;
|
|
15
15
|
|
|
16
|
-
static withProducerCallback(
|
|
16
|
+
public static withProducerCallback(
|
|
17
|
+
producer: MessageProducer,
|
|
18
|
+
): IConnectionTransport {
|
|
17
19
|
return new BasicTransport(producer);
|
|
18
20
|
}
|
|
19
21
|
|
|
20
|
-
static empty(): IConnectionTransport {
|
|
22
|
+
public static empty(): IConnectionTransport {
|
|
21
23
|
return new BasicTransport();
|
|
22
24
|
}
|
|
23
25
|
|
|
@@ -39,21 +41,26 @@ export class BasicTransport implements IConnectionTransport {
|
|
|
39
41
|
});
|
|
40
42
|
}
|
|
41
43
|
|
|
42
|
-
get readyState(): WebSocket["readyState"] {
|
|
44
|
+
public get readyState(): WebSocket["readyState"] {
|
|
43
45
|
return WebSocket.OPEN;
|
|
44
46
|
}
|
|
45
47
|
|
|
46
|
-
reconnect(
|
|
48
|
+
public reconnect(
|
|
49
|
+
_code?: number | undefined,
|
|
50
|
+
_reason?: string | undefined,
|
|
51
|
+
): void {
|
|
47
52
|
this.close();
|
|
48
53
|
this.connect();
|
|
49
54
|
return;
|
|
50
55
|
}
|
|
51
56
|
|
|
52
|
-
close(): void {
|
|
57
|
+
public close(): void {
|
|
53
58
|
this.subscriptions.notify("close", new Event("close"));
|
|
54
59
|
}
|
|
55
60
|
|
|
56
|
-
send(
|
|
61
|
+
public send(
|
|
62
|
+
data: string | ArrayBuffer | Blob | ArrayBufferView,
|
|
63
|
+
): Promise<void> {
|
|
57
64
|
this.subscriptions.notify(
|
|
58
65
|
"message",
|
|
59
66
|
new MessageEvent("message", {
|
|
@@ -63,7 +70,7 @@ export class BasicTransport implements IConnectionTransport {
|
|
|
63
70
|
return Promise.resolve();
|
|
64
71
|
}
|
|
65
72
|
|
|
66
|
-
addEventListener<T extends ConnectionEvent>(
|
|
73
|
+
public addEventListener<T extends ConnectionEvent>(
|
|
67
74
|
event: T,
|
|
68
75
|
callback: ConnectionTransportCallback<T>,
|
|
69
76
|
): void {
|
|
@@ -83,7 +90,7 @@ export class BasicTransport implements IConnectionTransport {
|
|
|
83
90
|
}
|
|
84
91
|
}
|
|
85
92
|
|
|
86
|
-
removeEventListener<T extends ConnectionEvent>(
|
|
93
|
+
public removeEventListener<T extends ConnectionEvent>(
|
|
87
94
|
event: T,
|
|
88
95
|
callback: ConnectionTransportCallback<T>,
|
|
89
96
|
): void {
|
|
@@ -52,7 +52,7 @@ export class SseTransport implements IConnectionTransport {
|
|
|
52
52
|
private userClosed = false;
|
|
53
53
|
private state: WebSocket["readyState"] = WebSocket.CLOSED;
|
|
54
54
|
|
|
55
|
-
constructor(
|
|
55
|
+
public constructor(
|
|
56
56
|
urlProvider: () => string,
|
|
57
57
|
headersProvider: () => Record<string, string> = () => ({}),
|
|
58
58
|
) {
|
|
@@ -60,11 +60,11 @@ export class SseTransport implements IConnectionTransport {
|
|
|
60
60
|
this.headersProvider = headersProvider;
|
|
61
61
|
}
|
|
62
62
|
|
|
63
|
-
get readyState(): WebSocket["readyState"] {
|
|
63
|
+
public get readyState(): WebSocket["readyState"] {
|
|
64
64
|
return this.state;
|
|
65
65
|
}
|
|
66
66
|
|
|
67
|
-
reconnect(_code?: number, _reason?: string): void {
|
|
67
|
+
public reconnect(_code?: number, _reason?: string): void {
|
|
68
68
|
this.userClosed = false;
|
|
69
69
|
this.retryCount = 0;
|
|
70
70
|
this.clearRetryTimer();
|
|
@@ -72,7 +72,7 @@ export class SseTransport implements IConnectionTransport {
|
|
|
72
72
|
this.connect();
|
|
73
73
|
}
|
|
74
74
|
|
|
75
|
-
close(): void {
|
|
75
|
+
public close(): void {
|
|
76
76
|
this.userClosed = true;
|
|
77
77
|
this.clearRetryTimer();
|
|
78
78
|
this.state = WebSocket.CLOSED;
|
|
@@ -80,13 +80,13 @@ export class SseTransport implements IConnectionTransport {
|
|
|
80
80
|
this.abortController = null;
|
|
81
81
|
}
|
|
82
82
|
|
|
83
|
-
send(_data: string | ArrayBuffer | Blob | ArrayBufferView): void {
|
|
83
|
+
public send(_data: string | ArrayBuffer | Blob | ArrayBufferView): void {
|
|
84
84
|
// The kernel connection is receive-only; all client requests go over
|
|
85
85
|
// HTTP POST endpoints.
|
|
86
86
|
Logger.warn("SseTransport does not support send(); dropping message");
|
|
87
87
|
}
|
|
88
88
|
|
|
89
|
-
addEventListener<T extends ConnectionEvent>(
|
|
89
|
+
public addEventListener<T extends ConnectionEvent>(
|
|
90
90
|
event: T,
|
|
91
91
|
callback: ConnectionTransportCallback<T>,
|
|
92
92
|
): void {
|
|
@@ -96,7 +96,7 @@ export class SseTransport implements IConnectionTransport {
|
|
|
96
96
|
);
|
|
97
97
|
}
|
|
98
98
|
|
|
99
|
-
removeEventListener<T extends ConnectionEvent>(
|
|
99
|
+
public removeEventListener<T extends ConnectionEvent>(
|
|
100
100
|
event: T,
|
|
101
101
|
callback: ConnectionTransportCallback<T>,
|
|
102
102
|
): void {
|
|
@@ -33,7 +33,7 @@ export class ConnectionSubscriptions {
|
|
|
33
33
|
Set<ConnectionTransportCallback<ConnectionEvent>>
|
|
34
34
|
>();
|
|
35
35
|
|
|
36
|
-
addSubscription(
|
|
36
|
+
public addSubscription(
|
|
37
37
|
event: ConnectionEvent,
|
|
38
38
|
callback: ConnectionTransportCallback<ConnectionEvent>,
|
|
39
39
|
): void {
|
|
@@ -43,14 +43,14 @@ export class ConnectionSubscriptions {
|
|
|
43
43
|
this.subscriptions.get(event)?.add(callback);
|
|
44
44
|
}
|
|
45
45
|
|
|
46
|
-
removeSubscription(
|
|
46
|
+
public removeSubscription(
|
|
47
47
|
event: ConnectionEvent,
|
|
48
48
|
callback: ConnectionTransportCallback<ConnectionEvent>,
|
|
49
49
|
): void {
|
|
50
50
|
this.subscriptions.get(event)?.delete(callback);
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
-
notify(
|
|
53
|
+
public notify(
|
|
54
54
|
event: ConnectionEvent,
|
|
55
55
|
data: IConnectionTransportMap[ConnectionEvent],
|
|
56
56
|
): void {
|
|
@@ -20,7 +20,7 @@ export class WsTransport implements IConnectionTransport {
|
|
|
20
20
|
ConnectionTransportCallback<"close">
|
|
21
21
|
>();
|
|
22
22
|
|
|
23
|
-
constructor(urlProvider: () => string) {
|
|
23
|
+
public constructor(urlProvider: () => string) {
|
|
24
24
|
this.inner = new ReconnectingWebSocket(urlProvider, undefined, {
|
|
25
25
|
maxRetries: MAX_RETRIES,
|
|
26
26
|
debug: false,
|
|
@@ -30,23 +30,25 @@ export class WsTransport implements IConnectionTransport {
|
|
|
30
30
|
});
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
-
get readyState(): WebSocket["readyState"] {
|
|
33
|
+
public get readyState(): WebSocket["readyState"] {
|
|
34
34
|
return this.inner.readyState as WebSocket["readyState"];
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
reconnect(code?: number, reason?: string): void {
|
|
37
|
+
public reconnect(code?: number, reason?: string): void {
|
|
38
38
|
this.inner.reconnect(code, reason);
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
-
close(): void {
|
|
41
|
+
public close(): void {
|
|
42
42
|
this.inner.close();
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
-
send(
|
|
45
|
+
public send(
|
|
46
|
+
data: string | ArrayBuffer | Blob | ArrayBufferView<ArrayBuffer>,
|
|
47
|
+
): void {
|
|
46
48
|
this.inner.send(data);
|
|
47
49
|
}
|
|
48
50
|
|
|
49
|
-
addEventListener<T extends ConnectionEvent>(
|
|
51
|
+
public addEventListener<T extends ConnectionEvent>(
|
|
50
52
|
event: T,
|
|
51
53
|
callback: ConnectionTransportCallback<T>,
|
|
52
54
|
): void {
|
|
@@ -78,7 +80,7 @@ export class WsTransport implements IConnectionTransport {
|
|
|
78
80
|
this.inner.addEventListener(event, callback as never);
|
|
79
81
|
}
|
|
80
82
|
|
|
81
|
-
removeEventListener<T extends ConnectionEvent>(
|
|
83
|
+
public removeEventListener<T extends ConnectionEvent>(
|
|
82
84
|
event: T,
|
|
83
85
|
callback: ConnectionTransportCallback<T>,
|
|
84
86
|
): void {
|
package/src/css/globals.css
CHANGED
|
@@ -55,29 +55,21 @@
|
|
|
55
55
|
--background: light-dark(hsl(0deg 0% 100%), hsl(150deg 7.7% 10.2%));
|
|
56
56
|
--foreground: light-dark(hsl(222.2deg 47.4% 11.2%), hsl(155deg 7% 93%));
|
|
57
57
|
--muted: light-dark(hsl(210deg 40% 96.1%), hsl(180deg 14% 1%));
|
|
58
|
-
--muted-foreground: light-dark(
|
|
59
|
-
|
|
60
|
-
hsl(155deg 5% 68.3%)
|
|
61
|
-
);
|
|
58
|
+
--muted-foreground: light-dark(hsl(215.4deg 16.3% 46.9%),
|
|
59
|
+
hsl(155deg 5% 68.3%));
|
|
62
60
|
--popover: light-dark(hsl(0deg 0% 100%), hsl(151deg 5.5% 15.2%));
|
|
63
|
-
--popover-foreground: light-dark(
|
|
64
|
-
|
|
65
|
-
hsl(155deg 5% 68.3%)
|
|
66
|
-
);
|
|
61
|
+
--popover-foreground: light-dark(hsl(222.2deg 47.4% 11.2%),
|
|
62
|
+
hsl(155deg 5% 68.3%));
|
|
67
63
|
--card: light-dark(hsl(0deg 0% 100%), hsl(151deg 5.5% 15.2%));
|
|
68
|
-
--card-foreground: light-dark(
|
|
69
|
-
|
|
70
|
-
hsl(155deg 5% 76.3%)
|
|
71
|
-
);
|
|
64
|
+
--card-foreground: light-dark(hsl(222.2deg 47.4% 11.2%),
|
|
65
|
+
hsl(155deg 5% 76.3%));
|
|
72
66
|
--border: light-dark(hsl(214.3deg 31.8% 91.4%), hsl(153deg 3.7% 24.2%));
|
|
73
67
|
--input: light-dark(hsl(0deg 0% 64%), hsl(154deg 3.3% 28.7%));
|
|
74
68
|
--primary: light-dark(hsl(208deg 93.5% 47.4%), hsl(192deg 59.8% 39%));
|
|
75
69
|
--primary-foreground: light-dark(hsl(210deg 40% 98%), hsl(190deg 80% 84%));
|
|
76
70
|
--secondary: light-dark(hsl(210deg 40% 96.1%), hsl(155deg 7% 93%));
|
|
77
|
-
--secondary-foreground: light-dark(
|
|
78
|
-
|
|
79
|
-
hsl(151deg 5.5% 15.2%)
|
|
80
|
-
);
|
|
71
|
+
--secondary-foreground: light-dark(hsl(222.2deg 47.4% 11.2%),
|
|
72
|
+
hsl(151deg 5.5% 15.2%));
|
|
81
73
|
--accent: light-dark(hsl(209deg 100% 96.5%), hsl(192deg 56.6% 26.5%));
|
|
82
74
|
--accent-foreground: light-dark(hsl(211deg 90% 42%), hsl(190deg 80% 84%));
|
|
83
75
|
--ring: hsl(215deg 20.2% 65.1%);
|
|
@@ -105,10 +97,8 @@
|
|
|
105
97
|
|
|
106
98
|
/* Base shadows. */
|
|
107
99
|
--base-shadow: light-dark(hsl(0deg 0% 85% / 40%), hsla(0deg 0% 36% / 60%));
|
|
108
|
-
--base-shadow-darker: light-dark(
|
|
109
|
-
|
|
110
|
-
hsl(0deg 0% 50% / 60%)
|
|
111
|
-
);
|
|
100
|
+
--base-shadow-darker: light-dark(hsl(0deg 0% 50% / 40%),
|
|
101
|
+
hsl(0deg 0% 50% / 60%));
|
|
112
102
|
--base-shadow-opacity: 5%;
|
|
113
103
|
|
|
114
104
|
/* Codemirror editor */
|
|
@@ -162,7 +152,14 @@
|
|
|
162
152
|
animation-duration: 0.01ms !important;
|
|
163
153
|
animation-delay: 0s !important;
|
|
164
154
|
animation-iteration-count: 1 !important;
|
|
165
|
-
|
|
155
|
+
|
|
156
|
+
/*
|
|
157
|
+
Set to 0s, because `transition-property` defaults to `all`, so any non-zero
|
|
158
|
+
duration gives every element a transition. Libraries that change an
|
|
159
|
+
attribute and measure synchronously (e.g. Plotly hover labels) would read
|
|
160
|
+
stale geometry.
|
|
161
|
+
*/
|
|
162
|
+
transition-duration: 0s !important;
|
|
166
163
|
transition-delay: 0s !important;
|
|
167
164
|
}
|
|
168
165
|
|