@difizen/libro-core 0.0.2-alpha.0

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 (312) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +3 -0
  3. package/es/add-cell/index.d.ts +4 -0
  4. package/es/add-cell/index.d.ts.map +1 -0
  5. package/es/add-cell/index.js +3 -0
  6. package/es/add-cell/index.less +38 -0
  7. package/es/add-cell/libro-add-cell-module.d.ts +3 -0
  8. package/es/add-cell/libro-add-cell-module.d.ts.map +1 -0
  9. package/es/add-cell/libro-add-cell-module.js +4 -0
  10. package/es/add-cell/libro-add-cell-slot-contribution.d.ts +12 -0
  11. package/es/add-cell/libro-add-cell-slot-contribution.d.ts.map +1 -0
  12. package/es/add-cell/libro-add-cell-slot-contribution.js +53 -0
  13. package/es/add-cell/libro-add-cell-view.d.ts +21 -0
  14. package/es/add-cell/libro-add-cell-view.d.ts.map +1 -0
  15. package/es/add-cell/libro-add-cell-view.js +129 -0
  16. package/es/cell/index.d.ts +10 -0
  17. package/es/cell/index.d.ts.map +1 -0
  18. package/es/cell/index.js +9 -0
  19. package/es/cell/libro-cell-contribution.d.ts +13 -0
  20. package/es/cell/libro-cell-contribution.d.ts.map +1 -0
  21. package/es/cell/libro-cell-contribution.js +41 -0
  22. package/es/cell/libro-cell-model.d.ts +19 -0
  23. package/es/cell/libro-cell-model.d.ts.map +1 -0
  24. package/es/cell/libro-cell-model.js +103 -0
  25. package/es/cell/libro-cell-module.d.ts +10 -0
  26. package/es/cell/libro-cell-module.d.ts.map +1 -0
  27. package/es/cell/libro-cell-module.js +30 -0
  28. package/es/cell/libro-cell-protocol.d.ts +42 -0
  29. package/es/cell/libro-cell-protocol.d.ts.map +1 -0
  30. package/es/cell/libro-cell-protocol.js +11 -0
  31. package/es/cell/libro-cell-service.d.ts +28 -0
  32. package/es/cell/libro-cell-service.d.ts.map +1 -0
  33. package/es/cell/libro-cell-service.js +242 -0
  34. package/es/cell/libro-cell-view.d.ts +65 -0
  35. package/es/cell/libro-cell-view.d.ts.map +1 -0
  36. package/es/cell/libro-cell-view.js +191 -0
  37. package/es/cell/libro-edit-cell-view.d.ts +32 -0
  38. package/es/cell/libro-edit-cell-view.d.ts.map +1 -0
  39. package/es/cell/libro-edit-cell-view.js +72 -0
  40. package/es/cell/libro-executable-cell-model.d.ts +14 -0
  41. package/es/cell/libro-executable-cell-model.d.ts.map +1 -0
  42. package/es/cell/libro-executable-cell-model.js +7 -0
  43. package/es/cell/libro-executable-cell-view.d.ts +27 -0
  44. package/es/cell/libro-executable-cell-view.d.ts.map +1 -0
  45. package/es/cell/libro-executable-cell-view.js +66 -0
  46. package/es/cell/libro-markdown-cell-model.d.ts +9 -0
  47. package/es/cell/libro-markdown-cell-model.d.ts.map +1 -0
  48. package/es/cell/libro-markdown-cell-model.js +7 -0
  49. package/es/collapse-service.d.ts +36 -0
  50. package/es/collapse-service.d.ts.map +1 -0
  51. package/es/collapse-service.js +55 -0
  52. package/es/command/document-commands.d.ts +6 -0
  53. package/es/command/document-commands.d.ts.map +1 -0
  54. package/es/command/document-commands.js +13 -0
  55. package/es/command/index.d.ts +7 -0
  56. package/es/command/index.d.ts.map +1 -0
  57. package/es/command/index.js +6 -0
  58. package/es/command/kernel-command.d.ts +5 -0
  59. package/es/command/kernel-command.d.ts.map +1 -0
  60. package/es/command/kernel-command.js +39 -0
  61. package/es/command/libro-command-contribution.d.ts +14 -0
  62. package/es/command/libro-command-contribution.d.ts.map +1 -0
  63. package/es/command/libro-command-contribution.js +1751 -0
  64. package/es/command/libro-command-register.d.ts +22 -0
  65. package/es/command/libro-command-register.d.ts.map +1 -0
  66. package/es/command/libro-command-register.js +105 -0
  67. package/es/command/module.d.ts +3 -0
  68. package/es/command/module.d.ts.map +1 -0
  69. package/es/command/module.js +4 -0
  70. package/es/command/notebook-commands.d.ts +6 -0
  71. package/es/command/notebook-commands.d.ts.map +1 -0
  72. package/es/command/notebook-commands.js +468 -0
  73. package/es/components/cell-protocol.d.ts +20 -0
  74. package/es/components/cell-protocol.d.ts.map +1 -0
  75. package/es/components/cell-protocol.js +4 -0
  76. package/es/components/dnd-cell-item-render.d.ts +12 -0
  77. package/es/components/dnd-cell-item-render.d.ts.map +1 -0
  78. package/es/components/dnd-cell-item-render.js +253 -0
  79. package/es/components/dnd-component/custom-drag-layer.d.ts +9 -0
  80. package/es/components/dnd-component/custom-drag-layer.d.ts.map +1 -0
  81. package/es/components/dnd-component/custom-drag-layer.js +141 -0
  82. package/es/components/dnd-component/default-dnd-content.d.ts +10 -0
  83. package/es/components/dnd-component/default-dnd-content.d.ts.map +1 -0
  84. package/es/components/dnd-component/default-dnd-content.js +257 -0
  85. package/es/components/dnd-component/dnd-context.d.ts +3 -0
  86. package/es/components/dnd-component/dnd-context.d.ts.map +1 -0
  87. package/es/components/dnd-component/dnd-context.js +20 -0
  88. package/es/components/dnd-component/dnd-list.d.ts +10 -0
  89. package/es/components/dnd-component/dnd-list.d.ts.map +1 -0
  90. package/es/components/dnd-component/dnd-list.js +115 -0
  91. package/es/components/dnd-component/index.d.ts +5 -0
  92. package/es/components/dnd-component/index.d.ts.map +1 -0
  93. package/es/components/dnd-component/index.js +4 -0
  94. package/es/components/index.d.ts +6 -0
  95. package/es/components/index.d.ts.map +1 -0
  96. package/es/components/index.js +5 -0
  97. package/es/components/libro-component.d.ts +5 -0
  98. package/es/components/libro-component.d.ts.map +1 -0
  99. package/es/components/libro-component.js +35 -0
  100. package/es/components/libro-side-toolbar-menu.d.ts +21 -0
  101. package/es/components/libro-side-toolbar-menu.d.ts.map +1 -0
  102. package/es/components/libro-side-toolbar-menu.js +58 -0
  103. package/es/components/libro-view-header.d.ts +3 -0
  104. package/es/components/libro-view-header.d.ts.map +1 -0
  105. package/es/components/libro-view-header.js +37 -0
  106. package/es/configuration/libro-configuration-contribution.d.ts +5 -0
  107. package/es/configuration/libro-configuration-contribution.d.ts.map +1 -0
  108. package/es/configuration/libro-configuration-contribution.js +24 -0
  109. package/es/configuration/libro-configuration.d.ts +10 -0
  110. package/es/configuration/libro-configuration.d.ts.map +1 -0
  111. package/es/configuration/libro-configuration.js +81 -0
  112. package/es/content/index.d.ts +5 -0
  113. package/es/content/index.d.ts.map +1 -0
  114. package/es/content/index.js +4 -0
  115. package/es/content/libro-content-contribution.d.ts +11 -0
  116. package/es/content/libro-content-contribution.d.ts.map +1 -0
  117. package/es/content/libro-content-contribution.js +32 -0
  118. package/es/content/libro-content-module.d.ts +3 -0
  119. package/es/content/libro-content-module.d.ts.map +1 -0
  120. package/es/content/libro-content-module.js +5 -0
  121. package/es/content/libro-content-protocol.d.ts +8 -0
  122. package/es/content/libro-content-protocol.d.ts.map +1 -0
  123. package/es/content/libro-content-protocol.js +2 -0
  124. package/es/content/libro-content-service.d.ts +9 -0
  125. package/es/content/libro-content-service.d.ts.map +1 -0
  126. package/es/content/libro-content-service.js +35 -0
  127. package/es/index.d.ts +20 -0
  128. package/es/index.d.ts.map +1 -0
  129. package/es/index.js +19 -0
  130. package/es/index.less +682 -0
  131. package/es/libro-context-key.d.ts +22 -0
  132. package/es/libro-context-key.d.ts.map +1 -0
  133. package/es/libro-context-key.js +80 -0
  134. package/es/libro-keybind-registry.d.ts +5 -0
  135. package/es/libro-keybind-registry.d.ts.map +1 -0
  136. package/es/libro-keybind-registry.js +68 -0
  137. package/es/libro-model.d.ts +129 -0
  138. package/es/libro-model.d.ts.map +1 -0
  139. package/es/libro-model.js +803 -0
  140. package/es/libro-protocol.d.ts +241 -0
  141. package/es/libro-protocol.d.ts.map +1 -0
  142. package/es/libro-protocol.js +34 -0
  143. package/es/libro-service.d.ts +34 -0
  144. package/es/libro-service.d.ts.map +1 -0
  145. package/es/libro-service.js +180 -0
  146. package/es/libro-view-tracker.d.ts +6 -0
  147. package/es/libro-view-tracker.d.ts.map +1 -0
  148. package/es/libro-view-tracker.js +13 -0
  149. package/es/libro-view.d.ts +151 -0
  150. package/es/libro-view.d.ts.map +1 -0
  151. package/es/libro-view.js +1963 -0
  152. package/es/material-from-designer.d.ts +27 -0
  153. package/es/material-from-designer.d.ts.map +1 -0
  154. package/es/material-from-designer.js +550 -0
  155. package/es/module.d.ts +3 -0
  156. package/es/module.d.ts.map +1 -0
  157. package/es/module.js +55 -0
  158. package/es/output/index.d.ts +6 -0
  159. package/es/output/index.d.ts.map +1 -0
  160. package/es/output/index.js +5 -0
  161. package/es/output/output-area.d.ts +51 -0
  162. package/es/output/output-area.d.ts.map +1 -0
  163. package/es/output/output-area.js +346 -0
  164. package/es/output/output-contribution.d.ts +11 -0
  165. package/es/output/output-contribution.d.ts.map +1 -0
  166. package/es/output/output-contribution.js +31 -0
  167. package/es/output/output-model.d.ts +27 -0
  168. package/es/output/output-model.d.ts.map +1 -0
  169. package/es/output/output-model.js +95 -0
  170. package/es/output/output-module.d.ts +3 -0
  171. package/es/output/output-module.d.ts.map +1 -0
  172. package/es/output/output-module.js +6 -0
  173. package/es/output/output-protocol.d.ts +130 -0
  174. package/es/output/output-protocol.d.ts.map +1 -0
  175. package/es/output/output-protocol.js +18 -0
  176. package/es/slot/index.d.ts +5 -0
  177. package/es/slot/index.d.ts.map +1 -0
  178. package/es/slot/index.js +4 -0
  179. package/es/slot/libro-slot-manager.d.ts +13 -0
  180. package/es/slot/libro-slot-manager.d.ts.map +1 -0
  181. package/es/slot/libro-slot-manager.js +57 -0
  182. package/es/slot/libro-slot-protocol.d.ts +19 -0
  183. package/es/slot/libro-slot-protocol.d.ts.map +1 -0
  184. package/es/slot/libro-slot-protocol.js +5 -0
  185. package/es/slot/libro-slot-view.d.ts +9 -0
  186. package/es/slot/libro-slot-view.d.ts.map +1 -0
  187. package/es/slot/libro-slot-view.js +81 -0
  188. package/es/slot/module.d.ts +3 -0
  189. package/es/slot/module.d.ts.map +1 -0
  190. package/es/slot/module.js +5 -0
  191. package/es/theme/libro-color-registry.d.ts +6 -0
  192. package/es/theme/libro-color-registry.d.ts.map +1 -0
  193. package/es/theme/libro-color-registry.js +494 -0
  194. package/es/toolbar/change-cell-to-selector.d.ts +5 -0
  195. package/es/toolbar/change-cell-to-selector.d.ts.map +1 -0
  196. package/es/toolbar/change-cell-to-selector.js +48 -0
  197. package/es/toolbar/hide-all-selector.d.ts +5 -0
  198. package/es/toolbar/hide-all-selector.d.ts.map +1 -0
  199. package/es/toolbar/hide-all-selector.js +99 -0
  200. package/es/toolbar/index.d.ts +4 -0
  201. package/es/toolbar/index.d.ts.map +1 -0
  202. package/es/toolbar/index.js +3 -0
  203. package/es/toolbar/index.less +59 -0
  204. package/es/toolbar/libro-toolbar-protocol.d.ts +4 -0
  205. package/es/toolbar/libro-toolbar-protocol.d.ts.map +1 -0
  206. package/es/toolbar/libro-toolbar-protocol.js +1 -0
  207. package/es/toolbar/libro-toolbar.d.ts +8 -0
  208. package/es/toolbar/libro-toolbar.d.ts.map +1 -0
  209. package/es/toolbar/libro-toolbar.js +223 -0
  210. package/es/toolbar/module.d.ts +3 -0
  211. package/es/toolbar/module.d.ts.map +1 -0
  212. package/es/toolbar/module.js +5 -0
  213. package/es/toolbar/restart-clear-outputs-contribution.d.ts +5 -0
  214. package/es/toolbar/restart-clear-outputs-contribution.d.ts.map +1 -0
  215. package/es/toolbar/restart-clear-outputs-contribution.js +23 -0
  216. package/es/toolbar/restart-clear-outputs-modal.d.ts +6 -0
  217. package/es/toolbar/restart-clear-outputs-modal.d.ts.map +1 -0
  218. package/es/toolbar/restart-clear-outputs-modal.js +30 -0
  219. package/es/toolbar/save-icon.d.ts +3 -0
  220. package/es/toolbar/save-icon.d.ts.map +1 -0
  221. package/es/toolbar/save-icon.js +54 -0
  222. package/es/toolbar/shutdown-contribution.d.ts +5 -0
  223. package/es/toolbar/shutdown-contribution.d.ts.map +1 -0
  224. package/es/toolbar/shutdown-contribution.js +23 -0
  225. package/es/toolbar/shutdown-modal.d.ts +6 -0
  226. package/es/toolbar/shutdown-modal.d.ts.map +1 -0
  227. package/es/toolbar/shutdown-modal.js +30 -0
  228. package/es/toolbar/side-toolar-more-select.d.ts +4 -0
  229. package/es/toolbar/side-toolar-more-select.d.ts.map +1 -0
  230. package/es/toolbar/side-toolar-more-select.js +161 -0
  231. package/es/typings/index.d.ts +1 -0
  232. package/package.json +70 -0
  233. package/src/add-cell/index.less +38 -0
  234. package/src/add-cell/index.ts +3 -0
  235. package/src/add-cell/libro-add-cell-module.ts +9 -0
  236. package/src/add-cell/libro-add-cell-slot-contribution.ts +31 -0
  237. package/src/add-cell/libro-add-cell-view.tsx +101 -0
  238. package/src/cell/README.md +14 -0
  239. package/src/cell/index.ts +9 -0
  240. package/src/cell/libro-cell-contribution.ts +38 -0
  241. package/src/cell/libro-cell-model.ts +61 -0
  242. package/src/cell/libro-cell-module.ts +40 -0
  243. package/src/cell/libro-cell-protocol.ts +53 -0
  244. package/src/cell/libro-cell-service.ts +157 -0
  245. package/src/cell/libro-cell-view.tsx +128 -0
  246. package/src/cell/libro-edit-cell-view.tsx +60 -0
  247. package/src/cell/libro-executable-cell-model.ts +32 -0
  248. package/src/cell/libro-executable-cell-view.ts +74 -0
  249. package/src/cell/libro-markdown-cell-model.ts +20 -0
  250. package/src/collapse-service.ts +69 -0
  251. package/src/command/document-commands.ts +18 -0
  252. package/src/command/index.ts +6 -0
  253. package/src/command/kernel-command.ts +41 -0
  254. package/src/command/libro-command-contribution.ts +1339 -0
  255. package/src/command/libro-command-register.ts +171 -0
  256. package/src/command/module.ts +9 -0
  257. package/src/command/notebook-commands.ts +498 -0
  258. package/src/components/cell-protocol.ts +22 -0
  259. package/src/components/dnd-cell-item-render.tsx +308 -0
  260. package/src/components/dnd-component/custom-drag-layer.tsx +145 -0
  261. package/src/components/dnd-component/default-dnd-content.tsx +275 -0
  262. package/src/components/dnd-component/dnd-context.tsx +28 -0
  263. package/src/components/dnd-component/dnd-list.tsx +116 -0
  264. package/src/components/dnd-component/index.tsx +4 -0
  265. package/src/components/index.ts +5 -0
  266. package/src/components/libro-component.tsx +30 -0
  267. package/src/components/libro-side-toolbar-menu.tsx +82 -0
  268. package/src/components/libro-view-header.tsx +33 -0
  269. package/src/configuration/libro-configuration-contribution.ts +29 -0
  270. package/src/configuration/libro-configuration.ts +88 -0
  271. package/src/content/index.ts +4 -0
  272. package/src/content/libro-content-contribution.ts +17 -0
  273. package/src/content/libro-content-module.ts +9 -0
  274. package/src/content/libro-content-protocol.ts +8 -0
  275. package/src/content/libro-content-service.ts +30 -0
  276. package/src/index.less +682 -0
  277. package/src/index.tsx +19 -0
  278. package/src/libro-context-key.ts +80 -0
  279. package/src/libro-keybind-registry.ts +43 -0
  280. package/src/libro-model.ts +614 -0
  281. package/src/libro-protocol.ts +322 -0
  282. package/src/libro-service.ts +121 -0
  283. package/src/libro-view-tracker.ts +9 -0
  284. package/src/libro-view.tsx +1399 -0
  285. package/src/material-from-designer.tsx +457 -0
  286. package/src/module.ts +90 -0
  287. package/src/output/index.ts +5 -0
  288. package/src/output/output-area.tsx +255 -0
  289. package/src/output/output-contribution.ts +18 -0
  290. package/src/output/output-model.tsx +66 -0
  291. package/src/output/output-module.ts +10 -0
  292. package/src/output/output-protocol.ts +164 -0
  293. package/src/slot/index.ts +4 -0
  294. package/src/slot/libro-slot-manager.ts +37 -0
  295. package/src/slot/libro-slot-protocol.ts +28 -0
  296. package/src/slot/libro-slot-view.tsx +51 -0
  297. package/src/slot/module.ts +9 -0
  298. package/src/theme/libro-color-registry.ts +371 -0
  299. package/src/toolbar/change-cell-to-selector.tsx +58 -0
  300. package/src/toolbar/hide-all-selector.tsx +126 -0
  301. package/src/toolbar/index.less +59 -0
  302. package/src/toolbar/index.ts +3 -0
  303. package/src/toolbar/libro-toolbar-protocol.ts +4 -0
  304. package/src/toolbar/libro-toolbar.tsx +192 -0
  305. package/src/toolbar/module.ts +11 -0
  306. package/src/toolbar/restart-clear-outputs-contribution.tsx +10 -0
  307. package/src/toolbar/restart-clear-outputs-modal.tsx +37 -0
  308. package/src/toolbar/save-icon.tsx +47 -0
  309. package/src/toolbar/shutdown-contribution.tsx +10 -0
  310. package/src/toolbar/shutdown-modal.tsx +37 -0
  311. package/src/toolbar/side-toolar-more-select.tsx +172 -0
  312. package/src/typings/index.d.ts +1 -0
@@ -0,0 +1,253 @@
1
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
2
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
4
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
5
+ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
6
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
7
+ import { useConfigurationValue } from '@difizen/mana-app';
8
+ import { ToolbarRender, useInject, useObserve, ViewInstance, ViewRender } from '@difizen/mana-app';
9
+ import classnames from 'classnames';
10
+ import React, { useMemo, useRef, memo, forwardRef } from 'react';
11
+ import "../index.less";
12
+ import { EditorCellView, ExecutableCellModel, ExecutableCellView, isLibroCellModel } from "../cell/index.js";
13
+ import { CellCollapsible } from "../collapse-service.js";
14
+ import { CellSideToolbarVisible, CellTopToolbarSetting, CollapserClickActive } from "../configuration/libro-configuration.js";
15
+ import { LibroToolbarArea, isCellView } from "../libro-protocol.js";
16
+ import { ArrowDown, ArrowRight, ContentMore } from "../material-from-designer.js";
17
+ import { hasErrorOutput } from "../output/index.js";
18
+ import { CellInputBottonBlankProvider, CellExecutionTimeProvider, CellOutputVisulizationProvider } from "./cell-protocol.js";
19
+ import { jsx as _jsx } from "react/jsx-runtime";
20
+ import { jsxs as _jsxs } from "react/jsx-runtime";
21
+ import { Fragment as _Fragment } from "react/jsx-runtime";
22
+ var CellInputContent = /*#__PURE__*/memo(function CellInputContent(props) {
23
+ var cell = props.cell;
24
+ var observableCell = useObserve(cell);
25
+ var CellExecutionTime = useInject(CellExecutionTimeProvider);
26
+ var CellInputBottonBlank = useInject(CellInputBottonBlankProvider);
27
+ if (!(observableCell !== null && observableCell !== void 0 && observableCell.view) || !isCellView(observableCell)) {
28
+ return null;
29
+ }
30
+ var isHidden = observableCell.hasInputHidden;
31
+ if (isHidden) {
32
+ return /*#__PURE__*/_jsx("div", {
33
+ className: "libro-input-hidden",
34
+ children: /*#__PURE__*/_jsx(ContentMore, {})
35
+ });
36
+ }
37
+ return /*#__PURE__*/_jsxs("div", {
38
+ className: "libro-cell-input-content",
39
+ children: [/*#__PURE__*/_jsx(CellExecutionTime, {
40
+ cell: cell
41
+ }), /*#__PURE__*/_jsx(ViewRender, {
42
+ view: observableCell
43
+ }), /*#__PURE__*/_jsx(CellInputBottonBlank, {
44
+ cell: cell
45
+ })]
46
+ });
47
+ });
48
+ var CellInput = /*#__PURE__*/forwardRef(function CellInput(props, ref) {
49
+ var cell = props.cell;
50
+ var inputCollapserRef = useRef(null);
51
+ var _useConfigurationValu = useConfigurationValue(CollapserClickActive),
52
+ _useConfigurationValu2 = _slicedToArray(_useConfigurationValu, 1),
53
+ collapserClickActive = _useConfigurationValu2[0];
54
+ var handleCellInputCollapser = function handleCellInputCollapser() {
55
+ if (collapserClickActive) {
56
+ cell.hasInputHidden = !cell.hasInputHidden;
57
+ }
58
+ };
59
+ var hasErrorOutputs = EditorCellView.is(cell) ? hasErrorOutput(cell) : false;
60
+ var isFirstCell = cell.parent.model.cells.indexOf(cell) === 0 ? true : false;
61
+ return /*#__PURE__*/_jsxs("div", {
62
+ className: "libro-cell-container",
63
+ tabIndex: 10,
64
+ ref: ref,
65
+ children: [/*#__PURE__*/_jsx("div", {
66
+ className: "libro-cell-input-collapser ".concat(isFirstCell ? 'firtCell' : '', " ").concat(hasErrorOutputs ? 'error' : '', " "),
67
+ ref: inputCollapserRef,
68
+ onClick: handleCellInputCollapser
69
+ }), /*#__PURE__*/_jsx(CellInputContent, {
70
+ cell: cell
71
+ })]
72
+ });
73
+ });
74
+ export var CellOutputContent = /*#__PURE__*/memo(function CellOutputContent(props) {
75
+ var _observableCell$outpu;
76
+ var cell = props.cell;
77
+ var observableCell = useObserve(cell);
78
+ var CellOutputVisulization = useInject(CellOutputVisulizationProvider);
79
+ if (!ExecutableCellView.is(cell) || !ExecutableCellView.is(observableCell)) {
80
+ return null;
81
+ }
82
+ if (!ExecutableCellModel.is(observableCell.model)) {
83
+ return null;
84
+ }
85
+ var hasOutputsScrolled = observableCell.model.hasOutputsScrolled;
86
+ var isHidden = observableCell.model.hasOutputHidden;
87
+ if (isHidden && observableCell !== null && observableCell !== void 0 && (_observableCell$outpu = observableCell.outputArea) !== null && _observableCell$outpu !== void 0 && _observableCell$outpu.length) {
88
+ return /*#__PURE__*/_jsx("div", {
89
+ className: "libro-cell-output-hidden",
90
+ children: /*#__PURE__*/_jsx(ContentMore, {})
91
+ });
92
+ }
93
+ return /*#__PURE__*/_jsxs("div", {
94
+ className: "libro-cell-output-content ".concat(hasOutputsScrolled ? 'scrolled' : '', " "),
95
+ children: [/*#__PURE__*/_jsx(CellOutputVisulization, {
96
+ cell: cell
97
+ }), /*#__PURE__*/_jsx(ViewRender, {
98
+ view: cell.outputArea
99
+ })]
100
+ });
101
+ });
102
+ export var LibroCellExecutionTime = /*#__PURE__*/forwardRef(function LibroCellExecutionTime() {
103
+ return null;
104
+ });
105
+ export var LibroCellInputBottonBlank = /*#__PURE__*/forwardRef(function LibroCellInputBottonBlank() {
106
+ return null;
107
+ });
108
+ export var LibroCellVisualization = /*#__PURE__*/forwardRef(function LibroCellVisualization() {
109
+ return null;
110
+ });
111
+ var CellOutput = /*#__PURE__*/forwardRef(function CellOutput(props, ref) {
112
+ var _cell$outputArea;
113
+ var cell = props.cell;
114
+ var outputCollapserRef = useRef(null);
115
+ var _useConfigurationValu3 = useConfigurationValue(CollapserClickActive),
116
+ _useConfigurationValu4 = _slicedToArray(_useConfigurationValu3, 1),
117
+ collapserClickActive = _useConfigurationValu4[0];
118
+ if (!ExecutableCellView.is(cell)) {
119
+ return null;
120
+ }
121
+ if (!isCellView(cell) || !ExecutableCellModel.is(cell.model) || !((_cell$outputArea = cell.outputArea) !== null && _cell$outputArea !== void 0 && _cell$outputArea.length)) {
122
+ return null;
123
+ }
124
+ var handleCellOutputCollapser = function handleCellOutputCollapser() {
125
+ if (ExecutableCellModel.is(cell.model) && collapserClickActive) {
126
+ cell.model.hasOutputHidden = !cell.model.hasOutputHidden;
127
+ }
128
+ };
129
+ var hasErrorOutputs = hasErrorOutput(cell);
130
+ return /*#__PURE__*/_jsxs("div", {
131
+ className: "libro-cell-output-container",
132
+ ref: ref,
133
+ children: [/*#__PURE__*/_jsx("div", {
134
+ className: "libro-cell-output-collapser ".concat(hasErrorOutputs ? 'error' : '', " "),
135
+ ref: outputCollapserRef,
136
+ onClick: handleCellOutputCollapser
137
+ }), /*#__PURE__*/_jsx(CellOutputContent, {
138
+ cell: cell
139
+ })]
140
+ });
141
+ });
142
+ var HideCellContent = function HideCellContent(props) {
143
+ var cell = props.cell;
144
+ var cellCollapserRef = useRef(null);
145
+ var _useConfigurationValu5 = useConfigurationValue(CollapserClickActive),
146
+ _useConfigurationValu6 = _slicedToArray(_useConfigurationValu5, 1),
147
+ collapserClickActive = _useConfigurationValu6[0];
148
+ var handleCellCollapser = function handleCellCollapser() {
149
+ if (collapserClickActive) {
150
+ cell.hasInputHidden = !cell.hasInputHidden;
151
+ }
152
+ };
153
+ var hasErrorOutputs = hasErrorOutput(cell);
154
+ return /*#__PURE__*/_jsxs(_Fragment, {
155
+ children: [/*#__PURE__*/_jsx("div", {
156
+ className: "libro-cell-collapser ".concat(hasErrorOutputs ? 'error' : ''),
157
+ ref: cellCollapserRef,
158
+ onClick: handleCellCollapser
159
+ }), /*#__PURE__*/_jsx("div", {
160
+ className: "libro-cell-hidden",
161
+ children: /*#__PURE__*/_jsx(ContentMore, {})
162
+ })]
163
+ });
164
+ };
165
+ export var DndCellItemRender = /*#__PURE__*/forwardRef(function DndCellItemRender(props, ref) {
166
+ var _instance$activeCell;
167
+ var isDrag = props.isDrag,
168
+ isMouseOverDragArea = props.isMouseOverDragArea,
169
+ cell = props.cell;
170
+ var _useConfigurationValu7 = useConfigurationValue(CellTopToolbarSetting),
171
+ _useConfigurationValu8 = _slicedToArray(_useConfigurationValu7, 1),
172
+ topToolbarVisible = _useConfigurationValu8[0];
173
+ var _useConfigurationValu9 = useConfigurationValue(CellSideToolbarVisible),
174
+ _useConfigurationValu10 = _slicedToArray(_useConfigurationValu9, 1),
175
+ sideToolbarVisible = _useConfigurationValu10[0];
176
+ var instance = useInject(ViewInstance);
177
+ var isActive = ((_instance$activeCell = instance.activeCell) === null || _instance$activeCell === void 0 ? void 0 : _instance$activeCell.id) === cell.id;
178
+ var executable = ExecutableCellModel.is(cell.model);
179
+ var isCollapsible = CellCollapsible.is(cell);
180
+ var executeState = ExecutableCellModel.is(cell.model) && !cell.model.executing ? cell.model.executeCount || ' ' : '*';
181
+ // const hasExecuteCount =
182
+ // ExecutableCellModel.is(cell.model) &&
183
+ // typeof cell.model.executeCount === 'number' &&
184
+ // cell.model.executeCount > 0;
185
+ var topToolbarArgs = useMemo(function () {
186
+ return [cell, instance, LibroToolbarArea.CellTop];
187
+ }, [cell, instance]);
188
+ var rightToolbarArgs = useMemo(function () {
189
+ return [cell, instance, LibroToolbarArea.CellRight];
190
+ }, [cell, instance]);
191
+ if (!isLibroCellModel(cell.model)) {
192
+ return null;
193
+ }
194
+ var hasCellHidden = cell.hasCellHidden();
195
+ var hasErrorOutputs = hasErrorOutput(cell);
196
+ var classNames = ['libro-dnd-cell', {
197
+ active: isActive
198
+ }, {
199
+ 'command-mode': instance.model.commandMode
200
+ }, {
201
+ 'edit-mode': !instance.model.commandMode
202
+ }, {
203
+ error: hasErrorOutputs
204
+ }, {
205
+ hidden: hasCellHidden
206
+ }];
207
+ if (cell.wrapperCls) {
208
+ classNames.push(cell.wrapperCls);
209
+ }
210
+ return /*#__PURE__*/_jsx("div", {
211
+ className: "libro-dnd-cell-border ".concat(isActive ? 'active' : '', " ").concat(instance.model.commandMode ? 'command-mode' : '', " ").concat(hasErrorOutputs ? 'error' : ''),
212
+ children: /*#__PURE__*/_jsxs("div", {
213
+ className: classnames(classNames),
214
+ children: [topToolbarVisible && isActive && /*#__PURE__*/_jsx("div", {
215
+ className: "libro-cell-top-toolbar",
216
+ children: /*#__PURE__*/_jsx(ToolbarRender, {
217
+ data: topToolbarArgs
218
+ })
219
+ }), executable && !isMouseOverDragArea && /*#__PURE__*/_jsx("div", {
220
+ className: "libro-execute-tooltip-area",
221
+ children: /*#__PURE__*/_jsx("pre", {
222
+ className: "libro-execute-state-tip",
223
+ children: "[".concat(executeState, "]:")
224
+ })
225
+ }), /*#__PURE__*/_jsx("div", {
226
+ className: "libro-dnd-cell-preview",
227
+ ref: ref
228
+ }), cell.hasCellHidden() && /*#__PURE__*/_jsx(HideCellContent, {
229
+ cell: cell
230
+ }), !cell.hasCellHidden() && /*#__PURE__*/_jsxs(_Fragment, {
231
+ children: [instance.collapserVisible && isCollapsible && /*#__PURE__*/_jsx("div", {
232
+ className: "libro-markdown-collapser",
233
+ onClick: function onClick() {
234
+ instance.collapseCell(cell, !cell.headingCollapsed);
235
+ },
236
+ children: cell.headingCollapsed ? /*#__PURE__*/_jsx(ArrowRight, {}) : /*#__PURE__*/_jsx(ArrowDown, {})
237
+ }), /*#__PURE__*/_jsx(CellInput, {
238
+ cell: cell
239
+ }), /*#__PURE__*/_jsx(CellOutput, {
240
+ cell: cell
241
+ })]
242
+ }), sideToolbarVisible && /*#__PURE__*/_jsx("div", {
243
+ className: "libro-cell-right-toolbar",
244
+ children: isActive && !isDrag && instance.model.readOnly !== true && /*#__PURE__*/_jsx(ToolbarRender, {
245
+ data: rightToolbarArgs,
246
+ tooltip: {
247
+ placement: LibroToolbarArea.CellRight
248
+ }
249
+ })
250
+ })]
251
+ })
252
+ });
253
+ });
@@ -0,0 +1,9 @@
1
+ import type { FC } from 'react';
2
+ import type { CellView } from '../../libro-protocol.js';
3
+ export interface SelectionPreviewProps {
4
+ activeCell: CellView;
5
+ }
6
+ export declare const MultipleSelectionPreviewMemo: FC<SelectionPreviewProps>;
7
+ export declare const SingleSelectionPreviewMemo: FC<SelectionPreviewProps>;
8
+ export declare const CustomDragLayer: FC;
9
+ //# sourceMappingURL=custom-drag-layer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-drag-layer.d.ts","sourceRoot":"","sources":["../../../src/components/dnd-component/custom-drag-layer.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAiB,EAAE,EAAE,MAAM,OAAO,CAAC;AAO/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGxD,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,QAAQ,CAAC;CACtB;AAqDD,eAAO,MAAM,4BAA4B,EAAE,EAAE,CAAC,qBAAqB,CAElE,CAAC;AAgCF,eAAO,MAAM,0BAA0B,EAAE,EAAE,CAAC,qBAAqB,CAEhE,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,EAuC7B,CAAC"}
@@ -0,0 +1,141 @@
1
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
2
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
3
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
6
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
7
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
8
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
9
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
10
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
11
+ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
12
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
13
+ import { useInject, ViewInstance } from '@difizen/mana-app';
14
+ import { ViewRender } from '@difizen/mana-app';
15
+ import { useState, useEffect, memo } from 'react';
16
+ import { useDragLayer } from 'react-dnd';
17
+ import { LibroCellService } from "../../cell/index.js";
18
+ import { jsx as _jsx } from "react/jsx-runtime";
19
+ import { jsxs as _jsxs } from "react/jsx-runtime";
20
+ import { Fragment as _Fragment } from "react/jsx-runtime";
21
+ var layerStyles = {
22
+ position: 'fixed',
23
+ pointerEvents: 'none',
24
+ zIndex: 1000,
25
+ left: 0,
26
+ top: 0,
27
+ width: '300px',
28
+ height: '50px'
29
+ };
30
+ var getItemStyles = function getItemStyles(currentOffset) {
31
+ if (!currentOffset) {
32
+ return {
33
+ display: 'none'
34
+ };
35
+ }
36
+ var x = currentOffset.x,
37
+ y = currentOffset.y;
38
+ var transform = "translate(".concat(x, "px, ").concat(y, "px)");
39
+ return {
40
+ transform: transform,
41
+ WebkitTransform: transform
42
+ };
43
+ };
44
+ var MultipleSelectionPreview = function MultipleSelectionPreview(_ref) {
45
+ var activeCell = _ref.activeCell;
46
+ var cellService = useInject(LibroCellService);
47
+ var _useState = useState(),
48
+ _useState2 = _slicedToArray(_useState, 2),
49
+ multipleSelectionPreview = _useState2[0],
50
+ setMultipleSelectionPreview = _useState2[1];
51
+ useEffect(function () {
52
+ cellService.getOrCreateView(activeCell.model.options, activeCell.parent.id).then(function (view) {
53
+ setMultipleSelectionPreview(view);
54
+ return;
55
+ }).catch(function () {
56
+ //
57
+ });
58
+ // eslint-disable-next-line react-hooks/exhaustive-deps
59
+ }, []);
60
+ return /*#__PURE__*/_jsxs("div", {
61
+ className: "libro-dnd-multiple-selection-preview",
62
+ children: [/*#__PURE__*/_jsx("div", {
63
+ className: "libro-dnd-active-selection",
64
+ children: multipleSelectionPreview && /*#__PURE__*/_jsx(ViewRender, {
65
+ view: multipleSelectionPreview
66
+ })
67
+ }), /*#__PURE__*/_jsx("div", {
68
+ className: "libro-dnd-cascading-multiple-selection"
69
+ })]
70
+ });
71
+ };
72
+ export var MultipleSelectionPreviewMemo = /*#__PURE__*/memo(MultipleSelectionPreview);
73
+ var SingleSelectionDragPreview = function SingleSelectionDragPreview(_ref2) {
74
+ var activeCell = _ref2.activeCell;
75
+ var cellService = useInject(LibroCellService);
76
+ var _useState3 = useState(),
77
+ _useState4 = _slicedToArray(_useState3, 2),
78
+ singleSelectionPreview = _useState4[0],
79
+ setSingleSelectionPreview = _useState4[1];
80
+ useEffect(function () {
81
+ cellService.getOrCreateView(_objectSpread(_objectSpread({}, activeCell.model.options), {}, {
82
+ modelId: activeCell.model.id,
83
+ singleSelectionDragPreview: true
84
+ }), activeCell.parent.id).then(function (view) {
85
+ setSingleSelectionPreview(view);
86
+ return;
87
+ }).catch(function () {
88
+ //
89
+ });
90
+ // eslint-disable-next-line react-hooks/exhaustive-deps
91
+ }, []);
92
+ return /*#__PURE__*/_jsx("div", {
93
+ className: "libro-dnd-active-selection",
94
+ children: singleSelectionPreview && /*#__PURE__*/_jsx(ViewRender, {
95
+ view: singleSelectionPreview
96
+ })
97
+ });
98
+ };
99
+ export var SingleSelectionPreviewMemo = /*#__PURE__*/memo(SingleSelectionDragPreview);
100
+ export var CustomDragLayer = function CustomDragLayer() {
101
+ var _useDragLayer = useDragLayer(function (monitor) {
102
+ return {
103
+ item: monitor.getItem(),
104
+ itemType: monitor.getItemType(),
105
+ currentOffset: monitor.getClientOffset(),
106
+ isDragging: monitor.isDragging()
107
+ };
108
+ }),
109
+ isDragging = _useDragLayer.isDragging,
110
+ item = _useDragLayer.item,
111
+ currentOffset = _useDragLayer.currentOffset;
112
+ var instance = useInject(ViewInstance);
113
+ function renderItem() {
114
+ var isItemSelected = instance.model.selections.findIndex(function (select) {
115
+ return select.id === item.cell.id;
116
+ }) >= 0;
117
+ if (instance.model.selections.length !== 0 && isItemSelected) {
118
+ return /*#__PURE__*/_jsx(_Fragment, {
119
+ children: instance.model.active && /*#__PURE__*/_jsx(MultipleSelectionPreviewMemo, {
120
+ activeCell: instance.model.active
121
+ })
122
+ });
123
+ }
124
+ return /*#__PURE__*/_jsx(_Fragment, {
125
+ children: instance.model.active && /*#__PURE__*/_jsx(SingleSelectionPreviewMemo, {
126
+ activeCell: instance.model.active
127
+ })
128
+ });
129
+ }
130
+ if (!isDragging) {
131
+ return null;
132
+ }
133
+ return /*#__PURE__*/_jsx("div", {
134
+ className: "libro-custom-drag-layer",
135
+ style: layerStyles,
136
+ children: /*#__PURE__*/_jsx("div", {
137
+ style: getItemStyles(currentOffset),
138
+ children: renderItem()
139
+ })
140
+ });
141
+ };
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import type { CellView, DndContentProps } from '../../libro-protocol.js';
3
+ import { BetweenCellProvider } from '../cell-protocol.js';
4
+ export interface Dragparams {
5
+ cell: CellView;
6
+ index: number;
7
+ }
8
+ export declare const DefaultDndContent: React.FC<DndContentProps>;
9
+ export declare const LibroBetweenCellContent: BetweenCellProvider;
10
+ //# sourceMappingURL=default-dnd-content.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default-dnd-content.d.ts","sourceRoot":"","sources":["../../../src/components/dnd-component/default-dnd-content.tsx"],"names":[],"mappings":"AAGA,OAAO,KAA+D,MAAM,OAAO,CAAC;AAOpF,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAKzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE1D,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAsPvD,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,mBAIrC,CAAC"}