@openbraininstitute/morphoviewer 0.0.1 → 0.24.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +35 -0
- package/lib/dist/abstract-canvas.d.ts +37 -0
- package/lib/dist/abstract-canvas.d.ts.map +1 -0
- package/lib/dist/abstract-canvas.js +131 -0
- package/lib/dist/colors.d.ts +34 -0
- package/lib/dist/colors.d.ts.map +1 -0
- package/lib/dist/colors.js +125 -0
- package/lib/dist/components/button-reset-camera/button-reset-camera.d.ts +10 -0
- package/lib/dist/components/button-reset-camera/button-reset-camera.d.ts.map +1 -0
- package/lib/dist/components/button-reset-camera/button-reset-camera.js +10 -0
- package/lib/dist/components/button-reset-camera/button-reset-camera.module.css +10 -0
- package/lib/dist/components/button-reset-camera/index.d.ts +2 -0
- package/lib/dist/components/button-reset-camera/index.d.ts.map +1 -0
- package/lib/dist/components/button-reset-camera/index.js +2 -0
- package/lib/dist/components/icons/3d.d.ts +8 -0
- package/lib/dist/components/icons/3d.d.ts.map +1 -0
- package/lib/dist/components/icons/3d.js +5 -0
- package/lib/dist/components/icons/center.d.ts +8 -0
- package/lib/dist/components/icons/center.d.ts.map +1 -0
- package/lib/dist/components/icons/center.js +5 -0
- package/lib/dist/components/icons/close.d.ts +8 -0
- package/lib/dist/components/icons/close.d.ts.map +1 -0
- package/lib/dist/components/icons/close.js +5 -0
- package/lib/dist/components/icons/copy.d.ts +2 -0
- package/lib/dist/components/icons/copy.d.ts.map +1 -0
- package/lib/dist/components/icons/copy.js +5 -0
- package/lib/dist/components/icons/dendrogram-circular.d.ts +2 -0
- package/lib/dist/components/icons/dendrogram-circular.d.ts.map +1 -0
- package/lib/dist/components/icons/dendrogram-circular.js +5 -0
- package/lib/dist/components/icons/dendrogram-straight.d.ts +2 -0
- package/lib/dist/components/icons/dendrogram-straight.d.ts.map +1 -0
- package/lib/dist/components/icons/dendrogram-straight.js +5 -0
- package/lib/dist/components/icons/fullscreen.d.ts +8 -0
- package/lib/dist/components/icons/fullscreen.d.ts.map +1 -0
- package/lib/dist/components/icons/fullscreen.js +5 -0
- package/lib/dist/components/icons/minimize.d.ts +8 -0
- package/lib/dist/components/icons/minimize.d.ts.map +1 -0
- package/lib/dist/components/icons/minimize.js +5 -0
- package/lib/dist/components/icons/pause.d.ts +8 -0
- package/lib/dist/components/icons/pause.d.ts.map +1 -0
- package/lib/dist/components/icons/pause.js +5 -0
- package/lib/dist/components/icons/play.d.ts +8 -0
- package/lib/dist/components/icons/play.d.ts.map +1 -0
- package/lib/dist/components/icons/play.js +5 -0
- package/lib/dist/components/icons/zoom-in.d.ts +8 -0
- package/lib/dist/components/icons/zoom-in.d.ts.map +1 -0
- package/lib/dist/components/icons/zoom-in.js +5 -0
- package/lib/dist/components/icons/zoom-out.d.ts +8 -0
- package/lib/dist/components/icons/zoom-out.d.ts.map +1 -0
- package/lib/dist/components/icons/zoom-out.js +5 -0
- package/lib/dist/components/morpho-viewer-octree/index.d.ts +4 -0
- package/lib/dist/components/morpho-viewer-octree/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-octree/index.js +3 -0
- package/lib/dist/components/morpho-viewer-octree/morpho-viewer-octree.d.ts +3 -0
- package/lib/dist/components/morpho-viewer-octree/morpho-viewer-octree.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-octree/morpho-viewer-octree.js +31 -0
- package/lib/dist/components/morpho-viewer-octree/morpho-viewer-octree.module.css +70 -0
- package/lib/dist/components/morpho-viewer-octree/painter/camera.d.ts +12 -0
- package/lib/dist/components/morpho-viewer-octree/painter/camera.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-octree/painter/camera.js +23 -0
- package/lib/dist/components/morpho-viewer-octree/painter/manager.d.ts +23 -0
- package/lib/dist/components/morpho-viewer-octree/painter/manager.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-octree/painter/manager.js +180 -0
- package/lib/dist/components/morpho-viewer-octree/tools.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-octree/tools.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-octree/tools.js +9 -0
- package/lib/dist/components/morpho-viewer-octree/types.d.ts +19 -0
- package/lib/dist/components/morpho-viewer-octree/types.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-octree/types.js +2 -0
- package/lib/dist/components/morpho-viewer-simul/colors.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-simul/colors.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/colors.js +24 -0
- package/lib/dist/components/morpho-viewer-simul/components/ModeSelector/ModeSelector.d.ts +7 -0
- package/lib/dist/components/morpho-viewer-simul/components/ModeSelector/ModeSelector.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/ModeSelector/ModeSelector.js +12 -0
- package/lib/dist/components/morpho-viewer-simul/components/ModeSelector/ModeSelector.module.css +25 -0
- package/lib/dist/components/morpho-viewer-simul/components/ModeSelector/index.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/ModeSelector/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/ModeSelector/index.js +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/add-recording-dialog/add-recording-dialog.d.ts +6 -0
- package/lib/dist/components/morpho-viewer-simul/components/add-recording-dialog/add-recording-dialog.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/add-recording-dialog/add-recording-dialog.js +50 -0
- package/lib/dist/components/morpho-viewer-simul/components/add-recording-dialog/add-recording-dialog.module.css +115 -0
- package/lib/dist/components/morpho-viewer-simul/components/add-recording-dialog/hooks.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/add-recording-dialog/hooks.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/add-recording-dialog/hooks.js +12 -0
- package/lib/dist/components/morpho-viewer-simul/components/add-recording-dialog/index.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/add-recording-dialog/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/add-recording-dialog/index.js +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/hint/hint.d.ts +8 -0
- package/lib/dist/components/morpho-viewer-simul/components/hint/hint.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/hint/hint.js +57 -0
- package/lib/dist/components/morpho-viewer-simul/components/hint/hint.module.css +23 -0
- package/lib/dist/components/morpho-viewer-simul/components/hint/index.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/hint/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/hint/index.js +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/legend-overlay/index.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/legend-overlay/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/legend-overlay/index.js +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/legend-overlay/legend-overlay.d.ts +5 -0
- package/lib/dist/components/morpho-viewer-simul/components/legend-overlay/legend-overlay.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/legend-overlay/legend-overlay.js +34 -0
- package/lib/dist/components/morpho-viewer-simul/components/legend-overlay/legend-overlay.module.css +5 -0
- package/lib/dist/components/morpho-viewer-simul/components/legend-overlay/legend-painter.d.ts +19 -0
- package/lib/dist/components/morpho-viewer-simul/components/legend-overlay/legend-painter.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/legend-overlay/legend-painter.js +209 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/current-time/current-time.d.ts +6 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/current-time/current-time.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/current-time/current-time.js +21 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/current-time/current-time.module.css +20 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/current-time/index.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/current-time/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/current-time/index.js +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/index.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/index.js +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/play-button/index.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/play-button/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/play-button/index.js +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/play-button/play-button.d.ts +6 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/play-button/play-button.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/play-button/play-button.js +12 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/play-button/play-button.module.css +21 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/simul-combo/index.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/simul-combo/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/simul-combo/index.js +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/simul-combo/simul-combo.d.ts +8 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/simul-combo/simul-combo.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/simul-combo/simul-combo.js +19 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/simul-combo/simul-combo.module.css +52 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/speed-combo/index.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/speed-combo/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/speed-combo/index.js +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/speed-combo/speed-combo.d.ts +6 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/speed-combo/speed-combo.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/speed-combo/speed-combo.js +20 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/speed-combo/speed-combo.module.css +69 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/spiking-controller.d.ts +6 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/spiking-controller.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/spiking-controller/spiking-controller.js +13 -0
- package/lib/dist/components/morpho-viewer-simul/components/zoom-slider/index.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/zoom-slider/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/zoom-slider/index.js +2 -0
- package/lib/dist/components/morpho-viewer-simul/components/zoom-slider/zoom-slider.d.ts +7 -0
- package/lib/dist/components/morpho-viewer-simul/components/zoom-slider/zoom-slider.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/components/zoom-slider/zoom-slider.js +13 -0
- package/lib/dist/components/morpho-viewer-simul/components/zoom-slider/zoom-slider.module.css +60 -0
- package/lib/dist/components/morpho-viewer-simul/contants.d.ts +9 -0
- package/lib/dist/components/morpho-viewer-simul/contants.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/contants.js +9 -0
- package/lib/dist/components/morpho-viewer-simul/hooks.d.ts +9 -0
- package/lib/dist/components/morpho-viewer-simul/hooks.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/hooks.js +34 -0
- package/lib/dist/components/morpho-viewer-simul/index.d.ts +3 -0
- package/lib/dist/components/morpho-viewer-simul/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/index.js +3 -0
- package/lib/dist/components/morpho-viewer-simul/morpho-viewer-simul.d.ts +3 -0
- package/lib/dist/components/morpho-viewer-simul/morpho-viewer-simul.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/morpho-viewer-simul.js +42 -0
- package/lib/dist/components/morpho-viewer-simul/morpho-viewer-simul.module.css +94 -0
- package/lib/dist/components/morpho-viewer-simul/painter/camera.d.ts +18 -0
- package/lib/dist/components/morpho-viewer-simul/painter/camera.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/camera.js +17 -0
- package/lib/dist/components/morpho-viewer-simul/painter/index.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-simul/painter/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/index.js +2 -0
- package/lib/dist/components/morpho-viewer-simul/painter/initializer.d.ts +14 -0
- package/lib/dist/components/morpho-viewer-simul/painter/initializer.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/initializer.js +35 -0
- package/lib/dist/components/morpho-viewer-simul/painter/manager.d.ts +99 -0
- package/lib/dist/components/morpho-viewer-simul/painter/manager.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/manager.js +566 -0
- package/lib/dist/components/morpho-viewer-simul/painter/math.d.ts +4 -0
- package/lib/dist/components/morpho-viewer-simul/painter/math.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/math.js +33 -0
- package/lib/dist/components/morpho-viewer-simul/painter/morphology-data.d.ts +12 -0
- package/lib/dist/components/morpho-viewer-simul/painter/morphology-data.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/morphology-data.js +40 -0
- package/lib/dist/components/morpho-viewer-simul/painter/offscreen-painter/index.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-simul/painter/offscreen-painter/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/offscreen-painter/index.js +2 -0
- package/lib/dist/components/morpho-viewer-simul/painter/offscreen-painter/material-index.d.ts +5 -0
- package/lib/dist/components/morpho-viewer-simul/painter/offscreen-painter/material-index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/offscreen-painter/material-index.js +14 -0
- package/lib/dist/components/morpho-viewer-simul/painter/offscreen-painter/offscreen-painter.d.ts +23 -0
- package/lib/dist/components/morpho-viewer-simul/painter/offscreen-painter/offscreen-painter.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/offscreen-painter/offscreen-painter.js +84 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/contants.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/contants.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/contants.js +12 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/highlight.d.ts +6 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/highlight.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/highlight.js +29 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/index.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/index.js +2 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/cursor/cursor.d.ts +12 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/cursor/cursor.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/cursor/cursor.js +34 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/cursor/fill.d.ts +15 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/cursor/fill.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/cursor/fill.js +85 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/cursor/index.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/cursor/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/cursor/index.js +2 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/cursor/texture.d.ts +3 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/cursor/texture.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/cursor/texture.js +20 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/index.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/index.js +2 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/overlay.d.ts +20 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/overlay.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/overlay.js +114 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/ticks.d.ts +24 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/ticks.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/overlay/ticks.js +127 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/painter.d.ts +28 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/painter.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/painter.js +136 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/spiking/index.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/spiking/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/spiking/index.js +2 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/spiking/spiking.d.ts +26 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/spiking/spiking.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/spiking/spiking.js +116 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/synapses.d.ts +12 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/synapses.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/painters/synapses.js +87 -0
- package/lib/dist/components/morpho-viewer-simul/painter/segments.d.ts +5 -0
- package/lib/dist/components/morpho-viewer-simul/painter/segments.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/segments.js +58 -0
- package/lib/dist/components/morpho-viewer-simul/painter/soma.d.ts +9 -0
- package/lib/dist/components/morpho-viewer-simul/painter/soma.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/soma.js +44 -0
- package/lib/dist/components/morpho-viewer-simul/painter/spiking-manager.d.ts +44 -0
- package/lib/dist/components/morpho-viewer-simul/painter/spiking-manager.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/spiking-manager.js +164 -0
- package/lib/dist/components/morpho-viewer-simul/painter/structure.d.ts +59 -0
- package/lib/dist/components/morpho-viewer-simul/painter/structure.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/structure.js +175 -0
- package/lib/dist/components/morpho-viewer-simul/painter/transition.d.ts +41 -0
- package/lib/dist/components/morpho-viewer-simul/painter/transition.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/transition.js +152 -0
- package/lib/dist/components/morpho-viewer-simul/painter/tree.d.ts +7 -0
- package/lib/dist/components/morpho-viewer-simul/painter/tree.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/painter/tree.js +96 -0
- package/lib/dist/components/morpho-viewer-simul/types/private.d.ts +33 -0
- package/lib/dist/components/morpho-viewer-simul/types/private.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/types/private.js +2 -0
- package/lib/dist/components/morpho-viewer-simul/types/public.d.ts +91 -0
- package/lib/dist/components/morpho-viewer-simul/types/public.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/types/public.js +13 -0
- package/lib/dist/components/morpho-viewer-simul/utils.d.ts +4 -0
- package/lib/dist/components/morpho-viewer-simul/utils.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-simul/utils.js +25 -0
- package/lib/dist/components/morpho-viewer-small-circuit/index.d.ts +3 -0
- package/lib/dist/components/morpho-viewer-small-circuit/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-small-circuit/index.js +3 -0
- package/lib/dist/components/morpho-viewer-small-circuit/morpho-viewer-small-circuit.d.ts +3 -0
- package/lib/dist/components/morpho-viewer-small-circuit/morpho-viewer-small-circuit.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-small-circuit/morpho-viewer-small-circuit.js +32 -0
- package/lib/dist/components/morpho-viewer-small-circuit/morpho-viewer-small-circuit.module.css +63 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/camera.d.ts +13 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/camera.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/camera.js +39 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/index.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/index.js +2 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/manager.d.ts +49 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/manager.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/manager.js +347 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/offscreen-painter/index.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/offscreen-painter/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/offscreen-painter/index.js +2 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/offscreen-painter/offscreen-painter.d.ts +22 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/offscreen-painter/offscreen-painter.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/offscreen-painter/offscreen-painter.js +61 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/painter-cell/factory/tree.d.ts +4 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/painter-cell/factory/tree.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/painter-cell/factory/tree.js +42 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/painter-cell/index.d.ts +2 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/painter-cell/index.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/painter-cell/index.js +2 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/painter-cell/painter-cell.d.ts +19 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/painter-cell/painter-cell.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-small-circuit/painter/painter-cell/painter-cell.js +105 -0
- package/lib/dist/components/morpho-viewer-small-circuit/types.d.ts +23 -0
- package/lib/dist/components/morpho-viewer-small-circuit/types.d.ts.map +1 -0
- package/lib/dist/components/morpho-viewer-small-circuit/types.js +2 -0
- package/lib/dist/components/tooltip/index.d.ts +2 -0
- package/lib/dist/components/tooltip/index.d.ts.map +1 -0
- package/lib/dist/components/tooltip/index.js +2 -0
- package/lib/dist/components/tooltip/tooltip.d.ts +14 -0
- package/lib/dist/components/tooltip/tooltip.d.ts.map +1 -0
- package/lib/dist/components/tooltip/tooltip.js +10 -0
- package/lib/dist/components/tooltip/tooltip.module.css +74 -0
- package/lib/dist/gizmo/gizmo-canvas.d.ts +17 -0
- package/lib/dist/gizmo/gizmo-canvas.d.ts.map +1 -0
- package/lib/dist/gizmo/gizmo-canvas.js +98 -0
- package/lib/dist/gizmo/index.d.ts +2 -0
- package/lib/dist/gizmo/index.d.ts.map +1 -0
- package/lib/dist/gizmo/index.js +2 -0
- package/lib/dist/gizmo/painter/shader.frag.d.ts +2 -0
- package/lib/dist/gizmo/painter/shader.frag.d.ts.map +1 -0
- package/lib/dist/gizmo/painter/shader.frag.js +19 -0
- package/lib/dist/gizmo/painter/shader.vert.d.ts +2 -0
- package/lib/dist/gizmo/painter/shader.vert.d.ts.map +1 -0
- package/lib/dist/gizmo/painter/shader.vert.js +26 -0
- package/lib/dist/gizmo/painter/tips.d.ts +13 -0
- package/lib/dist/gizmo/painter/tips.d.ts.map +1 -0
- package/lib/dist/gizmo/painter/tips.js +85 -0
- package/lib/dist/index.d.ts +16 -0
- package/lib/dist/index.d.ts.map +1 -0
- package/lib/dist/index.js +14 -0
- package/lib/dist/morphology/morphology-canvas.d.ts +64 -0
- package/lib/dist/morphology/morphology-canvas.d.ts.map +1 -0
- package/lib/dist/morphology/morphology-canvas.js +275 -0
- package/lib/dist/morphology/painter/factory.d.ts +7 -0
- package/lib/dist/morphology/painter/factory.d.ts.map +1 -0
- package/lib/dist/morphology/painter/factory.js +22 -0
- package/lib/dist/morphology/painter/index.d.ts +2 -0
- package/lib/dist/morphology/painter/index.d.ts.map +1 -0
- package/lib/dist/morphology/painter/index.js +2 -0
- package/lib/dist/morphology/painter/nodes.d.ts +21 -0
- package/lib/dist/morphology/painter/nodes.d.ts.map +1 -0
- package/lib/dist/morphology/painter/nodes.js +134 -0
- package/lib/dist/morphology/painter/painter.d.ts +31 -0
- package/lib/dist/morphology/painter/painter.d.ts.map +1 -0
- package/lib/dist/morphology/painter/painter.js +104 -0
- package/lib/dist/morphology/painter/segments.d.ts +23 -0
- package/lib/dist/morphology/painter/segments.d.ts.map +1 -0
- package/lib/dist/morphology/painter/segments.js +96 -0
- package/lib/dist/morphology/painter/textures.d.ts +10 -0
- package/lib/dist/morphology/painter/textures.d.ts.map +1 -0
- package/lib/dist/morphology/painter/textures.js +53 -0
- package/lib/dist/nrrd/get-header-length.d.ts +2 -0
- package/lib/dist/nrrd/get-header-length.d.ts.map +1 -0
- package/lib/dist/nrrd/get-header-length.js +48 -0
- package/lib/dist/nrrd/header.d.ts +28 -0
- package/lib/dist/nrrd/header.d.ts.map +1 -0
- package/lib/dist/nrrd/header.js +122 -0
- package/lib/dist/nrrd/index.d.ts +3 -0
- package/lib/dist/nrrd/index.d.ts.map +1 -0
- package/lib/dist/nrrd/index.js +33 -0
- package/lib/dist/nrrd/volume.d.ts +29 -0
- package/lib/dist/nrrd/volume.d.ts.map +1 -0
- package/lib/dist/nrrd/volume.js +129 -0
- package/lib/dist/package.json +83 -0
- package/lib/dist/parser/for-each-line.d.ts +2 -0
- package/lib/dist/parser/for-each-line.d.ts.map +1 -0
- package/lib/dist/parser/for-each-line.js +14 -0
- package/lib/dist/parser/swc.d.ts +14 -0
- package/lib/dist/parser/swc.d.ts.map +1 -0
- package/lib/dist/parser/swc.js +49 -0
- package/lib/dist/scalebar.d.ts +11 -0
- package/lib/dist/scalebar.d.ts.map +1 -0
- package/lib/dist/scalebar.js +25 -0
- package/lib/dist/tools/cache-lru.d.ts +18 -0
- package/lib/dist/tools/cache-lru.d.ts.map +1 -0
- package/lib/dist/tools/cache-lru.js +53 -0
- package/lib/dist/tools/morphology-to-tree.d.ts +4 -0
- package/lib/dist/tools/morphology-to-tree.d.ts.map +1 -0
- package/lib/dist/tools/morphology-to-tree.js +89 -0
- package/lib/dist/types.d.ts +9 -0
- package/lib/dist/types.d.ts.map +1 -0
- package/lib/dist/types.js +9 -0
- package/lib/dist/utils.d.ts +16 -0
- package/lib/dist/utils.d.ts.map +1 -0
- package/lib/dist/utils.js +56 -0
- package/package.json +40 -15
- package/package.json~ +0 -16
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import { TgdColor, TgdGeometrySphereIco, TgdLight, TgdMaterialDiffuse, TgdMaterialFlat, TgdMaterialSolid, TgdPainterGroup, TgdPainterMesh, TgdQuat, TgdVec4, } from "@tolokoban/tgd";
|
|
3
|
+
import { int16ToVec3 } from "./../../../../utils.js";
|
|
4
|
+
import { createCellFromTree } from "./factory/tree.js";
|
|
5
|
+
export class PainterCell extends TgdPainterGroup {
|
|
6
|
+
constructor(context, options) {
|
|
7
|
+
var _a;
|
|
8
|
+
super({
|
|
9
|
+
name: `Cell/${options.cell.id}`,
|
|
10
|
+
});
|
|
11
|
+
this.context = context;
|
|
12
|
+
this.options = options;
|
|
13
|
+
this._black = false;
|
|
14
|
+
const { cell } = options;
|
|
15
|
+
const geometry = new TgdGeometrySphereIco({
|
|
16
|
+
center: cell.center,
|
|
17
|
+
radius: cell.somaRadius,
|
|
18
|
+
subdivisions: 2,
|
|
19
|
+
});
|
|
20
|
+
const color = ensureCellHasColor(cell);
|
|
21
|
+
const materialType = (_a = options.matrerial) !== null && _a !== void 0 ? _a : "full";
|
|
22
|
+
switch (materialType) {
|
|
23
|
+
case "full":
|
|
24
|
+
this.material = new TgdMaterialDiffuse({
|
|
25
|
+
color,
|
|
26
|
+
lockLightsToCamera: true,
|
|
27
|
+
ambient: new TgdLight({
|
|
28
|
+
color: [0.8, 0.8, 0.8, 0],
|
|
29
|
+
}),
|
|
30
|
+
});
|
|
31
|
+
break;
|
|
32
|
+
case "flat":
|
|
33
|
+
this.material = new TgdMaterialSolid({ color });
|
|
34
|
+
break;
|
|
35
|
+
default:
|
|
36
|
+
this.material = new TgdMaterialFlat({
|
|
37
|
+
color: [...int16ToVec3(materialType), 1],
|
|
38
|
+
});
|
|
39
|
+
break;
|
|
40
|
+
}
|
|
41
|
+
const mesh = new TgdPainterMesh(context, {
|
|
42
|
+
geometry,
|
|
43
|
+
material: this.material,
|
|
44
|
+
});
|
|
45
|
+
this.add(mesh);
|
|
46
|
+
this.loadCell();
|
|
47
|
+
}
|
|
48
|
+
get black() {
|
|
49
|
+
return this._black;
|
|
50
|
+
}
|
|
51
|
+
set black(value) {
|
|
52
|
+
var _a;
|
|
53
|
+
if (this._black === value)
|
|
54
|
+
return;
|
|
55
|
+
this._black = value;
|
|
56
|
+
const { material } = this;
|
|
57
|
+
if (material instanceof TgdMaterialSolid) {
|
|
58
|
+
material.color = value
|
|
59
|
+
? new TgdVec4(0, 0, 0, 1)
|
|
60
|
+
: TgdColor.fromString((_a = this.options.cell.color) !== null && _a !== void 0 ? _a : "#f90").toVec4();
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
loadCell() {
|
|
64
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
65
|
+
const { context, material } = this;
|
|
66
|
+
const { cell, loadCell } = this.options;
|
|
67
|
+
try {
|
|
68
|
+
const [path] = cell.id.split("?");
|
|
69
|
+
const data = yield loadCell(path);
|
|
70
|
+
if (isCellAsTree(data)) {
|
|
71
|
+
const mesh = createCellFromTree(context, material, data.data, typeof this.options.matrerial === "number");
|
|
72
|
+
const [x, y, z] = cell.center;
|
|
73
|
+
const quat = new TgdQuat(cell.orientation);
|
|
74
|
+
mesh.transfo.setPosition(x, y, z);
|
|
75
|
+
mesh.transfo.orientation = quat;
|
|
76
|
+
this.removeAll();
|
|
77
|
+
this.add(mesh);
|
|
78
|
+
context.paint();
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
catch (error) {
|
|
82
|
+
console.error(`Error loading cell "${cell.id}":`, error);
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
function isCellAsTree(data) {
|
|
88
|
+
if (!data || data.type !== "tree")
|
|
89
|
+
return false;
|
|
90
|
+
return true;
|
|
91
|
+
}
|
|
92
|
+
function ensureCellHasColor(cell) {
|
|
93
|
+
const color = new TgdColor(Math.random(), Math.random(), Math.random(), 1);
|
|
94
|
+
color.rgb2hsl();
|
|
95
|
+
color.L = 0.5;
|
|
96
|
+
color.hsl2rgb();
|
|
97
|
+
if (cell.color) {
|
|
98
|
+
color.parse(cell.color);
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
cell.color = color.toString();
|
|
102
|
+
}
|
|
103
|
+
return [color.R, color.G, color.B, color.A];
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFpbnRlci1jZWxsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvbW9ycGhvLXZpZXdlci1zbWFsbC1jaXJjdWl0L3BhaW50ZXIvcGFpbnRlci1jZWxsL3BhaW50ZXItY2VsbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUVMLFFBQVEsRUFFUixvQkFBb0IsRUFDcEIsUUFBUSxFQUVSLGtCQUFrQixFQUNsQixlQUFlLEVBQ2YsZ0JBQWdCLEVBQ2hCLGVBQWUsRUFDZixjQUFjLEVBQ2QsT0FBTyxFQUNQLE9BQU8sR0FDUixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFdEMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFVcEQsTUFBTSxPQUFPLFdBQVksU0FBUSxlQUFlO0lBSTlDLFlBQ21CLE9BQW1CLEVBQ25CLE9BQTJCOztRQUU1QyxLQUFLLENBQUM7WUFDSixJQUFJLEVBQUUsUUFBUSxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRTtTQUNoQyxDQUFDLENBQUM7UUFMYyxZQUFPLEdBQVAsT0FBTyxDQUFZO1FBQ25CLFlBQU8sR0FBUCxPQUFPLENBQW9CO1FBSnRDLFdBQU0sR0FBRyxLQUFLLENBQUM7UUFTckIsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLE9BQU8sQ0FBQztRQUN6QixNQUFNLFFBQVEsR0FBRyxJQUFJLG9CQUFvQixDQUFDO1lBQ3hDLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNuQixNQUFNLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDdkIsWUFBWSxFQUFFLENBQUM7U0FDaEIsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxLQUFLLEdBQUcsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkMsTUFBTSxZQUFZLEdBQUcsTUFBQSxPQUFPLENBQUMsU0FB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
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { MorphoViewerTree } from "../morpho-viewer-simul";
|
|
2
|
+
export interface MorphoViewerSmallCircuitCell {
|
|
3
|
+
id: string;
|
|
4
|
+
center: [x: number, y: number, z: number];
|
|
5
|
+
orientation: [x: number, y: number, z: number, w: number];
|
|
6
|
+
somaRadius: number;
|
|
7
|
+
color?: string;
|
|
8
|
+
}
|
|
9
|
+
export type MorphoViewerSmallCircuitCellData = {
|
|
10
|
+
type: "tree";
|
|
11
|
+
data: MorphoViewerTree;
|
|
12
|
+
};
|
|
13
|
+
export interface MorphoViewerSmallCircuitProps {
|
|
14
|
+
className?: string;
|
|
15
|
+
backgroundColor?: string;
|
|
16
|
+
circuit: MorphoViewerSmallCircuitCell[];
|
|
17
|
+
highlightedCellIds?: string[];
|
|
18
|
+
onCellHover?(cell: MorphoViewerSmallCircuitCell | undefined): void;
|
|
19
|
+
onCellClick?(cell: MorphoViewerSmallCircuitCell | undefined): void;
|
|
20
|
+
onClose?(): void;
|
|
21
|
+
loadCell(id: string): Promise<MorphoViewerSmallCircuitCellData | null>;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/morpho-viewer-small-circuit/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,MAAM,WAAW,4BAA4B;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAC1C,WAAW,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,gCAAgC,GAAG;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,gBAAgB,CAAC;CACxB,CAAC;AAEF,MAAM,WAAW,6BAA6B;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,4BAA4B,EAAE,CAAC;IACxC,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,WAAW,CAAC,CAAC,IAAI,EAAE,4BAA4B,GAAG,SAAS,GAAG,IAAI,CAAC;IACnE,WAAW,CAAC,CAAC,IAAI,EAAE,4BAA4B,GAAG,SAAS,GAAG,IAAI,CAAC;IACnE,OAAO,CAAC,IAAI,IAAI,CAAC;IAKjB,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,gCAAgC,GAAG,IAAI,CAAC,CAAC;CACxE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/tooltip/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { default } from "./tooltip.js";
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy90b29sdGlwL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUMifQ==
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export interface TooltipProps {
|
|
3
|
+
className?: string;
|
|
4
|
+
classNameTooltip?: string;
|
|
5
|
+
backColor?: string;
|
|
6
|
+
foreColor?: string;
|
|
7
|
+
arrow?: "top" | "topLeft" | "topRight";
|
|
8
|
+
arrowWidth?: number;
|
|
9
|
+
arrowHeight?: number;
|
|
10
|
+
tooltip: React.ReactNode;
|
|
11
|
+
children: React.ReactNode;
|
|
12
|
+
}
|
|
13
|
+
export default function Tooltip({ className, classNameTooltip, tooltip, arrow, arrowWidth, arrowHeight, backColor, foreColor, children, }: TooltipProps): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
//# sourceMappingURL=tooltip.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../src/components/tooltip/tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,MAAM,WAAW,YAAY;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,GAAG,UAAU,CAAC;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,EAC9B,SAAS,EACT,gBAAgB,EAChB,OAAO,EACP,KAAa,EACb,UAAe,EACf,WAAgB,EAChB,SAAkB,EAClB,SAAkB,EAClB,QAAQ,GACT,EAAE,YAAY,2CA4Bd"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { classNames } from "./../../utils.js";
|
|
3
|
+
import styles from "./tooltip.module.css";
|
|
4
|
+
export default function Tooltip({ className, classNameTooltip, tooltip, arrow = "top", arrowWidth = 16, arrowHeight = 16, backColor = "#fff", foreColor = "#000", children, }) {
|
|
5
|
+
return (_jsxs("div", { className: classNames(className, styles.container), style: {
|
|
6
|
+
"--custom-backColor": backColor,
|
|
7
|
+
"--custom-foreColor": foreColor,
|
|
8
|
+
}, children: [children, _jsxs("div", { className: classNames(styles.tooltip, styles[arrow], classNameTooltip), children: [tooltip, _jsxs("svg", { className: classNames(styles.arrow, styles[arrow]), viewBox: `0 0 ${arrowWidth} ${arrowHeight}`, children: [_jsx("path", { stroke: "none", d: `M0,${arrowHeight}L${arrowWidth / 2},0,${arrowWidth},${arrowHeight}Z` }), _jsx("path", { fill: "none", d: `M0,${arrowHeight}L${arrowWidth / 2},0,${arrowWidth},${arrowHeight}` })] })] })] }));
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3Rvb2x0aXAvdG9vbHRpcC50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUVBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFckMsT0FBTyxNQUFNLE1BQU0sc0JBQXNCLENBQUM7QUFjMUMsTUFBTSxDQUFDLE9BQU8sVUFBVSxPQUFPLENBQUMsRUFDOUIsU0FBUyxFQUNULGdCQUFnQixFQUNoQixPQUFPLEVBQ1AsS0FBSyxHQUFHLEtBQUssRUFDYixVQUFVLEdBQUcsRUFBRSxFQUNmLFdBQVcsR0FBRyxFQUFFLEVBQ2hCLFNBQVMsR0FBRyxNQUFNLEVBQ2xCLFNBQVMsR0FBRyxNQUFNLEVBQ2xCLFFBQVEsR0FDSztJQUNiLE9BQU8sQ0FDTCxlQUNFLFNBQVMsRUFBRSxVQUFVLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsRUFDbEQsS0FBSyxFQUFFO1lBQ0wsb0JBQW9CLEVBQUUsU0FBUztZQUMvQixvQkFBb0IsRUFBRSxTQUFTO1NBQ2hDLGFBRUEsUUFBUSxFQUNULGVBQUssU0FBUyxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxnQkFBZ0IsQ0FBQyxhQUN4RSxPQUFPLEVBQ1IsZUFDRSxTQUFTLEVBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQ2xELE9BQU8sRUFBRSxPQUFPLFVBQVUsSUFBSSxXQUFXLEVBQUUsYUFFM0MsZUFDRSxNQUFNLEVBQUMsTUFBTSxFQUNiLENBQUMsRUFBRSxNQUFNLFdBQVcsSUFBSSxVQUFVLEdBQUcsQ0FBQyxNQUFNLFVBQVUsSUFBSSxXQUFXLEdBQUcsR0FDeEUsRUFDRixlQUNFLElBQUksRUFBQyxNQUFNLEVBQ1gsQ0FBQyxFQUFFLE1BQU0sV0FBVyxJQUFJLFVBQVUsR0FBRyxDQUFDLE1BQU0sVUFBVSxJQUFJLFdBQVcsRUFBRSxHQUN2RSxJQUNFLElBQ0YsSUFDRixDQUNQLENBQUM7QUFDSixDQUFDIn0=
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
.container {
|
|
2
|
+
position: relative;
|
|
3
|
+
--custom-backColor: #fff;
|
|
4
|
+
--custom-foreColor: #000;
|
|
5
|
+
--arrowWidth: 16px;
|
|
6
|
+
--arrowHeight: 16px;
|
|
7
|
+
--borderColor: var(--custom-foreColor);
|
|
8
|
+
--borderColor: color-mix(in srgb, var(--custom-foreColor) 50%, transparent 50%);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.tooltip {
|
|
12
|
+
border-radius: 0.25em;
|
|
13
|
+
padding: 0.5em 1em;
|
|
14
|
+
color: var(--custom-foreColor, #000);
|
|
15
|
+
background-color: var(--custom-backColor, #fff);
|
|
16
|
+
position: absolute;
|
|
17
|
+
/* width: fit-content; */
|
|
18
|
+
z-index: 999999;
|
|
19
|
+
box-shadow: 0 0.25em 0.5em #0007;
|
|
20
|
+
pointer-events: none;
|
|
21
|
+
border: 1px solid var(--borderColor);
|
|
22
|
+
text-align: center;
|
|
23
|
+
min-width: 160px;
|
|
24
|
+
transition: opacity 0.2s;
|
|
25
|
+
opacity: 0;
|
|
26
|
+
|
|
27
|
+
&.top {
|
|
28
|
+
left: 50%;
|
|
29
|
+
bottom: 0;
|
|
30
|
+
transform: translate(-50%, calc(100% + var(--arrowHeight)));
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
&.topLeft {
|
|
34
|
+
left: 50%;
|
|
35
|
+
bottom: 0;
|
|
36
|
+
transform: translate(calc(-1 * var(--arrowWidth)), calc(100% + var(--arrowHeight)));
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
&.topRight {
|
|
40
|
+
left: 50%;
|
|
41
|
+
bottom: 0;
|
|
42
|
+
transform: translate(calc(-100% + var(--arrowWidth)), calc(100% + var(--arrowHeight)));
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.arrow {
|
|
46
|
+
width: var(--arrowWidth);
|
|
47
|
+
height: var(--arrowHeight);
|
|
48
|
+
fill: var(--custom-backColor);
|
|
49
|
+
stroke: var(--borderColor);
|
|
50
|
+
position: absolute;
|
|
51
|
+
|
|
52
|
+
&.top {
|
|
53
|
+
top: 0;
|
|
54
|
+
left: 50%;
|
|
55
|
+
transform: translate(-50%, calc(-100% + 1px));
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
&.topLeft {
|
|
59
|
+
top: 0;
|
|
60
|
+
left: var(--arrowWidth);
|
|
61
|
+
transform: translate(-50%, calc(-100% + 1px));
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
&.topRight {
|
|
65
|
+
top: 0;
|
|
66
|
+
right: var(--arrowWidth);
|
|
67
|
+
transform: translate(50%, calc(-100% + 1px));
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.container:hover .tooltip {
|
|
73
|
+
opacity: 1;
|
|
74
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { TgdCamera, TgdEvent, TgdQuat } from "@tolokoban/tgd";
|
|
2
|
+
export declare class GizmoCanvas {
|
|
3
|
+
eventTipClick: TgdEvent<{
|
|
4
|
+
from: Readonly<TgdQuat>;
|
|
5
|
+
to: Readonly<TgdQuat>;
|
|
6
|
+
}>;
|
|
7
|
+
private _canvas;
|
|
8
|
+
private context;
|
|
9
|
+
private _camera;
|
|
10
|
+
private _orbiter;
|
|
11
|
+
private _tipsPainter;
|
|
12
|
+
attachCamera(camera: TgdCamera): void;
|
|
13
|
+
get canvas(): HTMLCanvasElement | null;
|
|
14
|
+
set canvas(canvas: HTMLCanvasElement | null);
|
|
15
|
+
private readonly handleTap;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=gizmo-canvas.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gizmo-canvas.d.ts","sourceRoot":"","sources":["../../src/gizmo/gizmo-canvas.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAGT,QAAQ,EAIR,OAAO,EAGR,MAAM,gBAAgB,CAAC;AAGxB,qBAAa,WAAW;IAIf,aAAa;cACZ,QAAQ,CAAC,OAAO,CAAC;YACnB,QAAQ,CAAC,OAAO,CAAC;OAClB;IAEL,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,OAAO,CAA2B;IAC1C,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,QAAQ,CAAyC;IACzD,OAAO,CAAC,YAAY,CAA4B;IAEhD,YAAY,CAAC,MAAM,EAAE,SAAS;IAQ9B,IAAI,MAAM,IAGS,iBAAiB,GAAG,IAAI,CAD1C;IACD,IAAI,MAAM,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI,EAwC1C;IAED,OAAO,CAAC,QAAQ,CAAC,SAAS,CA4BxB;CACH"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { TgdContext, TgdControllerCameraOrbit, TgdEvent, TgdPainterClear, TgdPainterDepth, TgdQuat, TgdVec3, } from "@tolokoban/tgd";
|
|
2
|
+
import { TipsPainter } from "./painter/tips.js";
|
|
3
|
+
export class GizmoCanvas {
|
|
4
|
+
constructor() {
|
|
5
|
+
this.eventTipClick = new TgdEvent();
|
|
6
|
+
this._canvas = null;
|
|
7
|
+
this.context = null;
|
|
8
|
+
this._camera = null;
|
|
9
|
+
this._orbiter = null;
|
|
10
|
+
this._tipsPainter = null;
|
|
11
|
+
this.handleTap = (evt) => {
|
|
12
|
+
var _a;
|
|
13
|
+
const camera = (_a = this._tipsPainter) === null || _a === void 0 ? void 0 : _a.camera;
|
|
14
|
+
if (!camera)
|
|
15
|
+
return;
|
|
16
|
+
const { origin, direction } = camera.castRay(evt.x, evt.y);
|
|
17
|
+
const maxDist = 1;
|
|
18
|
+
let bestDist = maxDist;
|
|
19
|
+
let bestName = "+X+Y+Z";
|
|
20
|
+
for (const [tip, name] of TIPS) {
|
|
21
|
+
const dist = tip.distanceToLineSquared(origin, direction);
|
|
22
|
+
if (dist < bestDist) {
|
|
23
|
+
bestDist = dist;
|
|
24
|
+
bestName = name;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
if (bestDist < maxDist) {
|
|
28
|
+
const quat = new TgdQuat();
|
|
29
|
+
quat.face(bestName);
|
|
30
|
+
if (quat.isEqual(camera.transfo.orientation)) {
|
|
31
|
+
quat.rotateAroundY(Math.PI);
|
|
32
|
+
}
|
|
33
|
+
this.eventTipClick.dispatch({
|
|
34
|
+
from: new TgdQuat(camera.transfo.orientation),
|
|
35
|
+
to: quat,
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
attachCamera(camera) {
|
|
41
|
+
this._camera = camera;
|
|
42
|
+
const { context } = this;
|
|
43
|
+
if (!context)
|
|
44
|
+
return;
|
|
45
|
+
context.camera = camera;
|
|
46
|
+
}
|
|
47
|
+
get canvas() {
|
|
48
|
+
return this._canvas;
|
|
49
|
+
}
|
|
50
|
+
set canvas(canvas) {
|
|
51
|
+
var _a;
|
|
52
|
+
if (canvas === this._canvas)
|
|
53
|
+
return;
|
|
54
|
+
this._canvas = canvas;
|
|
55
|
+
if (this.context) {
|
|
56
|
+
this.context.inputs.pointer.eventTap.removeListener(this.handleTap);
|
|
57
|
+
this.context.delete();
|
|
58
|
+
this.context = null;
|
|
59
|
+
const orbiter = this._orbiter;
|
|
60
|
+
if (orbiter) {
|
|
61
|
+
orbiter.detach();
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
(_a = this._tipsPainter) === null || _a === void 0 ? void 0 : _a.delete();
|
|
65
|
+
if (!canvas)
|
|
66
|
+
return;
|
|
67
|
+
const context = new TgdContext(canvas, {
|
|
68
|
+
alpha: true,
|
|
69
|
+
depth: true,
|
|
70
|
+
antialias: true,
|
|
71
|
+
name: "GizmoCanvas",
|
|
72
|
+
});
|
|
73
|
+
context.inputs.pointer.eventTap.addListener(this.handleTap);
|
|
74
|
+
this.context = context;
|
|
75
|
+
if (this._camera)
|
|
76
|
+
this.context.camera = this._camera;
|
|
77
|
+
this._orbiter = new TgdControllerCameraOrbit(context, {
|
|
78
|
+
speedPanning: 0,
|
|
79
|
+
speedZoom: 0,
|
|
80
|
+
});
|
|
81
|
+
const painter = new TipsPainter(context);
|
|
82
|
+
this._tipsPainter = painter;
|
|
83
|
+
context.add(new TgdPainterClear(context, {
|
|
84
|
+
color: [0, 0, 0, 0],
|
|
85
|
+
depth: 1,
|
|
86
|
+
}), new TgdPainterDepth(context, { enabled: true }), painter);
|
|
87
|
+
context.paint();
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
const TIPS = [
|
|
91
|
+
[new TgdVec3(1, 0, 0), "-Z+Y+X"],
|
|
92
|
+
[new TgdVec3(0, 1, 0), "+Z+X+Y"],
|
|
93
|
+
[new TgdVec3(0, 0, 1), "+X+Y+Z"],
|
|
94
|
+
[new TgdVec3(-1, 0, 0), "+Z+Y-X"],
|
|
95
|
+
[new TgdVec3(0, -1, 0), "+Z-X-Y"],
|
|
96
|
+
[new TgdVec3(0, 0, -1), "-X+Y-Z"],
|
|
97
|
+
];
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2l6bW8tY2FudmFzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2dpem1vL2dpem1vLWNhbnZhcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsVUFBVSxFQUNWLHdCQUF3QixFQUN4QixRQUFRLEVBRVIsZUFBZSxFQUNmLGVBQWUsRUFDZixPQUFPLEVBRVAsT0FBTyxHQUNSLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE1BQU0sT0FBTyxXQUFXO0lBQXhCO1FBSVMsa0JBQWEsR0FBRyxJQUFJLFFBQVEsRUFHL0IsQ0FBQztRQUVHLFlBQU8sR0FBNkIsSUFBSSxDQUFDO1FBQ3pDLFlBQU8sR0FBc0IsSUFBSSxDQUFDO1FBQ2xDLFlBQU8sR0FBcUIsSUFBSSxDQUFDO1FBQ2pDLGFBQVEsR0FBb0MsSUFBSSxDQUFDO1FBQ2pELGlCQUFZLEdBQXVCLElBQUksQ0FBQztRQXVEL0IsY0FBUyxHQUFHLENBQUMsR0FBNEIsRUFBRSxFQUFFOztZQUM1RCxNQUFNLE1BQU0sR0FBRyxNQUFBLElBQUksQ0FBQyxZQUFZLDBDQUFFLE1BQU0sQ0FBQztZQUN6QyxJQUFJLENBQUMsTUFBTTtnQkFBRSxPQUFPO1lBRXBCLE1BQU0sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMzRCxNQUFNLE9BQU8sR0FBRyxDQUFDLENBQUM7WUFDbEIsSUFBSSxRQUFRLEdBQUcsT0FBTyxDQUFDO1lBRXZCLElBQUksUUFBUSxHQUFnQixRQUFRLENBQUM7WUFDckMsS0FBSyxNQUFNLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUMvQixNQUFNLElBQUksR0FBRyxHQUFHLENBQUMscUJBQXFCLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDO2dCQUMxRCxJQUFJLElBQUksR0FBRyxRQUFRLEVBQUUsQ0FBQztvQkFDcEIsUUFBUSxHQUFHLElBQUksQ0FBQztvQkFFaEIsUUFBUSxHQUFHLElBQUksQ0FBQztnQkFDbEIsQ0FBQztZQUNILENBQUM7WUFDRCxJQUFJLFFBQVEsR0FBRyxPQUFPLEVBQUUsQ0FBQztnQkFDdkIsTUFBTSxJQUFJLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztnQkFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDcEIsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztvQkFDN0MsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQzlCLENBQUM7Z0JBQ0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUM7b0JBQzFCLElBQUksRUFBRSxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztvQkFDN0MsRUFBRSxFQUFFLElBQUk7aUJBQ1QsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztRQUNILENBQUMsQ0FBQztJQUNKLENBQUM7SUFsRkMsWUFBWSxDQUFDLE1BQWlCO1FBQzVCLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1FBQ3RCLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUM7UUFDekIsSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPO1FBRXJCLE9BQU8sQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUNELElBQUksTUFBTSxDQUFDLE1BQWdDOztRQUN6QyxJQUFJLE1BQU0sS0FBSyxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU87UUFFcEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDdEIsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3BFLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7WUFDcEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUM5QixJQUFJLE9BQU8sRUFBRSxDQUFDO2dCQUNaLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNuQixDQUFDO1FBQ0gsQ0FBQztRQUNELE1BQUEsSUFBSSxDQUFDLFlBQVksMENBQUUsTUFBTSxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLE1BQU07WUFBRSxPQUFPO1FBRXBCLE1BQU0sT0FBTyxHQUFHLElBQUksVUFBVSxDQUFDLE1BQU0sRUFBRTtZQUNyQyxLQUFLLEVBQUUsSUFBSTtZQUNYLEtBQUssRUFBRSxJQUFJO1lBQ1gsU0FBUyxFQUFFLElBQUk7WUFDZixJQUFJLEVBQUUsYUFBYTtTQUNwQixDQUFDLENBQUM7UUFDSCxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM1RCxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN2QixJQUFJLElBQUksQ0FBQyxPQUFPO1lBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUNyRCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksd0JBQXdCLENBQUMsT0FBTyxFQUFFO1lBQ3BELFlBQVksRUFBRSxDQUFDO1lBQ2YsU0FBUyxFQUFFLENBQUM7U0FDYixDQUFDLENBQUM7UUFDSCxNQUFNLE9BQU8sR0FBRyxJQUFJLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsWUFBWSxHQUFHLE9BQU8sQ0FBQztRQUM1QixPQUFPLENBQUMsR0FBRyxDQUNULElBQUksZUFBZSxDQUFDLE9BQU8sRUFBRTtZQUMzQixLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDbkIsS0FBSyxFQUFFLENBQUM7U0FDVCxDQUFDLEVBQ0YsSUFBSSxlQUFlLENBQUMsT0FBTyxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQy9DLE9BQU8sQ0FDUixDQUFDO1FBQ0YsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2xCLENBQUM7Q0ErQkY7QUFFRCxNQUFNLElBQUksR0FBa0M7SUFDMUMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQztJQUNoQyxDQUFDLElBQUksT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDO0lBQ2hDLENBQUMsSUFBSSxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxRQUFRLENBQUM7SUFDaEMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDO0lBQ2pDLENBQUMsSUFBSSxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLFFBQVEsQ0FBQztJQUNqQyxDQUFDLElBQUksT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLENBQUM7Q0FDbEMsQ0FBQyJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/gizmo/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const FRAG = "#version 300 es\n\nprecision mediump float;\n\nuniform sampler2D uniTexture;\n\nin vec2 varUV;\nout vec4 FragColor;\n\n\nvoid main() {\n vec2 uv = varUV + gl_PointCoord * vec2(0.333333333, 0.5);\n FragColor = texture(uniTexture, uv);\n if (FragColor.w < 1.0) {\n discard;\n }\n}\n";
|
|
2
|
+
//# sourceMappingURL=shader.frag.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shader.frag.d.ts","sourceRoot":"","sources":["../../../src/gizmo/painter/shader.frag.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,IAAI,gTAiBhB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export const FRAG = `#version 300 es
|
|
2
|
+
|
|
3
|
+
precision mediump float;
|
|
4
|
+
|
|
5
|
+
uniform sampler2D uniTexture;
|
|
6
|
+
|
|
7
|
+
in vec2 varUV;
|
|
8
|
+
out vec4 FragColor;
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
void main() {
|
|
12
|
+
vec2 uv = varUV + gl_PointCoord * vec2(0.333333333, 0.5);
|
|
13
|
+
FragColor = texture(uniTexture, uv);
|
|
14
|
+
if (FragColor.w < 1.0) {
|
|
15
|
+
discard;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
`;
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhZGVyLmZyYWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZ2l6bW8vcGFpbnRlci9zaGFkZXIuZnJhZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxJQUFJLEdBQUc7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBaUJuQixDQUFDIn0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const VERT = "#version 300 es\n\nprecision mediump float;\n\nuniform mat4 uniModelViewMatrix;\nuniform mat4 uniProjectionMatrix;\nuniform float uniScreenHeight;\n\n/**\n * Position of the tip.\n */\nin vec4 attPos;\nin vec2 attUV;\n\nout vec2 varUV;\n\nvoid main() {\n varUV = attUV;\n vec4 point = uniModelViewMatrix * attPos;\n gl_Position = uniProjectionMatrix * point;\n point.y += 0.3;\n point = uniProjectionMatrix * point;\n gl_PointSize = uniScreenHeight * abs(gl_Position.y / gl_Position.w - point.y / point.w);\n}\n";
|
|
2
|
+
//# sourceMappingURL=shader.vert.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shader.vert.d.ts","sourceRoot":"","sources":["../../../src/gizmo/painter/shader.vert.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,IAAI,shBAwBhB,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export const VERT = `#version 300 es
|
|
2
|
+
|
|
3
|
+
precision mediump float;
|
|
4
|
+
|
|
5
|
+
uniform mat4 uniModelViewMatrix;
|
|
6
|
+
uniform mat4 uniProjectionMatrix;
|
|
7
|
+
uniform float uniScreenHeight;
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Position of the tip.
|
|
11
|
+
*/
|
|
12
|
+
in vec4 attPos;
|
|
13
|
+
in vec2 attUV;
|
|
14
|
+
|
|
15
|
+
out vec2 varUV;
|
|
16
|
+
|
|
17
|
+
void main() {
|
|
18
|
+
varUV = attUV;
|
|
19
|
+
vec4 point = uniModelViewMatrix * attPos;
|
|
20
|
+
gl_Position = uniProjectionMatrix * point;
|
|
21
|
+
point.y += 0.3;
|
|
22
|
+
point = uniProjectionMatrix * point;
|
|
23
|
+
gl_PointSize = uniScreenHeight * abs(gl_Position.y / gl_Position.w - point.y / point.w);
|
|
24
|
+
}
|
|
25
|
+
`;
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhZGVyLnZlcnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZ2l6bW8vcGFpbnRlci9zaGFkZXIudmVydC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxJQUFJLEdBQUc7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQXdCbkIsQ0FBQyJ9
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { TgdCameraPerspective, TgdContext, TgdPainter } from "@tolokoban/tgd";
|
|
2
|
+
export declare class TipsPainter extends TgdPainter {
|
|
3
|
+
private readonly context;
|
|
4
|
+
readonly camera: TgdCameraPerspective;
|
|
5
|
+
private readonly texture;
|
|
6
|
+
private readonly prg;
|
|
7
|
+
private readonly vao;
|
|
8
|
+
constructor(context: TgdContext);
|
|
9
|
+
delete(): void;
|
|
10
|
+
paint(): void;
|
|
11
|
+
setTips(): void;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=tips.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tips.d.ts","sourceRoot":"","sources":["../../../src/gizmo/painter/tips.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,UAAU,EAEV,UAAU,EAKX,MAAM,gBAAgB,CAAC;AAKxB,qBAAa,WAAY,SAAQ,UAAU;IAW7B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAVpC,SAAgB,MAAM,uBAKnB;IACH,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IACvC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAa;IACjC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAiB;gBAER,OAAO,EAAE,UAAU;IA4BhD,MAAM,IAAI,IAAI;IAId,KAAK,IAAI,IAAI;IAeb,OAAO;CAWR"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { TgdCameraPerspective, TgdDataset, TgdPainter, TgdProgram, TgdTexture2D, TgdVertexArray, tgdCanvasCreateWithContext2D, } from "@tolokoban/tgd";
|
|
2
|
+
import { FRAG } from "./shader.frag.js";
|
|
3
|
+
import { VERT } from "./shader.vert.js";
|
|
4
|
+
export class TipsPainter extends TgdPainter {
|
|
5
|
+
constructor(context) {
|
|
6
|
+
super();
|
|
7
|
+
this.context = context;
|
|
8
|
+
this.camera = new TgdCameraPerspective({
|
|
9
|
+
transfo: { distance: 4 },
|
|
10
|
+
fovy: Math.PI / 4,
|
|
11
|
+
near: 1e-6,
|
|
12
|
+
far: 8,
|
|
13
|
+
});
|
|
14
|
+
this.texture = new TgdTexture2D(context, {
|
|
15
|
+
params: {
|
|
16
|
+
minFilter: "LINEAR",
|
|
17
|
+
magFilter: "LINEAR",
|
|
18
|
+
},
|
|
19
|
+
});
|
|
20
|
+
this.setTips();
|
|
21
|
+
const dataset = new TgdDataset({
|
|
22
|
+
attPos: "vec3",
|
|
23
|
+
attUV: "vec2",
|
|
24
|
+
});
|
|
25
|
+
dataset.set("attPos", new Float32Array([1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 0, 0, 0, -1, 0, 0, 0, -1]));
|
|
26
|
+
const X = 1 / 3;
|
|
27
|
+
const Y = 1 / 2;
|
|
28
|
+
dataset.set("attUV", new Float32Array([0, 0, X, 0, 2 * X, 0, 0, Y, X, Y, 2 * X, Y]));
|
|
29
|
+
const prg = new TgdProgram(context.gl, { vert: VERT, frag: FRAG });
|
|
30
|
+
const vao = new TgdVertexArray(context.gl, prg, [dataset]);
|
|
31
|
+
this.prg = prg;
|
|
32
|
+
this.vao = vao;
|
|
33
|
+
}
|
|
34
|
+
delete() {
|
|
35
|
+
this.vao.delete();
|
|
36
|
+
}
|
|
37
|
+
paint() {
|
|
38
|
+
const { camera, context, prg, vao } = this;
|
|
39
|
+
const { gl } = context;
|
|
40
|
+
camera.transfo.orientation = context.camera.transfo.orientation;
|
|
41
|
+
camera.screenWidth = context.width;
|
|
42
|
+
camera.screenHeight = context.height;
|
|
43
|
+
prg.use();
|
|
44
|
+
this.texture.activate(0, prg, "uniTexture");
|
|
45
|
+
prg.uniform1f("uniScreenHeight", context.height);
|
|
46
|
+
prg.uniformMatrix4fv("uniModelViewMatrix", camera.matrixModelView);
|
|
47
|
+
prg.uniformMatrix4fv("uniProjectionMatrix", camera.matrixProjection);
|
|
48
|
+
vao.bind();
|
|
49
|
+
gl.drawArrays(gl.POINTS, 0, 6);
|
|
50
|
+
}
|
|
51
|
+
setTips() {
|
|
52
|
+
const SIZE = 256;
|
|
53
|
+
const { canvas, ctx } = tgdCanvasCreateWithContext2D(SIZE * 3, SIZE * 2);
|
|
54
|
+
paintDisk(ctx, 0, 0, SIZE, "X", "#f00", "#fff");
|
|
55
|
+
paintDisk(ctx, 1, 0, SIZE, "Y", "#0f0", "#000");
|
|
56
|
+
paintDisk(ctx, 2, 0, SIZE, "Z", "#00f", "#fff");
|
|
57
|
+
paintDisk(ctx, 0, 1, SIZE, "", "#f00", "#500");
|
|
58
|
+
paintDisk(ctx, 1, 1, SIZE, "", "#0f0", "#050");
|
|
59
|
+
paintDisk(ctx, 2, 1, SIZE, "", "#00f", "#005");
|
|
60
|
+
this.texture.loadBitmap(canvas);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
function paintDisk(ctx, col, row, size, text, colorBack, colorText = "#fff") {
|
|
64
|
+
const x = (col + 0.5) * size;
|
|
65
|
+
const y = (row + 0.5) * size;
|
|
66
|
+
const r = size * 0.45;
|
|
67
|
+
ctx.fillStyle = colorBack;
|
|
68
|
+
ctx.beginPath();
|
|
69
|
+
ctx.ellipse(x, y, r, r, 0, 0, 2 * Math.PI);
|
|
70
|
+
ctx.fill();
|
|
71
|
+
if (text) {
|
|
72
|
+
ctx.font = `bold ${size * 0.5}px sans-serif`;
|
|
73
|
+
ctx.fillStyle = colorText;
|
|
74
|
+
ctx.textAlign = "center";
|
|
75
|
+
ctx.textBaseline = "middle";
|
|
76
|
+
ctx.fillText(text, x, y);
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
ctx.fillStyle = colorText;
|
|
80
|
+
ctx.beginPath();
|
|
81
|
+
ctx.ellipse(x, y, r * 0.8, r * 0.8, 0, 0, 2 * Math.PI);
|
|
82
|
+
ctx.fill();
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlwcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9naXptby9wYWludGVyL3RpcHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLG9CQUFvQixFQUVwQixVQUFVLEVBQ1YsVUFBVSxFQUNWLFVBQVUsRUFDVixZQUFZLEVBQ1osY0FBYyxFQUNkLDRCQUE0QixHQUM3QixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVyQyxNQUFNLE9BQU8sV0FBWSxTQUFRLFVBQVU7SUFXekMsWUFBNkIsT0FBbUI7UUFDOUMsS0FBSyxFQUFFLENBQUM7UUFEbUIsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQVZoQyxXQUFNLEdBQUcsSUFBSSxvQkFBb0IsQ0FBQztZQUNoRCxPQUFPLEVBQUUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxFQUFFO1lBQ3hCLElBQUksRUFBRSxJQUFJLENBQUMsRUFBRSxHQUFHLENBQUM7WUFDakIsSUFBSSxFQUFFLElBQUk7WUFDVixHQUFHLEVBQUUsQ0FBQztTQUNQLENBQUMsQ0FBQztRQU9ELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxZQUFZLENBQUMsT0FBTyxFQUFFO1lBQ3ZDLE1BQU0sRUFBRTtnQkFDTixTQUFTLEVBQUUsUUFBUTtnQkFDbkIsU0FBUyxFQUFFLFFBQVE7YUFDcEI7U0FDRixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDZixNQUFNLE9BQU8sR0FBRyxJQUFJLFVBQVUsQ0FBQztZQUM3QixNQUFNLEVBQUUsTUFBTTtZQUNkLEtBQUssRUFBRSxNQUFNO1NBQ2QsQ0FBQyxDQUFDO1FBRUgsT0FBTyxDQUFDLEdBQUcsQ0FDVCxRQUFRLEVBQ1IsSUFBSSxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFF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QUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzNDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNYLElBQUksSUFBSSxFQUFFLENBQUM7UUFDVCxHQUFHLENBQUMsSUFBSSxHQUFHLFFBQVEsSUFBSSxHQUFHLEdBQUcsZUFBZSxDQUFDO1FBQzdDLEdBQUcsQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzFCLEdBQUcsQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLEdBQUcsQ0FBQyxZQUFZLEdBQUcsUUFBUSxDQUFDO1FBQzVCLEdBQUcsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMzQixDQUFDO1NBQU0sQ0FBQztRQUNOLEdBQUcsQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzFCLEdBQUcsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNoQixHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN2RCxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDYixDQUFDO0FBQ0gsQ0FBQyJ9
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export { TgdCamera, TgdCameraOrthographic, TgdColor, tgdFullscreenToggle } from "@tolokoban/tgd";
|
|
2
|
+
export type { CanvasOptions } from "./abstract-canvas";
|
|
3
|
+
export type { ColorsInterface } from "./colors";
|
|
4
|
+
export { colorContrast, colorLuminance, colorToRGBA } from "./colors";
|
|
5
|
+
export * from "./components/morpho-viewer-octree";
|
|
6
|
+
export * from "./components/morpho-viewer-simul";
|
|
7
|
+
export * from "./components/morpho-viewer-small-circuit";
|
|
8
|
+
export * from "./gizmo";
|
|
9
|
+
export { MorphologyCanvas } from "./morphology/morphology-canvas";
|
|
10
|
+
export { version } from "./package.json";
|
|
11
|
+
export { morphoViewerConvertMorphologyIntoTree } from "./tools/morphology-to-tree";
|
|
12
|
+
export type { ColoringType } from "./types";
|
|
13
|
+
export { CellNodeType } from "./types";
|
|
14
|
+
export { TgdEvent as MorphoViewerEvent } from "@tolokoban/tgd";
|
|
15
|
+
export { useEventState, useEventValue } from "./utils";
|
|
16
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACjG,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,YAAY,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACtE,cAAc,mCAAmC,CAAC;AAClD,cAAc,kCAAkC,CAAC;AACjD,cAAc,0CAA0C,CAAC;AACzD,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,qCAAqC,EAAE,MAAM,4BAA4B,CAAC;AACnF,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
export { TgdCamera, TgdCameraOrthographic, TgdColor, tgdFullscreenToggle } from "@tolokoban/tgd";
|
|
3
|
+
export { colorContrast, colorLuminance, colorToRGBA } from "./colors.js";
|
|
4
|
+
export * from "./components/morpho-viewer-octree/index.js";
|
|
5
|
+
export * from "./components/morpho-viewer-simul/index.js";
|
|
6
|
+
export * from "./components/morpho-viewer-small-circuit/index.js";
|
|
7
|
+
export * from "./gizmo/index.js";
|
|
8
|
+
export { MorphologyCanvas } from "./morphology/morphology-canvas.js";
|
|
9
|
+
export { version } from "./package.json";
|
|
10
|
+
export { morphoViewerConvertMorphologyIntoTree } from "./tools/morphology-to-tree.js";
|
|
11
|
+
export { CellNodeType } from "./types.js";
|
|
12
|
+
export { TgdEvent as MorphoViewerEvent } from "@tolokoban/tgd";
|
|
13
|
+
export { useEventState, useEventValue } from "./utils.js";
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWSxDQUFDO0FBSWIsT0FBTyxFQUFFLFNBQVMsRUFBRSxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdqRyxPQUFPLEVBQUUsYUFBYSxFQUFFLGNBQWMsRUFBRSxXQUFXLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDdEUsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsMENBQTBDLENBQUM7QUFDekQsY0FBYyxTQUFTLENBQUM7QUFDeEIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRW5GLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDdkMsT0FBTyxFQUFFLFFBQVEsSUFBSSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLE1BQU0sU0FBUyxDQUFDIn0=
|