@marimo-team/islands 0.25.3-dev173 → 0.25.3-dev176
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/{ErrorBoundary-wT3f3iJ1.js → ErrorBoundary-D66f-xAE.js} +1 -1
- package/dist/{any-language-editor-B92WMzoC.js → any-language-editor-BVFHDDQ3.js} +2 -2
- package/dist/{chat-ui-CuORr6fL.js → chat-ui-X-cWrL9u.js} +1222 -1222
- package/dist/{code-visibility-ZReaeMaF.js → code-visibility-CVVeTAwi.js} +2 -2
- package/dist/{common-DCevHg1m.js → common-DNlm9Cdj.js} +1074 -1078
- package/dist/{data-grid-overlay-editor-CTC-bJus.js → data-grid-overlay-editor-BArE3_zi.js} +1 -1
- package/dist/{dist-F8Ep36rk.js → dist-B1M0bGO3.js} +1 -1
- package/dist/{dist-D6d86eNJ.js → dist-BA13RJj5.js} +1 -1
- package/dist/{dist-Bvs24R_E.js → dist-BJtmSgcE.js} +48 -48
- package/dist/{dist-CN_BeG2I.js → dist-Ba2VIn1K.js} +53 -53
- package/dist/{dist-PXYI_yuP.js → dist-Bj4bmwUm.js} +12 -12
- package/dist/{dist-DoE4XJBC.js → dist-BmS-ZGjl.js} +8626 -8626
- package/dist/{dist-BorMD-uX.js → dist-Bzogh7CW.js} +87 -87
- package/dist/{dist-CN8zI-XC.js → dist-CThPVKaP.js} +1385 -1382
- package/dist/{dist-DiDibOYr.js → dist-CTi5FTiV.js} +87 -87
- package/dist/{dist-diIx5qJW.js → dist-Ck_C32ye.js} +2 -2
- package/dist/{dist-BLfKmR-l.js → dist-D1fnFp1J.js} +1 -1
- package/dist/{dist-OR1OnN-y.js → dist-D3x9__Fu.js} +46 -46
- package/dist/{dist-BMQf5zIS.js → dist-D7mrh5sO.js} +36 -36
- package/dist/{dist-CSJ0MDRw.js → dist-D9Q3xjiP.js} +1 -1
- package/dist/{dist-BuaRHxOc.js → dist-DP60Ubh8.js} +2 -2
- package/dist/{dist-CSbh1PNP.js → dist-DTv9KkpW.js} +12 -12
- package/dist/{dist-D-wwqlzJ.js → dist-DVVwOfrD.js} +109 -109
- package/dist/{dist-C8fAKSH1.js → dist-DYXM73-k.js} +36 -36
- package/dist/{dist-DBtSl3sf.js → dist-DjeybPOb.js} +1 -1
- package/dist/{dist-CrSP_H1M.js → dist-DtGn9N4h.js} +197 -197
- package/dist/{dist-CLdpGQVr.js → dist-KN80qWCP.js} +2 -2
- package/dist/{dist-Cg7gzw-a.js → dist-O0qFpEJh.js} +56 -56
- package/dist/{dist-CkTTIdBe.js → dist-OUle2RT7.js} +207 -207
- package/dist/{dist-BK4Oj99o.js → dist-T5rh6JvL.js} +1 -1
- package/dist/{error-entries-CmWMEsY_.js → error-entries-mpoD5t79.js} +4939 -4983
- package/dist/{esm-D2gTsXEV.js → esm-Bbw_Njjx.js} +575 -575
- package/dist/{esm-AMFssoNp.js → esm-mDQNEFe_.js} +354 -354
- package/dist/{feedback-button-DwXkmewo.js → feedback-button-CyvqdxXN.js} +21 -21
- package/dist/{glide-data-editor-BlmcP-lw.js → glide-data-editor-BxvYRMC3.js} +3 -3
- package/dist/{globals-BdRitZ4p.js → globals-BJla9q8e.js} +1 -1
- package/dist/{html-to-image-bpiQh7ND.js → html-to-image-BoZthB4P.js} +454 -445
- package/dist/main.js +3587 -3587
- package/dist/{number-overlay-editor-DQG-hFHT.js → number-overlay-editor-BWg7xiRF.js} +1 -1
- package/dist/{process-output-BzloOI7F.js → process-output-DLS4Mqg_.js} +2 -2
- package/dist/{reveal-component-D3r3vSTK.js → reveal-component-feAltY24.js} +3 -3
- package/package.json +1 -1
- package/src/__mocks__/document.tsx +54 -0
- package/src/__mocks__/notebook.ts +2 -1
- package/src/__mocks__/requests.ts +0 -2
- package/src/components/chat/chat-panel.tsx +3 -3
- package/src/components/datasources/__tests__/column-preview.test.tsx +6 -8
- package/src/components/datasources/column-preview.tsx +4 -8
- package/src/components/datasources/datasources.tsx +4 -3
- package/src/components/dependency-graph/minimap-content.tsx +2 -6
- package/src/components/dependency-graph/panels.tsx +2 -1
- package/src/components/editor/__tests__/Output.test.tsx +50 -32
- package/src/components/editor/__tests__/data-attributes.test.tsx +22 -11
- package/src/components/editor/__tests__/output-persistence.test.tsx +6 -1
- package/src/components/editor/actions/__tests__/name-cell-input.test.tsx +69 -0
- package/src/components/editor/actions/name-cell-input.tsx +4 -3
- package/src/components/editor/actions/useCellActionButton.tsx +20 -26
- package/src/components/editor/actions/useNotebookActions.tsx +13 -18
- package/src/components/editor/actions/useSetCodeVisibility.ts +10 -11
- package/src/components/editor/actions/useSetOutputsExpanded.ts +13 -18
- package/src/components/editor/cell/CreateCellButton.tsx +5 -9
- package/src/components/editor/cell/__tests__/StagedAICell.test.tsx +3 -1
- package/src/components/editor/cell/code/cell-editor.tsx +13 -20
- package/src/components/editor/cell/useAddCell.ts +4 -8
- package/src/components/editor/cell/useDeleteCell.tsx +10 -36
- package/src/components/editor/cell/useRunCells.ts +2 -5
- package/src/components/editor/cell/useSplitCell.tsx +2 -1
- package/src/components/editor/chrome/panels/logs-panel.tsx +2 -1
- package/src/components/editor/chrome/panels/snippets-panel.tsx +5 -11
- package/src/components/editor/chrome/wrapper/__tests__/pending-ai-cells.test.tsx +3 -1
- package/src/components/editor/columns/sortable-column.tsx +1 -1
- package/src/components/editor/connections/components.tsx +4 -9
- package/src/components/editor/controls/Controls.tsx +1 -1
- package/src/components/editor/controls/__tests__/notebook-menu-dropdown.test.tsx +9 -3
- package/src/components/editor/documentation.css +34 -11
- package/src/components/editor/errors/auto-fix.tsx +4 -8
- package/src/components/editor/file-tree/file-explorer.tsx +3 -7
- package/src/components/editor/links/__tests__/cell-link.test.tsx +3 -1
- package/src/components/editor/links/cell-link.tsx +2 -1
- package/src/components/editor/navigation/__tests__/clipboard.test.ts +60 -38
- package/src/components/editor/navigation/__tests__/navigation.test.ts +73 -64
- package/src/components/editor/navigation/clipboard.ts +12 -11
- package/src/components/editor/navigation/multi-cell-action-toolbar.tsx +11 -20
- package/src/components/editor/navigation/navigation.ts +20 -28
- package/src/components/editor/notebook-cell.tsx +7 -10
- package/src/components/editor/output/console/__tests__/ConsoleOutput.test.tsx +125 -69
- package/src/components/editor/renderers/cell-array.tsx +10 -17
- package/src/components/markdown/markdown-renderer.tsx +4 -8
- package/src/components/pages/edit-page.tsx +32 -17
- package/src/components/scratchpad/scratchpad.test.tsx +3 -1
- package/src/components/scratchpad/scratchpad.tsx +4 -7
- package/src/components/slides/__tests__/minimap-actions.test.tsx +9 -25
- package/src/components/slides/minimap.tsx +7 -3
- package/src/components/slides/slide-cell-view.tsx +3 -3
- package/src/components/sort/SortableCellsProvider.tsx +2 -1
- package/src/core/ai/__tests__/staged-cells.test.ts +18 -20
- package/src/core/ai/staged-cells.ts +8 -16
- package/src/core/ai/tools/__tests__/edit-notebook-tool.test.ts +2 -2
- package/src/core/ai/tools/__tests__/run-cells-tool.test.ts +2 -2
- package/src/core/ai/tools/base.ts +2 -2
- package/src/core/ai/tools/edit-notebook-tool.ts +13 -21
- package/src/core/cells/__tests__/actions.test.ts +474 -34
- package/src/core/cells/__tests__/add-missing-import.test.ts +7 -8
- package/src/core/cells/__tests__/cells.test.ts +171 -813
- package/src/core/cells/__tests__/document.test.ts +5 -35
- package/src/core/cells/__tests__/notebook-outline.test.ts +7 -1
- package/src/core/cells/__tests__/outputs.test.tsx +71 -53
- package/src/core/cells/actions.ts +391 -3
- package/src/core/cells/add-missing-import.ts +46 -42
- package/src/core/cells/cells.ts +38 -413
- package/src/core/cells/document.ts +7 -4
- package/src/core/cells/outputs.ts +12 -28
- package/src/core/codemirror/cells/extensions.ts +6 -6
- package/src/core/codemirror/cells/state.ts +1 -1
- package/src/core/codemirror/keymaps/vim.ts +2 -2
- package/src/core/edit-app.tsx +19 -27
- package/src/core/islands/bridge.ts +0 -2
- package/src/core/kernel/handlers.ts +3 -3
- package/src/core/network/__tests__/requests-lazy.test.ts +1 -3
- package/src/core/network/requests-lazy.ts +0 -2
- package/src/core/network/requests-network.ts +0 -16
- package/src/core/network/requests-static.ts +0 -2
- package/src/core/network/requests-toasting.tsx +0 -2
- package/src/core/network/types.ts +0 -7
- package/src/core/notebook/document/__tests__/codemirror.test.ts +5 -0
- package/src/core/notebook/document/__tests__/draft.test.ts +41 -0
- package/src/core/notebook/document/__tests__/state.test.ts +21 -0
- package/src/core/notebook/document/draft.ts +35 -5
- package/src/core/notebook/document/index.ts +1 -0
- package/src/core/notebook/document/state.ts +6 -2
- package/src/core/session/useNotebookSession.tsx +6 -2
- package/src/core/wasm/bridge.ts +0 -16
- package/src/css/globals.css +56 -22
- package/src/stories/runtime-story.tsx +22 -15
|
@@ -5,7 +5,11 @@ import { useAtom, useAtomValue, useSetAtom, useStore } from "jotai";
|
|
|
5
5
|
import { useEffect, useLayoutEffect, useMemo } from "react";
|
|
6
6
|
import { useErrorBoundary } from "react-error-boundary";
|
|
7
7
|
import { toast } from "@/components/ui/use-toast";
|
|
8
|
-
import {
|
|
8
|
+
import {
|
|
9
|
+
getNotebook,
|
|
10
|
+
notebookAtom,
|
|
11
|
+
useReducerActions,
|
|
12
|
+
} from "@/core/cells/cells";
|
|
9
13
|
import { followDocument } from "@/core/cells/document";
|
|
10
14
|
import { AUTOCOMPLETER } from "@/core/codemirror/completion/Autocompleter";
|
|
11
15
|
import { createDocumentModel } from "@/core/notebook/document";
|
|
@@ -91,7 +95,7 @@ export function useNotebookSession(opts: {
|
|
|
91
95
|
reconcileDocument,
|
|
92
96
|
setLastRun,
|
|
93
97
|
resetCellRuntimes,
|
|
94
|
-
} =
|
|
98
|
+
} = useReducerActions();
|
|
95
99
|
const { addCellNotification } = useRunsActions();
|
|
96
100
|
const setKernelState = useSetAtom(kernelStateAtom);
|
|
97
101
|
const setInitialRunCompleted = useSetAtom(initialRunCompletedAtom);
|
package/src/core/wasm/bridge.ts
CHANGED
|
@@ -345,14 +345,6 @@ export class PyodideBridge implements RunRequests, EditRequests {
|
|
|
345
345
|
return response as FormatResponse;
|
|
346
346
|
};
|
|
347
347
|
|
|
348
|
-
public sendDeleteCell: EditRequests["sendDeleteCell"] = async (request) => {
|
|
349
|
-
await this.putControlRequest({
|
|
350
|
-
type: "delete-cell",
|
|
351
|
-
...request,
|
|
352
|
-
});
|
|
353
|
-
return null;
|
|
354
|
-
};
|
|
355
|
-
|
|
356
348
|
public sendInstallMissingPackages: EditRequests["sendInstallMissingPackages"] =
|
|
357
349
|
async (request) => {
|
|
358
350
|
this.putControlRequest({
|
|
@@ -403,14 +395,6 @@ export class PyodideBridge implements RunRequests, EditRequests {
|
|
|
403
395
|
return null;
|
|
404
396
|
};
|
|
405
397
|
|
|
406
|
-
public saveCellConfig: EditRequests["saveCellConfig"] = async (request) => {
|
|
407
|
-
await this.putControlRequest({
|
|
408
|
-
type: "update-cell-config",
|
|
409
|
-
...request,
|
|
410
|
-
});
|
|
411
|
-
return null;
|
|
412
|
-
};
|
|
413
|
-
|
|
414
398
|
public sendRestart = async (): Promise<null> => {
|
|
415
399
|
// Save first
|
|
416
400
|
const code = await this.readCode();
|
package/src/css/globals.css
CHANGED
|
@@ -55,21 +55,29 @@
|
|
|
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
|
-
|
|
58
|
+
--muted-foreground: light-dark(
|
|
59
|
+
hsl(215.4deg 16.3% 46.9%),
|
|
60
|
+
hsl(155deg 5% 68.3%)
|
|
61
|
+
);
|
|
60
62
|
--popover: light-dark(hsl(0deg 0% 100%), hsl(151deg 5.5% 15.2%));
|
|
61
|
-
--popover-foreground: light-dark(
|
|
62
|
-
|
|
63
|
+
--popover-foreground: light-dark(
|
|
64
|
+
hsl(222.2deg 47.4% 11.2%),
|
|
65
|
+
hsl(155deg 5% 68.3%)
|
|
66
|
+
);
|
|
63
67
|
--card: light-dark(hsl(0deg 0% 100%), hsl(151deg 5.5% 15.2%));
|
|
64
|
-
--card-foreground: light-dark(
|
|
65
|
-
|
|
68
|
+
--card-foreground: light-dark(
|
|
69
|
+
hsl(222.2deg 47.4% 11.2%),
|
|
70
|
+
hsl(155deg 5% 76.3%)
|
|
71
|
+
);
|
|
66
72
|
--border: light-dark(hsl(214.3deg 31.8% 91.4%), hsl(153deg 3.7% 24.2%));
|
|
67
73
|
--input: light-dark(hsl(0deg 0% 64%), hsl(154deg 3.3% 28.7%));
|
|
68
74
|
--primary: light-dark(hsl(208deg 93.5% 47.4%), hsl(192deg 59.8% 39%));
|
|
69
75
|
--primary-foreground: light-dark(hsl(210deg 40% 98%), hsl(190deg 80% 84%));
|
|
70
76
|
--secondary: light-dark(hsl(210deg 40% 96.1%), hsl(155deg 7% 93%));
|
|
71
|
-
--secondary-foreground: light-dark(
|
|
72
|
-
|
|
77
|
+
--secondary-foreground: light-dark(
|
|
78
|
+
hsl(222.2deg 47.4% 11.2%),
|
|
79
|
+
hsl(151deg 5.5% 15.2%)
|
|
80
|
+
);
|
|
73
81
|
--accent: light-dark(hsl(209deg 100% 96.5%), hsl(192deg 56.6% 26.5%));
|
|
74
82
|
--accent-foreground: light-dark(hsl(211deg 90% 42%), hsl(190deg 80% 84%));
|
|
75
83
|
--ring: hsl(215deg 20.2% 65.1%);
|
|
@@ -101,8 +109,10 @@
|
|
|
101
109
|
|
|
102
110
|
/* Base shadows. */
|
|
103
111
|
--base-shadow: light-dark(hsl(0deg 0% 85% / 40%), hsla(0deg 0% 36% / 60%));
|
|
104
|
-
--base-shadow-darker: light-dark(
|
|
105
|
-
|
|
112
|
+
--base-shadow-darker: light-dark(
|
|
113
|
+
hsl(0deg 0% 50% / 40%),
|
|
114
|
+
hsl(0deg 0% 50% / 60%)
|
|
115
|
+
);
|
|
106
116
|
--base-shadow-opacity: 5%;
|
|
107
117
|
|
|
108
118
|
/* Codemirror editor */
|
|
@@ -219,40 +229,64 @@
|
|
|
219
229
|
--shadow-xxs: 0px 0px 2px 0px var(--base-shadow-darker);
|
|
220
230
|
|
|
221
231
|
/* oxfmt-ignore: definition needs to be oneline or breaks variants */
|
|
222
|
-
--shadow-xs:
|
|
232
|
+
--shadow-xs:
|
|
233
|
+
1px 1px 2px 0px var(--base-shadow),
|
|
234
|
+
0px 0px 2px 0px hsl(0deg 0% 25% / var(--base-shadow-opacity));
|
|
223
235
|
|
|
224
236
|
/* oxfmt-ignore: definition needs to be oneline or breaks variants */
|
|
225
|
-
--shadow-sm:
|
|
237
|
+
--shadow-sm:
|
|
238
|
+
2px 2px 2px 0px var(--base-shadow),
|
|
239
|
+
0px 0px 2px 0px hsl(0deg 0% 25% / var(--base-shadow-opacity));
|
|
226
240
|
|
|
227
241
|
/* oxfmt-ignore: definition needs to be oneline or breaks variants */
|
|
228
|
-
--shadow-md:
|
|
242
|
+
--shadow-md:
|
|
243
|
+
4px 4px 4px 0px var(--base-shadow),
|
|
244
|
+
0 0px 4px 0px hsl(0deg 0% 60% / var(--base-shadow-opacity));
|
|
229
245
|
|
|
230
246
|
/* oxfmt-ignore: definition needs to be oneline or breaks variants */
|
|
231
|
-
--shadow-lg:
|
|
247
|
+
--shadow-lg:
|
|
248
|
+
5px 6px 4px 0px var(--base-shadow),
|
|
249
|
+
0 0px 4px 0px hsl(0deg 0% 75% / var(--base-shadow-opacity));
|
|
232
250
|
|
|
233
251
|
/* oxfmt-ignore: definition needs to be oneline or breaks variants */
|
|
234
|
-
--shadow-xl:
|
|
252
|
+
--shadow-xl:
|
|
253
|
+
8px 9px 4px 0px var(--base-shadow),
|
|
254
|
+
0 0px 6px 0px hsl(0deg 0% 85% / var(--base-shadow-opacity));
|
|
235
255
|
|
|
236
256
|
/* oxfmt-ignore: definition needs to be oneline or breaks variants */
|
|
237
|
-
--shadow-2xl:
|
|
257
|
+
--shadow-2xl:
|
|
258
|
+
10px 12px 10px 0px var(--base-shadow),
|
|
259
|
+
0 0px 8px 0px hsl(0deg 0% 90% / var(--base-shadow-opacity));
|
|
238
260
|
|
|
239
261
|
/* oxfmt-ignore: definition needs to be oneline or breaks variants */
|
|
240
|
-
--shadow-xs-solid:
|
|
262
|
+
--shadow-xs-solid:
|
|
263
|
+
1px 1px 0px 0px var(--base-shadow-darker),
|
|
264
|
+
0px 0px 2px 0px hsl(0deg 0% 50% / 20%);
|
|
241
265
|
|
|
242
266
|
/* oxfmt-ignore: definition needs to be oneline or breaks variants */
|
|
243
|
-
--shadow-sm-solid:
|
|
267
|
+
--shadow-sm-solid:
|
|
268
|
+
2px 2px 0px 0px var(--base-shadow-darker),
|
|
269
|
+
0px 0px 2px 0px hsl(0deg 0% 50% / 20%);
|
|
244
270
|
|
|
245
271
|
/* oxfmt-ignore: definition needs to be oneline or breaks variants */
|
|
246
|
-
--shadow-md-solid:
|
|
272
|
+
--shadow-md-solid:
|
|
273
|
+
4px 4px 0px 0px var(--base-shadow-darker),
|
|
274
|
+
0 0px 2px 0px hsl(0deg 0% 60% / 50%);
|
|
247
275
|
|
|
248
276
|
/* oxfmt-ignore: definition needs to be oneline or breaks variants */
|
|
249
|
-
--shadow-lg-solid:
|
|
277
|
+
--shadow-lg-solid:
|
|
278
|
+
5px 6px 0px 0px var(--base-shadow-darker),
|
|
279
|
+
0 0px 4px 0px hsl(0deg 0% 75% / 50%);
|
|
250
280
|
|
|
251
281
|
/* oxfmt-ignore: definition needs to be oneline or breaks variants */
|
|
252
|
-
--shadow-xl-solid:
|
|
282
|
+
--shadow-xl-solid:
|
|
283
|
+
7px 8px 0px 0px var(--base-shadow-darker),
|
|
284
|
+
0 0px 4px 0px hsl(0deg 0% 85% / 50%);
|
|
253
285
|
|
|
254
286
|
/* oxfmt-ignore: definition needs to be oneline or breaks variants */
|
|
255
|
-
--shadow-2xl-solid:
|
|
287
|
+
--shadow-2xl-solid:
|
|
288
|
+
10px 12px 0px 0px var(--base-shadow-darker),
|
|
289
|
+
0 0px 8px 0px hsl(0deg 0% 90% / 50%);
|
|
256
290
|
|
|
257
291
|
/* Solid shadows with lighter shade color */
|
|
258
292
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/* Copyright 2026 Marimo. All rights reserved. */
|
|
2
2
|
import type { Meta } from "@storybook/react-vite";
|
|
3
3
|
import { createStore, Provider, useAtomValue, useStore } from "jotai";
|
|
4
|
-
import { useEffect, useRef, useState } from "react";
|
|
4
|
+
import { createRef, useEffect, useRef, useState } from "react";
|
|
5
5
|
import { Button } from "@/components/ui/button";
|
|
6
6
|
import { ConnectionNotice } from "@/components/editor/alerts/connection-notice";
|
|
7
7
|
import PackagesPanel from "@/components/editor/chrome/panels/packages-panel";
|
|
@@ -13,11 +13,10 @@ import { Cell } from "@/components/editor/notebook-cell";
|
|
|
13
13
|
import { VerticalLayoutWrapper } from "@/components/editor/renderers/vertical-layout/vertical-layout-wrapper";
|
|
14
14
|
import { alertAtom } from "@/core/alerts/state";
|
|
15
15
|
import type { EnvironmentOperation } from "@/core/alerts/environment";
|
|
16
|
-
import {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
} from "@/core/cells/cells";
|
|
16
|
+
import { notebookAtom } from "@/core/cells/cells";
|
|
17
|
+
import { CellId } from "@/core/cells/ids";
|
|
18
|
+
import { createCell, createCellRuntimeState } from "@/core/cells/types";
|
|
19
|
+
import { MultiColumn } from "@/utils/id-tree";
|
|
21
20
|
import { userConfigAtom } from "@/core/config/config";
|
|
22
21
|
import {
|
|
23
22
|
type AppConfig,
|
|
@@ -349,15 +348,23 @@ export function RuntimeStory(props: Props) {
|
|
|
349
348
|
log_mode: "replace",
|
|
350
349
|
});
|
|
351
350
|
if (props.existingCells) {
|
|
352
|
-
const
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
351
|
+
const cellId = CellId.create();
|
|
352
|
+
state.set(notebookAtom, (value) => ({
|
|
353
|
+
...value,
|
|
354
|
+
cellIds: MultiColumn.from([[cellId]]),
|
|
355
|
+
cellData: {
|
|
356
|
+
...value.cellData,
|
|
357
|
+
[cellId]: createCell({
|
|
358
|
+
id: cellId,
|
|
359
|
+
code: 'import polars as pl\n\ntrips = pl.read_csv("bike_trips.csv")\ntrips.head()',
|
|
360
|
+
}),
|
|
361
|
+
},
|
|
362
|
+
cellRuntime: {
|
|
363
|
+
...value.cellRuntime,
|
|
364
|
+
[cellId]: createCellRuntimeState(),
|
|
365
|
+
},
|
|
366
|
+
cellHandles: { ...value.cellHandles, [cellId]: createRef() },
|
|
367
|
+
}));
|
|
361
368
|
}
|
|
362
369
|
state.set(requestClientAtom, {
|
|
363
370
|
...createStaticRequests(),
|