@myst-theme/jupyter 0.5.7 → 0.5.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (317) hide show
  1. package/dist/BinderBadge.d.ts.map +1 -0
  2. package/dist/ClientOnly.d.ts.map +1 -0
  3. package/dist/ConnectionStatusTray.d.ts +4 -0
  4. package/dist/ConnectionStatusTray.d.ts.map +1 -0
  5. package/dist/ConnectionStatusTray.js +54 -0
  6. package/dist/ErrorTray.d.ts.map +1 -0
  7. package/dist/{esm/ErrorTray.js → ErrorTray.js} +1 -1
  8. package/dist/components.d.ts.map +1 -0
  9. package/dist/{esm/components.js → components.js} +1 -1
  10. package/dist/controls/ArticleCellControls.d.ts.map +1 -0
  11. package/dist/{esm/controls → controls}/ArticleCellControls.js +7 -3
  12. package/dist/{cjs/controls → controls}/Buttons.d.ts +4 -0
  13. package/dist/{cjs/controls → controls}/Buttons.d.ts.map +1 -1
  14. package/dist/{esm/controls → controls}/Buttons.js +67 -11
  15. package/dist/controls/NotebookCellControls.d.ts.map +1 -0
  16. package/dist/{esm/controls → controls}/NotebookCellControls.js +2 -2
  17. package/dist/controls/NotebookToolbar.d.ts.map +1 -0
  18. package/dist/{esm/controls → controls}/NotebookToolbar.js +9 -5
  19. package/dist/controls/Spinner.d.ts.map +1 -0
  20. package/dist/controls/index.d.ts +5 -0
  21. package/dist/controls/index.d.ts.map +1 -0
  22. package/dist/controls/index.js +4 -0
  23. package/dist/convertImages.d.ts.map +1 -0
  24. package/dist/decoration.d.ts.map +1 -0
  25. package/dist/{esm/decoration.js → decoration.js} +2 -2
  26. package/dist/embed.d.ts.map +1 -0
  27. package/dist/{esm/embed.js → embed.js} +1 -1
  28. package/dist/error.d.ts.map +1 -0
  29. package/dist/{esm/error.js → error.js} +2 -2
  30. package/dist/{types/execute → execute}/actions.d.ts +1 -1
  31. package/dist/execute/actions.d.ts.map +1 -0
  32. package/dist/execute/busy.d.ts.map +1 -0
  33. package/dist/{cjs/execute → execute}/hooks.d.ts +7 -7
  34. package/dist/execute/hooks.d.ts.map +1 -0
  35. package/dist/{esm/execute → execute}/hooks.js +3 -3
  36. package/dist/execute/index.d.ts +7 -0
  37. package/dist/execute/index.d.ts.map +1 -0
  38. package/dist/execute/index.js +6 -0
  39. package/dist/{types/execute → execute}/leaf.d.ts +3 -3
  40. package/dist/execute/leaf.d.ts.map +1 -0
  41. package/dist/{esm/execute → execute}/leaf.js +2 -2
  42. package/dist/{types/execute → execute}/provider.d.ts +2 -2
  43. package/dist/execute/provider.d.ts.map +1 -0
  44. package/dist/{esm/execute → execute}/provider.js +4 -4
  45. package/dist/execute/reducer.d.ts +4 -0
  46. package/dist/execute/reducer.d.ts.map +1 -0
  47. package/dist/{esm/execute → execute}/reducer.js +1 -1
  48. package/dist/{cjs/execute → execute}/selectors.d.ts +3 -3
  49. package/dist/execute/selectors.d.ts.map +1 -0
  50. package/dist/execute/types.d.ts.map +1 -0
  51. package/dist/{esm/execute → execute}/utils.d.ts +2 -2
  52. package/dist/execute/utils.d.ts.map +1 -0
  53. package/dist/figure.d.ts.map +1 -0
  54. package/dist/{esm/figure.js → figure.js} +1 -1
  55. package/dist/hooks.d.ts.map +1 -0
  56. package/dist/{esm/hooks.js → hooks.js} +1 -1
  57. package/dist/index.d.ts +16 -0
  58. package/dist/index.d.ts.map +1 -0
  59. package/dist/index.js +15 -0
  60. package/dist/jupyter.d.ts.map +1 -0
  61. package/dist/{esm/jupyter.js → jupyter.js} +4 -4
  62. package/dist/output.d.ts.map +1 -0
  63. package/dist/{esm/output.js → output.js} +4 -4
  64. package/dist/providers.d.ts +32 -0
  65. package/dist/providers.d.ts.map +1 -0
  66. package/dist/providers.js +38 -0
  67. package/dist/safe.d.ts.map +1 -0
  68. package/dist/{esm/safe.js → safe.js} +3 -3
  69. package/dist/stream.d.ts.map +1 -0
  70. package/dist/{esm/stream.js → stream.js} +2 -2
  71. package/dist/utils.d.ts.map +1 -0
  72. package/dist/{esm/utils.js → utils.js} +1 -1
  73. package/package.json +18 -17
  74. package/dist/cjs/BinderBadge.d.ts.map +0 -1
  75. package/dist/cjs/BinderBadge.js +0 -13
  76. package/dist/cjs/ClientOnly.d.ts.map +0 -1
  77. package/dist/cjs/ClientOnly.js +0 -13
  78. package/dist/cjs/ConnectionStatusTray.d.ts +0 -2
  79. package/dist/cjs/ConnectionStatusTray.d.ts.map +0 -1
  80. package/dist/cjs/ConnectionStatusTray.js +0 -56
  81. package/dist/cjs/ErrorTray.d.ts.map +0 -1
  82. package/dist/cjs/ErrorTray.js +0 -42
  83. package/dist/cjs/components.d.ts.map +0 -1
  84. package/dist/cjs/components.js +0 -41
  85. package/dist/cjs/controls/ArticleCellControls.d.ts.map +0 -1
  86. package/dist/cjs/controls/ArticleCellControls.js +0 -33
  87. package/dist/cjs/controls/Buttons.js +0 -70
  88. package/dist/cjs/controls/NotebookCellControls.d.ts.map +0 -1
  89. package/dist/cjs/controls/NotebookCellControls.js +0 -27
  90. package/dist/cjs/controls/NotebookToolbar.d.ts.map +0 -1
  91. package/dist/cjs/controls/NotebookToolbar.js +0 -47
  92. package/dist/cjs/controls/Spinner.d.ts.map +0 -1
  93. package/dist/cjs/controls/Spinner.js +0 -8
  94. package/dist/cjs/controls/index.d.ts +0 -5
  95. package/dist/cjs/controls/index.d.ts.map +0 -1
  96. package/dist/cjs/controls/index.js +0 -20
  97. package/dist/cjs/convertImages.d.ts.map +0 -1
  98. package/dist/cjs/convertImages.js +0 -70
  99. package/dist/cjs/decoration.d.ts.map +0 -1
  100. package/dist/cjs/decoration.js +0 -40
  101. package/dist/cjs/embed.d.ts.map +0 -1
  102. package/dist/cjs/embed.js +0 -14
  103. package/dist/cjs/error.d.ts.map +0 -1
  104. package/dist/cjs/error.js +0 -15
  105. package/dist/cjs/execute/actions.d.ts +0 -56
  106. package/dist/cjs/execute/actions.d.ts.map +0 -1
  107. package/dist/cjs/execute/actions.js +0 -50
  108. package/dist/cjs/execute/busy.d.ts.map +0 -1
  109. package/dist/cjs/execute/busy.js +0 -259
  110. package/dist/cjs/execute/hooks.d.ts.map +0 -1
  111. package/dist/cjs/execute/hooks.js +0 -311
  112. package/dist/cjs/execute/index.d.ts +0 -7
  113. package/dist/cjs/execute/index.d.ts.map +0 -1
  114. package/dist/cjs/execute/index.js +0 -22
  115. package/dist/cjs/execute/leaf.d.ts +0 -27
  116. package/dist/cjs/execute/leaf.d.ts.map +0 -1
  117. package/dist/cjs/execute/leaf.js +0 -160
  118. package/dist/cjs/execute/provider.d.ts +0 -35
  119. package/dist/cjs/execute/provider.d.ts.map +0 -1
  120. package/dist/cjs/execute/provider.js +0 -129
  121. package/dist/cjs/execute/reducer.d.ts +0 -4
  122. package/dist/cjs/execute/reducer.d.ts.map +0 -1
  123. package/dist/cjs/execute/reducer.js +0 -138
  124. package/dist/cjs/execute/selectors.d.ts.map +0 -1
  125. package/dist/cjs/execute/selectors.js +0 -99
  126. package/dist/cjs/execute/types.d.ts.map +0 -1
  127. package/dist/cjs/execute/types.js +0 -2
  128. package/dist/cjs/execute/utils.d.ts +0 -23
  129. package/dist/cjs/execute/utils.d.ts.map +0 -1
  130. package/dist/cjs/execute/utils.js +0 -63
  131. package/dist/cjs/figure.d.ts.map +0 -1
  132. package/dist/cjs/figure.js +0 -20
  133. package/dist/cjs/hooks.d.ts.map +0 -1
  134. package/dist/cjs/hooks.js +0 -122
  135. package/dist/cjs/index.d.ts +0 -16
  136. package/dist/cjs/index.d.ts.map +0 -1
  137. package/dist/cjs/index.js +0 -31
  138. package/dist/cjs/jupyter.d.ts.map +0 -1
  139. package/dist/cjs/jupyter.js +0 -111
  140. package/dist/cjs/output.d.ts.map +0 -1
  141. package/dist/cjs/output.js +0 -67
  142. package/dist/cjs/providers.d.ts +0 -28
  143. package/dist/cjs/providers.d.ts.map +0 -1
  144. package/dist/cjs/providers.js +0 -44
  145. package/dist/cjs/safe.d.ts.map +0 -1
  146. package/dist/cjs/safe.js +0 -79
  147. package/dist/cjs/stream.d.ts.map +0 -1
  148. package/dist/cjs/stream.js +0 -13
  149. package/dist/cjs/utils.d.ts.map +0 -1
  150. package/dist/cjs/utils.js +0 -179
  151. package/dist/esm/BinderBadge.d.ts +0 -4
  152. package/dist/esm/BinderBadge.d.ts.map +0 -1
  153. package/dist/esm/ClientOnly.d.ts +0 -5
  154. package/dist/esm/ClientOnly.d.ts.map +0 -1
  155. package/dist/esm/ConnectionStatusTray.d.ts +0 -2
  156. package/dist/esm/ConnectionStatusTray.d.ts.map +0 -1
  157. package/dist/esm/ConnectionStatusTray.js +0 -52
  158. package/dist/esm/ErrorTray.d.ts +0 -5
  159. package/dist/esm/ErrorTray.d.ts.map +0 -1
  160. package/dist/esm/components.d.ts +0 -9
  161. package/dist/esm/components.d.ts.map +0 -1
  162. package/dist/esm/controls/ArticleCellControls.d.ts +0 -10
  163. package/dist/esm/controls/ArticleCellControls.d.ts.map +0 -1
  164. package/dist/esm/controls/Buttons.d.ts +0 -47
  165. package/dist/esm/controls/Buttons.d.ts.map +0 -1
  166. package/dist/esm/controls/NotebookCellControls.d.ts +0 -10
  167. package/dist/esm/controls/NotebookCellControls.d.ts.map +0 -1
  168. package/dist/esm/controls/NotebookToolbar.d.ts +0 -4
  169. package/dist/esm/controls/NotebookToolbar.d.ts.map +0 -1
  170. package/dist/esm/controls/Spinner.d.ts +0 -4
  171. package/dist/esm/controls/Spinner.d.ts.map +0 -1
  172. package/dist/esm/controls/index.d.ts +0 -5
  173. package/dist/esm/controls/index.d.ts.map +0 -1
  174. package/dist/esm/controls/index.js +0 -4
  175. package/dist/esm/convertImages.d.ts +0 -3
  176. package/dist/esm/convertImages.d.ts.map +0 -1
  177. package/dist/esm/decoration.d.ts +0 -11
  178. package/dist/esm/decoration.d.ts.map +0 -1
  179. package/dist/esm/embed.d.ts +0 -5
  180. package/dist/esm/embed.d.ts.map +0 -1
  181. package/dist/esm/error.d.ts +0 -5
  182. package/dist/esm/error.d.ts.map +0 -1
  183. package/dist/esm/execute/actions.d.ts +0 -56
  184. package/dist/esm/execute/actions.d.ts.map +0 -1
  185. package/dist/esm/execute/busy.d.ts +0 -96
  186. package/dist/esm/execute/busy.d.ts.map +0 -1
  187. package/dist/esm/execute/hooks.d.ts +0 -65
  188. package/dist/esm/execute/hooks.d.ts.map +0 -1
  189. package/dist/esm/execute/index.d.ts +0 -7
  190. package/dist/esm/execute/index.d.ts.map +0 -1
  191. package/dist/esm/execute/index.js +0 -6
  192. package/dist/esm/execute/leaf.d.ts +0 -27
  193. package/dist/esm/execute/leaf.d.ts.map +0 -1
  194. package/dist/esm/execute/provider.d.ts +0 -35
  195. package/dist/esm/execute/provider.d.ts.map +0 -1
  196. package/dist/esm/execute/reducer.d.ts +0 -4
  197. package/dist/esm/execute/reducer.d.ts.map +0 -1
  198. package/dist/esm/execute/selectors.d.ts +0 -27
  199. package/dist/esm/execute/selectors.d.ts.map +0 -1
  200. package/dist/esm/execute/types.d.ts +0 -50
  201. package/dist/esm/execute/types.d.ts.map +0 -1
  202. package/dist/esm/execute/utils.d.ts.map +0 -1
  203. package/dist/esm/figure.d.ts +0 -5
  204. package/dist/esm/figure.d.ts.map +0 -1
  205. package/dist/esm/hooks.d.ts +0 -19
  206. package/dist/esm/hooks.d.ts.map +0 -1
  207. package/dist/esm/index.d.ts +0 -16
  208. package/dist/esm/index.d.ts.map +0 -1
  209. package/dist/esm/index.js +0 -15
  210. package/dist/esm/jupyter.d.ts +0 -7
  211. package/dist/esm/jupyter.d.ts.map +0 -1
  212. package/dist/esm/output.d.ts +0 -15
  213. package/dist/esm/output.d.ts.map +0 -1
  214. package/dist/esm/providers.d.ts +0 -28
  215. package/dist/esm/providers.d.ts.map +0 -1
  216. package/dist/esm/providers.js +0 -35
  217. package/dist/esm/safe.d.ts +0 -6
  218. package/dist/esm/safe.d.ts.map +0 -1
  219. package/dist/esm/stream.d.ts +0 -5
  220. package/dist/esm/stream.d.ts.map +0 -1
  221. package/dist/esm/utils.d.ts +0 -8
  222. package/dist/esm/utils.d.ts.map +0 -1
  223. package/dist/types/BinderBadge.d.ts +0 -4
  224. package/dist/types/BinderBadge.d.ts.map +0 -1
  225. package/dist/types/ClientOnly.d.ts +0 -5
  226. package/dist/types/ClientOnly.d.ts.map +0 -1
  227. package/dist/types/ConnectionStatusTray.d.ts +0 -2
  228. package/dist/types/ConnectionStatusTray.d.ts.map +0 -1
  229. package/dist/types/ErrorTray.d.ts +0 -5
  230. package/dist/types/ErrorTray.d.ts.map +0 -1
  231. package/dist/types/components.d.ts +0 -9
  232. package/dist/types/components.d.ts.map +0 -1
  233. package/dist/types/controls/ArticleCellControls.d.ts +0 -10
  234. package/dist/types/controls/ArticleCellControls.d.ts.map +0 -1
  235. package/dist/types/controls/Buttons.d.ts +0 -47
  236. package/dist/types/controls/Buttons.d.ts.map +0 -1
  237. package/dist/types/controls/NotebookCellControls.d.ts +0 -10
  238. package/dist/types/controls/NotebookCellControls.d.ts.map +0 -1
  239. package/dist/types/controls/NotebookToolbar.d.ts +0 -4
  240. package/dist/types/controls/NotebookToolbar.d.ts.map +0 -1
  241. package/dist/types/controls/Spinner.d.ts +0 -4
  242. package/dist/types/controls/Spinner.d.ts.map +0 -1
  243. package/dist/types/controls/index.d.ts +0 -5
  244. package/dist/types/controls/index.d.ts.map +0 -1
  245. package/dist/types/convertImages.d.ts +0 -3
  246. package/dist/types/convertImages.d.ts.map +0 -1
  247. package/dist/types/decoration.d.ts +0 -11
  248. package/dist/types/decoration.d.ts.map +0 -1
  249. package/dist/types/embed.d.ts +0 -5
  250. package/dist/types/embed.d.ts.map +0 -1
  251. package/dist/types/error.d.ts +0 -5
  252. package/dist/types/error.d.ts.map +0 -1
  253. package/dist/types/execute/actions.d.ts.map +0 -1
  254. package/dist/types/execute/busy.d.ts +0 -96
  255. package/dist/types/execute/busy.d.ts.map +0 -1
  256. package/dist/types/execute/hooks.d.ts +0 -65
  257. package/dist/types/execute/hooks.d.ts.map +0 -1
  258. package/dist/types/execute/index.d.ts +0 -7
  259. package/dist/types/execute/index.d.ts.map +0 -1
  260. package/dist/types/execute/leaf.d.ts.map +0 -1
  261. package/dist/types/execute/provider.d.ts.map +0 -1
  262. package/dist/types/execute/reducer.d.ts +0 -4
  263. package/dist/types/execute/reducer.d.ts.map +0 -1
  264. package/dist/types/execute/selectors.d.ts +0 -27
  265. package/dist/types/execute/selectors.d.ts.map +0 -1
  266. package/dist/types/execute/types.d.ts +0 -50
  267. package/dist/types/execute/types.d.ts.map +0 -1
  268. package/dist/types/execute/utils.d.ts +0 -23
  269. package/dist/types/execute/utils.d.ts.map +0 -1
  270. package/dist/types/figure.d.ts +0 -5
  271. package/dist/types/figure.d.ts.map +0 -1
  272. package/dist/types/hooks.d.ts +0 -19
  273. package/dist/types/hooks.d.ts.map +0 -1
  274. package/dist/types/index.d.ts +0 -16
  275. package/dist/types/index.d.ts.map +0 -1
  276. package/dist/types/jupyter.d.ts +0 -7
  277. package/dist/types/jupyter.d.ts.map +0 -1
  278. package/dist/types/output.d.ts +0 -15
  279. package/dist/types/output.d.ts.map +0 -1
  280. package/dist/types/providers.d.ts +0 -28
  281. package/dist/types/providers.d.ts.map +0 -1
  282. package/dist/types/safe.d.ts +0 -6
  283. package/dist/types/safe.d.ts.map +0 -1
  284. package/dist/types/stream.d.ts +0 -5
  285. package/dist/types/stream.d.ts.map +0 -1
  286. package/dist/types/utils.d.ts +0 -8
  287. package/dist/types/utils.d.ts.map +0 -1
  288. /package/dist/{cjs/BinderBadge.d.ts → BinderBadge.d.ts} +0 -0
  289. /package/dist/{esm/BinderBadge.js → BinderBadge.js} +0 -0
  290. /package/dist/{cjs/ClientOnly.d.ts → ClientOnly.d.ts} +0 -0
  291. /package/dist/{esm/ClientOnly.js → ClientOnly.js} +0 -0
  292. /package/dist/{cjs/ErrorTray.d.ts → ErrorTray.d.ts} +0 -0
  293. /package/dist/{cjs/components.d.ts → components.d.ts} +0 -0
  294. /package/dist/{cjs/controls → controls}/ArticleCellControls.d.ts +0 -0
  295. /package/dist/{cjs/controls → controls}/NotebookCellControls.d.ts +0 -0
  296. /package/dist/{cjs/controls → controls}/NotebookToolbar.d.ts +0 -0
  297. /package/dist/{cjs/controls → controls}/Spinner.d.ts +0 -0
  298. /package/dist/{esm/controls → controls}/Spinner.js +0 -0
  299. /package/dist/{cjs/convertImages.d.ts → convertImages.d.ts} +0 -0
  300. /package/dist/{esm/convertImages.js → convertImages.js} +0 -0
  301. /package/dist/{cjs/decoration.d.ts → decoration.d.ts} +0 -0
  302. /package/dist/{cjs/embed.d.ts → embed.d.ts} +0 -0
  303. /package/dist/{cjs/error.d.ts → error.d.ts} +0 -0
  304. /package/dist/{esm/execute → execute}/actions.js +0 -0
  305. /package/dist/{cjs/execute → execute}/busy.d.ts +0 -0
  306. /package/dist/{esm/execute → execute}/busy.js +0 -0
  307. /package/dist/{esm/execute → execute}/selectors.js +0 -0
  308. /package/dist/{cjs/execute → execute}/types.d.ts +0 -0
  309. /package/dist/{esm/execute → execute}/types.js +0 -0
  310. /package/dist/{esm/execute → execute}/utils.js +0 -0
  311. /package/dist/{cjs/figure.d.ts → figure.d.ts} +0 -0
  312. /package/dist/{cjs/hooks.d.ts → hooks.d.ts} +0 -0
  313. /package/dist/{cjs/jupyter.d.ts → jupyter.d.ts} +0 -0
  314. /package/dist/{cjs/output.d.ts → output.d.ts} +0 -0
  315. /package/dist/{cjs/safe.d.ts → safe.d.ts} +0 -0
  316. /package/dist/{cjs/stream.d.ts → stream.d.ts} +0 -0
  317. /package/dist/{cjs/utils.d.ts → utils.d.ts} +0 -0
@@ -1,63 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.notebookFromMdast = void 0;
4
- /**
5
- * Use the mdast to create a ThebeNotebook from the mdast tree of a notebook.
6
- * This is intended to be used to create an independent ThebeNotebook instance
7
- * for each notebook in a rendering context.
8
- *
9
- * NOTE: there is no need to scope the keys at this point, as the ThebeNotebook
10
- * instance will be scoped to the render context. All underlying cells will be
11
- * identified by keys from the mdast - so there may be duplicate ids between different
12
- * notebook instances, but that is ok as they came from the same mdast which is readonly.
13
- *
14
- * @param core
15
- * @param config
16
- * @param pageSlug - slug identifying the render context used for key decoration
17
- * @param mdast - the notebook mdast
18
- * @param idkmap - map of scoped block keys to keys for code and output cells
19
- * @param rendermime
20
- * @returns
21
- */
22
- function notebookFromMdast(core, config, pageSlug, notebookSlug, mdast, idkmap, rendermime) {
23
- // note the notebooks slug is used as the notebook id, this means accross pages
24
- // mulitple notebooks with the same slug will be present but scoped to different pages
25
- // the busyScope mecahnism relies on the notebookSlug as id
26
- const notebook = new core.ThebeNotebook(notebookSlug, config, rendermime);
27
- // no metadata included in mdast yet
28
- //Object.assign(notebook.metadata, ipynb.metadata);
29
- notebook.cells = mdast.children.map((block) => {
30
- var _a, _b, _c;
31
- if (block.type !== 'block')
32
- console.warn(`Unexpected block type ${block.type}`);
33
- if (block.children.length == 2 && block.children[0].type === 'code') {
34
- const [codeCell, output] = block.children;
35
- // use the block.key to identify the cell but maintain a mapping
36
- // to allow code or output keys to look up cells and refs and idenifity
37
- // the cell in the correct notebook
38
- const target = {
39
- pageSlug,
40
- notebookSlug,
41
- cellId: block.key,
42
- };
43
- idkmap[block.key] = target; // can reference from block in notebook views
44
- idkmap[output.id] = target; // can reference from output in article views
45
- // include identifiers to enable lookup by (normalized) labels
46
- if (block.identifier)
47
- idkmap[block.identifier] = target;
48
- if (codeCell.identifier)
49
- idkmap[codeCell.identifier] = target;
50
- if (output.identifier)
51
- idkmap[output.identifier] = target;
52
- return new core.ThebeCodeCell(target.cellId, notebook.id, (_a = codeCell.value) !== null && _a !== void 0 ? _a : '', config, (_b = block.data) !== null && _b !== void 0 ? _b : {}, notebook.rendermime);
53
- }
54
- else {
55
- // assume content - concatenate it
56
- // TODO inject cell metadata
57
- const cell = new core.ThebeMarkdownCell(block.key, notebook.id, block.children.reduce((acc, child) => { var _a; return acc + '\n' + ((_a = child.value) !== null && _a !== void 0 ? _a : ''); }, ''), (_c = block.data) !== null && _c !== void 0 ? _c : {}, notebook.rendermime);
58
- return cell;
59
- }
60
- });
61
- return notebook;
62
- }
63
- exports.notebookFromMdast = notebookFromMdast;
@@ -1 +0,0 @@
1
- {"version":3,"file":"figure.d.ts","sourceRoot":"","sources":["../../src/figure.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAI/C,wBAAgB,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,2CAoBrD"}
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Figure = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const myst_spec_ext_1 = require("myst-spec-ext");
6
- const myst_to_react_1 = require("myst-to-react");
7
- const decoration_1 = require("./decoration");
8
- function Figure({ node }) {
9
- var _a, _b, _c, _d, _e, _f;
10
- const { container: Container } = myst_to_react_1.DEFAULT_RENDERERS;
11
- const isFromJupyer = ((_a = node.source) === null || _a === void 0 ? void 0 : _a.kind) === myst_spec_ext_1.SourceFileKind.Notebook;
12
- const output = (_b = node.children) === null || _b === void 0 ? void 0 : _b.find((child) => child.type === 'output');
13
- if (isFromJupyer && !!output) {
14
- const placeholder = (_c = node.children) === null || _c === void 0 ? void 0 : _c.find((child) => child.type === 'image' && child.placeholder);
15
- const others = (_d = node.children) === null || _d === void 0 ? void 0 : _d.filter((child) => !(child.type === 'image' && child.placeholder));
16
- return ((0, jsx_runtime_1.jsx)(decoration_1.OutputDecoration, { outputId: output.id, placeholder: placeholder, title: (_e = node.source) === null || _e === void 0 ? void 0 : _e.title, url: (_f = node.source) === null || _f === void 0 ? void 0 : _f.url, children: (0, jsx_runtime_1.jsx)(myst_to_react_1.MyST, { ast: others }) }, node.key));
17
- }
18
- return (0, jsx_runtime_1.jsx)(Container, { node: node });
19
- }
20
- exports.Figure = Figure;
@@ -1 +0,0 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/hooks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAIV,cAAc,EAEf,MAAM,MAAM,CAAC;AAId,UAAU,WAAW;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;CACjB;AA0BD,wBAAgB,cAAc,CAC5B,OAAO,CAAC,EAAE,MAAM,EAChB,GAAG,CAAC,EAAE,MAAM,GACX;IAAE,IAAI,CAAC,EAAE,WAAW,CAAC;IAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CAAE,CAQvC;AAuBD,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG;IACtE,IAAI,EAAE,cAAc,EAAE,GAAG,SAAS,CAAC;IACnC,KAAK,EAAE,GAAG,GAAG,SAAS,CAAC;CACxB,CAqCA;AAUD,MAAM,CAAC,OAAO,UAAU,aAAa;;;EAapC"}
package/dist/cjs/hooks.js DELETED
@@ -1,122 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.useFetchAnyTruncatedContent = exports.useLongContent = void 0;
16
- const immutable_1 = __importDefault(require("swr/immutable"));
17
- const nbtx_1 = require("nbtx");
18
- const react_1 = require("react");
19
- function fetcher(url) {
20
- return __awaiter(this, void 0, void 0, function* () {
21
- const resp = yield fetch(url);
22
- if (resp.status === 200) {
23
- const content = yield resp.text();
24
- if (url.endsWith('.json')) {
25
- // This is for backward compatibility, previously we saved as:
26
- // { content: string, content_type: string }
27
- // This is now directly saved as the content (e.g. an image, json, html, text, etc.)
28
- try {
29
- const data = JSON.parse(content);
30
- const keys = Object.keys(data);
31
- if (keys.length === 2 && keys.includes('content') && keys.includes('content_type')) {
32
- return data;
33
- }
34
- // pass
35
- }
36
- catch (error) {
37
- // pass
38
- }
39
- }
40
- return { content };
41
- }
42
- throw new Error(`Content returned with status ${resp.status}.`);
43
- });
44
- }
45
- function useLongContent(content, url) {
46
- if (typeof document === 'undefined') {
47
- // This is ONLY called on the server
48
- return url ? {} : { data: { content: content !== null && content !== void 0 ? content : '' } };
49
- }
50
- const { data, error } = (0, immutable_1.default)(url || null, fetcher);
51
- if (!url)
52
- return { data: { content: content !== null && content !== void 0 ? content : '' } };
53
- return { data, error };
54
- }
55
- exports.useLongContent = useLongContent;
56
- const arrayFetcher = (...urls) => {
57
- return Promise.all(urls.map((url) => fetcher(url[0])));
58
- };
59
- function shallowCloneOutputs(outputs) {
60
- return outputs.map((output) => {
61
- if ('data' in output && output.data) {
62
- const data = output.data;
63
- return Object.assign(Object.assign({}, output), { data: Object.entries(data).reduce((acc, [mimetype, payload]) => {
64
- return Object.assign(Object.assign({}, acc), { [mimetype]: Object.assign({}, payload) });
65
- }, {}) });
66
- }
67
- return Object.assign({}, output);
68
- });
69
- }
70
- function useFetchAnyTruncatedContent(outputs) {
71
- const itemsWithPaths = [];
72
- const updated = shallowCloneOutputs(outputs);
73
- (0, nbtx_1.walkOutputs)(updated, (obj) => {
74
- // images have paths, but we don't need to fetch them
75
- if ('content_type' in obj && obj.content_type.startsWith('image/'))
76
- return;
77
- if (obj.path) {
78
- itemsWithPaths.push(obj);
79
- }
80
- });
81
- const { data, error } = (0, immutable_1.default)(itemsWithPaths.map(({ path }) => path), arrayFetcher);
82
- data === null || data === void 0 ? void 0 : data.forEach(({ content }, idx) => {
83
- const obj = itemsWithPaths[idx];
84
- if ('text' in obj) {
85
- // stream
86
- obj.text = content;
87
- }
88
- else if ('traceback' in obj) {
89
- // error
90
- obj.traceback = content;
91
- }
92
- else {
93
- // mimeoutput
94
- obj.content = content;
95
- }
96
- obj.path = undefined;
97
- });
98
- return {
99
- data: itemsWithPaths.length === 0 || data ? updated : undefined,
100
- error,
101
- };
102
- }
103
- exports.useFetchAnyTruncatedContent = useFetchAnyTruncatedContent;
104
- function getWindowSize() {
105
- const { innerWidth: width, innerHeight: height } = window;
106
- return {
107
- width,
108
- height,
109
- };
110
- }
111
- function useWindowSize() {
112
- const [windowSize, setWindowSize] = (0, react_1.useState)(getWindowSize());
113
- (0, react_1.useLayoutEffect)(() => {
114
- function handleResize() {
115
- setWindowSize(getWindowSize());
116
- }
117
- window.addEventListener('resize', handleResize);
118
- return () => window.removeEventListener('resize', handleResize);
119
- }, []);
120
- return windowSize;
121
- }
122
- exports.default = useWindowSize;
@@ -1,16 +0,0 @@
1
- import { Embed } from './embed';
2
- import { Output } from './output';
3
- import { Figure } from './figure';
4
- declare const OUTPUT_RENDERERS: {
5
- output: typeof Output;
6
- embed: typeof Embed;
7
- container: typeof Figure;
8
- };
9
- export * from './BinderBadge';
10
- export * from './ErrorTray';
11
- export * from './ConnectionStatusTray';
12
- export * from './providers';
13
- export * from './execute';
14
- export * from './controls';
15
- export default OUTPUT_RENDERERS;
16
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,QAAA,MAAM,gBAAgB;;;;CAIrB,CAAC;AAEF,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAE3B,eAAe,gBAAgB,CAAC"}
package/dist/cjs/index.js DELETED
@@ -1,31 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- const embed_1 = require("./embed");
18
- const output_1 = require("./output");
19
- const figure_1 = require("./figure");
20
- const OUTPUT_RENDERERS = {
21
- output: output_1.Output,
22
- embed: embed_1.Embed,
23
- container: figure_1.Figure,
24
- };
25
- __exportStar(require("./BinderBadge"), exports);
26
- __exportStar(require("./ErrorTray"), exports);
27
- __exportStar(require("./ConnectionStatusTray"), exports);
28
- __exportStar(require("./providers"), exports);
29
- __exportStar(require("./execute"), exports);
30
- __exportStar(require("./controls"), exports);
31
- exports.default = OUTPUT_RENDERERS;
@@ -1 +0,0 @@
1
- {"version":3,"file":"jupyter.d.ts","sourceRoot":"","sources":["../../src/jupyter.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAG3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAsF3C,eAAO,MAAM,cAAc;QACD,MAAM;aAAW,cAAc,EAAE;8CAwD1D,CAAC"}
@@ -1,111 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- var __importDefault = (this && this.__importDefault) || function (mod) {
26
- return (mod && mod.__esModule) ? mod : { "default": mod };
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.JupyterOutputs = void 0;
30
- const jsx_runtime_1 = require("react/jsx-runtime");
31
- const react_1 = __importStar(require("react"));
32
- const hooks_1 = require("./hooks");
33
- const nbtx_1 = require("nbtx");
34
- const convertImages_1 = require("./convertImages");
35
- const myst_spec_ext_1 = require("myst-spec-ext");
36
- const providers_1 = require("@myst-theme/providers");
37
- const thebe_react_1 = require("thebe-react");
38
- const execute_1 = require("./execute");
39
- const decoration_1 = require("./decoration");
40
- const myst_to_react_1 = require("myst-to-react");
41
- const classnames_1 = __importDefault(require("classnames"));
42
- function ActiveOutputRenderer({ id, initialData, core, }) {
43
- var _a;
44
- const exec = (0, execute_1.useCellExecution)(id);
45
- const placeholder = (0, decoration_1.usePlaceholder)();
46
- const ref = (0, react_1.useRef)(null);
47
- (0, react_1.useEffect)(() => {
48
- var _a, _b, _c;
49
- if (!ref.current || !(exec === null || exec === void 0 ? void 0 : exec.cell)) {
50
- console.debug(`Jupyter: No cell ref available for cell ${id}:${(_a = exec === null || exec === void 0 ? void 0 : exec.cell) === null || _a === void 0 ? void 0 : _a.id}`);
51
- return;
52
- }
53
- const verb = exec.cell.isAttachedToDOM ? 'reattaching' : 'attaching';
54
- console.debug(`${verb} cell ${exec.cell.id} to DOM at:`, {
55
- el: ref.current,
56
- connected: ref.current.isConnected,
57
- data: (_b = core === null || core === void 0 ? void 0 : core.stripWidgets(initialData)) !== null && _b !== void 0 ? _b : initialData,
58
- });
59
- exec.cell.attachToDOM(ref.current);
60
- if (exec.cell.executionCount == null) {
61
- exec.cell.initOutputs((_c = core === null || core === void 0 ? void 0 : core.stripWidgets(initialData, true, placeholder ? () => '' : undefined)) !== null && _c !== void 0 ? _c : initialData);
62
- }
63
- }, [ref === null || ref === void 0 ? void 0 : ref.current, exec === null || exec === void 0 ? void 0 : exec.cell]);
64
- const executed = ((_a = exec === null || exec === void 0 ? void 0 : exec.cell) === null || _a === void 0 ? void 0 : _a.executionCount) != null;
65
- console.debug(`Jupyter: Cell ${id} executed: ${executed}; Show output: ${executed || !placeholder}`);
66
- return ((0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("div", { ref: ref, "data-thebe-active-ref": "true", className: (0, classnames_1.default)('relative', { 'invisible h-0': !executed && placeholder }) }), placeholder && !executed && (0, jsx_runtime_1.jsx)(myst_to_react_1.MyST, { ast: placeholder })] }));
67
- }
68
- function PassiveOutputRenderer({ id, data, core, }) {
69
- const cell = (0, react_1.useRef)(new core.PassiveCellRenderer(id, undefined, undefined));
70
- const ref = (0, react_1.useRef)(null);
71
- (0, react_1.useEffect)(() => {
72
- var _a;
73
- if (!ref.current)
74
- return;
75
- cell.current.attachToDOM(ref.current, true);
76
- cell.current.render((_a = core === null || core === void 0 ? void 0 : core.stripWidgets(data)) !== null && _a !== void 0 ? _a : data);
77
- }, [ref]);
78
- return (0, jsx_runtime_1.jsx)("div", { ref: ref, "data-thebe-passive-ref": "true" });
79
- }
80
- exports.JupyterOutputs = react_1.default.memo(({ id, outputs }) => {
81
- const { core, load } = (0, thebe_react_1.useThebeLoader)();
82
- const { inCrossRef } = (0, providers_1.useXRefState)();
83
- const { data, error } = (0, hooks_1.useFetchAnyTruncatedContent)(outputs);
84
- const [fullOutputs, setFullOutputs] = (0, react_1.useState)(null);
85
- const exec = (0, execute_1.useCellExecution)(id);
86
- const placeholder = (0, decoration_1.usePlaceholder)();
87
- (0, react_1.useEffect)(() => {
88
- if (core)
89
- return;
90
- load();
91
- }, [core, load]);
92
- (0, react_1.useEffect)(() => {
93
- if (!data || fullOutputs != null)
94
- return;
95
- (0, convertImages_1.fetchAndEncodeOutputImages)(data).then((out) => {
96
- const compactOutputs = (0, nbtx_1.convertToIOutputs)(out, {});
97
- setFullOutputs(compactOutputs);
98
- });
99
- }, [id, data, fullOutputs]);
100
- if (error) {
101
- console.error(error);
102
- return (0, jsx_runtime_1.jsxs)("div", { className: "text-red-500", children: ["Error rendering output: ", error.message] });
103
- }
104
- if (!inCrossRef && (exec === null || exec === void 0 ? void 0 : exec.ready)) {
105
- return ((0, jsx_runtime_1.jsxs)("div", { children: [!fullOutputs && (0, jsx_runtime_1.jsx)("div", { className: "p-2.5", children: "Fetching full output data..." }), core && fullOutputs && ((0, jsx_runtime_1.jsx)(ActiveOutputRenderer, { id: id, initialData: fullOutputs, core: core }, id))] }));
106
- }
107
- if (placeholder) {
108
- return (0, jsx_runtime_1.jsx)(myst_to_react_1.MyST, { ast: placeholder });
109
- }
110
- return ((0, jsx_runtime_1.jsxs)("div", { children: [!fullOutputs && (0, jsx_runtime_1.jsx)("div", { className: "p-2.5", children: "Loading..." }), fullOutputs && core && ((0, jsx_runtime_1.jsx)(PassiveOutputRenderer, { id: id, data: fullOutputs, core: core, kind: myst_spec_ext_1.SourceFileKind.Notebook }))] }));
111
- });
@@ -1 +0,0 @@
1
- {"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../src/output.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,OAAO,KAAK,EAAsB,cAAc,EAAE,MAAM,MAAM,CAAC;AAS/D,eAAO,MAAM,mBAAmB,aAA+B,CAAC;AAEhE,eAAO,MAAM,iBAAiB,aAMb,CAAC;AAElB,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,cAAc,EAAE,EACzB,iBAAiB,EAAE,GAAG,CAAC,MAAM,CAAC,EAC9B,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,WAa7B;AAED,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,UAAU,EACV,IAAI,EACJ,KAAK,GACN,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;CACrC,2CAsCA;AAED,wBAAgB,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,2CASrD"}
@@ -1,67 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Output = exports.JupyterOutput = exports.allOutputsAreSafe = exports.DIRECT_MIME_TYPES = exports.DIRECT_OUTPUT_TYPES = void 0;
7
- const jsx_runtime_1 = require("react/jsx-runtime");
8
- const nbtx_1 = require("nbtx");
9
- const classnames_1 = __importDefault(require("classnames"));
10
- const safe_1 = require("./safe");
11
- const jupyter_1 = require("./jupyter");
12
- const react_1 = require("react");
13
- const execute_1 = require("./execute");
14
- const decoration_1 = require("./decoration");
15
- const myst_to_react_1 = require("myst-to-react");
16
- exports.DIRECT_OUTPUT_TYPES = new Set(['stream', 'error']);
17
- exports.DIRECT_MIME_TYPES = new Set([
18
- nbtx_1.KnownCellOutputMimeTypes.TextPlain,
19
- nbtx_1.KnownCellOutputMimeTypes.ImagePng,
20
- nbtx_1.KnownCellOutputMimeTypes.ImageGif,
21
- nbtx_1.KnownCellOutputMimeTypes.ImageJpeg,
22
- nbtx_1.KnownCellOutputMimeTypes.ImageBmp,
23
- ]);
24
- function allOutputsAreSafe(outputs, directOutputTypes, directMimeTypes) {
25
- if (!outputs || outputs.length === 0)
26
- return true;
27
- return outputs.reduce((flag, output) => {
28
- if (directOutputTypes.has(output.output_type))
29
- return flag && true;
30
- const data = output.data;
31
- const mimetypes = data ? Object.keys(data) : [];
32
- const safe = 'data' in output &&
33
- Boolean(output.data) &&
34
- mimetypes.every((mimetype) => directMimeTypes.has(mimetype));
35
- return flag && safe;
36
- }, true);
37
- }
38
- exports.allOutputsAreSafe = allOutputsAreSafe;
39
- function JupyterOutput({ outputId, identifier, data, align, }) {
40
- const { ready } = (0, execute_1.useCellExecution)(outputId);
41
- const outputs = data;
42
- const allSafe = (0, react_1.useMemo)(() => allOutputsAreSafe(outputs, exports.DIRECT_OUTPUT_TYPES, exports.DIRECT_MIME_TYPES), [outputs]);
43
- const placeholder = (0, decoration_1.usePlaceholder)();
44
- let component;
45
- if (allSafe && !ready) {
46
- if (placeholder && (!outputs || outputs.length === 0)) {
47
- if (placeholder) {
48
- return (0, jsx_runtime_1.jsx)(myst_to_react_1.MyST, { ast: placeholder });
49
- }
50
- }
51
- component = (0, jsx_runtime_1.jsx)(safe_1.SafeOutputs, { keyStub: outputId, outputs: outputs });
52
- }
53
- else {
54
- component = (0, jsx_runtime_1.jsx)(jupyter_1.JupyterOutputs, { id: outputId, outputs: outputs });
55
- }
56
- return ((0, jsx_runtime_1.jsx)("div", { id: identifier || undefined, "data-mdast-node-id": outputId, className: (0, classnames_1.default)('max-w-full overflow-y-visible overflow-x-auto m-0 group not-prose relative', {
57
- 'text-left': !align || align === 'left',
58
- 'text-center': align === 'center',
59
- 'text-right': align === 'right',
60
- 'mb-5': outputs && outputs.length > 0,
61
- }), children: component }));
62
- }
63
- exports.JupyterOutput = JupyterOutput;
64
- function Output({ node }) {
65
- return ((0, jsx_runtime_1.jsx)(JupyterOutput, { outputId: node.id, identifier: node.identifier, align: node.align, data: node.data }));
66
- }
67
- exports.Output = Output;
@@ -1,28 +0,0 @@
1
- import type { SourceFileKind } from 'myst-spec-ext';
2
- import React from 'react';
3
- import type { GenericParent } from 'myst-common';
4
- export declare function useComputeOptions(): {
5
- canCompute: boolean;
6
- thebe?: undefined;
7
- githubBadgeUrl?: undefined;
8
- binderBadgeUrl?: undefined;
9
- } | {
10
- thebe: import("./utils").ExtendedCoreOptions | undefined;
11
- githubBadgeUrl: string | undefined;
12
- binderBadgeUrl: string | undefined;
13
- canCompute?: undefined;
14
- };
15
- export declare function useCanCompute(article: {
16
- frontmatter: {
17
- thebe?: boolean | Record<string, any>;
18
- };
19
- }): boolean;
20
- export declare function ConfiguredThebeServerProvider({ children }: React.PropsWithChildren): import("react/jsx-runtime").JSX.Element;
21
- export type PartialPage = {
22
- kind: SourceFileKind;
23
- file: string;
24
- sha256: string;
25
- slug: string;
26
- mdast: GenericParent;
27
- };
28
- //# sourceMappingURL=providers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/providers.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,wBAAgB,iBAAiB;;;;;;;;;;EAuBhC;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE;IAAE,WAAW,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAAE,CAAA;CAAE,WAGhG;AAED,wBAAgB,6BAA6B,CAAC,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC,iBAAiB,2CAalF;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,aAAa,CAAC;CACtB,CAAC"}
@@ -1,44 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ConfiguredThebeServerProvider = exports.useCanCompute = exports.useComputeOptions = void 0;
7
- const jsx_runtime_1 = require("react/jsx-runtime");
8
- const react_1 = __importDefault(require("react"));
9
- const thebe_react_1 = require("thebe-react");
10
- const providers_1 = require("@myst-theme/providers");
11
- const utils_1 = require("./utils");
12
- function useComputeOptions() {
13
- const config = (0, providers_1.useSiteManifest)();
14
- const makeOptions = () => {
15
- var _a;
16
- if (!config)
17
- return { canCompute: false };
18
- // TODO there may be multiple projects?
19
- // useProjectManifest?
20
- const mainProject = (_a = config === null || config === void 0 ? void 0 : config.projects) === null || _a === void 0 ? void 0 : _a[0];
21
- const thebeFrontmatter = mainProject === null || mainProject === void 0 ? void 0 : mainProject.thebe;
22
- const githubBadgeUrl = mainProject === null || mainProject === void 0 ? void 0 : mainProject.github;
23
- const binderBadgeUrl = mainProject === null || mainProject === void 0 ? void 0 : mainProject.binder;
24
- const thebeOptions = (0, utils_1.thebeFrontmatterToOptions)(thebeFrontmatter, githubBadgeUrl, binderBadgeUrl);
25
- return {
26
- thebe: thebeFrontmatter ? thebeOptions : undefined,
27
- githubBadgeUrl,
28
- binderBadgeUrl,
29
- };
30
- };
31
- return react_1.default.useMemo(makeOptions, [config]);
32
- }
33
- exports.useComputeOptions = useComputeOptions;
34
- function useCanCompute(article) {
35
- var _a;
36
- const { thebe } = useComputeOptions();
37
- return !!thebe && ((_a = article.frontmatter) === null || _a === void 0 ? void 0 : _a.thebe) !== false;
38
- }
39
- exports.useCanCompute = useCanCompute;
40
- function ConfiguredThebeServerProvider({ children }) {
41
- const { thebe } = useComputeOptions();
42
- return ((0, jsx_runtime_1.jsx)(thebe_react_1.ThebeServerProvider, { connect: false, options: thebe, useBinder: thebe === null || thebe === void 0 ? void 0 : thebe.useBinder, useJupyterLite: thebe === null || thebe === void 0 ? void 0 : thebe.useJupyterLite, children: children }));
43
- }
44
- exports.ConfiguredThebeServerProvider = ConfiguredThebeServerProvider;
@@ -1 +0,0 @@
1
- {"version":3,"file":"safe.d.ts","sourceRoot":"","sources":["../../src/safe.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAA2C,cAAc,EAAE,MAAM,MAAM,CAAC;AAwEpF,wBAAgB,WAAW,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,cAAc,EAAE,CAAA;CAAE,kDAO/F"}
package/dist/cjs/safe.js DELETED
@@ -1,79 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.SafeOutputs = void 0;
7
- const jsx_runtime_1 = require("react/jsx-runtime");
8
- const nbtx_1 = require("nbtx");
9
- const stream_1 = __importDefault(require("./stream"));
10
- const error_1 = __importDefault(require("./error"));
11
- const ansi_to_react_1 = __importDefault(require("ansi-to-react"));
12
- /**
13
- * https://jupyterbook.org/content/code-outputs.html#render-priority
14
- *
15
- * nb_render_priority:
16
- html:
17
- - "application/vnd.jupyter.widget-view+json"
18
- - "application/javascript"
19
- - "text/html"
20
- - "image/svg+xml"
21
- - "image/png"
22
- - "image/jpeg"
23
- - "text/markdown"
24
- - "text/latex"
25
- - "text/plain"
26
- */
27
- const RENDER_PRIORITY = [
28
- nbtx_1.KnownCellOutputMimeTypes.ImagePng,
29
- nbtx_1.KnownCellOutputMimeTypes.ImageJpeg,
30
- nbtx_1.KnownCellOutputMimeTypes.ImageGif,
31
- nbtx_1.KnownCellOutputMimeTypes.ImageBmp,
32
- ];
33
- function findSafeMimeOutputs(output) {
34
- const data = output.data;
35
- const image = RENDER_PRIORITY.reduce((acc, mimetype) => {
36
- if (acc)
37
- return acc;
38
- if (data && data[mimetype])
39
- return data[mimetype];
40
- return undefined;
41
- }, undefined);
42
- const text = data && data['text/plain'];
43
- return { image, text };
44
- }
45
- function OutputImage({ image, text }) {
46
- var _a;
47
- return (0, jsx_runtime_1.jsx)("img", { src: image === null || image === void 0 ? void 0 : image.path, alt: (_a = text === null || text === void 0 ? void 0 : text.content) !== null && _a !== void 0 ? _a : 'Image produced in Jupyter' });
48
- }
49
- function SafeOutput({ output }) {
50
- switch (output.output_type) {
51
- case 'stream':
52
- return (0, jsx_runtime_1.jsx)(stream_1.default, { output: output });
53
- case 'error':
54
- return (0, jsx_runtime_1.jsx)(error_1.default, { output: output });
55
- case 'display_data':
56
- case 'execute_result':
57
- case 'update_display_data': {
58
- const { image, text } = findSafeMimeOutputs(output);
59
- if (!image && !text)
60
- return null;
61
- if (image)
62
- return (0, jsx_runtime_1.jsx)(OutputImage, { image: image, text: text });
63
- if (text)
64
- return ((0, jsx_runtime_1.jsx)("div", { className: "font-mono text-sm whitespace-pre-wrap", children: (0, jsx_runtime_1.jsx)(ansi_to_react_1.default, { children: text.content }) }));
65
- return null;
66
- }
67
- default:
68
- console.warn(`Unknown output_type ${output['output_type']}`);
69
- return null;
70
- }
71
- }
72
- function SafeOutputs({ keyStub, outputs }) {
73
- if (!outputs)
74
- return null;
75
- // TODO better key - add keys during content creation?
76
- const components = outputs.map((output, idx) => ((0, jsx_runtime_1.jsx)(SafeOutput, { output: output }, `${keyStub}-${idx}`)));
77
- return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: components });
78
- }
79
- exports.SafeOutputs = SafeOutputs;
@@ -1 +0,0 @@
1
- {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/stream.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,MAAM,CAAC;AAGjD,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,oBAAoB,CAAA;CAAE,2CAY1E"}
@@ -1,13 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const jsx_runtime_1 = require("react/jsx-runtime");
7
- const ansi_to_react_1 = __importDefault(require("ansi-to-react"));
8
- const nbtx_1 = require("nbtx");
9
- const components_1 = require("./components");
10
- function Stream({ output }) {
11
- return ((0, jsx_runtime_1.jsx)(components_1.MaybeLongContent, { content: (0, nbtx_1.ensureString)(output.text), path: output.path, render: (content) => ((0, jsx_runtime_1.jsx)("pre", { className: "text-sm font-thin font-system", children: (0, jsx_runtime_1.jsx)(ansi_to_react_1.default, { children: content !== null && content !== void 0 ? content : '' }) })) }));
12
- }
13
- exports.default = Stream;
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,KAAK,EAIN,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,WAAW,EAAgB,MAAM,YAAY,CAAC;AAE5D,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG;IAC9C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAqDF,wBAAgB,yBAAyB,CACvC,EAAE,EAAE,OAAO,GAAG,KAAK,GAAG,SAAS,EAC/B,cAAc,EAAE,MAAM,GAAG,SAAS,EAClC,cAAc,EAAE,MAAM,GAAG,SAAS,GACjC,mBAAmB,GAAG,SAAS,CA+IjC"}