@myst-theme/jupyter 0.3.5 → 0.3.7

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.
@@ -1 +1 @@
1
- {"version":3,"file":"embed.d.ts","sourceRoot":"","sources":["../../src/embed.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAoD/D,wBAAgB,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,2CAajE"}
1
+ {"version":3,"file":"embed.d.ts","sourceRoot":"","sources":["../../src/embed.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAwD/D,wBAAgB,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,2CAajE"}
package/dist/cjs/embed.js CHANGED
@@ -11,8 +11,9 @@ const providers_1 = require("@myst-theme/providers");
11
11
  function EmbedWithControls({ outputKey, children, title = 'Jupyter Notebook', url, }) {
12
12
  const { kind } = (0, execute_1.useCellExecution)(outputKey);
13
13
  const Link = (0, providers_1.useLinkProvider)();
14
+ const baseurl = (0, providers_1.useBaseurl)();
14
15
  const showControls = kind === myst_common_1.SourceFileKind.Article;
15
- return ((0, jsx_runtime_1.jsxs)("div", { className: "shadow", children: [showControls && ((0, jsx_runtime_1.jsx)("div", { className: "sticky top-[60px] z-[2] w-full bg-gray-100/80 backdrop-blur dark:bg-neutral-800/80 py-1 px-2", children: (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsx)(solid_1.JupyterIcon, { className: "inline-block w-5 h-5" }), (0, jsx_runtime_1.jsx)("span", { className: "ml-2", children: "Source:" }), url && ((0, jsx_runtime_1.jsx)(Link, { to: url, className: "ml-2 no-underline text-normal hover:underline", children: title }))] }), (0, jsx_runtime_1.jsx)("div", { className: "flex-grow" }), (0, jsx_runtime_1.jsx)(ArticleCellControls_1.ArticleStatusBadge, { id: outputKey }), (0, jsx_runtime_1.jsx)(ArticleCellControls_1.ArticleRunNotebook, { id: outputKey }), (0, jsx_runtime_1.jsx)(ArticleCellControls_1.ArticleResetNotebook, { id: outputKey })] }) })), (0, jsx_runtime_1.jsx)("div", { className: "mt-2", children: children })] }));
16
+ return ((0, jsx_runtime_1.jsxs)("div", { className: "shadow", children: [showControls && ((0, jsx_runtime_1.jsx)("div", { className: "sticky top-[60px] z-[2] w-full bg-gray-100/80 backdrop-blur dark:bg-neutral-800/80 py-1 px-2", children: (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center", children: [(0, jsx_runtime_1.jsx)(solid_1.JupyterIcon, { className: "inline-block w-5 h-5" }), (0, jsx_runtime_1.jsx)("span", { className: "ml-2", children: "Source:" }), url && ((0, jsx_runtime_1.jsx)(Link, { to: (0, providers_1.withBaseurl)(url, baseurl), className: "ml-2 no-underline text-normal hover:underline", children: title }))] }), (0, jsx_runtime_1.jsx)("div", { className: "flex-grow" }), (0, jsx_runtime_1.jsx)(ArticleCellControls_1.ArticleStatusBadge, { id: outputKey }), (0, jsx_runtime_1.jsx)(ArticleCellControls_1.ArticleRunNotebook, { id: outputKey }), (0, jsx_runtime_1.jsx)(ArticleCellControls_1.ArticleResetNotebook, { id: outputKey })] }) })), (0, jsx_runtime_1.jsx)("div", { className: "mt-2", children: children })] }));
16
17
  }
17
18
  function Embed(node, children) {
18
19
  var _a, _b;
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/execute/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,KAAK,EAAE,UAAU,EAA0C,MAAM,YAAY,CAAC;AAGrF,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,wBAAgB,iBAAiB,CAAC,EAChC,qBAA6B,GAC9B,GAAE;IAAE,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAAO;;kBAUR,MAAM;yBAsD1B,MAAM;yBAYN,MAAM;oBAxDI,MAAM;;;;;EAgF9B;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,OAAO,EAAE,qBAAqB,UAAQ;;;;;;;;;;;;;;;EA4G9E;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,OAAO;;;;;;;;;;EAiE3C;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,OAAO;;;;EAc/C;AAED,wBAAgB,iBAAiB,YAOhC"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/execute/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,KAAK,EAAE,UAAU,EAA0C,MAAM,YAAY,CAAC;AAGrF,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAG7C,wBAAgB,iBAAiB,CAAC,EAChC,qBAA6B,GAC9B,GAAE;IAAE,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAAO;;kBAUR,MAAM;yBAsD1B,MAAM;yBAYN,MAAM;oBAxDI,MAAM;;;;;EAgF9B;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,OAAO,EAAE,qBAAqB,UAAQ;;;;;;;;;;;;;;;EA2G9E;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,OAAO;;;;;;;;;;EA+D3C;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,OAAO;;;;EAc/C;AAED,wBAAgB,iBAAiB,YAOhC"}
@@ -38,6 +38,7 @@ const provider_1 = require("./provider");
38
38
  const busy_1 = require("./busy");
39
39
  const thebe_react_1 = require("thebe-react");
40
40
  const myst_common_1 = require("myst-common");
41
+ const selectors_1 = require("./selectors");
41
42
  function useExecutionScope({ clearOutputsOnExecute = false, } = {}) {
42
43
  var _a;
43
44
  const context = react_1.default.useContext(provider_1.ExecuteScopeContext);
@@ -92,7 +93,8 @@ function useExecutionScope({ clearOutputsOnExecute = false, } = {}) {
92
93
  *
93
94
  */
94
95
  const clearAll = (0, react_1.useCallback)((pageSlug) => {
95
- Object.entries(state.pages[pageSlug].scopes).forEach(([, { notebook }]) => {
96
+ var _a;
97
+ Object.entries((_a = state.pages[pageSlug]) === null || _a === void 0 ? void 0 : _a.scopes).forEach(([, { notebook }]) => {
96
98
  notebook.clear();
97
99
  });
98
100
  }, [state]);
@@ -100,7 +102,8 @@ function useExecutionScope({ clearOutputsOnExecute = false, } = {}) {
100
102
  * resetAll resets all cells in all notebooks for a given rendering
101
103
  */
102
104
  const resetAll = (0, react_1.useCallback)((pageSlug) => {
103
- Object.entries(state.pages[pageSlug].scopes).forEach(([notebookSlug, { notebook, session }]) => {
105
+ var _a;
106
+ Object.entries((_a = state.pages[pageSlug]) === null || _a === void 0 ? void 0 : _a.scopes).forEach(([notebookSlug, { notebook, session }]) => {
104
107
  busy.setNotebook(pageSlug, notebookSlug, notebook.cells.map((c) => c.id), 'reset');
105
108
  setTimeout(() => {
106
109
  var _a;
@@ -126,7 +129,7 @@ function useNotebookExecution(id, clearOutputsOnExecute = false) {
126
129
  const { config } = (0, thebe_react_1.useThebeConfig)();
127
130
  const busy = (0, busy_1.useBusyScope)();
128
131
  if (context === undefined) {
129
- throw new Error('useExecuteScope must be used within a ExecuteScopeProvider');
132
+ throw new Error('useNotebookExecution must be used within a ExecuteScopeProvider');
130
133
  }
131
134
  const { state, dispatch, idkmap } = context;
132
135
  const target = (_a = idkmap[id]) !== null && _a !== void 0 ? _a : {};
@@ -144,16 +147,12 @@ function useNotebookExecution(id, clearOutputsOnExecute = false) {
144
147
  let cell;
145
148
  let notebook;
146
149
  if (target && state.pages[pageSlug]) {
147
- notebook = state.pages[pageSlug].scopes[notebookSlug].notebook;
148
- if (!notebook)
149
- console.error('no notebook for', { pageSlug, notebookSlug, cellId });
150
- cell = notebook === null || notebook === void 0 ? void 0 : notebook.getCellById(cellId);
151
- if (!cell)
152
- console.error('no cell found', { pageSlug, notebookSlug, cellId });
150
+ notebook = (0, selectors_1.selectNotebookForPage)(state, pageSlug, notebookSlug);
151
+ if (notebook)
152
+ cell = notebook === null || notebook === void 0 ? void 0 : notebook.getCellById(cellId);
153
153
  }
154
154
  const execute = () => {
155
- var _a, _b;
156
- const nb = (_b = (_a = state.pages[pageSlug]) === null || _a === void 0 ? void 0 : _a.scopes[notebookSlug]) === null || _b === void 0 ? void 0 : _b.notebook;
155
+ const nb = (0, selectors_1.selectNotebookForPage)(state, pageSlug, notebookSlug);
157
156
  // set busy
158
157
  busy.setNotebook(pageSlug, notebookSlug, nb.cells.map((c) => c.id), 'execute');
159
158
  if (clearOutputsOnExecute)
@@ -180,21 +179,19 @@ function useNotebookExecution(id, clearOutputsOnExecute = false) {
180
179
  *
181
180
  */
182
181
  const clear = (0, react_1.useCallback)(() => {
183
- var _a, _b;
184
- const nb = (_b = (_a = state.pages[pageSlug]) === null || _a === void 0 ? void 0 : _a.scopes[notebookSlug]) === null || _b === void 0 ? void 0 : _b.notebook;
182
+ const nb = (0, selectors_1.selectNotebookForPage)(state, pageSlug, notebookSlug);
185
183
  nb.clear();
186
184
  }, [state]);
187
185
  /**
188
186
  * resetAll resets all cells in all notebooks for a given rendering
189
187
  */
190
188
  const reset = (0, react_1.useCallback)(() => {
191
- var _a, _b;
192
- const { notebook: nb, session } = (_b = (_a = state.pages[pageSlug]) === null || _a === void 0 ? void 0 : _a.scopes[notebookSlug]) !== null && _b !== void 0 ? _b : {};
189
+ const nb = (0, selectors_1.selectNotebookForPage)(state, pageSlug, notebookSlug);
193
190
  busy.setNotebook(pageSlug, notebookSlug, nb.cells.map((c) => c.id), 'reset');
194
191
  setTimeout(() => {
195
- var _a;
192
+ var _a, _b;
196
193
  nb.reset();
197
- (_a = session === null || session === void 0 ? void 0 : session.kernel) === null || _a === void 0 ? void 0 : _a.restart().finally(() => {
194
+ (_b = (_a = nb.session) === null || _a === void 0 ? void 0 : _a.kernel) === null || _b === void 0 ? void 0 : _b.restart().finally(() => {
198
195
  busy.clearNotebook(pageSlug, notebookSlug, 'reset');
199
196
  });
200
197
  }, 300);
@@ -223,7 +220,7 @@ function useCellExecution(id) {
223
220
  const busy = (0, busy_1.useBusyScope)();
224
221
  const context = react_1.default.useContext(provider_1.ExecuteScopeContext);
225
222
  if (context === undefined) {
226
- throw new Error('useExecuteScope must be used within a ExecuteScopeProvider');
223
+ throw new Error('useCellExecution must be used within a ExecuteScopeProvider');
227
224
  }
228
225
  const { state, idkmap } = context;
229
226
  const target = (_a = idkmap[id]) !== null && _a !== void 0 ? _a : {};
@@ -231,12 +228,9 @@ function useCellExecution(id) {
231
228
  let cell;
232
229
  let notebook;
233
230
  if (target && state.pages[pageSlug]) {
234
- notebook = state.pages[pageSlug].scopes[notebookSlug].notebook;
235
- if (!notebook)
236
- console.error('no notebook for', { pageSlug, notebookSlug, cellId });
237
- cell = notebook === null || notebook === void 0 ? void 0 : notebook.getCellById(cellId);
238
- if (!cell)
239
- console.error('no cell found', { pageSlug, notebookSlug, cellId });
231
+ notebook = (0, selectors_1.selectNotebookForPage)(state, pageSlug, notebookSlug);
232
+ if (notebook)
233
+ cell = notebook === null || notebook === void 0 ? void 0 : notebook.getCellById(cellId);
240
234
  }
241
235
  const ready = (_b = context.state.pages[context.slug]) === null || _b === void 0 ? void 0 : _b.ready;
242
236
  const kind = (_d = (_c = context.state.pages[context.slug]) === null || _c === void 0 ? void 0 : _c.kind) !== null && _d !== void 0 ? _d : myst_common_1.SourceFileKind.Article;
@@ -1 +1 @@
1
- {"version":3,"file":"leaf.d.ts","sourceRoot":"","sources":["../../../src/execute/leaf.tsx"],"names":[],"mappings":";AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAO3D,wBAAgB,YAAY,CAAC,EAC3B,IAAI,EACJ,GAAG,EACH,QAAQ,GACT,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,kDAkBA;AAED,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,YAAY,EACZ,MAAM,EACN,KAAK,EACL,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,QAAQ,CAAC;IACjB,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,QA8CA;AAED,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,YAAY,EACZ,KAAK,EACL,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,QAoEA;AAED,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,QA4BA"}
1
+ {"version":3,"file":"leaf.d.ts","sourceRoot":"","sources":["../../../src/execute/leaf.tsx"],"names":[],"mappings":";AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAW3D,wBAAgB,YAAY,CAAC,EAC3B,IAAI,EACJ,GAAG,EACH,QAAQ,GACT,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,kDAkBA;AAED,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,YAAY,EACZ,MAAM,EACN,KAAK,EACL,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,QAAQ,CAAC;IACjB,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,QA8CA;AAED,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,YAAY,EACZ,KAAK,EACL,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,QAoEA;AAED,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,QA4BA"}
@@ -84,8 +84,7 @@ function SessionStarter({ pageSlug, notebookSlug, state, dispatch, }) {
84
84
  console.debug(`reconnected to session for ${pageSlug}/${notebookSlug}`, sesh);
85
85
  console.debug('restarting session', sesh);
86
86
  (_a = sesh.kernel) === null || _a === void 0 ? void 0 : _a.restart().then(() => {
87
- var _a;
88
- const notebook = (_a = state.pages[pageSlug]) === null || _a === void 0 ? void 0 : _a.scopes[notebookSlug].notebook;
87
+ const notebook = (0, selectors_1.selectNotebookForPage)(state, pageSlug, notebookSlug);
89
88
  notebook.attachSession(sesh);
90
89
  dispatch({ type: 'ADD_SESSION', payload: { pageSlug, notebookSlug, session: sesh } });
91
90
  });
@@ -95,7 +94,6 @@ function SessionStarter({ pageSlug, notebookSlug, state, dispatch, }) {
95
94
  server
96
95
  .startNewSession(scope.rendermime, Object.assign(Object.assign({}, config === null || config === void 0 ? void 0 : config.kernels), { name: `${pageSlug}-${notebookSlug}.ipynb`, path }))
97
96
  .then((sesh) => {
98
- var _a;
99
97
  if (sesh == null) {
100
98
  server === null || server === void 0 ? void 0 : server.getKernelSpecs().then((specs) => {
101
99
  console.error(`Could not start session for ${pageSlug} ${notebookSlug}`);
@@ -104,7 +102,7 @@ function SessionStarter({ pageSlug, notebookSlug, state, dispatch, }) {
104
102
  return;
105
103
  }
106
104
  console.debug(`session started for ${pageSlug}/${notebookSlug}`, sesh);
107
- const notebook = (_a = state.pages[pageSlug]) === null || _a === void 0 ? void 0 : _a.scopes[notebookSlug].notebook;
105
+ const notebook = (0, selectors_1.selectNotebookForPage)(state, pageSlug, notebookSlug);
108
106
  notebook.attachSession(sesh);
109
107
  dispatch({ type: 'ADD_SESSION', payload: { pageSlug, notebookSlug, session: sesh } });
110
108
  });
@@ -15,6 +15,7 @@ exports.reducer = void 0;
15
15
  const myst_common_1 = require("myst-common");
16
16
  const actions_1 = require("./actions");
17
17
  function reducer(state, action) {
18
+ var _a;
18
19
  switch (action.type) {
19
20
  case 'NAVIGATE': {
20
21
  if (!(0, actions_1.isNavigatePayload)(action.payload)) {
@@ -79,7 +80,7 @@ function reducer(state, action) {
79
80
  if (!state.builds[slug])
80
81
  return state;
81
82
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
82
- const _a = state.builds, _b = slug, _ = _a[_b], builds = __rest(_a, [typeof _b === "symbol" ? _b : _b + ""]);
83
+ const _b = state.builds, _c = slug, _ = _b[_c], builds = __rest(_b, [typeof _c === "symbol" ? _c : _c + ""]);
83
84
  return Object.assign(Object.assign({}, state), { builds });
84
85
  }
85
86
  case 'SET_RENDERING_READY': {
@@ -91,7 +92,7 @@ function reducer(state, action) {
91
92
  if (state.pages[slug].ready)
92
93
  return state;
93
94
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
94
- const _c = state.builds, _d = slug, _ = _c[_d], builds = __rest(_c, [typeof _d === "symbol" ? _d : _d + ""]);
95
+ const _d = state.builds, _e = slug, _ = _d[_e], builds = __rest(_d, [typeof _e === "symbol" ? _e : _e + ""]);
95
96
  const newState = Object.assign(Object.assign({}, state), { builds, pages: Object.assign(Object.assign({}, state.pages), { [slug]: Object.assign(Object.assign({}, state.pages[slug]), { ready: true }) }) });
96
97
  return newState;
97
98
  }
@@ -124,7 +125,7 @@ function reducer(state, action) {
124
125
  console.error(state, action.payload);
125
126
  throw new Error('Trying to add session when there is no rendering state');
126
127
  }
127
- if (state.pages[pageSlug].scopes[notebookSlug].session) {
128
+ if ((_a = state.pages[pageSlug].scopes[notebookSlug]) === null || _a === void 0 ? void 0 : _a.session) {
128
129
  console.warn('Trying to add session scope when rendering already has one', action.payload);
129
130
  return state;
130
131
  }
@@ -1,4 +1,8 @@
1
1
  import type { BuildStatus, ExecuteScopeState } from './types';
2
+ export declare function selectScopeForPage(state: ExecuteScopeState, pageSlug: string): {
3
+ [notebookSlug: string]: import("./types").ExecutionScope;
4
+ };
5
+ export declare function selectNotebookForPage(state: ExecuteScopeState, pageSlug: string, notebookSlug: string): import("thebe-core/dist/types/notebook").default;
2
6
  export declare function selectIsComputable(state: ExecuteScopeState, slug: string): boolean;
3
7
  export declare function selectAreExecutionScopesReady(state: ExecuteScopeState, slug: string): boolean;
4
8
  export declare function selectAreExecutionScopesBuilding(state: ExecuteScopeState, slug: string): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"selectors.d.ts","sourceRoot":"","sources":["../../../src/execute/selectors.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE9D,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAExE;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAEnF;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAEtF;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,yBAEhF;AAQD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,iBAAiB;UAKpD,MAAM;SACP,MAAM;IAclB;AAsBD,eAAO,MAAM,2BAA2B,UAlBvB,iBAAiB,KAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAkBS,CAAC;AACzF,eAAO,MAAM,qBAAqB,UAnBjB,iBAAiB,KAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAmBC,CAAC;AAEjF,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAEnF;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAGrF;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAIjF;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,iBAAiB,EACxB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,YAGrB"}
1
+ {"version":3,"file":"selectors.d.ts","sourceRoot":"","sources":["../../../src/execute/selectors.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE9D,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM;;EAE5E;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,iBAAiB,EACxB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,oDAGrB;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAExE;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAEnF;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAEtF;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,yBAEhF;AAQD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,iBAAiB;UAKpD,MAAM;SACP,MAAM;IAclB;AAsBD,eAAO,MAAM,2BAA2B,UAlBvB,iBAAiB,KAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAkBS,CAAC;AACzF,eAAO,MAAM,qBAAqB,UAnBjB,iBAAiB,KAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAmBC,CAAC;AAEjF,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAEnF;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAGrF;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAIjF;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,iBAAiB,EACxB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,YAGrB"}
@@ -1,7 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.selectNotebookCellIds = exports.selectAreAllSessionsStarted = exports.selectAreAllNotebookScopesBuilt = exports.selectAreAllDependenciesReady = exports.selectSessionsToStart = exports.selectScopeNotebooksToBuild = exports.selectDependenciesToFetch = exports.selectExecutionScopeStatus = exports.selectAreExecutionScopesBuilding = exports.selectAreExecutionScopesReady = exports.selectIsComputable = void 0;
3
+ exports.selectNotebookCellIds = exports.selectAreAllSessionsStarted = exports.selectAreAllNotebookScopesBuilt = exports.selectAreAllDependenciesReady = exports.selectSessionsToStart = exports.selectScopeNotebooksToBuild = exports.selectDependenciesToFetch = exports.selectExecutionScopeStatus = exports.selectAreExecutionScopesBuilding = exports.selectAreExecutionScopesReady = exports.selectIsComputable = exports.selectNotebookForPage = exports.selectScopeForPage = void 0;
4
4
  const myst_common_1 = require("myst-common");
5
+ function selectScopeForPage(state, pageSlug) {
6
+ var _a, _b;
7
+ return (_b = (_a = state.pages[pageSlug]) === null || _a === void 0 ? void 0 : _a.scopes) !== null && _b !== void 0 ? _b : {};
8
+ }
9
+ exports.selectScopeForPage = selectScopeForPage;
10
+ function selectNotebookForPage(state, pageSlug, notebookSlug) {
11
+ var _a, _b;
12
+ return (_b = (_a = state.pages[pageSlug]) === null || _a === void 0 ? void 0 : _a.scopes[notebookSlug]) === null || _b === void 0 ? void 0 : _b.notebook;
13
+ }
14
+ exports.selectNotebookForPage = selectNotebookForPage;
5
15
  function selectIsComputable(state, slug) {
6
16
  var _a, _b;
7
17
  return (_b = (_a = state.pages[slug]) === null || _a === void 0 ? void 0 : _a.computable) !== null && _b !== void 0 ? _b : false;
@@ -1 +1 @@
1
- {"version":3,"file":"embed.d.ts","sourceRoot":"","sources":["../../src/embed.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAoD/D,wBAAgB,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,2CAajE"}
1
+ {"version":3,"file":"embed.d.ts","sourceRoot":"","sources":["../../src/embed.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAwD/D,wBAAgB,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,2CAajE"}
package/dist/esm/embed.js CHANGED
@@ -4,12 +4,13 @@ import { useCellExecution } from './execute';
4
4
  import { ArticleResetNotebook, ArticleRunNotebook, ArticleStatusBadge, } from './controls/ArticleCellControls';
5
5
  import { JupyterIcon } from '@scienceicons/react/24/solid';
6
6
  import { select } from 'unist-util-select';
7
- import { useLinkProvider } from '@myst-theme/providers';
7
+ import { useLinkProvider, useBaseurl, withBaseurl } from '@myst-theme/providers';
8
8
  function EmbedWithControls({ outputKey, children, title = 'Jupyter Notebook', url, }) {
9
9
  const { kind } = useCellExecution(outputKey);
10
10
  const Link = useLinkProvider();
11
+ const baseurl = useBaseurl();
11
12
  const showControls = kind === SourceFileKind.Article;
12
- return (_jsxs("div", { className: "shadow", children: [showControls && (_jsx("div", { className: "sticky top-[60px] z-[2] w-full bg-gray-100/80 backdrop-blur dark:bg-neutral-800/80 py-1 px-2", children: _jsxs("div", { className: "flex items-center", children: [_jsxs("div", { className: "flex items-center", children: [_jsx(JupyterIcon, { className: "inline-block w-5 h-5" }), _jsx("span", { className: "ml-2", children: "Source:" }), url && (_jsx(Link, { to: url, className: "ml-2 no-underline text-normal hover:underline", children: title }))] }), _jsx("div", { className: "flex-grow" }), _jsx(ArticleStatusBadge, { id: outputKey }), _jsx(ArticleRunNotebook, { id: outputKey }), _jsx(ArticleResetNotebook, { id: outputKey })] }) })), _jsx("div", { className: "mt-2", children: children })] }));
13
+ return (_jsxs("div", { className: "shadow", children: [showControls && (_jsx("div", { className: "sticky top-[60px] z-[2] w-full bg-gray-100/80 backdrop-blur dark:bg-neutral-800/80 py-1 px-2", children: _jsxs("div", { className: "flex items-center", children: [_jsxs("div", { className: "flex items-center", children: [_jsx(JupyterIcon, { className: "inline-block w-5 h-5" }), _jsx("span", { className: "ml-2", children: "Source:" }), url && (_jsx(Link, { to: withBaseurl(url, baseurl), className: "ml-2 no-underline text-normal hover:underline", children: title }))] }), _jsx("div", { className: "flex-grow" }), _jsx(ArticleStatusBadge, { id: outputKey }), _jsx(ArticleRunNotebook, { id: outputKey }), _jsx(ArticleResetNotebook, { id: outputKey })] }) })), _jsx("div", { className: "mt-2", children: children })] }));
13
14
  }
14
15
  export function Embed(node, children) {
15
16
  var _a, _b;
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/execute/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,KAAK,EAAE,UAAU,EAA0C,MAAM,YAAY,CAAC;AAGrF,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,wBAAgB,iBAAiB,CAAC,EAChC,qBAA6B,GAC9B,GAAE;IAAE,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAAO;;kBAUR,MAAM;yBAsD1B,MAAM;yBAYN,MAAM;oBAxDI,MAAM;;;;;EAgF9B;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,OAAO,EAAE,qBAAqB,UAAQ;;;;;;;;;;;;;;;EA4G9E;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,OAAO;;;;;;;;;;EAiE3C;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,OAAO;;;;EAc/C;AAED,wBAAgB,iBAAiB,YAOhC"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/execute/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,KAAK,EAAE,UAAU,EAA0C,MAAM,YAAY,CAAC;AAGrF,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAG7C,wBAAgB,iBAAiB,CAAC,EAChC,qBAA6B,GAC9B,GAAE;IAAE,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAAO;;kBAUR,MAAM;yBAsD1B,MAAM;yBAYN,MAAM;oBAxDI,MAAM;;;;;EAgF9B;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,OAAO,EAAE,qBAAqB,UAAQ;;;;;;;;;;;;;;;EA2G9E;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,OAAO;;;;;;;;;;EA+D3C;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,OAAO;;;;EAc/C;AAED,wBAAgB,iBAAiB,YAOhC"}
@@ -12,6 +12,7 @@ import { ExecuteScopeContext } from './provider';
12
12
  import { useBusyScope } from './busy';
13
13
  import { findErrors, useThebeConfig } from 'thebe-react';
14
14
  import { SourceFileKind } from 'myst-common';
15
+ import { selectNotebookForPage } from './selectors';
15
16
  export function useExecutionScope({ clearOutputsOnExecute = false, } = {}) {
16
17
  var _a;
17
18
  const context = React.useContext(ExecuteScopeContext);
@@ -66,7 +67,8 @@ export function useExecutionScope({ clearOutputsOnExecute = false, } = {}) {
66
67
  *
67
68
  */
68
69
  const clearAll = useCallback((pageSlug) => {
69
- Object.entries(state.pages[pageSlug].scopes).forEach(([, { notebook }]) => {
70
+ var _a;
71
+ Object.entries((_a = state.pages[pageSlug]) === null || _a === void 0 ? void 0 : _a.scopes).forEach(([, { notebook }]) => {
70
72
  notebook.clear();
71
73
  });
72
74
  }, [state]);
@@ -74,7 +76,8 @@ export function useExecutionScope({ clearOutputsOnExecute = false, } = {}) {
74
76
  * resetAll resets all cells in all notebooks for a given rendering
75
77
  */
76
78
  const resetAll = useCallback((pageSlug) => {
77
- Object.entries(state.pages[pageSlug].scopes).forEach(([notebookSlug, { notebook, session }]) => {
79
+ var _a;
80
+ Object.entries((_a = state.pages[pageSlug]) === null || _a === void 0 ? void 0 : _a.scopes).forEach(([notebookSlug, { notebook, session }]) => {
78
81
  busy.setNotebook(pageSlug, notebookSlug, notebook.cells.map((c) => c.id), 'reset');
79
82
  setTimeout(() => {
80
83
  var _a;
@@ -99,7 +102,7 @@ export function useNotebookExecution(id, clearOutputsOnExecute = false) {
99
102
  const { config } = useThebeConfig();
100
103
  const busy = useBusyScope();
101
104
  if (context === undefined) {
102
- throw new Error('useExecuteScope must be used within a ExecuteScopeProvider');
105
+ throw new Error('useNotebookExecution must be used within a ExecuteScopeProvider');
103
106
  }
104
107
  const { state, dispatch, idkmap } = context;
105
108
  const target = (_a = idkmap[id]) !== null && _a !== void 0 ? _a : {};
@@ -117,16 +120,12 @@ export function useNotebookExecution(id, clearOutputsOnExecute = false) {
117
120
  let cell;
118
121
  let notebook;
119
122
  if (target && state.pages[pageSlug]) {
120
- notebook = state.pages[pageSlug].scopes[notebookSlug].notebook;
121
- if (!notebook)
122
- console.error('no notebook for', { pageSlug, notebookSlug, cellId });
123
- cell = notebook === null || notebook === void 0 ? void 0 : notebook.getCellById(cellId);
124
- if (!cell)
125
- console.error('no cell found', { pageSlug, notebookSlug, cellId });
123
+ notebook = selectNotebookForPage(state, pageSlug, notebookSlug);
124
+ if (notebook)
125
+ cell = notebook === null || notebook === void 0 ? void 0 : notebook.getCellById(cellId);
126
126
  }
127
127
  const execute = () => {
128
- var _a, _b;
129
- const nb = (_b = (_a = state.pages[pageSlug]) === null || _a === void 0 ? void 0 : _a.scopes[notebookSlug]) === null || _b === void 0 ? void 0 : _b.notebook;
128
+ const nb = selectNotebookForPage(state, pageSlug, notebookSlug);
130
129
  // set busy
131
130
  busy.setNotebook(pageSlug, notebookSlug, nb.cells.map((c) => c.id), 'execute');
132
131
  if (clearOutputsOnExecute)
@@ -153,21 +152,19 @@ export function useNotebookExecution(id, clearOutputsOnExecute = false) {
153
152
  *
154
153
  */
155
154
  const clear = useCallback(() => {
156
- var _a, _b;
157
- const nb = (_b = (_a = state.pages[pageSlug]) === null || _a === void 0 ? void 0 : _a.scopes[notebookSlug]) === null || _b === void 0 ? void 0 : _b.notebook;
155
+ const nb = selectNotebookForPage(state, pageSlug, notebookSlug);
158
156
  nb.clear();
159
157
  }, [state]);
160
158
  /**
161
159
  * resetAll resets all cells in all notebooks for a given rendering
162
160
  */
163
161
  const reset = useCallback(() => {
164
- var _a, _b;
165
- const { notebook: nb, session } = (_b = (_a = state.pages[pageSlug]) === null || _a === void 0 ? void 0 : _a.scopes[notebookSlug]) !== null && _b !== void 0 ? _b : {};
162
+ const nb = selectNotebookForPage(state, pageSlug, notebookSlug);
166
163
  busy.setNotebook(pageSlug, notebookSlug, nb.cells.map((c) => c.id), 'reset');
167
164
  setTimeout(() => {
168
- var _a;
165
+ var _a, _b;
169
166
  nb.reset();
170
- (_a = session === null || session === void 0 ? void 0 : session.kernel) === null || _a === void 0 ? void 0 : _a.restart().finally(() => {
167
+ (_b = (_a = nb.session) === null || _a === void 0 ? void 0 : _a.kernel) === null || _b === void 0 ? void 0 : _b.restart().finally(() => {
171
168
  busy.clearNotebook(pageSlug, notebookSlug, 'reset');
172
169
  });
173
170
  }, 300);
@@ -195,7 +192,7 @@ export function useCellExecution(id) {
195
192
  const busy = useBusyScope();
196
193
  const context = React.useContext(ExecuteScopeContext);
197
194
  if (context === undefined) {
198
- throw new Error('useExecuteScope must be used within a ExecuteScopeProvider');
195
+ throw new Error('useCellExecution must be used within a ExecuteScopeProvider');
199
196
  }
200
197
  const { state, idkmap } = context;
201
198
  const target = (_a = idkmap[id]) !== null && _a !== void 0 ? _a : {};
@@ -203,12 +200,9 @@ export function useCellExecution(id) {
203
200
  let cell;
204
201
  let notebook;
205
202
  if (target && state.pages[pageSlug]) {
206
- notebook = state.pages[pageSlug].scopes[notebookSlug].notebook;
207
- if (!notebook)
208
- console.error('no notebook for', { pageSlug, notebookSlug, cellId });
209
- cell = notebook === null || notebook === void 0 ? void 0 : notebook.getCellById(cellId);
210
- if (!cell)
211
- console.error('no cell found', { pageSlug, notebookSlug, cellId });
203
+ notebook = selectNotebookForPage(state, pageSlug, notebookSlug);
204
+ if (notebook)
205
+ cell = notebook === null || notebook === void 0 ? void 0 : notebook.getCellById(cellId);
212
206
  }
213
207
  const ready = (_b = context.state.pages[context.slug]) === null || _b === void 0 ? void 0 : _b.ready;
214
208
  const kind = (_d = (_c = context.state.pages[context.slug]) === null || _c === void 0 ? void 0 : _c.kind) !== null && _d !== void 0 ? _d : SourceFileKind.Article;
@@ -1 +1 @@
1
- {"version":3,"file":"leaf.d.ts","sourceRoot":"","sources":["../../../src/execute/leaf.tsx"],"names":[],"mappings":";AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAO3D,wBAAgB,YAAY,CAAC,EAC3B,IAAI,EACJ,GAAG,EACH,QAAQ,GACT,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,kDAkBA;AAED,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,YAAY,EACZ,MAAM,EACN,KAAK,EACL,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,QAAQ,CAAC;IACjB,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,QA8CA;AAED,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,YAAY,EACZ,KAAK,EACL,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,QAoEA;AAED,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,QA4BA"}
1
+ {"version":3,"file":"leaf.d.ts","sourceRoot":"","sources":["../../../src/execute/leaf.tsx"],"names":[],"mappings":";AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAW3D,wBAAgB,YAAY,CAAC,EAC3B,IAAI,EACJ,GAAG,EACH,QAAQ,GACT,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,kDAkBA;AAED,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,YAAY,EACZ,MAAM,EACN,KAAK,EACL,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,QAAQ,CAAC;IACjB,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,QA8CA;AAED,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,YAAY,EACZ,KAAK,EACL,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,QAoEA;AAED,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,QA4BA"}
@@ -2,7 +2,7 @@ import { jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useEffect, useRef } from 'react';
3
3
  import { useThebeLoader, useThebeConfig, useThebeServer } from 'thebe-react';
4
4
  import { notebookFromMdast } from './utils';
5
- import { selectAreAllNotebookScopesBuilt, selectAreAllSessionsStarted } from './selectors';
5
+ import { selectAreAllNotebookScopesBuilt, selectAreAllSessionsStarted, selectNotebookForPage, } from './selectors';
6
6
  import { useFetchMdast } from 'myst-to-react';
7
7
  export function MdastFetcher({ slug, url, dispatch, }) {
8
8
  const { data, error } = useFetchMdast({ remote: true, dataUrl: `${url}.json` });
@@ -79,8 +79,7 @@ export function SessionStarter({ pageSlug, notebookSlug, state, dispatch, }) {
79
79
  console.debug(`reconnected to session for ${pageSlug}/${notebookSlug}`, sesh);
80
80
  console.debug('restarting session', sesh);
81
81
  (_a = sesh.kernel) === null || _a === void 0 ? void 0 : _a.restart().then(() => {
82
- var _a;
83
- const notebook = (_a = state.pages[pageSlug]) === null || _a === void 0 ? void 0 : _a.scopes[notebookSlug].notebook;
82
+ const notebook = selectNotebookForPage(state, pageSlug, notebookSlug);
84
83
  notebook.attachSession(sesh);
85
84
  dispatch({ type: 'ADD_SESSION', payload: { pageSlug, notebookSlug, session: sesh } });
86
85
  });
@@ -90,7 +89,6 @@ export function SessionStarter({ pageSlug, notebookSlug, state, dispatch, }) {
90
89
  server
91
90
  .startNewSession(scope.rendermime, Object.assign(Object.assign({}, config === null || config === void 0 ? void 0 : config.kernels), { name: `${pageSlug}-${notebookSlug}.ipynb`, path }))
92
91
  .then((sesh) => {
93
- var _a;
94
92
  if (sesh == null) {
95
93
  server === null || server === void 0 ? void 0 : server.getKernelSpecs().then((specs) => {
96
94
  console.error(`Could not start session for ${pageSlug} ${notebookSlug}`);
@@ -99,7 +97,7 @@ export function SessionStarter({ pageSlug, notebookSlug, state, dispatch, }) {
99
97
  return;
100
98
  }
101
99
  console.debug(`session started for ${pageSlug}/${notebookSlug}`, sesh);
102
- const notebook = (_a = state.pages[pageSlug]) === null || _a === void 0 ? void 0 : _a.scopes[notebookSlug].notebook;
100
+ const notebook = selectNotebookForPage(state, pageSlug, notebookSlug);
103
101
  notebook.attachSession(sesh);
104
102
  dispatch({ type: 'ADD_SESSION', payload: { pageSlug, notebookSlug, session: sesh } });
105
103
  });
@@ -12,6 +12,7 @@ var __rest = (this && this.__rest) || function (s, e) {
12
12
  import { SourceFileKind } from 'myst-common';
13
13
  import { isAddMdastPayload, isAddNotebookPayload, isAddSessionPayload, isBuildStatusPayload, isNavigatePayload, isSlugPayload, } from './actions';
14
14
  export function reducer(state, action) {
15
+ var _a;
15
16
  switch (action.type) {
16
17
  case 'NAVIGATE': {
17
18
  if (!isNavigatePayload(action.payload)) {
@@ -76,7 +77,7 @@ export function reducer(state, action) {
76
77
  if (!state.builds[slug])
77
78
  return state;
78
79
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
79
- const _a = state.builds, _b = slug, _ = _a[_b], builds = __rest(_a, [typeof _b === "symbol" ? _b : _b + ""]);
80
+ const _b = state.builds, _c = slug, _ = _b[_c], builds = __rest(_b, [typeof _c === "symbol" ? _c : _c + ""]);
80
81
  return Object.assign(Object.assign({}, state), { builds });
81
82
  }
82
83
  case 'SET_RENDERING_READY': {
@@ -88,7 +89,7 @@ export function reducer(state, action) {
88
89
  if (state.pages[slug].ready)
89
90
  return state;
90
91
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
91
- const _c = state.builds, _d = slug, _ = _c[_d], builds = __rest(_c, [typeof _d === "symbol" ? _d : _d + ""]);
92
+ const _d = state.builds, _e = slug, _ = _d[_e], builds = __rest(_d, [typeof _e === "symbol" ? _e : _e + ""]);
92
93
  const newState = Object.assign(Object.assign({}, state), { builds, pages: Object.assign(Object.assign({}, state.pages), { [slug]: Object.assign(Object.assign({}, state.pages[slug]), { ready: true }) }) });
93
94
  return newState;
94
95
  }
@@ -121,7 +122,7 @@ export function reducer(state, action) {
121
122
  console.error(state, action.payload);
122
123
  throw new Error('Trying to add session when there is no rendering state');
123
124
  }
124
- if (state.pages[pageSlug].scopes[notebookSlug].session) {
125
+ if ((_a = state.pages[pageSlug].scopes[notebookSlug]) === null || _a === void 0 ? void 0 : _a.session) {
125
126
  console.warn('Trying to add session scope when rendering already has one', action.payload);
126
127
  return state;
127
128
  }
@@ -1,4 +1,8 @@
1
1
  import type { BuildStatus, ExecuteScopeState } from './types';
2
+ export declare function selectScopeForPage(state: ExecuteScopeState, pageSlug: string): {
3
+ [notebookSlug: string]: import("./types").ExecutionScope;
4
+ };
5
+ export declare function selectNotebookForPage(state: ExecuteScopeState, pageSlug: string, notebookSlug: string): import("thebe-core/dist/types/notebook").default;
2
6
  export declare function selectIsComputable(state: ExecuteScopeState, slug: string): boolean;
3
7
  export declare function selectAreExecutionScopesReady(state: ExecuteScopeState, slug: string): boolean;
4
8
  export declare function selectAreExecutionScopesBuilding(state: ExecuteScopeState, slug: string): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"selectors.d.ts","sourceRoot":"","sources":["../../../src/execute/selectors.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE9D,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAExE;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAEnF;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAEtF;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,yBAEhF;AAQD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,iBAAiB;UAKpD,MAAM;SACP,MAAM;IAclB;AAsBD,eAAO,MAAM,2BAA2B,UAlBvB,iBAAiB,KAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAkBS,CAAC;AACzF,eAAO,MAAM,qBAAqB,UAnBjB,iBAAiB,KAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAmBC,CAAC;AAEjF,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAEnF;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAGrF;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAIjF;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,iBAAiB,EACxB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,YAGrB"}
1
+ {"version":3,"file":"selectors.d.ts","sourceRoot":"","sources":["../../../src/execute/selectors.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE9D,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM;;EAE5E;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,iBAAiB,EACxB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,oDAGrB;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAExE;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAEnF;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAEtF;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,yBAEhF;AAQD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,iBAAiB;UAKpD,MAAM;SACP,MAAM;IAclB;AAsBD,eAAO,MAAM,2BAA2B,UAlBvB,iBAAiB,KAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAkBS,CAAC;AACzF,eAAO,MAAM,qBAAqB,UAnBjB,iBAAiB,KAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAmBC,CAAC;AAEjF,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAEnF;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAGrF;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAIjF;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,iBAAiB,EACxB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,YAGrB"}
@@ -1,4 +1,12 @@
1
1
  import { SourceFileKind } from 'myst-common';
2
+ export function selectScopeForPage(state, pageSlug) {
3
+ var _a, _b;
4
+ return (_b = (_a = state.pages[pageSlug]) === null || _a === void 0 ? void 0 : _a.scopes) !== null && _b !== void 0 ? _b : {};
5
+ }
6
+ export function selectNotebookForPage(state, pageSlug, notebookSlug) {
7
+ var _a, _b;
8
+ return (_b = (_a = state.pages[pageSlug]) === null || _a === void 0 ? void 0 : _a.scopes[notebookSlug]) === null || _b === void 0 ? void 0 : _b.notebook;
9
+ }
2
10
  export function selectIsComputable(state, slug) {
3
11
  var _a, _b;
4
12
  return (_b = (_a = state.pages[slug]) === null || _a === void 0 ? void 0 : _a.computable) !== null && _b !== void 0 ? _b : false;
@@ -1 +1 @@
1
- {"version":3,"file":"embed.d.ts","sourceRoot":"","sources":["../../src/embed.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAoD/D,wBAAgB,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,2CAajE"}
1
+ {"version":3,"file":"embed.d.ts","sourceRoot":"","sources":["../../src/embed.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAwD/D,wBAAgB,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,2CAajE"}
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/execute/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,KAAK,EAAE,UAAU,EAA0C,MAAM,YAAY,CAAC;AAGrF,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,wBAAgB,iBAAiB,CAAC,EAChC,qBAA6B,GAC9B,GAAE;IAAE,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAAO;;kBAUR,MAAM;yBAsD1B,MAAM;yBAYN,MAAM;oBAxDI,MAAM;;;;;EAgF9B;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,OAAO,EAAE,qBAAqB,UAAQ;;;;;;;;;;;;;;;EA4G9E;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,OAAO;;;;;;;;;;EAiE3C;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,OAAO;;;;EAc/C;AAED,wBAAgB,iBAAiB,YAOhC"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/execute/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,KAAK,EAAE,UAAU,EAA0C,MAAM,YAAY,CAAC;AAGrF,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAG7C,wBAAgB,iBAAiB,CAAC,EAChC,qBAA6B,GAC9B,GAAE;IAAE,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAAO;;kBAUR,MAAM;yBAsD1B,MAAM;yBAYN,MAAM;oBAxDI,MAAM;;;;;EAgF9B;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,OAAO,EAAE,qBAAqB,UAAQ;;;;;;;;;;;;;;;EA2G9E;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,OAAO;;;;;;;;;;EA+D3C;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,OAAO;;;;EAc/C;AAED,wBAAgB,iBAAiB,YAOhC"}
@@ -1 +1 @@
1
- {"version":3,"file":"leaf.d.ts","sourceRoot":"","sources":["../../../src/execute/leaf.tsx"],"names":[],"mappings":";AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAO3D,wBAAgB,YAAY,CAAC,EAC3B,IAAI,EACJ,GAAG,EACH,QAAQ,GACT,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,kDAkBA;AAED,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,YAAY,EACZ,MAAM,EACN,KAAK,EACL,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,QAAQ,CAAC;IACjB,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,QA8CA;AAED,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,YAAY,EACZ,KAAK,EACL,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,QAoEA;AAED,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,QA4BA"}
1
+ {"version":3,"file":"leaf.d.ts","sourceRoot":"","sources":["../../../src/execute/leaf.tsx"],"names":[],"mappings":";AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAW3D,wBAAgB,YAAY,CAAC,EAC3B,IAAI,EACJ,GAAG,EACH,QAAQ,GACT,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,kDAkBA;AAED,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,YAAY,EACZ,MAAM,EACN,KAAK,EACL,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,QAAQ,CAAC;IACjB,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,QA8CA;AAED,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,YAAY,EACZ,KAAK,EACL,QAAQ,GACT,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,QAoEA;AAED,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,iBAAiB,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;CAC9C,QA4BA"}
@@ -1,4 +1,8 @@
1
1
  import type { BuildStatus, ExecuteScopeState } from './types';
2
+ export declare function selectScopeForPage(state: ExecuteScopeState, pageSlug: string): {
3
+ [notebookSlug: string]: import("./types").ExecutionScope;
4
+ };
5
+ export declare function selectNotebookForPage(state: ExecuteScopeState, pageSlug: string, notebookSlug: string): import("thebe-core/dist/types/notebook").default;
2
6
  export declare function selectIsComputable(state: ExecuteScopeState, slug: string): boolean;
3
7
  export declare function selectAreExecutionScopesReady(state: ExecuteScopeState, slug: string): boolean;
4
8
  export declare function selectAreExecutionScopesBuilding(state: ExecuteScopeState, slug: string): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"selectors.d.ts","sourceRoot":"","sources":["../../../src/execute/selectors.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE9D,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAExE;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAEnF;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAEtF;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,yBAEhF;AAQD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,iBAAiB;UAKpD,MAAM;SACP,MAAM;IAclB;AAsBD,eAAO,MAAM,2BAA2B,UAlBvB,iBAAiB,KAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAkBS,CAAC;AACzF,eAAO,MAAM,qBAAqB,UAnBjB,iBAAiB,KAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAmBC,CAAC;AAEjF,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAEnF;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAGrF;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAIjF;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,iBAAiB,EACxB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,YAGrB"}
1
+ {"version":3,"file":"selectors.d.ts","sourceRoot":"","sources":["../../../src/execute/selectors.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE9D,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM;;EAE5E;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,iBAAiB,EACxB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,oDAGrB;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAExE;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAEnF;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAEtF;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,yBAEhF;AAQD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,iBAAiB;UAKpD,MAAM;SACP,MAAM;IAclB;AAsBD,eAAO,MAAM,2BAA2B,UAlBvB,iBAAiB,KAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAkBS,CAAC;AACzF,eAAO,MAAM,qBAAqB,UAnBjB,iBAAiB,KAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,EAmBC,CAAC;AAEjF,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAEnF;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAGrF;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,WAIjF;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,iBAAiB,EACxB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,YAGrB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@myst-theme/jupyter",
3
- "version": "0.3.5",
3
+ "version": "0.3.7",
4
4
  "main": "dist/cjs/index.js",
5
5
  "module": "dist/esm/index.js",
6
6
  "types": "dist/types/index.d.ts",
@@ -23,7 +23,7 @@
23
23
  "dependencies": {
24
24
  "@headlessui/react": "^1.7.15",
25
25
  "@heroicons/react": "^2.0.18",
26
- "@myst-theme/providers": "^0.3.5",
26
+ "@myst-theme/providers": "^0.3.7",
27
27
  "ansi-to-react": "^6.1.6",
28
28
  "buffer": "^6.0.3",
29
29
  "classnames": "^2.3.2",
@@ -31,7 +31,7 @@
31
31
  "myst-config": "^1.0.0",
32
32
  "myst-frontmatter": "^1.0.0",
33
33
  "myst-spec": "^0.0.4",
34
- "myst-to-react": "^0.3.5",
34
+ "myst-to-react": "^0.3.7",
35
35
  "nanoid": "^4.0.2",
36
36
  "nbtx": "^0.2.3",
37
37
  "react-syntax-highlighter": "^15.5.0",