{"version":3,"sources":["webpack:///./src/components/mixins/ImageAnnotationHelper.js","webpack:///./src/components/mixins/TooltipGenerator.js","webpack:///./src/components/imageBrowser/controls/ImageMeasurementControls.vue?af27","webpack:///./src/components/imageBrowser/controls/OdOsOuButtons.vue?bbb8","webpack:///src/components/imageBrowser/controls/OdOsOuButtons.vue","webpack:///./src/components/imageBrowser/controls/OdOsOuButtons.vue?e423","webpack:///./src/components/imageBrowser/controls/OdOsOuButtons.vue","webpack:///./src/components/imageBrowser/oct/CirrusSidebarControls.vue?c1b6","webpack:///./src/canvas/components/CanvasAnnotation.vue","webpack:///src/canvas/components/CanvasAnnotation.vue","webpack:///./src/canvas/components/CanvasAnnotation.vue?709e","webpack:///./src/canvas/components/EditAnnotationTextDialog.vue?4060","webpack:///src/canvas/components/EditAnnotationTextDialog.vue","webpack:///./src/canvas/components/EditAnnotationTextDialog.vue?1c0f","webpack:///../../../src/components/VCombobox/VCombobox.ts","webpack:///../../../src/components/VTextarea/VTextarea.ts","webpack:///./src/canvas/components/EditAnnotationTextDialog.vue","webpack:///./src/canvas/components/PixelShadedCanvas.vue?e0d6","webpack:///./src/canvas/webgl/matrix.js","webpack:///./src/canvas/webgl/webglProgram.js","webpack:///./src/canvas/webgl/colorWebglProgram.js","webpack:///./src/canvas/webgl/optosWebglProgram.js","webpack:///./src/canvas/webgl/paletteTexture.js","webpack:///./src/canvas/components/CanvasWebgl.vue","webpack:///./src/canvas/webgl/paletteWebglProgram.js","webpack:///./src/canvas/webgl/default.vert","webpack:///./src/canvas/webgl/default.frag","webpack:///./src/canvas/webgl/color.frag","webpack:///./src/canvas/webgl/luma.frag","webpack:///./src/canvas/webgl/red.frag","webpack:///./src/canvas/webgl/green.frag","webpack:///./src/canvas/webgl/blue.frag","webpack:///./src/canvas/webgl/optosDefault.frag","webpack:///./src/canvas/webgl/optosGreen.frag","webpack:///./src/canvas/webgl/invert.frag","webpack:///./src/canvas/webgl/palette.frag","webpack:///./src/canvas/webgl/linearPalette.frag","webpack:///./src/canvas/webgl/linearPaletteWebglProgram.js","webpack:///./src/canvas/webgl/WebglRenderer.js","webpack:///src/canvas/components/CanvasWebgl.vue","webpack:///./src/canvas/components/CanvasWebgl.vue?87c4","webpack:///src/canvas/components/PixelShadedCanvas.vue","webpack:///./src/canvas/components/PixelShadedCanvas.vue?64c5","webpack:///./src/canvas/components/PixelShadedCanvas.vue","webpack:///./src/components/imageBrowser/controls/AnnotationModeButton.vue?269e","webpack:///src/components/imageBrowser/controls/AnnotationModeButton.vue","webpack:///./src/components/imageBrowser/controls/AnnotationModeButton.vue?ccfa","webpack:///./src/components/imageBrowser/controls/AnnotationModeButton.vue","webpack:///./src/canvas/annotations/grid.js","webpack:///./src/components/imageBrowser/oct/RasterThumbnail.vue?f6cd","webpack:///./src/components/imageBrowser/controls/ImageZoomControl.vue?4dac","webpack:///./src/canvas/annotations/viewFinder.js","webpack:///src/components/imageBrowser/controls/ImageZoomControl.vue","webpack:///./src/components/imageBrowser/controls/ImageZoomControl.vue?5d3d","webpack:///./src/components/imageBrowser/controls/ImageZoomControl.vue","webpack:///./src/components/mixins/TouchMouseEvents.js","webpack:///./src/canvas/components/AnnotateableCanvas.vue?8a3b","webpack:///src/canvas/components/AnnotateableCanvas.vue","webpack:///./src/canvas/components/AnnotateableCanvas.vue?026b","webpack:///./src/canvas/components/AnnotateableCanvas.vue","webpack:///./src/components/imageBrowser/oct/EnfaceView.vue?8995","webpack:///./src/components/imageBrowser/IndexCounter.vue?b343","webpack:///src/components/imageBrowser/IndexCounter.vue","webpack:///./src/components/imageBrowser/IndexCounter.vue?0b61","webpack:///./src/components/imageBrowser/IndexCounter.vue","webpack:///./src/components/imageBrowser/oct/RasterBrowserBody.vue?92cf","webpack:///./src/components/controls/PlayPauseButton.vue?6427","webpack:///src/components/controls/PlayPauseButton.vue","webpack:///./src/components/controls/PlayPauseButton.vue?e2d4","webpack:///./src/components/controls/PlayPauseButton.vue","webpack:///./src/components/controls/CircleImageButton.vue?6888","webpack:///src/components/controls/CircleImageButton.vue","webpack:///./src/components/controls/CircleImageButton.vue?5f16","webpack:///./src/components/controls/CircleImageButton.vue","webpack:///./src/components/imageBrowser/controls/ImageDeepDeeControls.vue?eb4a","webpack:///./src/components/misc/ImageNotFound.vue?2f4e","webpack:///src/components/misc/ImageNotFound.vue","webpack:///./src/components/misc/ImageNotFound.vue?b0fd","webpack:///./src/components/misc/ImageNotFound.vue","webpack:///./src/components/imageBrowser/oct/OCTSliceControls.vue?8390","webpack:///./src/components/misc/ThumbnailMisc.vue?e59f","webpack:///./src/components/controls/CircleSlotButton.vue?c188","webpack:///src/components/controls/CircleSlotButton.vue","webpack:///./src/components/controls/CircleSlotButton.vue?f45e","webpack:///./src/components/controls/CircleSlotButton.vue","webpack:///./src/components/imageBrowser/oct/CScanView.vue?a096","webpack:///./src/components/print/PrintPreviewBrowser.vue?53e7","webpack:///./src/components/print/PrintPreviewBrowserHeader.vue?f4ba","webpack:///src/components/print/PrintPreviewBrowserHeader.vue","webpack:///./src/components/print/PrintPreviewBrowserHeader.vue?e462","webpack:///./src/components/print/PrintPreviewBrowserHeader.vue","webpack:///./src/components/print/PrintPreviewBrowserToolbar.vue?a15b","webpack:///src/components/print/PrintPreviewBrowserToolbar.vue","webpack:///./src/components/print/PrintPreviewBrowserToolbar.vue?d202","webpack:///./src/components/print/PrintPreviewBrowserToolbar.vue","webpack:///./src/components/print/PrintPreviewBrowserBody.vue?9030","webpack:///./src/components/print/PrintPreviewImages.vue?e1df","webpack:///src/components/print/PrintPreviewImages.vue","webpack:///./src/components/print/PrintPreviewImages.vue?878c","webpack:///./src/components/print/PrintPreviewImages.vue","webpack:///src/components/print/PrintPreviewBrowserBody.vue","webpack:///./src/components/print/PrintPreviewBrowserBody.vue?002c","webpack:///./src/components/print/PrintPreviewBrowserBody.vue","webpack:///src/components/print/PrintPreviewBrowser.vue","webpack:///./src/components/print/PrintPreviewBrowser.vue?b3e0","webpack:///./src/components/print/PrintPreviewBrowser.vue","webpack:///./src/components/imageBrowser/rgbView.vue?760c","webpack:///./src/components/misc/ThumbnailMisc.vue?0282","webpack:///./src/canvas/annotations/fourSquareGrid.js","webpack:///./src/canvas/annotations/opticDiscGrid.js","webpack:///./src/canvas/annotations/linesIndicator.js","webpack:///./src/canvas/annotations/circleGrid.js","webpack:///./src/canvas/annotations/radialGrid.js","webpack:///./src/canvas/annotations/radialCircleGrid.js","webpack:///./src/canvas/annotations/spectralisRadialSCN.js","webpack:///src/components/misc/ThumbnailMisc.vue","webpack:///./src/components/misc/ThumbnailMisc.vue?822f","webpack:///./src/components/misc/ThumbnailMisc.vue?b783","webpack:///./src/components/imageBrowser/controls/AnnotationColorPicker.vue?c209","webpack:///src/components/imageBrowser/controls/AnnotationColorPicker.vue","webpack:///./src/components/imageBrowser/controls/AnnotationColorPicker.vue?df38","webpack:///./src/components/imageBrowser/controls/AnnotationColorPicker.vue","webpack:///./src/helpers/resizeHandler.js","webpack:///./src/components/mixins/ResponsiveCanvases.js","webpack:///./src/components/imageBrowser/oct/ThicknessMap.vue?e562","webpack:///../../../src/components/VSlider/VSlider.ts","webpack:///./src/canvas/components/CanvasBase.vue?ae4d","webpack:///src/canvas/components/CanvasBase.vue","webpack:///./src/canvas/components/CanvasBase.vue?39e2","webpack:///./src/canvas/components/CanvasBase.vue","webpack:///./src/components/imageBrowser/oct/OCTComparisonToolbar.vue?cdcb","webpack:///./src/components/imageBrowser/controls/GrayscaleModeButton.vue?e5d0","webpack:///src/components/imageBrowser/controls/GrayscaleModeButton.vue","webpack:///./src/components/imageBrowser/controls/GrayscaleModeButton.vue?3139","webpack:///./src/components/imageBrowser/controls/GrayscaleModeButton.vue","webpack:///../../../src/components/VAutocomplete/VAutocomplete.ts","webpack:///./src/components/controls/ResetSlider.vue?361d","webpack:///src/components/controls/ResetSlider.vue","webpack:///./src/components/controls/ResetSlider.vue?3706","webpack:///./src/components/controls/ResetSlider.vue","webpack:///./src/components/misc/Thumbnail.vue?9857","webpack:///./src/components/mixins/ThumbnailUtl.js","webpack:///./src/components/imageBrowser/ImageDrawer.vue?9652","webpack:///src/components/imageBrowser/ImageDrawer.vue","webpack:///./src/components/imageBrowser/ImageDrawer.vue?5056","webpack:///./src/components/imageBrowser/ImageDrawer.vue","webpack:///./src/components/imageBrowser/ImageBrowserHeader.vue?e604","webpack:///src/components/imageBrowser/ImageBrowserHeader.vue","webpack:///./src/components/imageBrowser/ImageBrowserHeader.vue?2f1e","webpack:///./src/components/imageBrowser/ImageBrowserHeader.vue","webpack:///./src/components/imageBrowser/ImageBrowserBody.vue?d672","webpack:///./src/components/imageBrowser/controls/TopAnnotationControls.vue?f33d","webpack:///src/components/imageBrowser/controls/TopAnnotationControls.vue","webpack:///./src/components/imageBrowser/controls/TopAnnotationControls.vue?2f7f","webpack:///./src/components/imageBrowser/controls/TopAnnotationControls.vue","webpack:///./src/components/imageBrowser/controls/ImageAnnotationControls.vue?48ee","webpack:///./src/components/imageBrowser/controls/ImageBrowserZoomControl.vue?a7a5","webpack:///./src/canvas/annotations/imageBrowserViewFinder.js","webpack:///src/components/imageBrowser/controls/ImageBrowserZoomControl.vue","webpack:///./src/components/imageBrowser/controls/ImageBrowserZoomControl.vue?249f","webpack:///./src/components/imageBrowser/controls/ImageBrowserZoomControl.vue","webpack:///src/components/imageBrowser/controls/ImageAnnotationControls.vue","webpack:///./src/components/imageBrowser/controls/ImageAnnotationControls.vue?02ef","webpack:///./src/components/imageBrowser/controls/ImageAnnotationControls.vue?85e8","webpack:///./src/components/imageBrowser/controls/ImageMeasurementControls.vue?39f5","webpack:///src/components/imageBrowser/controls/ImageMeasurementControls.vue","webpack:///./src/components/imageBrowser/controls/ImageMeasurementControls.vue?45ca","webpack:///./src/components/imageBrowser/controls/ImageMeasurementControls.vue?ade1","webpack:///./src/components/imageBrowser/controls/ImageDeepDeeControls.vue?6727","webpack:///./src/components/charts/BarChart.js","webpack:///src/components/imageBrowser/controls/ImageDeepDeeControls.vue","webpack:///./src/components/imageBrowser/controls/ImageDeepDeeControls.vue?2dbb","webpack:///../../../src/components/VExpansionPanel/VExpansionPanel.ts","webpack:///../../../src/components/VExpansionPanel/VExpansionPanelContent.ts","webpack:///../../../src/components/VExpansionPanel/VExpansionPanelHeader.ts","webpack:///../../../src/components/VExpansionPanel/VExpansionPanels.ts","webpack:///./src/components/imageBrowser/controls/ImageDeepDeeControls.vue?7552","webpack:///./src/components/imageBrowser/controls/ImagePlaybackToolbar.vue?efda","webpack:///./src/components/imageBrowser/controls/PlaybackControls.vue?10d3","webpack:///./src/components/controls/ActiveImageButton.vue?a722","webpack:///src/components/controls/ActiveImageButton.vue","webpack:///./src/components/controls/ActiveImageButton.vue?04a1","webpack:///./src/components/controls/ActiveImageButton.vue","webpack:///src/components/imageBrowser/controls/PlaybackControls.vue","webpack:///./src/components/imageBrowser/controls/PlaybackControls.vue?0947","webpack:///./src/components/imageBrowser/controls/PlaybackControls.vue","webpack:///src/components/imageBrowser/controls/ImagePlaybackToolbar.vue","webpack:///./src/components/imageBrowser/controls/ImagePlaybackToolbar.vue?30e7","webpack:///./src/components/imageBrowser/controls/ImagePlaybackToolbar.vue","webpack:///./src/components/imageBrowser/MainImageView.vue?b660","webpack:///./src/components/imageBrowser/rgbView.vue?b99f","webpack:///src/components/imageBrowser/rgbView.vue","webpack:///./src/components/imageBrowser/rgbView.vue?f456","webpack:///./src/components/imageBrowser/rgbView.vue?26ed","webpack:///src/components/imageBrowser/MainImageView.vue","webpack:///./src/components/imageBrowser/MainImageView.vue?dd6a","webpack:///./src/components/imageBrowser/MainImageView.vue","webpack:///src/components/imageBrowser/ImageBrowserBody.vue","webpack:///./src/components/imageBrowser/ImageBrowserBody.vue?c35e","webpack:///./src/components/imageBrowser/ImageBrowserBody.vue","webpack:///./src/components/imageBrowser/oct/SpectralisBrowserBody.vue?b597","webpack:///./src/components/imageBrowser/oct/OCTReferenceImage.vue?5492","webpack:///./src/canvas/annotations/sliceSelector.js","webpack:///./src/canvas/annotations/CircularPattern.js","webpack:///./src/canvas/annotations/radialCirclesPattern.js","webpack:///./src/components/imageBrowser/oct/OCTSliceControls.vue?7b49","webpack:///src/components/imageBrowser/oct/OCTSliceControls.vue","webpack:///./src/components/imageBrowser/oct/OCTSliceControls.vue?74b7","webpack:///./src/components/imageBrowser/oct/OCTSliceControls.vue?d2a7","webpack:///./src/canvas/annotations/thicknessMapPalette.js","webpack:///./src/canvas/annotations/analysisETDRS.js","webpack:///src/components/imageBrowser/oct/OCTReferenceImage.vue","webpack:///./src/components/imageBrowser/oct/OCTReferenceImage.vue?6089","webpack:///./src/components/imageBrowser/oct/OCTReferenceImage.vue","webpack:///./src/components/imageBrowser/oct/OCTToolbar.vue?2961","webpack:///./src/components/imageBrowser/controls/OdOsButtons.vue?4ad5","webpack:///src/components/imageBrowser/controls/OdOsButtons.vue","webpack:///./src/components/imageBrowser/controls/OdOsButtons.vue?1562","webpack:///./src/components/imageBrowser/controls/OdOsButtons.vue","webpack:///src/components/imageBrowser/oct/OCTToolbar.vue","webpack:///./src/components/imageBrowser/oct/OCTToolbar.vue?0ce6","webpack:///./src/components/imageBrowser/oct/OCTToolbar.vue","webpack:///./src/components/imageBrowser/oct/SpectralisColorButtons.vue?d71f","webpack:///src/components/imageBrowser/oct/SpectralisColorButtons.vue","webpack:///./src/components/imageBrowser/oct/SpectralisColorButtons.vue?de88","webpack:///./src/components/imageBrowser/oct/SpectralisColorButtons.vue","webpack:///./src/components/imageBrowser/oct/SpectralisMainView.vue?8111","webpack:///./src/canvas/annotations/thicknessChart.js","webpack:///./src/canvas/annotations/innerChartSegmentationMeasurement.js","webpack:///./src/components/imageBrowser/oct/OCTSliceView.vue?cd17","webpack:///./src/canvas/annotations/segmentationMeasurement.js","webpack:///./src/canvas/annotations/segmentation.js","webpack:///./src/canvas/annotations/eyeMarker.js","webpack:///./src/canvas/annotations/otherLine.js","webpack:///./src/canvas/annotations/opticDiscLine.js","webpack:///src/components/imageBrowser/oct/OCTSliceView.vue","webpack:///./src/components/imageBrowser/oct/OCTSliceView.vue?c1ed","webpack:///./src/components/imageBrowser/oct/OCTSliceView.vue?a793","webpack:///src/components/imageBrowser/oct/SpectralisMainView.vue","webpack:///./src/components/imageBrowser/oct/SpectralisMainView.vue?3ab4","webpack:///./src/components/imageBrowser/oct/SpectralisMainView.vue","webpack:///src/components/imageBrowser/oct/SpectralisBrowserBody.vue","webpack:///./src/components/imageBrowser/oct/SpectralisBrowserBody.vue?96b1","webpack:///./src/components/imageBrowser/oct/SpectralisBrowserBody.vue","webpack:///./src/components/imageBrowser/oct/CirrusBrowserBody.vue?1fbe","webpack:///./src/components/imageBrowser/oct/CirrusSidebarControls.vue?46c7","webpack:///src/components/imageBrowser/oct/CirrusSidebarControls.vue","webpack:///./src/components/imageBrowser/oct/CirrusSidebarControls.vue?4206","webpack:///./src/components/imageBrowser/oct/CirrusSidebarControls.vue?2042","webpack:///./src/components/imageBrowser/oct/CirrusBrowserBodyContent.vue?b818","webpack:///./src/components/imageBrowser/oct/EnfaceView.vue?2939","webpack:///src/components/imageBrowser/oct/EnfaceView.vue","webpack:///./src/components/imageBrowser/oct/EnfaceView.vue?aebf","webpack:///./src/components/imageBrowser/oct/EnfaceView.vue?86a0","webpack:///src/components/imageBrowser/oct/CirrusBrowserBodyContent.vue","webpack:///./src/components/imageBrowser/oct/CirrusBrowserBodyContent.vue?6313","webpack:///./src/components/imageBrowser/oct/CirrusBrowserBodyContent.vue","webpack:///./src/components/imageBrowser/oct/CirrusOpticDiscBodyContent.vue?e31c","webpack:///./src/components/imageBrowser/oct/CScanView.vue?7103","webpack:///src/components/imageBrowser/oct/CScanView.vue","webpack:///./src/components/imageBrowser/oct/CScanView.vue?ede3","webpack:///./src/components/imageBrowser/oct/CScanView.vue?9e85","webpack:///src/components/imageBrowser/oct/CirrusOpticDiscBodyContent.vue","webpack:///./src/components/imageBrowser/oct/CirrusOpticDiscBodyContent.vue?028c","webpack:///./src/components/imageBrowser/oct/CirrusOpticDiscBodyContent.vue","webpack:///src/components/imageBrowser/oct/CirrusBrowserBody.vue","webpack:///./src/components/imageBrowser/oct/CirrusBrowserBody.vue?6f52","webpack:///./src/components/imageBrowser/oct/CirrusBrowserBody.vue","webpack:///./src/components/imageBrowser/oct/SpectralisComparisonBody.vue?45a8","webpack:///./src/components/imageBrowser/oct/OCTComparisonToolbar.vue?206e","webpack:///src/components/imageBrowser/oct/OCTComparisonToolbar.vue","webpack:///./src/components/imageBrowser/oct/OCTComparisonToolbar.vue?3550","webpack:///./src/components/imageBrowser/oct/OCTComparisonToolbar.vue?662f","webpack:///./src/components/imageBrowser/oct/SpectralisComparisonView.vue?1243","webpack:///./src/components/imageBrowser/oct/ThicknessMap.vue?e2eb","webpack:///src/components/imageBrowser/oct/ThicknessMap.vue","webpack:///./src/components/imageBrowser/oct/ThicknessMap.vue?19ae","webpack:///./src/components/imageBrowser/oct/ThicknessMap.vue?d773","webpack:///src/components/imageBrowser/oct/SpectralisComparisonView.vue","webpack:///./src/components/imageBrowser/oct/SpectralisComparisonView.vue?7ec5","webpack:///./src/components/imageBrowser/oct/SpectralisComparisonView.vue","webpack:///src/components/imageBrowser/oct/SpectralisComparisonBody.vue","webpack:///./src/components/imageBrowser/oct/SpectralisComparisonBody.vue?a366","webpack:///./src/components/imageBrowser/oct/SpectralisComparisonBody.vue","webpack:///./src/components/imageBrowser/oct/CirrusComparisonBody.vue?3319","webpack:///./src/components/imageBrowser/oct/CirrusComparisonView.vue?5a18","webpack:///./src/components/imageBrowser/oct/CirrusComparisonToolbar.vue?0a0a","webpack:///src/components/imageBrowser/oct/CirrusComparisonToolbar.vue","webpack:///./src/components/imageBrowser/oct/CirrusComparisonToolbar.vue?d14f","webpack:///./src/components/imageBrowser/oct/CirrusComparisonToolbar.vue","webpack:///./src/components/imageBrowser/oct/CirrusComparisonViewBodyContent.vue?3177","webpack:///./src/components/mixins/CirrusComparisonViewHelper.js","webpack:///src/components/imageBrowser/oct/CirrusComparisonViewBodyContent.vue","webpack:///./src/components/imageBrowser/oct/CirrusComparisonViewBodyContent.vue?5dcb","webpack:///./src/components/imageBrowser/oct/CirrusComparisonViewBodyContent.vue","webpack:///./src/components/imageBrowser/oct/CirrusComparisonViewOpticDiscBodyContent.vue?31c2","webpack:///src/components/imageBrowser/oct/CirrusComparisonViewOpticDiscBodyContent.vue","webpack:///./src/components/imageBrowser/oct/CirrusComparisonViewOpticDiscBodyContent.vue?22c6","webpack:///./src/components/imageBrowser/oct/CirrusComparisonViewOpticDiscBodyContent.vue","webpack:///src/components/imageBrowser/oct/CirrusComparisonView.vue","webpack:///./src/components/imageBrowser/oct/CirrusComparisonView.vue?3632","webpack:///./src/components/imageBrowser/oct/CirrusComparisonView.vue","webpack:///./src/components/imageBrowser/oct/RasterComparisonView.vue?1d1b","webpack:///./src/components/imageBrowser/oct/RasterImageDrawer.vue?6d0e","webpack:///./src/components/imageBrowser/oct/RasterThumbnail.vue?573c","webpack:///src/components/imageBrowser/oct/RasterThumbnail.vue","webpack:///./src/components/imageBrowser/oct/RasterThumbnail.vue?d049","webpack:///./src/components/imageBrowser/oct/RasterThumbnail.vue?a0ba","webpack:///src/components/imageBrowser/oct/RasterImageDrawer.vue","webpack:///./src/components/imageBrowser/oct/RasterImageDrawer.vue?615e","webpack:///./src/components/imageBrowser/oct/RasterImageDrawer.vue?5bd6","webpack:///./src/components/imageBrowser/oct/RasterColorButtons.vue?0cd6","webpack:///src/components/imageBrowser/oct/RasterColorButtons.vue","webpack:///./src/components/imageBrowser/oct/RasterColorButtons.vue?0fe6","webpack:///./src/components/imageBrowser/oct/RasterColorButtons.vue","webpack:///src/components/imageBrowser/oct/RasterComparisonView.vue","webpack:///./src/components/imageBrowser/oct/RasterComparisonView.vue?5655","webpack:///./src/components/imageBrowser/oct/RasterComparisonView.vue","webpack:///src/components/imageBrowser/oct/CirrusComparisonBody.vue","webpack:///./src/components/imageBrowser/oct/CirrusComparisonBody.vue?418f","webpack:///./src/components/imageBrowser/oct/CirrusComparisonBody.vue","webpack:///./src/components/imageBrowser/oct/RasterBrowserBody.vue?19be","webpack:///src/components/imageBrowser/oct/RasterBrowserBody.vue","webpack:///./src/components/imageBrowser/oct/RasterBrowserBody.vue?7296","webpack:///./src/components/imageBrowser/oct/RasterBrowserBody.vue?e305","webpack:///./src/components/imageBrowser/hvf/HVFBrowserBody.vue?9008","webpack:///./src/components/imageBrowser/hvf/HVFSingleExamToolbar.vue?0fb0","webpack:///src/components/imageBrowser/hvf/HVFSingleExamToolbar.vue","webpack:///./src/components/imageBrowser/hvf/HVFSingleExamToolbar.vue?f5d3","webpack:///./src/components/imageBrowser/hvf/HVFSingleExamToolbar.vue","webpack:///./src/components/imageBrowser/hvf/HVFSingleExamContainer.vue?fd74","webpack:///./src/components/imageBrowser/hvf/HVFImageView.vue?6b12","webpack:///src/components/imageBrowser/hvf/HVFImageView.vue","webpack:///./src/components/imageBrowser/hvf/HVFImageView.vue?2944","webpack:///./src/components/imageBrowser/hvf/HVFImageView.vue","webpack:///./src/components/mixins/HVFPositioning.js","webpack:///src/components/imageBrowser/hvf/HVFSingleExamContainer.vue","webpack:///./src/components/imageBrowser/hvf/HVFSingleExamContainer.vue?936b","webpack:///./src/components/imageBrowser/hvf/HVFSingleExamContainer.vue","webpack:///src/components/imageBrowser/hvf/HVFBrowserBody.vue","webpack:///./src/components/imageBrowser/hvf/HVFBrowserBody.vue?1ff5","webpack:///./src/components/imageBrowser/hvf/HVFBrowserBody.vue","webpack:///./src/components/imageBrowser/hvf/HVFMultiviewBody.vue?3312","webpack:///./src/components/imageBrowser/hvf/HVFMultiExamToolbar.vue?8d4a","webpack:///src/components/imageBrowser/hvf/HVFMultiExamToolbar.vue","webpack:///./src/components/imageBrowser/hvf/HVFMultiExamToolbar.vue?04e1","webpack:///./src/components/imageBrowser/hvf/HVFMultiExamToolbar.vue","webpack:///./src/components/imageBrowser/hvf/HVFMultiExamContainer.vue?650b","webpack:///./src/components/imageBrowser/hvf/HVFMultiSidebarBlock.vue?3933","webpack:///./src/components/imageBrowser/hvf/HVFZoomControl.vue?2ea9","webpack:///./src/canvas/annotations/hvfViewFinder.js","webpack:///src/components/imageBrowser/hvf/HVFZoomControl.vue","webpack:///./src/components/imageBrowser/hvf/HVFZoomControl.vue?2caf","webpack:///./src/components/imageBrowser/hvf/HVFZoomControl.vue","webpack:///src/components/imageBrowser/hvf/HVFMultiSidebarBlock.vue","webpack:///./src/components/imageBrowser/hvf/HVFMultiSidebarBlock.vue?31f0","webpack:///./src/components/imageBrowser/hvf/HVFMultiSidebarBlock.vue","webpack:///./src/components/imageBrowser/hvf/HVFMultiImageBlock.vue?34bf","webpack:///src/components/imageBrowser/hvf/HVFMultiImageBlock.vue","webpack:///./src/components/imageBrowser/hvf/HVFMultiImageBlock.vue?34c4","webpack:///./src/components/imageBrowser/hvf/HVFMultiImageBlock.vue","webpack:///src/components/imageBrowser/hvf/HVFMultiExamContainer.vue","webpack:///./src/components/imageBrowser/hvf/HVFMultiExamContainer.vue?5352","webpack:///./src/components/imageBrowser/hvf/HVFMultiExamContainer.vue","webpack:///src/components/imageBrowser/hvf/HVFMultiviewBody.vue","webpack:///./src/components/imageBrowser/hvf/HVFMultiviewBody.vue?3755","webpack:///./src/components/imageBrowser/hvf/HVFMultiviewBody.vue","webpack:///./src/components/mixins/HasImageBrowserBody.js","webpack:///./src/components/imageBrowser/controls/ImageAnnotationControls.vue?53bb","webpack:///./src/canvas/components/CanvasImage.vue","webpack:///src/canvas/components/CanvasImage.vue","webpack:///./src/canvas/components/CanvasImage.vue?0e75","webpack:///./src/components/imageBrowser/oct/OCTSliceView.vue?7873","webpack:///./src/components/imageBrowser/oct/RasterImageDrawer.vue?8b4d","webpack:///./src/components/misc/Thumbnail.vue?3897","webpack:///src/components/misc/Thumbnail.vue","webpack:///./src/components/misc/Thumbnail.vue?2c1b","webpack:///./src/components/misc/Thumbnail.vue?3e3d"],"names":["computed","mapGetters","exam","this","context","isOptos","isOCT","isFlipped","isFlipped90","isDeepDeeAnnotation","showDeepDeeAnnotation","deepDeeAnnotation","saveCanvas","flattenedImageReady","currentBrowserImage","image","imgNotFound","imgAvailable","hasFullImage","imgSize","w","h","imgObject","imgHtmlObject","thumbObject","thumbHtmlObject","displayImgObject","thumbSize","displayImgSize","imgIsLoading","thumbIsLoading","imgEye","imageColorSettings","grayscaleMode","brightness","contrast","gamma","greenBrightness","greenContrast","annotations","annotationMode","annotationColor","annotationOptions","textSize","annotationTextSize","lineWidth","annotationLineWidth","color","ANNOTATION_COLORS","White","scale","deviceCalibration","value","transform","isDragLock","inAddMode","addMode","inEditMode","editMode","inDeleteMode","deleteMode","inMagnifyMode","magnifyMode","inShapeFillMode","shapeFillMode","syncInShapeFillMode","syncContext","isMagnifying","magnifier","activeAnnotation","syncActiveAnnotation","selectedTextSize","shapeFillColor","rgbSettings","rgbView","rgbSync","sync","greenSync","deviceConfigs","hasDeviceConfigs","length","deviceCalibrations","filter","v","type","hasDeviceCalibrations","methods","mapActions","resetImage","deepDeeHighlight","selectImage","sideBySideIsSynced","setCurrentImageLoading","isLoading","clearAnnotations","annotationModeButtonClick","buttonMode","toggleAnnotationMode","dragButtonClick","toggleIsDragLock","clearActiveAnnotation","clearAnnotationMode","mode","setAnnotationMode","updateAnnotationColor","updateShapeFillColor","selectCalibration","name","updateTextSize","size","setFlattenedImageReady","updateAnnotationTextSize","updateLineWidth","mousedownAnnotation","eventWrapper","doMousedownAnnotation","isContinuous","mousedown","x","y","e","previousActive","doClearActiveAnnotation","annotation","doCreateAnnotation","doGetAnnotationByPosition","doSetActiveAnnotation","doDeleteActiveAnnotation","indexOf","updateColor","generateFlatImage","onCreate","mousemoveAnnotation","mousemove","mouseupAnnotation","mouseup","ANNOTATION_MODES","ContinuousDraw","annotationByPosition","find","a","isInBounds","position","getAnnotationType","setParentTransform","setSyncPair","addAnnotation","deleteActiveAnnotation","delete","index","doGetAnnotationIndex","deleteAnnotation","setActiveAnnotation","findIndex","setIsMagnifying","val","updateMagnifier","doUpdateMagnifier","mousedownMagnifier","doMousedownMagnifier","mouseupMagnifier","doMouseupMagnifier","toggleDeepDeeHighlight","ready","toggleGrayscaleMode","selectRGBViewByMode","updateBrightness","updateRGBSync","updateContrast","updateGamma","toggleGreenSync","updateGreenBrightness","updateGreenContrast","toggleFlipped","toggleFlipped90","toggleMouseWheelZoom","toggleRGB","replicateMainToAllRGB","toggleRGBSync","getRGBIndex","currentRGBIndex","selectRGBView","replicateCurrentRGBToMain","replicateMainToCurrentRGB","replicateGreenMainToAllRGB","resolve","canvas","img","settings","width","height","renderer","CanvasRenderer","doScaleToPixelRatio","canvasSize","toSave","hasCustomPixelColorSettings","drawShadedImage","applyPixelShadingRules","drawImg","ctx","getContext","forEach","renderAnnotation","lineWidthGenerateFlatImage","ann","sideBySideAnn","saveImage","exportFlatImage","then","uploadAnnotatedImage","msg","$store","commit","message","level","catch","dispatch","finally","blob","fd","FormData","append","ptSrNo","exSrNo","imgIndex","flSrNo","flName","imgType","imgGroup","rcsSrNo","rcimgIntrimPath","axios","post","headers","response","data","success","reject","error","downloadImage","filename","getters","downloadPNGImage","downloadBlob","fileName","exportBlob","htmlContainer","tooltipXPos","tooltipYPos","tooltipIsVisible","displayNewTooltip","content","push","hideTooltip","setTooltipXPos","elementWidth","setTooltipMousePos","event","pageX","pageY","render","_vm","_h","$createElement","_c","_self","staticClass","attrs","class","active","isOD","colorClass","on","$event","$emit","_v","isOS","isOUU","staticRenderFns","props","component","VBtn","VCol","extends","Object","draw","limitDrawAnnotation","debounceDrawAnnotation","setupAnnotationRedraw","setReadyCallback","redraw","setupDrawCall","watch","mounted","showDialog","coloredLogo","closeModal","model","callback","$$v","text","expression","textOptions","scopedSlots","_u","key","fn","_s","item","icon","showBackgroundBox","showBackgroundBoxOptions","updateShowBackgroundBox","fontColor","updateAnnotationText","components","sizes","textAnnotationToEdit","map","s","Number","updateTextArea","setShowBackgroundBox","updateFontColor","setWidthToText","clearActiveStates","delimiters","default","returnObject","editingIndex","computedCounterValue","multiple","selectedItems","internalSearch","hasSlot","VSelect","isAnyValueAllowed","menuCanShow","hasDisplayedItems","$slots","onInternalSearchChanged","delimiter","d","genInput","input","genChipSelection","chip","dblclick","onChipInput","onEnterDown","getMenuIndex","onFilteredItemsChanged","onKeyDown","keyCode","$refs","selectionStart","onTabDown","selectItem","setSelectedItems","internalValue","setValue","updateEditing","updateCombobox","isUsingSlot","Boolean","$scopedSlots","getText","undefined","updateSelf","updateTags","menuIndex","onPaste","pastedItemText","findExistingIndex","baseMixins","mixins","autoGrow","noResize","rowHeight","validator","isNaN","rows","classes","VTextField","noResizeHandle","lazyValue","$nextTick","setTimeout","calculateInputHeight","minHeight","Math","onInput","isFocused","VCard","VCardText","VCombobox","VContainer","VDialog","VFlex","VIcon","VLayout","VSpacer","VTextarea","VToolbar","useWebgl","ref","colorSettings","octColorSettings","thicknessMapColorSettings","isFlipped270","flippedX","autodraw","lastImgSize","usePixelCanvas","bounds","componentName","isSideBySide","processedImg","m4","translate","m","tx","ty","tz","dst","Float32Array","m00","m01","m02","m03","m10","m11","m12","m13","m20","m21","m22","m23","m30","m31","m32","m33","sx","sy","sz","orthographic","left","right","bottom","top","near","far","multiply","b","b00","b01","b02","b03","b10","b11","b12","b13","b20","b21","b22","b23","b30","b31","b32","b33","a00","a01","a02","a03","a10","a11","a12","a13","a20","a21","a22","a23","a30","a31","a32","a33","generateZRotationMatrix","angle","PI","c","cos","sin","zRotation","rm","WebglProgram","vertexShaderText","fragmentShaderText","program","positionLocation","texcoordLocation","matrixLocation","textureLocation","gl","createProgram","createShaders","prepareLocations","vertexShader","createShader","attachShader","fragmentShader","linkProgram","getProgramParameter","LINK_STATUS","getProgramInfoLog","isVertex","shaderType","VERTEX_SHADER","FRAGMENT_SHADER","shader","shaderSource","compileShader","getShaderParameter","COMPILE_STATUS","getShaderInfoLog","getAttribLocation","getUniformLocation","imageTexture","uniform1i","activeTexture","TEXTURE0","bindTexture","TEXTURE_2D","positionBuffer","texcoordBuffer","bindBuffer","ARRAY_BUFFER","enableVertexAttribArray","vertexAttribPointer","FLOAT","matrix","uniformMatrix4fv","coordBuffer","texture","bufferData","STATIC_DRAW","deleteBuffer","deleteTexture","deleteProgram","ColorWebglProgram","brightnessLocation","contrastLocation","gammaLocation","uniform1f","OptosWebglProgram","greenBrightnessLocation","greenContrastLocation","generatePaletteTexture","palette","createTexture","texParameteri","TEXTURE_MIN_FILTER","NEAREST","TEXTURE_MAG_FILTER","TEXTURE_WRAP_S","CLAMP_TO_EDGE","TEXTURE_WRAP_T","texImage2D","RGB","PALETTE_LENGTH","UNSIGNED_BYTE","PaletteWebglProgram","vert","frag","paletteTexture","paletteLocation","TEXTURE1","colorPalette","setPalette","LinearPaletteWebglProgram","slopeLocation","offsetLocation","linearAdjustment","slope","offset","WebglRenderer","forceTranslate","programs","standard","defaultVertexShader","defaultFragmentShader","colorFragmentShader","luma","lumaFragmentShader","red","redFragmentShader","green","greenFragmentShader","blue","blueFragmentShader","optosStandard","optosDefaultFragmentShader","optosGreen","optosGreenFragmentShader","invert","invertFragmentShader","paletteFragmentShader","linearPalette","linearPaletteFragmentShader","lastProgram","positions","texcoords","lastImg","webGLContext","getWebglContext","isContextLost","prepareCanvas","renderImg","prepareTexture","bindTextureBuffers","setSamplerLocation","drawArrays","TRIANGLES","restoreWebGL","cleanupCanvas","selectProgram","useProgram","getTransformMatrix","setTransformationMatrix","setProgramColorSettings","viewport","clearColor","clear","COLOR_BUFFER_BIT","DEPTH_BUFFER_BIT","scaleToDevicePixelRatio","applyBounds","applyTransformations","window","devicePixelRatio","style","minX","maxX","minY","maxY","offsetX","offsetY","zoom","ratio","setColorSettings","setOCTColorSettings","setThicknessMapColorSettings","isInverted","GRAYSCALE_MODES","REC709","Red","Blue","Green","sizesEqual","LINEAR","RGBA","createPrograms","prepareBuffers","createBuffer","buffer","hasWebgl","clearReferences","ext","getExtension","loseContext","restoreContext","HTMLImageElement","HTMLCanvasElement","String","limitDrawBounded","debounceDrawBounded","limitDraw","debounceDraw","restoreDrawCall","preventDefault","console","log","createRenderer","clearDrawCall","prepareWebgl","addEventListener","handler","deep","beforeDestroy","clearWebGL","hires","dontUseWebgl","processingCanvas","document","createElement","lastDrawnImage","exceedMaxTexture","needsShading","needsPixelShading","needsOctShading","needsThicknessShading","pixelShaderSettings","blankCanvas","processImageForDisplay","resizeWebglImage","stopUsingCanvas","updateImageShading","rule","canvasImage","getSizeDifference","drawImage","canvasWebgl","loadFullSize","annotationImage","title","isActive","disabled","activeImage","activeIsContinuous","constructor","annotationType","Grid","stepX","stepY","updateImgSize","setLineStyle","dx","beginPath","moveTo","lineTo","stroke","closePath","dy","Annotation","directives","rawName","arg","ctrlKey","shiftKey","altKey","metaKey","handleCanvasWheel","target","currentTarget","handleMousedown","handleMousemove","handleMouseup","handleMouseout","handleClick","_e","fit","grid","viewFinder","toFixed","colorHex","minZoom","maxZoom","rateLimitedUpdateZoom","stopFitZoom","slot","updateZoom","ViewFinder","strokeRect","fittedImgSize","scaledZoom","fitZoom","innerHeight","centerX","centerY","signalReady","debug","disableCustomEvents","canvasWrapperStyle","handleInteractionStart","setCanvasLocation","handleInteractionMove","deltaY","limitUpdateZoom","setDisableCustomEvents","updateViewFinder","VProgressCircular","VSlider","cancelEvent","stopPropagation","isMousedown","isDragging","timeToPop","spaceThreshold","start","end","setMousedown","doHandleInteractionStart","doHandleInteractionMove","doHandleInteractionEnd","setMouseup","handlePanstart","srcEvent","handlePanmove","handlePanend","handleTap","isDuplicateEvent","logEvent","handleHover","handleInteractionEnd","set","oldestEvent","withinThreshold","e1","e2","abs","splice","cursorClass","id","_k","handleDelete","handleKeypress","button","borderColor","viewFit","isMask","_l","viewSize","imgOffset","Array","realLocation","Function","dragStart","dragStartCenter","startFocus","editingAddedAnnotation","initiateDragStart","stopFocus","clearDragStart","magnifierMouseup","updateActive","getActiveClass","checkHover","hoveredAnnotation","wrapper","focus","blur","updateDrag","dragTo","instantiateMagnifier","magnifierMousedown","setupAnnotationsAndMagnifier","setInitialAnnotationSizes","padZeroes","count","number","isPlaying","btnColor","btnClass","_t","isOpen","hideCloseButton","closePrintPreview","patientHeader","patient","toggleHeader","headerToggle","imagesPerSheet","imagesPerSheetOptions","setImagesPerSheet","isSafari","setLayout","isLandscape","isPortrait","isLoadingImages","print","printPreviewImagesPerSheet","printPreviewDisplayHeader","layoutToggle","currentPage","printPreviewCurrentPage","isLoadingAppPrintImages","handleCheckboxClick","layout","printPreviewPageLayout","num","changePage","direction","printPreviewIsPrinting","VCheckbox","VRow","isPrinting","pageNum","sheetNum","printPreviewImages","displayPatientName","displayPatientID","displayPatientDOB","imageClass","displayExamDate","indexOffset","displayImageExSrNo","imageStyle","images","printPreviewContext","i","visibility","pageIndex","imagesPerPage","inf","lastName","firstName","ptId","dob","date","src","notFound","printPreviewSheetNum","ceil","printPreviewBrowserHeader","printPreviewBrowserToolbar","printPreviewBrowserBody","thumbnailAnnotation","thumbnailAnnotationType","cirrusReferenceMacular","fourSquareGrid","cirrusReferenceRaster","spectralisVolume","spectralisSection","linesIndicator","cirrusReferenceOpticDisc","opticDiscGrid","spectralisCircle","circleGrid","spectralisRadial","radialGrid","spectralisRadialSCN","spectralisRadialCircle","radialCircleGrid","_g","dropdownClass","coloredAssetUrls","dropdown","thumbnailDropdown","currentPrevious","currentBaseline","FourSquareGrid","space","strokeStyle","fillStyle","margin","min","OpticDiscGrid","radius","arc","lineSpace","numberOfLines","lineHight","middle","lines","CircleGrid","RadialGrid","radian","RadialCircleGrid","showDropdown","proofsheet","updateNumberOfLines","VList","VListItem","VListItemTitle","VMenu","buttonClass","xSmall","colors","resetViews","Vue","nextTick","resetView","_uid","limitResetViews","limit","registerResize","includes","clearResize","debouncePerKey","updateCanvasSizes","ClickOutside","inverseLabel","max","step","thumbColor","thumbLabel","tickLabels","ticks","tickSize","trackColor","trackFillColor","vertical","app","oldValue","keyPressed","noClick","get","roundValue","trackTransition","minValue","maxValue","stepNumeric","inputWidth","trackFillStyles","startDir","endDir","valueDir","$vuetify","rtl","transition","trackStyles","showTicks","numTicks","showThumbLabel","computedTrackColor","validationState","computedTrackFillColor","computedThumbColor","parsed","beforeMount","genDefaultSlot","children","slider","genSlider","themeClasses","onBlur","click","onSliderClick","genChildren","genThumbContainer","readonly","tabindex","$attrs","genTrackContainer","setBackgroundColor","genSteps","range","offsetDirection","filled","thumbLabelContent","genThumbLabelContent","genThumbLabel","setTextColor","getThumbContainerStyles","role","keydown","keyup","touchstart","onDrag","origin","genThumb","onThumbMouseDown","mouseUpOptions","passive","capture","mouseMoveOptions","onSliderMouseUp","onMouseMove","parseMouseMove","parseKeyDown","onKeyUp","thumb","onFocus","track","trackLength","clickOffset","clickPos","isInsideTrack","trackStart","up","pageup","pagedown","home","down","steps","increase","multiplier","trimmedStep","toString","decimals","newValue","selectedGrayscaleMode","defaultMenuProps","offsetOverflow","allowOverflow","autoSelectFirst","itemText","queryText","hideNoData","menuProps","noFilter","searchInput","lazySearch","selectedIndex","computedItems","selectedValues","hideSelected","filteredItems","some","currentRange","selectedItem","allItems","isDirty","searchIsDirty","isSearching","$_menuProps","listData","items","isMenuActive","oldVal","activateMenu","created","updateMenuDimensions","menu","changeSelectedIndex","deleteCurrentItem","currentItem","getDisabled","newIndex","clearableCallback","genInputSlot","genSelections","onClick","onSpaceDown","onUpDown","setSearch","valueComparator","getValue","hasItem","onCopy","currentItemText","emitInput","reset","defaultValue","limitEmitInput","doEmitInput","isCirrusReference","store","examBySrNo","device","devices","devSrNo","description","toLowerCase","isCirrus","imgSubType","isSpectralisSLO","exDevice","THUMBNAIL_ANNOTATION_TYPE","imgData","showMisc","drawerClass","openDrawer","closeDrawer","imgKey","tileClass","currentExSrNo","drawer","selected","buttonIcon","browserImages","imagesByExSrNo","VListItemContent","browserName","isAnnotating","imageBrowserContext","zoomControlSize","zoomControlFit","largeViewSize","zoomToFit","updateCenter","showMeasurementSection","canAnnotate","largeViewFit","rgbSize","rgbFit","panBy","annotate","canDownload","userIsViewOnly","download","openPrintPreview","ssoEmrPro","enableSavingWithEmrPro","save","annotationButtonImage","zoomControlHeight","mainViewCanvasSize","erase","activeAnnotationIcons","annotationModes","Delete","magnify","Magnify","flipIcon","flip90Icon","fitToWindow","grayscaleModes","rgbButtonTitle","rgbButtonImage","rgbSyncButtonTitle","dragIcon","defaultBrightness","defaultContrast","defaultGamma","staticStyle","arrow","Arrow","disableAnnotationButtons","Text","redacted","Redact","outlined","Outline","freehand","FreeHandLine","continuous","Angle","shapeOutlineButtonClass","shapeOutline","openShapeOutlineDialog","textSizes","canvasTransform","ImageBrowserViewFinder","canvasAspect","imgAspect","diff","ct","circleImageButton","resetSlider","imageBrowserZoomControl","annotationModeButton","grayscaleModeButton","circleSlotButton","selectWithButton","shapeFill","heightXs","heightSm","heightMd","displayIsFullImage","currentMode","openShapeFillDialog","shapeFillButtonClass","calibration","updateCalibration","warningMessage","line","LengthLine","area","Area","cupToDisc","CupToDisc","freehandArea","FreeHandArea","pdt","PDT","etdrs","ETDRSGrid","smallStandardCircles","StandardCircles1","standardCircles","StandardCircles2","smallDrusenCircles","DrusenCircles1","drusenCircles","DrusenCircles2","drusenHalf","DrusenCircles3","drusenCircle","DrusenCircles4","rectangle","Rectangle","panel","openedPanel","proxy","openDeepDeeDialog","hasAIdata","loadingData","hardError","checkingData","overallResult","highlighterIcon","annotationIcon","toggleAnnotation","deepDeeDataCollection","options","chartStyle","createAIAnalysis","reactiveProp","Bar","renderChart","chartData","BarChart","timeoutID","deepDeeLabels","deepDeeDataset","legend","display","scales","yAxes","xAxes","responsive","theme","backgroundColor","resultStyle","highlighter","setDataset","labels","datasets","setOptions","checkOverallResult","header","nextIsActive","groupClasses","isDisabled","expansionPanels","isReadonly","registerContent","unregisterContent","registerHeader","vm","unregisterHeader","toggle","isBooted","expansionPanel","showLazyContent","ripple","disableIconRotate","expandIcon","hideActions","hasMousedown","genIcon","open","provide","accordion","flat","hover","focusable","inset","popout","tile","hasOwnProperty","updateItem","nextValue","toggleMethod","VExpansionPanel","VExpansionPanelContent","VExpansionPanelHeader","VExpansionPanels","imageIndex","playRate","previousImage","nextImage","play","pause","setPlayRate","rgbExpanded","imgTimestamp","playRates","buttonImage","block","small","medium","large","xLarge","fab","rgbExpandedClass","rgbCollapsedClass","rate","imgMask","view","alignTop","titleTop","rgbContainerStyle","rgbWidth","currentRGBView","topAnnotationControls","imageAnnotationControls","imageMeasurementControls","imagePlaybackToolbar","mainImageView","imageDeepDeeControls","imageDrawer","fitImgSize","mainWrapperId","primaryCanvasWrapperId","zoomWrapperId","useFitZoom","deepDeeAIEnabled","drAIAnalysis","ieStyle","isIE","canvasSizeFloor","keyboardEvent","mvs","pan","center","resetTransform","defaultZoom","destroyed","removeEventListener","refImgLoading","octDataLoading","refImg","refFit","refSize","refImgNotFound","refImgLocation","slices","sliceCurrent","sliceBounds","sliceCurrentIndex","drawAllSlices","isSpectralisCircle","isSpectralisRadial","isSpectralisRadialCircle","showThicknessMap","thicknessMapOpacity","thicknessMapImg","previousSlice","nextSlice","selectSlice","sliceImg","sliceImgNotFound","sliceSize","sliceImgSize","sliceFit","chartSize","innerChartSize","isMultiview","hasPalette","showOverlay","playbackTop","wrapperClass","referenceId","handleWheel","handleMouseUp","overlayImg","opacity","overlayOpacity","overlayColorSettings","overlayAnalysis","showOverlayETDRS","circularPattern","radialCirclesPattern","sliceSelector","paletteId","paletteSize","paletteAnnotation","SliceSelector","colorActive","compositeColor","compositeColorActive","sliceCurrentWidth","boxWidth","triangleLength","triangleInternalAngle","slicesVertical","composites","compositeCurrent","compositeBounds","compositesVertical","showExtension","showBindingBox","drawBoundingBoxWidth","drawBoundingBoxHeight","isRadial","drawSliceCollection","drawBoundingBox","current","slice","drawSlice","eX","eY","sX","sY","drawTriangleCaps","atan2","drawTriangle","getTriangleCoordinates","x1","y1","x2","y2","fill","processSliceCollection","processed","exStart","exEnd","exLength","startPoint","endPoint","sort","exStartY","exEndY","exStartX","exEndX","updateBounds","outOfBoundsDirections","Directions","Vertical","sliceAt","composite","Horizontal","sorted","getDistanceFromSlice","findSliceInExtension","findVerticalSlice","findHorizontalSlice","less","greater","binarySearch","numerator","denominator","sqrt","l","r","floor","CircularPattern","overlayTriangleSize","half","triangleStartPoint","seg1","seg2","seg3","updateCircularPattern","drawCircle","updateTriangle","RadialCirclesPattern","radialSlices","circleSlices","circleRadius","hasCircleScans","drawCircleCollection","currentSlice","xPos","yPos","radialProcessed","circleProcessed","concat","getDistanceFromCircleSlice","pos","getArcPosition","distance","ThicknessMapPalette","gradient","font","baseline","calculatePositions","gradientWidth","gradientHeight","drawScale","drawGradient","createLinearGradient","stop","addColorStop","padStart","fillRect","setFontStyle","stepHeight","textY","currentStep","drawScaleText","fillText","AnalysisETDRS","analysis","seAngle","swAngle","innerRadiusX","centerRadius","innerRadiusY","drawEllipse","middleRadiusX","middleCircle","middleRadiusY","outerRadiusX","outerCircle","outerRadiusY","seInner","seOuter","drawSector","swInner","swOuter","neInner","neOuter","nwInner","nwOuter","setAppropriateFontSize","drawText","centerAverageThickness","imRadiusX","imRadiusY","drawCircleText","moRadiusX","moRadiusY","centerText","fText","formatText","measureText","innerWidth","middleWidth","fontSize","radiusX","radiusY","format","circle","drawEllipseText","eastValue","southValue","northValue","westValue","canvasAnnotation","octSliceControls","pixelShadedCanvas","imageNotFound","overlaySize","overlayFoveaOffset","paletteMin","paletteMax","paletteStep","outOfBounds","showPlaycontrol","boundingBoxSize","isInBoundSliceSelectorLocation","checkForSlice","compositeCurrentIndex","updateSlices","updatesliceCurrent","updateCompositeSlices","updatecompositeCurrent","updateCompositeSliceBounds","updateGradient","updateThicknessAnalysis","updateFoveaOffset","updateSliceBounds","selectedDropdownItem","octDropdownItems","currentEye","selectOD","selectOS","multiView","multiview","isSpectralis","widthLandscape","VAvatar","hasColorPalette","toggleColor","invertColor","showSegmentation","toggleSegmentation","isMeasuring","measure","toggleShowThicknessMap","updateOpacity","wheel","sliceImgLoading","sliceCurrentEyeMarker","sliceInfo","sliceSegmentationLayerData","measureData","measurementChanged","sliceSegmentationThicknessData","thicknessChart","innerChartSegmentationMeasurement","ThicknessChart","scaledData","yRules","xRules","xInPerPx","yInPerPx","mmPerIn","umPerMm","ruleWidth","gutterHeight","dataColor","yLabel","xLabel","curXsize","zoomXOffset","chartW","chartH","zeroX","drawBars","drawRules","writeRules","writeLabels","drawData","convertY","convertX","writeYRule","writeXRule","yLabelWidth","rotate","restore","xLabelWidth","updateScaledData","dimensions","horizontalResolution","verticalResolution","pxWidth","segmentation","originalPixelWidth","xPxPerMm","zoomCenter","imageCenter","generateXRules","InnerChartSegmentationMeasurement","drawSlider","thickness","drawHelperLine","drawThicknessLine","thicknessText","setLineDash","textWidth","textX","sliceId","fitSize","segmentationMeasurement","otherLine","opticDiscLine","eyeMarker","eyeMarkerForceTranslate","SegmentationMeasurement","boxHeight","sliderY","ilm","rpe","drawTextBackground","t","POINTER_CLASSES","pointer","Segmentation","ilmColor","rpeColor","stretchSegmentation","xScale","yScale","calculateStretch","drawPath","dim","pixelWidth","pixelHeight","begin","SliceLayerTypes","Ilm","Rpe","info","doStretch","EyeMarker","EyeMarkers","None","theta","boxSize","textDistance","flangeLength","flangeAngle","text1","text2","getPosition","flange1","flange2","textStart","textEnd","cosT","sinT","startX","startY","endX","endY","marker","SI","IS","TN","NT","OtherLine","OpticDiscLine","cScanIndex","cScans","updatePos","scans","imgLoading","dataLoading","sliceEyeMarker","layerData","strechSegmentation","otherIndex","otherCount","otherColor","eyeMarkerAngle","showOpticDiscLine","cscans","cscanCurrent","cscanCurrentIndex","setupOtherLine","getHoverClass","updateMarker","updateSliceInfo","updateLayerData","updateSliceFit","updateMeasureData","updateTransform","updateTheta","updateStretchSegmentation","updateData","updateChartSize","octReferenceImage","spectralisColorButtons","imageZoomControl","octToolbar","spectralisMainView","refImgTransform","referenceWrapperId","thicknessWrapperId","mainViewId","sliceWrapperId","chartWrapperId","groupName","referenceImageWrapperHeight","infoSize","heightLg","sliceHeight","leftPadding","chartHeight","withinViewBounds","keyword","showHD","hasHD","toggleHD","centerFovea","isOpticDisc","showETDRS","toggleETDRS","formatNumber","overallVolume","overallAverageThickness","seriesType","horzIndex","horzSlices","horzCurrent","vertSlices","vertCurrent","thicknessMapSize","thicknessMapPalette","thicknessPaletteSize","thicknessMapMinThicknessUm","thicknessMapMaxThicknessUm","thicknessMapThicknessStepUm","selectComposite","horzImg","horzImgLoading","horzImgNotFound","bottomIndex","bottomCount","horzLayerData","horzCount","enfaceFit","enfaceImgSize","bottomImg","compositeFit","bottomImgLoading","bottomImgNotFound","compositeInfo","compositeCurrentEyeMarker","bottomLayerData","enfaceImg","enfaceImgLoading","foveaOffset","thicknessAnalysis","enfaceSize","compositeWrapperId","enfaceWrapperId","hdHorzImg","hdHorzImgNotFound","hdHorzImgLoading","hdHorzCurrentIndex","hdHorzs","hdHorzSegmentationLayerData","horzKey","hdHorzCurrent","hdVertImg","compositeImg","hdVertImgNotFound","compositeImgNotFound","hdVertImgLoading","compositeImgLoading","hdVertCurrentIndex","hdVerts","hdVertSegmentationLayerData","compositeSegmentationLayerData","bottomKey","hdVertCurrent","isMacularCube","scanDisplayRatio","cirrusScanDisplayRatio","nextComposite","previousComposite","svs","aspRatio","sliceLocation","sliceInBounds","selectCScan","flippedFit","cscanFit","cscanImgSize","cscanImg","cscanImgNotFound","cscanImgLoading","cscanId","cscanSize","cscanWrapperId","compare","compareExams","compareGroups","baselineExams","baselineGroups","ieAlign","isLocked","toggleLocked","spectralisScanTypeFilter","spectralisScanTypes","selectScanTypeFilter","alignFoveasString","alignFoveaOptions","selectAlign","singleView","allExams","compare_loading","baseline_loading","alignFoveas","currentExam","filteredExams","exams","selectExam","isCompare","isBothMeasuring","thicknessDifference","thicknessMap","isSpectralisVolume","thicknessMapImgLoading","thicknessMapImgNotFound","minThickness","maxThickness","thicknessStep","showSliceLines","differenceMapOpacity","overlayPalette","overlayPaletteSize","overlayMin","overlayMax","overlayStep","mapId","groups","referenceCursor","sliceCursor","relativeMapSize","calculateThicknessDifference","isSameSeriesType","showThicknessComparison","hasExam","hasSegmentation","sliceHasSegmentation","referenceImage","getSlices","playIntervalId","showDifferenceMap","comparisonSameType","differenceCanvas","differenceMin","differenceMapMinThicknessUm","differenceMax","differenceMapMaxThicknessUm","differenceStep","differenceMapThicknessStepUm","differenceMapPalette","tag","toggleOverlay","dropdownItems","generateOCTDropdown","compare_dropdownItems","compare_selectedDropdownItem","baseline_dropdownItems","baseline_selectedDropdownItem","viewOffset","loc","calculateRealLocation","imgIsQueued","enfaceImage","differencePalette","differenceAnalysis","octSliceView","sliceCount","compositeCount","cscanView","indexCounter","compositeHasSegmentation","cscanInfo","cirrusComparisonToolbar","cirrusComparisonViewBodyContent","cirrusComparisonViewOpticDiscBodyContent","rasterThumbSize","drawerId","rasterImageDrawer","rasterColorButtons","aspectFit","aspectRatio","leftEyeText","hvfExams","selectHVFExam","previousHVFImage","hvfIndex","hvfImageCount","nextHVFImage","hvfEye","selectHVFEye","openHVFMultiview","rightEyeText","eyeOnLeft","hvfOrder","eyeOnRight","isOU","scrollUp","scrollDown","showOD","hvfOSImage","scroll","showOS","hvfODImage","wrapperId","eye","minCenter","maxCenter","handleInteractionStop","defaultSize","minScroll","maxScroll","controlSize","vs","getViewSizeByClassName","setFittedSize","zcs","getViewSize","setTransformSizes","scrollFromCenterY","bound","scrollTo","mouseout","osImgSize","odImgSize","switchImages","upOrForward","closeHVFMultiview","returnToSingleView","firstOSImage","hvfCount","controlTransform","HVFViewFinder","cz","smallImgSize","z","getZoom","smallCanvasSize","minTop","imageTransform","setScroll","showZoom","osImage","odImage","firstView","imageBrowserHeader","imageBrowserBody","spectralisBrowserBody","cirrusBrowserBody","spectralisComparisonBody","cirrusComparisonBody","rasterBrowserBody","hvfBrowserBody","hvfMultiviewBody","bodyComponent","limitDrawImgBounded","debounceDrawImgBounded","limitDrawImg","debounceDrawImg","isUserPrefBlackAndWhiteCirrusView","imageHTMLObj","imgTimeStamp","multiviewLaunch","isSelected","imageSrc","thumbNotFound","thumbObjectUrl","isAnnotated","isVideo","iconStyle"],"mappings":"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","file":"js/chunk-4245bf35.4090f0b0.js","sourcesContent":["import CanvasRenderer from \"../../canvas/canvasRenderer\";\r\nimport { drawShadedImage, applyPixelShadingRules, hasCustomPixelColorSettings, exportBlob, getAnnotationType } from \"../../canvas/canvasUtils\";\r\nimport { addMode, editMode, deleteMode, magnifyMode, ANNOTATION_COLORS, ANNOTATION_MODES, shapeFillMode } from \"../../config/config\";\r\nimport axios from \"axios\";\r\nimport { mapActions, mapGetters } from \"vuex\";\r\n\r\nexport default {\r\n computed: {\r\n ...mapGetters([\"sideBySideIsSynced\"]),\r\n exam() {\r\n return this.context && this.context.exam;\r\n },\r\n isOptos() {\r\n return this.context && this.context.exam.isOptos;\r\n },\r\n isOCT() {\r\n return this.context && this.context.exam.isOCT;\r\n },\r\n isFlipped() {\r\n return this.context && this.context.isFlipped;\r\n },\r\n isFlipped90() {\r\n return this.context && this.context.isFlipped90;\r\n },\r\n isDeepDeeAnnotation() {\r\n return this.context && this.context.showDeepDeeAnnotation;\r\n },\r\n deepDeeAnnotation() {\r\n return this.context && this.context.deepDeeAnnotation;\r\n },\r\n\r\n // #region memory canvases\r\n saveCanvas() {\r\n return this.context && this.context.saveCanvas;\r\n },\r\n flattenedImageReady() {\r\n return this.context && this.context.flattenedImageReady;\r\n },\r\n // #endregion\r\n\r\n // #region current image\r\n currentBrowserImage() {\r\n return this.context && this.context.image;\r\n },\r\n imgNotFound() {\r\n return !!(this.currentBrowserImage && this.currentBrowserImage.imgNotFound);\r\n },\r\n imgAvailable() {\r\n return !!(this.currentBrowserImage && !this.currentBrowserImage.imgNotFound);\r\n },\r\n hasFullImage() {\r\n return !!(this.imgSize && this.imgSize.w && this.imgSize.h);\r\n },\r\n imgObject() {\r\n return this.currentBrowserImage && this.currentBrowserImage.imgHtmlObject;\r\n },\r\n thumbObject() {\r\n return this.currentBrowserImage && this.currentBrowserImage.thumbHtmlObject;\r\n },\r\n displayImgObject() {\r\n return this.hasFullImage ? this.imgObject : this.thumbObject;\r\n },\r\n imgSize() {\r\n return this.currentBrowserImage && this.currentBrowserImage.imgSize;\r\n },\r\n thumbSize() {\r\n return this.currentBrowserImage && this.currentBrowserImage.thumbSize;\r\n },\r\n displayImgSize() {\r\n return this.hasFullImage ? this.imgSize : this.thumbSize;\r\n },\r\n imgIsLoading() {\r\n return this.currentBrowserImage && this.currentBrowserImage.imgIsLoading;\r\n },\r\n thumbIsLoading() {\r\n return this.currentBrowserImage && this.currentBrowserImage.thumbIsLoading;\r\n },\r\n imgEye() {\r\n return this.currentBrowserImage && this.currentBrowserImage.imgEye;\r\n },\r\n // #endregion\r\n\r\n // #region color settings\r\n imageColorSettings() {\r\n return this.context && this.context.imageColorSettings;\r\n },\r\n grayscaleMode() {\r\n return this.imageColorSettings && this.imageColorSettings.grayscaleMode;\r\n },\r\n brightness() {\r\n return this.imageColorSettings && this.imageColorSettings.brightness;\r\n },\r\n contrast() {\r\n return this.imageColorSettings && this.imageColorSettings.contrast;\r\n },\r\n gamma() {\r\n return this.imageColorSettings && this.imageColorSettings.gamma;\r\n },\r\n greenBrightness() {\r\n return this.imageColorSettings && this.imageColorSettings.greenBrightness;\r\n },\r\n greenContrast() {\r\n return this.imageColorSettings && this.imageColorSettings.greenContrast;\r\n },\r\n // #endregion\r\n\r\n // #region Annotations\r\n annotations() {\r\n return this.context && this.context.annotations;\r\n },\r\n annotationMode() {\r\n return this.context && this.context.annotationMode;\r\n },\r\n annotationColor() {\r\n return this.context && this.context.annotationColor;\r\n },\r\n annotationOptions() {\r\n return {\r\n textSize: this.context && this.context.annotationTextSize || 40,\r\n lineWidth: this.context && this.context.annotationLineWidth || 5,\r\n color: this.context && this.context.annotationColor || ANNOTATION_COLORS.White,\r\n scale: this.context && this.context.deviceCalibration && this.context.deviceCalibration.value,\r\n transform: this.context && this.context.transform\r\n };\r\n },\r\n annotationLineWidth() {\r\n return this.context && this.context.annotationLineWidth;\r\n },\r\n annotationTextSize() {\r\n return this.context && this.context.annotationTextSize;\r\n },\r\n isDragLock() {\r\n return this.context && this.context.isDragLock;\r\n },\r\n inAddMode() {\r\n return addMode(this.annotationMode);\r\n },\r\n inEditMode() {\r\n return editMode(this.annotationMode);\r\n },\r\n inDeleteMode() {\r\n return deleteMode(this.annotationMode);\r\n },\r\n inMagnifyMode() {\r\n return magnifyMode(this.annotationMode);\r\n },\r\n inShapeFillMode() {\r\n return shapeFillMode(this.annotationMode);\r\n },\r\n syncInShapeFillMode() {\r\n return shapeFillMode(this.syncContext.annotationMode);\r\n },\r\n isMagnifying() {\r\n return this.context && this.context.isMagnifying;\r\n },\r\n magnifier() {\r\n return this.context && this.context.magnifier;\r\n },\r\n activeAnnotation() {\r\n return this.context && this.context.activeAnnotation;\r\n },\r\n syncActiveAnnotation() {\r\n return this.syncContext && this.syncContext.activeAnnotation;\r\n },\r\n selectedTextSize() {\r\n return this.context && this.context.annotationTextSize;\r\n },\r\n \r\n shapeFillColor() {\r\n return this.context && this.context.shapeFillColor;\r\n },\r\n \r\n // #endregion\r\n\r\n // #region RGB view\r\n rgbSettings() {\r\n return this.context && this.context.rgbSettings;\r\n },\r\n rgbView() {\r\n return !!this.rgbSettings;\r\n },\r\n rgbSync() {\r\n return this.rgbSettings && this.rgbSettings.sync;\r\n },\r\n greenSync() {\r\n return this.rgbSettings && this.rgbSettings.greenSync;\r\n },\r\n // #endregion\r\n\r\n // #region Device configurations for measurements\r\n deviceConfigs() {\r\n return this.context && this.context.deviceConfigs;\r\n },\r\n hasDeviceConfigs() {\r\n return this.deviceConfigs.length;\r\n },\r\n deviceCalibrations() {\r\n return this.deviceConfigs.filter(v => v.type === \"magVal\");\r\n },\r\n hasDeviceCalibrations() {\r\n return this.deviceCalibrations.length;\r\n },\r\n deviceCalibration() {\r\n return this.context && this.context.deviceCalibration;\r\n },\r\n // #endregion\r\n },\r\n methods: {\r\n ...mapActions([\"downloadBlob\"]),\r\n // actions/mutations\r\n\r\n // #region select images\r\n resetImage() {\r\n if (!this.context.deepDeeHighlight) {\r\n this.context.selectImage(this.context.image);\r\n if (this.sideBySideIsSynced)\r\n this.syncContext.selectImage(this.syncContext.image);\r\n }\r\n },\r\n setCurrentImageLoading(isLoading) {\r\n if (this.context && this.context.image)\r\n this.context.image.imgIsLoading = isLoading;\r\n },\r\n // #endregion\r\n\r\n // #region annotations and measurements\r\n clearAnnotations() {\r\n if (!this.context.deepDeeHighlight) {\r\n if (this.context)\r\n this.context.clearAnnotations();\r\n if (this.sideBySideIsSynced && this.syncContext)\r\n this.syncContext.clearAnnotations();\r\n }\r\n },\r\n annotationModeButtonClick(buttonMode) {\r\n if (!this.context.deepDeeHighlight) \r\n this.toggleAnnotationMode(buttonMode);\r\n },\r\n dragButtonClick() {\r\n if (this.context) {\r\n this.context.toggleIsDragLock();\r\n }\r\n if (this.sideBySideIsSynced && this.syncContext) {\r\n this.syncContext.toggleIsDragLock();\r\n }\r\n this.clearActiveAnnotation();\r\n },\r\n clearAnnotationMode() {\r\n if (this.context)\r\n this.context.clearAnnotationMode();\r\n if (this.sideBySideIsSynced && this.syncContext)\r\n this.syncContext.clearAnnotationMode();\r\n },\r\n toggleAnnotationMode(mode) {\r\n if (this.context)\r\n this.context.toggleAnnotationMode(mode);\r\n if (this.sideBySideIsSynced && this.syncContext)\r\n this.syncContext.toggleAnnotationMode(mode);\r\n },\r\n setAnnotationMode(mode) {\r\n if (this.context)\r\n this.context.setAnnotationMode(mode);\r\n if (this.sideBySideIsSynced && this.syncContext)\r\n this.syncContext.setAnnotationMode(mode);\r\n },\r\n updateAnnotationColor(color) {\r\n if (this.context)\r\n this.context.updateAnnotationColor(color);\r\n if (this.sideBySideIsSynced && this.syncContext)\r\n this.syncContext.updateAnnotationColor(color);\r\n },\r\n updateShapeFillColor(color) {\r\n if (this.context)\r\n this.context.updateShapeFillColor(color);\r\n if (this.sideBySideIsSynced && this.syncContext)\r\n this.syncContext.updateShapeFillColor(color);\r\n },\r\n selectCalibration(name) {\r\n if (this.context)\r\n this.context.selectCalibration(name);\r\n if (this.sideBySideIsSynced && this.syncContext)\r\n this.syncContext.selectCalibration(name);\r\n },\r\n clearActiveAnnotation() {\r\n if (this.context)\r\n this.context.clearActiveAnnotation();\r\n if (this.sideBySideIsSynced && this.syncContext)\r\n this.syncContext.clearActiveAnnotation();\r\n },\r\n updateTextSize(size) {\r\n this.setFlattenedImageReady(false);\r\n\r\n if (this.context)\r\n this.context.updateAnnotationTextSize(size);\r\n \r\n if (this.sideBySideIsSynced && this.syncContext)\r\n this.syncContext.updateAnnotationTextSize(size);\r\n },\r\n updateLineWidth(size) {\r\n this.setFlattenedImageReady(false);\r\n \r\n if (this.context)\r\n this.context.updateLineWidth(size);\r\n \r\n if (this.sideBySideIsSynced && this.syncContext)\r\n this.syncContext.updateLineWidth(size);\r\n },\r\n mousedownAnnotation(eventWrapper) {\r\n this.setFlattenedImageReady(false);\r\n this.doMousedownAnnotation(eventWrapper, false);\r\n if (this.sideBySideIsSynced)\r\n this.doMousedownAnnotation(eventWrapper, true);\r\n },\r\n doMousedownAnnotation(eventWrapper, sync) {\r\n let activeAnnotation = sync ? this.syncActiveAnnotation : this.activeAnnotation;\r\n if (activeAnnotation && activeAnnotation.isContinuous) {\r\n activeAnnotation.mousedown(eventWrapper.x, eventWrapper.y, eventWrapper.e);\r\n } else {\r\n let previousActive = activeAnnotation;\r\n this.doClearActiveAnnotation(sync);\r\n let annotation = null;\r\n if (this.inAddMode) \r\n annotation = this.doCreateAnnotation(eventWrapper, sync);\r\n else if (this.inEditMode || (sync ? this.syncInShapeFillMode : this.inShapeFillMode)) \r\n annotation = this.doGetAnnotationByPosition(eventWrapper.x, eventWrapper.y, sync);\r\n if (this.isDragLock && this.inEditMode) \r\n {\r\n if (annotation == previousActive) \r\n this.doSetActiveAnnotation(annotation, sync);\r\n }\r\n else\r\n this.doSetActiveAnnotation(annotation, sync);\r\n if (annotation) {\r\n if (this.inDeleteMode) this.doDeleteActiveAnnotation(sync);\r\n else if (this.inShapeFillMode && !sync) {\r\n this.annotations[this.annotations.indexOf(annotation)].color = this.shapeFillColor;\r\n annotation.updateColor(this.shapeFillColor);\r\n if (!this.syncInShapeFillMode) {\r\n this.clearAnnotationMode();\r\n this.generateFlatImage();\r\n }\r\n }\r\n else if (this.syncInShapeFillMode) {\r\n this.syncContext.annotations[this.syncContext.annotations.indexOf(annotation)].color = this.syncContext.shapeFillColor;\r\n annotation.updateColor(this.syncContext.shapeFillColor);\r\n this.clearAnnotationMode();\r\n this.generateFlatImage();\r\n }\r\n else if (this.isDragLock && this.inEditMode) \r\n {\r\n if (annotation == activeAnnotation)\r\n annotation.mousedown(eventWrapper.x, eventWrapper.y, eventWrapper.e);\r\n }\r\n else {\r\n if (this.inAddMode && annotation.onCreate) annotation.onCreate();\r\n annotation.mousedown(eventWrapper.x, eventWrapper.y, eventWrapper.e);\r\n }\r\n }\r\n }\r\n },\r\n mousemoveAnnotation({ x, y }) {\r\n if (this.activeAnnotation)\r\n this.activeAnnotation.mousemove(x, y);\r\n if (this.sideBySideIsSynced && this.syncContext.activeAnnotation)\r\n this.syncContext.activeAnnotation.mousemove(x, y);\r\n },\r\n mouseupAnnotation() {\r\n if (this.activeAnnotation) this.activeAnnotation.mouseup();\r\n if (this.sideBySideIsSynced && this.syncContext.activeAnnotation)\r\n this.syncContext.activeAnnotation.mouseup();\r\n if (this.context.annotationMode == ANNOTATION_MODES.ContinuousDraw) this.clearActiveAnnotation();\r\n if (this.sideBySideIsSynced && this.syncContext.annotationMode == ANNOTATION_MODES.ContinuousDraw)\r\n this.syncContext.clearActiveAnnotation();\r\n if (this.inAddMode && this.context.annotationMode != ANNOTATION_MODES.ContinuousDraw) this.clearAnnotationMode();\r\n },\r\n\r\n annotationByPosition({x, y}) {\r\n return this.context && this.context.annotations && this.context.annotations.find(a => a.isInBounds(x, y));\r\n },\r\n doGetAnnotationByPosition(x, y, sync) {\r\n let context = sync ? this.syncContext : this.context;\r\n return context && context.annotations && context.annotations.find(a => a.isInBounds(x, y));\r\n },\r\n doCreateAnnotation(position, sync) {\r\n let context = sync ? this.syncContext : this.context;\r\n let type = getAnnotationType(this.annotationMode);\r\n let annotation = type && new type(position, this.annotationOptions, context);\r\n if (annotation) {\r\n annotation.setParentTransform(context.transform);\r\n if (sync && annotation.setSyncPair) {\r\n this.context.activeAnnotation.setSyncPair(annotation);\r\n annotation.setSyncPair(this.context.activeAnnotation);\r\n }\r\n this.addAnnotation(annotation, sync);\r\n }\r\n return annotation;\r\n },\r\n deleteActiveAnnotation() {\r\n this.doDeleteActiveAnnotation(false);\r\n if (this.sideBySideIsSynced && this.syncContext)\r\n this.doDeleteActiveAnnotation(true);\r\n },\r\n doDeleteActiveAnnotation(sync) {\r\n let context = sync ? this.syncContext : this.context;\r\n context.setFlattenedImageReady(false);\r\n let annotation = context.activeAnnotation;\r\n if (!annotation.delete()) return;\r\n let index = this.doGetAnnotationIndex(context.activeAnnotation, sync);\r\n context.clearActiveAnnotation();\r\n context.deleteAnnotation(index);\r\n },\r\n doSetActiveAnnotation(annotation, sync) {\r\n let context = sync ? this.syncContext : this.context;\r\n if (context) context.setActiveAnnotation(annotation);\r\n },\r\n addAnnotation(annotation, sync) {\r\n let context = sync ? this.syncContext : this.context;\r\n if (context) context.addAnnotation(annotation);\r\n },\r\n doGetAnnotationIndex(annotation, sync) {\r\n let context = sync ? this.syncContext : this.context;\r\n return context && context.annotations && context.annotations.findIndex(a => a == annotation);\r\n },\r\n doClearActiveAnnotation(sync) {\r\n let context = sync ? this.syncContext : this.context;\r\n context.clearActiveAnnotation();\r\n },\r\n setIsMagnifying(val, sync) {\r\n let context = sync ? this.syncContext : this.context;\r\n if (context) context.setIsMagnifying(val);\r\n },\r\n updateMagnifier(position) {\r\n this.doUpdateMagnifier(position, false);\r\n if (this.sideBySideIsSynced)\r\n this.doUpdateMagnifier(position, true);\r\n },\r\n doUpdateMagnifier(position, sync) {\r\n let context = sync ? this.syncContext : this.context;\r\n context.updateMagnifier(position);\r\n },\r\n mousedownMagnifier() {\r\n this.doMousedownMagnifier(false);\r\n if (this.sideBySideIsSynced)\r\n this.doMousedownMagnifier(true);\r\n },\r\n doMousedownMagnifier(sync) {\r\n let context = sync ? this.syncContext : this.context;\r\n context.mousedownMagnifier();\r\n },\r\n mouseupMagnifier() {\r\n this.doMouseupMagnifier(false);\r\n if (this.sideBySideIsSynced)\r\n this.doMouseupMagnifier(true);\r\n },\r\n doMouseupMagnifier(sync) {\r\n let context = sync ? this.syncContext : this.context;\r\n context.mouseupMagnifier();\r\n },\r\n // #endregion\r\n\r\n // #region DeepDee \r\n\r\n toggleDeepDeeHighlight() {\r\n if (this.context.toggleDeepDeeHighlight && !this.context.showDeepDeeAnnotation)\r\n this.context.toggleDeepDeeHighlight();\r\n },\r\n // #endregion\r\n\r\n // #region color correction\r\n setFlattenedImageReady(ready) {\r\n if (this.context)\r\n this.context.setFlattenedImageReady(ready);\r\n if (this.sideBySideIsSynced)\r\n this.syncContext.setFlattenedImageReady(ready);\r\n },\r\n toggleGrayscaleMode(mode) {\r\n if (!this.context.deepDeeHighlight) {\r\n this.setFlattenedImageReady(false);\r\n if (this.rgbView)\r\n this.selectRGBViewByMode(mode);\r\n else if (this.context && this.context.toggleGrayscaleMode)\r\n this.context.toggleGrayscaleMode(mode);\r\n }\r\n },\r\n updateBrightness(brightness) {\r\n if (this.flattenedImageReady)\r\n this.setFlattenedImageReady(false);\r\n if (this.context && this.context.updateBrightness)\r\n this.context.updateBrightness(brightness);\r\n if (this.context && this.rgbView)\r\n this.updateRGBSync();\r\n },\r\n updateContrast(contrast) {\r\n if (this.context && this.flattenedImageReady)\r\n this.setFlattenedImageReady(false);\r\n if (this.context && this.context.updateContrast)\r\n this.context.updateContrast(contrast);\r\n if (this.context && this.rgbView)\r\n this.updateRGBSync();\r\n },\r\n updateGamma(gamma) {\r\n if (this.flattenedImageReady)\r\n this.setFlattenedImageReady(false);\r\n if (this.context.updateGamma)\r\n this.context.updateGamma(gamma);\r\n if (this.rgbView)\r\n this.updateRGBSync();\r\n },\r\n toggleGreenSync() {\r\n if (this.context.toggleGreenSync)\r\n this.context.toggleGreenSync();\r\n if (this.greenSync)\r\n this.updateRGBSync();\r\n },\r\n updateGreenBrightness(brightness) {\r\n if (this.flattenedImageReady)\r\n this.setFlattenedImageReady(false);\r\n if (this.context.updateGreenBrightness)\r\n this.context.updateGreenBrightness(brightness);\r\n if (this.rgbView)\r\n this.updateRGBSync();\r\n },\r\n updateGreenContrast(contrast) {\r\n if (this.flattenedImageReady)\r\n this.setFlattenedImageReady(false);\r\n if (this.context.updateGreenContrast)\r\n this.context.updateGreenContrast(contrast);\r\n if (this.rgbView)\r\n this.updateRGBSync();\r\n },\r\n // #endregion\r\n\r\n // #region transformations\r\n toggleFlipped() {\r\n this.clearAnnotationMode();\r\n this.setFlattenedImageReady(false);\r\n if (this.context.toggleFlipped)\r\n this.context.toggleFlipped();\r\n\r\n if (this.sideBySideIsSynced && this.syncContext && this.syncContext.toggleFlipped)\r\n this.syncContext.toggleFlipped();\r\n },\r\n toggleFlipped90() {\r\n this.clearAnnotationMode();\r\n this.setFlattenedImageReady(false);\r\n if (this.context.toggleFlipped90)\r\n this.context.toggleFlipped90();\r\n\r\n if (this.sideBySideIsSynced && this.syncContext && this.syncContext.toggleFlipped90)\r\n this.syncContext.toggleFlipped90();\r\n },\r\n\r\n toggleMouseWheelZoom() {\r\n if (this.context)\r\n this.context.toggleMouseWheelZoom();\r\n if (this.sideBySideIsSynced && this.syncContext)\r\n this.syncContext.toggleMouseWheelZoom();\r\n },\r\n // #endregion\r\n\r\n // #region rgb\r\n toggleRGB() {\r\n if (!this.context.deepDeeHighlight) {\r\n if (this.context && this.context.toggleRGB)\r\n this.context.toggleRGB();\r\n if (this.rgbView)\r\n this.replicateMainToAllRGB();\r\n }\r\n },\r\n toggleRGBSync() {\r\n if (this.context && this.context.toggleRGBSync)\r\n this.context.toggleRGBSync();\r\n if (this.rgbView)\r\n this.updateRGBSync();\r\n },\r\n selectRGBViewByMode(mode) {\r\n let index = this.getRGBIndex(mode);\r\n if (index === this.currentRGBIndex) index = 0;\r\n this.selectRGBView(index);\r\n },\r\n getRGBIndex(mode) {\r\n return this.context && this.context.getRGBIndex && this.context.getRGBIndex(mode);\r\n },\r\n selectRGBView(index) {\r\n if (this.rgbView && this.currentRGBIndex !== index) {\r\n this.setFlattenedImageReady(false);\r\n if (this.context && this.context.selectRGBView) this.context.selectRGBView(index);\r\n this.replicateCurrentRGBToMain();\r\n }\r\n },\r\n replicateCurrentRGBToMain() {\r\n if (this.context && this.context.replicateCurrentRGBToMain)\r\n this.context.replicateCurrentRGBToMain();\r\n },\r\n replicateMainToCurrentRGB() {\r\n if (this.context && this.context.replicateMainToCurrentRGB)\r\n this.context.replicateMainToCurrentRGB();\r\n },\r\n replicateMainToAllRGB() {\r\n if (this.context && this.context.replicateMainToAllRGB)\r\n this.context.replicateMainToAllRGB();\r\n },\r\n replicateGreenMainToAllRGB() {\r\n if (this.context && this.context.replicateGreenMainToAllRGB)\r\n this.context.replicateGreenMainToAllRGB();\r\n },\r\n updateRGBSync() {\r\n this.replicateMainToCurrentRGB();\r\n if (this.rgbSync)\r\n this.replicateMainToAllRGB();\r\n if (this.greenSync)\r\n this.replicateGreenMainToAllRGB();\r\n },\r\n // #endregion\r\n\r\n // #region image flattening\r\n generateFlatImage() {\r\n return new Promise(resolve => {\r\n if (this.saveCanvas && this.imgObject) {\r\n this.clearActiveAnnotation();\r\n let canvas = this.saveCanvas;\r\n let img = this.imgObject;\r\n let settings = this.imageColorSettings;\r\n\r\n if (!this.isFlipped90) {\r\n canvas.width = img.width;\r\n canvas.height = img.height;\r\n }\r\n else {\r\n canvas.width = img.height;\r\n canvas.height = img.width;\r\n }\r\n let renderer = new CanvasRenderer(canvas);\r\n renderer.doScaleToPixelRatio = false;\r\n renderer.canvasSize = this.imgSize;\r\n renderer.imgSize = this.imgSize;\r\n renderer.isFlipped = this.isFlipped;\r\n renderer.isFlipped90 = this.isFlipped90;\r\n renderer.isDeepDeeAnnotation = this.isDeepDeeAnnotation;\r\n renderer.toSave = true;\r\n if (hasCustomPixelColorSettings(settings)) {\r\n // note: this method puts image data directly onto the canvas\r\n drawShadedImage(img, canvas, applyPixelShadingRules, settings);\r\n } else {\r\n renderer.drawImg(img);\r\n }\r\n // note: using \"render\" instead of \"draw\" here because draw erases the canvas!\r\n let ctx = canvas.getContext(\"2d\");\r\n this.annotations.forEach(a => renderer.renderAnnotation(a, ctx));\r\n if (renderer.isDeepDeeAnnotation)\r\n renderer.renderAnnotation(this.deepDeeAnnotation, ctx);\r\n\r\n this.setFlattenedImageReady(true);\r\n resolve();\r\n }\r\n });\r\n },\r\n\r\n lineWidthGenerateFlatImage() {\r\n return new Promise(resolve => {\r\n let ann = null;\r\n let sideBySideAnn = null;\r\n if (this.activeAnnotation)\r\n ann = this.activeAnnotation;\r\n if (this.sideBySideIsSynced)\r\n sideBySideAnn = this.syncContext.activeAnnotation;\r\n this.clearActiveAnnotation();\r\n let canvas = this.saveCanvas;\r\n let img = this.currentBrowserImage;\r\n let settings = this.imageColorSettings;\r\n\r\n canvas.width = img.width;\r\n canvas.height = img.height;\r\n let renderer = new CanvasRenderer(canvas);\r\n renderer.imgSize = this.imgSize;\r\n renderer.isFlipped = this.isFlipped;\r\n renderer.isFlipped90 = this.isFlipped90;\r\n if (hasCustomPixelColorSettings(settings)) {\r\n // note: this method puts image data directly onto the canvas\r\n drawShadedImage(img, canvas, applyPixelShadingRules, settings);\r\n } else {\r\n renderer.drawImg(img);\r\n }\r\n\r\n if (ann)\r\n this.doSetActiveAnnotation(ann, false);\r\n\r\n if (this.sideBySideIsSynced)\r\n this.doSetActiveAnnotation(sideBySideAnn, true);\r\n\r\n // note: using \"render\" instead of \"draw\" here because draw erases the canvas!\r\n let ctx = canvas.getContext(\"2d\");\r\n this.annotations.forEach(a => renderer.renderAnnotation(a, ctx));\r\n\r\n this.setFlattenedImageReady(true);\r\n\r\n resolve();\r\n });\r\n },\r\n // #endregion\r\n\r\n // #region saveImages\r\n saveImage() {\r\n if (!this.context.deepDeeHighlight) {\r\n this.setCurrentImageLoading(true);\r\n this.exportFlatImage()\r\n .then(this.uploadAnnotatedImage)\r\n .then(msg => this.$store.commit(\"displayStatus\", { message: msg, level: \"success\" }))\r\n .catch(msg => this.$store.commit(\"displayStatus\", { message: msg, level: \"error\" }))\r\n .then(() => this.$store.dispatch(\"getPatientExams\"))\r\n .finally(() => this.setCurrentImageLoading(false));\r\n }\r\n },\r\n uploadAnnotatedImage(blob) {\r\n const fd = new FormData();\r\n fd.append(\"image\", blob);\r\n fd.append(\"ptSrNo\", this.currentBrowserImage.ptSrNo);\r\n fd.append(\"exSrNo\", this.currentBrowserImage.exSrNo);\r\n fd.append(\"eye\", this.imgEye);\r\n fd.append(\"index\", this.currentBrowserImage.imgIndex);\r\n fd.append(\"flSrNo\", this.currentBrowserImage.flSrNo);\r\n fd.append(\"flName\", this.currentBrowserImage.flName);\r\n fd.append(\"imageType\", this.currentBrowserImage.imgType);\r\n fd.append(\"imageGroup\", this.currentBrowserImage.imgGroup);\r\n fd.append(\"rcsSrNo\", this.currentBrowserImage.rcsSrNo || 0);\r\n fd.append(\"rcimgIntrimPath\", this.currentBrowserImage.rcimgIntrimPath || \"\");\r\n\r\n return axios.post(\"api/image/saveAnnotatedImage\", fd, {\r\n headers: { \"Content-Type\": \"multipart/form-data\" }\r\n }).then(response => {\r\n if (response.data.success) return \"Annotated Image Saved.\";\r\n return Promise.reject(\"Error Saving Annotated Image\");\r\n }).catch(error => {\r\n if ((typeof error) === \"string\") return Promise.reject(error);\r\n return Promise.reject(error.message);\r\n });\r\n },\r\n downloadImage() {\r\n if (!this.context.deepDeeHighlight) {\r\n this.setCurrentImageLoading(true);\r\n this.exportFlatImage()\r\n .then(blob => {\r\n let filename = this.currentBrowserImage.imgType + \"_\" + this.currentBrowserImage.imgIndex + \"_(0).\" + (this.$store.getters.downloadPNGImage ? \"png\" : \"jpg\");\r\n this.downloadBlob({ blob, fileName: filename });\r\n })\r\n .finally(() => {\r\n this.setCurrentImageLoading(false);\r\n });\r\n }\r\n },\r\n exportFlatImage() {\r\n if (!this.imgObject) return Promise.reject();\r\n return this.generateFlatImage()\r\n .then(() => exportBlob(this.saveCanvas, this.$store.getters.downloadPNGImage ? \"image/png\" : \"image/jpeg\"));\r\n }\r\n // #endregion\r\n }\r\n};","export default {\r\n data() {\r\n return {\r\n htmlContainer: [],\r\n tooltipXPos: 0,\r\n tooltipYPos: 0,\r\n tooltipIsVisible: false\r\n }\r\n },\r\n methods: {\r\n displayNewTooltip(content) {\r\n this.tooltipIsVisible = true;\r\n this.htmlContainer.push(content);\r\n },\r\n hideTooltip() {\r\n this.tooltipIsVisible = false;\r\n this.htmlContainer = [];\r\n },\r\n setTooltipXPos(elementWidth) {\r\n this.tooltipXPos = elementWidth + 20;\r\n },\r\n setTooltipMousePos(event) {\r\n this.tooltipXPos = event.pageX;\r\n this.tooltipYPos = event.pageY;\r\n }\r\n }\r\n}","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageMeasurementControls.vue?vue&type=style&index=0&id=4d5edecd&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageMeasurementControls.vue?vue&type=style&index=0&id=4d5edecd&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-col',{staticClass:\"od-os-ou-buttons\",attrs:{\"cols\":\"auto\"}},[_c('v-btn',{staticClass:\"modal-cta\",class:[{ active: _vm.isOD }, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.$emit('selectEye', 'OD')}}},[_vm._v(\"OD\")]),_c('v-btn',{staticClass:\"modal-cta\",class:[{ active: _vm.isOS }, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.$emit('selectEye', 'OS')}}},[_vm._v(\"OS\")]),_c('v-btn',{staticClass:\"modal-cta\",class:[{ active: _vm.isOUU }, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.$emit('selectEye', 'OU')}}},[_vm._v(\"OU/U\")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OdOsOuButtons.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OdOsOuButtons.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./OdOsOuButtons.vue?vue&type=template&id=1df7fa1c&\"\nimport script from \"./OdOsOuButtons.vue?vue&type=script&lang=js&\"\nexport * from \"./OdOsOuButtons.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol})\n","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusSidebarControls.vue?vue&type=style&index=0&id=be094304&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusSidebarControls.vue?vue&type=style&index=0&id=be094304&lang=scss&scoped=true&\"","var render, staticRenderFns\nimport script from \"./CanvasAnnotation.vue?vue&type=script&lang=js&\"\nexport * from \"./CanvasAnnotation.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CanvasAnnotation.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CanvasAnnotation.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-dialog',{attrs:{\"value\":_vm.showDialog,\"retain-focus\":false,\"persistent\":\"\",\"content-class\":\"download-dialog\"}},[_c('v-card',[_c('v-toolbar',{staticClass:\"escalon-dialog-header\",attrs:{\"height\":\"35\"}},[_c('img',{staticClass:\"modal-axis-logo mr-2\",attrs:{\"src\":require('../../assets/' + _vm.coloredLogo)}}),_c('span',[_vm._v(\"Edit Text\")]),_c('v-spacer'),_c('close-button',{on:{\"click\":_vm.closeModal}})],1),_c('v-card-text',{staticClass:\"escalon-dialog-content justify-center\"},[_c('div',{staticClass:\"text-left\"},[_c('label',{staticClass:\"modal-label\"},[_vm._v(\"Annotation Text\")])]),_c('v-textarea',{attrs:{\"solo\":\"\",\"auto-grow\":\"\",\"autocomplete\":\"off\",\"name\":\"textAnnotationToEdit.text\",\"data-vv-as\":\"Annotation Text\"},model:{value:(_vm.text),callback:function ($$v) {_vm.text=$$v},expression:\"text\"}}),_c('v-container',{attrs:{\"fluid\":\"\",\"grid-list-md\":\"\"}},[_c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"md6\":\"\"}},[_c('div',{staticClass:\"text-left\"},[_c('label',{staticClass:\"modal-label\"},[_vm._v(\"Text size\")])]),_c('v-combobox',{attrs:{\"value\":_vm.textSize,\"items\":_vm.textOptions,\"return-object\":false,\"item-value\":\"size\",\"solo\":\"\"},on:{\"input\":_vm.updateTextSize,\"change\":_vm.updateTextSize},scopedSlots:_vm._u([{key:\"item\",fn:function(props){return [_c('v-icon',{staticClass:\"mr-2\"},[_vm._v(_vm._s(props.item.icon))]),_vm._v(\"\\n \"+_vm._s(props.item.size)+\" pt\\n \")]}}])})],1),_c('v-flex',{attrs:{\"md6\":\"\"}},[_c('div',{staticClass:\"text-left\"},[_c('label',{staticClass:\"modal-label\"},[_vm._v(\"Background Fill\")])]),_c('v-combobox',{attrs:{\"value\":_vm.showBackgroundBox,\"items\":_vm.showBackgroundBoxOptions,\"solo\":\"\"},on:{\"input\":_vm.updateShowBackgroundBox,\"change\":_vm.updateShowBackgroundBox}})],1)],1)],1),_c('div',{staticClass:\"text-left\"},[_c('label',{staticClass:\"modal-label\"},[_vm._v(\"Font Color\")])]),_c('annotation-color-picker',{attrs:{\"value\":_vm.fontColor},on:{\"input\":function($event){return _vm.updateColor($event)}}}),_c('v-btn',{staticClass:\"modal-cta\",attrs:{\"text\":\"\"},on:{\"click\":_vm.updateAnnotationText}},[_vm._v(\"Submit\")])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditAnnotationTextDialog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EditAnnotationTextDialog.vue?vue&type=script&lang=js&\"","// Styles\nimport '../VAutocomplete/VAutocomplete.sass'\n\n// Extensions\nimport VSelect from '../VSelect/VSelect'\nimport VAutocomplete from '../VAutocomplete/VAutocomplete'\n\n// Utils\nimport { keyCodes } from '../../util/helpers'\n\n// Types\nimport { PropType } from 'vue'\n\n/* @vue/component */\nexport default VAutocomplete.extend({\n name: 'v-combobox',\n\n props: {\n delimiters: {\n type: Array as PropType,\n default: () => ([]),\n },\n returnObject: {\n type: Boolean,\n default: true,\n },\n },\n\n data: () => ({\n editingIndex: -1,\n }),\n\n computed: {\n computedCounterValue (): number {\n return this.multiple\n ? this.selectedItems.length\n : (this.internalSearch || '').toString().length\n },\n hasSlot (): boolean {\n return VSelect.options.computed.hasSlot.call(this) || this.multiple\n },\n isAnyValueAllowed (): boolean {\n return true\n },\n menuCanShow (): boolean {\n if (!this.isFocused) return false\n\n return this.hasDisplayedItems ||\n (!!this.$slots['no-data'] && !this.hideNoData)\n },\n },\n\n methods: {\n onInternalSearchChanged (val: any) {\n if (\n val &&\n this.multiple &&\n this.delimiters.length\n ) {\n const delimiter = this.delimiters.find(d => val.endsWith(d))\n if (delimiter != null) {\n this.internalSearch = val.slice(0, val.length - delimiter.length)\n this.updateTags()\n }\n }\n\n this.updateMenuDimensions()\n },\n genInput () {\n const input = VAutocomplete.options.methods.genInput.call(this)\n\n delete input.data!.attrs!.name\n input.data!.on!.paste = this.onPaste\n\n return input\n },\n genChipSelection (item: object, index: number) {\n const chip = VSelect.options.methods.genChipSelection.call(this, item, index)\n\n // Allow user to update an existing value\n if (this.multiple) {\n chip.componentOptions!.listeners! = {\n ...chip.componentOptions!.listeners!,\n dblclick: () => {\n this.editingIndex = index\n this.internalSearch = this.getText(item)\n this.selectedIndex = -1\n },\n }\n }\n\n return chip\n },\n onChipInput (item: object) {\n VSelect.options.methods.onChipInput.call(this, item)\n\n this.editingIndex = -1\n },\n // Requires a manual definition\n // to overwrite removal in v-autocomplete\n onEnterDown (e: Event) {\n e.preventDefault()\n // If has menu index, let v-select-list handle\n if (this.getMenuIndex() > -1) return\n\n this.$nextTick(this.updateSelf)\n },\n onFilteredItemsChanged (val: never[], oldVal: never[]) {\n if (!this.autoSelectFirst) return\n\n VAutocomplete.options.methods.onFilteredItemsChanged.call(this, val, oldVal)\n },\n onKeyDown (e: KeyboardEvent) {\n const keyCode = e.keyCode\n\n VSelect.options.methods.onKeyDown.call(this, e)\n\n // If user is at selection index of 0\n // create a new tag\n if (this.multiple &&\n keyCode === keyCodes.left &&\n this.$refs.input.selectionStart === 0\n ) {\n this.updateSelf()\n } else if (keyCode === keyCodes.enter) {\n this.onEnterDown(e)\n }\n\n // The ordering is important here\n // allows new value to be updated\n // and then moves the index to the\n // proper location\n this.changeSelectedIndex(keyCode)\n },\n onTabDown (e: KeyboardEvent) {\n // When adding tags, if searching and\n // there is not a filtered options,\n // add the value to the tags list\n if (this.multiple &&\n this.internalSearch &&\n this.getMenuIndex() === -1\n ) {\n e.preventDefault()\n e.stopPropagation()\n\n return this.updateTags()\n }\n\n VAutocomplete.options.methods.onTabDown.call(this, e)\n },\n selectItem (item: object) {\n // Currently only supports items:\n if (this.editingIndex > -1) {\n this.updateEditing()\n } else {\n VAutocomplete.options.methods.selectItem.call(this, item)\n }\n },\n setSelectedItems () {\n if (this.internalValue == null ||\n this.internalValue === ''\n ) {\n this.selectedItems = []\n } else {\n this.selectedItems = this.multiple ? this.internalValue : [this.internalValue]\n }\n },\n setValue (value?: any) {\n VSelect.options.methods.setValue.call(this, value != null ? value : this.internalSearch)\n },\n updateEditing () {\n const value = this.internalValue.slice()\n value[this.editingIndex] = this.internalSearch\n\n this.setValue(value)\n\n this.editingIndex = -1\n },\n updateCombobox () {\n const isUsingSlot = Boolean(this.$scopedSlots.selection) || this.hasChips\n\n // If search is not dirty and is\n // using slot, do nothing\n if (isUsingSlot && !this.searchIsDirty) return\n\n // The internal search is not matching\n // the internal value, update the input\n if (this.internalSearch !== this.getText(this.internalValue)) this.setValue()\n\n // Reset search if using slot\n // to avoid a double input\n if (isUsingSlot) this.internalSearch = undefined\n },\n updateSelf () {\n this.multiple ? this.updateTags() : this.updateCombobox()\n },\n updateTags () {\n const menuIndex = this.getMenuIndex()\n\n // If the user is not searching\n // and no menu item is selected\n // do nothing\n if (menuIndex < 0 &&\n !this.searchIsDirty\n ) return\n\n if (this.editingIndex > -1) {\n return this.updateEditing()\n }\n\n const index = this.selectedItems.indexOf(this.internalSearch)\n // If it already exists, do nothing\n // this might need to change to bring\n // the duplicated item to the last entered\n if (index > -1) {\n const internalValue = this.internalValue.slice()\n internalValue.splice(index, 1)\n\n this.setValue(internalValue)\n }\n\n // If menu index is greater than 1\n // the selection is handled elsewhere\n // TODO: find out where\n if (menuIndex > -1) return (this.internalSearch = null)\n\n this.selectItem(this.internalSearch)\n this.internalSearch = null\n },\n onPaste (event: ClipboardEvent) {\n if (!this.multiple || this.searchIsDirty) return\n\n const pastedItemText = event.clipboardData!.getData('text/vnd.vuetify.autocomplete.item+plain')\n if (pastedItemText && this.findExistingIndex(pastedItemText as any) === -1) {\n event.preventDefault()\n VSelect.options.methods.selectItem.call(this, pastedItemText as any)\n }\n },\n },\n})\n","// Styles\nimport './VTextarea.sass'\n\n// Extensions\nimport VTextField from '../VTextField/VTextField'\n\n// Utilities\nimport mixins from '../../util/mixins'\n\n// Types\nimport Vue from 'vue'\n\ninterface options extends Vue {\n $refs: {\n input: HTMLTextAreaElement\n }\n}\n\nconst baseMixins = mixins\n>(\n VTextField\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-textarea',\n\n props: {\n autoGrow: Boolean,\n noResize: Boolean,\n rowHeight: {\n type: [Number, String],\n default: 24,\n validator: (v: any) => !isNaN(parseFloat(v)),\n },\n rows: {\n type: [Number, String],\n default: 5,\n validator: (v: any) => !isNaN(parseInt(v, 10)),\n },\n },\n\n computed: {\n classes (): object {\n return {\n 'v-textarea': true,\n 'v-textarea--auto-grow': this.autoGrow,\n 'v-textarea--no-resize': this.noResizeHandle,\n ...VTextField.options.computed.classes.call(this),\n }\n },\n noResizeHandle (): boolean {\n return this.noResize || this.autoGrow\n },\n },\n\n watch: {\n lazyValue () {\n this.autoGrow && this.$nextTick(this.calculateInputHeight)\n },\n rowHeight () {\n this.autoGrow && this.$nextTick(this.calculateInputHeight)\n },\n },\n\n mounted () {\n setTimeout(() => {\n this.autoGrow && this.calculateInputHeight()\n }, 0)\n },\n\n methods: {\n calculateInputHeight () {\n const input = this.$refs.input\n if (!input) return\n\n input.style.height = '0'\n const height = input.scrollHeight\n const minHeight = parseInt(this.rows, 10) * parseFloat(this.rowHeight)\n // This has to be done ASAP, waiting for Vue\n // to update the DOM causes ugly layout jumping\n input.style.height = Math.max(minHeight, height) + 'px'\n },\n genInput () {\n const input = VTextField.options.methods.genInput.call(this)\n\n input.tag = 'textarea'\n delete input.data!.attrs!.type\n input.data!.attrs!.rows = this.rows\n\n return input\n },\n onInput (e: Event) {\n VTextField.options.methods.onInput.call(this, e)\n this.autoGrow && this.calculateInputHeight()\n },\n onKeyDown (e: KeyboardEvent) {\n // Prevents closing of a\n // dialog when pressing\n // enter\n if (this.isFocused && e.keyCode === 13) {\n e.stopPropagation()\n }\n\n this.$emit('keydown', e)\n },\n },\n})\n","import { render, staticRenderFns } from \"./EditAnnotationTextDialog.vue?vue&type=template&id=70396fc0&\"\nimport script from \"./EditAnnotationTextDialog.vue?vue&type=script&lang=js&\"\nexport * from \"./EditAnnotationTextDialog.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VCardText } from 'vuetify/lib/components/VCard';\nimport { VCombobox } from 'vuetify/lib/components/VCombobox';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VTextarea } from 'vuetify/lib/components/VTextarea';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VBtn,VCard,VCardText,VCombobox,VContainer,VDialog,VFlex,VIcon,VLayout,VSpacer,VTextarea,VToolbar})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.useWebgl && !_vm.isDeepDeeAnnotation)?_c('canvas-webgl',{ref:\"canvasWebgl\",attrs:{\"img\":_vm.img,\"colorSettings\":_vm.colorSettings,\"octColorSettings\":_vm.octColorSettings,\"thicknessMapColorSettings\":_vm.thicknessMapColorSettings,\"canvasSize\":_vm.canvasSize,\"imgSize\":_vm.imgSize,\"transform\":_vm.transform,\"isFlipped\":_vm.isFlipped,\"isFlipped90\":_vm.isFlipped90,\"isFlipped270\":_vm.isFlipped270,\"flippedX\":_vm.flippedX,\"autodraw\":_vm.autodraw,\"lastImgSize\":_vm.lastImgSize,\"usePixelCanvas\":_vm.usePixelCanvas,\"bounds\":_vm.bounds,\"componentName\":_vm.componentName,\"isSideBySide\":_vm.isSideBySide}}):_c('canvas-image',{ref:\"canvasImage\",attrs:{\"img\":_vm.processedImg,\"usePixelCanvas\":_vm.usePixelCanvas,\"canvasSize\":_vm.canvasSize,\"imgSize\":_vm.imgSize,\"transform\":_vm.transform,\"isFlipped\":_vm.isFlipped,\"isFlipped90\":_vm.isFlipped90,\"isFlipped270\":_vm.isFlipped270,\"flippedX\":_vm.flippedX,\"autodraw\":_vm.autodraw,\"bounds\":_vm.bounds,\"isDeepDeeAnnotation\":_vm.isDeepDeeAnnotation}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","// see: https://webglfundamentals.org/webgl/lessons/webgl-3d-orthographic.html\r\n/*\r\n * Copyright 2014, Gregg Tavares.\r\n * All rights reserved.\r\n *\r\n * Redistribution and use in source and binary forms, with or without\r\n * modification, are permitted provided that the following conditions are\r\n * met:\r\n *\r\n * * Redistributions of source code must retain the above copyright\r\n * notice, this list of conditions and the following disclaimer.\r\n * * Redistributions in binary form must reproduce the above\r\n * copyright notice, this list of conditions and the following disclaimer\r\n * in the documentation and/or other materials provided with the\r\n * distribution.\r\n * * Neither the name of Gregg Tavares. nor the names of his\r\n * contributors may be used to endorse or promote products derived from\r\n * this software without specific prior written permission.\r\n *\r\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\r\n * \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\r\n * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\r\n * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\r\n * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\r\n * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\r\n * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\r\n * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\r\n * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\r\n * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\r\n * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\r\n */\r\nexport const m4 = {\r\n\r\n /**\r\n * Mutliply by translation matrix.\r\n * @param {Matrix4} m matrix to multiply\r\n * @param {number} tx x translation.\r\n * @param {number} ty y translation.\r\n * @param {number} tz z translation.\r\n * @param {Matrix4} [dst] optional matrix to store result\r\n * @return {Matrix4} dst or a new matrix if none provided\r\n * @memberOf module:webgl-3d-math\r\n */\r\n translate(m, tx, ty, tz, dst) {\r\n dst = dst || new Float32Array(16);\r\n\r\n var m00 = m[0];\r\n var m01 = m[1];\r\n var m02 = m[2];\r\n var m03 = m[3];\r\n var m10 = m[1 * 4 + 0];\r\n var m11 = m[1 * 4 + 1];\r\n var m12 = m[1 * 4 + 2];\r\n var m13 = m[1 * 4 + 3];\r\n var m20 = m[2 * 4 + 0];\r\n var m21 = m[2 * 4 + 1];\r\n var m22 = m[2 * 4 + 2];\r\n var m23 = m[2 * 4 + 3];\r\n var m30 = m[3 * 4 + 0];\r\n var m31 = m[3 * 4 + 1];\r\n var m32 = m[3 * 4 + 2];\r\n var m33 = m[3 * 4 + 3];\r\n\r\n if (m !== dst) {\r\n dst[ 0] = m00;\r\n dst[ 1] = m01;\r\n dst[ 2] = m02;\r\n dst[ 3] = m03;\r\n dst[ 4] = m10;\r\n dst[ 5] = m11;\r\n dst[ 6] = m12;\r\n dst[ 7] = m13;\r\n dst[ 8] = m20;\r\n dst[ 9] = m21;\r\n dst[10] = m22;\r\n dst[11] = m23;\r\n }\r\n\r\n dst[12] = m00 * tx + m10 * ty + m20 * tz + m30;\r\n dst[13] = m01 * tx + m11 * ty + m21 * tz + m31;\r\n dst[14] = m02 * tx + m12 * ty + m22 * tz + m32;\r\n dst[15] = m03 * tx + m13 * ty + m23 * tz + m33;\r\n\r\n return dst;\r\n },\r\n \r\n /**\r\n * Multiply by a scaling matrix\r\n * @param {Matrix4} m matrix to multiply\r\n * @param {number} sx x scale.\r\n * @param {number} sy y scale.\r\n * @param {number} sz z scale.\r\n * @param {Matrix4} [dst] optional matrix to store result\r\n * @return {Matrix4} dst or a new matrix if none provided\r\n * @memberOf module:webgl-3d-math\r\n */\r\n scale(m, sx, sy, sz, dst) {\r\n // This is the optimized verison of\r\n // return multiply(m, scaling(sx, sy, sz), dst);\r\n dst = dst || new Float32Array(16);\r\n\r\n dst[ 0] = sx * m[0 * 4 + 0];\r\n dst[ 1] = sx * m[0 * 4 + 1];\r\n dst[ 2] = sx * m[0 * 4 + 2];\r\n dst[ 3] = sx * m[0 * 4 + 3];\r\n dst[ 4] = sy * m[1 * 4 + 0];\r\n dst[ 5] = sy * m[1 * 4 + 1];\r\n dst[ 6] = sy * m[1 * 4 + 2];\r\n dst[ 7] = sy * m[1 * 4 + 3];\r\n dst[ 8] = sz * m[2 * 4 + 0];\r\n dst[ 9] = sz * m[2 * 4 + 1];\r\n dst[10] = sz * m[2 * 4 + 2];\r\n dst[11] = sz * m[2 * 4 + 3];\r\n\r\n if (m !== dst) {\r\n dst[12] = m[12];\r\n dst[13] = m[13];\r\n dst[14] = m[14];\r\n dst[15] = m[15];\r\n }\r\n\r\n return dst;\r\n },\r\n\r\n /**\r\n * Computes a 4-by-4 orthographic projection matrix given the coordinates of the\r\n * planes defining the axis-aligned, box-shaped viewing volume. The matrix\r\n * generated sends that box to the unit box. Note that although left and right\r\n * are x coordinates and bottom and top are y coordinates, near and far\r\n * are not z coordinates, but rather they are distances along the negative\r\n * z-axis. We assume a unit box extending from -1 to 1 in the x and y\r\n * dimensions and from -1 to 1 in the z dimension.\r\n * @param {number} left The x coordinate of the left plane of the box.\r\n * @param {number} right The x coordinate of the right plane of the box.\r\n * @param {number} bottom The y coordinate of the bottom plane of the box.\r\n * @param {number} top The y coordinate of the right plane of the box.\r\n * @param {number} near The negative z coordinate of the near plane of the box.\r\n * @param {number} far The negative z coordinate of the far plane of the box.\r\n * @param {Matrix4} [dst] optional matrix to store result\r\n * @return {Matrix4} dst or a new matrix if none provided\r\n * @memberOf module:webgl-3d-math\r\n */\r\n orthographic(left, right, bottom, top, near, far, dst) {\r\n dst = dst || new Float32Array(16);\r\n\r\n dst[ 0] = 2 / (right - left);\r\n dst[ 1] = 0;\r\n dst[ 2] = 0;\r\n dst[ 3] = 0;\r\n dst[ 4] = 0;\r\n dst[ 5] = 2 / (top - bottom);\r\n dst[ 6] = 0;\r\n dst[ 7] = 0;\r\n dst[ 8] = 0;\r\n dst[ 9] = 0;\r\n dst[10] = 2 / (near - far);\r\n dst[11] = 0;\r\n dst[12] = (left + right) / (left - right);\r\n dst[13] = (bottom + top) / (bottom - top);\r\n dst[14] = (near + far) / (near - far);\r\n dst[15] = 1;\r\n\r\n return dst;\r\n },\r\n\r\n multiply(a, b, dst) {\r\n var b00 = b[0 * 4 + 0];\r\n var b01 = b[0 * 4 + 1];\r\n var b02 = b[0 * 4 + 2];\r\n var b03 = b[0 * 4 + 3];\r\n var b10 = b[1 * 4 + 0];\r\n var b11 = b[1 * 4 + 1];\r\n var b12 = b[1 * 4 + 2];\r\n var b13 = b[1 * 4 + 3];\r\n var b20 = b[2 * 4 + 0];\r\n var b21 = b[2 * 4 + 1];\r\n var b22 = b[2 * 4 + 2];\r\n var b23 = b[2 * 4 + 3];\r\n var b30 = b[3 * 4 + 0];\r\n var b31 = b[3 * 4 + 1];\r\n var b32 = b[3 * 4 + 2];\r\n var b33 = b[3 * 4 + 3];\r\n var a00 = a[0 * 4 + 0];\r\n var a01 = a[0 * 4 + 1];\r\n var a02 = a[0 * 4 + 2];\r\n var a03 = a[0 * 4 + 3];\r\n var a10 = a[1 * 4 + 0];\r\n var a11 = a[1 * 4 + 1];\r\n var a12 = a[1 * 4 + 2];\r\n var a13 = a[1 * 4 + 3];\r\n var a20 = a[2 * 4 + 0];\r\n var a21 = a[2 * 4 + 1];\r\n var a22 = a[2 * 4 + 2];\r\n var a23 = a[2 * 4 + 3];\r\n var a30 = a[3 * 4 + 0];\r\n var a31 = a[3 * 4 + 1];\r\n var a32 = a[3 * 4 + 2];\r\n var a33 = a[3 * 4 + 3];\r\n\r\n dst[0] = parseFloat(b00 * a00 + b01 * a10 + b02 * a20 + b03 * a30);\r\n dst[1] = parseFloat(b00 * a01 + b01 * a11 + b02 * a21 + b03 * a31);\r\n dst[2] = parseFloat(b00 * a02 + b01 * a12 + b02 * a22 + b03 * a32);\r\n dst[3] = parseFloat(b00 * a03 + b01 * a13 + b02 * a23 + b03 * a33);\r\n dst[4] = parseFloat(b10 * a00 + b11 * a10 + b12 * a20 + b13 * a30);\r\n dst[5] = parseFloat(b10 * a01 + b11 * a11 + b12 * a21 + b13 * a31);\r\n dst[6] = parseFloat(b10 * a02 + b11 * a12 + b12 * a22 + b13 * a32);\r\n dst[7] = parseFloat(b10 * a03 + b11 * a13 + b12 * a23 + b13 * a33);\r\n dst[8] = parseFloat(b20 * a00 + b21 * a10 + b22 * a20 + b23 * a30);\r\n dst[9] = parseFloat(b20 * a01 + b21 * a11 + b22 * a21 + b23 * a31);\r\n dst[10] = parseFloat(b20 * a02 + b21 * a12 + b22 * a22 + b23 * a32);\r\n dst[11] = parseFloat(b20 * a03 + b21 * a13 + b22 * a23 + b23 * a33);\r\n dst[12] = parseFloat(b30 * a00 + b31 * a10 + b32 * a20 + b33 * a30);\r\n dst[13] = parseFloat(b30 * a01 + b31 * a11 + b32 * a21 + b33 * a31);\r\n dst[14] = parseFloat(b30 * a02 + b31 * a12 + b32 * a22 + b33 * a32);\r\n dst[15] = parseFloat(b30 * a03 + b31 * a13 + b32 * a23 + b33 * a33);\r\n\r\n return dst;\r\n },\r\n\r\n generateZRotationMatrix(angle) {\r\n var a = angle * Math.PI / 180;\r\n var c = parseFloat(Math.cos(a));\r\n var s = parseFloat(Math.sin(a));\r\n\r\n /* m = [\r\n c, s, 0, 0,\r\n -s, c, 0, 0,\r\n 0, 0, 1, 0,\r\n 0, 0, 0, 1\r\n ]; */\r\n var m = new Float32Array(16);\r\n m[0] = c;\r\n m[1] = s;\r\n m[4] = -s;\r\n m[5] = c;\r\n m[10] = 1;\r\n m[15] = 1;\r\n\r\n return m;\r\n },\r\n \r\n zRotation(m, angle, dst) {\r\n dst = dst || new Float32Array(16);\r\n\r\n var rm = this.generateZRotationMatrix(angle);\r\n dst = this.multiply(m, rm, dst);\r\n return dst;\r\n }\r\n}","export default class WebglProgram {\r\n constructor(vertexShaderText, fragmentShaderText) {\r\n this.vertexShaderText = vertexShaderText;\r\n this.fragmentShaderText = fragmentShaderText;\r\n\r\n this.program = null;\r\n // main texture and transformation locations\r\n this.positionLocation = null;\r\n this.texcoordLocation = null;\r\n this.matrixLocation = null;\r\n this.textureLocation = null;\r\n }\r\n\r\n createProgram(gl){\r\n this.program = gl.createProgram();\r\n this.createShaders(gl);\r\n this.prepareLocations(gl);\r\n }\r\n\r\n createShaders(gl) {\r\n const vertexShader = this.createShader(gl, this.vertexShaderText);\r\n gl.attachShader(this.program, vertexShader);\r\n const fragmentShader = this.createShader(gl, this.fragmentShaderText, false);\r\n gl.attachShader(this.program, fragmentShader);\r\n gl.linkProgram(this.program);\r\n if (!gl.getProgramParameter(this.program, gl.LINK_STATUS))\r\n throw \"failed to link program: \" + gl.getProgramInfoLog(this.program);\r\n }\r\n \r\n createShader(gl, text, isVertex = true){\r\n const shaderType = isVertex ? gl.VERTEX_SHADER : gl.FRAGMENT_SHADER;\r\n const shader = gl.createShader(shaderType);\r\n gl.shaderSource(shader, text);\r\n gl.compileShader(shader);\r\n if (!gl.getShaderParameter(shader, gl.COMPILE_STATUS))\r\n throw \"failed to compile shader: \" + gl.getShaderInfoLog(shader);\r\n return shader;\r\n }\r\n\r\n prepareLocations(gl) {\r\n // prepate program attribute locations\r\n this.positionLocation = gl.getAttribLocation(this.program, \"a_position\");\r\n this.texcoordLocation = gl.getAttribLocation(this.program, \"a_texcoord\");\r\n this.matrixLocation = gl.getUniformLocation(this.program, \"u_matrix\");\r\n this.textureLocation = gl.getUniformLocation(this.program, \"u_texture\");\r\n }\r\n \r\n setSamplerLocation(gl, imageTexture) {\r\n gl.uniform1i(this.textureLocation, 0);\r\n gl.activeTexture(gl.TEXTURE0);\r\n gl.bindTexture(gl.TEXTURE_2D, imageTexture);\r\n }\r\n\r\n bindTextureBuffers(gl, positionBuffer, texcoordBuffer){\r\n // Setup the attributes to pull data from our buffers\r\n gl.bindBuffer(gl.ARRAY_BUFFER, positionBuffer);\r\n gl.enableVertexAttribArray(this.positionLocation);\r\n gl.vertexAttribPointer(this.positionLocation, 2, gl.FLOAT, false, 0, 0);\r\n gl.bindBuffer(gl.ARRAY_BUFFER, texcoordBuffer);\r\n gl.enableVertexAttribArray(this.texcoordLocation);\r\n gl.vertexAttribPointer(this.texcoordLocation, 2, gl.FLOAT, false, 0, 0);\r\n }\r\n\r\n setTransformationMatrix(gl, matrix) {\r\n gl.uniformMatrix4fv(this.matrixLocation, false, matrix);\r\n }\r\n\r\n clearReferences(gl, positionBuffer, coordBuffer, texture) {\r\n gl.bindBuffer(gl.ARRAY_BUFFER, positionBuffer);\r\n gl.bufferData(gl.ARRAY_BUFFER, 1, gl.STATIC_DRAW);\r\n gl.deleteBuffer(positionBuffer);\r\n\r\n gl.bindBuffer(gl.ARRAY_BUFFER, coordBuffer);\r\n gl.bufferData(gl.ARRAY_BUFFER, 1, gl.STATIC_DRAW);\r\n gl.deleteBuffer(coordBuffer);\r\n gl.bindBuffer(gl.ARRAY_BUFFER, null);\r\n\r\n gl.bindTexture(gl.TEXTURE_2D, null);\r\n gl.deleteTexture(texture);\r\n\r\n gl.deleteProgram(this.program);\r\n }\r\n}","import WebglProgram from \"./webglProgram\";\r\n\r\nexport default class ColorWebglProgram extends WebglProgram {\r\n constructor(vertexShaderText, fragmentShaderText){\r\n super(vertexShaderText, fragmentShaderText);\r\n\r\n // color correction locations\r\n this.brightnessLocation = null;\r\n this.contrastLocation = null;\r\n this.gammaLocation = null;\r\n }\r\n\r\n prepareLocations(gl) {\r\n super.prepareLocations(gl);\r\n this.brightnessLocation = gl.getUniformLocation(this.program, \"u_brightness\");\r\n this.contrastLocation = gl.getUniformLocation(this.program, \"u_contrast\");\r\n this.gammaLocation = gl.getUniformLocation(this.program, \"u_gamma\");\r\n }\r\n\r\n setColorSettings(gl, colorSettings){\r\n gl.uniform1f(this.brightnessLocation, colorSettings.brightness);\r\n gl.uniform1f(this.contrastLocation, colorSettings.contrast);\r\n gl.uniform1f(this.gammaLocation, colorSettings.gamma);\r\n }\r\n}","import ColorWebglProgram from \"./colorWebglProgram\";\r\nexport default class OptosWebglProgram extends ColorWebglProgram {\r\n constructor(vertexShaderText, fragmentShaderText){\r\n super(vertexShaderText, fragmentShaderText);\r\n this.greenBrightnessLocation = null;\r\n this.greenContrastLocation = null;\r\n }\r\n\r\n prepareLocations(gl){\r\n super.prepareLocations(gl);\r\n this.greenBrightnessLocation = gl.getUniformLocation(this.program, \"u_green_brightness\");\r\n this.greenContrastLocation = gl.getUniformLocation(this.program, \"u_green_contrast\");\r\n }\r\n\r\n setColorSettings(gl, colorSettings) {\r\n super.setColorSettings(gl, colorSettings);\r\n gl.uniform1f(this.greenBrightnessLocation, colorSettings.greenBrightness);\r\n gl.uniform1f(this.greenContrastLocation, colorSettings.greenContrast);\r\n }\r\n}","import { PALETTE_LENGTH } from \"../canvasUtils\";\r\n\r\nexport function generatePaletteTexture(gl, palette){\r\n let texture = gl.createTexture()\r\n gl.bindTexture(gl.TEXTURE_2D, texture);\r\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST)\r\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST)\r\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE)\r\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE)\r\n gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGB, PALETTE_LENGTH, 1, 0, gl.RGB, gl.UNSIGNED_BYTE, palette);\r\n return texture;\r\n}","var render, staticRenderFns\nimport script from \"./CanvasWebgl.vue?vue&type=script&lang=js&\"\nexport * from \"./CanvasWebgl.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { generatePaletteTexture } from \"./paletteTexture\";\r\nimport WebglProgram from \"./webglProgram\";\r\n\r\nexport default class PaletteWebglProgram extends WebglProgram {\r\n constructor(vert, frag){\r\n super(vert, frag);\r\n\r\n this.paletteTexture = null;\r\n this.palette = null;\r\n this.paletteLocation = null;\r\n }\r\n\r\n prepareLocations(gl){\r\n super.prepareLocations(gl);\r\n this.paletteLocation = gl.getUniformLocation(this.program, \"u_palette\");\r\n }\r\n\r\n setSamplerLocation(gl, imageTexture) {\r\n super.setSamplerLocation(gl, imageTexture);\r\n gl.uniform1i(this.paletteLocation, 1);\r\n gl.activeTexture(gl.TEXTURE1);\r\n gl.bindTexture(gl.TEXTURE_2D, this.paletteTexture);\r\n }\r\n\r\n setPalette(gl, palette){\r\n if (palette !== this.palette) {\r\n this.palette = palette;\r\n this.paletteTexture = generatePaletteTexture(gl, palette);\r\n }\r\n }\r\n\r\n setOCTColorSettings(gl, octColorSettings){\r\n if (octColorSettings.colorPalette) this.setPalette(gl, octColorSettings.colorPalette);\r\n }\r\n\r\n setThicknessMapColorSettings(gl, thicknessMapColorSettings){\r\n this.setPalette(gl, thicknessMapColorSettings.colorPalette);\r\n }\r\n}","export default \"#define GLSLIFY 1\\nattribute vec4 a_position;\\nattribute vec2 a_texcoord;\\nuniform mat4 u_matrix;\\nvarying vec2 v_texcoord;\\n\\nvoid main() {\\n gl_Position = u_matrix * a_position;\\n v_texcoord = a_texcoord;\\n}\"","export default \"precision highp float;\\n#define GLSLIFY 1\\nvarying vec2 v_texcoord;\\nuniform sampler2D u_texture;\\n\\nvoid main() {\\n gl_FragColor = texture2D(u_texture, v_texcoord);\\n}\"","export default \"precision highp float;\\n#define GLSLIFY 1\\nvarying vec2 v_texcoord;\\nuniform sampler2D u_texture;\\nuniform float u_brightness;\\nuniform float u_contrast;\\nuniform float u_gamma;\\n\\nfloat applyColorRules(float color, float gamma, float contrast, float brightness) {\\n return (pow(color, 1.0 / gamma) - 0.5) * contrast + brightness + 0.5; \\n}\\n\\nvoid main() {\\n vec4 color = texture2D(u_texture, v_texcoord);\\n vec4 newColor = vec4(0.0, 0.0, 0.0, 1.0);\\n newColor.r = applyColorRules(color.r, u_gamma, u_contrast, u_brightness);\\n newColor.g = applyColorRules(color.g, u_gamma, u_contrast, u_brightness);\\n newColor.b = applyColorRules(color.b, u_gamma, u_contrast, u_brightness);\\n gl_FragColor = newColor;\\n}\"","export default \"precision highp float;\\n#define GLSLIFY 1\\nvarying vec2 v_texcoord;\\nuniform sampler2D u_texture;\\nuniform float u_brightness;\\nuniform float u_contrast;\\nuniform float u_gamma;\\n\\nfloat applyColorRules(float color, float gamma, float contrast, float brightness) {\\n return (pow(color, 1.0 / gamma) - 0.5) * contrast + brightness + 0.5; \\n}\\n\\nvoid main() {\\n vec4 color = texture2D(u_texture, v_texcoord);\\n vec4 newColor = vec4(0.0, 0.0, 0.0, 1.0);\\n float gray = color.r * 0.2126 + color.g * 0.7152 + color.b * 0.0722;\\n gray = applyColorRules(gray, u_gamma, u_contrast, u_brightness);\\n newColor.r = newColor.g = newColor.b = gray;\\n gl_FragColor = newColor;\\n}\"","export default \"precision highp float;\\n#define GLSLIFY 1\\nvarying vec2 v_texcoord;\\nuniform sampler2D u_texture;\\nuniform float u_brightness;\\nuniform float u_contrast;\\nuniform float u_gamma;\\n\\nfloat applyColorRules(float color, float gamma, float contrast, float brightness) {\\n return (pow(color, 1.0 / gamma) - 0.5) * contrast + brightness + 0.5; \\n}\\n\\nvoid main() {\\n vec4 color = texture2D(u_texture, v_texcoord);\\n vec4 newColor = vec4(0.0, 0.0, 0.0, 1.0);\\n float gray = applyColorRules(color.r, u_gamma, u_contrast, u_brightness);\\n newColor.r = newColor.g = newColor.b = gray;\\n gl_FragColor = newColor;\\n}\"","export default \"precision highp float;\\n#define GLSLIFY 1\\nvarying vec2 v_texcoord;\\nuniform sampler2D u_texture;\\nuniform float u_brightness;\\nuniform float u_contrast;\\nuniform float u_gamma;\\n\\nfloat applyColorRules(float color, float gamma, float contrast, float brightness) {\\n return (pow(color, 1.0 / gamma) - 0.5) * contrast + brightness + 0.5; \\n}\\n\\nvoid main() {\\n vec4 color = texture2D(u_texture, v_texcoord);\\n vec4 newColor = vec4(0.0, 0.0, 0.0, 1.0);\\n float gray = applyColorRules(color.g, u_gamma, u_contrast, u_brightness);\\n newColor.r = newColor.g = newColor.b = gray;\\n gl_FragColor = newColor;\\n}\"","export default \"precision highp float;\\n#define GLSLIFY 1\\nvarying vec2 v_texcoord;\\nuniform sampler2D u_texture;\\nuniform float u_brightness;\\nuniform float u_contrast;\\nuniform float u_gamma;\\n\\nfloat applyColorRules(float color, float gamma, float contrast, float brightness) {\\n return (pow(color, 1.0 / gamma) - 0.5) * contrast + brightness + 0.5; \\n}\\n\\nvoid main() {\\n vec4 color = texture2D(u_texture, v_texcoord);\\n vec4 newColor = vec4(0.0, 0.0, 0.0, 1.0);\\n float gray = applyColorRules(color.b, u_gamma, u_contrast, u_brightness);\\n newColor.r = newColor.g = newColor.b = gray;\\n gl_FragColor = newColor;\\n}\"","export default \"precision highp float;\\n#define GLSLIFY 1\\nvarying vec2 v_texcoord;\\nuniform sampler2D u_texture;\\nuniform float u_brightness;\\nuniform float u_contrast;\\nuniform float u_gamma;\\nuniform float u_green_brightness;\\nuniform float u_green_contrast;\\n\\nfloat greenColorRules(float color, float gamma, float contrast, float green_contrast, \\n float brightness, float green_brightness) {\\n return (pow(color, 1.0 / gamma) - 0.5) \\n * contrast * green_contrast\\n + brightness + green_brightness + 0.5; \\n}\\n\\nfloat applyColorRules(float color, float gamma, float contrast, float brightness) {\\n return (pow(color, 1.0 / gamma) - 0.5) * contrast + brightness + 0.5; \\n}\\n\\nvoid main() {\\n vec4 color = texture2D(u_texture, v_texcoord);\\n vec4 newColor = vec4(0.0, 0.0, 0.0, 1.0);\\n newColor.r = applyColorRules(color.r, u_gamma, u_contrast, u_brightness);\\n newColor.g = greenColorRules(color.g, u_gamma, u_contrast, u_green_contrast, u_brightness, u_green_brightness);\\n newColor.b = applyColorRules(color.b, u_gamma, u_contrast, u_brightness);\\n gl_FragColor = newColor;\\n}\"","export default \"precision highp float;\\n#define GLSLIFY 1\\nvarying vec2 v_texcoord;\\nuniform sampler2D u_texture;\\nuniform float u_brightness;\\nuniform float u_contrast;\\nuniform float u_gamma;\\nuniform float u_green_brightness;\\nuniform float u_green_contrast;\\n\\nfloat greenColorRules(float color, float gamma, float contrast, float green_contrast, \\n float brightness, float green_brightness) {\\n return (pow(color, 1.0 / gamma) - 0.5) \\n * contrast * green_contrast\\n + brightness + green_brightness + 0.5; \\n}\\n\\nvoid main() {\\n vec4 color = texture2D(u_texture, v_texcoord);\\n vec4 newColor = vec4(0.0, 0.0, 0.0, 1.0);\\n float gray = greenColorRules(color.g, u_gamma, u_contrast, u_green_contrast, u_brightness, u_green_brightness);\\n newColor.r = newColor.g = newColor.b = gray;\\n gl_FragColor = newColor;\\n}\"","export default \"precision highp float;\\n#define GLSLIFY 1\\nvarying vec2 v_texcoord;\\nuniform sampler2D u_texture;\\n\\nvoid main() {\\n vec3 color = vec3(1.0) - texture2D(u_texture, v_texcoord).rgb;\\n gl_FragColor = vec4(color, 1.0);\\n}\"","export default \"precision highp float;\\n#define GLSLIFY 1\\nvarying vec2 v_texcoord;\\nuniform sampler2D u_texture;\\nuniform sampler2D u_palette;\\n\\nvoid main() {\\n vec4 color = texture2D(u_texture, v_texcoord);\\n // the images are grayscale, so the color selection is arbitrary\\n vec4 newColor = texture2D(u_palette, vec2(color.r, 0.0));\\n // color palettes are all in ABGR, so flip R and B\\n gl_FragColor = vec4(newColor.b, newColor.g, newColor.r, newColor.a);\\n}\"","export default \"precision highp float;\\n#define GLSLIFY 1\\nvarying vec2 v_texcoord;\\nuniform sampler2D u_texture;\\nuniform sampler2D u_palette;\\nuniform float u_slope;\\nuniform float u_offset;\\n\\nvoid main() {\\n vec4 color = texture2D(u_texture, v_texcoord);\\n // adjust the source gray based on the linear image adjustment\\n // like in palette.frag, the color selection is arbitrary\\n float adjusted = (color.r + u_offset) * u_slope;\\n // grab the full color from the palette\\n vec4 newColor = texture2D(u_palette, vec2(adjusted, 0.0));\\n // color palettes are all in ABGR, so flip R and B\\n gl_FragColor = vec4(newColor.b, newColor.g, newColor.r, newColor.a);\\n}\"","import PaletteWebglProgram from \"./paletteWebglProgram\";\r\n\r\nexport default class LinearPaletteWebglProgram extends PaletteWebglProgram{\r\n constructor(vert, frag){\r\n super(vert, frag);\r\n\r\n this.slopeLocation = null;\r\n this.offsetLocation = null;\r\n }\r\n\r\n prepareLocations(gl){\r\n super.prepareLocations(gl);\r\n this.slopeLocation = gl.getUniformLocation(this.program, \"u_slope\");\r\n this.offsetLocation = gl.getUniformLocation(this.program, \"u_offset\");\r\n }\r\n\r\n setThicknessMapColorSettings(gl, thicknessMapColorSettings){\r\n super.setThicknessMapColorSettings(gl, thicknessMapColorSettings);\r\n gl.uniform1f(this.slopeLocation, thicknessMapColorSettings.linearAdjustment.slope);\r\n gl.uniform1f(this.offsetLocation, thicknessMapColorSettings.linearAdjustment.offset);\r\n }\r\n}","import { m4 } from \"./matrix\";\r\nimport { GRAYSCALE_MODES } from \"../../config/config\";\r\nimport { getWebglContext, hasCustomPixelColorSettings, isContextLost } from \"../canvasUtils\";\r\nimport ColorWebglProgram from \"./colorWebglProgram\";\r\nimport OptosWebglProgram from \"./optosWebglProgram\";\r\nimport PaletteWebglProgram from \"./paletteWebglProgram\";\r\nimport defaultVertexShader from \"./default.vert\";\r\nimport defaultFragmentShader from \"./default.frag\";\r\nimport colorFragmentShader from \"./color.frag\";\r\nimport lumaFragmentShader from \"./luma.frag\";\r\nimport redFragmentShader from \"./red.frag\";\r\nimport greenFragmentShader from \"./green.frag\";\r\nimport blueFragmentShader from \"./blue.frag\";\r\nimport optosDefaultFragmentShader from \"./optosDefault.frag\";\r\nimport optosGreenFragmentShader from \"./optosGreen.frag\";\r\nimport invertFragmentShader from \"./invert.frag\";\r\nimport paletteFragmentShader from \"./palette.frag\";\r\nimport linearPaletteFragmentShader from \"./linearPalette.frag\";\r\nimport WebglProgram from \"./webglProgram\";\r\nimport LinearPaletteWebglProgram from \"./linearPaletteWebglProgram\";\r\nimport { sizesEqual } from \"../geometry\";\r\n\r\nexport default class WebglRenderer {\r\n constructor(canvas) {\r\n this.canvas = canvas;\r\n this.canvasSize = null;\r\n this.imgSize = null;\r\n this.transform = null;\r\n this.isFlipped = false;\r\n this.isFlipped90 = false;\r\n this.isFlipped270 = false;\r\n this.flippedX = false;\r\n this.colorSettings = null;\r\n this.octColorSettings = null;\r\n this.thicknessMapColorSettings = null;\r\n this.componentName = null;\r\n this.isSideBySide = false;\r\n this.forceTranslate = false;\r\n \r\n this.programs = {\r\n standard: new WebglProgram(defaultVertexShader, defaultFragmentShader),\r\n color: new ColorWebglProgram(defaultVertexShader, colorFragmentShader),\r\n luma: new ColorWebglProgram(defaultVertexShader, lumaFragmentShader),\r\n red: new ColorWebglProgram(defaultVertexShader, redFragmentShader),\r\n green: new ColorWebglProgram(defaultVertexShader, greenFragmentShader),\r\n blue: new ColorWebglProgram(defaultVertexShader, blueFragmentShader),\r\n optosStandard: new OptosWebglProgram(defaultVertexShader, optosDefaultFragmentShader),\r\n optosGreen: new OptosWebglProgram(defaultVertexShader, optosGreenFragmentShader),\r\n invert: new WebglProgram(defaultVertexShader, invertFragmentShader),\r\n palette: new PaletteWebglProgram(defaultVertexShader, paletteFragmentShader),\r\n linearPalette: new LinearPaletteWebglProgram(defaultVertexShader, linearPaletteFragmentShader)\r\n };\r\n\r\n this.lastProgram = null;\r\n\r\n this.positions = new Float32Array([0, 0,\r\n 0, 1,\r\n 1, 0,\r\n 1, 0,\r\n 0, 1,\r\n 1, 1]);\r\n this.positionBuffer = null;\r\n this.texcoords = new Float32Array([0, 0,\r\n 0, 1,\r\n 1, 0,\r\n 1, 0,\r\n 0, 1,\r\n 1, 1]);\r\n this.texcoordBuffer = null;\r\n\r\n this.lastImg = null;\r\n this.lastImgSize = null;\r\n this.usePixelCanvas = 0;\r\n this.texture = null;\r\n\r\n this.bounds = null;\r\n this.webGLContext = getWebglContext(this.canvas);\r\n this.isContextLost = isContextLost(this.webGLContext);\r\n }\r\n\r\n get offsetX() { return this.transform && this.transform.offsetX || 0; }\r\n get offsetY() { return this.transform && this.transform.offsetY || 0; }\r\n get zoom() { return this.transform && this.transform.zoom || 1; }\r\n\r\n clear() {\r\n this.prepareCanvas();\r\n }\r\n\r\n draw(img, lastImgSize, usePixelCanvas) {\r\n if (!img || !this.imgSize) return;\r\n this.renderImg(img, lastImgSize, usePixelCanvas, this.prepareCanvas());\r\n }\r\n\r\n drawBounded(img, lastImgSize, usePixelCanvas, bounds) {\r\n if (!img || !this.imgSize) return;\r\n this.bounds = bounds;\r\n this.renderImg(img, lastImgSize, usePixelCanvas, this.prepareCanvas());\r\n }\r\n\r\n renderImg(img, lastImgSize, usePixelCanvas, { gl, program }) {\r\n if (!gl || !program) return;\r\n this.prepareTexture(gl, img, lastImgSize, usePixelCanvas);\r\n program.bindTextureBuffers(gl, this.positionBuffer, this.texcoordBuffer);\r\n program.setSamplerLocation(gl, this.texture);\r\n\r\n // draw the quad (2 triangles, 6 vertices)\r\n gl.drawArrays(gl.TRIANGLES, 0, 6);\r\n }\r\n\r\n prepareCanvas() {\r\n const gl = getWebglContext(this.canvas);\r\n if (!gl || isContextLost(gl)) \r\n this.restoreWebGL();\r\n this.cleanupCanvas(gl);\r\n\r\n let program = this.selectProgram();\r\n if (!program) return {};\r\n if (program !== this.lastProgram) {\r\n this.lastProgram = program;\r\n gl.useProgram(program.program);\r\n }\r\n\r\n let matrix = this.getTransformMatrix(gl);\r\n program.setTransformationMatrix(gl, matrix);\r\n this.setProgramColorSettings(gl, program);\r\n\r\n return { gl, program };\r\n }\r\n\r\n cleanupCanvas(gl) {\r\n // for clip-space to pixel conversions\r\n gl.viewport(0, 0, gl.canvas.width, gl.canvas.height);\r\n gl.clearColor(0, 0, 0, 0);\r\n gl.clear(gl.COLOR_BUFFER_BIT || gl.DEPTH_BUFFER_BIT);\r\n }\r\n\r\n getTransformMatrix(gl) {\r\n let w = gl.canvas.width, h = gl.canvas.height;\r\n // this matirx will convert from pixels to clip space\r\n let matrix = m4.orthographic(0, w, h, 0, -1, 1);\r\n\r\n this.scaleToDevicePixelRatio(matrix);\r\n\r\n if (this.bounds) this.applyBounds(matrix, w, h);\r\n else this.applyTransformations(matrix);\r\n return matrix;\r\n }\r\n\r\n scaleToDevicePixelRatio(matrix) {\r\n let scale = 1;\r\n if (this.componentName != \"OCTReferenceImage\")\r\n scale = window.devicePixelRatio || 1;\r\n let w = this.canvasSize.w;\r\n let h = this.canvasSize.h;\r\n this.canvas.style.width = w + \"px\";\r\n this.canvas.style.height = h + \"px\";\r\n if (this.isFlipped270 || this.forceTranslate) this.canvas.style.transform = \"translate(-60%, -50%)\";\r\n this.canvas.width = w * scale;\r\n this.canvas.height = h * scale;\r\n m4.scale(matrix, scale, scale, 1, matrix);\r\n }\r\n\r\n applyBounds(matrix, w, h) {\r\n let { minX, maxX, minY, maxY } = this.bounds;\r\n m4.translate(matrix, minX * w, minY * h, 0, matrix);\r\n m4.scale(matrix, (maxX - minX) * w, (maxY - minY) * h, 1, matrix);\r\n }\r\n\r\n applyTransformations(matrix) {\r\n // this matrix will translate our quad\r\n m4.translate(matrix, this.offsetX, this.offsetY, 0, matrix);\r\n if (this.isFlipped90) {\r\n m4.scale(matrix, this.zoom * this.imgSize.h, this.zoom * this.imgSize.w, 1, matrix);\r\n m4.zRotation(matrix, 90, matrix);\r\n if (this.isSideBySide) {\r\n let ratio = this.imgSize.w / this.imgSize.h;\r\n let translate = (ratio - 1) / 2;\r\n m4.translate(matrix, -translate, -1 - translate, 0, matrix);\r\n }\r\n else {\r\n m4.translate(matrix, 0, -1, 0, matrix);\r\n }\r\n }\r\n else if (this.isFlipped270) {\r\n m4.scale(matrix, this.zoom * this.imgSize.h, this.zoom * this.imgSize.w, 1, matrix);\r\n m4.zRotation(matrix, 270, matrix);\r\n if (this.isSideBySide) {\r\n let ratio = this.imgSize.w / this.imgSize.h;\r\n let translate = (ratio - 1) / 2;\r\n m4.translate(matrix, -translate, -1 - translate, 0, matrix);\r\n }\r\n else {\r\n m4.translate(matrix, -1, 0, 0, matrix);\r\n }\r\n }\r\n else {\r\n m4.scale(matrix, this.zoom * this.imgSize.w, this.zoom * this.imgSize.h, 1, matrix);\r\n }\r\n if (this.isFlipped) {\r\n m4.scale(matrix, -1, -1, 1, matrix);\r\n m4.translate(matrix, -1, -1, 0, matrix);\r\n }\r\n if (this.flippedX) {\r\n m4.scale(matrix, -1, 1, 1, matrix);\r\n m4.translate(matrix, -1, 0, 0, matrix);\r\n }\r\n }\r\n\r\n setProgramColorSettings(gl, program) {\r\n if (program.setColorSettings && this.colorSettings)\r\n program.setColorSettings(gl, this.colorSettings);\r\n if (program.setOCTColorSettings && this.octColorSettings)\r\n program.setOCTColorSettings(gl, this.octColorSettings);\r\n if (program.setThicknessMapColorSettings && this.thicknessMapColorSettings)\r\n program.setThicknessMapColorSettings(gl, this.thicknessMapColorSettings);\r\n }\r\n\r\n selectProgram() {\r\n let program = this.programs.standard;\r\n if (this.thicknessMapColorSettings) program = this.programs.linearPalette;\r\n else if (this.octColorSettings) {\r\n if (this.octColorSettings.isInverted) program = this.programs.invert;\r\n else if (this.octColorSettings.colorPalette) program = this.programs.palette;\r\n } else if (this.colorSettings && hasCustomPixelColorSettings(this.colorSettings)) {\r\n let isOptos = this.colorSettings.isOptos;\r\n switch (this.colorSettings.grayscaleMode) {\r\n case GRAYSCALE_MODES.REC709: program = this.programs.luma; break;\r\n case GRAYSCALE_MODES.Red: program = this.programs.red; break;\r\n case GRAYSCALE_MODES.Blue: program = this.programs.blue; break;\r\n case GRAYSCALE_MODES.Green: program = isOptos ? this.programs.optosGreen : this.programs.green; break;\r\n default: program = isOptos ? this.programs.optosStandard : this.programs.color; break;\r\n }\r\n }\r\n return program;\r\n }\r\n\r\n prepareTexture(gl, img, lastImgSize, usePixelCanvas) {\r\n // don't load the texture if I've seen this size texture before\r\n // note - for resized images, img will be a canvas\r\n // the canvas won't change between images, so the \"usePixelCanvas\" variable is used to determine\r\n // if a new texture is loaded\r\n if (usePixelCanvas === this.usePixelCanvas\r\n && (img == this.lastImg)\r\n && sizesEqual(this.lastImgSize, lastImgSize)) return;\r\n\r\n this.texture = gl.createTexture();\r\n gl.bindTexture(gl.TEXTURE_2D, this.texture);\r\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);\r\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);\r\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR);\r\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);\r\n gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, img);\r\n this.lastImg = img;\r\n this.lastImgSize = lastImgSize && { ...lastImgSize };\r\n this.usePixelCanvas = usePixelCanvas;\r\n }\r\n\r\n prepareWebgl() {\r\n const gl = getWebglContext(this.canvas);\r\n if (!gl || isContextLost(gl)) \r\n this.restoreWebGL();\r\n this.createPrograms(gl);\r\n this.prepareBuffers(gl);\r\n }\r\n\r\n createPrograms(gl) {\r\n for (let program in this.programs)\r\n this.programs[program].createProgram(gl);\r\n }\r\n\r\n prepareBuffers(gl) {\r\n // create buffers for vertex coordinates and texture positions\r\n this.positionBuffer = gl.createBuffer();\r\n this.bindBuffer(gl, this.positionBuffer, this.positions);\r\n this.texcoordBuffer = gl.createBuffer();\r\n this.bindBuffer(gl, this.texcoordBuffer, this.texcoords);\r\n }\r\n\r\n bindBuffer(gl, buffer, data){\r\n gl.bindBuffer(gl.ARRAY_BUFFER, buffer);\r\n gl.bufferData(gl.ARRAY_BUFFER, data, gl.STATIC_DRAW);\r\n }\r\n\r\n clearWebGL() {\r\n const gl = getWebglContext(this.canvas);\r\n let hasWebgl = !!gl;\r\n if (hasWebgl) {\r\n this.programs.standard.clearReferences(gl, this.positionBuffer, this.texcoordBuffer, this.texture);\r\n for (let program in this.programs)\r\n this.programs[program] = null;\r\n gl.canvas.width = 1;\r\n gl.canvas.height = 1;\r\n let ext = gl.getExtension(\"WEBGL_lose_context\");\r\n if (ext) ext.loseContext();\r\n }\r\n }\r\n\r\n restoreWebGL() {\r\n const gl = getWebglContext(this.canvas);\r\n let ext = gl.getExtension(\"WEBGL_lose_context\");\r\n if (ext) ext.restoreContext();\r\n }\r\n}","","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CanvasWebgl.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CanvasWebgl.vue?vue&type=script&lang=js&\"","\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PixelShadedCanvas.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PixelShadedCanvas.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PixelShadedCanvas.vue?vue&type=template&id=c7891562&\"\nimport script from \"./PixelShadedCanvas.vue?vue&type=script&lang=js&\"\nexport * from \"./PixelShadedCanvas.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('circle-image-button',{attrs:{\"image\":_vm.annotationImage,\"title\":_vm.title,\"active\":_vm.isActive,\"size\":_vm.size,\"disabled\":_vm.disabled,\"btnClass\":\"primary\"},on:{\"click\":function($event){return _vm.$emit('click', $event)}}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AnnotationModeButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AnnotationModeButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AnnotationModeButton.vue?vue&type=template&id=2cba24bd&\"\nimport script from \"./AnnotationModeButton.vue?vue&type=script&lang=js&\"\nexport * from \"./AnnotationModeButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Annotation from \"./annotation\";\r\nimport { setLineStyle } from \"../canvasUtils\";\r\nclass Grid extends Annotation {\r\n constructor(imgSize) {\r\n super();\r\n this.x = 0;\r\n this.y = 0;\r\n this.width = 0;\r\n this.height = 0;\r\n this.stepX = 100;\r\n this.stepY = 100;\r\n this.lineWidth = 1;\r\n this.color = \"grey\";\r\n this.imgSize = imgSize;\r\n }\r\n\r\n draw(ctx){\r\n this.updateImgSize();\r\n if (!this.width) return;\r\n \r\n setLineStyle(ctx, this);\r\n\r\n for (let dx = this.x; dx <= this.width; dx += this.stepX){\r\n ctx.beginPath();\r\n ctx.moveTo(dx, this.y);\r\n ctx.lineTo(dx, this.height - 1);\r\n ctx.stroke();\r\n ctx.closePath();\r\n }\r\n\r\n for (let dy = this.y; dy <= this.height; dy += this.stepY){\r\n ctx.beginPath();\r\n ctx.moveTo(this.x, dy);\r\n ctx.lineTo(this.width - 1, dy);\r\n ctx.stroke();\r\n ctx.closePath();\r\n }\r\n }\r\n\r\n updateImgSize(){\r\n if (!this.imgSize) return;\r\n\r\n this.width = this.imgSize.w;\r\n this.height = this.imgSize.h;\r\n this.stepX = (this.imgSize.w - 1) / 15;\r\n this.stepY = (this.imgSize.h - 1) / 15;\r\n }\r\n}\r\n\r\nexport default Grid;","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RasterThumbnail.vue?vue&type=style&index=0&id=7f8f7b86&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RasterThumbnail.vue?vue&type=style&index=0&id=7f8f7b86&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{staticClass:\"zoom-control-wrapper\",attrs:{\"column\":\"\"}},[_c('v-flex',{directives:[{name:\"hammer\",rawName:\"v-hammer:press\",value:(_vm.handlePanstart),expression:\"handlePanstart\",arg:\"press\"},{name:\"hammer\",rawName:\"v-hammer:panstart\",value:(_vm.handlePanstart),expression:\"handlePanstart\",arg:\"panstart\"},{name:\"hammer\",rawName:\"v-hammer:pan\",value:(_vm.handlePanmove),expression:\"handlePanmove\",arg:\"pan\"},{name:\"hammer\",rawName:\"v-hammer:panend\",value:(_vm.handlePanend),expression:\"handlePanend\",arg:\"panend\"},{name:\"hammer\",rawName:\"v-hammer:tap\",value:(_vm.handleTap),expression:\"handleTap\",arg:\"tap\"}],ref:\"zoomControl\",staticClass:\"zoom-canvas-wrapper interactive-canvas-wrapper\",style:(_vm.canvasWrapperStyle),attrs:{\"id\":\"zoom-canvas-wrapper\"},on:{\"wheel\":function($event){if($event.ctrlKey||$event.shiftKey||$event.altKey||$event.metaKey){ return null; }$event.preventDefault();return _vm.handleCanvasWheel($event)},\"mousedown\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.handleMousedown($event)},\"mousemove\":_vm.handleMousemove,\"mouseup\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.handleMouseup($event)},\"mouseout\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.handleMouseout($event)},\"click\":_vm.handleClick}},[(_vm.imgNotFound)?_c('image-not-found'):_vm._e(),_c('canvas-image',{attrs:{\"canvasSize\":_vm.fit,\"imgSize\":_vm.fit,\"isFlipped\":_vm.isFlipped,\"isFlipped90\":_vm.isFlipped90,\"img\":_vm.img,\"name\":\"imageZoom\"}}),(_vm.debug)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.fit,\"imgSize\":_vm.fit,\"annotation\":_vm.grid}}):_vm._e(),_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.fit,\"imgSize\":_vm.fit,\"annotation\":_vm.viewFinder}}),(_vm.imgIsLoading)?_c('v-progress-circular',{staticClass:\"escalon-absolute-center\",attrs:{\"indeterminate\":\"\"}}):_vm._e(),_c('span',{staticClass:\"zoom-level-info\"},[_vm._v(_vm._s(_vm.zoom.toFixed(2))+\" x\")])],1),_c('v-flex',[_c('v-slider',{staticClass:\"transform-slider\",attrs:{\"value\":_vm.zoom,\"track-color\":\"#7f7f7f\",\"color\":_vm.colorHex,\"always-dirty\":\"\",\"min\":_vm.minZoom,\"max\":_vm.maxZoom,\"step\":\"0.01\"},on:{\"input\":_vm.rateLimitedUpdateZoom,\"focus\":_vm.stopFitZoom}},[_c('template',{slot:\"prepend\"},[_c('circle-slot-button',{attrs:{\"title\":\"Zoom Out\",\"btnClass\":_vm.colorClass,\"size\":\"xSmall\"},on:{\"click\":function($event){return _vm.updateZoom(_vm.zoom - 0.05)}}},[_c('v-icon',{attrs:{\"size\":\"18\"}},[_vm._v(\"fas fa-minus\")])],1)],1),_c('template',{slot:\"append\"},[_c('circle-slot-button',{attrs:{\"title\":\"Zoom In\",\"btnClass\":_vm.colorClass,\"size\":\"xSmall\"},on:{\"click\":function($event){return _vm.updateZoom(_vm.zoom + 0.05)}}},[_c('v-icon',{attrs:{\"size\":\"18\"}},[_vm._v(\"fas fa-plus\")])],1)],1)],2)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Annotation from \"./annotation\";\r\nimport { setLineStyle } from \"../canvasUtils\";\r\nexport default class ViewFinder extends Annotation {\r\n constructor(){\r\n super();\r\n this.x = 0;\r\n this.y = 0;\r\n this.width = 0;\r\n this.height = 0;\r\n this.lineWidth = 3;\r\n this.color = \"red\";\r\n }\r\n \r\n draw(ctx){ \r\n if (!this.width) return;\r\n setLineStyle(ctx, this);\r\n\r\n ctx.beginPath();\r\n ctx.strokeRect(this.x, this.y, this.width, this.height);\r\n ctx.closePath();\r\n }\r\n\r\n updateViewFinder(fittedImgSize, transform){\r\n if (!fittedImgSize || !transform) return;\r\n\r\n const scaledZoom = transform.zoom / transform.fitZoom;\r\n let offset = 1100 / window.innerHeight;\r\n\r\n this.width = (fittedImgSize.w / scaledZoom) - offset;\r\n this.height = (fittedImgSize.h / scaledZoom) - offset;\r\n\r\n this.x = fittedImgSize.w * (transform.centerX - 1 / (2 * scaledZoom));\r\n this.y = fittedImgSize.h * (transform.centerY - 1 / (2 * scaledZoom));\r\n\r\n this.signalReady();\r\n }\r\n}","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageZoomControl.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageZoomControl.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImageZoomControl.vue?vue&type=template&id=119a66ad&\"\nimport script from \"./ImageZoomControl.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageZoomControl.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\nimport { VSlider } from 'vuetify/lib/components/VSlider';\ninstallComponents(component, {VFlex,VIcon,VLayout,VProgressCircular,VSlider})\n","export default {\r\n data() {\r\n return {\r\n isMousedown: false,\r\n isDragging: false,\r\n timeToPop: 250,\r\n spaceThreshold: 25,\r\n start: [],\r\n end: []\r\n };\r\n },\r\n methods: {\r\n handleMousedown(e) {\r\n this.setMousedown();\r\n this.doHandleInteractionStart(e);\r\n },\r\n handleMousemove(e) {\r\n this.doHandleInteractionMove(e);\r\n },\r\n handleMouseup(e) {\r\n this.doHandleInteractionEnd(e);\r\n this.setMouseup();\r\n },\r\n handleMouseout(e) {\r\n this.doHandleInteractionEnd(e);\r\n this.setMouseup();\r\n },\r\n handleClick(e) {\r\n this.doHandleInteractionStart(e);\r\n this.doHandleInteractionEnd(e);\r\n },\r\n handlePanstart(e) {\r\n this.setMousedown();\r\n this.doHandleInteractionStart(e.srcEvent);\r\n },\r\n handlePanmove(e) {\r\n this.doHandleInteractionMove(e.srcEvent);\r\n },\r\n handlePanend(e) {\r\n this.doHandleInteractionEnd(e.srcEvent);\r\n this.setMouseup();\r\n },\r\n handleTap(e) {\r\n if (e.preventDefault) e.preventDefault();\r\n else {\r\n this.doHandleInteractionStart(e.srcEvent);\r\n this.doHandleInteractionEnd(e.srcEvent);\r\n }\r\n },\r\n doHandleInteractionStart(e) {\r\n if(this.isMousedown)\r\n this.isDragging = true;\r\n if (this.isDuplicateEvent(e, \"start\")) {\r\n cancelEvent(e);\r\n return;\r\n } else this.logEvent(e, \"start\");\r\n if (this.handleInteractionStart(e))\r\n cancelEvent(e);\r\n },\r\n handleInteractionStart() {\r\n return false;\r\n },\r\n doHandleInteractionMove(e) {\r\n if(this.isMousedown)\r\n this.isDragging = true;\r\n this.handleHover(e);\r\n let cancelEvent;\r\n if (this.isMousedown && this.handleInteractionMove(e))\r\n cancelEvent(e);\r\n },\r\n handleInteractionMove() {\r\n return false;\r\n },\r\n handleHover() { },\r\n doHandleInteractionEnd(e) {\r\n if (this.isDuplicateEvent(e, \"end\")) {\r\n cancelEvent(e);\r\n return;\r\n } else this.logEvent(e, \"end\");\r\n if (this.handleInteractionEnd(e))\r\n cancelEvent(e);\r\n },\r\n handleInteractionEnd() {\r\n return false;\r\n },\r\n setMousedown() {\r\n this.isMousedown = true;\r\n },\r\n setMouseup() {\r\n this.isMousedown = false;\r\n this.isDragging = false;\r\n },\r\n isDuplicateEvent(e, key) {\r\n let set = this[key];\r\n if (!set.length) return false;\r\n\r\n let oldestEvent = set[0];\r\n return this.withinThreshold(e, oldestEvent);\r\n },\r\n withinThreshold(e1, e2) {\r\n return Math.abs(e1.offsetX - e2.offsetX) < this.spaceThreshold\r\n && Math.abs(e1.offsetY - e2.offsetY) < this.spaceThreshold;\r\n },\r\n logEvent(e, key) {\r\n let set = this[key];\r\n set.push(e);\r\n setTimeout(() => set.splice(0, 1), this.timeToPop);\r\n }\r\n }\r\n};\r\n\r\nfunction cancelEvent(e) {\r\n e.stopPropagation();\r\n e.preventDefault();\r\n}","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"hammer\",rawName:\"v-hammer:press\",value:(_vm.handlePanstart),expression:\"handlePanstart\",arg:\"press\"},{name:\"hammer\",rawName:\"v-hammer:panstart\",value:(_vm.handlePanstart),expression:\"handlePanstart\",arg:\"panstart\"},{name:\"hammer\",rawName:\"v-hammer:pan\",value:(_vm.handlePanmove),expression:\"handlePanmove\",arg:\"pan\"},{name:\"hammer\",rawName:\"v-hammer:panend\",value:(_vm.handlePanend),expression:\"handlePanend\",arg:\"panend\"},{name:\"hammer\",rawName:\"v-hammer:tap\",value:(_vm.handleTap),expression:\"handleTap\",arg:\"tap\"}],ref:\"wrapper\",staticClass:\"interactive-canvas-wrapper primary-canvas-wrapper escalon-absolute-cover\",class:_vm.cursorClass,style:({ width: _vm.width, height: _vm.height }),attrs:{\"id\":_vm.id,\"tabindex\":\"0\"},on:{\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"delete\",[8,46],$event.key,[\"Backspace\",\"Delete\",\"Del\"])){ return null; }if($event.target !== $event.currentTarget){ return null; }$event.preventDefault();return _vm.handleDelete($event)},\"keypress\":function($event){if($event.target !== $event.currentTarget){ return null; }$event.preventDefault();return _vm.handleKeypress($event)},\"mousedown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"left\",37,$event.key,[\"Left\",\"ArrowLeft\"])){ return null; }if($event.target !== $event.currentTarget){ return null; }if('button' in $event && $event.button !== 0){ return null; }return _vm.handleMousedown($event)},\"mousemove\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.handleMousemove($event)},\"mouseup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"left\",37,$event.key,[\"Left\",\"ArrowLeft\"])){ return null; }if($event.target !== $event.currentTarget){ return null; }if('button' in $event && $event.button !== 0){ return null; }return _vm.handleMouseup($event)},\"mouseout\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.handleMouseout($event)}}},[(_vm.imgNotFound)?_c('image-not-found'):_vm._e(),(_vm.imgAvailable)?_c('pixel-shaded-canvas',{staticClass:\"main-image\",style:({\n 'border-color': _vm.borderColor,\n 'outline-color': _vm.borderColor\n }),attrs:{\"img\":_vm.imgObject,\"colorSettings\":_vm.colorSettings,\"canvasSize\":_vm.viewFit,\"imgSize\":_vm.imgSize,\"transform\":_vm.transform,\"isFlipped\":_vm.isFlipped,\"isFlipped90\":_vm.isFlipped90,\"isSideBySide\":_vm.isSideBySide,\"isDeepDeeAnnotation\":_vm.isDeepDeeAnnotation,\"hires\":true}}):_vm._e(),(!_vm.isMask)?_c('div',[_vm._l((_vm.annotations),function(annotation,index){return _c('canvas-annotation',{key:index,attrs:{\"annotation\":annotation,\"canvasSize\":_vm.viewFit,\"imgSize\":_vm.imgSize,\"transform\":_vm.transform,\"isFlipped\":_vm.isFlipped,\"isFlipped90\":_vm.isFlipped90}})}),(_vm.inMagnifyMode)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.viewSize,\"imgSize\":_vm.imgSize,\"annotation\":_vm.magnifier}}):_vm._e(),(_vm.isDeepDeeAnnotation)?_c('canvas-annotation',{attrs:{\"annotation\":_vm.deepDeeAnnotation,\"canvasSize\":_vm.viewFit,\"imgSize\":_vm.imgSize,\"transform\":_vm.transform,\"isFlipped\":_vm.isFlipped,\"isFlipped90\":_vm.isFlipped90}}):_vm._e()],2):_vm._e(),(_vm.imgIsLoading)?_c('v-progress-circular',{staticClass:\"escalon-absolute-center\",attrs:{\"indeterminate\":\"\"}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AnnotateableCanvas.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AnnotateableCanvas.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AnnotateableCanvas.vue?vue&type=template&id=459d1efc&\"\nimport script from \"./AnnotateableCanvas.vue?vue&type=script&lang=js&\"\nexport * from \"./AnnotateableCanvas.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\ninstallComponents(component, {VProgressCircular})\n","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EnfaceView.vue?vue&type=style&index=0&id=03f0414a&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EnfaceView.vue?vue&type=style&index=0&id=03f0414a&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{staticClass:\"index-counter\",class:_vm.colorClass},[_vm._v(_vm._s(_vm.padZeroes(_vm.index + 1))+\" of \"+_vm._s(_vm.padZeroes(_vm.count)))])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IndexCounter.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IndexCounter.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./IndexCounter.vue?vue&type=template&id=6d3f203b&\"\nimport script from \"./IndexCounter.vue?vue&type=script&lang=js&\"\nexport * from \"./IndexCounter.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RasterBrowserBody.vue?vue&type=style&index=0&id=483532f3&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RasterBrowserBody.vue?vue&type=style&index=0&id=483532f3&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.isPlaying)?_c('v-btn',{staticClass:\"modal-cta mx-2\",attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.$emit('play')}}},[_vm._v(\"\\n Play\\n \"),_c('v-icon',{staticClass:\"ml-2\"},[_vm._v(\"fas fa-caret-right\")])],1):_c('v-btn',{staticClass:\"modal-cta mx-2\",attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.$emit('pause')}}},[_vm._v(\"\\n Pause\\n \"),_c('v-icon',{staticClass:\"ml-2\"},[_vm._v(\"fas fa-pause\")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PlayPauseButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PlayPauseButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PlayPauseButton.vue?vue&type=template&id=236f4857&\"\nimport script from \"./PlayPauseButton.vue?vue&type=script&lang=js&\"\nexport * from \"./PlayPauseButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\ninstallComponents(component, {VBtn,VIcon})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('image-button',{attrs:{\"btnClass\":_vm.classes,\"title\":_vm.title,\"image\":_vm.image,\"btnColor\":_vm.btnColor,\"fab\":\"\",\"small\":_vm.size === 'small',\"x-small\":_vm.size === 'x-small' || _vm.size === 'xSmall',\"disabled\":_vm.disabled},on:{\"click\":function($event){return _vm.$emit('click', $event)}}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CircleImageButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CircleImageButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CircleImageButton.vue?vue&type=template&id=eb497aea&\"\nimport script from \"./CircleImageButton.vue?vue&type=script&lang=js&\"\nexport * from \"./CircleImageButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageDeepDeeControls.vue?vue&type=style&index=0&id=5cf23f18&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageDeepDeeControls.vue?vue&type=style&index=0&id=5cf23f18&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('img',{staticClass:\"escalon-absolute-center\",attrs:{\"src\":require(\"../../assets/INF.png\"),\"title\":\"Image Not Found\"}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageNotFound.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageNotFound.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImageNotFound.vue?vue&type=template&id=6c2eeab5&\"\nimport script from \"./ImageNotFound.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageNotFound.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OCTSliceControls.vue?vue&type=style&index=0&id=26fe233a&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OCTSliceControls.vue?vue&type=style&index=0&id=26fe233a&lang=scss&scoped=true&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ThumbnailMisc.vue?vue&type=style&index=0&id=29b78ec4&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ThumbnailMisc.vue?vue&type=style&index=0&id=29b78ec4&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('slot-button',{attrs:{\"btnClass\":_vm.classes,\"title\":_vm.title,\"fab\":\"\",\"small\":_vm.size === 'small',\"x-small\":_vm.size === 'x-small' || _vm.size === 'xSmall',\"icon\":_vm.icon,\"text\":_vm.text},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},[_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CircleSlotButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CircleSlotButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CircleSlotButton.vue?vue&type=template&id=03134b12&\"\nimport script from \"./CircleSlotButton.vue?vue&type=script&lang=js&\"\nexport * from \"./CircleSlotButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CScanView.vue?vue&type=style&index=0&id=2d9fee48&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CScanView.vue?vue&type=style&index=0&id=2d9fee48&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('v-dialog',{attrs:{\"persistent\":\"\",\"scrollable\":\"\",\"fullscreen\":\"\",\"content-class\":\"image-browser print-preview-browser\"},model:{value:(_vm.isOpen),callback:function ($$v) {_vm.isOpen=$$v},expression:\"isOpen\"}},[_c('v-card',[_c('v-layout',{attrs:{\"column\":\"\",\"escalon-absolute-cover\":\"\"}},[_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('print-preview-browser-header',{attrs:{\"hideCloseButton\":_vm.hideCloseButton},on:{\"closePrintPreview\":_vm.closePrintPreview}})],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('print-preview-browser-toolbar',{attrs:{\"hideCloseButton\":_vm.hideCloseButton},on:{\"closePrintPreview\":_vm.closePrintPreview}})],1),_c('v-flex',{attrs:{\"tall-content-wrapper\":\"\"}},[_c('print-preview-browser-body')],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-toolbar',{staticClass:\"escalon-dialog-header elevation-0\",attrs:{\"height\":\"35\"}},[_c('img',{staticClass:\"modal-axis-logo mr-2\",attrs:{\"src\":require('../../assets/' + _vm.coloredLogo)}}),_c('span',[_vm._v(\"Print Preview\")]),_c('v-spacer'),(!_vm.hideCloseButton)?_c('close-button',{on:{\"click\":function($event){return _vm.$emit('closePrintPreview')}}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrintPreviewBrowserHeader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrintPreviewBrowserHeader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PrintPreviewBrowserHeader.vue?vue&type=template&id=55b1f2fc&\"\nimport script from \"./PrintPreviewBrowserHeader.vue?vue&type=script&lang=js&\"\nexport * from \"./PrintPreviewBrowserHeader.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VSpacer,VToolbar})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{staticClass:\"control-toolbar print-preview-toolbar secondary\",attrs:{\"no-gutters\":\"\",\"align\":\"start\",\"justify\":\"center\"}},[_c('v-checkbox',{staticClass:\"checkbox\",attrs:{\"color\":_vm.colorHex,\"primary\":\"\",\"hide-details\":\"\",\"label\":\"Include Headers\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.toggleHeader($event)}},model:{value:(_vm.headerToggle),callback:function ($$v) {_vm.headerToggle=$$v},expression:\"headerToggle\"}}),_c('select-with-button',{staticClass:\"toolbar-select\",attrs:{\"selection-prefix\":\"Images Per Sheet:\",\"value\":_vm.imagesPerSheet,\"items\":_vm.imagesPerSheetOptions,\"icon-button\":true},on:{\"change\":_vm.setImagesPerSheet}}),(!_vm.isSafari)?_c('v-checkbox',{staticClass:\"checkbox\",attrs:{\"color\":_vm.colorHex,\"primary\":\"\",\"hide-details\":\"\",\"label\":\"Landscape\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.setLayout('landscape')}},model:{value:(_vm.isLandscape),callback:function ($$v) {_vm.isLandscape=$$v},expression:\"isLandscape\"}}):_vm._e(),(!_vm.isSafari)?_c('v-checkbox',{staticClass:\"checkbox\",attrs:{\"color\":_vm.colorHex,\"primary\":\"\",\"hide-details\":\"\",\"label\":\"Portrait\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.setLayout('portrait')}},model:{value:(_vm.isPortrait),callback:function ($$v) {_vm.isPortrait=$$v},expression:\"isPortrait\"}}):_vm._e(),_c('v-btn',{staticClass:\"modal-cta mx-1\",attrs:{\"text\":\"\",\"disabled\":_vm.isLoadingImages},on:{\"click\":function($event){$event.stopPropagation();return _vm.print($event)}}},[_vm._v(\"Print\")]),(!_vm.hideCloseButton)?_c('v-btn',{staticClass:\"modal-cta mx-1\",attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.$emit('closePrintPreview')}}},[_vm._v(\"Cancel\")]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrintPreviewBrowserToolbar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrintPreviewBrowserToolbar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PrintPreviewBrowserToolbar.vue?vue&type=template&id=2bc41a13&\"\nimport script from \"./PrintPreviewBrowserToolbar.vue?vue&type=script&lang=js&\"\nexport * from \"./PrintPreviewBrowserToolbar.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCheckbox,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{ref:\"body\",staticClass:\"print-preview-body primary\",attrs:{\"wrap\":\"\",\"align-start\":\"\",\"justify-start\":\"\",\"id\":\"printBody\"}},[_c('v-container',{staticClass:\"pa-1 print-body\",attrs:{\"fluid\":\"\"}},[(!_vm.isPrinting)?_c('v-flex',{staticClass:\"pageNum\",attrs:{\"shrink\":\"\"}},[_c('v-btn',{attrs:{\"text\":\"\",\"icon\":\"\",\"disabled\":_vm.currentPage == 1},on:{\"click\":function($event){return _vm.changePage('left')}}},[_c('v-icon',[_vm._v(\"fas fa-angle-left\")])],1),_c('span',[_vm._v(\"Page \"+_vm._s(this.printPreviewCurrentPage)+\" of \"+_vm._s(this.pageNum))]),_c('v-btn',{attrs:{\"text\":\"\",\"icon\":\"\",\"disabled\":_vm.currentPage >= _vm.sheetNum},on:{\"click\":function($event){return _vm.changePage('right')}}},[_c('v-icon',[_vm._v(\"fas fa-angle-right\")])],1)],1):_vm._e(),_c('v-flex',{staticClass:\"print-body-pages-wrapper\"},_vm._l((_vm.pageNum),function(index){return _c('print-preview-images',{key:index,attrs:{\"images\":_vm.printPreviewImages,\"index\":index,\"isPrinting\":_vm.isPrinting,\"layout\":_vm.layout,\"pageNum\":_vm.pageNum}})}),1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{staticClass:\"print-body-page-layout\"},[_c('div',{staticClass:\"print-body-page-container\",class:[this.printPreviewPageLayout + 'Container']},[(_vm.visibility)?_c('div',{staticClass:\"print-body-page-inner-wrapper\",class:[this.printPreviewPageLayout, this.index == this.pageNum ? 'last' : '']},[(_vm.printPreviewDisplayHeader)?_c('div',{staticClass:\"print-body-page-header\"},[_c('span',{staticClass:\"header\"},[_vm._v(\"\\n Patient: \"),_c('strong',[_vm._v(_vm._s(_vm.displayPatientName()))])]),_c('span',{staticClass:\"header\"},[_vm._v(\"\\n Patient ID: \"),_c('strong',[_vm._v(_vm._s(_vm.displayPatientID()))])]),_c('span',{staticClass:\"header\"},[_vm._v(\"\\n Patient DOB: \"),_c('strong',[_vm._v(_vm._s(_vm.displayPatientDOB()))])])]):_vm._e(),_vm._l((_vm.imagesPerPage),function(num){return _c('div',{key:num,staticClass:\"print-body-panel\",class:_vm.imageClass},[(_vm.printPreviewDisplayHeader)?_c('div',{staticClass:\"imageHeader\"},[_c('span',{staticClass:\"header\"},[_vm._v(\"\\n \"+_vm._s(_vm.displayExamDate(num - 1 + _vm.indexOffset))+\" \"+_vm._s(_vm.displayImageExSrNo(num - 1 + _vm.indexOffset))+\"\\n \")])]):_vm._e(),_c('div',{staticClass:\"print-body-image\",style:(_vm.imageStyle(num - 1 + _vm.indexOffset))})])})],2):_vm._e()])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrintPreviewImages.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrintPreviewImages.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PrintPreviewImages.vue?vue&type=template&id=4cac29a4&\"\nimport script from \"./PrintPreviewImages.vue?vue&type=script&lang=js&\"\nexport * from \"./PrintPreviewImages.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VLayout } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VLayout})\n","\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrintPreviewBrowserBody.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrintPreviewBrowserBody.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PrintPreviewBrowserBody.vue?vue&type=template&id=1928b1ed&\"\nimport script from \"./PrintPreviewBrowserBody.vue?vue&type=script&lang=js&\"\nexport * from \"./PrintPreviewBrowserBody.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VContainer } from 'vuetify/lib/components/VGrid';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VContainer,VFlex,VIcon,VLayout})\n","\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrintPreviewBrowser.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PrintPreviewBrowser.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PrintPreviewBrowser.vue?vue&type=template&id=a41b0f4a&\"\nimport script from \"./PrintPreviewBrowser.vue?vue&type=script&lang=js&\"\nexport * from \"./PrintPreviewBrowser.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCard } from 'vuetify/lib/components/VCard';\nimport { VDialog } from 'vuetify/lib/components/VDialog';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCard,VDialog,VFlex,VLayout})\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./rgbView.vue?vue&type=style&index=0&id=81ee8d5e&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./rgbView.vue?vue&type=style&index=0&id=81ee8d5e&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.thumbnailAnnotation == _vm.thumbnailAnnotationType.cirrusReferenceMacular)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.imgSize,\"annotation\":_vm.fourSquareGrid}}):(_vm.thumbnailAnnotation == _vm.thumbnailAnnotationType.cirrusReferenceRaster || _vm.thumbnailAnnotation == _vm.thumbnailAnnotationType.spectralisVolume \n || _vm.thumbnailAnnotation == _vm.thumbnailAnnotationType.spectralisSection)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.imgSize,\"annotation\":_vm.linesIndicator}}):(_vm.thumbnailAnnotation == _vm.thumbnailAnnotationType.cirrusReferenceOpticDisc)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.imgSize,\"annotation\":_vm.opticDiscGrid}}):(_vm.thumbnailAnnotation == _vm.thumbnailAnnotationType.spectralisCircle)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.imgSize,\"annotation\":_vm.circleGrid}}):(_vm.thumbnailAnnotation == _vm.thumbnailAnnotationType.spectralisRadial)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.imgSize,\"annotation\":_vm.radialGrid}}):(_vm.thumbnailAnnotation == _vm.thumbnailAnnotationType.spectralisRadialSCN)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.imgSize,\"annotation\":_vm.spectralisRadialSCN}}):(_vm.thumbnailAnnotation == _vm.thumbnailAnnotationType.spectralisRadialCircle)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.imgSize,\"annotation\":_vm.radialCircleGrid}}):_vm._e(),(_vm.showDropdown)?_c('v-menu',{attrs:{\"offset-y\":\"\",\"nudge-width\":100},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\n var on = ref.on;\nreturn [_c('image-button',_vm._g({class:_vm.dropdownClass,attrs:{\"icon\":\"\",\"image\":_vm.coloredAssetUrls.dropdown}},on))]}}],null,false,1459864240)},[_c('v-list',[_c('v-list-item',{on:{\"click\":function($event){return _vm.$emit('multiview-launch', _vm.thumbnailDropdown.currentPrevious)}}},[_c('v-list-item-title',[_vm._v(\"Current + Previous\")])],1),_c('v-list-item',{on:{\"click\":function($event){return _vm.$emit('multiview-launch', _vm.thumbnailDropdown.currentBaseline)}}},[_c('v-list-item-title',[_vm._v(\"Current + Baseline\")])],1)],1)],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Annotation from \"./annotation\";\r\n\r\nclass FourSquareGrid extends Annotation {\r\n constructor() {\r\n super();\r\n\r\n this.color = \"#00b0f0\";\r\n this.lineWidth = 1;\r\n this.space = 0.25;\r\n this.canvasSize = null;\r\n }\r\n\r\n draw(ctx) {\r\n if (!this.canvasSize) \r\n return;\r\n \r\n ctx.lineWidth = this.lineWidth;\r\n ctx.strokeStyle = this.color;\r\n ctx.fillStyle = this.color;\r\n \r\n let margin = Math.min(this.canvasSize.w, this.canvasSize.h) * this.space;\r\n let length = Math.min(this.canvasSize.w, this.canvasSize.h) - margin;\r\n \r\n let maxX = length;\r\n let minX = (this.canvasSize.w - length) /2;\r\n\r\n let maxY = length;\r\n let minY = (this.canvasSize.h - length) /2;;\r\n\r\n ctx.strokeRect(minX, minY, maxX, maxY);\r\n\r\n ctx.beginPath();\r\n ctx.moveTo(maxX / 2 + minX, minY);\r\n ctx.lineTo(maxX / 2 + minX, minY + maxY);\r\n ctx.stroke();\r\n ctx.closePath();\r\n \r\n ctx.beginPath();\r\n ctx.moveTo(minX, maxY / 2 + minY);\r\n ctx.lineTo(minX + maxY, maxY / 2 + minY);\r\n ctx.stroke();\r\n ctx.closePath();\r\n }\r\n}\r\n\r\nexport default FourSquareGrid;","import Annotation from \"./annotation\";\r\n\r\nclass OpticDiscGrid extends Annotation {\r\n constructor() {\r\n super();\r\n\r\n this.color = \"#00b0f0\";\r\n this.lineWidth = 1;\r\n this.space = 0.25;\r\n this.canvasSize = null;\r\n this.scale = 0.50;\r\n }\r\n\r\n draw(ctx) {\r\n if (!this.canvasSize) \r\n return;\r\n \r\n ctx.lineWidth = this.lineWidth;\r\n ctx.strokeStyle = this.color;\r\n ctx.fillStyle = this.color;\r\n \r\n let margin = Math.min(this.canvasSize.w, this.canvasSize.h) * this.space;\r\n let length = Math.min(this.canvasSize.w, this.canvasSize.h) - margin;\r\n \r\n let maxX = length;\r\n let minX = (this.canvasSize.w - length) /2;\r\n\r\n let maxY = length;\r\n let minY = (this.canvasSize.h - length) /2;;\r\n\r\n let centerX = this.canvasSize.w / 2;\r\n let centerY = this.canvasSize.h / 2;\r\n let radius = (this.canvasSize.h/2 - this.lineWidth) * this.scale;\r\n\r\n ctx.strokeRect(minX, minY, maxX, maxY);\r\n\r\n ctx.beginPath();\r\n ctx.arc(centerX, centerY, radius - 3, 0, 2 * Math.PI);\r\n ctx.stroke();\r\n ctx.closePath();\r\n\r\n }\r\n}\r\n\r\nexport default OpticDiscGrid;","import Annotation from \"./annotation\";\r\n\r\nclass linesIndicator extends Annotation {\r\n constructor() {\r\n super();\r\n\r\n this.color = \"#00b0f0\";\r\n this.lineWidth = 1;\r\n this.space = 0.1;\r\n this.lineSpace = 0.04;\r\n this.canvasSize = null;\r\n this.numberOfLines = 5;\r\n }\r\n\r\n draw(ctx) {\r\n if (!this.canvasSize) \r\n return;\r\n \r\n ctx.lineWidth = this.lineWidth;\r\n ctx.strokeStyle = this.color;\r\n ctx.fillStyle = this.color;\r\n \r\n let margin = this.canvasSize.w * this.space;\r\n let length = this.canvasSize.w - margin;\r\n \r\n let maxX = length;\r\n let minX = (this.canvasSize.w - length);\r\n\r\n let lineHight = this.canvasSize.h * this.lineSpace;\r\n let middle = this.canvasSize.h / 2;\r\n let start = middle + (lineHight * this. numberOfLines / 2);\r\n\r\n\r\n for(var i = 0; i < this.numberOfLines; i++){\r\n ctx.beginPath();\r\n ctx.moveTo(minX, start);\r\n ctx.lineTo(maxX, start);\r\n ctx.stroke();\r\n ctx.closePath();\r\n start = start - lineHight;\r\n } \r\n }\r\n\r\n updateNumberOfLines(lines){\r\n this.numberOfLines = lines;\r\n this.signalReady();\r\n }\r\n}\r\n\r\nexport default linesIndicator;","import Annotation from \"./annotation\";\r\n\r\nclass CircleGrid extends Annotation {\r\n constructor() {\r\n super();\r\n\r\n this.color = \"#00b0f0\";\r\n this.lineWidth = 1;\r\n this.scale = 0.70;\r\n this.canvasSize = null;\r\n }\r\n\r\n draw(ctx) {\r\n if (!this.canvasSize) \r\n return;\r\n \r\n ctx.lineWidth = this.lineWidth;\r\n ctx.strokeStyle = this.color;\r\n ctx.fillStyle = this.color;\r\n\r\n let centerX = this.canvasSize.w / 2;\r\n let centerY = this.canvasSize.h / 2;\r\n let radius = (this.canvasSize.h/2 - this.lineWidth) * this.scale;\r\n\r\n ctx.beginPath();\r\n ctx.arc(centerX, centerY, radius, 0, 2 * Math.PI);\r\n ctx.stroke();\r\n ctx.closePath();\r\n }\r\n}\r\n\r\nexport default CircleGrid;","import Annotation from \"./annotation\";\r\n\r\nclass RadialGrid extends Annotation {\r\n constructor() {\r\n super();\r\n\r\n this.color = \"#00b0f0\";\r\n this.lineWidth = 1;\r\n this.scale = 0.70;\r\n this.canvasSize = null;\r\n }\r\n\r\n draw(ctx) {\r\n if (!this.canvasSize) \r\n return;\r\n \r\n ctx.lineWidth = this.lineWidth;\r\n ctx.strokeStyle = this.color;\r\n ctx.fillStyle = this.color;\r\n\r\n let centerX = this.canvasSize.w / 2;\r\n let centerY = this.canvasSize.h / 2;\r\n let radius = (this.canvasSize.h/2 - this.lineWidth) * this.scale;\r\n\r\n for (let i = 0; i <= 360; i += 30) {\r\n let radian = i * Math.PI/180\r\n ctx.beginPath();\r\n ctx.moveTo(centerX, centerY);\r\n ctx.lineTo(centerX + radius * Math.cos(radian), centerY + radius * Math.sin(radian));\r\n ctx.stroke();\r\n ctx.closePath();\r\n }\r\n }\r\n}\r\n\r\nexport default RadialGrid;","import Annotation from \"./annotation\";\r\n\r\nclass RadialCircleGrid extends Annotation {\r\n constructor() {\r\n super();\r\n\r\n this.color = \"#00b0f0\";\r\n this.lineWidth = 1;\r\n this.scale = 0.70;\r\n this.canvasSize = null;\r\n }\r\n\r\n draw(ctx) {\r\n if (!this.canvasSize) \r\n return;\r\n \r\n ctx.lineWidth = this.lineWidth;\r\n ctx.strokeStyle = this.color;\r\n ctx.fillStyle = this.color;\r\n\r\n let centerX = this.canvasSize.w / 2;\r\n let centerY = this.canvasSize.h / 2;\r\n let radius = (this.canvasSize.h/2 - this.lineWidth) * this.scale;\r\n\r\n for (let i = 0; i <= 360; i += 30) {\r\n let radian = i * Math.PI/180\r\n ctx.beginPath();\r\n ctx.moveTo(centerX, centerY);\r\n ctx.lineTo(centerX + radius * Math.cos(radian), centerY + radius * Math.sin(radian));\r\n ctx.stroke();\r\n ctx.closePath();\r\n }\r\n\r\n ctx.beginPath();\r\n ctx.arc(centerX, centerY, radius - 3, 0, 2 * Math.PI);\r\n ctx.stroke();\r\n ctx.closePath();\r\n\r\n ctx.beginPath();\r\n ctx.arc(centerX, centerY, radius + 2, 0, 2 * Math.PI);\r\n ctx.stroke();\r\n ctx.closePath();\r\n\r\n ctx.beginPath();\r\n ctx.arc(centerX, centerY, radius - 8, 0, 2 * Math.PI);\r\n ctx.stroke();\r\n ctx.closePath();\r\n }\r\n}\r\n\r\nexport default RadialCircleGrid;","import Annotation from \"./annotation\";\r\n\r\nclass spectralisRadialSCN extends Annotation {\r\n constructor() {\r\n super();\r\n\r\n this.color = \"#00b0f0\";\r\n this.lineWidth = 1;\r\n this.canvasSize = null;\r\n }\r\n\r\n draw(ctx) {\r\n if (!this.canvasSize) \r\n return;\r\n \r\n ctx.lineWidth = this.lineWidth;\r\n ctx.strokeStyle = this.color;\r\n ctx.fillStyle = this.color;\r\n \r\n let margin = this.canvasSize.w * this.space;\r\n let length = this.canvasSize.w - margin;\r\n \r\n let maxX = length;\r\n let minX = (this.canvasSize.w - length);\r\n\r\n let middle = this.canvasSize.h / 2;\r\n\r\n ctx.beginPath();\r\n ctx.moveTo(minX, middle);\r\n ctx.lineTo(maxX, middle);\r\n ctx.stroke();\r\n ctx.closePath();\r\n }\r\n}\r\n\r\nexport default spectralisRadialSCN;","\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ThumbnailMisc.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ThumbnailMisc.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ThumbnailMisc.vue?vue&type=template&id=29b78ec4&scoped=true&\"\nimport script from \"./ThumbnailMisc.vue?vue&type=script&lang=js&\"\nexport * from \"./ThumbnailMisc.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ThumbnailMisc.vue?vue&type=style&index=0&id=29b78ec4&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"29b78ec4\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VMenu } from 'vuetify/lib/components/VMenu';\ninstallComponents(component, {VList,VListItem,VListItemTitle,VMenu})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{attrs:{\"no-gutters\":\"\",\"justify\":\"center\"}},_vm._l((_vm.colors),function(color,name){return _c('v-col',{key:name,attrs:{\"cols\":\"auto\"}},[_c('slot-button',{attrs:{\"btnClass\":_vm.buttonClass(color),\"fab\":\"\",\"small\":!_vm.xSmall,\"xSmall\":_vm.xSmall,\"btnColor\":color,\"color\":color,\"title\":name},on:{\"click\":function($event){return _vm.$emit('input', color)}}})],1)}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AnnotationColorPicker.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AnnotationColorPicker.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AnnotationColorPicker.vue?vue&type=template&id=1f232a9c&\"\nimport script from \"./AnnotationColorPicker.vue?vue&type=script&lang=js&\"\nexport * from \"./AnnotationColorPicker.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VRow})\n","// to resolve issues with overwritten resize handlers, register components into an array\r\n// registered components will be told to perform resize calculations whenever the window resizes\r\n\r\nimport { limit } from \"../helpers/utils\";\r\nimport Vue from \"vue\";\r\n\r\nconst components = [];\r\n\r\nfunction resetViews() { \r\n Vue.nextTick().then(() => components.forEach(c => c.resetView && c.resetView(c._uid)));\r\n}\r\n\r\nconst limitResetViews = limit(resetViews, 25);\r\n\r\nwindow.addEventListener(\"resize\", limitResetViews);\r\n\r\nexport function registerResize(component) {\r\n if (!components.includes(component)) components.push(component);\r\n}\r\n\r\nexport function clearResize(component) {\r\n let index = components.indexOf(component);\r\n if (index >= 0) components.splice(index, 1);\r\n}","import { registerResize, clearResize } from \"../../helpers/resizeHandler\";\r\nimport { debouncePerKey } from \"../../helpers/utils\";\r\nexport default {\r\n methods: {\r\n // note: in specific view, setup watchers that call resetView\r\n resetView: debouncePerKey(function(){this.updateCanvasSizes();}, 50, false, 0),\r\n // note: in specific view, override updateSizes\r\n updateCanvasSizes(){ }\r\n },\r\n mounted() { \r\n registerResize(this);\r\n },\r\n beforeDestroy() { \r\n clearResize(this);\r\n }\r\n};","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ThicknessMap.vue?vue&type=style&index=0&id=2fb5cd81&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ThicknessMap.vue?vue&type=style&index=0&id=2fb5cd81&lang=scss&scoped=true&\"","import './VSlider.sass'\n\n// Components\nimport VInput from '../VInput'\nimport { VScaleTransition } from '../transitions'\n\n// Mixins\nimport mixins, { ExtractVue } from '../../util/mixins'\nimport Loadable from '../../mixins/loadable'\n\n// Directives\nimport ClickOutside from '../../directives/click-outside'\n\n// Helpers\nimport { addOnceEventListener, deepEqual, keyCodes, createRange, convertToUnit, passiveSupported } from '../../util/helpers'\nimport { consoleWarn } from '../../util/console'\n\n// Types\nimport Vue, { VNode, VNodeChildrenArrayContents, PropType } from 'vue'\nimport { ScopedSlotChildren } from 'vue/types/vnode'\n\ninterface options extends Vue {\n $refs: {\n track: HTMLElement\n }\n}\n\nexport default mixins\n/* eslint-enable indent */\n>(\n VInput,\n Loadable\n/* @vue/component */\n).extend({\n name: 'v-slider',\n\n directives: {\n ClickOutside,\n },\n\n mixins: [Loadable],\n\n props: {\n disabled: Boolean,\n inverseLabel: Boolean,\n max: {\n type: [Number, String],\n default: 100,\n },\n min: {\n type: [Number, String],\n default: 0,\n },\n step: {\n type: [Number, String],\n default: 1,\n },\n thumbColor: String,\n thumbLabel: {\n type: [Boolean, String] as PropType,\n default: undefined,\n validator: v => typeof v === 'boolean' || v === 'always',\n },\n thumbSize: {\n type: [Number, String],\n default: 32,\n },\n tickLabels: {\n type: Array as PropType,\n default: () => ([]),\n },\n ticks: {\n type: [Boolean, String] as PropType,\n default: false,\n validator: v => typeof v === 'boolean' || v === 'always',\n },\n tickSize: {\n type: [Number, String],\n default: 2,\n },\n trackColor: String,\n trackFillColor: String,\n value: [Number, String],\n vertical: Boolean,\n },\n\n data: () => ({\n app: null as any,\n oldValue: null as any,\n keyPressed: 0,\n isFocused: false,\n isActive: false,\n noClick: false, // Prevent click event if dragging took place, hack for #7915\n }),\n\n computed: {\n classes (): object {\n return {\n ...VInput.options.computed.classes.call(this),\n 'v-input__slider': true,\n 'v-input__slider--vertical': this.vertical,\n 'v-input__slider--inverse-label': this.inverseLabel,\n }\n },\n internalValue: {\n get (): number {\n return this.lazyValue\n },\n set (val: number) {\n val = isNaN(val) ? this.minValue : val\n // Round value to ensure the\n // entire slider range can\n // be selected with step\n const value = this.roundValue(Math.min(Math.max(val, this.minValue), this.maxValue))\n\n if (value === this.lazyValue) return\n\n this.lazyValue = value\n\n this.$emit('input', value)\n },\n },\n trackTransition (): string {\n return this.keyPressed >= 2 ? 'none' : ''\n },\n minValue (): number {\n return parseFloat(this.min)\n },\n maxValue (): number {\n return parseFloat(this.max)\n },\n stepNumeric (): number {\n return this.step > 0 ? parseFloat(this.step) : 0\n },\n inputWidth (): number {\n const value = (this.roundValue(this.internalValue) - this.minValue) / (this.maxValue - this.minValue) * 100\n\n return value\n },\n trackFillStyles (): Partial {\n const startDir = this.vertical ? 'bottom' : 'left'\n const endDir = this.vertical ? 'top' : 'right'\n const valueDir = this.vertical ? 'height' : 'width'\n\n const start = this.$vuetify.rtl ? 'auto' : '0'\n const end = this.$vuetify.rtl ? '0' : 'auto'\n const value = this.disabled ? `calc(${this.inputWidth}% - 10px)` : `${this.inputWidth}%`\n\n return {\n transition: this.trackTransition,\n [startDir]: start,\n [endDir]: end,\n [valueDir]: value,\n }\n },\n trackStyles (): Partial {\n const startDir = this.vertical ? this.$vuetify.rtl ? 'bottom' : 'top' : this.$vuetify.rtl ? 'left' : 'right'\n const endDir = this.vertical ? 'height' : 'width'\n\n const start = '0px'\n const end = this.disabled ? `calc(${100 - this.inputWidth}% - 10px)` : `calc(${100 - this.inputWidth}%)`\n\n return {\n transition: this.trackTransition,\n [startDir]: start,\n [endDir]: end,\n }\n },\n showTicks (): boolean {\n return this.tickLabels.length > 0 ||\n !!(!this.disabled && this.stepNumeric && this.ticks)\n },\n numTicks (): number {\n return Math.ceil((this.maxValue - this.minValue) / this.stepNumeric)\n },\n showThumbLabel (): boolean {\n return !this.disabled && !!(\n this.thumbLabel ||\n this.$scopedSlots['thumb-label']\n )\n },\n computedTrackColor (): string | undefined {\n if (this.disabled) return undefined\n if (this.trackColor) return this.trackColor\n if (this.isDark) return this.validationState\n return this.validationState || 'primary lighten-3'\n },\n computedTrackFillColor (): string | undefined {\n if (this.disabled) return undefined\n if (this.trackFillColor) return this.trackFillColor\n return this.validationState || this.computedColor\n },\n computedThumbColor (): string | undefined {\n if (this.thumbColor) return this.thumbColor\n return this.validationState || this.computedColor\n },\n },\n\n watch: {\n min (val) {\n const parsed = parseFloat(val)\n parsed > this.internalValue && this.$emit('input', parsed)\n },\n max (val) {\n const parsed = parseFloat(val)\n parsed < this.internalValue && this.$emit('input', parsed)\n },\n value: {\n handler (v: number) {\n this.internalValue = v\n },\n },\n },\n\n // If done in as immediate in\n // value watcher, causes issues\n // with vue-test-utils\n beforeMount () {\n this.internalValue = this.value\n },\n\n mounted () {\n // Without a v-app, iOS does not work with body selectors\n this.app = document.querySelector('[data-app]') ||\n consoleWarn('Missing v-app or a non-body wrapping element with the [data-app] attribute', this)\n },\n\n methods: {\n genDefaultSlot (): VNodeChildrenArrayContents {\n const children: VNodeChildrenArrayContents = [this.genLabel()]\n const slider = this.genSlider()\n this.inverseLabel\n ? children.unshift(slider)\n : children.push(slider)\n\n children.push(this.genProgress())\n\n return children\n },\n genSlider (): VNode {\n return this.$createElement('div', {\n class: {\n 'v-slider': true,\n 'v-slider--horizontal': !this.vertical,\n 'v-slider--vertical': this.vertical,\n 'v-slider--focused': this.isFocused,\n 'v-slider--active': this.isActive,\n 'v-slider--disabled': this.disabled,\n 'v-slider--readonly': this.readonly,\n ...this.themeClasses,\n },\n directives: [{\n name: 'click-outside',\n value: this.onBlur,\n }],\n on: {\n click: this.onSliderClick,\n },\n }, this.genChildren())\n },\n genChildren (): VNodeChildrenArrayContents {\n return [\n this.genInput(),\n this.genTrackContainer(),\n this.genSteps(),\n this.genThumbContainer(\n this.internalValue,\n this.inputWidth,\n this.isActive,\n this.isFocused,\n this.onThumbMouseDown,\n this.onFocus,\n this.onBlur,\n ),\n ]\n },\n genInput (): VNode {\n return this.$createElement('input', {\n attrs: {\n value: this.internalValue,\n id: this.computedId,\n disabled: this.disabled,\n readonly: true,\n tabindex: -1,\n ...this.$attrs,\n },\n // on: this.genListeners(), // TODO: do we need to attach the listeners to input?\n })\n },\n genTrackContainer (): VNode {\n const children = [\n this.$createElement('div', this.setBackgroundColor(this.computedTrackColor, {\n staticClass: 'v-slider__track-background',\n style: this.trackStyles,\n })),\n this.$createElement('div', this.setBackgroundColor(this.computedTrackFillColor, {\n staticClass: 'v-slider__track-fill',\n style: this.trackFillStyles,\n })),\n ]\n\n return this.$createElement('div', {\n staticClass: 'v-slider__track-container',\n ref: 'track',\n }, children)\n },\n genSteps (): VNode | null {\n if (!this.step || !this.showTicks) return null\n\n const tickSize = parseFloat(this.tickSize)\n const range = createRange(this.numTicks + 1)\n const direction = this.vertical ? 'bottom' : 'left'\n const offsetDirection = this.vertical ? 'right' : 'top'\n\n if (this.vertical) range.reverse()\n\n const ticks = range.map(i => {\n const index = this.$vuetify.rtl ? this.maxValue - i : i\n const children = []\n\n if (this.tickLabels[index]) {\n children.push(this.$createElement('div', {\n staticClass: 'v-slider__tick-label',\n }, this.tickLabels[index]))\n }\n\n const width = i * (100 / this.numTicks)\n const filled = this.$vuetify.rtl ? (100 - this.inputWidth) < width : width < this.inputWidth\n\n return this.$createElement('span', {\n key: i,\n staticClass: 'v-slider__tick',\n class: {\n 'v-slider__tick--filled': filled,\n },\n style: {\n width: `${tickSize}px`,\n height: `${tickSize}px`,\n [direction]: `calc(${width}% - ${tickSize / 2}px)`,\n [offsetDirection]: `calc(50% - ${tickSize / 2}px)`,\n },\n }, children)\n })\n\n return this.$createElement('div', {\n staticClass: 'v-slider__ticks-container',\n class: {\n 'v-slider__ticks-container--always-show': this.ticks === 'always' || this.tickLabels.length > 0,\n },\n }, ticks)\n },\n genThumbContainer (\n value: number,\n valueWidth: number,\n isActive: boolean,\n isFocused: boolean,\n onDrag: Function,\n onFocus: Function,\n onBlur: Function,\n ref = 'thumb'\n ): VNode {\n const children = [this.genThumb()]\n\n const thumbLabelContent = this.genThumbLabelContent(value)\n this.showThumbLabel && children.push(this.genThumbLabel(thumbLabelContent))\n\n return this.$createElement('div', this.setTextColor(this.computedThumbColor, {\n ref,\n staticClass: 'v-slider__thumb-container',\n class: {\n 'v-slider__thumb-container--active': isActive,\n 'v-slider__thumb-container--focused': isFocused,\n 'v-slider__thumb-container--show-label': this.showThumbLabel,\n },\n style: this.getThumbContainerStyles(valueWidth),\n attrs: {\n role: 'slider',\n tabindex: this.disabled || this.readonly ? -1 : this.$attrs.tabindex ? this.$attrs.tabindex : 0,\n 'aria-label': this.label,\n 'aria-valuemin': this.min,\n 'aria-valuemax': this.max,\n 'aria-valuenow': this.internalValue,\n 'aria-readonly': String(this.readonly),\n 'aria-orientation': this.vertical ? 'vertical' : 'horizontal',\n ...this.$attrs,\n },\n on: {\n focus: onFocus,\n blur: onBlur,\n keydown: this.onKeyDown,\n keyup: this.onKeyUp,\n touchstart: onDrag,\n mousedown: onDrag,\n },\n }), children)\n },\n genThumbLabelContent (value: number | string): ScopedSlotChildren {\n return this.$scopedSlots['thumb-label']\n ? this.$scopedSlots['thumb-label']!({ value })\n : [this.$createElement('span', [String(value)])]\n },\n genThumbLabel (content: ScopedSlotChildren): VNode {\n const size = convertToUnit(this.thumbSize)\n\n const transform = this.vertical\n ? `translateY(20%) translateY(${(Number(this.thumbSize) / 3) - 1}px) translateX(55%) rotate(135deg)`\n : `translateY(-20%) translateY(-12px) translateX(-50%) rotate(45deg)`\n\n return this.$createElement(VScaleTransition, {\n props: { origin: 'bottom center' },\n }, [\n this.$createElement('div', {\n staticClass: 'v-slider__thumb-label-container',\n directives: [{\n name: 'show',\n value: this.isFocused || this.isActive || this.thumbLabel === 'always',\n }],\n }, [\n this.$createElement('div', this.setBackgroundColor(this.computedThumbColor, {\n staticClass: 'v-slider__thumb-label',\n style: {\n height: size,\n width: size,\n transform,\n },\n }), [this.$createElement('div', content)]),\n ]),\n ])\n },\n genThumb (): VNode {\n return this.$createElement('div', this.setBackgroundColor(this.computedThumbColor, {\n staticClass: 'v-slider__thumb',\n }))\n },\n getThumbContainerStyles (width: number): object {\n const direction = this.vertical ? 'top' : 'left'\n let value = this.$vuetify.rtl ? 100 - width : width\n value = this.vertical ? 100 - value : value\n\n return {\n transition: this.trackTransition,\n [direction]: `${value}%`,\n }\n },\n onThumbMouseDown (e: MouseEvent) {\n e.preventDefault()\n\n this.oldValue = this.internalValue\n this.keyPressed = 2\n this.isActive = true\n\n const mouseUpOptions = passiveSupported ? { passive: true, capture: true } : true\n const mouseMoveOptions = passiveSupported ? { passive: true } : false\n if ('touches' in e) {\n this.app.addEventListener('touchmove', this.onMouseMove, mouseMoveOptions)\n addOnceEventListener(this.app, 'touchend', this.onSliderMouseUp, mouseUpOptions)\n } else {\n this.app.addEventListener('mousemove', this.onMouseMove, mouseMoveOptions)\n addOnceEventListener(this.app, 'mouseup', this.onSliderMouseUp, mouseUpOptions)\n }\n\n this.$emit('start', this.internalValue)\n },\n onSliderMouseUp (e: Event) {\n e.stopPropagation()\n this.keyPressed = 0\n const mouseMoveOptions = passiveSupported ? { passive: true } : false\n this.app.removeEventListener('touchmove', this.onMouseMove, mouseMoveOptions)\n this.app.removeEventListener('mousemove', this.onMouseMove, mouseMoveOptions)\n\n this.$emit('end', this.internalValue)\n if (!deepEqual(this.oldValue, this.internalValue)) {\n this.$emit('change', this.internalValue)\n this.noClick = true\n }\n\n this.isActive = false\n },\n onMouseMove (e: MouseEvent) {\n const { value } = this.parseMouseMove(e)\n this.internalValue = value\n },\n onKeyDown (e: KeyboardEvent) {\n if (this.disabled || this.readonly) return\n\n const value = this.parseKeyDown(e, this.internalValue)\n\n if (value == null) return\n\n this.internalValue = value\n this.$emit('change', value)\n },\n onKeyUp () {\n this.keyPressed = 0\n },\n onSliderClick (e: MouseEvent) {\n if (this.noClick) {\n this.noClick = false\n return\n }\n const thumb = this.$refs.thumb as HTMLElement\n thumb.focus()\n\n this.onMouseMove(e)\n this.$emit('change', this.internalValue)\n },\n onBlur (e: Event) {\n this.isFocused = false\n\n this.$emit('blur', e)\n },\n onFocus (e: Event) {\n this.isFocused = true\n\n this.$emit('focus', e)\n },\n parseMouseMove (e: MouseEvent) {\n const start = this.vertical ? 'top' : 'left'\n const length = this.vertical ? 'height' : 'width'\n const click = this.vertical ? 'clientY' : 'clientX'\n\n const {\n [start]: trackStart,\n [length]: trackLength,\n } = this.$refs.track.getBoundingClientRect() as any\n const clickOffset = 'touches' in e ? (e as any).touches[0][click] : e[click] // Can we get rid of any here?\n\n // It is possible for left to be NaN, force to number\n let clickPos = Math.min(Math.max((clickOffset - trackStart) / trackLength, 0), 1) || 0\n\n if (this.vertical) clickPos = 1 - clickPos\n if (this.$vuetify.rtl) clickPos = 1 - clickPos\n\n const isInsideTrack = clickOffset >= trackStart && clickOffset <= trackStart + trackLength\n const value = parseFloat(this.min) + clickPos * (this.maxValue - this.minValue)\n\n return { value, isInsideTrack }\n },\n parseKeyDown (e: KeyboardEvent, value: number) {\n if (this.disabled) return\n\n const { pageup, pagedown, end, home, left, right, down, up } = keyCodes\n\n if (![pageup, pagedown, end, home, left, right, down, up].includes(e.keyCode)) return\n\n e.preventDefault()\n const step = this.stepNumeric || 1\n const steps = (this.maxValue - this.minValue) / step\n if ([left, right, down, up].includes(e.keyCode)) {\n this.keyPressed += 1\n\n const increase = this.$vuetify.rtl ? [left, up] : [right, up]\n const direction = increase.includes(e.keyCode) ? 1 : -1\n const multiplier = e.shiftKey ? 3 : (e.ctrlKey ? 2 : 1)\n\n value = value + (direction * step * multiplier)\n } else if (e.keyCode === home) {\n value = this.minValue\n } else if (e.keyCode === end) {\n value = this.maxValue\n } else {\n const direction = e.keyCode === pagedown ? 1 : -1\n value = value - (direction * step * (steps > 100 ? steps / 10 : 10))\n }\n\n return value\n },\n roundValue (value: number): number {\n if (!this.stepNumeric) return value\n // Format input value using the same number\n // of decimals places as in the step prop\n const trimmedStep = this.step.toString().trim()\n const decimals = trimmedStep.indexOf('.') > -1\n ? (trimmedStep.length - trimmedStep.indexOf('.') - 1)\n : 0\n const offset = this.minValue % this.stepNumeric\n\n const newValue = Math.round((value - offset) / this.stepNumeric) * this.stepNumeric + offset\n\n return parseFloat(Math.min(newValue, this.maxValue).toFixed(decimals))\n },\n },\n})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('canvas',{ref:\"canvas\",staticClass:\"escalon-absolute-center\"})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CanvasBase.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CanvasBase.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CanvasBase.vue?vue&type=template&id=c4181516&\"\nimport script from \"./CanvasBase.vue?vue&type=script&lang=js&\"\nexport * from \"./CanvasBase.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OCTComparisonToolbar.vue?vue&type=style&index=0&id=007a3b72&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OCTComparisonToolbar.vue?vue&type=style&index=0&id=007a3b72&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('circle-image-button',{attrs:{\"image\":_vm.image,\"active\":_vm.active,\"title\":_vm.title,\"size\":_vm.size,\"btnClass\":'primary ' + _vm.colorClass},on:{\"click\":function($event){return _vm.$emit('toggleGrayscaleMode')}}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GrayscaleModeButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GrayscaleModeButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GrayscaleModeButton.vue?vue&type=template&id=356967b1&\"\nimport script from \"./GrayscaleModeButton.vue?vue&type=script&lang=js&\"\nexport * from \"./GrayscaleModeButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","// Styles\nimport './VAutocomplete.sass'\n\n// Extensions\nimport VSelect, { defaultMenuProps as VSelectMenuProps } from '../VSelect/VSelect'\nimport VTextField from '../VTextField/VTextField'\n\n// Utilities\nimport { keyCodes } from '../../util/helpers'\n\n// Types\nimport { PropType } from 'vue'\n\nconst defaultMenuProps = {\n ...VSelectMenuProps,\n offsetY: true,\n offsetOverflow: true,\n transition: false,\n}\n\n/* @vue/component */\nexport default VSelect.extend({\n name: 'v-autocomplete',\n\n props: {\n allowOverflow: {\n type: Boolean,\n default: true,\n },\n autoSelectFirst: {\n type: Boolean,\n default: false,\n },\n filter: {\n type: Function,\n default: (item: any, queryText: string, itemText: string) => {\n return itemText.toLocaleLowerCase().indexOf(queryText.toLocaleLowerCase()) > -1\n },\n },\n hideNoData: Boolean,\n menuProps: {\n type: VSelect.options.props.menuProps.type,\n default: () => defaultMenuProps,\n },\n noFilter: Boolean,\n searchInput: {\n type: String as PropType,\n default: undefined,\n },\n },\n\n data () {\n return {\n lazySearch: this.searchInput,\n }\n },\n\n computed: {\n classes (): object {\n return {\n ...VSelect.options.computed.classes.call(this),\n 'v-autocomplete': true,\n 'v-autocomplete--is-selecting-index': this.selectedIndex > -1,\n }\n },\n computedItems (): object[] {\n return this.filteredItems\n },\n selectedValues (): object[] {\n return this.selectedItems.map(item => this.getValue(item))\n },\n hasDisplayedItems (): boolean {\n return this.hideSelected\n ? this.filteredItems.some(item => !this.hasItem(item))\n : this.filteredItems.length > 0\n },\n currentRange (): number {\n if (this.selectedItem == null) return 0\n\n return String(this.getText(this.selectedItem)).length\n },\n filteredItems (): object[] {\n if (!this.isSearching || this.noFilter || this.internalSearch == null) return this.allItems\n\n return this.allItems.filter(item => this.filter(item, String(this.internalSearch), String(this.getText(item))))\n },\n internalSearch: {\n get (): string | undefined {\n return this.lazySearch\n },\n set (val: any) {\n this.lazySearch = val\n\n this.$emit('update:search-input', val)\n },\n },\n isAnyValueAllowed (): boolean {\n return false\n },\n isDirty (): boolean {\n return this.searchIsDirty || this.selectedItems.length > 0\n },\n isSearching (): boolean {\n return (\n this.multiple &&\n this.searchIsDirty\n ) || (\n this.searchIsDirty &&\n this.internalSearch !== this.getText(this.selectedItem)\n )\n },\n menuCanShow (): boolean {\n if (!this.isFocused) return false\n\n return this.hasDisplayedItems || !this.hideNoData\n },\n $_menuProps (): object {\n const props = VSelect.options.computed.$_menuProps.call(this);\n (props as any).contentClass = `v-autocomplete__content ${(props as any).contentClass || ''}`.trim()\n return {\n ...defaultMenuProps,\n ...props,\n }\n },\n searchIsDirty (): boolean {\n return this.internalSearch != null &&\n this.internalSearch !== ''\n },\n selectedItem (): any {\n if (this.multiple) return null\n\n return this.selectedItems.find(i => {\n return this.valueComparator(this.getValue(i), this.getValue(this.internalValue))\n })\n },\n listData () {\n const data = VSelect.options.computed.listData.call(this) as any\n\n data.props = {\n ...data.props,\n items: this.virtualizedItems,\n noFilter: (\n this.noFilter ||\n !this.isSearching ||\n !this.filteredItems.length\n ),\n searchInput: this.internalSearch,\n }\n\n return data\n },\n },\n\n watch: {\n filteredItems: 'onFilteredItemsChanged',\n internalValue: 'setSearch',\n isFocused (val) {\n if (val) {\n document.addEventListener('copy', this.onCopy)\n this.$refs.input && this.$refs.input.select()\n } else {\n document.removeEventListener('copy', this.onCopy)\n this.updateSelf()\n }\n },\n isMenuActive (val) {\n if (val || !this.hasSlot) return\n\n this.lazySearch = undefined\n },\n items (val, oldVal) {\n // If we are focused, the menu\n // is not active, hide no data is enabled,\n // and items change\n // User is probably async loading\n // items, try to activate the menu\n if (\n !(oldVal && oldVal.length) &&\n this.hideNoData &&\n this.isFocused &&\n !this.isMenuActive &&\n val.length\n ) this.activateMenu()\n },\n searchInput (val: string) {\n this.lazySearch = val\n },\n internalSearch: 'onInternalSearchChanged',\n itemText: 'updateSelf',\n },\n\n created () {\n this.setSearch()\n },\n\n methods: {\n onFilteredItemsChanged (val: never[], oldVal: never[]) {\n // TODO: How is the watcher triggered\n // for duplicate items? no idea\n if (val === oldVal) return\n\n this.setMenuIndex(-1)\n\n this.$nextTick(() => {\n if (\n !this.internalSearch ||\n (val.length !== 1 &&\n !this.autoSelectFirst)\n ) return\n\n this.$refs.menu.getTiles()\n this.setMenuIndex(0)\n })\n },\n onInternalSearchChanged () {\n this.updateMenuDimensions()\n },\n updateMenuDimensions () {\n // Type from menuable is not making it through\n this.isMenuActive && this.$refs.menu && this.$refs.menu.updateDimensions()\n },\n changeSelectedIndex (keyCode: number) {\n // Do not allow changing of selectedIndex\n // when search is dirty\n if (this.searchIsDirty) return\n\n if (this.multiple && keyCode === keyCodes.left) {\n if (this.selectedIndex === -1) {\n this.selectedIndex = this.selectedItems.length - 1\n } else {\n this.selectedIndex--\n }\n } else if (this.multiple && keyCode === keyCodes.right) {\n if (this.selectedIndex >= this.selectedItems.length - 1) {\n this.selectedIndex = -1\n } else {\n this.selectedIndex++\n }\n } else if (keyCode === keyCodes.backspace || keyCode === keyCodes.delete) {\n this.deleteCurrentItem()\n }\n },\n deleteCurrentItem () {\n if (this.readonly) return\n\n const index = this.selectedItems.length - 1\n\n if (this.selectedIndex === -1 && index !== 0) {\n this.selectedIndex = index\n return\n }\n\n const currentItem = this.selectedItems[this.selectedIndex]\n\n if (this.getDisabled(currentItem)) return\n\n const newIndex = this.selectedIndex === index\n ? this.selectedIndex - 1\n : this.selectedItems[this.selectedIndex + 1]\n ? this.selectedIndex\n : -1\n\n if (newIndex === -1) {\n this.setValue(this.multiple ? [] : undefined)\n } else {\n this.selectItem(currentItem)\n }\n\n this.selectedIndex = newIndex\n },\n clearableCallback () {\n this.internalSearch = undefined\n\n VSelect.options.methods.clearableCallback.call(this)\n },\n genInput () {\n const input = VTextField.options.methods.genInput.call(this)\n\n input.data = input.data || {}\n input.data.attrs = input.data.attrs || {}\n input.data.attrs.autocomplete = input.data.attrs.autocomplete || 'off'\n\n input.data.domProps = input.data.domProps || {}\n input.data.domProps.value = this.internalSearch\n\n return input\n },\n genInputSlot () {\n const slot = VSelect.options.methods.genInputSlot.call(this)\n\n slot.data!.attrs!.role = 'combobox'\n\n return slot\n },\n genSelections () {\n return this.hasSlot || this.multiple\n ? VSelect.options.methods.genSelections.call(this)\n : []\n },\n onClick () {\n if (this.isDisabled) return\n\n this.selectedIndex > -1\n ? (this.selectedIndex = -1)\n : this.onFocus()\n\n this.activateMenu()\n },\n onInput (e: Event) {\n if (\n this.selectedIndex > -1 ||\n !e.target\n ) return\n\n const target = e.target as HTMLInputElement\n const value = target.value\n\n // If typing and menu is not currently active\n if (target.value) this.activateMenu()\n\n this.internalSearch = value\n this.badInput = target.validity && target.validity.badInput\n },\n onKeyDown (e: KeyboardEvent) {\n const keyCode = e.keyCode\n\n VSelect.options.methods.onKeyDown.call(this, e)\n\n // The ordering is important here\n // allows new value to be updated\n // and then moves the index to the\n // proper location\n this.changeSelectedIndex(keyCode)\n },\n onSpaceDown (e: KeyboardEvent) { /* noop */ },\n onTabDown (e: KeyboardEvent) {\n VSelect.options.methods.onTabDown.call(this, e)\n this.updateSelf()\n },\n onUpDown () {\n // For autocomplete / combobox, cycling\n // interfers with native up/down behavior\n // instead activate the menu\n this.activateMenu()\n },\n selectItem (item: object) {\n VSelect.options.methods.selectItem.call(this, item)\n this.setSearch()\n },\n setSelectedItems () {\n VSelect.options.methods.setSelectedItems.call(this)\n\n // #4273 Don't replace if searching\n // #4403 Don't replace if focused\n if (!this.isFocused) this.setSearch()\n },\n setSearch () {\n // Wait for nextTick so selectedItem\n // has had time to update\n this.$nextTick(() => {\n if (\n !this.multiple ||\n !this.internalSearch ||\n !this.isMenuActive\n ) {\n this.internalSearch = (\n !this.selectedItems.length ||\n this.multiple ||\n this.hasSlot\n )\n ? null\n : this.getText(this.selectedItem)\n }\n })\n },\n updateSelf () {\n if (!this.searchIsDirty &&\n !this.internalValue\n ) return\n\n if (!this.valueComparator(\n this.internalSearch,\n this.getValue(this.internalValue)\n )) {\n this.setSearch()\n }\n },\n hasItem (item: any) {\n return this.selectedValues.indexOf(this.getValue(item)) > -1\n },\n onCopy (event: ClipboardEvent) {\n if (this.selectedIndex === -1) return\n\n const currentItem = this.selectedItems[this.selectedIndex]\n const currentItemText = this.getText(currentItem)\n event.clipboardData!.setData('text/plain', currentItemText)\n event.clipboardData!.setData('text/vnd.vuetify.autocomplete.item+plain', currentItemText)\n event.preventDefault()\n },\n },\n})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-slider',{staticClass:\"reset-slider\",attrs:{\"value\":_vm.value,\"always-dirty\":\"\",\"track-color\":\"#7f7f7f\",\"color\":_vm.color,\"min\":_vm.min,\"max\":_vm.max,\"step\":_vm.step},on:{\"input\":_vm.emitInput,\"change\":function($event){return _vm.$emit('change', $event)}}},[_c('template',{slot:\"prepend\"},[_c('span',{staticClass:\"slider-label\"},[_vm._v(_vm._s(_vm.name))])]),_c('template',{slot:\"append\"},[_c('circle-image-button',{attrs:{\"size\":\"xSmall\",\"title\":\"Reset to Default\",\"btnClass\":\"primary\",\"image\":_vm.coloredAssetUrls.reset},on:{\"click\":_vm.reset}})],1)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetSlider.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ResetSlider.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ResetSlider.vue?vue&type=template&id=5b47d58a&\"\nimport script from \"./ResetSlider.vue?vue&type=script&lang=js&\"\nexport * from \"./ResetSlider.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VSlider } from 'vuetify/lib/components/VSlider';\ninstallComponents(component, {VSlider})\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Thumbnail.vue?vue&type=style&index=0&id=ffefc59a&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Thumbnail.vue?vue&type=style&index=0&id=ffefc59a&lang=scss&scoped=true&\"","import store from \"./../../store\";\r\nimport { THUMBNAIL_ANNOTATION_TYPE } from \"../../config/config\";\r\n\r\nexport default {\r\n computed: {\r\n isCirrusReference(){\r\n let exam = store.getters.examBySrNo(this.image.exSrNo);\r\n if (!exam) return false;\r\n \r\n let device = store.getters.devices.find(d => d.devSrNo == exam.devSrNo);\r\n let description = device.description.toLowerCase();\r\n return this.isCirrus && this.image.imgSubType==\"reference\" && (description.includes(\"oct\") || description.includes(\"scans\"));\r\n },\r\n isSpectralisSLO(){\r\n return (this.image.exDevice.toLowerCase().includes(\"spectralis\") && this.image.imgType == \"IMAGE-SLO\");\r\n },\r\n showDropdown(){\r\n return this.isCirrusReference || this.isSpectralisSLO; \r\n },\r\n thumbnailAnnotation(){\r\n if(this.image.exDevice.toLowerCase().includes(\"spectralis\") && this.image.imgType == \"IMAGE-SLO\" && this.image.imgGroup.toLowerCase().includes(\"radialcircles\")){\r\n return THUMBNAIL_ANNOTATION_TYPE.spectralisRadialCircle;\r\n }\r\n else if(this.image.exDevice.toLowerCase().includes(\"spectralis\") && this.image.imgType == \"IMAGE-SLO\" && this.image.imgGroup.toLowerCase().includes(\"circle\")){\r\n return THUMBNAIL_ANNOTATION_TYPE.spectralisCircle;\r\n }\r\n else if(this.image.exDevice.toLowerCase().includes(\"spectralis\") && this.image.imgType == \"IMAGE-SLO\" && (this.image.imgGroup.toLowerCase().includes(\"volume\") || this.image.imgGroup.toLowerCase().includes(\"cube\"))){\r\n return THUMBNAIL_ANNOTATION_TYPE.spectralisVolume;\r\n }\r\n else if(this.image.exDevice.toLowerCase().includes(\"spectralis\") && this.image.imgType == \"IMAGE-SLO\" && this.image.imgGroup.toLowerCase().includes(\"star\")){\r\n return THUMBNAIL_ANNOTATION_TYPE.spectralisRadial;\r\n }\r\n else if(this.image.exDevice.toLowerCase().includes(\"spectralis\") && this.image.imgType == \"IMAGE-SCN\" && this.image.imgGroup.toLowerCase().includes(\"star\")){\r\n return THUMBNAIL_ANNOTATION_TYPE.spectralisRadialSCN;\r\n }\r\n else if(this.isCirrusReference && this.image.imgData.toLowerCase().includes(\"macular\")){\r\n return THUMBNAIL_ANNOTATION_TYPE.cirrusReferenceMacular;\r\n }\r\n else if(this.isCirrusReference && this.image.imgData.toLowerCase().includes(\"raster\")){\r\n return THUMBNAIL_ANNOTATION_TYPE.cirrusReferenceRaster;\r\n }\r\n else if(this.isCirrusReference && this.image.imgData.toLowerCase().includes(\"optic disc\")){\r\n return THUMBNAIL_ANNOTATION_TYPE.cirrusReferenceOpticDisc;\r\n }\r\n else if(this.image.exDevice.toLowerCase().includes(\"spectralis\") && this.image.imgType == \"IMAGE-SLO\" && this.image.imgGroup.toLowerCase().includes(\"section\")){\r\n return THUMBNAIL_ANNOTATION_TYPE.spectralisSection;\r\n }\r\n return null;\r\n },\r\n \r\n /* isSpectralisCircle(){\r\n return (this.image.exDevice.toLowerCase().includes(\"spectralis\") && this.image.imgType == \"IMAGE-SLO\" && this.image.imgGroup.toLowerCase().includes(\"circle\"));\r\n },\r\n isSpectralisVolume(){\r\n return (this.image.exDevice.toLowerCase().includes(\"spectralis\") && this.image.imgType == \"IMAGE-SLO\" && this.image.imgGroup.toLowerCase().includes(\"volume\"));\r\n },\r\n isSpectralisRadial(){\r\n return (this.image.exDevice.toLowerCase().includes(\"spectralis\") && this.image.imgType == \"IMAGE-SLO\" && this.image.imgGroup.toLowerCase().includes(\"star\"));\r\n },*/\r\n /* isSpectralisRadialSCN(){\r\n return (this.image.exDevice.toLowerCase().includes(\"spectralis\") && this.image.imgType == \"IMAGE-SCN\" && this.image.imgGroup.toLowerCase().includes(\"star\"));\r\n },*/\r\n \r\n /* cirrusReferenceMacular(){\r\n return this.isCirrusReference && this.image.imgData.toLowerCase().includes(\"macular\");\r\n },*/\r\n /* cirrusReferenceRaster(){\r\n return this.isCirrusReference && this.image.imgData.toLowerCase().includes(\"raster\");\r\n },*/ \r\n showMisc(){\r\n return this.showDropdown || this.cirrusReferenceMacular || this.cirrusReferenceRaster;\r\n }, \r\n }\r\n}","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:_vm.drawerClass,on:{\"mouseenter\":_vm.openDrawer,\"mouseleave\":_vm.closeDrawer}},[(_vm.drawer)?_c('v-btn',{staticClass:\"drawer-open-button\",attrs:{\"text\":\"\"},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.closeDrawer($event)}}},[_c('v-icon',{attrs:{\"color\":_vm.colorHex}},[_vm._v(\"fas fa-caret-right\")])],1):_c('v-btn',{staticClass:\"drawer-open-button\",attrs:{\"text\":\"\"},on:{\"click\":function($event){$event.stopPropagation();$event.preventDefault();return _vm.openDrawer($event)}}},[_c('v-icon',{attrs:{\"color\":_vm.colorHex}},[_vm._v(\"fas fa-caret-left\")])],1),_c('v-list',_vm._l((_vm.images),function(image,index){return _c('v-list-item',{key:image.imgKey,class:_vm.tileClass(image),on:{\"click\":function($event){return _vm.selectImage(index)}}},[_c('v-list-item-content',[_c('thumbnail',{attrs:{\"image\":image,\"index\":index}})],1)],1)}),1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageDrawer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageDrawer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImageDrawer.vue?vue&type=template&id=5282a0ec&\"\nimport script from \"./ImageDrawer.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageDrawer.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemContent } from 'vuetify/lib/components/VList';\ninstallComponents(component, {VBtn,VIcon,VList,VListItem,VListItemContent})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-toolbar',{staticClass:\"escalon-dialog-header primary\",style:(_vm.borderStyle),attrs:{\"height\":\"35\"}},[_c('img',{staticClass:\"modal-axis-logo mr-2\",attrs:{\"src\":require('../../assets/' + _vm.coloredLogo)}}),_c('span',[_vm._v(_vm._s(_vm.browserName))]),_c('v-spacer'),_c('span',[_vm._v(_vm._s(_vm.patientHeader))]),_c('v-spacer'),_c('close-button',{on:{\"click\":function($event){return _vm.$emit('closeModal')}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageBrowserHeader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageBrowserHeader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImageBrowserHeader.vue?vue&type=template&id=2ce64a5c&\"\nimport script from \"./ImageBrowserHeader.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageBrowserHeader.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VToolbar } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VSpacer,VToolbar})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{staticClass:\"image-browser-body escalon-absolute-cover\",class:{'is-annotating': _vm.isAnnotating},style:(_vm.ieStyle),attrs:{\"column\":\"\"}},[_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"sidebar-controls secondary\",style:(_vm.borderStyle)},[_c('top-annotation-controls',{attrs:{\"context\":this.imageBrowserContext}})],1),_c('v-col',{staticClass:\"main-side-controls secondary\",style:(_vm.borderStyle)},[(_vm.showPlaybackToolbar)?_c('image-playback-toolbar'):_vm._e()],1)],1)],1),_c('v-flex',{staticClass:\"absolute-cover-wrapper\"},[_c('v-row',{staticClass:\"escalon-absolute-cover\",attrs:{\"no-gutters\":\"\"}},[(_vm.isAnnotating)?_c('v-col',{staticClass:\"sidebar-controls all-controls tall-content-wrapper secondary\",style:(_vm.borderStyle)},[(_vm.canAnnotate)?_c('image-annotation-controls',{attrs:{\"zoomControlSize\":_vm.zoomControlSize,\"zoomControlFit\":_vm.zoomControlFit,\"mainViewCanvasSize\":_vm.largeViewSize,\"transform\":_vm.transform},on:{\"updateZoom\":_vm.updateZoom,\"zoomToFit\":_vm.zoomToFit,\"updateCenter\":_vm.updateCenter,\"stopFitZoom\":_vm.stopFitZoom}}):_vm._e(),(_vm.deepDeeAIEnabled)?_c('image-deep-dee-controls'):_vm._e(),(_vm.showMeasurementSection && _vm.canAnnotate)?_c('image-measurement-controls',{attrs:{\"context\":_vm.context}}):_vm._e()],1):_vm._e(),_c('v-col',{staticClass:\"main-side-controls main-view-wrapper tall-content-wrapper\"},[_c('main-image-view',{attrs:{\"largeViewSize\":_vm.largeViewSize,\"largeViewFit\":_vm.largeViewFit,\"rgbSize\":_vm.rgbSize,\"rgbFit\":_vm.rgbFit,\"transform\":_vm.transform,\"realLocation\":_vm.realLocation,\"isInBounds\":_vm.isInBounds,\"imgOffset\":_vm.imgOffset},on:{\"panBy\":_vm.panBy}}),(_vm.showImageDrawer)?_c('image-drawer'):_vm._e()],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{attrs:{\"no-gutters\":\"\",\"justify\":\"center\"}},[(_vm.canAnnotate)?_c('circle-image-button',{attrs:{\"active\":_vm.isAnnotating,\"image\":_vm.coloredAssetUrls.annotate,\"title\":\"Annotate Image\",\"btnClass\":\"primary\"},on:{\"click\":function($event){return _vm.$store.commit('toggleIsAnnotating')}}}):_vm._e(),(_vm.canDownload && !_vm.userIsViewOnly)?_c('circle-image-button',{attrs:{\"image\":_vm.coloredAssetUrls.download,\"btnClass\":\"primary\",\"title\":\"Download Image With Layers\"},on:{\"click\":function($event){return _vm.downloadImage()}}}):_vm._e(),(!_vm.userIsViewOnly)?_c('circle-image-button',{attrs:{\"title\":\"Print Image\",\"image\":_vm.coloredAssetUrls.print,\"btnClass\":\"primary\"},on:{\"click\":function($event){return _vm.openPrintPreview([_vm.currentBrowserImage])}}}):_vm._e(),((!_vm.ssoEmrPro || _vm.enableSavingWithEmrPro) && _vm.isAnnotating && _vm.canAnnotate && !_vm.userIsViewOnly)?_c('circle-image-button',{attrs:{\"title\":\"Save Image With Layers\",\"btnClass\":\"primary\",\"image\":_vm.coloredAssetUrls.save},on:{\"click\":_vm.saveImage}}):_vm._e(),(_vm.isAnnotating && _vm.canAnnotate)?_c('circle-image-button',{attrs:{\"title\":\"Reset Image\",\"image\":_vm.coloredAssetUrls.reset,\"btnClass\":\"primary\"},on:{\"click\":_vm.resetImage}}):_vm._e(),(_vm.isAnnotating && _vm.canAnnotate)?_c('circle-image-button',{attrs:{\"title\":\"Clear All Annotations\",\"image\":_vm.coloredAssetUrls.clear,\"btnClass\":\"primary\"},on:{\"click\":function($event){return _vm.clearAnnotations()}}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TopAnnotationControls.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TopAnnotationControls.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./TopAnnotationControls.vue?vue&type=template&id=23915029&\"\nimport script from \"./TopAnnotationControls.vue?vue&type=script&lang=js&\"\nexport * from \"./TopAnnotationControls.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"annotation-controls\"},[_c('image-browser-zoom-control',{attrs:{\"imgNotFound\":_vm.imgNotFound,\"img\":_vm.displayImgObject,\"imgIsLoading\":_vm.imgIsLoading,\"transform\":_vm.transform,\"isFlipped\":_vm.isFlipped,\"isFlipped90\":_vm.isFlipped90,\"size\":_vm.zoomControlSize,\"fit\":_vm.zoomControlFit,\"height\":_vm.zoomControlHeight,\"mainViewCanvasSize\":_vm.mainViewCanvasSize},on:{\"updateZoom\":function($event){return _vm.$emit('updateZoom', $event)},\"updateCenter\":function($event){return _vm.$emit('updateCenter', $event)},\"stopFitZoom\":function($event){return _vm.$emit('stopFitZoom')}}}),_c('v-row',{attrs:{\"no-gutters\":\"\",\"justify\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('annotation-mode-button',{attrs:{\"image\":_vm.coloredAssetUrls.erase,\"activeImage\":_vm.activeAnnotationIcons.erase,\"title\":\"Delete Annotation(s)\",\"buttonMode\":_vm.annotationModes.Delete,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.Delete)}}})],1),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('annotation-mode-button',{attrs:{\"image\":_vm.coloredAssetUrls.magnify,\"activeImage\":_vm.activeAnnotationIcons.magnify,\"title\":\"Magnify\",\"buttonMode\":_vm.annotationModes.Magnify,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.Magnify)}}})],1),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('circle-image-button',{attrs:{\"active\":_vm.isFlipped,\"image\":_vm.flipIcon,\"title\":\"Indirect View (180°)\",\"btnClass\":\"primary\"},on:{\"click\":function($event){return _vm.toggleFlipped()}}})],1),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('circle-image-button',{attrs:{\"active\":_vm.isFlipped90,\"image\":_vm.flip90Icon,\"title\":\"90° Rotation\",\"btnClass\":\"primary\"},on:{\"click\":function($event){return _vm.toggleFlipped90()}}})],1),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('circle-image-button',{attrs:{\"title\":\"Fit Image in Window\",\"image\":_vm.coloredAssetUrls.fitToWindow,\"btnClass\":\"primary\"},on:{\"click\":function($event){return _vm.$emit('zoomToFit')}}})],1),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('circle-slot-button',{attrs:{\"title\":\"Scale Image to Original Size\",\"btnClass\":'primary ' + _vm.colorClass},on:{\"click\":function($event){_vm.$emit('stopFitZoom'); _vm.$emit('updateZoom', 1);}}},[_vm._v(\"1:1\")])],1),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('grayscale-mode-button',{attrs:{\"image\":\"red-icon.png\",\"title\":\"Red\",\"fab\":true,\"grayscaleMode\":_vm.grayscaleModes.Red,\"selectedGrayscaleMode\":_vm.grayscaleMode},on:{\"toggleGrayscaleMode\":function($event){return _vm.toggleGrayscaleMode(_vm.grayscaleModes.Red)}}})],1),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('grayscale-mode-button',{attrs:{\"image\":\"green-icon.png\",\"title\":\"Green\",\"fab\":true,\"grayscaleMode\":_vm.grayscaleModes.Green,\"selectedGrayscaleMode\":_vm.grayscaleMode},on:{\"toggleGrayscaleMode\":function($event){return _vm.toggleGrayscaleMode(_vm.grayscaleModes.Green)}}})],1),(!_vm.isOptos)?_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('grayscale-mode-button',{attrs:{\"image\":\"blue-icon.png\",\"title\":\"Blue\",\"fab\":true,\"grayscaleMode\":_vm.grayscaleModes.Blue,\"selectedGrayscaleMode\":_vm.grayscaleMode},on:{\"toggleGrayscaleMode\":function($event){return _vm.toggleGrayscaleMode(_vm.grayscaleModes.Blue)}}})],1):_vm._e(),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('grayscale-mode-button',{attrs:{\"image\":\"bw-circle-icon.png\",\"title\":\"Monochrome\",\"fab\":true,\"grayscaleMode\":_vm.grayscaleModes.REC709,\"selectedGrayscaleMode\":_vm.grayscaleMode},on:{\"toggleGrayscaleMode\":function($event){return _vm.toggleGrayscaleMode(_vm.grayscaleModes.REC709)}}})],1),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('circle-image-button',{attrs:{\"btnClass\":\"primary\",\"active\":_vm.rgbView,\"title\":_vm.rgbButtonTitle,\"image\":_vm.rgbButtonImage},on:{\"click\":function($event){return _vm.toggleRGB()}}})],1),(_vm.rgbView)?_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('circle-slot-button',{attrs:{\"active\":_vm.rgbSync,\"title\":_vm.rgbSyncButtonTitle,\"text\":\"\",\"btnClass\":'primary ' + _vm.colorClass},on:{\"click\":function($event){return _vm.toggleRGBSync()}}},[_vm._v(\"Sync\")])],1):_vm._e(),_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('circle-image-button',{attrs:{\"active\":_vm.isDragLock,\"image\":_vm.dragIcon,\"title\":\"Drag\",\"btnClass\":\"primary\"},on:{\"click\":function($event){return _vm.dragButtonClick()}}})],1)],1),_c('reset-slider',{attrs:{\"value\":_vm.brightness,\"color\":_vm.colorHex,\"min\":-0.5,\"max\":0.5,\"step\":0.05,\"defaultValue\":_vm.defaultBrightness,\"name\":\"Brightness\",\"limit\":true},on:{\"input\":function($event){return _vm.updateBrightness($event)}}}),_c('reset-slider',{attrs:{\"value\":_vm.contrast,\"color\":_vm.colorHex,\"min\":0.5,\"max\":1.5,\"step\":0.05,\"defaultValue\":_vm.defaultContrast,\"name\":\"Contrast\",\"limit\":true},on:{\"input\":function($event){return _vm.updateContrast($event)}}}),_c('reset-slider',{attrs:{\"value\":_vm.gamma,\"color\":_vm.colorHex,\"min\":0.1,\"max\":1.9,\"step\":0.05,\"defaultValue\":_vm.defaultGamma,\"name\":\"Gamma\",\"limit\":true},on:{\"input\":function($event){return _vm.updateGamma($event)}}}),(_vm.isOptos && _vm.rgbView)?_c('v-layout',[_c('v-flex',{staticClass:\"green-label\",staticStyle:{\"text-align\":\"center\"},attrs:{\"md6\":\"\"}},[_vm._v(\"Green Channel\")]),_c('v-flex',{staticStyle:{\"text-align\":\"center\"},attrs:{\"md6\":\"\"}},[_c('circle-slot-button',{attrs:{\"active\":_vm.greenSync,\"title\":\"Sync Green Channel\",\"btnClass\":'primary ' + _vm.colorClass,\"text\":\"\"},on:{\"click\":function($event){return _vm.toggleGreenSync()}}},[_vm._v(\"Sync\")])],1)],1):_vm._e(),(_vm.isOptos && _vm.rgbView)?_c('reset-slider',{staticClass:\"green-slider\",attrs:{\"color\":_vm.colorHex,\"value\":_vm.greenBrightness,\"min\":-0.5,\"max\":0.5,\"step\":0.05,\"defaultValue\":_vm.defaultBrightness,\"name\":\"Brightness\",\"limit\":true},on:{\"input\":function($event){return _vm.updateGreenBrightness($event)}}}):_vm._e(),(_vm.isOptos && _vm.rgbView)?_c('reset-slider',{staticClass:\"green-slider\",attrs:{\"color\":_vm.colorHex,\"value\":_vm.greenContrast,\"min\":0.5,\"max\":1.5,\"step\":0.05,\"defaultValue\":_vm.defaultContrast,\"name\":\"Contrast\",\"limit\":true},on:{\"input\":function($event){return _vm.updateGreenContrast($event)}}}):_vm._e(),_c('v-row',{attrs:{\"no-gutters\":\"\",\"justify\":\"center\"}},[_c('v-col',{attrs:{\"no-gutters\":\"\",\"cols\":\"6\"}},[_c('annotation-mode-button',{attrs:{\"image\":this.coloredAssetUrls.arrow,\"activeImage\":_vm.activeAnnotationIcons.arrow,\"title\":\"Arrow\",\"buttonMode\":_vm.annotationModes.Arrow,\"disabled\":_vm.disableAnnotationButtons,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.Arrow)}}}),_c('annotation-mode-button',{attrs:{\"image\":this.coloredAssetUrls.text,\"activeImage\":_vm.activeAnnotationIcons.text,\"title\":\"Text\",\"buttonMode\":_vm.annotationModes.Text,\"disabled\":_vm.disableAnnotationButtons,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.Text)}}}),_c('annotation-mode-button',{attrs:{\"image\":this.coloredAssetUrls.redacted,\"activeImage\":_vm.activeAnnotationIcons.redacted,\"title\":\"Redaction\",\"buttonMode\":_vm.annotationModes.Redact,\"disabled\":_vm.disableAnnotationButtons,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.Redact)}}}),_c('annotation-mode-button',{attrs:{\"image\":this.coloredAssetUrls.outlined,\"activeImage\":_vm.activeAnnotationIcons.outlined,\"title\":\"Outline Box\",\"buttonMode\":_vm.annotationModes.Outline,\"disabled\":_vm.disableAnnotationButtons,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.Outline)}}}),_c('annotation-mode-button',{attrs:{\"image\":this.coloredAssetUrls.freehand,\"activeImage\":_vm.activeAnnotationIcons.freehand,\"title\":\"Free Hand Tool\",\"buttonMode\":_vm.annotationModes.FreeHandLine,\"disabled\":_vm.disableAnnotationButtons,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.FreeHandLine)}}}),_c('annotation-mode-button',{attrs:{\"image\":this.coloredAssetUrls.continuous,\"activeImage\":_vm.activeAnnotationIcons.continuous,\"title\":\"Continuous Draw\",\"buttonMode\":_vm.annotationModes.ContinuousDraw,\"disabled\":_vm.disableAnnotationButtons,\"annotationMode\":_vm.annotationMode,\"activeAnnotation\":_vm.activeAnnotation},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.ContinuousDraw)}}}),_c('annotation-mode-button',{attrs:{\"image\":this.coloredAssetUrls.angle,\"activeImage\":_vm.activeAnnotationIcons.angle,\"title\":\"Angle\",\"buttonMode\":_vm.annotationModes.Angle,\"disabled\":_vm.disableAnnotationButtons,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.Angle)}}})],1),_c('v-col',{attrs:{\"cols\":\"2.5\"}},[_c('label',{staticClass:\"annotation-label\"},[_vm._v(\"Shape Outline\")]),_c('label',{staticClass:\"annotation-label\"},[_vm._v(\"Font Size\")])]),_c('v-col',{attrs:{\"cols\":\"3.5\"}},[_c('div',{staticClass:\"mb-1\"},[_c('circle-image-button',{attrs:{\"btnClass\":_vm.shapeOutlineButtonClass,\"title\":\"Shape Outline\",\"btnColor\":_vm.annotationColor,\"image\":this.coloredAssetUrls.shapeOutline},on:{\"click\":_vm.openShapeOutlineDialog}})],1),_c('div',[_c('select-with-button',{attrs:{\"value\":_vm.selectedTextSize,\"items\":_vm.textSizes,\"name\":\"textSize\"},on:{\"input\":_vm.updateTextSize}})],1)])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{staticClass:\"zoom-control-wrapper\",attrs:{\"column\":\"\"}},[_c('v-flex',{directives:[{name:\"hammer\",rawName:\"v-hammer:press\",value:(_vm.handlePanstart),expression:\"handlePanstart\",arg:\"press\"},{name:\"hammer\",rawName:\"v-hammer:panstart\",value:(_vm.handlePanstart),expression:\"handlePanstart\",arg:\"panstart\"},{name:\"hammer\",rawName:\"v-hammer:pan\",value:(_vm.handlePanmove),expression:\"handlePanmove\",arg:\"pan\"},{name:\"hammer\",rawName:\"v-hammer:panend\",value:(_vm.handlePanend),expression:\"handlePanend\",arg:\"panend\"},{name:\"hammer\",rawName:\"v-hammer:tap\",value:(_vm.handleTap),expression:\"handleTap\",arg:\"tap\"}],ref:\"zoomControl\",staticClass:\"zoom-canvas-wrapper interactive-canvas-wrapper\",style:(_vm.canvasWrapperStyle),attrs:{\"id\":\"zoom-canvas-wrapper\"},on:{\"wheel\":function($event){if($event.ctrlKey||$event.shiftKey||$event.altKey||$event.metaKey){ return null; }$event.preventDefault();return _vm.handleCanvasWheel($event)},\"mousedown\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.handleMousedown($event)},\"mousemove\":_vm.handleMousemove,\"mouseup\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.handleMouseup($event)},\"mouseout\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.handleMouseout($event)},\"click\":_vm.handleClick}},[(_vm.imgNotFound)?_c('image-not-found'):_vm._e(),_c('canvas-image',{attrs:{\"canvasSize\":_vm.size,\"imgSize\":_vm.fit,\"isFlipped\":_vm.isFlipped,\"isFlipped90\":_vm.isFlipped90,\"img\":_vm.img,\"transform\":_vm.canvasTransform,\"name\":\"imageZoom\"}}),(_vm.debug)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.size,\"imgSize\":_vm.fit,\"annotation\":_vm.grid,\"transform\":_vm.canvasTransform}}):_vm._e(),_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.size,\"imgSize\":_vm.fit,\"annotation\":_vm.viewFinder,\"transform\":_vm.canvasTransform}}),(_vm.imgIsLoading)?_c('v-progress-circular',{staticClass:\"escalon-absolute-center\",attrs:{\"indeterminate\":\"\"}}):_vm._e(),_c('span',{staticClass:\"zoom-level-info\"},[_vm._v(_vm._s(_vm.zoom.toFixed(2))+\" x\")])],1),_c('v-flex',[_c('v-slider',{staticClass:\"transform-slider\",attrs:{\"value\":_vm.zoom,\"track-color\":\"#7f7f7f\",\"color\":_vm.colorHex,\"always-dirty\":\"\",\"min\":_vm.minZoom,\"max\":_vm.maxZoom,\"step\":\"0.01\"},on:{\"input\":_vm.rateLimitedUpdateZoom,\"focus\":_vm.stopFitZoom}},[_c('template',{slot:\"prepend\"},[_c('circle-slot-button',{attrs:{\"title\":\"Zoom Out\",\"btnClass\":_vm.colorClass,\"size\":\"xSmall\"},on:{\"click\":function($event){return _vm.updateZoom(_vm.zoom - 0.05)}}},[_c('v-icon',{attrs:{\"size\":\"18\"}},[_vm._v(\"fas fa-minus\")])],1)],1),_c('template',{slot:\"append\"},[_c('circle-slot-button',{attrs:{\"title\":\"Zoom In\",\"btnClass\":_vm.colorClass,\"size\":\"xSmall\"},on:{\"click\":function($event){return _vm.updateZoom(_vm.zoom + 0.05)}}},[_c('v-icon',{attrs:{\"size\":\"18\"}},[_vm._v(\"fas fa-plus\")])],1)],1)],2)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Annotation from \"./annotation\";\r\nimport { setLineStyle } from \"../canvasUtils\";\r\n\r\nexport default class ImageBrowserViewFinder extends Annotation {\r\n constructor() {\r\n super();\r\n this.x = 0;\r\n this.y = 0;\r\n this.width = 0;\r\n this.height = 0;\r\n this.lineWidth = 3;\r\n this.color = \"red\";\r\n }\r\n\r\n draw(ctx) {\r\n if (!this.width) return;\r\n setLineStyle(ctx, this);\r\n\r\n ctx.beginPath();\r\n ctx.strokeRect(this.x, this.y, this.width, this.height);\r\n ctx.closePath();\r\n }\r\n\r\n updateViewFinder(transform, fittedImgSize, mainViewCanvasSize) {\r\n if (!mainViewCanvasSize || !fittedImgSize || !transform) return;\r\n\r\n const scaledZoom = transform.zoom / transform.fitZoom;\r\n let offset = 1100 / window.innerHeight;\r\n\r\n let canvasAspect = mainViewCanvasSize.w / mainViewCanvasSize.h;\r\n let imgAspect = fittedImgSize.w / fittedImgSize.h;\r\n\r\n if (canvasAspect > imgAspect) {\r\n let diff = canvasAspect / imgAspect;\r\n this.width = diff * (fittedImgSize.w / scaledZoom) - offset;\r\n this.height = (fittedImgSize.h / scaledZoom) - offset;\r\n \r\n this.x = fittedImgSize.w * (transform.centerX - diff / (2 * scaledZoom));\r\n this.y = fittedImgSize.h * (transform.centerY - 1 / (2 * scaledZoom));\r\n } else {\r\n let diff = imgAspect / canvasAspect;\r\n this.width = (fittedImgSize.w / scaledZoom) - offset;\r\n this.height = diff * (fittedImgSize.h / scaledZoom) - offset;\r\n \r\n this.x = fittedImgSize.w * (transform.centerX - 1 / (2 * scaledZoom));\r\n this.y = fittedImgSize.h * (transform.centerY - diff / (2 * scaledZoom));\r\n }\r\n\r\n // todo - uncomment the following restrictions if the client wants the view box to stay inside the image\r\n // if (this.width > fittedImgSize.w)\r\n // this.width = fittedImgSize.w;\r\n // if (this.height > fittedImgSize.h)\r\n // this.height = fittedImgSize.h;\r\n \r\n // if (this.x < 0)\r\n // this.x = 0;\r\n // if (this.x + this.width > fittedImgSize.w)\r\n // this.x = fittedImgSize.w - this.width;\r\n // if (this.y < 0)\r\n // this.y = 0;\r\n // if (this.y + this.height > fittedImgSize.h)\r\n // this.y = fittedImgSize.h - this.height;\r\n\r\n this.signalReady();\r\n }\r\n}","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageBrowserZoomControl.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageBrowserZoomControl.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImageBrowserZoomControl.vue?vue&type=template&id=1acc90d0&\"\nimport script from \"./ImageBrowserZoomControl.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageBrowserZoomControl.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\nimport { VSlider } from 'vuetify/lib/components/VSlider';\ninstallComponents(component, {VFlex,VIcon,VLayout,VProgressCircular,VSlider})\n","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageAnnotationControls.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageAnnotationControls.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImageAnnotationControls.vue?vue&type=template&id=6b5a2874&scoped=true&\"\nimport script from \"./ImageAnnotationControls.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageAnnotationControls.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ImageAnnotationControls.vue?vue&type=style&index=0&id=6b5a2874&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6b5a2874\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VFlex,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"measurement-controls\"},[(_vm.hasDeviceCalibrations)?_c('div',[_c('label',{staticClass:\"modal-label\"},[_vm._v(\"Select Calibration\")])]):_vm._e(),(_vm.hasDeviceCalibrations)?_c('select-with-button',{attrs:{\"value\":_vm.calibration,\"items\":_vm.deviceCalibrations,\"item-text\":\"desc\",\"item-value\":\"desc\",\"name\":\"what\",\"hide-details\":true},on:{\"input\":_vm.updateCalibration}}):_vm._e(),_c('div',{staticClass:\"warning-text\"},[_vm._v(_vm._s(this.warningMessage))]),(_vm.deviceCalibration)?_c('div',[_c('v-row',[_c('v-col',{staticClass:\"text-center\"},[_c('annotation-mode-button',{attrs:{\"image\":_vm.coloredAssetUrls.line,\"activeImage\":_vm.activeAnnotationIcons.line,\"title\":\"Line\",\"buttonMode\":_vm.annotationModes.LengthLine,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.LengthLine)}}}),_c('annotation-mode-button',{attrs:{\"image\":_vm.coloredAssetUrls.area,\"activeImage\":_vm.activeAnnotationIcons.area,\"title\":\"Area\",\"buttonMode\":_vm.annotationModes.Area,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.Area)}}}),_c('annotation-mode-button',{attrs:{\"image\":_vm.coloredAssetUrls.cupToDisc,\"activeImage\":_vm.activeAnnotationIcons.cupToDisc,\"title\":\"Cup To Disc\",\"buttonMode\":_vm.annotationModes.CupToDisc,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.CupToDisc)}}}),_c('annotation-mode-button',{attrs:{\"image\":_vm.coloredAssetUrls.freehandArea,\"activeImage\":_vm.activeAnnotationIcons.freehandArea,\"title\":\"Free Hand Area\",\"buttonMode\":_vm.annotationModes.FreeHandArea,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.FreeHandArea)}}}),_c('annotation-mode-button',{attrs:{\"image\":_vm.coloredAssetUrls.pdt,\"activeImage\":_vm.activeAnnotationIcons.pdt,\"title\":\"PDT\",\"buttonMode\":_vm.annotationModes.PDT,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.PDT)}}}),_c('annotation-mode-button',{attrs:{\"image\":_vm.coloredAssetUrls.etdrs,\"activeImage\":_vm.activeAnnotationIcons.etdrs,\"title\":\"ETDRS Grid\",\"buttonMode\":_vm.annotationModes.ETDRSGrid,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.ETDRSGrid)}}}),_c('annotation-mode-button',{attrs:{\"image\":_vm.coloredAssetUrls.smallStandardCircles,\"activeImage\":_vm.activeAnnotationIcons.smallStandardCircles,\"title\":\"Standard Circles C0, C1, C2\",\"buttonMode\":_vm.annotationModes.StandardCircles1,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.StandardCircles1)}}}),_c('annotation-mode-button',{attrs:{\"image\":_vm.coloredAssetUrls.standardCircles,\"activeImage\":_vm.activeAnnotationIcons.standardCircles,\"title\":\"Standard Circles C3, C4\",\"buttonMode\":_vm.annotationModes.StandardCircles2,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.StandardCircles2)}}}),_c('annotation-mode-button',{attrs:{\"image\":_vm.coloredAssetUrls.smallDrusenCircles,\"activeImage\":_vm.activeAnnotationIcons.smallDrusenCircles,\"title\":\"Drusen Circles C-0, C-1, C-2\",\"buttonMode\":_vm.annotationModes.DrusenCircles1,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.DrusenCircles1)}}}),_c('annotation-mode-button',{attrs:{\"image\":_vm.coloredAssetUrls.drusenCircles,\"activeImage\":_vm.activeAnnotationIcons.drusenCircles,\"title\":\"Drusen Circles I-2, O-2\",\"buttonMode\":_vm.annotationModes.DrusenCircles2,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.DrusenCircles2)}}}),_c('annotation-mode-button',{attrs:{\"image\":_vm.coloredAssetUrls.drusenHalf,\"activeImage\":_vm.activeAnnotationIcons.drusenHalf,\"title\":\"Drusen Circles ½ DA\",\"buttonMode\":_vm.annotationModes.DrusenCircles3,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.DrusenCircles3)}}}),_c('annotation-mode-button',{attrs:{\"image\":_vm.coloredAssetUrls.drusenCircle,\"activeImage\":_vm.activeAnnotationIcons.drusenCircle,\"title\":\"Drusen Circles 1 DA\",\"buttonMode\":_vm.annotationModes.DrusenCircles4,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.DrusenCircles4)}}}),_c('annotation-mode-button',{attrs:{\"image\":_vm.coloredAssetUrls.rectangle,\"activeImage\":_vm.activeAnnotationIcons.rectangle,\"title\":\"Rectangle\",\"buttonMode\":_vm.annotationModes.Rectangle,\"annotationMode\":_vm.annotationMode},on:{\"click\":function($event){return _vm.annotationModeButtonClick(_vm.annotationModes.Rectangle)}}})],1)],1)],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageMeasurementControls.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageMeasurementControls.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImageMeasurementControls.vue?vue&type=template&id=4d5edecd&scoped=true&\"\nimport script from \"./ImageMeasurementControls.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageMeasurementControls.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ImageMeasurementControls.vue?vue&type=style&index=0&id=4d5edecd&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4d5edecd\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"deepdee-controls\"},[_c('v-row',[_c('v-col',{staticClass:\"text-center\"},[_c('v-expansion-panels',{attrs:{\"multiple\":\"\"},model:{value:(_vm.panel),callback:function ($$v) {_vm.panel=$$v},expression:\"panel\"}},[_c('v-expansion-panel',{class:_vm.colorClass},[_c('v-expansion-panel-header',{staticClass:\"headerText\",class:_vm.colorClass,on:{\"click\":_vm.openedPanel},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_c('v-icon',{attrs:{\"color\":_vm.colorHex},on:{\"click\":_vm.openedPanel}},[_vm._v(\"\\n $expand\\n \")])]},proxy:true}])},[_vm._v(\"\\n DIABETIC RETINOPATHY AL ANALYSIS\\n \"),_c('v-icon',{staticClass:\"mr-3\",class:_vm.colorClass,staticStyle:{\"float\":\"right\"},attrs:{\"size\":\"20px\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.openDeepDeeDialog($event)}}},[_vm._v(\"fas fa-info-circle\")])],1),_c('v-expansion-panel-content',[(!_vm.hasAIdata && !_vm.loadingData && !_vm.hardError && !_vm.checkingData)?_c('v-btn',{staticClass:\"modal-cta\",attrs:{\"text\":\"\"},on:{\"click\":_vm.createAIAnalysis}},[_vm._v(\"\\n Run DR AI Analysis\\n \")]):(_vm.hasAIdata && !_vm.hardError)?_c('div',[_c('span',{style:(_vm.resultStyle)},[_vm._v(_vm._s(_vm.overallResult))]),_c('div',{staticStyle:{\"float\":\"right\"}},[_c('circle-image-button',{attrs:{\"btnClass\":'primary ' + _vm.colorClass,\"active\":_vm.deepDeeHighlight,\"image\":_vm.highlighterIcon,\"title\":\"Highlighter\"},on:{\"click\":function($event){return _vm.toggleDeepDeeHighlight()}}}),_c('circle-image-button',{attrs:{\"btnClass\":'primary ' + _vm.colorClass,\"active\":_vm.showDeepDeeAnnotation,\"image\":_vm.annotationIcon,\"title\":\"Annotate Image\"},on:{\"click\":_vm.toggleAnnotation}})],1),_c('bar-chart',{attrs:{\"chart-data\":_vm.deepDeeDataCollection,\"options\":_vm.options,\"styles\":_vm.chartStyle,\"width\":200,\"height\":200}}),_c('span',[_vm._v(\"\\n Note: This data and analysis is provided for REFERENCE ONLY and is not intended to replace a consultation with a qualified ophthalmic professional.\\n \")])],1):(_vm.loadingData || _vm.checkingData)?_c('v-progress-circular',{attrs:{\"indeterminate\":\"\"}}):_vm._e(),(_vm.checkingData)?_c('div',[_vm._v(\"Checking for existing data\")]):_vm._e()],1)],1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { Bar, mixins } from \"vue-chartjs\";\r\nconst { reactiveProp } = mixins;\r\n\r\nexport default {\r\n extends: Bar,\r\n mixins: [reactiveProp],\r\n props: [\"options\"],\r\n mounted() {\r\n // this.chartData is created in the mixin.\r\n // If you want to pass options please create a local options object\r\n this.renderChart(this.chartData, this.options);\r\n }\r\n};\r\n","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageDeepDeeControls.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageDeepDeeControls.vue?vue&type=script&lang=js&\"","// Components\nimport VExpansionPanels from './VExpansionPanels'\nimport VExpansionPanelHeader from './VExpansionPanelHeader'\nimport VExpansionPanelContent from './VExpansionPanelContent'\n\n// Mixins\nimport { factory as GroupableFactory } from '../../mixins/groupable'\nimport { provide as RegistrableProvide } from '../../mixins/registrable'\n\n// Utilities\nimport { getSlot } from '../../util/helpers'\nimport mixins from '../../util/mixins'\n\n// Types\nimport { VNode } from 'vue'\n\ntype VExpansionPanelHeaderInstance = InstanceType\ntype VExpansionPanelContentInstance = InstanceType\n\nexport default mixins(\n GroupableFactory<'expansionPanels', typeof VExpansionPanels>('expansionPanels', 'v-expansion-panel', 'v-expansion-panels'),\n RegistrableProvide('expansionPanel', true)\n /* @vue/component */\n).extend({\n name: 'v-expansion-panel',\n\n props: {\n disabled: Boolean,\n readonly: Boolean,\n },\n\n data () {\n return {\n content: null as VExpansionPanelContentInstance | null,\n header: null as VExpansionPanelHeaderInstance | null,\n nextIsActive: false,\n }\n },\n\n computed: {\n classes (): object {\n return {\n 'v-expansion-panel--active': this.isActive,\n 'v-expansion-panel--next-active': this.nextIsActive,\n 'v-expansion-panel--disabled': this.isDisabled,\n ...this.groupClasses,\n }\n },\n isDisabled (): boolean {\n return this.expansionPanels.disabled || this.disabled\n },\n isReadonly (): boolean {\n return this.expansionPanels.readonly || this.readonly\n },\n },\n\n methods: {\n registerContent (vm: VExpansionPanelContentInstance) {\n this.content = vm\n },\n unregisterContent () {\n this.content = null\n },\n registerHeader (vm: VExpansionPanelHeaderInstance) {\n this.header = vm\n vm.$on('click', this.onClick)\n },\n unregisterHeader () {\n this.header = null\n },\n onClick (e: MouseEvent) {\n if (e.detail) this.header!.$el.blur()\n\n this.$emit('click', e)\n\n this.isReadonly || this.isDisabled || this.toggle()\n },\n toggle () {\n /* istanbul ignore else */\n if (this.content) this.content.isBooted = true\n this.$nextTick(() => this.$emit('change'))\n },\n },\n\n render (h): VNode {\n return h('div', {\n staticClass: 'v-expansion-panel',\n class: this.classes,\n attrs: {\n 'aria-expanded': String(this.isActive),\n },\n }, getSlot(this))\n },\n})\n","// Components\nimport VExpansionPanel from './VExpansionPanel'\nimport { VExpandTransition } from '../transitions'\n\n// Mixins\nimport Bootable from '../../mixins/bootable'\nimport Colorable from '../../mixins/colorable'\nimport { inject as RegistrableInject } from '../../mixins/registrable'\n\n// Utilities\nimport { getSlot } from '../../util/helpers'\nimport mixins, { ExtractVue } from '../../util/mixins'\n\n// Types\nimport Vue, { VNode, VueConstructor } from 'vue'\n\nconst baseMixins = mixins(\n Bootable,\n Colorable,\n RegistrableInject<'expansionPanel', VueConstructor>('expansionPanel', 'v-expansion-panel-content', 'v-expansion-panel')\n)\n\ninterface options extends ExtractVue {\n expansionPanel: InstanceType\n}\n\n/* @vue/component */\nexport default baseMixins.extend().extend({\n name: 'v-expansion-panel-content',\n\n computed: {\n isActive (): boolean {\n return this.expansionPanel.isActive\n },\n },\n\n created () {\n this.expansionPanel.registerContent(this)\n },\n\n beforeDestroy () {\n this.expansionPanel.unregisterContent()\n },\n\n render (h): VNode {\n return h(VExpandTransition, [\n h('div', this.setBackgroundColor(this.color, {\n staticClass: 'v-expansion-panel-content',\n directives: [{\n name: 'show',\n value: this.isActive,\n }],\n }), this.showLazyContent([\n h('div', { class: 'v-expansion-panel-content__wrap' }, getSlot(this)),\n ])),\n ])\n },\n})\n","// Components\nimport { VFadeTransition } from '../transitions'\nimport VExpansionPanel from './VExpansionPanel'\nimport VIcon from '../VIcon'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport { inject as RegistrableInject } from '../../mixins/registrable'\n\n// Directives\nimport ripple from '../../directives/ripple'\n\n// Utilities\nimport { getSlot } from '../../util/helpers'\nimport mixins, { ExtractVue } from '../../util/mixins'\n\n// Types\nimport Vue, { VNode, VueConstructor } from 'vue'\n\nconst baseMixins = mixins(\n Colorable,\n RegistrableInject<'expansionPanel', VueConstructor>('expansionPanel', 'v-expansion-panel-header', 'v-expansion-panel')\n)\n\ninterface options extends ExtractVue {\n $el: HTMLElement\n expansionPanel: InstanceType\n}\n\nexport default baseMixins.extend().extend({\n name: 'v-expansion-panel-header',\n\n directives: { ripple },\n\n props: {\n disableIconRotate: Boolean,\n expandIcon: {\n type: String,\n default: '$expand',\n },\n hideActions: Boolean,\n ripple: {\n type: [Boolean, Object],\n default: false,\n },\n },\n\n data: () => ({\n hasMousedown: false,\n }),\n\n computed: {\n classes (): object {\n return {\n 'v-expansion-panel-header--active': this.isActive,\n 'v-expansion-panel-header--mousedown': this.hasMousedown,\n }\n },\n isActive (): boolean {\n return this.expansionPanel.isActive\n },\n isDisabled (): boolean {\n return this.expansionPanel.isDisabled\n },\n isReadonly (): boolean {\n return this.expansionPanel.isReadonly\n },\n },\n\n created () {\n this.expansionPanel.registerHeader(this)\n },\n\n beforeDestroy () {\n this.expansionPanel.unregisterHeader()\n },\n\n methods: {\n onClick (e: MouseEvent) {\n this.$emit('click', e)\n },\n genIcon () {\n const icon = getSlot(this, 'actions') ||\n [this.$createElement(VIcon, this.expandIcon)]\n\n return this.$createElement(VFadeTransition, [\n this.$createElement('div', {\n staticClass: 'v-expansion-panel-header__icon',\n class: {\n 'v-expansion-panel-header__icon--disable-rotate': this.disableIconRotate,\n },\n directives: [{\n name: 'show',\n value: !this.isDisabled,\n }],\n }, icon),\n ])\n },\n },\n\n render (h): VNode {\n return h('button', this.setBackgroundColor(this.color, {\n staticClass: 'v-expansion-panel-header',\n class: this.classes,\n attrs: {\n tabindex: this.isDisabled ? -1 : null,\n type: 'button',\n },\n directives: [{\n name: 'ripple',\n value: this.ripple,\n }],\n on: {\n ...this.$listeners,\n click: this.onClick,\n mousedown: () => (this.hasMousedown = true),\n mouseup: () => (this.hasMousedown = false),\n },\n }), [\n getSlot(this, 'default', { open: this.isActive }, true),\n this.hideActions || this.genIcon(),\n ])\n },\n})\n","// Styles\nimport './VExpansionPanel.sass'\n\n// Components\nimport { BaseItemGroup, GroupableInstance } from '../VItemGroup/VItemGroup'\nimport VExpansionPanel from './VExpansionPanel'\n\n// Utilities\nimport { breaking } from '../../util/console'\n\n// Types\ninterface VExpansionPanelInstance extends InstanceType {}\n\n/* @vue/component */\nexport default BaseItemGroup.extend({\n name: 'v-expansion-panels',\n\n provide (): object {\n return {\n expansionPanels: this,\n }\n },\n\n props: {\n accordion: Boolean,\n disabled: Boolean,\n flat: Boolean,\n hover: Boolean,\n focusable: Boolean,\n inset: Boolean,\n popout: Boolean,\n readonly: Boolean,\n tile: Boolean,\n },\n\n computed: {\n classes (): object {\n return {\n ...BaseItemGroup.options.computed.classes.call(this),\n 'v-expansion-panels': true,\n 'v-expansion-panels--accordion': this.accordion,\n 'v-expansion-panels--flat': this.flat,\n 'v-expansion-panels--hover': this.hover,\n 'v-expansion-panels--focusable': this.focusable,\n 'v-expansion-panels--inset': this.inset,\n 'v-expansion-panels--popout': this.popout,\n 'v-expansion-panels--tile': this.tile,\n }\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('expand')) {\n breaking('expand', 'multiple', this)\n }\n\n /* istanbul ignore next */\n if (\n Array.isArray(this.value) &&\n this.value.length > 0 &&\n typeof this.value[0] === 'boolean'\n ) {\n breaking(':value=\"[true, false, true]\"', ':value=\"[0, 2]\"', this)\n }\n },\n\n methods: {\n updateItem (item: GroupableInstance & VExpansionPanelInstance, index: number) {\n const value = this.getValue(item, index)\n const nextValue = this.getValue(item, index + 1)\n\n item.isActive = this.toggleMethod(value)\n item.nextIsActive = this.toggleMethod(nextValue)\n },\n },\n})\n","import { render, staticRenderFns } from \"./ImageDeepDeeControls.vue?vue&type=template&id=5cf23f18&scoped=true&\"\nimport script from \"./ImageDeepDeeControls.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageDeepDeeControls.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ImageDeepDeeControls.vue?vue&type=style&index=0&id=5cf23f18&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5cf23f18\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VExpansionPanel } from 'vuetify/lib/components/VExpansionPanel';\nimport { VExpansionPanelContent } from 'vuetify/lib/components/VExpansionPanel';\nimport { VExpansionPanelHeader } from 'vuetify/lib/components/VExpansionPanel';\nimport { VExpansionPanels } from 'vuetify/lib/components/VExpansionPanel';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol,VExpansionPanel,VExpansionPanelContent,VExpansionPanelHeader,VExpansionPanels,VIcon,VProgressCircular,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{staticClass:\"short-control-toolbar image-browser-toolbar\",attrs:{\"align-center\":\"\"}},[_c('playback-controls',{staticClass:\"ml-auto mr-auto\",attrs:{\"index\":_vm.imageIndex,\"count\":_vm.browserImages.length,\"isPlaying\":_vm.isPlaying,\"playRate\":_vm.playRate},on:{\"previous\":_vm.previousImage,\"next\":_vm.nextImage,\"play\":_vm.play,\"pause\":_vm.pause,\"setPlayRate\":_vm.setPlayRate}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{attrs:{\"no-gutters\":\"\",\"justify\":\"center\",\"align\":\"center\"}},[(_vm.rgbView && !_vm.isOptos)?_c('div',{staticClass:\"rgb-button-wrapper\"},[_c('active-image-button',{attrs:{\"btnClass\":\"modal-cta\",\"title\":\"Expand left panel\",\"image\":\"blue-big-icon.png\",\"activeImage\":\"White Icons/white-big-icon.png\",\"active\":_vm.rgbExpanded},on:{\"click\":function($event){return _vm.$store.commit('setRGBExpanded', true)}}}),_c('active-image-button',{attrs:{\"btnClass\":\"modal-cta\",\"title\":\"Collapse left panel\",\"image\":\"blue-small-icon.png\",\"activeImage\":\"White Icons/white-small-icon.png\",\"active\":!_vm.rgbExpanded},on:{\"click\":function($event){return _vm.$store.commit('setRGBExpanded', false)}}})],1):_vm._e(),(_vm.imgTimestamp)?_c('span',{class:_vm.colorClass + ' timestamp'},[_vm._v(_vm._s(_vm.imgTimestamp))]):_vm._e(),(_vm.imgEye)?_c('span',{class:_vm.colorClass + ' current-image-eye'},[_vm._v(_vm._s(_vm.imgEye))]):_vm._e(),_c('v-col',{attrs:{\"cols\":\"auto\",\"id\":\"fa-caret\"}},[_c('v-btn',{staticClass:\"modal-cta mx-1\",attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.$emit('previous')}}},[_c('v-icon',[_vm._v(\"fas fa-caret-left\")])],1),_c('index-counter',{class:_vm.colorClass,attrs:{\"index\":_vm.index,\"count\":_vm.count}}),_c('v-btn',{staticClass:\"modal-cta mx-1\",attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.$emit('next')}}},[_c('v-icon',[_vm._v(\"fas fa-caret-right\")])],1)],1),_c('play-pause-button',{attrs:{\"isPlaying\":_vm.isPlaying},on:{\"play\":function($event){return _vm.$emit('play')},\"pause\":function($event){return _vm.$emit('pause')}}}),_c('select-with-button',{staticClass:\"toolbar-select\",attrs:{\"value\":_vm.playRate,\"items\":_vm.playRates,\"icon-button\":true},on:{\"change\":function($event){return _vm.$emit('setPlayRate', $event)}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('image-button',{attrs:{\"image\":_vm.buttonImage,\"title\":_vm.title,\"text\":_vm.text,\"block\":_vm.block,\"icon\":_vm.icon,\"disabled\":_vm.disabled,\"btnClass\":_vm.btnClass + (this.active ? ' active' : ''),\"x-small\":_vm.xSmall,\"small\":_vm.small,\"medium\":_vm.medium,\"large\":_vm.large,\"x-large\":_vm.xLarge,\"fab\":_vm.fab},on:{\"click\":function($event){return _vm.$emit('click', $event)}}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActiveImageButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActiveImageButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ActiveImageButton.vue?vue&type=template&id=19202c8e&\"\nimport script from \"./ActiveImageButton.vue?vue&type=script&lang=js&\"\nexport * from \"./ActiveImageButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PlaybackControls.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PlaybackControls.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PlaybackControls.vue?vue&type=template&id=75b57604&\"\nimport script from \"./PlaybackControls.vue?vue&type=script&lang=js&\"\nexport * from \"./PlaybackControls.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol,VIcon,VRow})\n","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImagePlaybackToolbar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImagePlaybackToolbar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImagePlaybackToolbar.vue?vue&type=template&id=24d2b0cf&\"\nimport script from \"./ImagePlaybackToolbar.vue?vue&type=script&lang=js&\"\nexport * from \"./ImagePlaybackToolbar.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VLayout } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VLayout})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"hammer\",rawName:\"v-hammer:press\",value:(_vm.handlePanstart),expression:\"handlePanstart\",arg:\"press\"},{name:\"hammer\",rawName:\"v-hammer:panstart\",value:(_vm.handlePanstart),expression:\"handlePanstart\",arg:\"panstart\"},{name:\"hammer\",rawName:\"v-hammer:pan\",value:(_vm.handlePanmove),expression:\"handlePanmove\",arg:\"pan\"},{name:\"hammer\",rawName:\"v-hammer:panend\",value:(_vm.handlePanend),expression:\"handlePanend\",arg:\"panend\"}],staticClass:\"main-image-view\",class:{'rgb-open': _vm.rgbView},attrs:{\"id\":\"main-image-view\"},on:{\"wheel\":function($event){if($event.ctrlKey||$event.shiftKey||$event.altKey||$event.metaKey){ return null; }$event.preventDefault();return _vm.handleCanvasWheel($event)}}},[_c('annotateable-canvas',{attrs:{\"borderColor\":_vm.borderColor,\"context\":_vm.imageBrowserContext,\"imgIsLoading\":_vm.imgIsLoading,\"imgAvailable\":_vm.imgAvailable,\"imgNotFound\":_vm.imgNotFound,\"imgObject\":_vm.deepDeeHighlight ? _vm.imgMask : _vm.displayImgObject,\"imgSize\":_vm.displayImgSize,\"imgOffset\":_vm.imgOffset,\"colorSettings\":_vm.imageColorSettings,\"viewSize\":_vm.largeViewSize,\"viewFit\":_vm.largeViewFit,\"transform\":_vm.transform,\"isFlipped\":_vm.isFlipped,\"isFlipped90\":_vm.isFlipped90,\"annotations\":_vm.annotations,\"activeAnnotation\":_vm.activeAnnotation,\"realLocation\":_vm.realLocation,\"isInBounds\":_vm.isInBounds,\"annotationByPosition\":_vm.annotationByPosition,\"inMagnifyMode\":_vm.inMagnifyMode,\"inAddMode\":_vm.inAddMode,\"inEditMode\":_vm.inEditMode,\"inShapeFillMode\":_vm.inShapeFillMode,\"isDragLock\":_vm.isDragLock,\"isMagnifying\":_vm.isMagnifying,\"magnifier\":_vm.magnifier,\"isMask\":_vm.deepDeeHighlight,\"isDeepDeeAnnotation\":_vm.showDeepDeeAnnotation,\"deepDeeAnnotation\":_vm.deepDeeAnnotation},on:{\"mousedownAnnotation\":_vm.mousedownAnnotation,\"mousemoveAnnotation\":_vm.mousemoveAnnotation,\"mouseupAnnotation\":_vm.mouseupAnnotation,\"deleteActiveAnnotation\":_vm.deleteActiveAnnotation,\"panBy\":function($event){return _vm.$emit('panBy', $event)},\"updateMagnifier\":_vm.updateMagnifier,\"mousedownMagnifier\":_vm.mousedownMagnifier,\"mouseupMagnifier\":_vm.mouseupMagnifier}}),(_vm.rgbView)?_c('div',{staticClass:\"main-rgb-container\",style:(_vm.rgbContainerStyle)},_vm._l((_vm.rgbViews),function(view){return _c('rgb-view',{key:view.index,attrs:{\"view\":view,\"rgbSize\":_vm.rgbSize,\"rgbFit\":_vm.rgbFit}})}),1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"rgb-box-wrapper\",class:{'align-canvas-top': _vm.alignTop},style:(_vm.style),on:{\"click\":function($event){return _vm.$store.dispatch('selectRGBView', _vm.view.index)}}},[_c('pixel-shaded-canvas',{staticClass:\"rgb-image\",style:({'border-color': _vm.borderColor, 'outline-color': _vm.borderColor}),attrs:{\"img\":_vm.displayImgObject,\"colorSettings\":_vm.view,\"canvasSize\":_vm.rgbFit,\"imgSize\":_vm.rgbFit,\"isFlipped\":_vm.view.isFlipped}}),_c('div',{staticClass:\"rgb-title\",style:({top: _vm.titleTop, color: _vm.borderColor})},[_c('img',{attrs:{\"src\":_vm.src}}),_vm._v(\"\\n \"+_vm._s(_vm.view.title)+\"\\n \")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./rgbView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./rgbView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./rgbView.vue?vue&type=template&id=81ee8d5e&scoped=true&\"\nimport script from \"./rgbView.vue?vue&type=script&lang=js&\"\nexport * from \"./rgbView.vue?vue&type=script&lang=js&\"\nimport style0 from \"./rgbView.vue?vue&type=style&index=0&id=81ee8d5e&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"81ee8d5e\",\n null\n \n)\n\nexport default component.exports","\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainImageView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MainImageView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MainImageView.vue?vue&type=template&id=f977c820&\"\nimport script from \"./MainImageView.vue?vue&type=script&lang=js&\"\nexport * from \"./MainImageView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageBrowserBody.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageBrowserBody.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ImageBrowserBody.vue?vue&type=template&id=1b14e5da&\"\nimport script from \"./ImageBrowserBody.vue?vue&type=script&lang=js&\"\nexport * from \"./ImageBrowserBody.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VFlex,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{staticClass:\"spectralis-browser-body oct-browser-body escalon-absolute-cover\",style:(_vm.ieStyle),attrs:{\"no-gutters\":\"\"}},[_c('v-flex',{staticClass:\"sidebar-controls tall-content-wrapper\",attrs:{\"shrink\":\"\"}},[_c('oct-reference-image',{style:(_vm.referenceImageWrapperHeight),attrs:{\"isLoading\":_vm.refImgLoading || _vm.octDataLoading,\"refImg\":_vm.refImg,\"refFit\":_vm.refFit,\"refSize\":_vm.refSize,\"refImgNotFound\":_vm.refImgNotFound,\"refImgLocation\":_vm.refImgLocation,\"slices\":_vm.slices,\"sliceCurrent\":_vm.sliceCurrent,\"sliceBounds\":_vm.sliceBounds,\"sliceCurrentIndex\":_vm.sliceCurrentIndex,\"isPlaying\":_vm.isPlaying,\"playRate\":_vm.playRate,\"showExtension\":true,\"drawAllSlices\":_vm.drawAllSlices,\"isSpectralisCircle\":_vm.isSpectralisCircle,\"isSpectralisRadial\":_vm.isSpectralisRadial,\"isSpectralisRadialCircle\":_vm.isSpectralisRadialCircle,\"showOverlay\":_vm.showThicknessMap,\"overlayOpacity\":_vm.thicknessMapOpacity,\"overlayImg\":_vm.thicknessMapImg,\"overlayColorSettings\":_vm.thicknessMapColorSettings},on:{\"previous\":_vm.previousSlice,\"next\":_vm.nextSlice,\"play\":_vm.play,\"pause\":_vm.pause,\"setPlayRate\":_vm.setPlayRate,\"selectSlice\":_vm.selectSlice}}),_c('spectralis-color-buttons'),_c('image-zoom-control',{attrs:{\"isFlipped\":false,\"img\":_vm.sliceImg,\"imgIsLoading\":_vm.isLoading,\"imgNotFound\":_vm.sliceImgNotFound,\"transform\":_vm.transform,\"size\":_vm.zoomControlSize,\"fit\":_vm.zoomControlFit},on:{\"updateZoom\":_vm.updateZoom,\"updateCenter\":_vm.updateCenter}}),_c('circle-image-button',{attrs:{\"size\":\"xSmall\",\"title\":\"Reset to Default\",\"btnClass\":\"primary\",\"image\":_vm.coloredAssetUrls.reset},on:{\"click\":_vm.zoomToFit}})],1),_c('v-flex',{staticClass:\"main-view tall-content-wrapper\",attrs:{\"shrink\":\"\",\"id\":\"spectralis-main-view\"}},[_c('v-layout',{attrs:{\"column\":\"\"}},[_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('oct-toolbar',{attrs:{\"isSpectralis\":true}})],1),_c('v-flex',{attrs:{\"grow\":\"\",\"spectralis-main-view-container\":\"\"}},[_c('spectralis-main-view',{attrs:{\"sliceSize\":_vm.sliceSize,\"sliceImgSize\":_vm.sliceImgSize,\"sliceFit\":_vm.sliceFit,\"transform\":_vm.transform,\"chartSize\":_vm.chartSize,\"realLocation\":_vm.realLocation,\"isInBounds\":_vm.isInBounds,\"innerChartSize\":_vm.innerChartSize},on:{\"previous\":_vm.previousSlice,\"next\":_vm.nextSlice}})],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{staticClass:\"reference-image-wrapper image-with-palette\",class:{'has-palette': _vm.isMultiview || (_vm.hasPalette && _vm.showOverlay)},attrs:{\"column\":\"\"}},[(_vm.showPlaycontrol)?_c('v-flex',{staticClass:\"slice-control-div\",attrs:{\"shrink\":\"\",\"order-0\":_vm.playbackTop,\"order-2\":!_vm.playbackTop}},[_c('oct-slice-controls',{attrs:{\"index\":_vm.sliceCurrentIndex || 0,\"count\":_vm.slices ? _vm.slices.length : 1,\"playRate\":_vm.playRate,\"isPlaying\":_vm.isPlaying},on:{\"previous\":function($event){return _vm.$emit('previous')},\"next\":function($event){return _vm.$emit('next')},\"play\":function($event){return _vm.$emit('play')},\"pause\":function($event){return _vm.$emit('pause')},\"setPlayRate\":function($event){return _vm.$emit('setPlayRate', $event)}}})],1):_vm._e(),_c('v-flex',{staticClass:\"outer-image-wrapper\",attrs:{\"order-1\":\"\",\"grow\":\"\"}},[_c('v-row',{staticClass:\"inner-image-wrapper\",attrs:{\"no-gutters\":\"\"}},[_c('v-col',{directives:[{name:\"hammer\",rawName:\"v-hammer:press\",value:(_vm.handlePanstart),expression:\"handlePanstart\",arg:\"press\"},{name:\"hammer\",rawName:\"v-hammer:panstart\",value:(_vm.handlePanstart),expression:\"handlePanstart\",arg:\"panstart\"},{name:\"hammer\",rawName:\"v-hammer:pan\",value:(_vm.handlePanmove),expression:\"handlePanmove\",arg:\"pan\"},{name:\"hammer\",rawName:\"v-hammer:panend\",value:(_vm.handleMouseUp),expression:\"handleMouseUp\",arg:\"panend\"},{name:\"hammer\",rawName:\"v-hammer:tap\",value:(_vm.handleTap),expression:\"handleTap\",arg:\"tap\"}],ref:\"octReference\",staticClass:\"reference-canvas-wrapper image interactive-canvas-wrapper\",class:_vm.wrapperClass,attrs:{\"id\":_vm.referenceId},on:{\"wheel\":function($event){if($event.ctrlKey||$event.shiftKey||$event.altKey||$event.metaKey){ return null; }return _vm.handleWheel($event)},\"mousedown\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.handleMousedown($event)},\"mousemove\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.handleMousemove($event)},\"mouseup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"left\",37,$event.key,[\"Left\",\"ArrowLeft\"])){ return null; }if($event.target !== $event.currentTarget){ return null; }if('button' in $event && $event.button !== 0){ return null; }return _vm.handleMouseUp($event)},\"mouseout\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.handleMouseout($event)}}},[(_vm.refImgNotFound)?_c('image-not-found'):_vm._e(),_c('canvas-image',{attrs:{\"img\":_vm.refImg,\"imgSize\":_vm.refFit,\"canvasSize\":_vm.refFit}}),(_vm.overlayImg && _vm.showOverlay)?_c('pixel-shaded-canvas',{style:({opacity: _vm.overlayOpacity}),attrs:{\"img\":_vm.overlayImg,\"imgSize\":_vm.refFit,\"canvasSize\":_vm.refFit,\"thicknessMapColorSettings\":_vm.overlayColorSettings,\"bounds\":_vm.sliceBounds,\"componentName\":_vm.componentName}}):_vm._e(),(_vm.overlayAnalysis && _vm.showOverlay && _vm.showOverlayETDRS)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.refFit,\"annotation\":_vm.etdrs}}):_vm._e(),(_vm.isSpectralisCircle)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.refFit,\"imgSize\":_vm.refFit,\"annotation\":_vm.circularPattern}}):_vm._e(),(_vm.isSpectralisRadialCircle)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.refFit,\"imgSize\":_vm.refFit,\"annotation\":_vm.radialCirclesPattern}}):_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.refFit,\"imgSize\":_vm.refFit,\"annotation\":_vm.sliceSelector}}),(_vm.isLoading)?_c('v-progress-circular',{staticClass:\"escalon-absolute-center\",attrs:{\"indeterminate\":\"\"}}):_vm._e()],1),(_vm.hasPalette && _vm.showOverlay)?_c('v-col',{staticClass:\"xs2 thickness-map-palette-wrapper palette\",attrs:{\"id\":_vm.paletteId}},[_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.paletteSize,\"imgSize\":_vm.paletteSize,\"annotation\":_vm.paletteAnnotation}})],1):_vm._e()],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Annotation from \"./annotation\";\r\nimport { Directions } from \"../../config/config\";\r\n\r\nexport default class SliceSelector extends Annotation {\r\n constructor() {\r\n super();\r\n\r\n this.color = \"rgba(0,176,240, 0.5)\";\r\n this.colorActive = \"#00b0f0\";\r\n this.compositeColor = \"rgba(255,0,255,0.5)\";\r\n this.compositeColorActive = \"magenta\";\r\n this.lineWidth = 1;\r\n this.sliceCurrentWidth = 5;\r\n this.boxWidth = 3;\r\n this.triangleLength = 15;\r\n this.triangleInternalAngle = Math.PI / 8;\r\n\r\n this.slices = [];\r\n this.sliceCurrent = null;\r\n this.sliceBounds = null;\r\n this.slicesVertical = false;\r\n\r\n this.composites = [];\r\n this.compositeCurrent = null;\r\n this.compositeBounds = null;\r\n this.compositesVertical = true;\r\n\r\n this.minX = null;\r\n this.maxX = null;\r\n this.minY = null;\r\n this.maxY = null;\r\n\r\n this.drawAllSlices = true;\r\n this.showExtension = true;\r\n this.showBindingBox = false;\r\n\r\n this.canvasSize = null;\r\n this.drawBoundingBoxWidth = null;\r\n this.drawBoundingBoxHeight = null;\r\n\r\n this.isRadial = false;\r\n }\r\n\r\n draw(ctx) {\r\n if (!this.canvasSize) \r\n return;\r\n\r\n let w = this.canvasSize.w;\r\n let h = this.canvasSize.h;\r\n\r\n if (this.slices.length)\r\n this.drawSliceCollection(ctx, this.slices, this.sliceCurrent, w, h, this.color, this.colorActive);\r\n if (this.composites.length)\r\n this.drawSliceCollection(ctx, this.composites, this.compositeCurrent, w, h, this.compositeColor, this.compositeColorActive);\r\n\r\n if (this.showBindingBox) this.drawBoundingBox(ctx, w, h);\r\n }\r\n\r\n drawSliceCollection(ctx, slices, current, width, height, color, colorActive) {\r\n ctx.lineWidth = this.lineWidth;\r\n ctx.strokeStyle = color;\r\n ctx.fillStyle = color;\r\n if (this.drawAllSlices) slices.forEach(slice => this.drawSlice(ctx, slice, width, height));\r\n ctx.strokeStyle = colorActive;\r\n ctx.fillStyle = colorActive;\r\n ctx.lineWidth = this.showExtension ? this.sliceCurrentWidth : this.boxWidth;\r\n let slice = slices.find(s => s.index === current);\r\n if (slice) this.drawSlice(ctx, slice, width, height);\r\n }\r\n\r\n drawSlice(ctx, slice, width, height) {\r\n ctx.beginPath();\r\n ctx.moveTo(slice.eX * width, slice.eY * height);\r\n ctx.lineTo(slice.sX * width, slice.sY * height);\r\n ctx.stroke();\r\n ctx.closePath();\r\n if (!this.showExtension) this.drawTriangleCaps(ctx, slice, width, height);\r\n }\r\n\r\n drawTriangleCaps(ctx, slice, width, height) {\r\n let angle = Math.atan2(slice.eY - slice.sY, slice.eX - slice.sX);\r\n this.drawTriangle(ctx, slice.sX * width, slice.sY * height, angle + Math.PI);\r\n this.drawTriangle(ctx, slice.eX * width, slice.eY * height, angle);\r\n }\r\n\r\n drawTriangle(ctx, x, y, angle) {\r\n let { x: x1, y: y1 } = this.getTriangleCoordinates(x, y, angle + this.triangleInternalAngle);\r\n let { x: x2, y: y2 } = this.getTriangleCoordinates(x, y, angle - this.triangleInternalAngle);\r\n ctx.beginPath();\r\n ctx.moveTo(x, y);\r\n ctx.lineTo(x1, y1);\r\n ctx.lineTo(x2, y2);\r\n ctx.lineTo(x, y);\r\n ctx.stroke();\r\n ctx.fill();\r\n ctx.closePath();\r\n }\r\n\r\n getTriangleCoordinates(x, y, angle) {\r\n return {\r\n x: x + this.triangleLength * Math.cos(angle),\r\n y: y + this.triangleLength * Math.sin(angle)\r\n };\r\n }\r\n\r\n drawBoundingBox(ctx, w, h) {\r\n this.drawBoundingBoxWidth = Math.abs(this.maxX - this.minX) * w;\r\n this.drawBoundingBoxHeight = Math.abs(this.minY - this.maxY) * h;\r\n ctx.lineWidth = this.boxWidth;\r\n ctx.strokeStyle = this.compositeColorActive;\r\n ctx.fillStyle = this.compositeColorActive;\r\n ctx.strokeRect(this.minX * w, this.minY * h, this.drawBoundingBoxWidth, this.drawBoundingBoxHeight);\r\n }\r\n\r\n updateSlices(slices) {\r\n let { processed, vertical } = this.processSliceCollection(slices);\r\n this.slices = processed;\r\n this.slicesVertical = vertical;\r\n this.signalReady();\r\n }\r\n\r\n updateCompositeSlices(slices) {\r\n let { processed, vertical } = this.processSliceCollection(slices);\r\n this.composites = processed;\r\n this.compositesVertical = vertical;\r\n this.signalReady();\r\n }\r\n\r\n processSliceCollection(slices) {\r\n if (!slices || !slices.length) return { processed: [] };\r\n let vertical = slices[0].vertical;\r\n let exStart = 0.02;\r\n let exEnd = 0.98;\r\n let exLength = slices.length > 1 ? (exEnd - exStart) / (slices.length - 1) : 0;\r\n let processed = slices.map(slice => {\r\n return {\r\n index: slice.index,\r\n imgKey: slice.imgKey,\r\n sX: slice.startPoint.x,\r\n sY: slice.startPoint.y,\r\n eX: slice.endPoint.x,\r\n eY: slice.endPoint.y\r\n }\r\n }).sort((a, b) => {\r\n if (vertical) return a.eX - b.eX;\r\n return a.eY - b.eY;\r\n });\r\n\r\n processed.forEach((slice, index) => {\r\n if (vertical) {\r\n slice.exStartY = 0.02;\r\n slice.exEndY = 0.10;\r\n slice.exStartX = slice.exEndX = exStart + index * exLength;\r\n } else {\r\n slice.exStartX = 0.02;\r\n slice.exEndX = 0.10;\r\n slice.exStartY = slice.exEndY = exStart + index * exLength;\r\n }\r\n });\r\n\r\n return { processed, vertical };\r\n }\r\n\r\n updateBounds() {\r\n this.minX = this.maxX = this.minY = this.maxY = 0.5;\r\n if (this.sliceBounds) this.applyBounds(this.sliceBounds);\r\n if (this.compositeBounds) this.applyBounds(this.compositeBounds);\r\n }\r\n\r\n applyBounds(bounds) {\r\n this.maxX = Math.max(this.maxX, bounds.maxX);\r\n this.minX = Math.min(this.minX, bounds.minX);\r\n this.maxY = Math.max(this.maxY, bounds.maxY);\r\n this.minY = Math.min(this.minY, bounds.minY);\r\n }\r\n\r\n updateSliceBounds(bounds) {\r\n this.sliceBounds = bounds;\r\n this.updateBounds();\r\n this.signalReady();\r\n }\r\n\r\n updateCompositeSliceBounds(bounds) {\r\n this.compositeBounds = bounds;\r\n this.updateBounds();\r\n this.signalReady();\r\n }\r\n\r\n updatesliceCurrent(slice) {\r\n this.sliceCurrent = slice ? slice.index : null;\r\n this.signalReady();\r\n }\r\n\r\n updatecompositeCurrent(slice) {\r\n this.compositeCurrent = slice ? slice.index : null;\r\n this.signalReady();\r\n }\r\n\r\n getHoveredSlices(x, y, isDragging, outOfBoundsDirections) {\r\n return {\r\n slice: isDragging && outOfBoundsDirections == Directions.Vertical ? null : this.sliceAt(this.slices, this.slicesVertical, x, y),\r\n composite: isDragging && outOfBoundsDirections == Directions.Horizontal ? null :this.sliceAt(this.composites, this.compositesVertical, x, y)\r\n };\r\n }\r\n\r\n sliceAt(slices, vertical, x, y) {\r\n if (!slices.length) return null;\r\n\r\n let sorted = [...slices];\r\n if (this.isRadial) {\r\n sorted.sort((a, b) => this.getDistanceFromSlice(a, x, y) - this.getDistanceFromSlice(b, x, y));\r\n return sorted[0].index;\r\n }\r\n else if (vertical) sorted.sort((a, b) => a.sX - b.sX);\r\n else sorted.sort((a, b) => a.sY - b.sY);\r\n\r\n if (this.showExtension && x < sorted[0].sX) return this.findSliceInExtension(sorted, x, y);\r\n if (vertical)return this.findVerticalSlice(sorted, x, y);\r\n return this.findHorizontalSlice(sorted, x, y);\r\n }\r\n\r\n findSliceInExtension(slices, x, y) {\r\n // for now - not supporting vertical extensions\r\n let less = (slice, x, y) => y < slice.exStartY;\r\n let greater = (slice, x, y) => y >= slice.exStartY;\r\n return this.binarySearch(slices, x, y, less, greater);\r\n }\r\n\r\n findHorizontalSlice(slices, x, y) {\r\n let less = (slice, x, y) => y < slice.eY;\r\n let greater = (slice, x, y) => y >= slice.eY;\r\n return this.binarySearch(slices, x, y, less, greater);\r\n }\r\n\r\n findVerticalSlice(slices, x, y) {\r\n let less = (slice, x) => x < slice.eX;\r\n let greater = (slice, x) => x >= slice.eX;\r\n return this.binarySearch(slices, x, y, less, greater);\r\n }\r\n \r\n getDistanceFromSlice(slice, x, y) {\r\n let dy = slice.eY - slice.sY;\r\n let dx = slice.eX - slice.sX;\r\n\r\n let numerator = Math.abs(dy * x - dx * y\r\n + slice.eX * slice.sY - slice.eY * slice.sX);\r\n let denominator = Math.sqrt(dy * dy + dx * dx);\r\n return numerator / denominator;\r\n }\r\n\r\n binarySearch(slices, x, y, less, greater) {\r\n if (less(slices[0], x, y)) return slices[0].index;\r\n if (greater(slices[slices.length - 1], x, y)) return slices[slices.length - 1].index;\r\n\r\n let l = 0, r = slices.length, m = 0;\r\n while (l < (r - 1)) {\r\n m = Math.floor((l + r) / 2);\r\n if (less(slices[m], x, y)) r = m;\r\n else l = m;\r\n }\r\n return slices[l].index;\r\n }\r\n\r\n updateDrawAllSlices(drawAllSlices) {\r\n this.drawAllSlices = drawAllSlices;\r\n this.signalReady();\r\n }\r\n updateShowExtension(showExtension) {\r\n this.showExtension = showExtension;\r\n this.signalReady();\r\n }\r\n updateShowBindingBox(showBindingBox) {\r\n this.showBindingBox = showBindingBox;\r\n this.signalReady();\r\n }\r\n}","import Annotation from \"./annotation\";\r\n\r\nclass CircularPattern extends Annotation {\r\n constructor() {\r\n super();\r\n\r\n this.color = \"#00b0f0\";\r\n this.lineWidth = 1;\r\n this.canvasSize = null;\r\n this.slice = null;\r\n // circle\r\n this.centerX = 0;\r\n this.centerY = 0;\r\n this.radius = 0;\r\n // triangle\r\n this.overlayTriangleSize = 8;\r\n this.half = 0;\r\n this.top = 0;\r\n this.triangleStartPoint = null;\r\n this.seg1 = null;\r\n this.seg2 = null;\r\n this.seg3 = null;\r\n\r\n }\r\n\r\n draw(ctx) {\r\n if (!this.canvasSize || !this.slice) \r\n return;\r\n \r\n ctx.lineWidth = this.lineWidth;\r\n ctx.strokeStyle = this.color;\r\n ctx.fillStyle = this.color;\r\n \r\n this.updateCircularPattern();\r\n this.drawCircle(ctx)\r\n this.drawTriangle(ctx)\r\n }\r\n\r\n drawCircle(ctx){\r\n ctx.beginPath();\r\n ctx.arc(this.centerX, this.centerY, this.radius, 0, 2 * Math.PI);\r\n ctx.stroke();\r\n ctx.closePath();\r\n }\r\n \r\n drawTriangle(ctx){\r\n ctx.beginPath();\r\n ctx.moveTo(this.triangleStartPoint.x, this.triangleStartPoint.y);\r\n ctx.lineTo(this.seg1.x, this.seg1.y);\r\n ctx.lineTo(this.seg2.x, this.seg2.y);\r\n ctx.lineTo(this.seg3.x, this.seg3.y);\r\n ctx.stroke();\r\n ctx.fill();\r\n ctx.closePath();\r\n }\r\n\r\n updateSlices(slices) {\r\n if(slices.length == 1){\r\n this.slice = slices[0]; \r\n this.signalReady();\r\n }\r\n }\r\n\r\n updateCircularPattern(){\r\n this.centerX = this.slice.endPoint.x * this.canvasSize.w;\r\n this.centerY = this.slice.endPoint.y * this.canvasSize.h;\r\n this.radius = Math.abs(this.slice.endPoint.x - this.slice.startPoint.x) * this.canvasSize.w;\r\n\r\n this.updateTriangle();\r\n }\r\n\r\n updateTriangle(){\r\n this.half = this.overlayTriangleSize / 2.0;\r\n\t\tthis.top = this.half / Math.cos(Math.PI / 3.0);\r\n\r\n this.triangleStartPoint = { x: this.slice.startPoint.x * this.canvasSize.w - this.half, y: this.slice.startPoint.y * this.canvasSize.h};\r\n \r\n this.seg1 = {x: this.slice.startPoint.x * this.canvasSize.w + this.half, y: this.slice.startPoint.y * this.canvasSize.h};\r\n\r\n this.seg2 = {x: this.slice.startPoint.x * this.canvasSize.w, y: this.slice.startPoint.y * this.canvasSize.h - this.top};\r\n\r\n this.seg3 = this.triangleStartPoint;\r\n\r\n }\r\n}\r\n\r\nexport default CircularPattern;","import Annotation from \"./annotation\";\r\nimport { Directions } from \"../../config/config\";\r\nimport { getArcPosition } from \"../geometry\";\r\n\r\nclass RadialCirclesPattern extends Annotation {\r\n constructor() {\r\n super();\r\n\r\n this.color = \"rgba(0,176,240, 0.5)\";\r\n this.colorActive = \"#00b0f0\";\r\n this.lineWidth = 1;\r\n this.canvasSize = null;\r\n this.sliceCurrentWidth = 3;\r\n this.boxWidth = 3;\r\n \r\n this.slices = [];\r\n this.sliceCurrent = null;\r\n this.sliceBounds = null;\r\n this.slicesVertical = false;\r\n this.radialSlices = [];\r\n \r\n this.circleSlices = [];\r\n this.circleRadius = 0;\r\n\r\n this.triangleLength = 8;\r\n this.triangleInternalAngle = Math.PI / 8;\r\n \r\n this.minX = null;\r\n this.maxX = null;\r\n this.minY = null;\r\n this.maxY = null;\r\n\r\n this.drawAllSlices = true;\r\n this.showExtension = true;\r\n this.showBindingBox = false;\r\n\r\n this.canvasSize = null;\r\n this.drawBoundingBoxWidth = null;\r\n this.drawBoundingBoxHeight = null;\r\n\r\n this.isRadial = false;\r\n this.hasCircleScans = true;\r\n this.direction = \"\";\r\n }\r\n\r\n draw(ctx) {\r\n if (!this.canvasSize) \r\n return;\r\n\r\n let w = this.canvasSize.w;\r\n let h = this.canvasSize.h;\r\n\r\n if (this.slices.length && this.sliceCurrent != null) {\r\n this.drawSliceCollection(ctx, this.radialSlices, this.sliceCurrent, w, h, this.color, this.colorActive);\r\n this.drawCircleCollection(ctx, this.circleSlices, this.sliceCurrent, w, h, this.color, this.colorActive);\r\n this.drawTriangle(ctx, this.slices[this.sliceCurrent], w, h, this.colorActive);\r\n }\r\n\r\n if (this.showBindingBox) this.drawBoundingBox(ctx, w, h);\r\n }\r\n\r\n drawSliceCollection(ctx, slices, current, width, height, color, colorActive) {\r\n ctx.lineWidth = this.lineWidth;\r\n ctx.strokeStyle = color;\r\n ctx.fillStyle = color;\r\n if (this.drawAllSlices) slices.forEach(slice => this.drawSlice(ctx, slice, width, height));\r\n ctx.strokeStyle = colorActive;\r\n ctx.fillStyle = colorActive;\r\n ctx.lineWidth = this.showExtension ? this.sliceCurrentWidth : this.boxWidth;\r\n let slice = slices.find(s => s.index === current);\r\n if (slice) this.drawSlice(ctx, slice, width, height);\r\n }\r\n\r\n drawSlice(ctx, slice, width, height) {\r\n ctx.beginPath();\r\n ctx.moveTo(slice.eX * width, slice.eY * height);\r\n ctx.lineTo(slice.sX * width, slice.sY * height);\r\n ctx.stroke();\r\n ctx.closePath();\r\n }\r\n\r\n drawCircleCollection(ctx, slices, current, width, height, color, colorActive) {\r\n ctx.lineWidth = this.lineWidth;\r\n ctx.strokeStyle = color;\r\n ctx.fillStyle = color;\r\n\r\n let centerX = width * slices[0].eX;\r\n let centerY = height * slices[0].eY;\r\n if (this.circleRadius == 0)\r\n this.circleRadius = ((width * Math.abs(slices[0].eX - slices[0].sX)) + (height * Math.abs(slices[0].eY - slices[0].sY))) / 2;\r\n\r\n this.drawCircle(ctx, centerX, centerY, width * (slices[0].eX - slices[0].sX));\r\n this.drawCircle(ctx, centerX, centerY, width * (slices[1].eX - slices[1].sX));\r\n this.drawCircle(ctx, centerX, centerY, width * (slices[2].eX - slices[2].sX));\r\n\r\n ctx.strokeStyle = colorActive;\r\n ctx.fillStyle = colorActive;\r\n ctx.lineWidth = this.showExtension ? this.sliceCurrentWidth : this.boxWidth;\r\n let slice = slices.find(s => s.index === current);\r\n if (slice) this.drawCircle(ctx, centerX, centerY, width * (slice.eX - slice.sX));\r\n }\r\n\r\n drawCircle(ctx, centerX, centerY, radius) {\r\n ctx.beginPath();\r\n ctx.arc(centerX, centerY, radius, 0, 2 * Math.PI);\r\n ctx.stroke();\r\n ctx.closePath();\r\n }\r\n\r\n drawTriangle(ctx, currentSlice, x, y, color) {\r\n let angle, xPos, yPos;\r\n if (currentSlice.index < this.slices.length - 3) {\r\n if (this.direction == \"CW\") {\r\n xPos = currentSlice.eX * x;\r\n angle = Math.atan2(currentSlice.eY - currentSlice.sY, currentSlice.eX - currentSlice.sX);\r\n yPos = currentSlice.eY * y;\r\n }\r\n else {\r\n angle = Math.atan2(currentSlice.sY - currentSlice.eY, currentSlice.sX - currentSlice.eX);\r\n xPos = currentSlice.sX * x;\r\n yPos = currentSlice.sY * y;\r\n }\r\n let { x: x1, y: y1 } = this.getTriangleCoordinates(xPos, yPos, angle + this.triangleInternalAngle);\r\n let { x: x2, y: y2 } = this.getTriangleCoordinates(xPos, yPos, angle - this.triangleInternalAngle);\r\n \r\n ctx.strokeStyle = color;\r\n ctx.fillStyle = color;\r\n ctx.beginPath();\r\n ctx.moveTo(xPos, yPos);\r\n ctx.lineTo(x1, y1);\r\n ctx.lineTo(x2, y2);\r\n ctx.lineTo(xPos, yPos);\r\n ctx.stroke();\r\n ctx.fill();\r\n ctx.closePath();\r\n }\r\n }\r\n\r\n getTriangleCoordinates(x, y, angle) {\r\n return {\r\n x: x - this.triangleLength * Math.cos(angle),\r\n y: y - this.triangleLength * Math.sin(angle)\r\n };\r\n }\r\n\r\n drawBoundingBox(ctx, w, h) {\r\n this.drawBoundingBoxWidth = Math.abs(this.maxX - this.minX) * w;\r\n this.drawBoundingBoxHeight = Math.abs(this.minY - this.maxY) * h;\r\n ctx.lineWidth = this.boxWidth;\r\n ctx.strokeStyle = this.compositeColorActive;\r\n ctx.fillStyle = this.compositeColorActive;\r\n ctx.strokeRect(this.minX * w, this.minY * h, this.drawBoundingBoxWidth, this.drawBoundingBoxHeight);\r\n }\r\n\r\n updateSlices(slices) {\r\n let { processed, vertical } = this.processSliceCollection(slices);\r\n this.slices = processed;\r\n this.slicesVertical = vertical;\r\n \r\n if (!this.hasCircleScans) \r\n this.radialSlices = this.slices;\r\n else {\r\n this.radialSlices = this.slices.slice(0, this.slices.length - 3);\r\n this.circleSlices = this.slices.slice(this.slices.length - 3);\r\n }\r\n this.direction = this.circleSlices.length > 0 && this.circleSlices[0].direction != \"\" ? this.circleSlices[0].direction : \"CW\";\r\n this.signalReady();\r\n }\r\n\r\n processSliceCollection(slices) {\r\n if (!slices || !slices.length) return { processed: [] };\r\n let vertical = slices[0].vertical;\r\n let exStart = 0.02;\r\n let exEnd = 0.98;\r\n let exLength = slices.length > 1 ? (exEnd - exStart) / (slices.length - 1) : 0;\r\n let processed;\r\n if (slices.filter(e => \"direction\" in e && e.direction != \"\").length == 0) {\r\n this.hasCircleScans = false;\r\n processed = slices.map(slice => {\r\n return {\r\n index: slice.index,\r\n imgKey: slice.imgKey,\r\n sX: slice.startPoint.x,\r\n sY: slice.startPoint.y,\r\n eX: slice.endPoint.x,\r\n eY: slice.endPoint.y\r\n }\r\n }).sort((a, b) => {\r\n if (vertical) return a.eX - b.eX;\r\n return a.eY - b.eY;\r\n });\r\n \r\n processed.forEach((slice, index) => {\r\n if (vertical) {\r\n slice.exStartY = 0.02;\r\n slice.exEndY = 0.10;\r\n slice.exStartX = slice.exEndX = exStart + index * exLength;\r\n } else {\r\n slice.exStartX = 0.02;\r\n slice.exEndX = 0.10;\r\n slice.exStartY = slice.exEndY = exStart + index * exLength;\r\n }\r\n });\r\n }\r\n else {\r\n this.hasCircleScans = true;\r\n let radialSlices = slices.slice(0, slices.length - 3);\r\n let circleSlices = slices.slice(slices.length - 3);\r\n\r\n let radialProcessed = radialSlices.map(slice => {\r\n return {\r\n index: slice.index,\r\n imgKey: slice.imgKey,\r\n sX: slice.startPoint.x,\r\n sY: slice.startPoint.y,\r\n eX: slice.endPoint.x,\r\n eY: slice.endPoint.y\r\n }\r\n }).sort((a, b) => {\r\n if (vertical) return a.eX - b.eX;\r\n return a.eY - b.eY;\r\n });\r\n \r\n radialProcessed.forEach((slice, index) => {\r\n if (vertical) {\r\n slice.exStartY = 0.02;\r\n slice.exEndY = 0.10;\r\n slice.exStartX = slice.exEndX = exStart + index * exLength;\r\n } else {\r\n slice.exStartX = 0.02;\r\n slice.exEndX = 0.10;\r\n slice.exStartY = slice.exEndY = exStart + index * exLength;\r\n }\r\n });\r\n \r\n let circleProcessed = circleSlices.map(slice => {\r\n return {\r\n index: slice.index,\r\n imgKey: slice.imgKey,\r\n sX: slice.startPoint.x,\r\n sY: slice.startPoint.y,\r\n eX: slice.endPoint.x,\r\n eY: slice.endPoint.y,\r\n direction: slice.direction\r\n }\r\n }).sort((a, b) => {\r\n if (vertical) return a.eX - b.eX;\r\n return a.eY - b.eY;\r\n });\r\n \r\n processed = radialProcessed.concat(circleProcessed);\r\n }\r\n\r\n return { processed, vertical };\r\n }\r\n\r\n updateBounds() {\r\n this.minX = this.maxX = this.minY = this.maxY = 0.5;\r\n if (this.sliceBounds) this.applyBounds(this.sliceBounds);\r\n }\r\n\r\n applyBounds(bounds) {\r\n this.maxX = Math.max(this.maxX, bounds.maxX);\r\n this.minX = Math.min(this.minX, bounds.minX);\r\n this.maxY = Math.max(this.maxY, bounds.maxY);\r\n this.minY = Math.min(this.minY, bounds.minY);\r\n }\r\n\r\n updateSliceBounds(bounds) {\r\n this.sliceBounds = bounds;\r\n this.updateBounds();\r\n this.signalReady();\r\n }\r\n\r\n updatesliceCurrent(slice) {\r\n this.sliceCurrent = slice ? slice.index : null;\r\n this.signalReady();\r\n }\r\n\r\n getHoveredSlices(x, y, isDragging, outOfBoundsDirections) {\r\n return {\r\n slice: isDragging && outOfBoundsDirections == Directions.Vertical ? null : this.sliceAt(this.slices, this.slicesVertical, x, y),\r\n composite: isDragging && outOfBoundsDirections == Directions.Horizontal ? null :this.sliceAt(this.composites, this.compositesVertical, x, y)\r\n };\r\n }\r\n\r\n sliceAt(slices, vertical, x, y) {\r\n if (!slices.length) return null;\r\n\r\n let sorted = [...slices];\r\n sorted.sort((a, b) => this.getDistanceFromSlice(a, x, y) - this.getDistanceFromSlice(b, x, y));\r\n return sorted[0].index;\r\n }\r\n\r\n getDistanceFromSlice(slice, x, y) {\r\n if (slice.index < this.slices.length - 3 || !this.hasCircleScans) {\r\n let dy = slice.eY - slice.sY;\r\n let dx = slice.eX - slice.sX;\r\n\r\n let numerator = Math.abs(dy * x - dx * y\r\n + slice.eX * slice.sY - slice.eY * slice.sX);\r\n let denominator = Math.sqrt(dy * dy + dx * dx);\r\n return numerator / denominator;\r\n }\r\n else\r\n return this.getDistanceFromCircleSlice(slice, x, y);\r\n }\r\n\r\n getDistanceFromCircleSlice(slice, x, y) {\r\n let angle = Math.atan2(y - slice.eY, x - slice.eX);\r\n let pos = getArcPosition(slice.eX, slice.eY, (slice.eX - slice.sX), (slice.eX - slice.sX), angle);\r\n\r\n let distance = Math.sqrt((x - pos.x) * (x - pos.x) + (y - pos.y) * (y - pos.y))\r\n \r\n return distance;\r\n }\r\n\r\n updateDrawAllSlices(drawAllSlices) {\r\n this.drawAllSlices = drawAllSlices;\r\n this.signalReady();\r\n }\r\n \r\n updateShowBindingBox(showBindingBox) {\r\n this.showBindingBox = showBindingBox;\r\n this.signalReady();\r\n }\r\n}\r\n\r\nexport default RadialCirclesPattern;","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('playback-controls',{attrs:{\"id\":\"oct-slice-contorls\",\"index\":_vm.index,\"count\":_vm.count,\"isPlaying\":_vm.isPlaying,\"playRate\":_vm.playRate},on:{\"previous\":function($event){return _vm.$emit('previous')},\"next\":function($event){return _vm.$emit('next')},\"play\":function($event){return _vm.$emit('play')},\"pause\":function($event){return _vm.$emit('pause')},\"setPlayRate\":function($event){return _vm.$emit('setPlayRate', $event)}}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OCTSliceControls.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OCTSliceControls.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./OCTSliceControls.vue?vue&type=template&id=26fe233a&scoped=true&\"\nimport script from \"./OCTSliceControls.vue?vue&type=script&lang=js&\"\nexport * from \"./OCTSliceControls.vue?vue&type=script&lang=js&\"\nimport style0 from \"./OCTSliceControls.vue?vue&type=style&index=0&id=26fe233a&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"26fe233a\",\n null\n \n)\n\nexport default component.exports","import Annotation from \"./annotation\";\r\nimport { setFontStyle, setLineStyle } from \"../canvasUtils\";\r\n\r\nexport default class ThicknessMapPalette extends Annotation {\r\n constructor() {\r\n super();\r\n\r\n this.gradient = [];\r\n this.min = 0;\r\n this.max = 500;\r\n this.step = 100;\r\n\r\n this.lineWidth = 1;\r\n this.color = \"white\";\r\n this.fontColor = \"white\";\r\n this.font = \"12px Calibri\";\r\n this.baseline = \"middle\";\r\n \r\n this.canvasSize = null;\r\n }\r\n\r\n draw(ctx) {\r\n if (!this.canvasSize || !this.gradient || !this.gradient.length) return;\r\n let { x, y, gradientWidth, gradientHeight } = this.calculatePositions();\r\n this.drawScale(ctx, x, y, gradientWidth, gradientHeight);\r\n this.drawGradient(ctx, x, y, gradientWidth, gradientHeight);\r\n }\r\n\r\n calculatePositions() {\r\n let gradientHeight = Math.min(this.canvasSize.h - 30, 175);\r\n let gradientWidth = 15;\r\n let x = 0;\r\n let y = (this.canvasSize.h - gradientHeight) / 2;\r\n return { x, y, gradientWidth, gradientHeight };\r\n }\r\n\r\n drawGradient(ctx, x, y, w, h) {\r\n let gradient = ctx.createLinearGradient(0, y, 0, y + h);\r\n for (let i = 0; i < this.gradient.length; i++) {\r\n let stop = this.gradient[i];\r\n gradient.addColorStop(1 - stop[0], \"#\" + stop[1].toString(16).padStart(6, \"0\"));\r\n }\r\n ctx.fillStyle = gradient;\r\n ctx.fillRect(x, y, w, h);\r\n }\r\n\r\n drawScale(ctx, x, y, w, h) {\r\n setFontStyle(ctx, this);\r\n ctx.beginPath();\r\n ctx.moveTo(x + w + 5, y);\r\n ctx.lineTo(x + w + 5, y + h);\r\n let stepHeight = this.step / (this.max - this.min) * h;\r\n let textY = y + h;\r\n let currentStep = this.min;\r\n while (textY >= y - 5) {\r\n this.drawScaleText(ctx, currentStep, x + w + 5, textY);\r\n textY -= stepHeight;\r\n currentStep += this.step;\r\n }\r\n ctx.closePath();\r\n setLineStyle(ctx, this);\r\n ctx.stroke();\r\n }\r\n\r\n drawScaleText(ctx, step, x, y) {\r\n ctx.moveTo(x, y);\r\n ctx.lineTo(x + 5, y);\r\n let text = step || \"0 µm\";\r\n ctx.fillText(text, x + 10, y);\r\n }\r\n\r\n updateGradient(gradient) {\r\n this.gradient = gradient;\r\n this.signalReady();\r\n }\r\n}","import Annotation from \"./annotation\";\r\nimport { drawEllipse, setLineStyle, setFontStyle } from \"../canvasUtils\";\r\nimport { getArcPosition } from \"../geometry\";\r\n\r\nexport default class AnalysisETDRS extends Annotation {\r\n constructor(color, fontColor) {\r\n super();\r\n\r\n this.canvasSize = null;\r\n this.bounds = { minX: 0, maxX: 1, minY: 0, maxY: 1 };\r\n this.offset = null;\r\n this.analysis = null;\r\n \r\n this.color = color || \"#2ECE2E\";\r\n this.lineWidth = 2;\r\n\r\n this.font = \"16px Calibri\";\r\n this.baseline = \"hanging\";\r\n this.fontColor = fontColor || \"black\";\r\n\r\n this.seAngle = Math.PI / 4;\r\n this.swAngle = 3 * Math.PI / 4;\r\n }\r\n\r\n draw(ctx) {\r\n if (!this.offset || !this.analysis || !this.canvasSize) return;\r\n\r\n let w = this.canvasSize.w * (this.bounds.maxX - this.bounds.minX);\r\n let h = this.canvasSize.h * (this.bounds.maxY - this.bounds.minY);\r\n let centerX = this.canvasSize.w * this.offset.x;\r\n let centerY = this.canvasSize.h * this.offset.y;\r\n let innerRadiusX = w * this.analysis.centerRadius.x;\r\n let innerRadiusY = h * this.analysis.centerRadius.y;\r\n setLineStyle(ctx, this);\r\n this.drawEllipse(ctx, centerX, centerY, innerRadiusX, innerRadiusY);\r\n\r\n let middleRadiusX = w * this.analysis.middleCircle.radius.x;\r\n let middleRadiusY = h * this.analysis.middleCircle.radius.y;\r\n this.drawEllipse(ctx, centerX, centerY, middleRadiusX, middleRadiusY);\r\n\r\n let outerRadiusX = w * this.analysis.outerCircle.radius.x;\r\n let outerRadiusY = h * this.analysis.outerCircle.radius.y;\r\n this.drawEllipse(ctx, centerX, centerY, outerRadiusX, outerRadiusY);\r\n\r\n let seInner = getArcPosition(centerX, centerY, innerRadiusX, innerRadiusY, this.seAngle);\r\n let seOuter = getArcPosition(centerX, centerY, outerRadiusX, outerRadiusY, this.seAngle);\r\n this.drawSector(ctx, seInner, seOuter);\r\n\r\n let swInner = getArcPosition(centerX, centerY, innerRadiusX, innerRadiusY, this.swAngle);\r\n let swOuter = getArcPosition(centerX, centerY, outerRadiusX, outerRadiusY, this.swAngle);\r\n this.drawSector(ctx, swInner, swOuter);\r\n\r\n let neInner = getArcPosition(centerX, centerY, innerRadiusX, innerRadiusY, -this.seAngle);\r\n let neOuter = getArcPosition(centerX, centerY, outerRadiusX, outerRadiusY, -this.seAngle);\r\n this.drawSector(ctx, neInner, neOuter);\r\n\r\n let nwInner = getArcPosition(centerX, centerY, innerRadiusX, innerRadiusY, -this.swAngle);\r\n let nwOuter = getArcPosition(centerX, centerY, outerRadiusX, outerRadiusY, -this.swAngle);\r\n this.drawSector(ctx, nwInner, nwOuter);\r\n\r\n this.setAppropriateFontSize(ctx, innerRadiusX, middleRadiusX);\r\n this.drawText(ctx, centerX, centerY, this.analysis.centerAverageThickness);\r\n\r\n let imRadiusX = 0.5 * (middleRadiusX + innerRadiusX);\r\n let imRadiusY = 0.5 * (middleRadiusY + innerRadiusY);\r\n this.drawCircleText(ctx, centerX, centerY, imRadiusX, imRadiusY, this.analysis.middleCircle);\r\n\r\n let moRadiusX = 0.5 * (middleRadiusX + outerRadiusX);\r\n let moRadiusY = 0.5 * (middleRadiusY + outerRadiusY);\r\n this.drawCircleText(ctx, centerX, centerY, moRadiusX, moRadiusY, this.analysis.outerCircle);\r\n }\r\n\r\n setAppropriateFontSize(ctx, innerRadiusX, middleRadiusX) {\r\n let centerText = this.analysis.centerAverageThickness;\r\n let fText = this.formatText(centerText);\r\n setFontStyle(ctx, this);\r\n let width = ctx.measureText(fText).width;\r\n let innerWidth = innerRadiusX * 2;\r\n let middleWidth = (middleRadiusX - innerRadiusX);\r\n let space = Math.min(innerWidth, middleWidth);\r\n\r\n if (width > space) {\r\n let fontSize = (16 * space / width) - 2;\r\n ctx.font = fontSize + \"px Calibri\";\r\n }\r\n }\r\n\r\n drawEllipse(ctx, centerX, centerY, radiusX, radiusY) {\r\n if (radiusX <= 0 || radiusY <= 0) return;\r\n ctx.beginPath();\r\n drawEllipse(ctx, centerX, centerY, radiusX, radiusY);\r\n ctx.closePath();\r\n ctx.stroke();\r\n }\r\n\r\n drawSector(ctx, start, end) {\r\n ctx.beginPath();\r\n ctx.moveTo(start.x, start.y);\r\n ctx.lineTo(end.x, end.y);\r\n ctx.closePath();\r\n ctx.stroke();\r\n }\r\n\r\n drawText(ctx, x, y, text) {\r\n let format = this.formatText(text);\r\n let width = ctx.measureText(format).width;\r\n ctx.fillText(format, x - width / 2, y - 7);\r\n }\r\n\r\n formatText(text) {\r\n return (text * 1000).toFixed(0);\r\n }\r\n\r\n drawEllipseText(ctx, centerX, centerY, radiusX, radiusY, angle, text) {\r\n let { x, y } = getArcPosition(centerX, centerY, radiusX, radiusY, angle);\r\n this.drawText(ctx, x, y, text);\r\n }\r\n\r\n drawCircleText(ctx, centerX, centerY, radiusX, radiusY, circle) {\r\n this.drawEllipseText(ctx, centerX, centerY, radiusX, radiusY, 0, circle.eastValue);\r\n this.drawEllipseText(ctx, centerX, centerY, radiusX, radiusY, Math.PI / 2, circle.southValue);\r\n this.drawEllipseText(ctx, centerX, centerY, radiusX, radiusY, -Math.PI / 2, circle.northValue);\r\n this.drawEllipseText(ctx, centerX, centerY, radiusX, radiusY, Math.PI, circle.westValue);\r\n }\r\n\r\n updateThicknessAnalysis(analysis) {\r\n this.analysis = analysis;\r\n this.signalReady();\r\n }\r\n\r\n updateFoveaOffset(offset) {\r\n this.offset = offset;\r\n this.signalReady();\r\n }\r\n\r\n updateBounds(bounds) {\r\n this.bounds = bounds;\r\n this.signalReady();\r\n }\r\n}","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OCTReferenceImage.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OCTReferenceImage.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./OCTReferenceImage.vue?vue&type=template&id=59197210&\"\nimport script from \"./OCTReferenceImage.vue?vue&type=script&lang=js&\"\nexport * from \"./OCTReferenceImage.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VFlex,VLayout,VProgressCircular,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{staticClass:\"control-toolbar oct-toolbar secondary\",attrs:{\"justify\":\"center\",\"align\":\"center\",\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"mr-3 pt-2\",attrs:{\"cols\":this.isLandscape ? 3 : 'auto'}},[_c('select-with-button',{staticClass:\"toolbar-select\",attrs:{\"value\":_vm.selectedDropdownItem,\"items\":_vm.octDropdownItems,\"item-value\":\"flSrNo\",\"icon-button\":true,\"item-text\":\"octDateButtonText\"},on:{\"change\":_vm.selectImage}})],1),_c('od-os-buttons',{staticClass:\"pt-2\",attrs:{\"eye\":_vm.currentEye},on:{\"selectOD\":_vm.selectOD,\"selectOS\":_vm.selectOS}}),_c('v-spacer'),_c('v-col',{staticClass:\"pt-1\",attrs:{\"cols\":this.isLandscape ? 2 : 'auto'}},[_c('v-btn',{staticClass:\"multiview-button\",attrs:{\"text\":\"\"},on:{\"click\":_vm.multiView}},[_c('v-avatar',{staticClass:\"mr-1\",attrs:{\"size\":\"30\"}},[_c('img',{attrs:{\"src\":require('../../../assets/' + _vm.coloredAssetUrls.multiview)}})]),_vm._v(\"Multiview\\n \")],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-col',{staticClass:\"od-os-buttons\",attrs:{\"cols\":\"auto\"}},[_c('v-btn',{staticClass:\"modal-cta\",class:[{ active: _vm.isOD }, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.$emit('selectOD')}}},[_vm._v(\"OD\")]),_c('v-btn',{staticClass:\"modal-cta\",class:[{ active: !_vm.isOD }, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.$emit('selectOS')}}},[_vm._v(\"OS\")])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OdOsButtons.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OdOsButtons.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./OdOsButtons.vue?vue&type=template&id=df562f66&\"\nimport script from \"./OdOsButtons.vue?vue&type=script&lang=js&\"\nexport * from \"./OdOsButtons.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol})\n","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OCTToolbar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OCTToolbar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./OCTToolbar.vue?vue&type=template&id=81acb30c&\"\nimport script from \"./OCTToolbar.vue?vue&type=script&lang=js&\"\nexport * from \"./OCTToolbar.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAvatar } from 'vuetify/lib/components/VAvatar';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VAvatar,VBtn,VCol,VRow,VSpacer})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{staticClass:\"spectralis-color-buttons justify-center\",attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-btn',{staticClass:\"modal-cta\",class:[{active: _vm.hasColorPalette}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.toggleColor}},[_vm._v(\"Color\")]),_c('v-btn',{staticClass:\"modal-cta\",class:[{active: _vm.isInverted}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.invertColor}},[_vm._v(\"Invert\")]),(_vm.sliceHasSegmentation)?_c('v-btn',{staticClass:\"modal-cta\",class:[{active: _vm.showSegmentation}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.toggleSegmentation}},[_vm._v(\"Segmentation\")]):_vm._e(),(_vm.sliceHasSegmentation)?_c('v-btn',{staticClass:\"modal-cta\",class:[{active: _vm.isMeasuring}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.measure}},[_vm._v(\"Measure\")]):_vm._e(),(_vm.showSpectralisThicknessMapButton)?_c('v-btn',{staticClass:\"modal-cta\",class:[{active: _vm.showThicknessMap}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.toggleShowThicknessMap}},[_vm._v(\"Thickness Map\")]):_vm._e(),(_vm.showThicknessMap)?_c('reset-slider',{attrs:{\"color\":_vm.colorHex,\"value\":_vm.thicknessMapOpacity,\"min\":0,\"max\":1,\"step\":0.05,\"defaultValue\":0.5,\"name\":\"Color Intensity\"},on:{\"input\":_vm.updateOpacity}}):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpectralisColorButtons.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpectralisColorButtons.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SpectralisColorButtons.vue?vue&type=template&id=086440ef&\"\nimport script from \"./SpectralisColorButtons.vue?vue&type=script&lang=js&\"\nexport * from \"./SpectralisColorButtons.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VFlex,VLayout})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"spectralis-main-view-wrapper\",on:{\"wheel\":function($event){$event.preventDefault();return _vm.wheel($event)}}},[_c('oct-slice-view',{staticClass:\"off-center-canvas\",attrs:{\"sliceSize\":_vm.sliceSize,\"fitSize\":_vm.sliceFit,\"img\":_vm.sliceImg,\"imgSize\":_vm.sliceImgSize,\"transform\":_vm.transform,\"octColorSettings\":_vm.octColorSettings,\"imgLoading\":_vm.sliceImgLoading,\"dataLoading\":_vm.octDataLoading,\"sliceEyeMarker\":_vm.sliceCurrentEyeMarker,\"imgNotFound\":_vm.sliceImgNotFound,\"showSegmentation\":_vm.showSegmentation,\"sliceInfo\":_vm.sliceInfo,\"layerData\":_vm.sliceSegmentationLayerData,\"isMeasuring\":_vm.isMeasuring,\"measureData\":_vm.measureData,\"realLocation\":_vm.realLocation,\"isInBounds\":_vm.isInBounds},on:{\"measurementChanged\":_vm.measurementChanged}}),_c('div',{staticClass:\"spectralis-chart-wrapper\",attrs:{\"id\":\"spectralis-chart-wrapper\"}},[(!!_vm.sliceSegmentationThicknessData)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.chartSize,\"imgSize\":_vm.chartSize,\"annotation\":_vm.thicknessChart}}):_vm._e(),(_vm.isMeasuring)?_c('canvas-annotation',{staticClass:\"off-center-canvas\",attrs:{\"canvasSize\":_vm.innerChartSize,\"imgSize\":_vm.innerChartSize,\"annotation\":_vm.innerChartSegmentationMeasurement}}):_vm._e(),(_vm.sliceSegmentationIsLoading)?_c('v-progress-circular',{staticClass:\"escalon-absolute-center\",attrs:{\"indeterminate\":\"\"}}):_vm._e()],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { setLineStyle, setFontStyle } from \"../canvasUtils\";\r\nimport Annotation from \"./annotation\";\r\n\r\nexport default class ThicknessChart extends Annotation {\r\n constructor() {\r\n super();\r\n\r\n this.data = null;\r\n this.chartSize = null;\r\n this.scaledData = null;\r\n this.maxX = null;\r\n this.yRules = [0, 250, 500, 750, 1000];\r\n this.xRules = [];\r\n\r\n this.xInPerPx = 0;\r\n this.yInPerPx = 0;\r\n this.mmPerIn = 25.4;\r\n this.umPerMm = 1000;\r\n\r\n this.transform = null;\r\n this.sliceFit = null;\r\n this.sliceInfo = null;\r\n this.exam = null;\r\n\r\n this.lineWidth = 2;\r\n this.color = \"#262626\";\r\n this.ruleWidth = 40;\r\n this.gutterHeight = 23;\r\n\r\n this.font = \"14px Calibri\";\r\n this.baseline = \"hanging\";\r\n this.fontColor = \"#00b0f0\";\r\n this.dataColor = \"#00b0f0\";\r\n\r\n this.yLabel = \"Thickness (μm)\";\r\n this.xLabel = \"Position (mm)\";\r\n this.canvasSize = null;\r\n\r\n this.curXsize = 0;\r\n this.zoomXOffset = 0.5;\r\n }\r\n\r\n draw(ctx) {\r\n if (!this.sliceFit || !this.scaledData || !this.transform || !this.canvasSize) return;\r\n\r\n let w = this.canvasSize.w;\r\n let h = this.canvasSize.h;\r\n\r\n let chartW = this.sliceFit.w;\r\n let chartH = h - this.ruleWidth - this.gutterHeight;\r\n let zeroX = w - chartW;\r\n setLineStyle(ctx, this);\r\n this.drawBars(ctx, zeroX, chartH, chartW);\r\n this.drawRules(ctx, zeroX, chartH, chartW);\r\n setFontStyle(ctx, this);\r\n this.writeRules(ctx, zeroX, chartH, chartW);\r\n this.writeLabels(ctx, zeroX, chartH, chartW);\r\n ctx.strokeStyle = this.dataColor;\r\n this.drawData(ctx, zeroX, chartH, chartW);\r\n }\r\n\r\n drawBars(ctx, zeroX, chartH, chartW) {\r\n ctx.fillRect(zeroX - this.ruleWidth, 0, this.ruleWidth, chartH + this.ruleWidth);\r\n ctx.fillRect(zeroX - this.ruleWidth, chartH, chartW + this.ruleWidth, this.ruleWidth);\r\n }\r\n\r\n drawRules(ctx, zeroX, chartH, chartW) {\r\n this.yRules.forEach(value => {\r\n let y = this.convertY(chartH, value);\r\n if (y <= 0 || y >= chartH) return;\r\n ctx.beginPath();\r\n ctx.moveTo(zeroX, y);\r\n ctx.lineTo(zeroX + chartW, y);\r\n ctx.stroke();\r\n ctx.closePath();\r\n });\r\n\r\n this.xRules.forEach(value => {\r\n let x = this.convertX(zeroX, chartW, value);\r\n if (x <= zeroX || x >= (zeroX + chartW)) return;\r\n ctx.beginPath();\r\n ctx.moveTo(x, 0);\r\n ctx.lineTo(x, chartH);\r\n ctx.stroke();\r\n ctx.closePath();\r\n });\r\n }\r\n\r\n writeRules(ctx, zeroX, chartH, chartW) {\r\n this.yRules.forEach(value => {\r\n let y = this.convertY(chartH, value);\r\n if (y < 0 || y > chartH) return;\r\n this.writeYRule(ctx, zeroX, y, value);\r\n });\r\n\r\n this.xRules.forEach(value => {\r\n let x = this.convertX(zeroX, chartW, value);\r\n if (x < zeroX || x > (zeroX + chartW)) return;\r\n this.writeXRule(ctx, x, chartH, value);\r\n });\r\n }\r\n\r\n writeYRule(ctx, x, y, value) {\r\n let width = ctx.measureText(value).width;\r\n ctx.fillText(value, x - width - 10, y);\r\n }\r\n\r\n writeXRule(ctx, x, y, value) {\r\n let width = ctx.measureText(value).width;\r\n ctx.fillText(value, x - width / 2, y + 10);\r\n }\r\n\r\n writeLabels(ctx, zeroX, chartH, chartW) {\r\n let yLabelWidth = ctx.measureText(this.yLabel).width;\r\n let x = zeroX - yLabelWidth - this.ruleWidth - 5;\r\n let y = chartH / 2 - 7;\r\n ctx.save();\r\n ctx.translate(x + 60, y + 60);\r\n ctx.rotate(-Math.PI/2);\r\n ctx.fillText(this.yLabel, 0, 0);\r\n ctx.restore();\r\n\r\n let xLabelWidth = ctx.measureText(this.xLabel).width;\r\n x = zeroX + (chartW - xLabelWidth) / 2;\r\n y = chartH + this.ruleWidth + 5;\r\n ctx.fillText(this.xLabel, x, y);\r\n }\r\n\r\n drawData(ctx, zeroX, chartH, chartW) {\r\n ctx.beginPath();\r\n let start = true;\r\n this.scaledData.forEach((value, index) => {\r\n let x = this.convertX(zeroX, chartW, index * this.xInPerPx * this.mmPerIn);\r\n if (x <= zeroX || x >= (zeroX + chartW)) return;\r\n let y = this.convertY(chartH, value);\r\n if (y <= 0 || y >= chartH) return;\r\n if (start) {\r\n ctx.moveTo(x, y);\r\n start = false;\r\n }\r\n else ctx.lineTo(x, y);\r\n })\r\n ctx.stroke();\r\n ctx.closePath();\r\n }\r\n\r\n convertX(zeroX, chartW, x) {\r\n let fitZoom = this.transform.fitZoom;\r\n let zoom = this.transform.zoom;\r\n let offsetX = this.transform.offsetX;\r\n\r\n return zeroX + x * (chartW * zoom) / (this.maxX * fitZoom) + offsetX;\r\n }\r\n\r\n convertY(chartH, y) {\r\n return chartH * (1 - y / 1000);\r\n }\r\n\r\n updateData(data) {\r\n if (this.data !== data) this.data = data;\r\n this.updateScaledData();\r\n this.signalReady();\r\n }\r\n\r\n updateChartSize(chartSize) {\r\n if (this.chartSize !== chartSize) this.chartSize = chartSize;\r\n this.signalReady();\r\n }\r\n\r\n updateSliceFit(fit) {\r\n if (this.sliceFit !== fit) this.sliceFit = fit;\r\n this.signalReady();\r\n }\r\n\r\n updateTransform(transform) {\r\n if (this.transform !== transform) this.transform = transform;\r\n this.signalReady();\r\n }\r\n\r\n updateSliceInfo(sliceInfo) {\r\n if (this.sliceInfo !== sliceInfo) this.sliceInfo = sliceInfo;\r\n if (this.sliceInfo) {\r\n this.xInPerPx = 1 / this.sliceInfo.dimensions.horizontalResolution;\r\n this.yInPerPx = 1 / this.sliceInfo.dimensions.verticalResolution;\r\n\r\n let pxWidth = this.sliceInfo.segmentation.originalPixelWidth;\r\n let xPxPerMm = this.sliceInfo.dimensions.horizontalResolution / this.mmPerIn;\r\n this.curXsize = pxWidth / xPxPerMm;\r\n }\r\n this.updateScaledData();\r\n this.signalReady();\r\n }\r\n\r\n updateScaledData() {\r\n if (this.sliceInfo && this.data) {\r\n this.scaledData = this.data.map(v => v * this.yInPerPx * this.mmPerIn * this.umPerMm);\r\n let zoomCenter = this.zoomXOffset * this.curXsize;\r\n let imageCenter = this.curXsize / 2;\r\n this.maxX = zoomCenter + ((this.curXsize - imageCenter) / 1);\r\n this.generateXRules();\r\n }\r\n }\r\n\r\n generateXRules() {\r\n this.xRules = [];\r\n let value = 0.0;\r\n while (value < this.maxX) {\r\n this.xRules.push(value);\r\n value += 0.5;\r\n }\r\n }\r\n}","import Annotation from \"./annotation\";\r\nimport { setLineStyle, setFontStyle } from \"../canvasUtils\";\r\n\r\nexport default class InnerChartSegmentationMeasurement extends Annotation {\r\n constructor() {\r\n super();\r\n\r\n this.transform = null;\r\n this.sliceInfo = null;\r\n this.measureData = null;\r\n this.maxX = null;\r\n this.xInPerPx = 0;\r\n this.yInPerPx = 0;\r\n this.mmPerIn = 25.4;\r\n this.umPerMm = 1000;\r\n\r\n this.color = \"#00b0f0\";\r\n this.font = \"14px Calibri\";\r\n this.baseline = \"hanging\";\r\n\r\n this.triangleLength = 5;\r\n\r\n this.canvasSize = null;\r\n }\r\n\r\n draw(ctx) {\r\n if (!this.measureData || !this.transform || !this.sliceInfo || !this.canvasSize) return;\r\n\r\n let w = this.canvasSize.w;\r\n let h = this.canvasSize.h;\r\n\r\n let chartW = w;\r\n let x = this.convertX(chartW, this.measureData.index);\r\n\r\n setLineStyle(ctx, this);\r\n this.drawSlider(ctx, x);\r\n\r\n if (!this.measureData.thickness) return;\r\n\r\n let chartH = h;\r\n let y = this.convertY(chartH, this.measureData.thickness);\r\n this.drawHelperLine(ctx, x, y);\r\n this.drawThicknessLine(ctx, x, y, chartH);\r\n\r\n let text = this.measureData.thicknessText;\r\n this.drawText(ctx, x, y, chartH, chartW, text);\r\n }\r\n\r\n drawSlider(ctx, x){\r\n ctx.beginPath();\r\n ctx.moveTo(x, this.triangleLength);\r\n ctx.lineTo(x - this.triangleLength, 0);\r\n ctx.lineTo(x + this.triangleLength, 0);\r\n ctx.lineTo(x, this.triangleLength);\r\n ctx.closePath();\r\n ctx.stroke();\r\n ctx.fill();\r\n }\r\n\r\n drawHelperLine(ctx, x, y){\r\n ctx.setLineDash([3, 10]);\r\n ctx.beginPath();\r\n ctx.moveTo(x, 0);\r\n ctx.lineTo(x, y - 10);\r\n ctx.stroke();\r\n ctx.closePath();\r\n ctx.setLineDash([]);\r\n }\r\n\r\n drawThicknessLine(ctx, x, y, chartH){\r\n ctx.beginPath();\r\n ctx.moveTo(x, y);\r\n ctx.lineTo(x, chartH);\r\n ctx.closePath();\r\n ctx.stroke();\r\n }\r\n\r\n drawText(ctx, x, y, chartH, chartW, text){\r\n setFontStyle(ctx, this);\r\n let textY = (chartH + y) / 2 - 7;\r\n let textWidth = ctx.measureText(text).width;\r\n let textX = x + 5;\r\n if (chartW < x + textWidth + 5) textX = x - textWidth - 5;\r\n ctx.fillText(text, textX, textY);\r\n }\r\n\r\n convertX(chartW, x) {\r\n let fitZoom = this.transform.fitZoom;\r\n let zoom = this.transform.zoom;\r\n let offsetX = this.transform.offsetX;\r\n\r\n return x * (chartW * zoom * this.xInPerPx * this.mmPerIn) / (this.maxX * fitZoom) + offsetX;\r\n }\r\n\r\n convertY(chartH, y) {\r\n return chartH * (1 - y * this.yInPerPx * this.mmPerIn * this.umPerMm / 1000);\r\n }\r\n\r\n updateTransform(transform) {\r\n if (this.transform !== transform) this.transform = transform;\r\n this.signalReady();\r\n }\r\n\r\n updateSliceInfo(sliceInfo) {\r\n if (this.sliceInfo !== sliceInfo) this.sliceInfo = sliceInfo;\r\n if (this.sliceInfo) {\r\n this.xInPerPx = 1 / this.sliceInfo.dimensions.horizontalResolution;\r\n this.yInPerPx = 1 / this.sliceInfo.dimensions.verticalResolution;\r\n\r\n let pxWidth = this.sliceInfo.segmentation.originalPixelWidth;\r\n let xPxPerMm = this.sliceInfo.dimensions.horizontalResolution / this.mmPerIn;\r\n this.maxX = pxWidth / xPxPerMm;\r\n }\r\n this.signalReady();\r\n }\r\n\r\n updateMeasureData(data) {\r\n if (this.measureData !== data) this.measureData = data;\r\n this.signalReady();\r\n }\r\n}\r\n\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"hammer\",rawName:\"v-hammer:press\",value:(_vm.handlePanstart),expression:\"handlePanstart\",arg:\"press\"},{name:\"hammer\",rawName:\"v-hammer:panstart\",value:(_vm.handlePanstart),expression:\"handlePanstart\",arg:\"panstart\"},{name:\"hammer\",rawName:\"v-hammer:pan\",value:(_vm.handlePanmove),expression:\"handlePanmove\",arg:\"pan\"},{name:\"hammer\",rawName:\"v-hammer:panend\",value:(_vm.handlePanend),expression:\"handlePanend\",arg:\"panend\"},{name:\"hammer\",rawName:\"v-hammer:tap\",value:(_vm.handleTap),expression:\"handleTap\",arg:\"tap\"}],staticClass:\"oct-slice-view slice-image-wrapper interactive-canvas-wrapper\",class:_vm.cursorClass,style:(_vm.style),attrs:{\"id\":_vm.sliceId},on:{\"mousedown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"left\",37,$event.key,[\"Left\",\"ArrowLeft\"])){ return null; }if($event.target !== $event.currentTarget){ return null; }if('button' in $event && $event.button !== 0){ return null; }return _vm.handleMousedown($event)},\"mousemove\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.handleMousemove($event)},\"mouseup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"left\",37,$event.key,[\"Left\",\"ArrowLeft\"])){ return null; }if($event.target !== $event.currentTarget){ return null; }if('button' in $event && $event.button !== 0){ return null; }return _vm.handleMouseup($event)},\"mouseout\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.handleMouseout($event)}}},[(_vm.imgNotFound)?_c('image-not-found'):_vm._e(),_c('pixel-shaded-canvas',{attrs:{\"img\":_vm.img,\"octColorSettings\":_vm.octColorSettings,\"canvasSize\":_vm.fitSize,\"imgSize\":_vm.imgSize,\"transform\":_vm.transform,\"flippedX\":_vm.flippedX,\"isFlipped90\":_vm.isFlipped90,\"isFlipped270\":_vm.isFlipped270}}),(_vm.showSegmentation)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.fitSize,\"imgSize\":_vm.imgSize,\"transform\":_vm.transform,\"annotation\":_vm.segmentation,\"flippedX\":_vm.flippedX,\"isFlipped90\":_vm.isFlipped90,\"isFlipped270\":_vm.isFlipped270}}):_vm._e(),(_vm.isMeasuring)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.fitSize,\"annotation\":_vm.segmentationMeasurement,\"isFlipped90\":_vm.isFlipped90,\"isFlipped270\":_vm.isFlipped270}}):_vm._e(),(!!_vm.otherLine)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.fitSize,\"annotation\":_vm.otherLine,\"imgSize\":_vm.imgSize,\"flippedX\":_vm.flippedX,\"isFlipped90\":_vm.isFlipped90,\"isFlipped270\":_vm.isFlipped270}}):_vm._e(),(_vm.showOpticDiscLine)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.fitSize,\"annotation\":_vm.opticDiscLine,\"imgSize\":_vm.imgSize,\"flippedX\":_vm.flippedX,\"isFlipped90\":_vm.isFlipped90,\"isFlipped270\":_vm.isFlipped270}}):_vm._e(),_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.fitSize,\"annotation\":_vm.eyeMarker,\"forceTranslate\":this.eyeMarkerForceTranslate}}),(_vm.isLoading)?_c('v-progress-circular',{staticClass:\"escalon-absolute-center\",attrs:{\"indeterminate\":\"\"}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Annotation from \"./annotation\";\r\nimport { setLineStyle, setFontStyle } from \"../canvasUtils\";\r\nimport { POINTER_CLASSES } from \"../../config/config\";\r\n\r\nexport default class SegmentationMeasurement extends Annotation {\r\n constructor() {\r\n super();\r\n\r\n this.sliceFit = null;\r\n this.transform = null;\r\n this.sliceInfo = null;\r\n this.measureData = null;\r\n\r\n this.lineWidth = 3;\r\n this.color = \"#00b0f0\";\r\n this.font = \"14px Calibri\";\r\n this.baseline = \"hanging\";\r\n\r\n this.boxWidth = 40;\r\n this.boxHeight = 10;\r\n this.triangleLength = 5;\r\n\r\n this.sliderY = null;\r\n this.canvasSize = null;\r\n }\r\n\r\n draw(ctx) {\r\n if (!this.measureData || !this.transform || !this.sliceInfo || !this.sliceFit || !this.canvasSize) return;\r\n\r\n let x = this.convertX(this.measureData.index);\r\n let h = this.canvasSize.h;\r\n\r\n setLineStyle(ctx, this);\r\n this.drawSlider(ctx, x, h);\r\n\r\n if (this.measureData.ilm < 0 && this.measureData.rpe < 0) return;\r\n\r\n let ilm = this.convertY(this.measureData.ilm);\r\n let rpe = this.convertY(this.measureData.rpe);\r\n this.drawHelperLine(ctx, x, ctx.canvas.height, Math.max(ilm, rpe));\r\n\r\n if (!this.measureData.thickness) return;\r\n\r\n this.drawThicknessLine(ctx, x, ilm, rpe);\r\n\r\n let text = this.measureData.thicknessText;\r\n this.drawTextBackground(ctx, x, ilm, rpe, text);\r\n this.drawText(ctx, x, ilm, rpe, text);\r\n }\r\n\r\n convertX(x){\r\n let zoom = this.transform.zoom;\r\n let offsetX = this.transform.offsetX;\r\n return x * zoom + offsetX;\r\n }\r\n\r\n convertY(y) {\r\n let zoom = this.transform.zoom;\r\n let offsetY = this.transform.offsetY;\r\n return y * zoom + offsetY;\r\n }\r\n\r\n drawThicknessLine(ctx, x, ilm, rpe) {\r\n ctx.beginPath();\r\n ctx.moveTo(x, ilm);\r\n ctx.lineTo(x, rpe);\r\n ctx.stroke();\r\n ctx.closePath();\r\n }\r\n\r\n drawHelperLine(ctx, x, bottom, top){\r\n ctx.setLineDash([3, 10]);\r\n ctx.beginPath();\r\n ctx.moveTo(x, bottom);\r\n ctx.lineTo(x, top + 10);\r\n ctx.stroke();\r\n ctx.closePath();\r\n ctx.setLineDash([]);\r\n }\r\n\r\n drawSlider(ctx, x, y){\r\n let w = this.boxWidth;\r\n let h = this.boxHeight;\r\n let t = this.triangleLength;\r\n ctx.fillRect(x - w / 2, y - h, w, h);\r\n ctx.beginPath();\r\n ctx.moveTo(x, y - h - t);\r\n ctx.lineTo(x - t, y - h);\r\n ctx.lineTo(x + t, y - h);\r\n ctx.lineTo(x, y - h - t);\r\n ctx.closePath();\r\n ctx.stroke();\r\n ctx.fill();\r\n }\r\n\r\n drawText(ctx, x, ilm, rpe, text) {\r\n if (!text) return;\r\n setFontStyle(ctx, this);\r\n let y = (ilm + rpe) / 2 - 7;\r\n let textWidth = ctx.measureText(text).width;\r\n if (this.sliceFit.w < x + textWidth + 5) x = x - textWidth - 5;\r\n else x += 5;\r\n\r\n ctx.fillText(text, x, y);\r\n }\r\n\r\n drawTextBackground(ctx, x, ilm, rpe, text) {\r\n setFontStyle(ctx, this);\r\n ctx.fillStyle = \"rgba(0, 0, 0, 0.5)\";\r\n let y = (ilm + rpe) / 2 - 10;\r\n let textWidth = ctx.measureText(text).width;\r\n if (this.sliceFit.w < x + textWidth + 5) x = x - textWidth - 7;\r\n else x += 3;\r\n ctx.fillRect(x, y, textWidth + 4, 18);\r\n }\r\n\r\n updateTransform(transform) {\r\n if (this.transform !== transform) this.transform = transform;\r\n this.signalReady();\r\n }\r\n\r\n updateSliceInfo(sliceInfo) {\r\n if (this.sliceInfo !== sliceInfo) this.sliceInfo = sliceInfo;\r\n this.signalReady();\r\n }\r\n\r\n updateMeasureData(data) {\r\n if (this.measureData !== data) this.measureData = data;\r\n this.signalReady();\r\n }\r\n \r\n updateSliceFit(fit) {\r\n if (this.sliceFit !== fit) this.sliceFit = fit;\r\n this.signalReady();\r\n }\r\n\r\n getHoverClass(x) {\r\n let index = this.measureData.index;\r\n if (x > index - 10 && x < index + 10) return POINTER_CLASSES.pointer;\r\n }\r\n}","import Annotation from \"./annotation\";\r\nimport { SliceLayerTypes } from \"../../config/config\";\r\nimport { setLineStyle } from \"../canvasUtils\";\r\n\r\nexport default class Segmentation extends Annotation {\r\n constructor() {\r\n super();\r\n\r\n this.ilm = [];\r\n this.rpe = [];\r\n this.lineWidth = 3;\r\n this.ilmColor = \"red\";\r\n this.rpeColor = \"magenta\";\r\n this.sliceInfo = null;\r\n this.stretchSegmentation = false;\r\n\r\n this.xScale = 1;\r\n this.yScale = 1;\r\n this.isFlipped270 = false;\r\n }\r\n\r\n draw(ctx) {\r\n if (!this.sliceInfo || !this.ilm.length || !this.rpe.length) return;\r\n\r\n if (this.stretchSegmentation) this.calculateStretch(ctx);\r\n\r\n\r\n setLineStyle(ctx, this);\r\n ctx.strokeStyle = this.ilmColor;\r\n this.drawPath(ctx, this.ilm);\r\n ctx.strokeStyle = this.rpeColor;\r\n this.drawPath(ctx, this.rpe);\r\n }\r\n\r\n calculateStretch(ctx) {\r\n let dim = this.sliceInfo.dimensions;\r\n let scale = window.devicePixelRatio || 1;\r\n let size = ctx.canvas;\r\n if (this.isFlipped270) {\r\n this.xScale = size.height / (dim.pixelWidth * scale);\r\n this.yScale = size.width / (dim.pixelHeight * scale); \r\n }\r\n else {\r\n this.xScale = size.width / (dim.pixelWidth * scale);\r\n this.yScale = size.height / (dim.pixelHeight * scale);\r\n }\r\n }\r\n\r\n drawPath(ctx, data) {\r\n ctx.beginPath();\r\n let begin = true;\r\n for (let i = 0; i < data.length; i++) {\r\n let value = data[i];\r\n if (value <= 0) continue;\r\n if (begin) {\r\n ctx.moveTo(i * this.xScale, value * this.yScale);\r\n begin = false;\r\n } else ctx.lineTo(i * this.xScale, value * this.yScale);\r\n }\r\n ctx.stroke();\r\n ctx.closePath();\r\n }\r\n\r\n updateLayerData(data) {\r\n this.ilm = data && data[SliceLayerTypes.Ilm] || [];\r\n this.rpe = data && data[SliceLayerTypes.Rpe] || [];\r\n this.signalReady();\r\n }\r\n\r\n updateSliceInfo(info) {\r\n if (this.sliceInfo !== info) this.sliceInfo = info;\r\n this.signalReady();\r\n }\r\n\r\n updateStretchSegmentation(doStretch) {\r\n this.stretchSegmentation = doStretch;\r\n this.signalReady();\r\n }\r\n}","import Annotation from \"./annotation\";\r\nimport { EyeMarkers } from \"../../config/config\";\r\nimport { setLineStyle, setFontStyle } from \"../canvasUtils\";\r\n\r\nexport default class EyeMarker extends Annotation {\r\n constructor() {\r\n super();\r\n\r\n this.eyeMarker = EyeMarkers.None;\r\n this.theta = 0;\r\n\r\n this.boxSize = 18;\r\n this.textDistance = 23;\r\n this.flangeLength = 10;\r\n this.flangeAngle = 4 * Math.PI / 5;\r\n\r\n this.lineWidth = 1;\r\n this.font = \"14px Calibri\";\r\n this.baseline = \"hanging\";\r\n this.fontColor = \"white\";\r\n\r\n this.text1 = \"\";\r\n this.text2 = \"\";\r\n\r\n this.canvasSize = null;\r\n }\r\n\r\n draw(ctx){\r\n if(!this.canvasSize) return;\r\n\r\n let w = this.canvasSize.w;\r\n let h = this.canvasSize.h;\r\n\r\n let centerX = w - this.boxSize * 2;\r\n let centerY = h - this.boxSize * 2;\r\n setLineStyle(ctx, this);\r\n ctx.strokeRect(centerX - this.boxSize, centerY - this.boxSize, this.boxSize * 2, this.boxSize * 2);\r\n\r\n let start = this.getPosition(centerX, centerY, -this.boxSize, this.theta);\r\n let end = this.getPosition(centerX, centerY, this.boxSize, this.theta);\r\n let flange1 = this.getPosition(end.x, end.y, this.flangeLength, this.theta - this.flangeAngle);\r\n let flange2 = this.getPosition(end.x, end.y, this.flangeLength, this.theta + this.flangeAngle);\r\n let textStart = this.getPosition(centerX, centerY, -this.textDistance, this.theta);\r\n let textEnd = this.getPosition(centerX, centerY, this.textDistance, this.theta);\r\n\r\n ctx.beginPath();\r\n ctx.moveTo(start.x, start.y);\r\n ctx.lineTo(end.x, end.y);\r\n ctx.lineTo(flange1.x, flange1.y);\r\n ctx.moveTo(end.x, end.y)\r\n ctx.lineTo(flange2.x, flange2.y);\r\n ctx.closePath();\r\n ctx.stroke();\r\n \r\n setFontStyle(ctx, this);\r\n let width = ctx.measureText(this.text1).width;\r\n // adjust based on the angle to account for how canvas positions text\r\n let cosT = Math.cos(this.theta);\r\n let sinT = Math.sin(this.theta);\r\n let startX = cosT * width;\r\n let startY = cosT * 6;\r\n let endX = sinT * width / 2;\r\n let endY = sinT * 14;\r\n if (this.theta == Math.PI) {\r\n ctx.fillText(this.text1, textStart.x, textStart.y + startY);\r\n ctx.fillText(this.text2, textEnd.x + startX, textEnd.y - endY + startY);\r\n }\r\n else {\r\n ctx.fillText(this.text1, textStart.x - startX + endX, textStart.y - startY);\r\n ctx.fillText(this.text2, textEnd.x + endX, textEnd.y + endY - startY);\r\n }\r\n }\r\n\r\n getPosition(centerX, centerY, length, angle){\r\n return {\r\n x: centerX + length * Math.cos(angle),\r\n y: centerY + length * Math.sin(angle)\r\n }\r\n }\r\n\r\n updateMarker(marker){\r\n this.eyeMarker = marker;\r\n\r\n switch (this.eyeMarker) {\r\n case EyeMarkers.SI:\r\n this.text1 = \"S\";\r\n this.text2 = \"I\";\r\n break;\r\n case EyeMarkers.IS:\r\n this.text1 = \"I\";\r\n this.text2 = \"S\";\r\n break;\r\n case EyeMarkers.TN:\r\n this.text1 = \"T\";\r\n this.text2 = \"N\";\r\n break;\r\n case EyeMarkers.NT:\r\n this.text1 = \"N\";\r\n this.text2 = \"T\";\r\n break;\r\n default:\r\n this.text1 = \"\";\r\n this.text2 = \"\";\r\n }\r\n this.signalReady();\r\n }\r\n\r\n updateTheta(theta){\r\n this.theta = theta;\r\n this.signalReady();\r\n }\r\n}","import Annotation from \"./annotation\";\r\nimport { setLineStyle } from \"../canvasUtils\";\r\n\r\nexport default class OtherLine extends Annotation {\r\n constructor(){\r\n super();\r\n\r\n this.index = 0;\r\n this.count = 2;\r\n this.color = \"magenta\";\r\n\r\n this.canvasSize = null;\r\n this.isFlipped270 = false;\r\n }\r\n\r\n draw(ctx) {\r\n if(!this.canvasSize) return;\r\n \r\n let w = this.canvasSize.w;\r\n let h = this.canvasSize.h;\r\n\r\n setLineStyle(ctx, this);\r\n ctx.beginPath();\r\n let offset = this.count > 1 ? this.index / (this.count - 1) : 0.5;\r\n let x = 0;\r\n if (this.isFlipped270) {\r\n x = h * offset;\r\n ctx.moveTo(x, 0);\r\n ctx.lineTo(x, h);\r\n }\r\n else {\r\n x = w * offset;\r\n ctx.moveTo(x, 0);\r\n ctx.lineTo(x, h);\r\n }\r\n ctx.closePath();\r\n ctx.stroke();\r\n }\r\n}","import Annotation from \"./annotation\";\r\nimport { setLineStyle } from \"../canvasUtils\";\r\n\r\nexport default class OpticDiscLine extends Annotation {\r\n constructor(){\r\n super();\r\n\r\n this.color = \"orange\";\r\n\r\n this.canvasSize = null;\r\n this.isFlipped270 = false;\r\n\r\n this.cScanIndex = 0;\r\n this.cScans = [];\r\n\r\n this.xPos = 0;\r\n this.yPos = 0;\r\n }\r\n\r\n draw(ctx) {\r\n if(!this.canvasSize) return;\r\n \r\n let w = this.canvasSize.w;\r\n let h = this.canvasSize.h;\r\n\r\n setLineStyle(ctx, this);\r\n ctx.beginPath();\r\n if (this.isFlipped270) {\r\n ctx.moveTo(0, this.xPos);\r\n ctx.lineTo(h, this.xPos);\r\n }\r\n else {\r\n ctx.moveTo(0, this.yPos);\r\n ctx.lineTo(w, this.yPos);\r\n }\r\n ctx.closePath();\r\n ctx.stroke();\r\n }\r\n\r\n updateCScanIndex(index) {\r\n this.cScanIndex = index;\r\n this.updatePos();\r\n this.signalReady();\r\n }\r\n\r\n updateCScans(scans) {\r\n this.cScans = scans;\r\n }\r\n\r\n updatePos() {\r\n if (this.isFlipped270)\r\n this.xPos = this.cScanIndex / this.cScans.length * this.canvasSize.w;\r\n else\r\n this.yPos = this.cScanIndex / this.cScans.length * this.canvasSize.h;\r\n }\r\n}","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OCTSliceView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OCTSliceView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./OCTSliceView.vue?vue&type=template&id=481dbfac&scoped=true&\"\nimport script from \"./OCTSliceView.vue?vue&type=script&lang=js&\"\nexport * from \"./OCTSliceView.vue?vue&type=script&lang=js&\"\nimport style0 from \"./OCTSliceView.vue?vue&type=style&index=0&id=481dbfac&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"481dbfac\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\ninstallComponents(component, {VProgressCircular})\n","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpectralisMainView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpectralisMainView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SpectralisMainView.vue?vue&type=template&id=4f7d28d8&\"\nimport script from \"./SpectralisMainView.vue?vue&type=script&lang=js&\"\nexport * from \"./SpectralisMainView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\ninstallComponents(component, {VProgressCircular})\n","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpectralisBrowserBody.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpectralisBrowserBody.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SpectralisBrowserBody.vue?vue&type=template&id=5b97420e&\"\nimport script from \"./SpectralisBrowserBody.vue?vue&type=script&lang=js&\"\nexport * from \"./SpectralisBrowserBody.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VFlex,VLayout})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{staticClass:\"cirrus-browser-body oct-browser-body escalon-absolute-cover\",style:(_vm.ieStyle),attrs:{\"no-gutters\":\"\"}},[_c('v-flex',{staticClass:\"sidebar-controls secondary\",style:(_vm.borderStyle),attrs:{\"shrink\":\"\"}},[_c('cirrus-sidebar-controls')],1),(this.isOpticDisc)?_c('cirrus-optic-disc-body-content'):_c('cirrus-browser-body-content')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-btn',{staticClass:\"modal-cta\",class:[{active: _vm.showHD}, _vm.colorClass],attrs:{\"text\":\"\",\"disabled\":!_vm.hasHD},on:{\"click\":_vm.toggleHD}},[_vm._v(\"HD Image\")])],1),_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-btn',{staticClass:\"modal-cta\",attrs:{\"text\":\"\"},on:{\"click\":_vm.centerFovea}},[_vm._v(_vm._s(_vm.centerText()))])],1),_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-btn',{staticClass:\"modal-cta\",class:[{active: _vm.hasColorPalette}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.toggleColor}},[_vm._v(\"Color\")])],1),_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-btn',{staticClass:\"modal-cta\",class:[{active: _vm.isInverted}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.invertColor}},[_vm._v(\"Invert\")])],1),_c('v-flex',{attrs:{\"xs12\":\"\"}},[(_vm.sliceHasSegmentation)?_c('v-btn',{staticClass:\"modal-cta\",class:[{active: _vm.showSegmentation}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.toggleSegmentation}},[_vm._v(\"Segmentation\")]):_vm._e()],1),_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('reset-slider',{attrs:{\"value\":_vm.thicknessMapOpacity,\"color\":_vm.colorHex,\"min\":0,\"max\":1,\"step\":0.05,\"defaultValue\":0.5,\"name\":\"Color Intensity\"},on:{\"input\":_vm.updateOpacity}})],1),(!_vm.isOpticDisc)?_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('v-btn',{staticClass:\"modal-cta\",class:[{active: _vm.showETDRS}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.toggleETDRS}},[_vm._v(\"ETDRS\")])],1):_vm._e(),(_vm.centerAverageThickness)?_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('span',{staticClass:\"cirrus-data-header\"},[_vm._v(\"CENTRAL SUBFIELD THICKNESS (µm)\")]),_c('br'),_c('span',{staticClass:\"cirrus-data-value\"},[_vm._v(_vm._s(_vm.formatNumber(_vm.centerAverageThickness * 1000)))])]):_vm._e(),(_vm.overallVolume)?_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('span',{staticClass:\"cirrus-data-header\"},[_vm._v(\"CUBE VOLUME (mm²)\")]),_c('br'),_c('span',{staticClass:\"cirrus-data-value\"},[_vm._v(_vm._s(_vm.formatNumber(_vm.overallVolume)))])]):_vm._e(),(_vm.overallAverageThickness)?_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('span',{staticClass:\"cirrus-data-header\"},[_vm._v(\"CUBE AVERAGE THICKNESS (µm)\")]),_c('br'),_c('span',{staticClass:\"cirrus-data-value\"},[_vm._v(_vm._s(_vm.formatNumber(_vm.overallAverageThickness * 1000)))])]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusSidebarControls.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusSidebarControls.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CirrusSidebarControls.vue?vue&type=template&id=be094304&scoped=true&\"\nimport script from \"./CirrusSidebarControls.vue?vue&type=script&lang=js&\"\nexport * from \"./CirrusSidebarControls.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CirrusSidebarControls.vue?vue&type=style&index=0&id=be094304&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"be094304\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VFlex,VLayout})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-flex',{staticClass:\"main-view tall-content-wrapper\",attrs:{\"shrink\":\"\"}},[_c('oct-toolbar'),_c('v-row',{staticClass:\"cirrus-body-row\",attrs:{\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"slice-controls d-flex\"},[_c('oct-reference-image',{attrs:{\"isLoading\":_vm.refImgLoading || _vm.octDataLoading,\"refImg\":_vm.refImg,\"refFit\":_vm.refFit,\"refSize\":_vm.refSize,\"refImgLocation\":_vm.refImgLocation,\"refImgNotFound\":_vm.refImgNotFound,\"sliceCurrentIndex\":_vm.horzIndex,\"slices\":_vm.horzSlices,\"sliceCurrent\":_vm.horzCurrent,\"composites\":_vm.vertSlices,\"compositeCurrent\":_vm.vertCurrent,\"sliceBounds\":_vm.sliceBounds,\"compositeBounds\":_vm.compositeBounds,\"isPlaying\":_vm.isPlaying,\"playRate\":_vm.playRate,\"showOverlay\":true,\"overlayOpacity\":_vm.thicknessMapOpacity,\"overlayImg\":_vm.thicknessMapImg,\"overlaySize\":_vm.thicknessMapSize,\"overlayColorSettings\":_vm.thicknessMapColorSettings,\"palette\":_vm.thicknessMapPalette,\"paletteSize\":_vm.thicknessPaletteSize,\"paletteMin\":_vm.thicknessMapMinThicknessUm,\"paletteMax\":_vm.thicknessMapMaxThicknessUm,\"paletteStep\":_vm.thicknessMapThicknessStepUm,\"showBindingBox\":true},on:{\"previous\":_vm.previousSlice,\"next\":_vm.nextSlice,\"play\":_vm.play,\"pause\":_vm.pause,\"setPlayRate\":_vm.setPlayRate,\"selectSlice\":_vm.selectSlice,\"selectComposite\":_vm.selectComposite}})],1),_c('v-col',{staticClass:\"oct-slice-view-wrapper\",on:{\"wheel\":function($event){$event.preventDefault();return _vm.wheel($event)}}},[_c('oct-slice-view',{attrs:{\"img\":_vm.horzImg,\"imgSize\":_vm.sliceFit,\"fitSize\":_vm.sliceFit,\"imgLoading\":_vm.horzImgLoading,\"dataLoading\":_vm.octDataLoading,\"imgNotFound\":_vm.horzImgNotFound,\"otherIndex\":_vm.bottomIndex,\"otherCount\":_vm.bottomCount,\"sliceInfo\":_vm.sliceInfo,\"sliceEyeMarker\":_vm.sliceCurrentEyeMarker,\"layerData\":_vm.horzLayerData,\"strechSegmentation\":true,\"octColorSettings\":_vm.octColorSettings,\"otherColor\":\"magenta\",\"showSegmentation\":_vm.showSegmentation,\"isMeasuring\":_vm.isMeasuring}}),_c('div',{staticClass:\"image-index-counter\"},[_c('index-counter',{attrs:{\"index\":_vm.horzIndex,\"count\":_vm.horzCount}})],1)],1)],1),_c('v-row',{staticClass:\"cirrus-body-row\",attrs:{\"no-gutters\":\"\"},on:{\"wheel\":function($event){$event.preventDefault();return _vm.wheel($event)}}},[_c('v-col',{staticClass:\"slice-controls\"},[_c('enface-view',{attrs:{\"enfaceFit\":_vm.enfaceFit,\"enfaceImgSize\":_vm.enfaceImgSize}})],1),_c('v-col',{staticClass:\"oct-slice-view-wrapper\"},[_c('div',{staticClass:\"image-index-counter\"},[_c('index-counter',{attrs:{\"index\":_vm.bottomIndex,\"count\":_vm.bottomCount}})],1),_c('oct-slice-view',{attrs:{\"slice-id\":\"composite-image-wrapper\",\"img\":_vm.bottomImg,\"imgSize\":_vm.compositeFit,\"fitSize\":_vm.compositeFit,\"imgLoading\":_vm.bottomImgLoading,\"dataLoading\":_vm.octDataLoading,\"imgNotFound\":_vm.bottomImgNotFound,\"otherIndex\":_vm.horzIndex,\"otherCount\":_vm.horzCount,\"sliceInfo\":_vm.compositeInfo,\"sliceEyeMarker\":_vm.compositeCurrentEyeMarker,\"layerData\":_vm.bottomLayerData,\"strechSegmentation\":true,\"octColorSettings\":_vm.octColorSettings,\"flippedX\":true,\"otherColor\":\"cyan\",\"eyeMarkerAngle\":-Math.PI / 2,\"showSegmentation\":_vm.showSegmentation,\"isMeasuring\":_vm.isMeasuring}})],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-flex',{staticClass:\"enface-image-wrapper\",attrs:{\"id\":\"enface-image-wrapper\"}},[(_vm.enfaceImgNotFound)?_c('image-not-found'):_vm._e(),_c('canvas-image',{attrs:{\"canvasSize\":_vm.enfaceFit,\"imgSize\":_vm.enfaceFit,\"img\":_vm.enfaceImg}}),(_vm.showETDRS)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.enfaceFit,\"annotation\":_vm.etdrs}}):_vm._e(),(_vm.isLoading)?_c('v-progress-circular',{staticClass:\"escalon-absolute-center\",attrs:{\"indeterminate\":\"\"}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EnfaceView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EnfaceView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EnfaceView.vue?vue&type=template&id=03f0414a&scoped=true&\"\nimport script from \"./EnfaceView.vue?vue&type=script&lang=js&\"\nexport * from \"./EnfaceView.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EnfaceView.vue?vue&type=style&index=0&id=03f0414a&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"03f0414a\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\ninstallComponents(component, {VFlex,VProgressCircular})\n","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusBrowserBodyContent.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusBrowserBodyContent.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CirrusBrowserBodyContent.vue?vue&type=template&id=28bc7c3d&\"\nimport script from \"./CirrusBrowserBodyContent.vue?vue&type=script&lang=js&\"\nexport * from \"./CirrusBrowserBodyContent.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VFlex,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{staticClass:\"cirrus-browser-body oct-browser-body escalon-absolute-cover\",style:(_vm.ieStyle),attrs:{\"no-gutters\":\"\"}},[_c('v-flex',{staticClass:\"sidebar-controls secondary\",style:(_vm.borderStyle),attrs:{\"shrink\":\"\"}},[_c('cirrus-sidebar-controls')],1),_c('v-flex',{staticClass:\"main-view tall-content-wrapper\",attrs:{\"shrink\":\"\"}},[_c('oct-toolbar'),_c('v-row',{staticClass:\"cirrus-body-row\",attrs:{\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"optic-disc-slice-controls d-flex\"},[_c('oct-reference-image',{attrs:{\"isLoading\":_vm.refImgLoading || _vm.octDataLoading,\"refImg\":_vm.refImg,\"refFit\":_vm.refFit,\"refSize\":_vm.refSize,\"refImgLocation\":_vm.refImgLocation,\"refImgNotFound\":_vm.refImgNotFound,\"sliceCurrentIndex\":_vm.horzIndex,\"slices\":_vm.horzSlices,\"sliceCurrent\":_vm.horzCurrent,\"composites\":_vm.vertSlices,\"compositeCurrent\":_vm.vertCurrent,\"sliceBounds\":_vm.sliceBounds,\"compositeBounds\":_vm.compositeBounds,\"isPlaying\":_vm.isPlaying,\"playRate\":_vm.playRate,\"showOverlay\":true,\"overlayOpacity\":_vm.thicknessMapOpacity,\"overlayImg\":_vm.thicknessMapImg,\"overlaySize\":_vm.thicknessMapSize,\"overlayColorSettings\":_vm.thicknessMapColorSettings,\"palette\":_vm.thicknessMapPalette,\"paletteSize\":_vm.thicknessPaletteSize,\"paletteMin\":_vm.thicknessMapMinThicknessUm,\"paletteMax\":_vm.thicknessMapMaxThicknessUm,\"paletteStep\":_vm.thicknessMapThicknessStepUm,\"showBindingBox\":true},on:{\"previous\":_vm.previousSlice,\"next\":_vm.nextSlice,\"play\":_vm.play,\"pause\":_vm.pause,\"setPlayRate\":_vm.setPlayRate,\"selectSlice\":_vm.selectSlice,\"selectComposite\":_vm.selectComposite}})],1),_c('v-col',{staticClass:\".optic-disc-slice-view-wrapper\",on:{\"wheel\":function($event){$event.preventDefault();return _vm.wheel($event)}}},[_c('oct-slice-view',{staticStyle:{\"height\":\"90%\"},attrs:{\"img\":_vm.horzImg,\"imgSize\":_vm.refFit,\"fitSize\":_vm.refFit,\"imgLoading\":_vm.horzImgLoading,\"dataLoading\":_vm.octDataLoading,\"imgNotFound\":_vm.horzImgNotFound,\"otherIndex\":_vm.bottomIndex,\"otherCount\":_vm.bottomCount,\"sliceInfo\":_vm.sliceInfo,\"sliceEyeMarker\":_vm.sliceCurrentEyeMarker,\"layerData\":_vm.horzLayerData,\"strechSegmentation\":true,\"octColorSettings\":_vm.octColorSettings,\"otherColor\":\"magenta\",\"showSegmentation\":_vm.showSegmentation,\"isMeasuring\":_vm.isMeasuring,\"showOpticDiscLine\":true,\"realLocation\":_vm.sliceLocation,\"isInBounds\":_vm.sliceInBounds,\"cscans\":_vm.cscans,\"cscanCurrent\":_vm.cscanCurrent,\"cscanCurrentIndex\":_vm.cscanCurrentIndex},on:{\"selectCScan\":_vm.selectCScan}}),_c('div',{staticClass:\"image-index-counter\",staticStyle:{\"display\":\"flex\",\"justify-content\":\"center\"}},[_c('index-counter',{attrs:{\"index\":_vm.horzIndex,\"count\":_vm.horzCount}})],1)],1)],1),_c('v-row',{staticClass:\"cirrus-body-row\",attrs:{\"no-gutters\":\"\"},on:{\"wheel\":function($event){$event.preventDefault();return _vm.wheel($event)}}},[_c('v-col',{staticClass:\"optic-disc-slice-view-wrapper\"},[_c('oct-slice-view',{staticStyle:{\"height\":\"90%\"},attrs:{\"img\":_vm.bottomImg,\"imgSize\":_vm.refFit,\"fitSize\":_vm.flippedFit,\"imgLoading\":_vm.bottomImgLoading,\"dataLoading\":_vm.octDataLoading,\"imgNotFound\":_vm.bottomImgNotFound,\"otherIndex\":_vm.horzIndex,\"otherCount\":_vm.horzCount,\"sliceInfo\":_vm.compositeInfo,\"sliceEyeMarker\":_vm.compositeCurrentEyeMarker,\"layerData\":_vm.bottomLayerData,\"strechSegmentation\":true,\"octColorSettings\":_vm.octColorSettings,\"flippedX\":true,\"isFlipped270\":true,\"otherColor\":\"cyan\",\"eyeMarkerAngle\":Math.PI,\"showSegmentation\":_vm.showSegmentation,\"isMeasuring\":_vm.isMeasuring,\"showOpticDiscLine\":true,\"realLocation\":_vm.sliceLocation,\"isInBounds\":_vm.sliceInBounds,\"cscans\":_vm.cscans,\"cscanCurrent\":_vm.cscanCurrent,\"cscanCurrentIndex\":_vm.cscanCurrentIndex,\"eyeMarkerForceTranslate\":true},on:{\"selectCScan\":_vm.selectCScan}}),_c('div',{staticClass:\"image-index-counter\",staticStyle:{\"display\":\"flex\",\"justify-content\":\"center\",\"transform\":\"translate(-30px, 0px)\"}},[_c('index-counter',{attrs:{\"index\":_vm.bottomIndex,\"count\":_vm.bottomCount}})],1)],1),_c('v-col',{staticClass:\"optic-disc-slice-controls\"},[_c('cscan-view',{attrs:{\"cscanFit\":_vm.cscanFit,\"cscanImgSize\":_vm.cscanImgSize,\"octColorSettings\":_vm.octColorSettings,\"octDataLoading\":_vm.octDataLoading,\"cscanImg\":_vm.cscanImg,\"cscanImgNotFound\":_vm.cscanImgNotFound,\"cscanImgLoading\":_vm.cscanImgLoading}})],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-flex',{staticClass:\"cscan-image-wrapper\",attrs:{\"id\":_vm.cscanId}},[(_vm.cscanImgNotFound)?_c('image-not-found'):_vm._e(),_c('pixel-shaded-canvas',{attrs:{\"img\":_vm.cscanImg,\"octColorSettings\":_vm.octColorSettings,\"canvasSize\":_vm.cscanFit,\"imgSize\":_vm.cscanImgSize}}),(_vm.isLoading)?_c('v-progress-circular',{staticClass:\"escalon-absolute-center\",attrs:{\"indeterminate\":\"\"}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CScanView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CScanView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CScanView.vue?vue&type=template&id=2d9fee48&scoped=true&\"\nimport script from \"./CScanView.vue?vue&type=script&lang=js&\"\nexport * from \"./CScanView.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CScanView.vue?vue&type=style&index=0&id=2d9fee48&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2d9fee48\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\ninstallComponents(component, {VFlex,VProgressCircular})\n","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusOpticDiscBodyContent.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusOpticDiscBodyContent.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CirrusOpticDiscBodyContent.vue?vue&type=template&id=25a23971&\"\nimport script from \"./CirrusOpticDiscBodyContent.vue?vue&type=script&lang=js&\"\nexport * from \"./CirrusOpticDiscBodyContent.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VFlex,VLayout,VRow})\n","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusBrowserBody.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusBrowserBody.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CirrusBrowserBody.vue?vue&type=template&id=ef74dfea&\"\nimport script from \"./CirrusBrowserBody.vue?vue&type=script&lang=js&\"\nexport * from \"./CirrusBrowserBody.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VFlex,VLayout})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{staticClass:\"spectralis-comparison-body oct-browser-body\",attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\"}},[_c('oct-comparison-toolbar')],1),_c('v-flex',{staticClass:\"oct-comparison-view\",attrs:{\"xs12\":\"\"}},[_c('spectralis-comparison-view',{attrs:{\"name\":\"compare\",\"context\":_vm.compare,\"exams\":_vm.compareExams,\"groups\":_vm.compareGroups}})],1),_c('v-flex',{staticClass:\"oct-comparison-view\",attrs:{\"xs12\":\"\"}},[_c('spectralis-comparison-view',{attrs:{\"name\":\"baseline\",\"context\":_vm.baseline,\"exams\":_vm.baselineExams,\"groups\":_vm.baselineGroups}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{staticClass:\"control-toolbar secondary\",attrs:{\"no-gutters\":\"\",\"justify\":_vm.ieAlign,\"align\":_vm.ieAlign}},[_c('v-col',{staticClass:\"mr-2\",attrs:{\"cols\":\"auto\"}},[_c('v-btn',{staticClass:\"modal-cta\",class:[{ active: _vm.isOD }, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.selectOD}},[_vm._v(\"OD\")]),_c('v-btn',{staticClass:\"modal-cta\",class:[{ active: !_vm.isOD }, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.selectOS}},[_vm._v(\"OS\")])],1),(_vm.lockEnabled)?_c('v-col',{staticClass:\"mr-2\",attrs:{\"cols\":\"auto\"}},[_c('v-btn',{staticClass:\"modal-cta\",class:[{ active: _vm.isLocked }, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.toggleLocked}},[_vm._v(\"Lock Scans\")])],1):_vm._e(),(_vm.isSpectralisComparison)?_c('v-col',{staticClass:\"mr-2\",attrs:{\"cols\":\"auto\"}},[_c('select-with-button',{staticClass:\"toolbar-select\",attrs:{\"value\":_vm.spectralisScanTypeFilter,\"items\":_vm.spectralisScanTypes,\"icon-button\":true},on:{\"change\":_vm.selectScanTypeFilter}})],1):_vm._e(),(_vm.showFoveaAlignControl)?_c('v-col',{staticClass:\"mr-2\",attrs:{\"cols\":\"auto\"}},[_c('span',{staticClass:\"difference-map-alignment\"},[_vm._v(\"Difference Map Alignment:\")])]):_vm._e(),(_vm.showFoveaAlignControl)?_c('v-col',{staticClass:\"mr-2\",attrs:{\"cols\":\"auto\"}},[_c('select-with-button',{staticClass:\"toolbar-select\",attrs:{\"value\":_vm.alignFoveasString,\"items\":_vm.alignFoveaOptions,\"icon-button\":true},on:{\"change\":_vm.selectAlign}})],1):_vm._e(),_c('v-flex',{attrs:{\"shrink\":\"\",\"ml-auto\":\"\"}},[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":_vm.singleView}},[_c('v-avatar',{staticClass:\"mr-1\",attrs:{\"size\":\"30\"}},[_c('img',{attrs:{\"src\":require('../../../assets/' + _vm.coloredAssetUrls.singleView)}})]),_vm._v(\"Return to Single View\\n \")],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OCTComparisonToolbar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OCTComparisonToolbar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./OCTComparisonToolbar.vue?vue&type=template&id=007a3b72&scoped=true&\"\nimport script from \"./OCTComparisonToolbar.vue?vue&type=script&lang=js&\"\nexport * from \"./OCTComparisonToolbar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./OCTComparisonToolbar.vue?vue&type=style&index=0&id=007a3b72&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"007a3b72\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAvatar } from 'vuetify/lib/components/VAvatar';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VAvatar,VBtn,VCol,VFlex,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{staticClass:\"spectralis-comparison-wrapper\",style:(_vm.borderStyle),attrs:{\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"sidebar-controls\",style:(_vm.borderStyle),attrs:{\"cols\":\"auto\"}},[_c('span',{staticClass:\"spectralis-multiview-title\",class:_vm.colorClass},[_vm._v(_vm._s(_vm.name))]),_c('div',[_c('select-with-button',{staticClass:\"toolbar-select spectralis-multiview-dropdown\",attrs:{\"value\":_vm.exam,\"items\":_vm.exams,\"icon-button\":true,\"item-text\":\"octDateButtonText\"},on:{\"change\":_vm.selectExam}})],1),_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"auto\"}},[(_vm.hasExam)?_c('v-btn',{staticClass:\"modal-cta spectralisCompareButton\",class:[{active: _vm.hasColorPalette}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.toggleColor}},[_vm._v(\"Color\")]):_vm._e()],1)],1),_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"auto\"}},[(_vm.hasExam)?_c('v-btn',{staticClass:\"modal-cta spectralisCompareButton\",class:[{active: _vm.isInverted}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.invertColor}},[_vm._v(\"Invert\")]):_vm._e()],1)],1),_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"auto\"}},[(_vm.hasSegmentation)?_c('v-btn',{staticClass:\"modal-cta spectralisCompareButton\",class:[{active: _vm.showSegmentation}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.toggleSegmentation}},[_vm._v(\"Segmentation\")]):_vm._e()],1)],1),_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"auto\"}},[(_vm.hasSegmentation)?_c('v-btn',{staticClass:\"modal-cta spectralisCompareButton\",class:[{active: _vm.isMeasuring}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.measure}},[_vm._v(\"Measure\")]):_vm._e()],1)],1),(_vm.showThicknessComparison)?_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"auto\"}},[_c('v-btn',{staticClass:\"modal-cta spectralisCompareButton\",class:[{active: _vm.showThicknessMap}, _vm.colorClass],attrs:{\"text\":\"\",\"id\":\"thickness-comparison\"},on:{\"click\":_vm.toggleShowThicknessMap}},[_c('span',{staticClass:\"d-xs-none d-sm-none d-md-none d-lg-flex\"},[_vm._v(\"Thickness Comparison\")]),_c('span',{staticClass:\"d-flex d-lg-none\"},[_vm._v(\"Compare\")])])],1),(_vm.showThicknessMap)?_c('reset-slider',{attrs:{\"color\":_vm.colorHex,\"value\":_vm.thicknessMapOpacity,\"min\":0,\"max\":1,\"step\":0.05,\"defaultValue\":1.0,\"name\":\"Color Intensity\"},on:{\"input\":_vm.updateOpacity}}):_vm._e()],1):_vm._e()],1),_c('v-col',{staticClass:\"main-view\"},[_c('v-row',{staticClass:\"main-view-layout\",attrs:{\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"main-view-thickness d-flex\"},[(_vm.isCompare && _vm.isBothMeasuring && _vm.isLocked)?_c('span',{staticClass:\"spectralis-multiview-difference-measure\"},[_vm._v(\"DIFFERENCE: \"+_vm._s(_vm.thicknessDifference))]):_vm._e(),(_vm.thicknessMap && _vm.isSpectralisVolume)?_c('thickness-map',{attrs:{\"mapId\":_vm.name + '-thickness-map-wrapper',\"paletteId\":_vm.name + '-thickness-map-palette-wrapper',\"img\":_vm.thicknessMapImg,\"size\":_vm.refFit,\"palette\":_vm.thicknessMapPalette,\"paletteSize\":_vm.thicknessPaletteSize,\"isLoading\":_vm.thicknessMapImgLoading || _vm.octDataLoading,\"imgNotFound\":_vm.thicknessMapImgNotFound,\"colorSettings\":_vm.thicknessMapColorSettings,\"minThickness\":_vm.minThickness,\"maxThickness\":_vm.maxThickness,\"thicknessStep\":_vm.thicknessStep,\"showETDRS\":false,\"foveaOffset\":_vm.foveaOffset,\"isMultiview\":true}}):_vm._e()],1),_c('v-col',{staticClass:\"main-view-reference d-flex\"},[_c('oct-reference-image',{attrs:{\"referenceId\":_vm.name + '-reference-image-wrapper',\"paletteId\":_vm.thicknessMap && this.baseline? _vm.name + '-reference-palette-wrapper': '',\"isLoading\":_vm.refImgLoading || _vm.octDataLoading,\"refImgNotFound\":_vm.refImgNotFound,\"refImg\":_vm.refImg,\"refFit\":_vm.refFit,\"refSize\":_vm.refSize,\"refImgLocation\":_vm.refImgLocation,\"slices\":_vm.slices,\"sliceCurrent\":_vm.sliceCurrent,\"sliceCurrentIndex\":_vm.sliceCurrentIndex,\"sliceBounds\":_vm.sliceBounds,\"isPlaying\":_vm.isPlaying,\"playRate\":_vm.playRate,\"playbackTop\":true,\"showExtension\":true,\"isSpectralisCircle\":_vm.isSpectralisCircle,\"isSpectralisRadial\":_vm.isSpectralisRadial,\"isSpectralisRadialCircle\":_vm.isSpectralisRadialCircle,\"drawAllSlices\":_vm.showSliceLines,\"showOverlay\":_vm.showThicknessMap,\"overlayOpacity\":_vm.differenceMapOpacity,\"overlayImg\":_vm.overlayImg,\"overlaySize\":_vm.overlaySize,\"palette\":_vm.overlayPalette,\"paletteSize\":_vm.overlayPaletteSize,\"paletteMin\":_vm.overlayMin,\"paletteMax\":_vm.overlayMax,\"paletteStep\":_vm.overlayStep,\"isMultiview\":true},on:{\"previous\":_vm.previousSlice,\"next\":_vm.nextSlice,\"play\":_vm.play,\"pause\":_vm.pause,\"setPlayRate\":_vm.setPlayRate,\"selectSlice\":_vm.selectSlice}})],1),_c('v-col',{staticClass:\"main-view-slice\",on:{\"wheel\":function($event){$event.preventDefault();return _vm.wheel($event)}}},[_c('oct-slice-view',{attrs:{\"slice-id\":_vm.name + '-slice-image-wrapper',\"fitSize\":_vm.sliceFit,\"img\":_vm.sliceImg,\"imgSize\":_vm.sliceImgSize,\"imgNotFound\":_vm.sliceImgNotFound,\"imgLoading\":_vm.sliceImgLoading,\"dataLoading\":_vm.octDataLoading,\"sliceEyeMarker\":_vm.sliceCurrentEyeMarker,\"showSegmentation\":_vm.showSegmentation,\"sliceInfo\":_vm.sliceInfo,\"layerData\":_vm.sliceSegmentationLayerData,\"isMeasuring\":_vm.isMeasuring,\"measureData\":_vm.measureData,\"transform\":_vm.transform,\"realLocation\":_vm.sliceLocation,\"isInBounds\":_vm.sliceInBounds,\"octColorSettings\":_vm.colorSettings},on:{\"measurementChanged\":_vm.measurementChanged,\"previous\":_vm.previousSlice,\"next\":_vm.nextSlice}})],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{staticClass:\"thickness-map image-with-palette\",class:{'has-palette': _vm.isMultiview || _vm.hasPalette},attrs:{\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"thickness-map-wrapper image\",attrs:{\"id\":_vm.mapId}},[(_vm.imgNotFound)?_c('image-not-found'):_vm._e(),_c('pixel-shaded-canvas',{attrs:{\"img\":_vm.img,\"imgSize\":_vm.size,\"canvasSize\":_vm.size,\"thicknessMapColorSettings\":_vm.colorSettings}}),(_vm.showETDRS)?_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.size,\"annotation\":_vm.etdrs}}):_vm._e(),(_vm.isLoading)?_c('v-progress-circular',{staticClass:\"escalon-absolute-center\",attrs:{\"indeterminate\":\"\"}}):_vm._e()],1),(_vm.hasPalette)?_c('v-col',{staticClass:\"thickness-map-palette-wrapper palette\",attrs:{\"cols\":\"auto\",\"id\":_vm.paletteId}},[_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.paletteSize,\"imgSize\":_vm.paletteSize,\"annotation\":_vm.paletteAnnotation}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ThicknessMap.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ThicknessMap.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ThicknessMap.vue?vue&type=template&id=2fb5cd81&scoped=true&\"\nimport script from \"./ThicknessMap.vue?vue&type=script&lang=js&\"\nexport * from \"./ThicknessMap.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ThicknessMap.vue?vue&type=style&index=0&id=2fb5cd81&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2fb5cd81\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VProgressCircular,VRow})\n","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpectralisComparisonView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpectralisComparisonView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SpectralisComparisonView.vue?vue&type=template&id=0f312e7a&\"\nimport script from \"./SpectralisComparisonView.vue?vue&type=script&lang=js&\"\nexport * from \"./SpectralisComparisonView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol,VRow})\n","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpectralisComparisonBody.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SpectralisComparisonBody.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SpectralisComparisonBody.vue?vue&type=template&id=f264c318&\"\nimport script from \"./SpectralisComparisonBody.vue?vue&type=script&lang=js&\"\nexport * from \"./SpectralisComparisonBody.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VFlex,VLayout})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{staticClass:\"cirrus-comparison-body oct-browser-body fill-height\",attrs:{\"column\":\"\"}},[_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('oct-comparison-toolbar')],1),_c('v-flex',{attrs:{\"fill-height\":\"\"}},[_c('v-row',{staticClass:\"fill-height oct-comparison-wrapper\",attrs:{\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"fill-height oct-comparison-view\",style:(_vm.borderStyle),attrs:{\"cols\":\"6\"}},[_c(_vm.compare && _vm.compare.componentName || 'cirrusComparisonView',{tag:\"component\",attrs:{\"name\":\"compare\",\"context\":_vm.compare,\"exams\":_vm.compareExams,\"groups\":_vm.compareGroups}})],1),_c('v-col',{staticClass:\"fill-height oct-comparison-view\",style:(_vm.borderStyle),attrs:{\"cols\":\"6\"}},[_c(_vm.baseline && _vm.baseline.componentName || 'cirrusComparisonView',{tag:\"component\",attrs:{\"name\":\"baseline\",\"context\":_vm.baseline,\"exams\":_vm.baselineExams,\"groups\":_vm.baselineGroups}})],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{staticClass:\"cirrus-comparison-wrapper\",attrs:{\"no-gutters\":\"\",\"align-content\":\"start\"}},[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('cirrus-comparison-toolbar',{attrs:{\"name\":_vm.name,\"context\":_vm.context,\"exams\":_vm.exams,\"groups\":_vm.groups}})],1),_c('v-col',{staticClass:\"cirrus-state-controls\",attrs:{\"cols\":\"12\"}},[_c('v-row',{attrs:{\"no-gutters\":\"\",\"align\":\"center\",\"justify\":\"center\"}},[_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-btn',{staticClass:\"modal-cta\",class:[{active: _vm.showOverlay}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.toggleOverlay}},[_vm._v(\"Overlay\")])],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('reset-slider',{staticClass:\"overlay-slider\",attrs:{\"value\":_vm.overlayOpacity,\"color\":_vm.colorHex,\"min\":0,\"max\":1,\"step\":0.05,\"defaultValue\":1,\"name\":\"Overlay Intensity\"},on:{\"input\":_vm.updateOpacity}})],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-btn',{staticClass:\"modal-cta\",class:[{active: _vm.showETDRS}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.toggleETDRS}},[_vm._v(\"ETDRS\")])],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-btn',{staticClass:\"modal-cta\",class:[{active: _vm.hasColorPalette}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.toggleColor}},[_vm._v(\"Color\")])],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-btn',{staticClass:\"modal-cta\",class:[{active: _vm.isInverted}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.invertColor}},[_vm._v(\"Invert\")])],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-btn',{staticClass:\"modal-cta\",class:[{active: _vm.showSegmentation}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":_vm.toggleSegmentation}},[_vm._v(\"Segmentation\")])],1)],1)],1),(this.isOpticDisc)?_c('cirrus-comparison-view-optic-disc-body-content',{attrs:{\"name\":_vm.name,\"context\":_vm.context,\"exams\":_vm.exams,\"groups\":_vm.groups}}):_c('cirrus-comparison-view-body-content',{attrs:{\"name\":_vm.name,\"context\":_vm.context,\"exams\":_vm.exams,\"groups\":_vm.groups}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{staticClass:\"oct-toolbar control-toolbar tertiary\",attrs:{\"wrap\":\"\",\"align-center\":\"\",\"justify-start\":\"\"}},[_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('h2',{class:_vm.colorClass},[_vm._v(_vm._s(_vm.name))])]),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('select-with-button',{staticClass:\"toolbar-select\",attrs:{\"value\":_vm.selectedDropdownItem,\"items\":_vm.dropdownItems,\"item-value\":\"flSrNo\",\"icon-button\":true,\"item-text\":\"octDateButtonText\"},on:{\"change\":_vm.selectExam}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusComparisonToolbar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusComparisonToolbar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CirrusComparisonToolbar.vue?vue&type=template&id=5f3d3e12&\"\nimport script from \"./CirrusComparisonToolbar.vue?vue&type=script&lang=js&\"\nexport * from \"./CirrusComparisonToolbar.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VFlex,VLayout})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{attrs:{\"no-gutters\":\"\",\"align-content\":\"start\"}},[_c('v-col',{staticClass:\"thickness-wrapper\",attrs:{\"cols\":\"12\",\"md\":\"5\"},on:{\"wheel\":function($event){$event.preventDefault();return _vm.wheel($event)}}},[(_vm.thicknessMap)?_c('thickness-map',{attrs:{\"mapId\":_vm.name + '-thickness-map-wrapper',\"paletteId\":_vm.name + '-thickness-map-palette-wrapper',\"img\":_vm.thicknessMapImg,\"size\":_vm.thicknessMapSize,\"palette\":_vm.thicknessMapPalette,\"paletteSize\":_vm.thicknessPaletteSize,\"isLoading\":_vm.thicknessMapImgLoading || _vm.octDataLoading,\"imgNotFound\":_vm.thicknessMapImgNotFound,\"colorSettings\":_vm.thicknessMapColorSettings,\"minThickness\":_vm.minThickness,\"maxThickness\":_vm.maxThickness,\"thicknessStep\":_vm.thicknessStep,\"showETDRS\":_vm.showETDRS,\"foveaOffset\":_vm.foveaOffset,\"thicknessAnalysis\":_vm.thicknessAnalysis,\"isMultiview\":true}}):_vm._e()],1),_c('v-col',{staticClass:\"reference-wrapper d-flex\",attrs:{\"cols\":\"12\",\"md\":\"7\"}},[_c('oct-reference-image',{attrs:{\"playbackTop\":true,\"referenceId\":_vm.name + '-reference-image-wrapper',\"paletteId\":_vm.name + '-reference-palette-wrapper',\"isLoading\":_vm.refImgLoading || _vm.octDataLoading,\"refImgNotFound\":_vm.refImgNotFound,\"refImg\":_vm.refImg,\"refFit\":_vm.refFit,\"refSize\":_vm.refSize,\"refImgLocation\":_vm.refImgLocation,\"slices\":_vm.slices,\"sliceCurrent\":_vm.sliceCurrent,\"sliceCurrentIndex\":_vm.sliceCurrentIndex,\"sliceBounds\":_vm.sliceBounds,\"isPlaying\":_vm.isPlaying,\"playRate\":_vm.playRate,\"drawAllSlices\":!_vm.showOverlay,\"showExtension\":!_vm.showOverlay,\"showBindingBox\":_vm.showOverlay,\"showOverlay\":_vm.showOverlay,\"overlayOpacity\":_vm.overlayOpacity,\"overlayImg\":_vm.overlayImg,\"overlaySize\":_vm.overlaySize,\"overlayAnalysis\":_vm.overlayAnalysis,\"overlayFoveaOffset\":_vm.overlayFoveaOffset,\"showOverlayETDRS\":_vm.showETDRS,\"palette\":_vm.overlayPalette,\"paletteSize\":_vm.overlayPaletteSize,\"paletteMin\":_vm.overlayMin,\"paletteMax\":_vm.overlayMax,\"paletteStep\":_vm.overlayStep,\"isMultiview\":true},on:{\"previous\":_vm.previousSlice,\"next\":_vm.nextSlice,\"play\":_vm.play,\"pause\":_vm.pause,\"setPlayRate\":_vm.setPlayRate,\"selectSlice\":_vm.selectSlice}})],1),_c('v-col',{staticClass:\"cirrus-slice-view\",attrs:{\"cols\":\"12\"},on:{\"wheel\":function($event){$event.preventDefault();return _vm.wheel($event)}}},[_c('oct-slice-view',{attrs:{\"slice-id\":_vm.name + '-slice-image-wrapper',\"fitSize\":_vm.sliceFit,\"imgSize\":_vm.sliceFit,\"img\":_vm.sliceImg,\"imgNotFound\":_vm.sliceImgNotFound,\"imgLoading\":_vm.sliceImgLoading,\"dataLoading\":_vm.octDataLoading,\"sliceEyeMarker\":_vm.sliceCurrentEyeMarker,\"strechSegmentation\":true,\"sliceInfo\":_vm.sliceInfo,\"showSegmentation\":_vm.showSegmentation,\"layerData\":_vm.sliceSegmentationLayerData,\"octColorSettings\":_vm.colorSettings}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import {\r\n viewOffset,\r\n withinViewBounds,\r\n calculateRealLocation\r\n} from \"../../canvas/geometry\";\r\nimport store from \"../../store\";\r\n\r\nexport default {\r\n methods: {\r\n refImgLocation(x, y) {\r\n const offset = viewOffset(this.refSize, this.refFit);\r\n if (!withinViewBounds(x, y, this.refSize, offset))\r\n return { x: -1, y: -1 };\r\n let loc = calculateRealLocation(x, y, offset, this.transform);\r\n return { x: loc.x / this.refFit.w, y: loc.y / this.refFit.h };\r\n },\r\n previousSlice() {\r\n store.dispatch(\"selectPreviousSliceCompare\", this.name);\r\n },\r\n nextSlice() {\r\n store.dispatch(\"selectNextSliceCompare\", this.name);\r\n },\r\n play() {\r\n store.dispatch(\"playSlicesCompare\", this.name);\r\n },\r\n pause() {\r\n store.commit(\"pauseCompare\", this.name);\r\n },\r\n setPlayRate(rate) {\r\n store.commit(\"setPlayRateCompare\", { view: this.name, rate });\r\n },\r\n selectSlice(index) {\r\n store.dispatch(\"selectOCTImageByIndexCompare\", {\r\n keyword: \"slice\",\r\n index,\r\n view: this.name\r\n });\r\n },\r\n wheel(e) {\r\n if (e.deltaY > 0) this.previousSlice();\r\n else this.nextSlice();\r\n }\r\n },\r\n computed: {\r\n octDataLoading() {\r\n return this.context && this.context.octDataLoading;\r\n },\r\n referenceImage() {\r\n return this.context && this.context.referenceImage;\r\n },\r\n refImgLoading() {\r\n return (\r\n this.referenceImage &&\r\n (this.referenceImage.imgIsLoading || this.referenceImage.imgIsQueued)\r\n );\r\n },\r\n refImgNotFound() {\r\n return !!(this.referenceImage && this.referenceImage.imgNotFound);\r\n },\r\n refImg() {\r\n return this.referenceImage && this.referenceImage.imgHtmlObject;\r\n },\r\n slices() {\r\n if (!this.context) return [];\r\n return store.getters.getSlices(\r\n \"slice\",\r\n this.context.exSrNo,\r\n this.context.groupName\r\n );\r\n },\r\n sliceBounds() {\r\n return this.context && this.context.sliceBounds;\r\n },\r\n isPlaying() {\r\n return !!(this.context && this.context.playIntervalId);\r\n },\r\n playRate() {\r\n return this.context && this.context.playRate;\r\n },\r\n sliceCurrent() {\r\n return this.context && this.context.sliceCurrent;\r\n },\r\n sliceCurrentIndex() {\r\n return this.sliceCurrent && this.sliceCurrent.index;\r\n },\r\n sliceCurrentEyeMarker() {\r\n return this.sliceCurrent && this.sliceCurrent.eyeMarker;\r\n },\r\n sliceImg() {\r\n return this.sliceCurrent && this.sliceCurrent.imgHtmlObject;\r\n },\r\n sliceImgSize() {\r\n return this.context && this.context.sliceImgSize;\r\n },\r\n sliceImgNotFound() {\r\n return !!(this.sliceCurrent && this.sliceCurrent.imgNotFound);\r\n },\r\n sliceImgLoading() {\r\n return (\r\n this.sliceCurrent &&\r\n (this.sliceCurrent.imgIsLoading || this.sliceCurrent.imgIsQueued)\r\n );\r\n },\r\n sliceInfo() {\r\n return this.context && this.context.sliceInfo;\r\n },\r\n hasSegmentation() {\r\n return this.sliceInfo && this.sliceInfo.sliceHasSegmentation;\r\n },\r\n showSegmentation() {\r\n return this.context && this.context.showSegmentation;\r\n },\r\n showOverlay() {\r\n return this.context && this.context.showOverlay;\r\n },\r\n overlayOpacity() {\r\n return this.context && this.context.overlayOpacity;\r\n },\r\n showETDRS() {\r\n return this.context && this.context.showETDRS;\r\n },\r\n colorSettings() {\r\n return this.context && this.context.octColorSettings;\r\n },\r\n hasColorPalette() {\r\n return this.colorSettings && !!this.colorSettings.colorPalette;\r\n },\r\n isInverted() {\r\n return this.colorSettings && this.colorSettings.isInverted;\r\n },\r\n sliceSegmentationLayerData() {\r\n return this.sliceCurrent && this.sliceCurrent.sliceSegmentationLayerData;\r\n },\r\n thicknessMapPalette() {\r\n return this.context && this.context.thicknessMapPalette;\r\n },\r\n minThickness() {\r\n return this.context && this.context.thicknessMapMinThicknessUm;\r\n },\r\n maxThickness() {\r\n return this.context && this.context.thicknessMapMaxThicknessUm;\r\n },\r\n thicknessStep() {\r\n return this.context && this.context.thicknessMapThicknessStepUm;\r\n },\r\n thicknessMap() {\r\n return this.context && this.context.thicknessMap;\r\n },\r\n thicknessMapImg() {\r\n return this.thicknessMap && this.thicknessMap.imgHtmlObject;\r\n },\r\n thicknessMapImgNotFound() {\r\n return !!(this.thicknessMap && this.thicknessMap.imgNotFound);\r\n },\r\n thicknessMapImgLoading() {\r\n return (\r\n this.thicknessMap &&\r\n (this.thicknessMap.imgIsLoading || this.thicknessMap.imgIsQueued)\r\n );\r\n },\r\n thicknessMapColorSettings() {\r\n return this.context && this.context.thicknessMapColorSettings;\r\n },\r\n foveaOffset() {\r\n return this.context && this.context.foveaOffset;\r\n },\r\n thicknessAnalysis() {\r\n return this.context && this.context.thicknessAnalysis;\r\n },\r\n enfaceImage() {\r\n return this.context && this.context.enfaceImage;\r\n },\r\n enfaceImg() {\r\n return this.enfaceImage && this.enfaceImage.imgHtmlObject;\r\n },\r\n differencePalette() {\r\n return this.context && this.context.differenceMapPalette;\r\n },\r\n differenceMin() {\r\n return this.context && this.context.differenceMapMinThicknessUm;\r\n },\r\n differenceMax() {\r\n return this.context && this.context.differenceMapMaxThicknessUm;\r\n },\r\n differenceStep() {\r\n return this.context && this.context.differenceMapThicknessStepUm;\r\n },\r\n differenceAnalysis() {\r\n return this.context && this.context.differenceAnalysis;\r\n },\r\n isCompare() {\r\n return this.name === \"compare\";\r\n },\r\n showDifferenceMap() {\r\n return this.isCompare && store.getters.comparisonSameType;\r\n },\r\n differenceCanvas() {\r\n return this.context && this.context.differenceCanvas;\r\n },\r\n overlayImg() {\r\n return this.showDifferenceMap ? this.differenceCanvas : this.enfaceImg;\r\n },\r\n overlayPalette() {\r\n return this.showDifferenceMap ? this.differencePalette : null;\r\n },\r\n overlayMin() {\r\n return this.showDifferenceMap ? this.differenceMin : null;\r\n },\r\n overlayMax() {\r\n return this.showDifferenceMap ? this.differenceMax : null;\r\n },\r\n overlayStep() {\r\n return this.showDifferenceMap ? this.differenceStep : null;\r\n },\r\n overlayFoveaOffset() {\r\n return this.showDifferenceMap ? this.foveaOffset : null;\r\n },\r\n overlayAnalysis() {\r\n return this.showDifferenceMap ? this.differenceAnalysis : null;\r\n },\r\n relativeMapSize() {\r\n return this.context && this.context.relativeMapSize;\r\n } \r\n }\r\n}","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusComparisonViewBodyContent.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusComparisonViewBodyContent.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CirrusComparisonViewBodyContent.vue?vue&type=template&id=0c45d5ad&\"\nimport script from \"./CirrusComparisonViewBodyContent.vue?vue&type=script&lang=js&\"\nexport * from \"./CirrusComparisonViewBodyContent.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{attrs:{\"no-gutters\":\"\",\"align-content\":\"start\"}},[_c('v-col',{staticClass:\"reference-wrapper d-flex\",attrs:{\"cols\":\"12\",\"md\":\"6\"},on:{\"wheel\":function($event){$event.preventDefault();return _vm.wheel($event)}}},[_c('oct-reference-image',{attrs:{\"referenceId\":_vm.name + '-reference-image-wrapper',\"paletteId\":_vm.name + '-reference-palette-wrapper',\"isLoading\":_vm.refImgLoading || _vm.octDataLoading,\"refImg\":_vm.refImg,\"refFit\":_vm.refFit,\"refSize\":_vm.refSize,\"refImgLocation\":_vm.refImgLocation,\"refImgNotFound\":_vm.refImgNotFound,\"sliceCurrentIndex\":_vm.sliceCurrentIndex,\"slices\":_vm.slices,\"sliceCurrent\":_vm.sliceCurrent,\"composites\":_vm.composites,\"compositeCurrent\":_vm.compositeCurrent,\"sliceBounds\":_vm.sliceBounds,\"compositeBounds\":_vm.compositeBounds,\"isPlaying\":_vm.isPlaying,\"playRate\":_vm.playRate,\"drawAllSlices\":!_vm.showOverlay,\"showExtension\":!_vm.showOverlay,\"showBindingBox\":_vm.showOverlay,\"showOverlay\":_vm.showOverlay,\"overlayOpacity\":_vm.overlayOpacity,\"overlayImg\":_vm.overlayImg,\"overlaySize\":_vm.overlaySize,\"overlayAnalysis\":_vm.overlayAnalysis,\"overlayFoveaOffset\":_vm.overlayFoveaOffset,\"showOverlayETDRS\":_vm.showETDRS,\"palette\":_vm.overlayPalette,\"paletteSize\":_vm.overlayPaletteSize,\"paletteMin\":_vm.overlayMin,\"paletteMax\":_vm.overlayMax,\"paletteStep\":_vm.overlayStep,\"isMultiview\":true},on:{\"previous\":_vm.previousSlice,\"next\":_vm.nextSlice,\"play\":_vm.play,\"pause\":_vm.pause,\"setPlayRate\":_vm.setPlayRate,\"selectSlice\":_vm.selectSlice,\"selectComposite\":_vm.selectComposite}})],1),_c('v-col',{staticClass:\"cirrus-slice-view\",attrs:{\"cols\":\"12\",\"md\":\"6\"},on:{\"wheel\":function($event){$event.preventDefault();return _vm.wheel($event)}}},[_c('oct-slice-view',{attrs:{\"slice-id\":_vm.name + '-slice-image-wrapper',\"fitSize\":_vm.refFit,\"imgSize\":_vm.refFit,\"img\":_vm.sliceImg,\"imgNotFound\":_vm.sliceImgNotFound,\"imgLoading\":_vm.sliceImgLoading,\"dataLoading\":_vm.octDataLoading,\"otherIndex\":_vm.sliceCurrentIndex,\"otherCount\":_vm.sliceCount,\"sliceEyeMarker\":_vm.sliceCurrentEyeMarker,\"strechSegmentation\":true,\"sliceInfo\":_vm.sliceInfo,\"layerData\":_vm.sliceSegmentationLayerData,\"octColorSettings\":_vm.colorSettings,\"otherColor\":\"magenta\",\"showSegmentation\":_vm.showSegmentation,\"showOpticDiscLine\":true,\"realLocation\":_vm.sliceLocation,\"isInBounds\":_vm.sliceInBounds,\"cscans\":_vm.cscans,\"cscanCurrent\":_vm.cscanCurrent,\"cscanCurrentIndex\":_vm.cscanCurrentIndex},on:{\"selectCScan\":_vm.selectCScan}}),_c('div',{staticClass:\"image-index-counter\",staticStyle:{\"display\":\"flex\",\"justify-content\":\"center\"}},[_c('index-counter',{attrs:{\"index\":_vm.sliceCurrentIndex,\"count\":_vm.sliceCount}})],1)],1),_c('v-col',{staticClass:\"cirrus-slice-view\",attrs:{\"cols\":\"12\",\"md\":\"6\"},on:{\"wheel\":function($event){$event.preventDefault();return _vm.wheel($event)}}},[_c('oct-slice-view',{attrs:{\"slice-id\":_vm.name + '-composite-image-wrapper',\"fitSize\":_vm.flippedFit,\"imgSize\":_vm.refFit,\"img\":_vm.compositeImg,\"imgNotFound\":_vm.compositeImgNotFound,\"imgLoading\":_vm.compositeImgLoading,\"dataLoading\":_vm.octDataLoading,\"otherIndex\":_vm.compositeCurrentIndex,\"otherCount\":_vm.compositeCount,\"sliceEyeMarker\":_vm.compositeCurrentEyeMarker,\"strechSegmentation\":true,\"sliceInfo\":_vm.compositeInfo,\"layerData\":_vm.compositeSegmentationLayerData,\"octColorSettings\":_vm.colorSettings,\"otherColor\":\"magenta\",\"flippedX\":true,\"isFlipped270\":true,\"eyeMarkerAngle\":Math.PI,\"showSegmentation\":_vm.showSegmentation,\"showOpticDiscLine\":true,\"realLocation\":_vm.sliceLocation,\"isInBounds\":_vm.sliceInBounds,\"cscans\":_vm.cscans,\"cscanCurrent\":_vm.cscanCurrent,\"cscanCurrentIndex\":_vm.cscanCurrentIndex},on:{\"selectCScan\":_vm.selectCScan}}),_c('div',{staticClass:\"image-index-counter\",staticStyle:{\"display\":\"flex\",\"justify-content\":\"center\"}},[_c('index-counter',{attrs:{\"index\":_vm.compositeCurrentIndex,\"count\":_vm.compositeCount}})],1)],1),_c('v-col',{staticClass:\"reference-wrapper d-flex\",attrs:{\"cols\":\"12\",\"md\":\"6\"}},[_c('cscan-view',{attrs:{\"cscanId\":_vm.name + '-cscan-image-wrapper',\"cscanFit\":_vm.cscanFit,\"cscanImgSize\":_vm.cscanImgSize,\"octColorSettings\":_vm.colorSettings,\"cscanImg\":_vm.cscanImg,\"cscanImgNotFound\":_vm.cscanImgNotFound,\"cscanImgLoading\":_vm.cscanImgLoading}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusComparisonViewOpticDiscBodyContent.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusComparisonViewOpticDiscBodyContent.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CirrusComparisonViewOpticDiscBodyContent.vue?vue&type=template&id=14e56ce3&\"\nimport script from \"./CirrusComparisonViewOpticDiscBodyContent.vue?vue&type=script&lang=js&\"\nexport * from \"./CirrusComparisonViewOpticDiscBodyContent.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VRow})\n","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusComparisonView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusComparisonView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CirrusComparisonView.vue?vue&type=template&id=b4d119b6&\"\nimport script from \"./CirrusComparisonView.vue?vue&type=script&lang=js&\"\nexport * from \"./CirrusComparisonView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VCol,VFlex,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-row',{staticClass:\"raster-comparison-wrapper\",attrs:{\"no-gutters\":\"\",\"align-content\":\"start\"}},[_c('v-col',{attrs:{\"cols\":\"12\"}},[_c('cirrus-comparison-toolbar',{attrs:{\"name\":_vm.name,\"context\":_vm.context,\"exams\":_vm.exams,\"groups\":_vm.groups}})],1),_c('v-col',{staticClass:\"raster-state-controls\",attrs:{\"cols\":\"12\"}},[_c('v-row',{staticClass:\"raster-state-controls-row\",attrs:{\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"raster-drawer-wrapper\",attrs:{\"cols\":\"5\"}},[_c('raster-image-drawer',{attrs:{\"drawer-id\":_vm.name + '-raster-thumbnail-drawer',\"slices\":_vm.slices,\"sliceCurrentIndex\":_vm.sliceCurrentIndex,\"octDataLoading\":_vm.octDataLoading,\"octColorSettings\":_vm.octColorSettings,\"rasterThumbSize\":_vm.rasterThumbSize},on:{\"selectSlice\":_vm.selectSlice}})],1),_c('v-col',{staticClass:\"raster-reference-wrapper\",attrs:{\"cols\":\"7\"}},[_c('oct-reference-image',{attrs:{\"playbackTop\":true,\"reference-id\":_vm.name + '-reference-image-wrapper',\"isLoading\":_vm.refImgLoading || _vm.octDataLoading,\"refImg\":_vm.refImg,\"refFit\":_vm.refFit,\"refImgNotFound\":_vm.refImgNotFound,\"refImgLocation\":_vm.refImgLocation,\"slices\":_vm.slices,\"sliceCurrent\":_vm.sliceCurrent,\"sliceBounds\":_vm.sliceBounds,\"sliceCurrentIndex\":_vm.sliceCurrentIndex,\"isPlaying\":_vm.isPlaying,\"playRate\":_vm.playRate,\"showExtension\":true,\"drawAllSlices\":true},on:{\"previous\":_vm.previousSlice,\"next\":_vm.nextSlice,\"play\":_vm.play,\"pause\":_vm.pause,\"setPlayRate\":_vm.setPlayRate,\"selectSlice\":_vm.selectSlice}}),_c('raster-color-buttons',{attrs:{\"isInverted\":_vm.isInverted,\"hasColorPalette\":_vm.hasColorPalette},on:{\"toggleColor\":_vm.toggleColor,\"invertColor\":_vm.invertColor}})],1)],1)],1),_c('v-col',{staticClass:\"raster-slice-view\",attrs:{\"cols\":\"12\"}},[_c('oct-slice-view',{attrs:{\"slice-id\":_vm.name + '-slice-image-wrapper',\"fitSize\":_vm.sliceFit,\"img\":_vm.sliceImg,\"imgSize\":_vm.sliceImgSize,\"octColorSettings\":_vm.octColorSettings,\"imgLoading\":_vm.sliceImgLoading,\"dataLoading\":_vm.octDataLoading,\"sliceEyeMarker\":_vm.sliceCurrentEyeMarker,\"imgNotFound\":_vm.sliceImgNotFound,\"sliceInfo\":_vm.sliceInfo}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"raster-thumbnail-drawer\",attrs:{\"id\":_vm.drawerId}},_vm._l((_vm.slices),function(image,index){return _c('raster-thumbnail',{key:image.imgKey,attrs:{\"image\":image,\"index\":index,\"octDataLoading\":_vm.octDataLoading,\"sliceCurrentIndex\":_vm.sliceCurrentIndex,\"octColorSettings\":_vm.octColorSettings,\"rasterThumbSize\":_vm.rasterThumbSize},on:{\"selectSlice\":function($event){return _vm.$emit('selectSlice', $event)}}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"raster-thumbnail\",class:{selected: _vm.sliceCurrentIndex === _vm.image.index},style:({height: (_vm.rasterThumbSize && _vm.rasterThumbSize.h || 0) + 15 + 'px'}),on:{\"click\":function($event){return _vm.$emit('selectSlice', _vm.image.index)}}},[(_vm.imgNotFound)?_c('image-not-found'):_vm._e(),_c('pixel-shaded-canvas',{attrs:{\"img\":_vm.img,\"octColorSettings\":_vm.octColorSettings,\"canvasSize\":_vm.rasterThumbSize,\"imgSize\":_vm.rasterThumbSize,\"dontUseWebgl\":true}}),(_vm.isLoading)?_c('v-progress-circular',{staticClass:\"escalon-absolute-center\",attrs:{\"indeterminate\":\"\"}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RasterThumbnail.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RasterThumbnail.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RasterThumbnail.vue?vue&type=template&id=7f8f7b86&scoped=true&\"\nimport script from \"./RasterThumbnail.vue?vue&type=script&lang=js&\"\nexport * from \"./RasterThumbnail.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RasterThumbnail.vue?vue&type=style&index=0&id=7f8f7b86&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7f8f7b86\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\ninstallComponents(component, {VProgressCircular})\n","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RasterImageDrawer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RasterImageDrawer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RasterImageDrawer.vue?vue&type=template&id=736bb1d6&scoped=true&\"\nimport script from \"./RasterImageDrawer.vue?vue&type=script&lang=js&\"\nexport * from \"./RasterImageDrawer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RasterImageDrawer.vue?vue&type=style&index=0&id=736bb1d6&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"736bb1d6\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{staticClass:\"raster-color-buttons justify-center\",attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-btn',{staticClass:\"modal-cta\",class:[{active: _vm.hasColorPalette}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.$emit('toggleColor')}}},[_vm._v(\"Color\")]),_c('v-btn',{staticClass:\"modal-cta\",class:[{active: _vm.isInverted}, _vm.colorClass],attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.$emit('invertColor')}}},[_vm._v(\"Invert\")])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RasterColorButtons.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RasterColorButtons.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RasterColorButtons.vue?vue&type=template&id=65dec01a&\"\nimport script from \"./RasterColorButtons.vue?vue&type=script&lang=js&\"\nexport * from \"./RasterColorButtons.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VFlex,VLayout})\n","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RasterComparisonView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RasterComparisonView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RasterComparisonView.vue?vue&type=template&id=75997719&\"\nimport script from \"./RasterComparisonView.vue?vue&type=script&lang=js&\"\nexport * from \"./RasterComparisonView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VRow})\n","\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusComparisonBody.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CirrusComparisonBody.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CirrusComparisonBody.vue?vue&type=template&id=d2416e90&\"\nimport script from \"./CirrusComparisonBody.vue?vue&type=script&lang=js&\"\nexport * from \"./CirrusComparisonBody.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCol } from 'vuetify/lib/components/VGrid';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\nimport { VRow } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VCol,VFlex,VLayout,VRow})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{staticClass:\"raster-browser-body oct-browser-body escalon-absolute-cover\",style:(_vm.ieStyle),attrs:{\"no-gutters\":\"\"}},[_c('v-flex',{staticClass:\"sidebar-controls tall-content-wrapper\",attrs:{\"shrink\":\"\",\"xs3\":\"\"}},[_c('oct-reference-image',{staticStyle:{\"height\":\"300px\"},attrs:{\"isLoading\":_vm.refImgLoading || _vm.octDataLoading,\"refImg\":_vm.refImg,\"refFit\":_vm.refFit,\"refImgNotFound\":_vm.refImgNotFound,\"refImgLocation\":_vm.refImgLocation,\"slices\":_vm.slices,\"sliceCurrent\":_vm.sliceCurrent,\"sliceBounds\":_vm.sliceBounds,\"sliceCurrentIndex\":_vm.sliceCurrentIndex,\"isPlaying\":_vm.isPlaying,\"playRate\":_vm.playRate,\"showExtension\":true,\"drawAllSlices\":true},on:{\"previous\":_vm.nextSlice,\"next\":_vm.previousSlice,\"play\":_vm.play,\"pause\":_vm.pause,\"setPlayRate\":_vm.setPlayRate,\"selectSlice\":_vm.selectSlice}}),_c('raster-color-buttons',{attrs:{\"isInverted\":_vm.isInverted,\"hasColorPalette\":_vm.hasColorPalette},on:{\"toggleColor\":_vm.toggleColor,\"invertColor\":_vm.invertColor}}),_c('raster-image-drawer',{attrs:{\"slices\":_vm.slices,\"sliceCurrentIndex\":_vm.sliceCurrentIndex,\"octDataLoading\":_vm.octDataLoading,\"octColorSettings\":_vm.octColorSettings,\"rasterThumbSize\":_vm.rasterThumbSize},on:{\"selectSlice\":_vm.selectSlice}})],1),_c('v-flex',{staticClass:\"main-view tall-content-wrapper\",attrs:{\"shrink\":\"\",\"xs9\":\"\"}},[_c('oct-toolbar'),_c('oct-slice-view',{attrs:{\"fitSize\":_vm.sliceFit,\"img\":_vm.sliceImg,\"imgSize\":_vm.sliceImgSize,\"octColorSettings\":_vm.octColorSettings,\"imgLoading\":_vm.sliceImgLoading,\"dataLoading\":_vm.octDataLoading,\"sliceEyeMarker\":_vm.sliceCurrentEyeMarker,\"imgNotFound\":_vm.sliceImgNotFound,\"sliceInfo\":_vm.sliceInfo}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RasterBrowserBody.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RasterBrowserBody.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RasterBrowserBody.vue?vue&type=template&id=483532f3&scoped=true&\"\nimport script from \"./RasterBrowserBody.vue?vue&type=script&lang=js&\"\nexport * from \"./RasterBrowserBody.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RasterBrowserBody.vue?vue&type=style&index=0&id=483532f3&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"483532f3\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VFlex,VLayout})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{staticClass:\"hvf-browser-body\",attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"ishort-control-toolbar-wrapper\":\"\"}},[_c('hvf-single-exam-toolbar')],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"hvf-main-view-wrapper\":\"\"}},[_c('hvf-single-exam-container')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{staticClass:\"secondary\",attrs:{\"short-control-toolbar\":\"\",\"hvf-toolbar\":\"\",\"align-center\":\"\"}},[_c('v-flex',{attrs:{\"shrink\":\"\",\"eye-text\":\"\",\"mr-auto\":\"\"}},[_c('span',{class:_vm.colorClass},[_vm._v(_vm._s(_vm.leftEyeText))])]),_c('v-flex',{attrs:{\"shrink\":\"\",\"mr-2\":\"\"}},[_c('select-with-button',{staticClass:\"toolbar-select hvf-exam-select\",attrs:{\"value\":_vm.exSrNo,\"items\":_vm.hvfExams,\"icon-button\":true,\"item-text\":\"dateDisplay\",\"item-value\":\"exSrNo\"},on:{\"change\":function($event){return _vm.selectHVFExam({exSrNo: $event})}}})],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-btn',{staticClass:\"modal-cta\",attrs:{\"text\":\"\",\"icon\":\"\"},on:{\"click\":_vm.previousHVFImage}},[_c('v-icon',[_vm._v(\"fas fa-caret-left\")])],1),_c('index-counter',{attrs:{\"index\":_vm.hvfIndex,\"count\":_vm.hvfImageCount}}),_c('v-btn',{staticClass:\"modal-cta\",attrs:{\"text\":\"\",\"icon\":\"\"},on:{\"click\":_vm.nextHVFImage}},[_c('v-icon',[_vm._v(\"fas fa-caret-right\")])],1)],1),_c('od-os-ou-buttons',{staticClass:\"mr-2\",attrs:{\"eye\":_vm.hvfEye},on:{\"selectEye\":_vm.selectHVFEye}}),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('image-button',{attrs:{\"btnClass\":\"modal-cta\",\"title\":\"Print Visual Fields\",\"image\":_vm.coloredAssetUrls.print},on:{\"click\":_vm.print}})],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":_vm.openHVFMultiview}},[_c('v-avatar',{staticClass:\"mr-1\",attrs:{\"size\":\"30\"}},[_c('img',{attrs:{\"src\":require('../../../assets/' + _vm.coloredAssetUrls.multiview)}})]),_vm._v(\"Multiview\\n \")],1)],1),_c('v-flex',{attrs:{\"shrink\":\"\",\"eye-text\":\"\",\"ml-auto\":\"\"}},[_c('span',{class:_vm.colorClass},[_vm._v(_vm._s(_vm.rightEyeText))])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFSingleExamToolbar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFSingleExamToolbar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HVFSingleExamToolbar.vue?vue&type=template&id=23cb2717&\"\nimport script from \"./HVFSingleExamToolbar.vue?vue&type=script&lang=js&\"\nexport * from \"./HVFSingleExamToolbar.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAvatar } from 'vuetify/lib/components/VAvatar';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VAvatar,VBtn,VFlex,VIcon,VLayout})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:\"wrapper\",staticClass:\"layout hvf-single-exam-container\",attrs:{\"tabindex\":\"0\"},on:{\"wheel\":function($event){$event.preventDefault();return _vm.wheel($event)},\"keydown\":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"up\",38,$event.key,[\"Up\",\"ArrowUp\"])){ return null; }$event.preventDefault();return _vm.scrollUp($event)},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"down\",40,$event.key,[\"Down\",\"ArrowDown\"])){ return null; }$event.preventDefault();return _vm.scrollDown($event)},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"right\",39,$event.key,[\"Right\",\"ArrowRight\"])){ return null; }if('button' in $event && $event.button !== 2){ return null; }$event.preventDefault();return _vm.nextHVFImage($event)},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"left\",37,$event.key,[\"Left\",\"ArrowLeft\"])){ return null; }if('button' in $event && $event.button !== 0){ return null; }$event.preventDefault();return _vm.previousHVFImage($event)}]}},[(_vm.showOS)?_c('v-flex',{attrs:{\"hvf-image-view-wrapper\":\"\",\"xs12\":!_vm.showOD,\"xs6\":_vm.showOD,\"order-xs1\":_vm.hvfOrder,\"order-xs2\":!_vm.hvfOrder}},[_c('hvf-image-view',{attrs:{\"eye\":\"OS\",\"image\":_vm.hvfOSImage,\"canvasSize\":_vm.canvasSize,\"scroll\":_vm.scroll},on:{\"hvf_mousedown\":_vm.mousedown,\"hvf_mousemove\":_vm.mousemove,\"hvf_mouseup\":_vm.mouseup}})],1):_vm._e(),(_vm.showOD)?_c('v-flex',{attrs:{\"hvf-image-view-wrapper\":\"\",\"xs12\":!_vm.showOS,\"xs6\":_vm.showOS,\"order-xs1\":!_vm.hvfOrder,\"order-xs2\":_vm.hvfOrder}},[_c('hvf-image-view',{attrs:{\"eye\":\"OD\",\"image\":_vm.hvfODImage,\"canvasSize\":_vm.canvasSize,\"scroll\":_vm.scroll},on:{\"hvf_mousedown\":_vm.mousedown,\"hvf_mousemove\":_vm.mousemove,\"hvf_mouseup\":_vm.mouseup}})],1):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"hammer\",rawName:\"v-hammer:panstart\",value:(_vm.handlePanstart),expression:\"handlePanstart\",arg:\"panstart\"},{name:\"hammer\",rawName:\"v-hammer:pan\",value:(_vm.handlePanmove),expression:\"handlePanmove\",arg:\"pan\"},{name:\"hammer\",rawName:\"v-hammer:panend\",value:(_vm.handlePanend),expression:\"handlePanend\",arg:\"panend\"}],ref:\"wrapper\",staticClass:\"hvf-image-view interactive-canvas-wrapper\",attrs:{\"id\":_vm.wrapperId,\"tabindex\":\"0\"},on:{\"mousedown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"left\",37,$event.key,[\"Left\",\"ArrowLeft\"])){ return null; }if($event.target !== $event.currentTarget){ return null; }if('button' in $event && $event.button !== 0){ return null; }$event.preventDefault();return _vm.handleMousedown($event)},\"mousemove\":function($event){if($event.target !== $event.currentTarget){ return null; }$event.preventDefault();return _vm.handleMousemove($event)},\"mouseup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"left\",37,$event.key,[\"Left\",\"ArrowLeft\"])){ return null; }if($event.target !== $event.currentTarget){ return null; }if('button' in $event && $event.button !== 0){ return null; }$event.preventDefault();return _vm.handleMouseup($event)},\"mouseout\":function($event){if($event.target !== $event.currentTarget){ return null; }$event.preventDefault();return _vm.handleMouseout($event)}}},[(_vm.imgNotFound)?_c('image-not-found'):_vm._e(),_c('canvas-image',{attrs:{\"img\":_vm.img,\"canvasSize\":_vm.canvasSize,\"imgSize\":_vm.imgSize,\"transform\":_vm.transform,\"hires\":true}}),(_vm.imgIsLoading)?_c('v-progress-circular',{staticClass:\"escalon-absolute-center\",attrs:{\"indeterminate\":\"\"}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFImageView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFImageView.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HVFImageView.vue?vue&type=template&id=fec5ad42&\"\nimport script from \"./HVFImageView.vue?vue&type=script&lang=js&\"\nexport * from \"./HVFImageView.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\ninstallComponents(component, {VProgressCircular})\n","import { defaultSize, getViewSizeByClassName, setFittedSize, bound, calculateRealLocation, scrollFromCenterY, getViewSize, setTransformSizes } from \"../../canvas/geometry\";\r\nexport default {\r\n data() {\r\n return {\r\n canvasSize: defaultSize(),\r\n scroll: 0.5,\r\n minScroll: 0,\r\n maxScroll: 1,\r\n dragStart: null,\r\n isMousedown: false,\r\n controlSize: defaultSize()\r\n }\r\n },\r\n computed: {\r\n // note - view will need to provide an imgSize\r\n minCenter() {\r\n return this.canvasSize.h / (2 * this.imgSize.h * this.transform.zoom) || 0.5\r\n },\r\n maxCenter() {\r\n return 1 - this.minCenter;\r\n }\r\n },\r\n methods: {\r\n updateCanvasSizes() {\r\n let vs = getViewSizeByClassName(\"hvf-image-view\");\r\n setFittedSize(vs, vs, this.canvasSize, 8);\r\n let zcs = getViewSize(\"hvf-zoom-wrapper\");\r\n setFittedSize(zcs, zcs, this.controlSize);\r\n },\r\n realLocation(x, y, transform, imgSize) {\r\n let offset = { x: 8, y: 8 };\r\n setTransformSizes(transform, this.canvasSize, imgSize);\r\n return calculateRealLocation(x, y, offset, transform);\r\n },\r\n dragTo(x, y, transform, imgSize){\r\n let dy = this.dragStart.y - y;\r\n let centerY = transform.centerY + dy / imgSize.h;\r\n let scroll = scrollFromCenterY(centerY, this.canvasSize, imgSize, transform);\r\n this.scroll = bound(scroll, this.minScroll, this.maxScroll);\r\n },\r\n initiateDragStart(x, y) {\r\n this.dragStart = { x, y };\r\n },\r\n clearDragStart() {\r\n this.dragStart = null;\r\n },\r\n scrollUp() {\r\n this.scroll = bound(this.scroll - 0.1, this.minScroll, this.maxScroll);\r\n },\r\n scrollDown() {\r\n this.scroll = bound(this.scroll + 0.1, this.minScroll, this.maxScroll);\r\n },\r\n scrollTo(scroll){\r\n this.scroll = bound(scroll, this.minScroll, this.maxScroll);\r\n },\r\n mousedown({e, transform, imgSize}) {\r\n this.isMousedown = true;\r\n const { x, y } = this.realLocation(e.offsetX, e.offsetY, transform, imgSize);\r\n this.initiateDragStart(x, y);\r\n },\r\n mousemove({e, transform, imgSize}) {\r\n if (this.isMousedown){\r\n const { x, y } = this.realLocation(e.offsetX, e.offsetY, transform, imgSize);\r\n if (this.dragStart) this.dragTo(x, y, transform, imgSize);\r\n else this.initiateDragStart(x, y);\r\n } else this.clearDragStart();\r\n },\r\n mouseup() {\r\n this.clearDragStart();\r\n this.isMousedown = false;\r\n },\r\n mouseout() {\r\n this.clearDragStart();\r\n this.isMousedown = false;\r\n }\r\n }\r\n}","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFSingleExamContainer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFSingleExamContainer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HVFSingleExamContainer.vue?vue&type=template&id=546c2e91&\"\nimport script from \"./HVFSingleExamContainer.vue?vue&type=script&lang=js&\"\nexport * from \"./HVFSingleExamContainer.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VFlex } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VFlex})\n","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFBrowserBody.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFBrowserBody.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HVFBrowserBody.vue?vue&type=template&id=cc7e6898&\"\nimport script from \"./HVFBrowserBody.vue?vue&type=script&lang=js&\"\nexport * from \"./HVFBrowserBody.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VFlex,VLayout})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{staticClass:\"hvf-browser-body\",attrs:{\"wrap\":\"\"}},[_c('v-flex',{attrs:{\"xs12\":\"\",\"short-control-toolbar-wrapper\":\"\"}},[_c('hvf-multi-exam-toolbar')],1),_c('v-flex',{attrs:{\"xs12\":\"\",\"hvf-main-view-wrapper\":\"\"}},[_c('hvf-multi-exam-container')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{staticClass:\"secondary\",attrs:{\"short-control-toolbar\":\"\",\"hvf-toolbar\":\"\",\"align-center\":\"\",\"pa-0\":\"\"}},[_c('v-flex',{attrs:{\"escalon-col1\":\"\"}},[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":_vm.closeHVFMultiview}},[_c('v-avatar',{staticClass:\"mr-1\",attrs:{\"size\":\"30\"}},[_c('img',{attrs:{\"src\":require('../../../assets/' + _vm.coloredAssetUrls.returnToSingleView)}})]),_vm._v(\"Single View\\n \")],1)],1),_c('v-flex',{attrs:{\"escalon-col9\":\"\"}},[_c('v-layout',[_c('v-flex',{attrs:{\"eye-text\":\"\",\"escalon-alignCenter\":\"\"}},[_c('span',{class:_vm.colorClass},[_vm._v(_vm._s(_vm.eyeOnLeft))])]),_c('v-flex',{attrs:{\"eye-text\":\"\",\"escalon-alignCenter\":\"\"}},[_c('span',{class:_vm.colorClass},[_vm._v(_vm._s(_vm.eyeOnRight))])])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFMultiExamToolbar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFMultiExamToolbar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HVFMultiExamToolbar.vue?vue&type=template&id=0bc0f30c&\"\nimport script from \"./HVFMultiExamToolbar.vue?vue&type=script&lang=js&\"\nexport * from \"./HVFMultiExamToolbar.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAvatar } from 'vuetify/lib/components/VAvatar';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VAvatar,VBtn,VFlex,VLayout})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{attrs:{\"hvf-multi-exam-container\":\"\"}},[_c('v-flex',{attrs:{\"hvf-multi-exam-sidebar\":\"\",\"escalon-col2\":\"\"}},_vm._l((_vm.hvfViews),function(view,index){return _c('hvf-multi-sidebar-block',{key:index,attrs:{\"view\":view,\"index\":index,\"controlSize\":_vm.controlSize,\"image\":_vm.firstOSImage,\"canvasSize\":_vm.canvasSize,\"scroll\":_vm.scroll},on:{\"scrollUp\":_vm.scrollUp,\"scrollDown\":_vm.scrollDown,\"scrollTo\":_vm.scrollTo}})}),1),_c('v-flex',{attrs:{\"hvf-multi-exam-image-container\":\"\",\"escalon-col9\":\"\"}},_vm._l((_vm.hvfViews),function(view,index){return _c('hvf-multi-image-block',{key:index,attrs:{\"view\":view,\"index\":index,\"canvasSize\":_vm.canvasSize,\"scroll\":_vm.scroll},on:{\"hvf_mousedown\":_vm.mousedown,\"hvf_mousemove\":_vm.mousemove,\"hvf_mouseup\":_vm.mouseup,\"scrollUp\":_vm.scrollUp,\"scrollDown\":_vm.scrollDown,\"next\":_vm.nextHVFImage,\"prev\":_vm.previousHVFImage}})}),1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-layout',{attrs:{\"column\":\"\",\"align-center\":\"\",\"justify-end\":\"\",\"hvf-multi-sidebar-block\":\"\"}},[(_vm.showZoom)?_c('v-flex',{attrs:{\"align-self-start\":\"\",\"zoom-control-wrapper\":\"\"}},[_c('hvf-zoom-control',{attrs:{\"controlSize\":_vm.controlSize,\"image\":_vm.image,\"canvasSize\":_vm.canvasSize,\"scroll\":_vm.scroll},on:{\"scrollUp\":function($event){return _vm.$emit('scrollUp')},\"scrollDown\":function($event){return _vm.$emit('scrollDown')},\"scrollTo\":function($event){return _vm.$emit('scrollTo', $event)}}})],1):_vm._e(),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('v-btn',{staticClass:\"modal-cta\",attrs:{\"text\":\"\",\"icon\":\"\"},on:{\"click\":function($event){return _vm.previousHVFImage(_vm.index)}}},[_c('v-icon',[_vm._v(\"fas fa-caret-left\")])],1),_c('index-counter',{attrs:{\"index\":_vm.hvfIndex,\"count\":_vm.hvfCount}}),_c('v-btn',{staticClass:\"modal-cta next-image-button\",attrs:{\"text\":\"\",\"icon\":\"\"},on:{\"click\":function($event){return _vm.nextHVFImage(_vm.index)}}},[_c('v-icon',[_vm._v(\"fas fa-caret-right\")])],1)],1),_c('v-flex',{attrs:{\"shrink\":\"\"}},[_c('select-with-button',{staticClass:\"toolbar-select hvf-exam-select\",attrs:{\"value\":_vm.exSrNo,\"items\":_vm.hvfExams,\"icon-button\":true,\"item-text\":\"dateDisplay\",\"item-value\":\"exSrNo\"},on:{\"change\":function($event){return _vm.selectHVFExam({exSrNo: $event, index: _vm.index})}}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"hammer\",rawName:\"v-hammer:panstart\",value:(_vm.handlePanstart),expression:\"handlePanstart\",arg:\"panstart\"},{name:\"hammer\",rawName:\"v-hammer:pan\",value:(_vm.handlePanmove),expression:\"handlePanmove\",arg:\"pan\"},{name:\"hammer\",rawName:\"v-hammer:panend\",value:(_vm.handlePanend),expression:\"handlePanend\",arg:\"panend\"},{name:\"hammer\",rawName:\"v-hammer:tap\",value:(_vm.handleTap),expression:\"handleTap\",arg:\"tap\"}],ref:\"wrapper\",staticClass:\"hvf-zoom-canvas-wrapper interactive-canvas-wrapper\",attrs:{\"id\":\"hvf-zoom-wrapper\",\"tabindex\":\"0\"},on:{\"wheel\":function($event){$event.preventDefault();return _vm.wheel($event)},\"keydown\":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"up\",38,$event.key,[\"Up\",\"ArrowUp\"])){ return null; }$event.preventDefault();return _vm.$emit('scrollUp')},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"down\",40,$event.key,[\"Down\",\"ArrowDown\"])){ return null; }$event.preventDefault();return _vm.$emit('scrollDown')}],\"mousedown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"left\",37,$event.key,[\"Left\",\"ArrowLeft\"])){ return null; }if($event.target !== $event.currentTarget){ return null; }if('button' in $event && $event.button !== 0){ return null; }$event.preventDefault();return _vm.handleMousedown($event)},\"mouseup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"left\",37,$event.key,[\"Left\",\"ArrowLeft\"])){ return null; }if($event.target !== $event.currentTarget){ return null; }if('button' in $event && $event.button !== 0){ return null; }$event.preventDefault();return _vm.handleMouseup($event)},\"mousemove\":function($event){if($event.target !== $event.currentTarget){ return null; }$event.preventDefault();return _vm.handleMousemove($event)},\"mouseout\":function($event){if($event.target !== $event.currentTarget){ return null; }$event.preventDefault();return _vm.handleMouseout($event)},\"click\":_vm.handleClick}},[(_vm.imgNotFound)?_c('image-not-found'):_vm._e(),_c('canvas-image',{attrs:{\"canvasSize\":_vm.controlSize,\"imgSize\":_vm.imgSize,\"transform\":_vm.controlTransform,\"img\":_vm.thumb}}),_c('canvas-annotation',{attrs:{\"canvasSize\":_vm.controlSize,\"imgSize\":_vm.controlSize,\"annotation\":_vm.viewFinder}}),(_vm.imgIsLoading)?_c('v-progress-circular',{staticClass:\"escalon-absolute-center\",attrs:{\"indeterminate\":\"\"}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Annotation from \"./annotation\";\r\nimport { setLineStyle } from \"../canvasUtils\";\r\nimport { getZoom } from \"../geometry\";\r\n\r\nexport default class HVFViewFinder extends Annotation {\r\n constructor(){\r\n super();\r\n this.x = 0;\r\n this.y = 0;\r\n this.width = 0;\r\n this.height = 0;\r\n this.lineWidth = 3;\r\n this.color = \"#00b0f0\";\r\n this.backgroundColor = \"rgba(0,176,240,0.3)\";\r\n }\r\n\r\n draw(ctx) {\r\n if (!this.width || !this.height) return;\r\n \r\n ctx.beginPath();\r\n ctx.fillStyle = this.backgroundColor;\r\n ctx.fillRect(this.x, this.y, this.width, this.height);\r\n setLineStyle(ctx, this);\r\n ctx.strokeRect(this.x, this.y, this.width, this.height);\r\n ctx.closePath();\r\n }\r\n\r\n updateViewFinder(controlSize, controlTransform, imgSize, canvasSize, scroll){\r\n this.width = imgSize.w * controlTransform.zoom;\r\n\r\n let cz = controlTransform.zoom;\r\n let smallImgSize = { w: imgSize.w * cz, h: imgSize.h * cz };\r\n let z = getZoom(smallImgSize, canvasSize);\r\n let smallCanvasSize = { w: canvasSize.w * z, h: canvasSize.h * z };\r\n\r\n this.width = smallCanvasSize.w;\r\n this.height = smallCanvasSize.h;\r\n\r\n this.x = (controlSize.w - smallCanvasSize.w) / 2;\r\n\r\n let top = smallImgSize.h - this.height;\r\n let minTop = (controlSize.h - smallImgSize.h) / 2;\r\n this.y = minTop + scroll * top;\r\n\r\n this.signalReady();\r\n }\r\n}","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFZoomControl.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFZoomControl.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HVFZoomControl.vue?vue&type=template&id=7ab10b7c&\"\nimport script from \"./HVFZoomControl.vue?vue&type=script&lang=js&\"\nexport * from \"./HVFZoomControl.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\ninstallComponents(component, {VProgressCircular})\n","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFMultiSidebarBlock.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFMultiSidebarBlock.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HVFMultiSidebarBlock.vue?vue&type=template&id=3d6379e7&\"\nimport script from \"./HVFMultiSidebarBlock.vue?vue&type=script&lang=js&\"\nexport * from \"./HVFMultiSidebarBlock.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VBtn,VFlex,VIcon,VLayout})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"layout hvf-multi-image-block\",on:{\"wheel\":function($event){$event.preventDefault();return _vm.wheel($event)},\"keydown\":[function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"up\",38,$event.key,[\"Up\",\"ArrowUp\"])){ return null; }$event.preventDefault();return _vm.$emit('scrollUp')},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"down\",40,$event.key,[\"Down\",\"ArrowDown\"])){ return null; }$event.preventDefault();return _vm.$emit('scrollDown')},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"right\",39,$event.key,[\"Right\",\"ArrowRight\"])){ return null; }if('button' in $event && $event.button !== 2){ return null; }$event.preventDefault();return _vm.$emit('next', _vm.index)},function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"left\",37,$event.key,[\"Left\",\"ArrowLeft\"])){ return null; }if('button' in $event && $event.button !== 0){ return null; }$event.preventDefault();return _vm.$emit('prev', _vm.index)}]}},[_c('v-flex',{attrs:{\"hvf-image-view-wrapper\":\"\",\"xs6\":\"\",\"order-xs1\":_vm.hvfOrder,\"order-xs2\":!_vm.hvfOrder}},[_c('hvfImageView',{attrs:{\"eye\":\"OS\",\"image\":_vm.hvfOSImage,\"canvasSize\":_vm.canvasSize,\"scroll\":_vm.scroll},on:{\"hvf_mousedown\":function($event){return _vm.$emit('hvf_mousedown', $event)},\"hvf_mousemove\":function($event){return _vm.$emit('hvf_mousemove', $event)},\"hvf_mouseup\":function($event){return _vm.$emit('hvf_mouseup', $event)}}})],1),_c('v-flex',{attrs:{\"hvf-image-view-wrapper\":\"\",\"xs6\":\"\",\"order-xs1\":!_vm.hvfOrder,\"order-xs2\":_vm.hvfOrder}},[_c('hvfImageView',{attrs:{\"eye\":\"OD\",\"image\":_vm.hvfODImage,\"canvasSize\":_vm.canvasSize,\"scroll\":_vm.scroll},on:{\"hvf_mousedown\":function($event){return _vm.$emit('hvf_mousedown', $event)},\"hvf_mousemove\":function($event){return _vm.$emit('hvf_mousemove', $event)},\"hvf_mouseup\":function($event){return _vm.$emit('hvf_mouseup', $event)}}})],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFMultiImageBlock.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFMultiImageBlock.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HVFMultiImageBlock.vue?vue&type=template&id=b437cc68&\"\nimport script from \"./HVFMultiImageBlock.vue?vue&type=script&lang=js&\"\nexport * from \"./HVFMultiImageBlock.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VFlex } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VFlex})\n","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFMultiExamContainer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFMultiExamContainer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HVFMultiExamContainer.vue?vue&type=template&id=774fb8e0&\"\nimport script from \"./HVFMultiExamContainer.vue?vue&type=script&lang=js&\"\nexport * from \"./HVFMultiExamContainer.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VFlex,VLayout})\n","\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFMultiviewBody.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HVFMultiviewBody.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HVFMultiviewBody.vue?vue&type=template&id=1f74632c&\"\nimport script from \"./HVFMultiviewBody.vue?vue&type=script&lang=js&\"\nexport * from \"./HVFMultiviewBody.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VFlex } from 'vuetify/lib/components/VGrid';\nimport { VLayout } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VFlex,VLayout})\n","import imageBrowserHeader from \"../imageBrowser/ImageBrowserHeader\";\r\nimport imageBrowserBody from \"../imageBrowser/ImageBrowserBody\";\r\nimport spectralisBrowserBody from \"../imageBrowser/oct/SpectralisBrowserBody\";\r\nimport cirrusBrowserBody from \"../imageBrowser/oct/CirrusBrowserBody\";\r\nimport spectralisComparisonBody from \"../imageBrowser/oct/SpectralisComparisonBody\";\r\nimport cirrusComparisonBody from \"../imageBrowser/oct/CirrusComparisonBody\";\r\nimport rasterBrowserBody from \"../imageBrowser/oct/RasterBrowserBody\";\r\nimport hvfBrowserBody from \"../imageBrowser/hvf/HVFBrowserBody\";\r\nimport hvfMultiviewBody from \"../imageBrowser/hvf/HVFMultiviewBody\";\r\nimport { mapGetters } from \"vuex\";\r\nexport default {\r\n components: {\r\n imageBrowserHeader,\r\n imageBrowserBody,\r\n spectralisBrowserBody,\r\n cirrusBrowserBody,\r\n spectralisComparisonBody,\r\n cirrusComparisonBody,\r\n rasterBrowserBody,\r\n hvfBrowserBody,\r\n hvfMultiviewBody\r\n },\r\n computed: {\r\n ...mapGetters([\"imageBrowserContext\"]),\r\n bodyComponent() {\r\n return this.imageBrowserContext && this.imageBrowserContext.componentName || \"imageBrowserBody\";\r\n },\r\n browserName(){\r\n return this.imageBrowserContext && this.imageBrowserContext.browserName;\r\n }\r\n }\r\n}","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageAnnotationControls.vue?vue&type=style&index=0&id=6b5a2874&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ImageAnnotationControls.vue?vue&type=style&index=0&id=6b5a2874&lang=scss&scoped=true&\"","var render, staticRenderFns\nimport script from \"./CanvasImage.vue?vue&type=script&lang=js&\"\nexport * from \"./CanvasImage.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CanvasImage.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CanvasImage.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OCTSliceView.vue?vue&type=style&index=0&id=481dbfac&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./OCTSliceView.vue?vue&type=style&index=0&id=481dbfac&lang=scss&scoped=true&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RasterImageDrawer.vue?vue&type=style&index=0&id=736bb1d6&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RasterImageDrawer.vue?vue&type=style&index=0&id=736bb1d6&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"thumb-card\",style:(_vm.isAnnotated),on:{\"click\":function($event){return _vm.$emit('click')}}},[(_vm.isLoading)?_c('v-progress-circular',{staticClass:\"escalon-absolute-center\",attrs:{\"indeterminate\":\"\"}}):(_vm.isCirrus && _vm.isUserPrefBlackAndWhiteCirrusView && _vm.imageHTMLObj && !_vm.isCirrusReference )?_c('div',[_c('pixel-shaded-canvas',{attrs:{\"img\":_vm.imageHTMLObj,\"colorSettings\":_vm.colorSettings,\"canvasSize\":_vm.imgSize,\"imgSize\":_vm.imgSize,\"dontUseWebgl\":_vm.dontUseWebgl}})],1):_c('div',{staticClass:\"escalon-background-image\",style:(_vm.style),attrs:{\"title\":_vm.title}}),(_vm.isVideo)?_c('v-icon',{style:(_vm.iconStyle),attrs:{\"color\":_vm.colorHex}},[_vm._v(\"fas fa-film\")]):_vm._e(),_c('span',{class:_vm.colorClass,attrs:{\"id\":\"image-eye\"}},[_vm._v(_vm._s(_vm.image.imgEye)+\"\\n \"),_c('span',{staticClass:\"tooltiptext\"},[_vm._v(_vm._s(_vm.image.flSrNo))])]),_c('span',{attrs:{\"id\":\"timespan\"}},[_vm._v(_vm._s(_vm.image.imgTimeStamp))]),(_vm.showMisc)?_c('thumbnail-misc',{attrs:{\"imgSize\":_vm.imgSize,\"thumbnailAnnotation\":_vm.thumbnailAnnotation,\"showDropdown\":_vm.showDropdown},on:{\"multiview-launch\":_vm.multiviewLaunch}}):_vm._e(),(_vm.isMultiview)?_c('v-checkbox',{staticClass:\"thumb-checkbox\",attrs:{\"color\":_vm.colorHex,\"input-value\":_vm.isSelected},on:{\"click\":function($event){$event.stopPropagation();return _vm.$emit('clickCheckbox')}}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Thumbnail.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vuetify-loader/lib/loader.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Thumbnail.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Thumbnail.vue?vue&type=template&id=ffefc59a&scoped=true&\"\nimport script from \"./Thumbnail.vue?vue&type=script&lang=js&\"\nexport * from \"./Thumbnail.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Thumbnail.vue?vue&type=style&index=0&id=ffefc59a&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"ffefc59a\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VCheckbox } from 'vuetify/lib/components/VCheckbox';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\ninstallComponents(component, {VCheckbox,VIcon,VProgressCircular})\n"],"sourceRoot":""}