{"version":3,"file":"js/app.7bf91260.js","mappings":"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","sources":["webpack://vue-media-annotator/./src/notificatonBus.ts","webpack://vue-media-annotator/./dive-common/vue-utilities/prompt-service/Prompt.vue","webpack://vue-media-annotator/./dive-common/vue-utilities/prompt-service/Prompt.vue?a7b0","webpack://vue-media-annotator/./dive-common/vue-utilities/prompt-service/Prompt.vue?4658","webpack://vue-media-annotator/./dive-common/vue-utilities/prompt-service/index.ts","webpack://vue-media-annotator/./dive-common/vue-utilities/v-mousetrap/index.js","webpack://vue-media-annotator/./platform/web-girder/plugins/vuetify.ts","webpack://vue-media-annotator/./platform/web-girder/plugins/girder.ts","webpack://vue-media-annotator/./platform/web-girder/App.vue","webpack://vue-media-annotator/./src/StyleManager.ts","webpack://vue-media-annotator/./src/utils.ts","webpack://vue-media-annotator/./src/BaseFilterControls.ts","webpack://vue-media-annotator/./src/AttributeTrackFilterControls.ts","webpack://vue-media-annotator/./src/TrackFilterControls.ts","webpack://vue-media-annotator/./src/GroupFilterControls.ts","webpack://vue-media-annotator/./src/BaseAnnotationStore.ts","webpack://vue-media-annotator/./src/BaseAnnotation.ts","webpack://vue-media-annotator/./src/Group.ts","webpack://vue-media-annotator/./src/MultiMap.ts","webpack://vue-media-annotator/./src/GroupStore.ts","webpack://vue-media-annotator/./src/listUtils.ts","webpack://vue-media-annotator/./src/track.ts","webpack://vue-media-annotator/./src/TrackStore.ts","webpack://vue-media-annotator/./src/CameraStore.ts","webpack://vue-media-annotator/./src/provides.ts","webpack://vue-media-annotator/./dive-common/apispec.ts","webpack://vue-media-annotator/./platform/web-girder/store/types.ts","webpack://vue-media-annotator/./platform/desktop/constants.ts","webpack://vue-media-annotator/./platform/web-girder/api/annotation.service.ts","webpack://vue-media-annotator/./platform/web-girder/api/configuration.service.ts","webpack://vue-media-annotator/./platform/web-girder/api/rpc.service.ts","webpack://vue-media-annotator/./platform/web-girder/api/dataset.service.ts","webpack://vue-media-annotator/./platform/web-girder/api/girder.service.ts","webpack://vue-media-annotator/./platform/web-girder/api/largeImage.service.ts","webpack://vue-media-annotator/./platform/web-girder/api/index.ts","webpack://vue-media-annotator/./dive-common/constants.ts","webpack://vue-media-annotator/./platform/web-girder/utils.ts","webpack://vue-media-annotator/./platform/web-girder/App.vue?2a14","webpack://vue-media-annotator/./platform/web-girder/App.vue?1f3b","webpack://vue-media-annotator/./platform/web-girder/views/Home.vue","webpack://vue-media-annotator/./dive-common/components/RunPipelineMenu.vue","webpack://vue-media-annotator/./dive-common/components/JobLaunchDialog.vue","webpack://vue-media-annotator/./dive-common/components/JobLaunchDialog.vue?8472","webpack://vue-media-annotator/./dive-common/components/JobLaunchDialog.vue?4848","webpack://vue-media-annotator/./dive-common/store/settings.ts","webpack://vue-media-annotator/./dive-common/use/useModeManager.ts","webpack://vue-media-annotator/./dive-common/use/useSave.ts","webpack://vue-media-annotator/./dive-common/use/useRequest.ts","webpack://vue-media-annotator/./dive-common/components/RunPipelineMenu.vue?80c7","webpack://vue-media-annotator/./dive-common/components/RunPipelineMenu.vue?dfc5","webpack://vue-media-annotator/./platform/web-girder/views/RunTrainingMenu.vue","webpack://vue-media-annotator/./dive-common/components/ImportButton.vue","webpack://vue-media-annotator/./dive-common/components/ImportButton.vue?0b97","webpack://vue-media-annotator/./dive-common/components/ImportButton.vue?68b8","webpack://vue-media-annotator/./platform/web-girder/views/RunTrainingMenu.vue?729f","webpack://vue-media-annotator/./platform/web-girder/views/RunTrainingMenu.vue?1552","webpack://vue-media-annotator/./platform/web-girder/views/Export.vue","webpack://vue-media-annotator/./dive-common/components/AutosavePrompt.vue","webpack://vue-media-annotator/./dive-common/components/AutosavePrompt.vue?e475","webpack://vue-media-annotator/./dive-common/components/AutosavePrompt.vue?fdac","webpack://vue-media-annotator/./platform/web-girder/views/Export.vue?44b5","webpack://vue-media-annotator/./platform/web-girder/views/Export.vue?7a77","webpack://vue-media-annotator/./platform/web-girder/views/Upload.vue","webpack://vue-media-annotator/./platform/web-girder/constants.ts","webpack://vue-media-annotator/./dive-common/components/ImportMultiCamDialog.vue","webpack://vue-media-annotator/./platform/desktop/sharedUtils.ts","webpack://vue-media-annotator/./dive-common/components/ImportMultiCamCameraGroup.vue","webpack://vue-media-annotator/./dive-common/components/ImportMultiCamCameraGroup.vue?34d5","webpack://vue-media-annotator/./dive-common/components/ImportMultiCamCameraGroup.vue?c0c5","webpack://vue-media-annotator/./dive-common/components/ImportMultiCamChooseSource.vue","webpack://vue-media-annotator/./dive-common/components/ImportMultiCamChooseSource.vue?02c4","webpack://vue-media-annotator/./dive-common/components/ImportMultiCamChooseSource.vue?98b9","webpack://vue-media-annotator/./dive-common/components/ImportMultiCamChooseAnnotation.vue","webpack://vue-media-annotator/./dive-common/components/ImportMultiCamChooseAnnotation.vue?c1c7","webpack://vue-media-annotator/./dive-common/components/ImportMultiCamChooseAnnotation.vue?8f84","webpack://vue-media-annotator/./dive-common/components/ImportMultiCamAddType.vue","webpack://vue-media-annotator/./dive-common/components/ImportMultiCamAddType.vue?2662","webpack://vue-media-annotator/./dive-common/components/ImportMultiCamAddType.vue?e5f4","webpack://vue-media-annotator/./dive-common/components/ImportMultiCamDialog.vue?f3bc","webpack://vue-media-annotator/./dive-common/components/ImportMultiCamDialog.vue?e27d","webpack://vue-media-annotator/./platform/web-girder/views/UploadGirder.vue","webpack://vue-media-annotator/platform/web-girder/views/UploadGirder.vue","webpack://vue-media-annotator/./platform/web-girder/views/UploadGirder.vue?9325","webpack://vue-media-annotator/./platform/web-girder/views/UploadGirder.vue?5b59","webpack://vue-media-annotator/./platform/web-girder/views/Upload.vue?bf43","webpack://vue-media-annotator/./platform/web-girder/views/Upload.vue?95b0","webpack://vue-media-annotator/./platform/web-girder/views/DataDetails.vue","webpack://vue-media-annotator/platform/web-girder/views/DataDetails.vue","webpack://vue-media-annotator/./platform/web-girder/views/DataDetails.vue?cd65","webpack://vue-media-annotator/./platform/web-girder/views/DataDetails.vue?98d2","webpack://vue-media-annotator/./platform/web-girder/views/Clone.vue","webpack://vue-media-annotator/./platform/web-girder/views/Clone.vue?f549","webpack://vue-media-annotator/./platform/web-girder/views/Clone.vue?ef71","webpack://vue-media-annotator/./platform/web-girder/views/ShareTab.vue","webpack://vue-media-annotator/./platform/web-girder/views/ShareTab.vue?63af","webpack://vue-media-annotator/./platform/web-girder/views/ShareTab.vue?73ca","webpack://vue-media-annotator/./platform/web-girder/views/DataShared.vue","webpack://vue-media-annotator/./platform/web-girder/views/DataShared.vue?bd96","webpack://vue-media-annotator/./platform/web-girder/views/DataShared.vue?0c99","webpack://vue-media-annotator/./platform/web-girder/eventBus.ts","webpack://vue-media-annotator/platform/web-girder/views/Home.vue","webpack://vue-media-annotator/./platform/web-girder/views/Home.vue?4b91","webpack://vue-media-annotator/./platform/web-girder/views/Home.vue?67f0","webpack://vue-media-annotator/./platform/web-girder/views/Jobs.vue","webpack://vue-media-annotator/./platform/web-girder/views/Jobs.vue?5d41","webpack://vue-media-annotator/./platform/web-girder/views/Jobs.vue?1a10","webpack://vue-media-annotator/./platform/web-girder/views/Login.vue","webpack://vue-media-annotator/./platform/web-girder/views/Login.vue?1a50","webpack://vue-media-annotator/./platform/web-girder/views/Login.vue?65bf","webpack://vue-media-annotator/./platform/web-girder/views/RouterPage.vue","webpack://vue-media-annotator/./platform/web-girder/views/NavigationBar.vue","webpack://vue-media-annotator/./dive-common/components/NavigationTitle.vue","webpack://vue-media-annotator/dive-common/components/NavigationTitle.vue","webpack://vue-media-annotator/./dive-common/components/NavigationTitle.vue?bac6","webpack://vue-media-annotator/./dive-common/components/NavigationTitle.vue?ae8b","webpack://vue-media-annotator/./dive-common/components/UserGuideButton.vue","webpack://vue-media-annotator/./dive-common/components/UserGuideDialog.vue","webpack://vue-media-annotator/./dive-common/components/UserGuideDialog.vue?1f6f","webpack://vue-media-annotator/./dive-common/components/UserGuideDialog.vue?e60c","webpack://vue-media-annotator/dive-common/components/UserGuideButton.vue","webpack://vue-media-annotator/./dive-common/components/UserGuideButton.vue?03c6","webpack://vue-media-annotator/./dive-common/components/UserGuideButton.vue?6f96","webpack://vue-media-annotator/./platform/web-girder/views/JobsTab.vue","webpack://vue-media-annotator/./platform/web-girder/views/JobsTab.vue?5f36","webpack://vue-media-annotator/./platform/web-girder/views/JobsTab.vue?314a","webpack://vue-media-annotator/platform/web-girder/views/NavigationBar.vue","webpack://vue-media-annotator/./platform/web-girder/views/NavigationBar.vue?2cf6","webpack://vue-media-annotator/./platform/web-girder/views/NavigationBar.vue?03e8","webpack://vue-media-annotator/./platform/web-girder/views/RouterPage.vue?30f0","webpack://vue-media-annotator/./platform/web-girder/views/RouterPage.vue?d6d4","webpack://vue-media-annotator/./platform/web-girder/views/AdminPage.vue","webpack://vue-media-annotator/./platform/web-girder/views/Admin/Addons.vue","webpack://vue-media-annotator/./platform/web-girder/views/Admin/Addons.vue?1d5c","webpack://vue-media-annotator/./platform/web-girder/views/Admin/Addons.vue?f344","webpack://vue-media-annotator/./platform/web-girder/views/Admin/AdminRecents.vue","webpack://vue-media-annotator/./platform/web-girder/api/admin.service.ts","webpack://vue-media-annotator/./platform/web-girder/views/Admin/AdminRecents.vue?eeba","webpack://vue-media-annotator/./platform/web-girder/views/Admin/AdminRecents.vue?64bc","webpack://vue-media-annotator/./platform/web-girder/views/Admin/UserRecents.vue","webpack://vue-media-annotator/./platform/web-girder/views/Admin/UserRecents.vue?5868","webpack://vue-media-annotator/./platform/web-girder/views/Admin/UserRecents.vue?672b","webpack://vue-media-annotator/./platform/web-girder/views/Admin/AdminJobs.vue","webpack://vue-media-annotator/./platform/web-girder/views/Admin/AdminJobs.vue?be14","webpack://vue-media-annotator/./platform/web-girder/views/Admin/AdminJobs.vue?1141","webpack://vue-media-annotator/./platform/web-girder/views/Admin/AdminBranding.vue","webpack://vue-media-annotator/./platform/web-girder/views/Admin/AdminBranding.vue?5aee","webpack://vue-media-annotator/./platform/web-girder/views/Admin/AdminBranding.vue?e85e","webpack://vue-media-annotator/platform/web-girder/views/AdminPage.vue","webpack://vue-media-annotator/./platform/web-girder/views/AdminPage.vue?78b6","webpack://vue-media-annotator/./platform/web-girder/views/AdminPage.vue?a735","webpack://vue-media-annotator/./platform/web-girder/views/ViewerLoader.vue","webpack://vue-media-annotator/./dive-common/components/Viewer.vue","webpack://vue-media-annotator/./src/use/useAttributes.ts","webpack://vue-media-annotator/./src/use/useEventChart.ts","webpack://vue-media-annotator/./src/use/useLineChart.ts","webpack://vue-media-annotator/./src/use/useTimeObserver.ts","webpack://vue-media-annotator/./src/use/useImageEnhancements.ts","webpack://vue-media-annotator/./src/layers/BaseLayer.ts","webpack://vue-media-annotator/./src/layers/AnnotationLayers/LineLayer.ts","webpack://vue-media-annotator/./src/layers/AnnotationLayers/PointLayer.ts","webpack://vue-media-annotator/./src/layers/AnnotationLayers/PolygonLayer.ts","webpack://vue-media-annotator/./src/layers/AnnotationLayers/RectangleLayer.ts","webpack://vue-media-annotator/./src/layers/AnnotationLayers/TextLayer.ts","webpack://vue-media-annotator/./src/layers/UILayers/ToolTipWidget.vue","webpack://vue-media-annotator/./src/layers/UILayers/ToolTipWidget.vue?7903","webpack://vue-media-annotator/./src/layers/UILayers/ToolTipWidget.vue?603b","webpack://vue-media-annotator/./src/layers/UILayers/UILayer.ts","webpack://vue-media-annotator/./src/layers/EditAnnotationLayer.ts","webpack://vue-media-annotator/./src/components/annotators/ImageAnnotator.vue","webpack://vue-media-annotator/./src/components/annotators/useMediaController.ts","webpack://vue-media-annotator/./src/components/annotators/ImageAnnotator.vue?2b95","webpack://vue-media-annotator/./src/components/annotators/ImageAnnotator.vue?df03","webpack://vue-media-annotator/./src/components/annotators/VideoAnnotator.vue","webpack://vue-media-annotator/./src/components/annotators/VideoAnnotator.vue?17db","webpack://vue-media-annotator/./src/components/annotators/VideoAnnotator.vue?6cc6","webpack://vue-media-annotator/./src/components/annotators/LargeImageAnnotator.vue","webpack://vue-media-annotator/./src/components/annotators/LargeImageAnnotator.vue?ca1a","webpack://vue-media-annotator/./src/components/annotators/LargeImageAnnotator.vue?596d","webpack://vue-media-annotator/./src/components/controls/Controls.vue","webpack://vue-media-annotator/./dive-common/components/TypeThreshold.vue","webpack://vue-media-annotator/./dive-common/components/ConfidenceFilter.vue","webpack://vue-media-annotator/./dive-common/components/ConfidenceFilter.vue?a244","webpack://vue-media-annotator/./dive-common/components/ConfidenceFilter.vue?0111","webpack://vue-media-annotator/./dive-common/components/TypeThreshold.vue?8f2e","webpack://vue-media-annotator/./dive-common/components/TypeThreshold.vue?140d","webpack://vue-media-annotator/./src/components/ImageEnhancements.vue","webpack://vue-media-annotator/./src/components/ImageEnhancements.vue?6a9e","webpack://vue-media-annotator/./src/components/ImageEnhancements.vue?8496","webpack://vue-media-annotator/./dive-common/components/GroupSidebar.vue","webpack://vue-media-annotator/./src/components/FilterList.vue","webpack://vue-media-annotator/./src/components/TooltipButton.vue","webpack://vue-media-annotator/./src/components/TooltipButton.vue?0242","webpack://vue-media-annotator/./src/components/TooltipButton.vue?8f6a","webpack://vue-media-annotator/./src/components/TypeEditor.vue","webpack://vue-media-annotator/./src/components/TypeEditor.vue?87a3","webpack://vue-media-annotator/./src/components/TypeEditor.vue?43eb","webpack://vue-media-annotator/./src/components/TypeItem.vue","webpack://vue-media-annotator/./src/components/TypeItem.vue?6119","webpack://vue-media-annotator/./src/components/TypeItem.vue?d2fa","webpack://vue-media-annotator/./src/components/FilterList.vue?e34e","webpack://vue-media-annotator/./src/components/FilterList.vue?7803","webpack://vue-media-annotator/./src/components/GroupList.vue","webpack://vue-media-annotator/./src/use/useVirtualScrollTo.ts","webpack://vue-media-annotator/./src/components/GroupItem.vue","webpack://vue-media-annotator/./src/use/useVuetify.ts","webpack://vue-media-annotator/./src/components/TypePicker.vue","webpack://vue-media-annotator/./src/components/TypePicker.vue?57c9","webpack://vue-media-annotator/./src/components/TypePicker.vue?24f4","webpack://vue-media-annotator/./src/components/GroupItem.vue?90b3","webpack://vue-media-annotator/./src/components/GroupItem.vue?3d39","webpack://vue-media-annotator/./src/components/GroupList.vue?cea4","webpack://vue-media-annotator/./src/components/GroupList.vue?5fb6","webpack://vue-media-annotator/./dive-common/components/StackedVirtualSidebarContainer.vue","webpack://vue-media-annotator/./dive-common/components/StackedVirtualSidebarContainer.vue?c843","webpack://vue-media-annotator/./dive-common/components/StackedVirtualSidebarContainer.vue?efd7","webpack://vue-media-annotator/./dive-common/components/GroupSidebar.vue?89ec","webpack://vue-media-annotator/./dive-common/components/GroupSidebar.vue?7b9a","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributesSideBar.vue","webpack://vue-media-annotator/./src/components/AttributeFilters.vue","webpack://vue-media-annotator/./src/components/AttributeFilter/AttributeNumberFilter.vue","webpack://vue-media-annotator/./src/components/AttributeFilter/AttributeNumberFilterSettings.vue","webpack://vue-media-annotator/./src/components/AttributeFilter/AttributeNumberFilterSettings.vue?48f2","webpack://vue-media-annotator/./src/components/AttributeFilter/AttributeNumberFilterSettings.vue?cf60","webpack://vue-media-annotator/./src/components/AttributeFilter/AttributeNumberFilter.vue?ff85","webpack://vue-media-annotator/./src/components/AttributeFilter/AttributeNumberFilter.vue?d518","webpack://vue-media-annotator/./src/components/AttributeFilter/AttributeStringFilter.vue","webpack://vue-media-annotator/./src/components/AttributeFilter/AttributeStringFilterSettings.vue","webpack://vue-media-annotator/./src/components/AttributeFilter/AttributeStringFilterSettings.vue?f08d","webpack://vue-media-annotator/./src/components/AttributeFilter/AttributeStringFilterSettings.vue?8cc3","webpack://vue-media-annotator/./src/components/AttributeFilter/AttributeStringFilter.vue?25cc","webpack://vue-media-annotator/./src/components/AttributeFilter/AttributeStringFilter.vue?5f2a","webpack://vue-media-annotator/./src/components/AttributeFilter/AttributeKeyFilter.vue","webpack://vue-media-annotator/./src/components/AttributeFilter/AttributeKeyFilterSettings.vue","webpack://vue-media-annotator/./src/components/AttributeFilter/AttributeKeyFilterSettings.vue?2d21","webpack://vue-media-annotator/./src/components/AttributeFilter/AttributeKeyFilterSettings.vue?de06","webpack://vue-media-annotator/./src/components/AttributeFilter/AttributeKeyFilter.vue?7e9f","webpack://vue-media-annotator/./src/components/AttributeFilter/AttributeKeyFilter.vue?c912","webpack://vue-media-annotator/./src/components/AttributeFilters.vue?6391","webpack://vue-media-annotator/./src/components/AttributeFilters.vue?a0a0","webpack://vue-media-annotator/./src/components/AttributeTimeline.vue","webpack://vue-media-annotator/./src/components/AttributeTimeline.vue?b255","webpack://vue-media-annotator/./src/components/AttributeTimeline.vue?bcda","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributesSideBar.vue?2f96","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributesSideBar.vue?1077","webpack://vue-media-annotator/./dive-common/components/MultiCamTools.vue","webpack://vue-media-annotator/./dive-common/components/MultiCamTools.vue?7002","webpack://vue-media-annotator/./dive-common/components/MultiCamTools.vue?48c6","webpack://vue-media-annotator/./src/components/AttributeTrackFilters.vue","webpack://vue-media-annotator/./dive-common/components/AttributeTrackFilter.vue","webpack://vue-media-annotator/./dive-common/components/AttributeTrackFilter.vue?f574","webpack://vue-media-annotator/./dive-common/components/AttributeTrackFilter.vue?2877","webpack://vue-media-annotator/./src/components/AttributeTrackFilters.vue?489c","webpack://vue-media-annotator/./src/components/AttributeTrackFilters.vue?ecd7","webpack://vue-media-annotator/./dive-common/store/context.ts","webpack://vue-media-annotator/./src/components/controls/Controls.vue?8133","webpack://vue-media-annotator/./src/components/controls/Controls.vue?ee95","webpack://vue-media-annotator/./src/components/controls/EventChart.vue","webpack://vue-media-annotator/src/components/controls/EventChart.vue","webpack://vue-media-annotator/./src/components/controls/EventChart.vue?c605","webpack://vue-media-annotator/./src/components/controls/EventChart.vue?544f","webpack://vue-media-annotator/./src/components/controls/FileNameTimeDisplay.vue","webpack://vue-media-annotator/./src/components/controls/FileNameTimeDisplay.vue?6e0e","webpack://vue-media-annotator/./src/components/controls/FileNameTimeDisplay.vue?605a","webpack://vue-media-annotator/./src/components/controls/LineChart.vue","webpack://vue-media-annotator/src/components/controls/LineChart.vue","webpack://vue-media-annotator/./src/components/controls/LineChart.vue?4180","webpack://vue-media-annotator/./src/components/controls/LineChart.vue?65e8","webpack://vue-media-annotator/./src/components/controls/Timeline.vue","webpack://vue-media-annotator/src/components/controls/Timeline.vue","webpack://vue-media-annotator/./src/components/controls/Timeline.vue?9d66","webpack://vue-media-annotator/./src/components/controls/Timeline.vue?1b49","webpack://vue-media-annotator/./src/components/GroupEditor.vue","webpack://vue-media-annotator/./src/components/GroupEditor.vue?d60d","webpack://vue-media-annotator/./src/components/GroupEditor.vue?8582","webpack://vue-media-annotator/./src/components/LayerManager.vue","webpack://vue-media-annotator/./src/layers/AnnotationLayers/TailLayer.ts","webpack://vue-media-annotator/./src/layers/AnnotationLayers/OverlapLayer.ts","webpack://vue-media-annotator/./src/layers/AnnotationLayers/AttributeLayer.ts","webpack://vue-media-annotator/./src/layers/AnnotationLayers/AttributeBoxLayer.ts","webpack://vue-media-annotator/./src/components/LayerManager.vue?8306","webpack://vue-media-annotator/./src/components/LayerManager.vue?6e56","webpack://vue-media-annotator/./src/components/TrackItem.vue","webpack://vue-media-annotator/./src/components/TrackItem.vue?753e","webpack://vue-media-annotator/./src/components/TrackItem.vue?dd5e","webpack://vue-media-annotator/./src/components/TrackList.vue","webpack://vue-media-annotator/./src/components/TrackList.vue?4805","webpack://vue-media-annotator/./src/components/TrackList.vue?d948","webpack://vue-media-annotator/./dive-common/recipes/polygonbase.ts","webpack://vue-media-annotator/./dive-common/recipes/headtail.ts","webpack://vue-media-annotator/./dive-common/components/EditorMenu.vue","webpack://vue-media-annotator/./dive-common/components/EditorMenu.vue?24ab","webpack://vue-media-annotator/./dive-common/components/EditorMenu.vue?957b","webpack://vue-media-annotator/./dive-common/components/DeleteControls.vue","webpack://vue-media-annotator/./dive-common/components/DeleteControls.vue?e123","webpack://vue-media-annotator/./dive-common/components/DeleteControls.vue?d51a","webpack://vue-media-annotator/./dive-common/components/ControlsContainer.vue","webpack://vue-media-annotator/./dive-common/components/ControlsContainer.vue?8d1d","webpack://vue-media-annotator/./dive-common/components/ControlsContainer.vue?f23e","webpack://vue-media-annotator/./dive-common/components/Sidebar.vue","webpack://vue-media-annotator/./dive-common/components/TrackDetailsPanel.vue","webpack://vue-media-annotator/./src/components/RangeEditor.vue","webpack://vue-media-annotator/./src/components/RangeEditor.vue?f30c","webpack://vue-media-annotator/./src/components/RangeEditor.vue?9a52","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributeInput.vue","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributeInput.vue?04ff","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributeInput.vue?637f","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributeEditor.vue","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributeRendering.vue","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributeRendering.vue?af76","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributeRendering.vue?7d9e","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributeValueColors.vue","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributeValueColors.vue?207d","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributeValueColors.vue?b2c7","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributeNumberValueColors.vue","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributeNumberValueColors.vue?1732","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributeNumberValueColors.vue?de4a","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributeEditor.vue?c473","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributeEditor.vue?1d5b","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributesSubsection.vue","webpack://vue-media-annotator/./dive-common/components/PanelSubsection.vue","webpack://vue-media-annotator/./dive-common/components/PanelSubsection.vue?f026","webpack://vue-media-annotator/./dive-common/components/PanelSubsection.vue?cffd","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributesSubsection.vue?5dc2","webpack://vue-media-annotator/./dive-common/components/Attributes/AttributesSubsection.vue?256e","webpack://vue-media-annotator/./dive-common/components/ConfidenceSubsection.vue","webpack://vue-media-annotator/./dive-common/components/ConfidenceSubsection.vue?451e","webpack://vue-media-annotator/./dive-common/components/ConfidenceSubsection.vue?c063","webpack://vue-media-annotator/./dive-common/components/TrackDetailsPanel.vue?88bb","webpack://vue-media-annotator/./dive-common/components/TrackDetailsPanel.vue?39a6","webpack://vue-media-annotator/./dive-common/components/TrackSettingsPanel.vue","webpack://vue-media-annotator/./dive-common/components/TrackSettingsPanel.vue?435b","webpack://vue-media-annotator/./dive-common/components/TrackSettingsPanel.vue?c54a","webpack://vue-media-annotator/./dive-common/components/TypeSettingsPanel.vue","webpack://vue-media-annotator/./dive-common/components/TypeSettingsPanel.vue?043a","webpack://vue-media-annotator/./dive-common/components/TypeSettingsPanel.vue?aba8","webpack://vue-media-annotator/./dive-common/components/Sidebar.vue?45ce","webpack://vue-media-annotator/./dive-common/components/Sidebar.vue?1493","webpack://vue-media-annotator/./dive-common/components/PrimaryAttributeTrackFilter.vue","webpack://vue-media-annotator/./dive-common/components/PrimaryAttributeTrackFilter.vue?aa3e","webpack://vue-media-annotator/./dive-common/components/PrimaryAttributeTrackFilter.vue?c4f5","webpack://vue-media-annotator/./dive-common/components/Viewer.vue?fe4d","webpack://vue-media-annotator/./dive-common/components/Viewer.vue?c25c","webpack://vue-media-annotator/./dive-common/components/ImportAnnotations.vue","webpack://vue-media-annotator/./dive-common/components/ImportAnnotations.vue?7a9e","webpack://vue-media-annotator/./dive-common/components/ImportAnnotations.vue?4144","webpack://vue-media-annotator/./dive-common/components/SidebarContext.vue","webpack://vue-media-annotator/./dive-common/components/SidebarContext.vue?d892","webpack://vue-media-annotator/./dive-common/components/SidebarContext.vue?d109","webpack://vue-media-annotator/./platform/web-girder/views/ViewerAlert.vue","webpack://vue-media-annotator/./platform/web-girder/views/ViewerAlert.vue?a652","webpack://vue-media-annotator/./platform/web-girder/views/ViewerAlert.vue?1d94","webpack://vue-media-annotator/./platform/web-girder/views/RevisionHistory.vue","webpack://vue-media-annotator/./platform/web-girder/views/RevisionHistory.vue?67a7","webpack://vue-media-annotator/./platform/web-girder/views/RevisionHistory.vue?a8e1","webpack://vue-media-annotator/./platform/web-girder/views/AnnotationSets.vue","webpack://vue-media-annotator/./platform/web-girder/views/AnnotationSets.vue?77da","webpack://vue-media-annotator/./platform/web-girder/views/AnnotationSets.vue?80c8","webpack://vue-media-annotator/./platform/web-girder/views/ViewerLoader.vue?dc16","webpack://vue-media-annotator/./platform/web-girder/views/ViewerLoader.vue?4394","webpack://vue-media-annotator/./platform/web-girder/views/DataBrowser.vue","webpack://vue-media-annotator/./platform/web-girder/views/DataBrowser.vue?f9d7","webpack://vue-media-annotator/./platform/web-girder/views/DataBrowser.vue?0a8b","webpack://vue-media-annotator/./platform/web-girder/views/Summary.vue","webpack://vue-media-annotator/./platform/web-girder/views/Summary.vue?2688","webpack://vue-media-annotator/./platform/web-girder/views/Summary.vue?33e4","webpack://vue-media-annotator/./platform/web-girder/router.ts","webpack://vue-media-annotator/./platform/web-girder/store/Location.ts","webpack://vue-media-annotator/./platform/web-girder/store/Dataset.ts","webpack://vue-media-annotator/./platform/web-girder/store/Brand.ts","webpack://vue-media-annotator/./platform/web-girder/store/User.ts","webpack://vue-media-annotator/./platform/web-girder/store/Jobs.ts","webpack://vue-media-annotator/./platform/web-girder/store/index.ts","webpack://vue-media-annotator/./platform/web-girder/main.ts","webpack://vue-media-annotator/./node_modules/moment/locale/ sync ^\\.\\/.*$","webpack://vue-media-annotator/external var \"vtkjs\"","webpack://vue-media-annotator/webpack/bootstrap","webpack://vue-media-annotator/webpack/runtime/chunk loaded","webpack://vue-media-annotator/webpack/runtime/compat get default export","webpack://vue-media-annotator/webpack/runtime/define property getters","webpack://vue-media-annotator/webpack/runtime/global","webpack://vue-media-annotator/webpack/runtime/harmony module decorator","webpack://vue-media-annotator/webpack/runtime/hasOwnProperty shorthand","webpack://vue-media-annotator/webpack/runtime/make namespace object","webpack://vue-media-annotator/webpack/runtime/node module decorator","webpack://vue-media-annotator/webpack/runtime/publicPath","webpack://vue-media-annotator/webpack/runtime/jsonp chunk loading","webpack://vue-media-annotator/webpack/startup"],"sourcesContent":["/**\n * Based on Girder Web Components NotificationBus, but simpler.\n * Register notifications directly on the girderRest instance using\n * the EventSource api.\n *\n * @param rc Girder RestClient\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport default function registerNotifications(_rc) {\n const rc = _rc; // TODO remove after types fixed\n const ES = window.EventSource;\n const withCredentials = true;\n const timeoutSeconds = 300;\n const retryMsDefault = 8000;\n let since = new Date();\n let lastConnectionAttempt = new Date();\n let eventSourceInstance = null;\n function connected() {\n return !!eventSourceInstance;\n }\n function emitNotification(notification) {\n const { type, updated } = notification;\n if (updated) {\n since = new Date(Math.max(+since, +new Date(updated)));\n }\n for (let i = type.indexOf('.'); i !== -1; i = type.indexOf('.', i + 1)) {\n rc.$emit(`message:${type.substring(0, i)}`, notification);\n }\n rc.$emit(`message:${type}`, notification);\n rc.$emit('message', notification);\n }\n function onSseMessage(e) {\n emitNotification(JSON.parse(e.data));\n }\n function disconnect() {\n if (eventSourceInstance) {\n eventSourceInstance.close();\n }\n eventSourceInstance = null;\n }\n function onSseError() {\n const nowSeconds = Math.ceil(Date.now() / 1000);\n const lastSeconds = Math.ceil(+lastConnectionAttempt / 1000);\n let retryMs = retryMsDefault;\n /** If time since last success is at least half the timeout, it's probably just a timeout */\n if ((nowSeconds - lastSeconds) > (timeoutSeconds * 0.5)) {\n retryMs = 0;\n }\n disconnect();\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n window.setTimeout(connect, retryMs);\n }\n function connect() {\n if (connected()) {\n return;\n }\n if (!rc.user) {\n return;\n }\n lastConnectionAttempt = new Date();\n const sinceSeconds = Math.ceil(+since / 1000);\n const url = `${rc.apiRoot}/notification/stream?since=${sinceSeconds}&timeout=${timeoutSeconds}`;\n eventSourceInstance = new ES(url, { withCredentials });\n eventSourceInstance.onmessage = onSseMessage;\n eventSourceInstance.onerror = onSseError;\n }\n rc.$on('login', connect);\n rc.$on('logout', disconnect);\n return { connect, disconnect };\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-dialog',{attrs:{\"max-width\":\"400\"},model:{value:(_vm.show),callback:function ($$v) {_vm.show=$$v},expression:\"show\"}},[_c('v-card',[(_vm.title)?_c('v-card-title',{directives:[{name:\"mousetrap\",rawName:\"v-mousetrap\",value:([\n { bind: 'left', handler: () => _vm.focusNegative(), disable: !_vm.show },\n { bind: 'right', handler: () => _vm.focusPositive(), disable: !_vm.show },\n { bind: 'enter', handler: () => _vm.select(), disable: !_vm.show },\n ]),expression:\"[\\n { bind: 'left', handler: () => focusNegative(), disable: !show },\\n { bind: 'right', handler: () => focusPositive(), disable: !show },\\n { bind: 'enter', handler: () => select(), disable: !show },\\n ]\"}],staticClass:\"title\"},[_vm._v(\" \"+_vm._s(_vm.title)+\" \")]):_vm._e(),(Array.isArray(_vm.text))?_c('v-card-text',_vm._l((_vm.text),function(item,key){return _c('div',{key:key},[_vm._v(\" \"+_vm._s(item)+\" \")])}),0):_c('v-card-text',[_vm._v(\" \"+_vm._s(_vm.text)+\" \")]),_c('v-card-actions',[_c('v-spacer'),(_vm.confirm && _vm.negativeButton && _vm.negativeButton.length)?_c('v-btn',{ref:\"negative\",attrs:{\"text\":\"\"},on:{\"click\":_vm.clickNegative}},[_vm._v(\" \"+_vm._s(_vm.negativeButton)+\" \")]):_vm._e(),_c('v-btn',{ref:\"positive\",attrs:{\"color\":\"primary\",\"text\":\"\"},on:{\"click\":_vm.clickPositive}},[_vm._v(\" \"+_vm._s(_vm.positiveButton)+\" \")])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Prompt.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Prompt.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Prompt.vue?vue&type=template&id=5a1186f2\"\nimport script from \"./Prompt.vue?vue&type=script&lang=ts\"\nexport * from \"./Prompt.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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","/* disabled this rule for Vue.prototype.FOO = */\n/* eslint-disable no-param-reassign,func-names */\nimport { watch } from 'vue';\nimport Prompt from './Prompt.vue';\nclass PromptService {\n constructor(Vue, vuetify) {\n const PromptComponent = Vue.extend({ vuetify, ...Prompt });\n const component = new PromptComponent();\n this.component = component;\n }\n set(title, text, positiveButton, negativeButton, confirm, resolve) {\n this.component.title = title;\n this.component.text = text;\n this.component.positiveButton = positiveButton;\n this.component.negativeButton = negativeButton;\n this.component.confirm = confirm;\n this.component.functions.resolve = resolve;\n this.component.show = true;\n }\n show({ title, text, positiveButton = 'Confirm', negativeButton = 'Cancel', confirm = false, }) {\n return new Promise((resolve) => {\n if (!this.component.show) {\n this.set(title, text, positiveButton, negativeButton, confirm, resolve);\n }\n else {\n const unwatch = watch(this.component.show, () => {\n unwatch();\n this.set(title, text, positiveButton, negativeButton, confirm, resolve);\n });\n }\n });\n }\n visible() {\n return this.component.show;\n }\n invisible() {\n return !this.component.show;\n }\n hide() {\n this.component.show = false;\n }\n mount(element) {\n this.component.$mount(element);\n }\n}\n// in vue 3 should use provide/inject with symbol\nlet promptService;\nexport function usePrompt() {\n // in vue 3 should use inject instead of singleton\n const prompt = (params) => promptService.show(params);\n const visible = () => promptService.visible();\n const invisible = () => promptService.invisible();\n const hide = () => promptService.hide();\n return {\n prompt, visible, invisible, hide,\n };\n}\nexport default function (vuetify) {\n return function install(Vue) {\n // in vue 3 should use provide instead of singleton\n promptService = new PromptService(Vue, vuetify);\n Vue.prototype.$promptAttach = function () {\n const div = document.createElement('div');\n this.$el.appendChild(div);\n if (promptService) {\n promptService.mount(div);\n }\n return this;\n };\n };\n}\n","/* eslint-disable no-param-reassign,func-names */\n\nimport Mousetrap from 'mousetrap';\nimport { isArray } from 'lodash';\n\nfunction bind(el, value, bindElement) {\n const mousetrap = new Mousetrap(bindElement ? el : undefined);\n el.mousetrap = mousetrap;\n if (!isArray(value)) {\n value = [value];\n }\n value.forEach(({ bind: _bind, handler, disabled }) => {\n if (!disabled) {\n mousetrap.bind(_bind, function (...args) {\n handler.apply(this, [el, ...args]);\n });\n }\n });\n}\n\nfunction unbind(el) {\n el.mousetrap.reset();\n}\n\nexport default function install(Vue) {\n Vue.directive('mousetrap', {\n inserted(el, { value, modifiers }) {\n bind(el, value, modifiers.element);\n },\n update(el, { value, modifiers }) {\n unbind(el);\n bind(el, value, modifiers.element);\n },\n unbind(el) {\n unbind(el);\n },\n });\n}\n","import Vue from 'vue';\nimport Vuetify from 'vuetify/lib';\nimport colors from 'vuetify/lib/util/colors';\nimport { merge } from 'lodash';\nimport '@mdi/font/css/materialdesignicons.css';\nimport { vuetifyConfig } from '@girder/components/src';\nVue.use(Vuetify);\nfunction getVuetify(config) {\n const theme = {\n dark: true,\n options: {\n customProperties: true,\n },\n themes: {\n dark: {\n accent: colors.blue.lighten1,\n accentBackground: '#2c7596',\n },\n },\n };\n const appVuetifyConfig = merge(vuetifyConfig, config, { theme });\n return new Vuetify(appVuetifyConfig);\n}\nexport default getVuetify;\n","import Vue from 'vue';\nimport Girder, { RestClient } from '@girder/components/src';\nVue.use(Girder);\nconst girderRest = new RestClient({ apiRoot: 'api/v1' });\nexport function useGirderRest() {\n return girderRest;\n}\nexport default girderRest;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-app',[_c('router-view')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { ref, computed, set as VueSet, } from 'vue';\nimport * as d3 from 'd3';\nimport { noop, merge } from 'lodash';\n/**\n * Generates a color pallette as a list of hex colors.\n * It generates colors from a rainbow spectrum and then takes a dark and lighter version\n * of each color.\n * @param {int} numColors - number of colors to attempt to generate the higher\n * the number the more similar the colors will be. Cyan like colors will be filtered out,\n * so numColors isn't a guarantee of x*3 (normal, dark, light) colors.\n */\nexport function generateColors(numColors) {\n var _a;\n const colorList = [];\n for (let i = 0; i < numColors; i += 1) {\n //We are using a rainbow but we want to skip the cyan area so number will be reduced\n const pos = (i * (1 / numColors));\n if (pos > 0.58 && pos < 0.63) {\n break;\n }\n const baseColor = (_a = d3.color(d3.interpolateRainbow(pos))) === null || _a === void 0 ? void 0 : _a.hex();\n if (baseColor) {\n const hueColor = d3.hsl(baseColor);\n hueColor.s = 1.0;\n hueColor.l = 0.5;\n colorList.push(hueColor.hex());\n hueColor.s = 0.5;\n hueColor.l = 0.35;\n colorList.push(hueColor.hex());\n hueColor.s = 1.0;\n hueColor.l = 0.75;\n colorList.push(hueColor.hex());\n }\n }\n //Mix up colors in a uniform way so reloads have the same types associated with the same colors\n let seed = 0.28;\n colorList.sort(() => {\n seed += seed;\n return Math.cos(seed);\n });\n return colorList;\n}\nconst defaultStaticStyles = {\n 'no-group': {\n color: '#ffffff',\n },\n};\nconst defaultSetStaticStyles = {};\nexport default class StyleManager {\n constructor({ markChangesPending, vuetify }) {\n this.revisionCounter = ref(1);\n this.customStyles = ref({});\n this.annotationSetStyles = ref({});\n // Annotation State Colors\n const standard = {\n strokeWidth: 3,\n opacity: 1.0,\n color: 'type',\n fill: false,\n showLabel: true,\n showConfidence: true,\n };\n const selected = {\n ...standard,\n color: (vuetify === null || vuetify === void 0 ? void 0 : vuetify.preset.theme.themes.dark.accent) || 'cyan',\n strokeWidth: 5,\n opacity: 1.0,\n fill: false,\n };\n const disabled = {\n ...standard,\n color: 'type',\n strokeWidth: 1,\n opacity: 0.45,\n fill: false,\n };\n this.stateStyles = { standard, selected, disabled };\n this.typeColors = d3.scaleOrdinal().range(generateColors(10));\n this.markChangesPending = markChangesPending;\n this.typeStyling = computed(() => {\n // establish dependency on revision counter\n if (this.revisionCounter.value)\n noop();\n const _customStyles = this.customStyles.value;\n const _annotationSetStyles = this.annotationSetStyles.value;\n return {\n color: (type, set) => {\n if (set && _annotationSetStyles[type] && _annotationSetStyles[type].color) {\n return _annotationSetStyles[type].color;\n }\n if (_customStyles[type] && _customStyles[type].color) {\n return _customStyles[type].color;\n }\n if (type === '') {\n return this.typeColors.range()[0];\n }\n return this.typeColors(type);\n },\n annotationSetColor: (set) => {\n if (!set) {\n return 'white';\n }\n if (set === 'default') {\n return 'yellow';\n }\n if (['groundTruth', 'GT', 'ground_truth', 'Groundtruth', 'GroundTruth', 'gt'].includes(set)) {\n return 'green';\n }\n return this.typeColors(set);\n },\n strokeWidth: (type, set) => {\n if (set && _annotationSetStyles[type] && _annotationSetStyles[type].strokeWidth) {\n return _annotationSetStyles[type].strokeWidth;\n }\n if (_customStyles[type] && _customStyles[type].strokeWidth) {\n return _customStyles[type].strokeWidth;\n }\n return this.stateStyles.standard.strokeWidth;\n },\n fill: (type, set) => {\n if (set && _annotationSetStyles[type] && _annotationSetStyles[type].fill !== undefined) {\n return _annotationSetStyles[type].fill;\n }\n if (_customStyles[type] && _customStyles[type].fill !== undefined) {\n return _customStyles[type].fill;\n }\n return this.stateStyles.standard.fill;\n },\n opacity: (type, set) => {\n if (set && _annotationSetStyles[type] && _annotationSetStyles[type].opacity) {\n return _annotationSetStyles[type].opacity;\n }\n if (_customStyles[type] && _customStyles[type].opacity) {\n return _customStyles[type].opacity;\n }\n return this.stateStyles.standard.opacity;\n },\n labelSettings: (type, set) => {\n let { showLabel, showConfidence } = this.stateStyles.standard;\n if (_customStyles[type]) {\n if (typeof (_customStyles[type].showLabel) === 'boolean') {\n showLabel = _customStyles[type].showLabel;\n }\n if (typeof (_customStyles[type].showConfidence) === 'boolean') {\n showConfidence = _customStyles[type].showConfidence;\n }\n }\n if (set && _annotationSetStyles[type]) {\n if (typeof (_annotationSetStyles[type].showLabel) === 'boolean') {\n showLabel = _annotationSetStyles[type].showLabel;\n }\n if (typeof (_annotationSetStyles[type].showConfidence) === 'boolean') {\n showConfidence = _annotationSetStyles[type].showConfidence;\n }\n }\n return { showLabel, showConfidence };\n },\n };\n });\n }\n populateTypeStyles(styles) {\n if (styles) {\n this.customStyles.value = {\n ...defaultStaticStyles,\n ...styles,\n };\n }\n else {\n this.customStyles.value = defaultStaticStyles;\n }\n this.annotationSetStyles.value = defaultSetStaticStyles;\n }\n updateTypeStyle(args) {\n const { type, value } = args;\n const oldValue = this.customStyles.value[type] || {};\n VueSet(this.customStyles.value, type, merge(oldValue, value));\n this.revisionCounter.value += 1;\n this.markChangesPending();\n }\n getTypeStyles(allTypes) {\n //We need to remove any unused types in the colors, either deleted or changed\n //Also want to save default colors for reloading\n const savedTypeStyles = {};\n allTypes.value.forEach((name) => {\n if (!savedTypeStyles[name] && this.customStyles.value[name]) {\n savedTypeStyles[name] = this.customStyles.value[name];\n }\n else if (!savedTypeStyles[name]) { // Also save ordinal Colors as well\n savedTypeStyles[name] = { color: this.typeStyling.value.color(name) };\n }\n });\n return savedTypeStyles;\n }\n}\n","import { difference } from 'lodash';\n/*\n * updateSubset keeps a subset up to date when its superset\n * changes. Takes the old and new array values of the superset,\n * removes and adds changed values. If a value is in both old and new superset\n * and omitted from subset, it will remain omitted. If old and new are\n * the same, it will return null\n */\nfunction updateSubset(oldsuper, newsuper, subarr) {\n const addedValues = difference(newsuper, oldsuper);\n const removedValues = difference(oldsuper, newsuper);\n if (!addedValues.length && !removedValues.length) {\n return null;\n }\n const subset = new Set(subarr);\n addedValues.forEach((v) => subset.add(v));\n removedValues.forEach((v) => subset.delete(v));\n return Array.from(subset);\n}\n/* beginning at bottom left, rectangle is defined clockwise */\nfunction geojsonToBound(geojson) {\n const coords = geojson.geometry.coordinates[0];\n return [coords[1][0], coords[1][1], coords[3][0], coords[3][1]];\n}\nfunction boundToGeojson(bounds) {\n /* return clockwise 5 point rectangle beginning with (x1, y2) (bottom left)\n * because that's what GeoJS likes\n */\n return {\n type: 'Polygon',\n coordinates: [\n [\n [bounds[0], bounds[3]],\n [bounds[0], bounds[1]],\n [bounds[2], bounds[1]],\n [bounds[2], bounds[3]],\n [bounds[0], bounds[3]],\n ],\n ],\n };\n}\nfunction removePoint(data, index) {\n if (data.geometry.type === 'Polygon') {\n const coords = data.geometry.coordinates[0];\n const second = coords[1];\n // Polygons must have 3 points, but the first and last are always the same\n if (coords.length > 4) {\n if (index === 0 || index === coords.length - 1) {\n // Replace the last point with the second,\n // the first is about to be removed\n // A B C D A --> B C D B\n coords.splice(coords.length - 1, 1, second);\n }\n coords.splice(index, 1);\n return true;\n }\n console.warn('Polygons must have at least 3 points');\n return false;\n }\n return false;\n}\nfunction updateBounds(oldBounds, union, unionNoBounds) {\n if (!oldBounds && union.length === 0 && unionNoBounds.length === 0) {\n // nothing to do, skip bounds update\n return undefined;\n }\n const limits = {\n xLow: Infinity,\n yLow: Infinity,\n xHigh: -Infinity,\n yHigh: -Infinity,\n };\n if (oldBounds && unionNoBounds.length === 0) {\n [\n limits.xLow,\n limits.yLow,\n limits.xHigh,\n limits.yHigh,\n ] = oldBounds;\n }\n union.concat(unionNoBounds).forEach((poly) => {\n poly.coordinates.forEach((posarr) => {\n posarr.forEach((pos) => {\n limits.xLow = Math.min(limits.xLow, pos[0]);\n limits.xHigh = Math.max(limits.xHigh, pos[0]);\n limits.yLow = Math.min(limits.yLow, pos[1]);\n limits.yHigh = Math.max(limits.yHigh, pos[1]);\n });\n });\n });\n return [limits.xLow, limits.yLow, limits.xHigh, limits.yHigh];\n}\n/**\n * This will take the current geoJSON Coordinates for a rectangle and reorder it\n * to keep the vertices index the same with respect to how geoJS uses it\n * Example: UL, LL, LR, UR, UL\n */\nfunction reOrdergeoJSON(coords) {\n let x1 = Infinity;\n let x2 = -Infinity;\n let y1 = Infinity;\n let y2 = -Infinity;\n coords.forEach((coord) => {\n x1 = Math.min(x1, coord[0]);\n x2 = Math.max(x2, coord[0]);\n y1 = Math.min(y1, coord[1]);\n y2 = Math.max(y2, coord[1]);\n });\n return [\n [x1, y2],\n [x1, y1],\n [x2, y1],\n [x2, y2],\n [x1, y2],\n ];\n}\n/**\n * Reorients RectBounds by reording to prevent mirroring across the x or y axis\n * Example: xmin, ymin, xmax, ymax\n */\nfunction reOrderBounds(bounds) {\n const x1 = bounds[0] < bounds[2] ? bounds[0] : bounds[2];\n const x2 = bounds[0] < bounds[2] ? bounds[2] : bounds[0];\n const y1 = bounds[1] < bounds[3] ? bounds[1] : bounds[3];\n const y2 = bounds[1] < bounds[3] ? bounds[3] : bounds[1];\n return [x1, y1, x2, y2];\n}\nfunction getResponseError(error) {\n var _a;\n const { response } = error;\n return String(((_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.message) || (response === null || response === void 0 ? void 0 : response.data) || error);\n}\nfunction withinBounds(coord, bounds) {\n const x = coord[0];\n const y = coord[1];\n return (x > bounds[0] && x < bounds[2] && y > bounds[1] && y < bounds[3]);\n}\nexport { getResponseError, boundToGeojson, \n// findBounds,\nupdateBounds, geojsonToBound, updateSubset, removePoint, reOrderBounds, reOrdergeoJSON, withinBounds, };\n","import { ref, computed, watch, } from 'vue';\nimport { updateSubset } from './utils';\nexport const DefaultConfidence = 0.1;\n/* Provide annotation filtering controls on annotations loaded from store. */\nexport default class BaseFilterControls {\n constructor(params) {\n this.checkedIDs = ref(params.sorted.value.map((t) => t.id));\n this.confidenceFilters = ref({ default: DefaultConfidence });\n this.defaultTypes = ref([]);\n this.sorted = params.sorted;\n this.remove = params.remove;\n this.setType = params.setType;\n this.removeTypes = params.removeTypes;\n this.markChangesPending = params.markChangesPending;\n this.allTypes = computed(() => {\n const typeSet = new Set();\n this.sorted.value.forEach((annotation) => {\n annotation.confidencePairs.forEach(([name]) => {\n typeSet.add(name);\n });\n });\n this.defaultTypes.value.forEach((type) => {\n typeSet.add(type);\n });\n return Array.from(typeSet);\n });\n this.usedTypes = computed(() => {\n const typeSet = new Set();\n this.sorted.value.forEach((annotation) => {\n annotation.confidencePairs.forEach(([name]) => {\n typeSet.add(name);\n });\n });\n return Array.from(typeSet);\n });\n this.checkedTypes = ref(Array.from(this.allTypes.value));\n this.filteredAnnotations = ref([]);\n this.enabledAnnotations = computed(() => {\n const checkedSet = new Set(this.checkedIDs.value);\n return this.filteredAnnotations.value\n .filter((filtered) => checkedSet.has(filtered.annotation.id));\n });\n // because vue watchers don't behave properly, and it's better to not have\n // checkedIDs be a union null | array type\n let oldCheckedIds = [];\n /* When the list of types (or checked IDs) changes\n * add the new enabled types to the set and remove old ones */\n watch(params.sorted, (newval) => {\n const IDs = newval.map((t) => t.id);\n const newArr = updateSubset(oldCheckedIds, IDs, this.checkedIDs.value);\n if (newArr !== null) {\n oldCheckedIds = IDs;\n this.checkedIDs.value = newArr;\n }\n });\n let oldCheckedtypes = [];\n watch(this.usedTypes, (newval) => {\n const newArr = updateSubset(oldCheckedtypes, newval, this.checkedTypes.value);\n if (newArr !== null) {\n oldCheckedtypes = Array.from(newval);\n this.checkedTypes.value = newArr;\n }\n });\n }\n importTypes(types, userInteraction = true) {\n types.forEach((type) => {\n if (!this.defaultTypes.value.includes(type)) {\n this.defaultTypes.value.push(type);\n }\n });\n if (userInteraction) {\n this.markChangesPending({ action: 'meta' });\n }\n }\n deleteType(type) {\n if (this.defaultTypes.value.includes(type)) {\n this.defaultTypes.value.splice(this.defaultTypes.value.indexOf(type), 1);\n }\n delete this.confidenceFilters.value[type];\n this.markChangesPending({ action: 'meta' });\n }\n setConfidenceFilters(val) {\n if (val) {\n this.confidenceFilters.value = val;\n }\n }\n updateTypeName({ currentType, newType }) {\n //Go through the entire list and replace the oldType with the new Type\n this.sorted.value.forEach((annotation) => {\n for (let i = 0; i < annotation.confidencePairs.length; i += 1) {\n const [name, confidenceVal] = annotation.confidencePairs[i];\n if (name === currentType) {\n this.setType(annotation.id, newType, confidenceVal, currentType);\n break;\n }\n }\n });\n if (!(newType in this.confidenceFilters.value) && currentType in this.confidenceFilters.value) {\n this.setConfidenceFilters({\n ...this.confidenceFilters.value,\n [newType]: this.confidenceFilters.value[currentType],\n });\n }\n this.deleteType(currentType);\n }\n removeTypeAnnotations(types) {\n this.filteredAnnotations.value.forEach((filtered) => {\n const filteredType = filtered.annotation.getType(filtered.context.confidencePairIndex);\n if (filteredType && types.includes(filteredType[0])) {\n //Remove the type from the annotation if multiple types exist\n const newConfidencePairs = this.removeTypes(filtered.annotation.id, types);\n if (newConfidencePairs.length === 0) {\n this.remove(filtered.annotation.id);\n }\n }\n });\n }\n updateCheckedTypes(types) {\n this.checkedTypes.value = types;\n }\n updateCheckedId(id, value) {\n if (value) {\n this.checkedIDs.value.push(id);\n }\n else {\n const i = this.checkedIDs.value.indexOf(id);\n this.checkedIDs.value.splice(i, 1);\n }\n }\n}\n","/* eslint-disable max-len */\nimport { isArray } from 'lodash';\nexport const checkAttributes = (attributeMatch, attributeVal, userDefinedVal) => {\n const results = [];\n const checkVal = attributeMatch.userDefined ? userDefinedVal : attributeMatch.val;\n if (attributeVal !== undefined) {\n if (attributeMatch.op) {\n switch (attributeMatch.op) {\n case '=': {\n // eslint-disable-next-line eqeqeq\n results.push(attributeVal == checkVal);\n break;\n }\n case '≠': {\n // eslint-disable-next-line eqeqeq\n results.push(attributeVal != checkVal);\n break;\n }\n case '>': {\n if (['number', 'string'].includes(typeof checkVal) && checkVal !== null && checkVal !== undefined) {\n results.push(attributeVal > checkVal);\n }\n break;\n }\n case '<': {\n if (['number', 'string'].includes(typeof checkVal) && checkVal !== null && checkVal !== undefined) {\n results.push(attributeVal < checkVal);\n }\n break;\n }\n case '<=': {\n if (['number', 'string'].includes(typeof checkVal) && checkVal !== null && checkVal !== undefined) {\n results.push(attributeVal <= checkVal);\n }\n break;\n }\n case '>=': {\n if (['number', 'string'].includes(typeof checkVal) && checkVal !== null && checkVal !== undefined) {\n results.push(attributeVal >= checkVal);\n }\n break;\n }\n case 'rangeFilter': {\n if (['number'].includes(typeof checkVal) && checkVal !== null && checkVal !== undefined) {\n results.push(attributeVal > checkVal);\n }\n break;\n }\n case 'range': {\n if (isArray(checkVal) && checkVal !== null && checkVal !== undefined) {\n if (checkVal[0] !== null && checkVal[1] !== null) {\n results.push(attributeVal >= checkVal[0] && attributeVal <= checkVal[1]);\n }\n }\n break;\n }\n case 'contains': {\n if (checkVal !== null && attributeVal !== null && checkVal !== undefined) {\n results.push(attributeVal === null || attributeVal === void 0 ? void 0 : attributeVal.toString().includes(checkVal.toString()));\n }\n break;\n }\n case 'in': {\n if (isArray(checkVal) && checkVal !== null && checkVal !== undefined && attributeVal !== null) {\n if (typeof checkVal[0] === 'number') {\n results.push(checkVal.includes(attributeVal));\n }\n if (typeof checkVal[0] === 'string') {\n results.push(checkVal.includes(attributeVal));\n }\n }\n break;\n }\n default: {\n results.push(attributeVal !== undefined);\n }\n }\n }\n }\n else {\n results.push(false);\n }\n return results.filter((item) => item).length === results.length;\n};\nexport const trackIdPassesFilter = (id, getTrack, filters, userDefinedvals, enabled) => {\n const track = getTrack(id);\n const trackAttributes = track.attributes;\n const trackFilters = [];\n const detectionFilters = [];\n const trackUserVals = [];\n const detectionUserVals = [];\n filters.forEach((item, index) => {\n if (enabled[index]) {\n if (item.type === 'track') {\n trackFilters.push(item);\n trackUserVals.push(userDefinedvals[index]);\n }\n else if (item.type === 'detection') {\n detectionFilters.push(item);\n detectionUserVals.push(userDefinedvals[index]);\n }\n }\n });\n for (let i = 0; i < trackFilters.length; i += 1) {\n const filter = trackFilters[i];\n // If we have a type filter only filter by the types specified\n if (filter.typeFilter.length > 0 && !filter.typeFilter.includes(track.getType()[0])) {\n return true;\n }\n if (trackAttributes[filter.attribute] === undefined && !filter.ignoreUndefined) {\n return false;\n }\n const result = checkAttributes(filter.filter, trackAttributes[filter.attribute], trackUserVals[i]);\n if (!result) {\n return false;\n }\n }\n for (let i = 0; i < detectionFilters.length; i += 1) {\n for (let k = 0; k < track.featureIndex.length; k += 1) {\n const index = track.featureIndex[k];\n const detectionAttributes = track.features[index].attributes;\n const filter = detectionFilters[i];\n if (detectionAttributes) {\n if (detectionAttributes[filter.attribute] === undefined && !filter.ignoreUndefined) {\n return false;\n }\n const result = checkAttributes(filter.filter, detectionAttributes[filter.attribute], detectionUserVals[i]);\n if (!result) {\n return false;\n }\n }\n }\n }\n return true;\n};\n","import { computed, ref } from 'vue';\nimport { cloneDeep } from 'lodash';\nimport BaseFilterControls from './BaseFilterControls';\nimport { trackIdPassesFilter } from './AttributeTrackFilterControls';\nexport default class TrackFilterControls extends BaseFilterControls {\n constructor(params) {\n super(params);\n this.attributeFilters = ref([]);\n this.userDefinedValues = ref([]);\n this.enabledFilters = ref([]);\n /**\n * Override filtered track annotations to include logic\n * for filtering based on group membership as well\n */\n this.filteredAnnotations = computed(() => {\n const checkedSet = new Set(this.checkedTypes.value);\n const filteredGroupsSet = new Set(params.groupFilterControls.enabledAnnotations.value\n .map((v) => v.annotation.id));\n const confidenceFiltersVal = cloneDeep(this.confidenceFilters.value);\n const resultsArr = [];\n const resultsIds = new Set();\n params.sorted.value.forEach((annotation) => {\n let enabledInGroupFilters = true;\n const groups = params.lookupGroups(annotation.id);\n if (groups.length) {\n /**\n * This track is a member of a group,\n * so check that at least one of its groups is enabled\n */\n enabledInGroupFilters = groups.some((group) => filteredGroupsSet.has(group.id));\n }\n const confidencePairIndex = annotation.confidencePairs\n .findIndex(([confkey, confval]) => {\n const confidenceThresh = Math.max(confidenceFiltersVal[confkey] || 0, confidenceFiltersVal.default);\n return confval >= confidenceThresh && checkedSet.has(confkey);\n });\n /* include annotations where at least 1 confidence pair is above\n * the threshold and part of the checked type set */\n if ((confidencePairIndex >= 0 || annotation.confidencePairs.length === 0)\n && enabledInGroupFilters && !resultsIds.has(annotation.id)) {\n let addValue = true;\n if (this.attributeFilters.value.length > 0 && params.getTrack !== undefined\n && this.enabledFilters.value.length > 0) {\n addValue = trackIdPassesFilter(annotation.id, params.getTrack, this.attributeFilters.value, this.userDefinedValues.value, this.enabledFilters.value);\n }\n if (addValue) {\n resultsIds.add(annotation.id);\n resultsArr.push({\n annotation,\n context: {\n confidencePairIndex,\n },\n });\n }\n }\n });\n return resultsArr;\n });\n }\n loadTrackAttributesFilter(trackAttributesFilter) {\n this.attributeFilters.value = [];\n this.userDefinedValues.value = [];\n this.enabledFilters.value = [];\n trackAttributesFilter.forEach((element) => {\n this.attributeFilters.value.push(element);\n this.userDefinedValues.value.push(element.filter.userDefined ? element.filter.val : null);\n this.enabledFilters.value.push(element.enabled);\n });\n }\n updateTrackFilter(index, val) {\n if (index < this.attributeFilters.value.length) {\n this.attributeFilters.value.splice(index, 1, val);\n this.userDefinedValues.value.splice(index, 1, val.filter.userDefined ? val.filter.val : null);\n this.enabledFilters.value.splice(index, 1, val.enabled);\n }\n else {\n this.attributeFilters.value.push(val);\n this.userDefinedValues.value.push(val.filter.userDefined ? val.filter.val : null);\n this.enabledFilters.value.push(val.enabled);\n }\n this.markChangesPending({ action: 'upsert', attributeTrackFilter: val });\n }\n deleteTrackFilter(index) {\n if (index < this.attributeFilters.value.length) {\n const items = this.attributeFilters.value.splice(index, 1);\n this.userDefinedValues.value.splice(index, 1);\n this.enabledFilters.value.splice(index, 1);\n this.markChangesPending({ action: 'delete', attributeTrackFilter: items[0] });\n }\n }\n setUserDefinedValue(index, val) {\n if (index < this.userDefinedValues.value.length) {\n this.userDefinedValues.value.splice(index, 1, val);\n }\n }\n setEnabled(index, val) {\n if (index < this.enabledFilters.value.length) {\n this.enabledFilters.value.splice(index, 1, val);\n }\n }\n}\n","import { computed, ref } from 'vue';\nimport { cloneDeep } from 'lodash';\nimport BaseFilterControls from './BaseFilterControls';\nexport default class GroupFilterControls extends BaseFilterControls {\n constructor(params) {\n super(params);\n /**\n * Override default confidence filters. There is no UI to adjust this,\n * so filter nothing by default\n */\n this.confidenceFilters = ref({ default: 0 });\n /**\n * Override filtered track annotations to include logic\n * for filtering based on group membership as well\n */\n this.filteredAnnotations = computed(() => {\n const checkedSet = new Set(this.checkedTypes.value);\n const confidenceFiltersVal = cloneDeep(this.confidenceFilters.value);\n const resultsArr = [];\n params.sorted.value.forEach((annotation) => {\n const confidencePairIndex = annotation.confidencePairs\n .findIndex(([confkey, confval]) => {\n const confidenceThresh = Math.max(confidenceFiltersVal[confkey] || 0, confidenceFiltersVal.default);\n return confval >= confidenceThresh && checkedSet.has(confkey);\n });\n /* include annotations where at least 1 confidence pair is above\n * the threshold and part of the checked type set */\n if (confidencePairIndex >= 0 || annotation.confidencePairs.length === 0) {\n resultsArr.push({\n annotation,\n context: {\n confidencePairIndex,\n },\n });\n }\n });\n return resultsArr;\n });\n }\n}\n","import { ref, computed } from 'vue';\nimport IntervalTree from '@flatten-js/interval-tree';\nfunction isTrack(value) {\n return value.features !== undefined;\n}\n/**\n * BaseAnnotationStore performs operations on a collection of annotations, such as\n * add and remove. Operations on individual annotations, such as setting\n * and deleting detections, should be performed directly on the annotation\n * object. BaseAnnotationStore will observe these changes and react if necessary.\n */\nexport default class BaseAnnotationStore {\n constructor({ markChangesPending, cameraName }) {\n this.markChangesPending = markChangesPending;\n this.cameraName = cameraName;\n this.annotationMap = new Map();\n this.annotationIds = ref([]);\n this.intervalTree = new IntervalTree();\n this.canary = ref(0);\n this.enableSorting = ref(false);\n this.sorted = computed(() => {\n this.depend();\n // Prevent sorting when loading data\n if (!this.enableSorting.value) {\n return [];\n }\n return this.annotationIds.value\n .map((trackId) => {\n const track = this.get(trackId);\n return {\n begin: track.begin,\n end: track.end,\n id: track.id,\n confidencePairs: track.confidencePairs,\n getType: (index) => ((track.confidencePairs[index || 0][0]) || 'unknown'),\n };\n })\n .sort((a, b) => a.begin - b.begin);\n });\n }\n /**\n * By accessing the canary.value, depend sets up a dependency\n * on the notifier, allowing dependants to re-compute.\n *\n * Using Vue reactivity hooks naturally debounces updates to the canary.\n */\n depend() {\n return this.canary.value;\n }\n setEnableSorting() {\n this.enableSorting.value = true;\n }\n get(annotationId) {\n const value = this.annotationMap.get(annotationId);\n if (value === undefined) {\n throw new Error(`Annotation ID ${annotationId} not found in annotationMap.`);\n }\n return value;\n }\n /**\n * Some instances require returning the undefined value for checking purposes\n * That requires setting the error value to false\n */\n getPossible(annotationId) {\n return this.annotationMap.get(annotationId);\n }\n getNewId() {\n if (this.annotationIds.value.length) {\n return this.annotationIds.value.reduce((prev, current) => Math.max(prev, current)) + 1;\n }\n return 0;\n }\n notify({ item, event, oldValue }) {\n if (event === 'bounds') {\n const oldInterval = oldValue;\n this.intervalTree.remove(oldInterval, item.id.toString());\n this.intervalTree.insert([item.begin, item.end], item.id.toString());\n }\n this.canary.value += 1;\n if (isTrack(item)) {\n this.markChangesPending({ action: 'upsert', track: item, cameraName: this.cameraName });\n }\n else {\n this.markChangesPending({ action: 'upsert', group: item, cameraName: this.cameraName });\n }\n }\n insert(value, args) {\n value.setNotifier((params) => {\n this.notify(params);\n });\n this.annotationMap.set(value.id, value);\n this.intervalTree.insert([value.begin, value.end], value.id.toString());\n if (args && args.afterId) {\n /* Insert specifically after another annotationId */\n const insertIndex = this.annotationIds.value.indexOf(args.afterId) + 1;\n this.annotationIds.value.splice(insertIndex, 0, value.id);\n }\n else {\n this.annotationIds.value.push(value.id);\n }\n if (!(args === null || args === void 0 ? void 0 : args.imported)) {\n if (isTrack(value)) {\n this.markChangesPending({ action: 'upsert', track: value, cameraName: this.cameraName });\n }\n else {\n this.markChangesPending({ action: 'upsert', group: value, cameraName: this.cameraName });\n }\n }\n }\n remove(annotationId, disableNotifications = false) {\n const value = this.get(annotationId);\n const range = [value.begin, value.end];\n if (!this.intervalTree.remove(range, annotationId.toString())) {\n throw new Error(`AnnotationId ${annotationId} with range ${range} not found in tree.`);\n }\n value.setNotifier(undefined);\n this.annotationMap.delete(annotationId);\n const listIndex = this.annotationIds.value.findIndex((v) => v === annotationId);\n if (listIndex === -1) {\n throw new Error(`AnnotationId ${annotationId} not found in annotationIds.`);\n }\n this.annotationIds.value.splice(listIndex, 1);\n if (!disableNotifications) {\n if (isTrack(value)) {\n this.markChangesPending({ action: 'delete', track: value, cameraName: this.cameraName });\n }\n else {\n this.markChangesPending({ action: 'delete', group: value, cameraName: this.cameraName });\n }\n }\n }\n clearAll() {\n this.annotationMap.clear();\n this.intervalTree.items.forEach((item) => {\n this.intervalTree.remove(item.key);\n });\n this.annotationIds.value = [];\n }\n}\n","import { ref } from 'vue';\n/**\n * Track manages the state of a track, its\n * frame data, and all metadata.\n */\nexport default class BaseAnnotation {\n constructor(id, { meta = {}, begin = Infinity, end = 0, confidencePairs = [], attributes = {}, }) {\n this.id = id;\n this.meta = meta;\n this.attributes = attributes;\n this.revision = ref(1);\n this.begin = begin;\n this.end = end;\n this.confidencePairs = confidencePairs;\n this.notifierEnabled = true;\n }\n get length() {\n return (this.end - this.begin) + 1;\n }\n // eslint-disable-next-line class-methods-use-this\n isInitialized() {\n return true;\n }\n depend() {\n return this.revision.value;\n }\n /* Call if the bounds were possibly expanded */\n maybeExpandBounds(frame) {\n const oldval = [this.begin, this.end];\n if (frame < this.begin) {\n // frame below begin\n this.begin = frame;\n this.notify('bounds', oldval);\n }\n else if (frame > this.end) {\n // frame above end\n this.end = frame;\n this.notify('bounds', oldval);\n }\n }\n notify(name, oldValue = undefined) {\n /* Prevent broadcast until the first feature is initialized */\n if (this.isInitialized() && this.notifierEnabled) {\n this.revision.value += 1;\n if (this.notifier) {\n this.notifier({\n item: this,\n event: name,\n oldValue,\n });\n }\n }\n }\n setNotifier(notifier) {\n this.notifier = notifier;\n }\n getType(index = 0) {\n if (this.confidencePairs.length > 0 && this.confidencePairs[index]) {\n return this.confidencePairs[index];\n }\n throw new Error('Index Error: The requested confidencePairs index does not exist.');\n }\n removeTypes(types) {\n if (this.confidencePairs.length > 0) {\n const old = this.confidencePairs;\n this.confidencePairs = this.confidencePairs.filter(([type]) => !types.includes(type));\n this.notify('confidencePairs', old);\n }\n return this.confidencePairs;\n }\n setType(annotationType, confidenceVal = 1, replace = undefined) {\n const old = this.confidencePairs;\n if (confidenceVal >= 1) {\n // dont' allow confidence greater than 1\n this.confidencePairs = [[annotationType, 1]];\n }\n else {\n const index = this.confidencePairs.findIndex(([a]) => a === annotationType);\n this.confidencePairs.splice(index, index >= 0 ? 1 : 0, [annotationType, confidenceVal]);\n if (replace) {\n const replaceIndex = this.confidencePairs.findIndex(([a]) => a === replace);\n if (replaceIndex >= 0)\n this.confidencePairs.splice(replaceIndex, 1);\n }\n this.confidencePairs.sort((a, b) => b[1] - a[1]);\n }\n this.notify('confidencePairs', old);\n }\n setAttribute(key, value, user = null) {\n let oldval = this.attributes[key];\n if (user !== null) {\n if (this.attributes.userAttributes === undefined) {\n this.attributes.userAttributes = {};\n }\n if (this.attributes.userAttributes[user] === undefined) {\n this.attributes.userAttributes[user] = {};\n }\n oldval = this.attributes.userAttributes[user];\n this.attributes.userAttributes[user][key] = value;\n }\n else {\n this.attributes[key] = value;\n }\n this.notify('attributes', { key, value: oldval });\n }\n /**\n * Figure out if any confidence pairs are above any corresponding thresholds\n */\n static exceedsThreshold(pairs, thresholds) {\n const defaultThresh = thresholds.default || 0;\n return pairs.filter(([name, value]) => value >= (thresholds[name] || defaultThresh));\n }\n}\n","import { omit } from 'lodash';\nimport BaseAnnotation from './BaseAnnotation';\nexport default class Group extends BaseAnnotation {\n constructor(id, params) {\n super(id, params);\n this.members = params.members;\n }\n /**\n * It would be easier to compute begin and end\n * as reactive computed properties, but it would require all\n * future developers to know about this and be very careful\n * where and how begin and end were used.\n *\n * Instead, we implement our own updater and call it anywhere\n * begin and end might be changed.\n */\n setBoundsForMembers() {\n const oldval = [this.begin, this.end];\n this.begin = Infinity;\n this.end = 0;\n Object.values(this.members).forEach((m) => {\n m.ranges.forEach(([begin, end]) => {\n this.begin = Math.min(begin, this.begin);\n this.end = Math.max(end, this.end);\n });\n });\n if (this.begin !== oldval[0] || this.end !== oldval[1]) {\n this.notify('bounds', oldval);\n }\n }\n get memberIds() {\n return Object.keys(this.members).map((id) => parseInt(id, 10));\n }\n addMembers(members) {\n let notify = false;\n Object.entries(members).forEach(([memberId, val]) => {\n const annotationId = parseInt(memberId, 10);\n if (!(annotationId in this.members)) {\n this.members[annotationId] = val;\n notify = true;\n }\n });\n this.setBoundsForMembers();\n if (notify) {\n this.notify('members');\n }\n }\n setMemberRange(memberId, idx, range) {\n this.members[memberId].ranges[idx] = range;\n this.setBoundsForMembers();\n this.notify('members');\n }\n addMemberRange(memberId, index, range) {\n this.members[memberId].ranges.splice(index, 0, range);\n this.setBoundsForMembers();\n this.notify('members');\n }\n removeMemberRange(memberId, idx) {\n this.members[memberId].ranges.splice(idx, 1);\n this.setBoundsForMembers();\n this.notify('members');\n }\n removeMembers(members) {\n this.members = omit(this.members, members);\n this.setBoundsForMembers();\n this.notify('remove-members', members);\n }\n serialize() {\n return {\n id: this.id,\n meta: this.meta,\n attributes: this.attributes,\n confidencePairs: this.confidencePairs,\n members: this.members,\n begin: this.begin,\n end: this.end,\n };\n }\n static fromJSON(json) {\n // accept either number or string, convert to number\n const intId = parseInt(json.id.toString(), 10);\n const track = new Group(intId, {\n members: json.members,\n meta: json.meta,\n attributes: json.attributes,\n confidencePairs: json.confidencePairs,\n begin: json.begin,\n end: json.end,\n });\n return track;\n }\n}\n","/**\n * MultiMap maintains a mapping from identifiers to groups of other identifiers\n */\nexport default class MultiMap {\n constructor() {\n this.mapping = new Map();\n }\n add(key, value) {\n const set = this.mapping.get(key);\n if (set) {\n set.add(value);\n }\n else {\n this.mapping.set(key, new Set([value]));\n }\n }\n remove(key, value) {\n const set = this.mapping.get(key);\n if (set) {\n set.delete(value);\n }\n }\n get(key) {\n return this.mapping.get(key);\n }\n}\n","import BaseAnnotationStore from './BaseAnnotationStore';\nimport Group from './Group';\nimport MultiMap from './MultiMap';\nexport default class GroupStore extends BaseAnnotationStore {\n constructor({ markChangesPending, cameraName }) {\n super({ markChangesPending, cameraName });\n this.trackMap = new MultiMap();\n this.defaultGroup = ['no-group', 1.0];\n }\n insert(group, args) {\n super.insert(group, args);\n group.memberIds.forEach((id) => {\n this.trackMap.add(id, group.id);\n });\n group.setNotifier((params) => {\n super.notify(params);\n if (params.event === 'remove-members') {\n params.oldValue.forEach((trackId) => {\n this.trackMap.remove(trackId, group.id);\n });\n }\n else if (params.event === 'members') {\n group.memberIds.forEach((id) => {\n this.trackMap.add(id, group.id);\n });\n }\n });\n }\n /**\n * Initialize a new group with members\n */\n add(members, defaultType) {\n const newId = this.getNewId();\n const begin = Math.min(...members.map((m) => m.begin));\n const end = Math.max(...members.map((m) => m.end));\n const memberMap = {};\n members.forEach((m) => {\n memberMap[m.id] = {\n ranges: [[m.begin, m.end]],\n };\n });\n const group = new Group(newId, {\n begin,\n end,\n confidencePairs: [[defaultType, 1]],\n members: memberMap,\n });\n this.insert(group);\n return group;\n }\n remove(annotationId, disableNotifications = false) {\n const group = this.get(annotationId);\n group.memberIds.forEach((id) => {\n this.trackMap.remove(id, group.id);\n });\n super.remove(annotationId, disableNotifications);\n }\n /**\n * Notify the group store that a track has been removed\n */\n trackRemove(annotationId) {\n this.lookupGroups(annotationId).forEach((group) => {\n /** Remove deleted track from group reference */\n group.removeMembers([annotationId]);\n if (group.memberIds.length === 0) {\n /** If you removed the last track, delete the group */\n this.remove(group.id);\n }\n });\n }\n lookupGroups(trackId) {\n const groupIds = this.trackMap.get(trackId);\n if (groupIds) {\n return Array.from(groupIds).map((v) => this.get(v));\n }\n return [];\n }\n clearAll() {\n this.trackMap = new MultiMap();\n super.clearAll();\n }\n}\n","/**\n * Binary search in JavaScript.\n * Adapted from https://stackoverflow.com/questions/22697936/binary-search-in-javascript\n * Returns the index of of the element in a sorted array or (-n-1) where n is the\n * insertion point for the new element.\n * The array may contain duplicate elements. If there are more than one equal\n * elements in the array, the returned value can be the index of any one of the equal elements.\n *\n * @param {Array} arr A sorted array\n * @param {T} el element to search for\n * @param {Function} compareFn A comparator function. The function takes two arguments: (a, b)\n * and returns:\n * a negative number if a is less than b;\n * 0 if a is equal to b;\n * a positive number of a is greater than b.\n */\nfunction binarySearch(arr, el) {\n let m = 0;\n let n = arr.length - 1;\n while (m <= n) {\n // eslint-disable-next-line no-bitwise\n const k = (n + m) >> 1;\n const cmp = el - arr[k];\n if (cmp > 0) {\n m = k + 1;\n }\n else if (cmp < 0) {\n n = k - 1;\n }\n else {\n return k;\n }\n }\n return -m - 1;\n}\n/**\n * Insert mutates arr. Not to be used on reactive arrays.\n */\nfunction listInsert(arr, newval) {\n const position = binarySearch(arr, newval);\n if (position >= 0) {\n // item at newval poisition already exists.\n // eslint-disable-next-line no-param-reassign\n arr[position] = newval;\n return position;\n }\n const newpos = (position * -1) - 1;\n arr.splice(newpos, 0, newval);\n return newpos;\n}\n/**\n * Remove mutates arr;\n */\nfunction listRemove(arr, val) {\n const position = binarySearch(arr, val);\n if (position >= 0) {\n const deleted = arr.splice(position, 1);\n return deleted ? deleted[0] : null;\n }\n return null;\n}\n/**\n * Return bounding elements for position\n * such that return[0] <= position and return[1] > position\n */\nfunction getSurroundingElements(arr, position) {\n let starti = position;\n // value not in list, binarySearch returned insert position\n if (starti < 0) {\n starti = Math.abs((starti + 1) * -1); // Nddeeded because `-0` is a thing in JS.\n }\n if (starti <= 0 || starti >= arr.length) {\n return null;\n }\n return [arr[starti - 1], arr[starti]];\n}\nexport { binarySearch, getSurroundingElements, listInsert, listRemove, };\n","import { binarySearch, listInsert, getSurroundingElements, listRemove, } from './listUtils';\nimport BaseAnnotation from './BaseAnnotation';\n/**\n * Track manages the state of a track, its\n * frame data, and all metadata.\n */\nexport default class Track extends BaseAnnotation {\n constructor(id, params) {\n super(id, params);\n this.features = params.features || []; // NON-reactive sparse array\n this.featureIndex = [];\n Track.sanityCheckFeatures(this.features);\n this.repopulateInterpolatedFrames(this.features);\n if (params.set) {\n this.set = params.set;\n }\n }\n /**\n * @deprecated Use id instead.\n */\n get trackId() {\n return this.id;\n }\n /**\n * True after at least 1 feature has been added\n */\n isInitialized() {\n return this.featureIndex.length > 0;\n }\n /**\n * Test the first element in the feature array. Its index should match\n * its frame number. Otherwise, the constructor was called with a\n * dense array, which is incorrect.\n */\n static sanityCheckFeatures(features) {\n const breakException = Symbol('breakException');\n try {\n features.forEach((f, i) => {\n if (f.frame !== i) {\n throw new Error('features must be initialized with sparse array.'\n + 'Use Track.fromJson() if you want to initialize with features.');\n }\n throw breakException;\n });\n }\n catch (e) {\n if (e !== breakException)\n throw e;\n }\n }\n repopulateInterpolatedFrames(features) {\n this.featureIndex = [];\n features.forEach((f) => {\n // TODO: Figure out what the conditions are for this.\n if (f.keyframe && f.bounds) {\n this.featureIndex.push(f.frame);\n }\n if (!!f.keyframe !== !!f.bounds) {\n throw new Error('keyframe must not XOR bounds');\n }\n });\n }\n /* Call if the bounds were possible shrunk */\n maybeShrinkBounds(frame) {\n const oldval = [this.begin, this.end];\n if (frame === this.begin) {\n // frame is begin\n const nextFrame = this.getNextKeyframe(this.begin + 1);\n if (nextFrame === undefined) {\n this.begin = Infinity;\n this.end = 0;\n }\n else {\n this.begin = nextFrame;\n }\n this.notify('bounds', oldval);\n }\n else if (frame === this.end) {\n // frame is end\n const previousFrame = this.getPreviousKeyframe(this.end - 1);\n if (previousFrame === undefined) {\n this.end = 0;\n this.begin = Infinity;\n }\n else {\n this.end = previousFrame;\n }\n this.notify('bounds', oldval);\n }\n }\n /** Determine if track can be split at frame */\n canSplit(frame) {\n return frame > this.begin && frame <= this.end;\n }\n /** Determine if a hypothetical feature at frame should enable interpolation */\n canInterpolate(frame) {\n const [real, lower, upper] = this.getFeature(frame);\n return {\n features: [real, lower, upper],\n interpolate: (real === null || real === void 0 ? void 0 : real.interpolate)\n || (lower === null || lower === void 0 ? void 0 : lower.interpolate)\n || (!lower && ((upper === null || upper === void 0 ? void 0 : upper.interpolate) || false)),\n };\n }\n /**\n * Split trackId in two at given frame, where frame is allocated\n * to the second track. Both tracks must end up with at least 1 detection.\n */\n split(frame, id1, id2) {\n if (!this.canSplit(frame)) {\n throw new Error(`Cannot split track ${this.id} at frame ${frame}. Frame bounds are [${this.begin}, ${this.end}]`);\n }\n return [\n Track.fromJSON({\n id: id1,\n meta: this.meta,\n begin: this.begin,\n end: this.getPreviousKeyframe(frame - 1) || this.begin,\n features: this.features.slice(this.begin, frame),\n confidencePairs: this.confidencePairs,\n attributes: this.attributes,\n }),\n Track.fromJSON({\n id: id2,\n meta: this.meta,\n begin: this.getNextKeyframe(frame) || this.end,\n end: this.end,\n features: this.features.slice(frame),\n confidencePairs: this.confidencePairs,\n attributes: this.attributes,\n }),\n ];\n }\n /**\n * Merge other into track at frame, preferring features from\n * self if there are conflicts\n */\n merge(others, disableNotifier = false) {\n if (disableNotifier) {\n this.notifierEnabled = false;\n }\n others.forEach((other) => {\n other.confidencePairs.forEach((pair) => {\n const match = this.confidencePairs.find(([name]) => name === pair[0]);\n // Only set confidence if greater\n if (match === undefined || match[1] < pair[1]) {\n this.setType(...pair);\n }\n });\n other.features.forEach((f) => {\n var _a;\n if (this.getFeature(f.frame)[0] === null) {\n this.setFeature(f, (_a = f.geometry) === null || _a === void 0 ? void 0 : _a.features);\n }\n });\n const { attributes } = other;\n if (attributes !== undefined) {\n Object.entries(attributes).forEach(([key, val]) => {\n if ([null, undefined].indexOf(this.attributes[key]) !== -1) {\n this.setAttribute(key, val);\n }\n });\n }\n });\n if (disableNotifier) {\n this.notifierEnabled = true;\n }\n }\n toggleKeyframe(frame) {\n const { features } = this.canInterpolate(frame);\n const [real, lower, upper] = features;\n if (real && this.length === 1) {\n throw new Error(`This is the only keyframe in Track:${this.trackId} it cannot be removed`);\n }\n if (real && !real.keyframe) {\n this.setFeature({\n ...real,\n frame,\n keyframe: true,\n });\n }\n else if ((lower || upper) && !(real === null || real === void 0 ? void 0 : real.keyframe)) {\n let interFeature = null;\n if (upper && frame > upper.frame) {\n interFeature = upper;\n }\n else if (lower && frame < lower.frame) {\n interFeature = lower;\n }\n if (interFeature) {\n this.setFeature({\n ...interFeature,\n frame,\n keyframe: true,\n });\n }\n }\n else if (real === null || real === void 0 ? void 0 : real.keyframe) {\n this.deleteFeature(frame);\n }\n }\n toggleInterpolation(frame) {\n const { features, interpolate } = this.canInterpolate(frame);\n const [real, lower, upper] = features;\n const targetKeyframe = (real === null || real === void 0 ? void 0 : real.keyframe) ? real : (lower || upper);\n if (targetKeyframe) {\n this.setFeature({\n ...targetKeyframe,\n interpolate: !interpolate,\n });\n }\n }\n toggleInterpolationForAllGaps(frame) {\n const { interpolate } = this.canInterpolate(frame);\n for (let i = this.begin; i < this.end; i += 1) {\n const { features } = this.canInterpolate(i);\n const [real, lower, upper] = features;\n const targetKeyframe = (real === null || real === void 0 ? void 0 : real.keyframe) ? real : (lower || upper);\n if (targetKeyframe) {\n this.setFeature({\n ...targetKeyframe,\n interpolate: !interpolate,\n });\n }\n }\n }\n setFeature(feature, geometry = []) {\n const f = this.features[feature.frame] || {};\n this.features[feature.frame] = {\n ...f,\n ...feature,\n };\n // round bounds if necessary\n if (feature.bounds) {\n this.features[feature.frame].bounds = [\n Math.round(feature.bounds[0]),\n Math.round(feature.bounds[1]),\n Math.round(feature.bounds[2]),\n Math.round(feature.bounds[3]),\n ];\n }\n if (!this.features[feature.frame].keyframe) {\n throw new Error('setFeature must be called with keyframe=true OR to update an existing keyframe');\n }\n listInsert(this.featureIndex, feature.frame);\n const fg = this.features[feature.frame].geometry || { type: 'FeatureCollection', features: [] };\n geometry.forEach((geo) => {\n const i = fg.features\n .findIndex((item) => {\n var _a, _b, _c;\n const keyMatch = !((_a = geo.properties) === null || _a === void 0 ? void 0 : _a.key) || ((_b = item.properties) === null || _b === void 0 ? void 0 : _b.key) === ((_c = geo.properties) === null || _c === void 0 ? void 0 : _c.key);\n const typeMatch = item.geometry.type === geo.geometry.type;\n return keyMatch && typeMatch;\n });\n if (i >= 0) {\n fg.features.splice(i, 1, geo);\n }\n else {\n fg.features.push(geo);\n }\n });\n if (fg.features.length) {\n this.features[feature.frame].geometry = fg;\n }\n this.maybeExpandBounds(feature.frame);\n if (this.featureIndex.length === 1) {\n /**\n * If this is the very first feature, it may be necessary\n * to shrink the bounds if the first feature was added on a different frame\n * than the track was created on\n */\n if (feature.frame !== this.begin) {\n this.maybeShrinkBounds(this.begin);\n }\n else if (feature.frame !== this.end) {\n this.maybeShrinkBounds(this.end);\n }\n }\n this.notify('feature', f);\n return this.features[feature.frame];\n }\n /* Get features by properties.key, geometry.type, or both */\n getFeatureGeometry(frame, { key, type }) {\n const feature = this.features[frame];\n if (!feature || !feature.geometry) {\n return [];\n }\n return feature.geometry.features.filter((item) => {\n var _a;\n const matchesKey = !key || ((_a = item.properties) === null || _a === void 0 ? void 0 : _a.key) === key;\n const matchesType = !type || item.geometry.type === type;\n return matchesKey && matchesType;\n });\n }\n removeFeatureGeometry(frame, { key, type }) {\n const feature = this.features[frame];\n if (!feature.geometry) {\n return false;\n }\n const index = feature.geometry.features.findIndex((item) => {\n var _a;\n const matchesKey = !key || ((_a = item.properties) === null || _a === void 0 ? void 0 : _a.key) === key;\n const matchesType = !type || item.geometry.type === type;\n return matchesKey && matchesType;\n });\n if (index !== -1) {\n feature.geometry.features.splice(index, 1);\n this.notify('feature', feature);\n return true;\n }\n return false;\n }\n setFeatureAttribute(frame, name, value, user = null) {\n if (this.features[frame]) {\n if (user !== null) {\n this.features[frame].attributes = {\n ...this.features[frame].attributes,\n };\n if (this.features[frame].attributes !== undefined\n && this.features[frame].attributes.userAttributes === undefined) {\n this.features[frame].attributes.userAttributes = {};\n }\n this.features[frame].attributes\n .userAttributes[user] = {\n ...this.features[frame].attributes[user],\n [name]: value,\n };\n }\n else {\n this.features[frame].attributes = {\n ...this.features[frame].attributes,\n [name]: value,\n };\n }\n this.notify('feature', this.features[frame]);\n }\n }\n /**\n * Returns a 3-tuple of nullable features:\n * [exact_feature_match, previous_keyframe, next_keyframe]\n */\n getFeature(frame) {\n // First, try a direct keyframe hit\n const maybeFrame = this.features[frame];\n if (maybeFrame) {\n return [maybeFrame, maybeFrame, maybeFrame];\n }\n // Then see if we are outside the track bounds\n if (frame < this.begin || frame > this.end) {\n if (frame <= this.begin) {\n return [null, this.features[this.begin], null];\n }\n return [null, null, this.features[this.end]];\n }\n // Then try to interpolate\n const position = binarySearch(this.featureIndex, frame);\n const maybeInterpolated = getSurroundingElements(this.featureIndex, position);\n if (maybeInterpolated !== null) {\n const [d0, d1] = maybeInterpolated.map((_frame) => this.features[_frame]);\n return [Track.interpolate(frame, d0, d1), d0, d1];\n }\n if (this.featureIndex.length !== 0) {\n throw new Error(`Unexpected condition: Track bounds mis-aligned with feature array.\n begin=${this.begin}\n end=${this.end}\n firstFeature=${this.featureIndex[0]}\n `);\n }\n // Should only reach here when there are no features (empty)\n return [null, null, null];\n }\n /* Given a frame number, find the track's next keyframe */\n getNextKeyframe(frame) {\n const next = this.features.slice(frame).find((a) => a);\n return next === null || next === void 0 ? void 0 : next.frame;\n }\n /* Given a frame number, find the track's previous keyframe */\n getPreviousKeyframe(frame) {\n const previous = this.features.slice(0, frame + 1).reverse().find((a) => a);\n return previous === null || previous === void 0 ? void 0 : previous.frame;\n }\n deleteFeature(frame) {\n const feature = this.features[frame];\n if (feature && feature.keyframe) {\n listRemove(this.featureIndex, frame);\n }\n delete this.features[frame];\n this.maybeShrinkBounds(frame);\n this.notify('feature', feature);\n }\n /* Condense the sparse array to a dense one */\n condenseFeatures() {\n const features = [];\n this.features.forEach((f) => {\n features.push(f);\n });\n return features;\n }\n getUserAttributeList() {\n const userList = new Set();\n if (this.attributes && this.attributes.userAttributes) {\n Object.keys(this.attributes.userAttributes).forEach((item) => userList.add(item));\n }\n if (this.features) {\n this.features.forEach((feature) => {\n if (feature.attributes && feature.attributes.userAttributes) {\n Object.keys(feature.attributes.userAttributes).forEach((item) => userList.add(item));\n }\n });\n }\n return userList;\n }\n /* Serialize back to a regular track object */\n serialize() {\n return {\n id: this.id,\n meta: this.meta,\n attributes: this.attributes,\n confidencePairs: this.confidencePairs,\n features: this.condenseFeatures(),\n begin: this.begin,\n end: this.end,\n };\n }\n /* Interpolate feature from d0 to d1 @ frame */\n static interpolate(frame, d0, d1) {\n if (!d0.interpolate) {\n return null;\n }\n const len = d1.frame - d0.frame;\n // a + b = 1; interpolate from a to b\n const b = Math.abs((frame - d0.frame) / len);\n const a = 1 - b;\n let keyframe = false;\n if (b === 0 || a === 0) {\n keyframe = true; // actually this is a keyframe\n }\n let box;\n if (d0.bounds && d1.bounds) {\n const d0bounds = d0.bounds;\n const d1bounds = d1.bounds;\n box = d0bounds.map((_, i) => ((d0bounds[i] * a) + (d1bounds[i] * b)));\n }\n else {\n throw new Error('Bounds cannot be missing from interpolated features');\n }\n return {\n frame,\n bounds: [box[0], box[1], box[2], box[3]],\n interpolate: true,\n keyframe,\n };\n }\n static fromJSON(json, set) {\n const sparseFeatures = [];\n json.features.forEach((f) => {\n sparseFeatures[f.frame] = {\n keyframe: true,\n ...f,\n };\n });\n // accept either number or string, convert to number\n const intTrackId = parseInt(json.id.toString(), 10);\n const track = new Track(intTrackId, {\n features: sparseFeatures,\n meta: json.meta,\n attributes: json.attributes,\n confidencePairs: json.confidencePairs,\n begin: json.begin,\n end: json.end,\n set,\n });\n return track;\n }\n}\n","import Track from './track';\nimport BaseAnnotationStore from './BaseAnnotationStore';\nexport default class TrackStore extends BaseAnnotationStore {\n add(frame, defaultType, afterId, overrideTrackId) {\n const track = new Track(overrideTrackId, {\n begin: frame,\n end: frame,\n confidencePairs: [[defaultType, 1]],\n });\n this.insert(track, { afterId });\n this.markChangesPending({ action: 'upsert', track, cameraName: this.cameraName });\n return track;\n }\n}\n","import { computed, shallowRef, triggerRef, } from 'vue';\nimport { cloneDeep, uniq } from 'lodash';\nimport GroupStore from './GroupStore';\nimport TrackStore from './TrackStore';\n/**\n * CameraStore is a warapper for holding and collating tracks from multiple cameras.\n * If a singleCamera is in operation it uses the root 'singleCam' with a single store.\n * There are helper functions for getting tracks if they exist in any camera, specific\n * cameras as well as merging tracks together to perform operations on all of them.\n */\nexport default class CameraStore {\n constructor({ markChangesPending }) {\n this.markChangesPending = markChangesPending;\n const cameraName = 'singleCam';\n this.defaultGroup = ['no-group', 1.0];\n this.camMap = shallowRef(new Map([[cameraName, {\n trackStore: new TrackStore({ markChangesPending, cameraName }),\n groupStore: new GroupStore({ markChangesPending, cameraName }),\n }]]));\n this.sortedTracks = computed(() => {\n let idList = [];\n this.camMap.value.forEach((camera) => {\n idList = idList.concat(camera.trackStore.sorted.value.map((item) => item.id));\n });\n /**\n * The tracks need to be merged because this is used for Event/Detection viewing\n * This allows the full range begin/end for the track across multiple cameras to\n * be displayed.\n */\n return uniq(idList).map((id) => this.getTracksMergedForSorted(id));\n });\n this.sortedGroups = computed(() => {\n let list = [];\n this.camMap.value.forEach((camera) => {\n list = list.concat(camera.groupStore.sorted.value);\n });\n return list;\n });\n }\n getTrack(trackId, cameraName = 'singleCam') {\n var _a;\n const currentMap = (_a = this.camMap.value.get(cameraName)) === null || _a === void 0 ? void 0 : _a.trackStore;\n if (!currentMap) {\n throw new Error(`No camera Map with the camera name: ${cameraName}`);\n }\n const tempTrack = currentMap === null || currentMap === void 0 ? void 0 : currentMap.get(trackId);\n if (!tempTrack) {\n throw new Error(`TrackId ${trackId} not found in trackMap with cameraName ${cameraName}`);\n }\n return tempTrack;\n }\n getPossibleTrack(trackId, cameraName = 'singleCam') {\n try {\n return this.getTrack(trackId, cameraName);\n }\n catch (err) {\n return undefined;\n }\n }\n getAnyPossibleTrack(trackId) {\n let track;\n this.camMap.value.forEach((camera) => {\n const tempTrack = camera.trackStore.getPossible(trackId);\n if (tempTrack) {\n track = tempTrack;\n }\n });\n if (track) {\n return track;\n }\n return undefined;\n }\n getAnyTrack(trackId) {\n let track;\n this.camMap.value.forEach((camera) => {\n const tempTrack = camera.trackStore.getPossible(trackId);\n if (tempTrack) {\n track = tempTrack;\n }\n });\n if (track) {\n return track;\n }\n throw new Error(`TrackId ${trackId} not found in any camera`);\n }\n getTrackAll(trackId) {\n const trackList = [];\n this.camMap.value.forEach((camera) => {\n const tempTrack = camera.trackStore.getPossible(trackId);\n if (tempTrack) {\n trackList.push(tempTrack);\n }\n });\n return trackList;\n }\n getTracksMerged(trackId) {\n if (this.camMap.value.size === 1) {\n return this.getTrack(trackId);\n }\n let track;\n this.camMap.value.forEach((camera) => {\n const tempTrack = camera.trackStore.getPossible(trackId);\n if (!track && tempTrack) {\n track = cloneDeep(tempTrack);\n }\n else if (track && tempTrack) {\n // Merge track bounds and data together\n // We don't care about feature data just that features are at X frame\n track.merge([tempTrack], true);\n }\n });\n if (!track) {\n throw Error(`TrackId: ${trackId} is not found in any camera`);\n }\n return track;\n }\n getTracksMergedForSorted(trackId) {\n const track = this.getTracksMerged(trackId);\n return {\n id: track.id,\n confidencePairs: track.confidencePairs,\n begin: track.begin,\n end: track.end,\n getType: (index) => (track.confidencePairs[index || 0][0] || 'unknown'),\n };\n }\n addCamera(cameraName) {\n if (this.camMap.value.get(cameraName) === undefined) {\n this.camMap.value.set(cameraName, {\n trackStore: new TrackStore({ markChangesPending: this.markChangesPending, cameraName }),\n groupStore: new GroupStore({ markChangesPending: this.markChangesPending, cameraName }),\n });\n // Bump the shallowRef\n triggerRef(this.camMap);\n }\n }\n removeCamera(cameraName) {\n if (this.camMap.value.get(cameraName) !== undefined) {\n this.camMap.value.delete(cameraName);\n // Bump the shallowRef\n triggerRef(this.camMap);\n }\n }\n lookupGroups(trackId) {\n let groups = [];\n if (this.camMap) {\n this.camMap.value.forEach((camera) => {\n const groupIds = camera.groupStore.trackMap.get(trackId);\n if (groupIds) {\n groups = groups.concat(Array.from(groupIds).map((v) => camera.groupStore.get(v)));\n }\n });\n }\n return groups;\n }\n remove(trackId, cameraName = '') {\n this.camMap.value.forEach((camera) => {\n if (camera.trackStore.getPossible(trackId)) {\n if (cameraName === '' || camera.trackStore.cameraName === cameraName) {\n camera.trackStore.remove(trackId);\n }\n if (cameraName === '' || camera.groupStore.cameraName === cameraName) {\n camera.groupStore.trackRemove(trackId);\n }\n }\n });\n }\n getNewTrackId() {\n let trackIds = [];\n this.camMap.value.forEach((camera) => {\n trackIds = trackIds.concat(camera.trackStore.annotationIds.value);\n });\n if (!trackIds.length) {\n return 0;\n }\n return trackIds.reduce((prev, current) => Math.max(prev, current)) + 1;\n }\n clearAll() {\n this.camMap.value.forEach((camera) => {\n camera.trackStore.clearAll();\n camera.groupStore.clearAll();\n });\n }\n removeTracks(id, cameraName = '') {\n this.camMap.value.forEach((camera) => {\n if (camera.trackStore.getPossible(id)) {\n if (cameraName === '' || camera.trackStore.cameraName === cameraName) {\n camera.trackStore.remove(id);\n }\n }\n });\n }\n removeGroups(id, cameraName = '') {\n this.camMap.value.forEach((camera) => {\n if (camera.groupStore.getPossible(id)) {\n if (cameraName === '' || camera.groupStore.cameraName === cameraName) {\n camera.groupStore.remove(id);\n }\n }\n });\n }\n // Update all cameras to have the same track type\n setTrackType(id, newType, confidenceVal, currentType) {\n this.camMap.value.forEach((camera) => {\n const track = camera.trackStore.getPossible(id);\n if (track !== undefined) {\n track.setType(newType, confidenceVal, currentType);\n }\n });\n }\n changeTrackTypes({ currentType, newType }) {\n this.camMap.value.forEach((camera) => {\n camera.trackStore.sorted.value.forEach((annotation) => {\n for (let i = 0; i < annotation.confidencePairs.length; i += 1) {\n const [name, confidenceVal] = annotation.confidencePairs[i];\n if (name === currentType) {\n const track = camera.trackStore.get(annotation.id);\n if (track) {\n track.setType(newType, confidenceVal, currentType);\n }\n break;\n }\n }\n });\n });\n }\n removeTypes(id, types) {\n let resultingTypes = [];\n this.camMap.value.forEach((camera) => {\n const track = camera.trackStore.getPossible(id);\n if (track !== undefined) {\n resultingTypes = track.removeTypes(types);\n }\n });\n return resultingTypes;\n }\n getGroupMemebers(id) {\n let members = {};\n this.camMap.value.forEach((camera) => {\n const group = camera.groupStore.get(id);\n if (group !== undefined) {\n members = group.members;\n }\n });\n return members;\n }\n}\n","import { provide, inject, ref, reactive, } from 'vue';\nimport StyleManager from './StyleManager';\nimport TrackFilterControls from './TrackFilterControls';\nimport GroupFilterControls from './GroupFilterControls';\nimport CameraStore from './CameraStore';\n/**\n * Type definitions are read only because injectors may mutate internal state,\n * but should never overwrite or delete the injected object.\n */\nconst AnnotatorPreferencesSymbol = Symbol('annotatorPreferences');\nconst AttributesSymbol = Symbol('attributes');\nconst AttributesFilterSymbol = Symbol('attributesFilter');\nconst DatasetIdSymbol = Symbol('datasetID');\nconst EditingModeSymbol = Symbol('editingMode');\nconst MultiSelectSymbol = Symbol('multiSelect');\nconst PendingSaveCountSymbol = Symbol('pendingSaveCount');\nconst ProgressSymbol = Symbol('progress');\nconst RevisionIdSymbol = Symbol('revisionId');\nconst AnnotationSetSymbol = Symbol('annotationSet');\nconst AnnotationSetsSymbol = Symbol('annotationSets');\nconst ComparisonSetsSymbol = Symbol('comparisonSets');\nconst SelectedCameraSymbol = Symbol('selectedCamera');\nconst SelectedKeySymbol = Symbol('selectedKey');\nconst SelectedTrackIdSymbol = Symbol('selectedTrackId');\nconst EditingGroupIdSymbol = Symbol('editingGroupId');\nconst TimeSymbol = Symbol('time');\nconst VisibleModesSymbol = Symbol('visibleModes');\nconst ReadOnlyModeSymbol = Symbol('readOnlyMode');\nconst ImageEnhancementsSymbol = Symbol('imageEnhancements');\n/** Class-based symbols */\nconst CameraStoreSymbol = Symbol('cameraStore');\nconst TrackStyleManagerSymbol = Symbol('trackTypeStyling');\nconst GroupStyleManagerSymbol = Symbol('groupTypeStyling');\nconst TrackFilterControlsSymbol = Symbol('trackFilters');\nconst GroupFilterControlsSymbol = Symbol('groupFilters');\nconst HandlerSymbol = Symbol('handler');\n/**\n * Make a trivial noop handler. Useful if you only intend to\n * override some small number of values.\n * @param handle callbacl for all handler methods\n */\nfunction dummyHandler(handle) {\n return {\n save(...args) { handle('save', args); return Promise.resolve(); },\n trackSeek(...args) { handle('trackSeek', args); },\n trackEdit(...args) { handle('trackEdit', args); },\n trackSelect(...args) { handle('trackSelect', args); },\n trackSelectNext(...args) { handle('trackSelectNext', args); },\n trackSplit(...args) { handle('trackSplit', args); },\n trackAdd(...args) { handle('trackAdd', args); return 0; },\n updateRectBounds(...args) { handle('updateRectBounds', args); },\n updateGeoJSON(...args) { handle('updateGeoJSON', args); },\n removeTrack(...args) { handle('removeTrack', args); },\n removeGroup(...args) { handle('removeGroup', args); },\n removePoint(...args) { handle('removePoint', args); },\n removeAnnotation(...args) { handle('removeAnnotation', args); },\n selectCamera(...args) { handle('selectCamera', args); },\n selectFeatureHandle(...args) { handle('selectFeatureHandle', args); },\n setAttribute(...args) { handle('setAttribute', args); },\n deleteAttribute(...args) { handle('deleteAttribute', args); },\n toggleMerge(...args) { handle('toggleMerge', args); return []; },\n commitMerge(...args) { handle('commitMerge', args); },\n groupAdd(...args) { handle('groupAdd', args); },\n groupEdit(...args) { handle('groupEdit', args); },\n unstageFromMerge(...args) { handle('unstageFromMerge', args); },\n reloadAnnotations(...args) { handle('reloadTracks', args); return Promise.resolve(); },\n setSVGFilters(...args) { handle('setSVGFilter', args); },\n unlinkCameraTrack(...args) { handle('unlinkCameraTrack', args); },\n linkCameraTrack(...args) { handle('linkCameraTrack', args); },\n startLinking(...args) { handle('startLinking', args); },\n stopLinking(...args) { handle('stopLinking', args); },\n setChange(...args) { handle('setChange', args); },\n };\n}\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nconst markChangesPending = () => { };\n/**\n * make a trivial state store. Useful if you only\n * intend to override some small number of values.\n */\nfunction dummyState() {\n const cameraStore = new CameraStore({ markChangesPending });\n const setTrackType = (id, newType, confidenceVal, currentType) => {\n cameraStore.setTrackType(id, newType, confidenceVal, currentType);\n };\n const removeTypes = (id, types) => cameraStore.removeTypes(id, types);\n const groupFilterControls = new GroupFilterControls({\n sorted: cameraStore.sortedGroups,\n remove: cameraStore.removeGroups,\n markChangesPending,\n setType: setTrackType,\n removeTypes,\n });\n const trackFilterControls = new TrackFilterControls({\n sorted: cameraStore.sortedTracks,\n remove: cameraStore.removeTracks,\n markChangesPending,\n groupFilterControls,\n lookupGroups: cameraStore.lookupGroups,\n getTrack: (track, camera = 'singleCam') => (cameraStore.getTrack(track, camera)),\n setType: setTrackType,\n removeTypes,\n });\n return {\n annotatorPreferences: ref({ trackTails: { before: 20, after: 10 } }),\n attributes: ref([]),\n cameraStore,\n datasetId: ref(''),\n editingMode: ref(false),\n multiSelectList: ref([]),\n pendingSaveCount: ref(0),\n progress: reactive({ loaded: true }),\n revisionId: ref(0),\n annotationSet: ref(''),\n annotationSets: ref([]),\n comparisonSets: ref([]),\n groupFilters: groupFilterControls,\n groupStyleManager: new StyleManager({ markChangesPending }),\n selectedCamera: ref('singleCam'),\n selectedKey: ref(''),\n selectedTrackId: ref(null),\n editingGroupId: ref(null),\n time: {\n frame: ref(0),\n flick: ref(0),\n frameRate: ref(0),\n originalFps: ref(null),\n },\n trackFilters: trackFilterControls,\n trackStyleManager: new StyleManager({ markChangesPending }),\n visibleModes: ref(['rectangle', 'text']),\n readOnlyMode: ref(false),\n imageEnhancements: ref({}),\n };\n}\n/**\n * Provide global state and handler for a single instance\n * of vue-media-annotator. Multiple annotator windows\n * are currently not supported.\n *\n * @param {State} state\n * @param {Handler} handler\n * @param {}\n */\nfunction provideAnnotator(state, handler, attributesFilters) {\n provide(AnnotatorPreferencesSymbol, state.annotatorPreferences);\n provide(AttributesSymbol, state.attributes);\n provide(CameraStoreSymbol, state.cameraStore);\n provide(DatasetIdSymbol, state.datasetId);\n provide(EditingModeSymbol, state.editingMode);\n provide(GroupFilterControlsSymbol, state.groupFilters);\n provide(GroupStyleManagerSymbol, state.groupStyleManager);\n provide(MultiSelectSymbol, state.multiSelectList);\n provide(PendingSaveCountSymbol, state.pendingSaveCount);\n provide(ProgressSymbol, state.progress);\n provide(RevisionIdSymbol, state.revisionId);\n provide(AnnotationSetSymbol, state.annotationSet);\n provide(AnnotationSetsSymbol, state.annotationSets);\n provide(ComparisonSetsSymbol, state.comparisonSets);\n provide(TrackFilterControlsSymbol, state.trackFilters);\n provide(TrackStyleManagerSymbol, state.trackStyleManager);\n provide(SelectedCameraSymbol, state.selectedCamera);\n provide(SelectedKeySymbol, state.selectedKey);\n provide(SelectedTrackIdSymbol, state.selectedTrackId);\n provide(EditingGroupIdSymbol, state.editingGroupId);\n provide(TimeSymbol, state.time);\n provide(VisibleModesSymbol, state.visibleModes);\n provide(ReadOnlyModeSymbol, state.readOnlyMode);\n provide(ImageEnhancementsSymbol, state.imageEnhancements);\n provide(HandlerSymbol, handler);\n provide(AttributesFilterSymbol, attributesFilters);\n}\nfunction _handleMissing(s) {\n return new Error(`Missing provided object for symbol ${s.toString()}: must provideAnnotator()`);\n}\nfunction use(s) {\n const v = inject(s);\n if (v === undefined) {\n throw _handleMissing(s);\n }\n return v;\n}\nfunction useAnnotatorPreferences() {\n return use(AnnotatorPreferencesSymbol);\n}\nfunction useAttributes() {\n return use(AttributesSymbol);\n}\nfunction useAttributesFilters() {\n return use(AttributesFilterSymbol);\n}\nfunction useCameraStore() {\n return use(CameraStoreSymbol);\n}\nfunction useDatasetId() {\n return use(DatasetIdSymbol);\n}\nfunction useEditingMode() {\n return use(EditingModeSymbol);\n}\nfunction useGroupFilterControls() {\n return use(GroupFilterControlsSymbol);\n}\nfunction useGroupStyleManager() {\n return use(GroupStyleManagerSymbol);\n}\nfunction useHandler() {\n return use(HandlerSymbol);\n}\nfunction useMultiSelectList() {\n return use(MultiSelectSymbol);\n}\nfunction usePendingSaveCount() {\n return use(PendingSaveCountSymbol);\n}\nfunction useProgress() {\n return use(ProgressSymbol);\n}\nfunction useRevisionId() {\n return use(RevisionIdSymbol);\n}\nfunction useAnnotationSet() {\n return use(AnnotationSetSymbol);\n}\nfunction useAnnotationSets() {\n return use(AnnotationSetsSymbol);\n}\nfunction useComparisonSets() {\n return use(ComparisonSetsSymbol);\n}\nfunction useTrackStyleManager() {\n return use(TrackStyleManagerSymbol);\n}\nfunction useSelectedCamera() {\n return use(SelectedCameraSymbol);\n}\nfunction useSelectedKey() {\n return use(SelectedKeySymbol);\n}\nfunction useSelectedTrackId() {\n return use(SelectedTrackIdSymbol);\n}\nfunction useEditingGroupId() {\n return use(EditingGroupIdSymbol);\n}\nfunction useTime() {\n return use(TimeSymbol);\n}\nfunction useTrackFilters() {\n return use(TrackFilterControlsSymbol);\n}\nfunction useVisibleModes() {\n return use(VisibleModesSymbol);\n}\nfunction useReadOnlyMode() {\n return use(ReadOnlyModeSymbol);\n}\nfunction useImageEnhancements() {\n return use(ImageEnhancementsSymbol);\n}\nexport { dummyHandler, dummyState, provideAnnotator, use, useAnnotatorPreferences, useAttributes, useCameraStore, useDatasetId, useEditingMode, useHandler, useGroupFilterControls, useGroupStyleManager, useMultiSelectList, usePendingSaveCount, useProgress, useRevisionId, useAnnotationSet, useAnnotationSets, useComparisonSets, useTrackFilters, useTrackStyleManager, useSelectedCamera, useSelectedKey, useSelectedTrackId, useEditingGroupId, useTime, useVisibleModes, useReadOnlyMode, useImageEnhancements, useAttributesFilters, };\n","import { provide } from 'vue';\nimport { use } from 'vue-media-annotator/provides';\nconst DatasetMetaMutableKeys = ['attributes', 'confidenceFilters', 'customTypeStyling', 'customGroupStyling', 'attributeTrackFilters'];\nconst ApiSymbol = Symbol('api');\n/**\n * provideApi specifies an implementation of the data persistence interface\n * for use in vue-web-common\n * @param api an api implementation\n */\nfunction provideApi(api) {\n provide(ApiSymbol, api);\n}\nfunction useApi() {\n return use(ApiSymbol);\n}\nexport { provideApi, useApi, };\nexport { DatasetMetaMutableKeys, };\n","import { inject } from 'vue';\nexport function useStore() {\n const store = inject('store');\n if (store === undefined) {\n throw new Error('Store was undefined');\n }\n return store;\n}\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function isGirderModel(value) {\n return value._id && value._modelType;\n}\n","export const JsonMetaCurrentVersion = 1;\nexport const SettingsCurrentVersion = 1;\nexport const AnnotationsCurrentVersion = 2;\nexport const ProjectsFolderName = 'DIVE_Projects';\nexport const JobsFolderName = 'DIVE_Jobs';\nexport const PipelinesFolderName = 'DIVE_Pipelines';\n","import girderRest from 'platform/web-girder/plugins/girder';\nimport { AnnotationsCurrentVersion } from 'platform/desktop/constants';\nasync function loadDetections(folderId, revision, set) {\n const params = { folderId };\n if (revision !== undefined) {\n params.revision = revision;\n }\n if (params !== undefined) {\n params.set = set;\n }\n return {\n tracks: (await girderRest.get('dive_annotation/track', { params })).data,\n groups: (await girderRest.get('dive_annotation/group', { params })).data,\n sets: (await girderRest.get('dive_annotation/sets', { params })).data,\n version: AnnotationsCurrentVersion,\n };\n}\nfunction loadRevisions(folderId, limit, offset, sort, set) {\n return girderRest.get('dive_annotation/revision', {\n params: {\n folderId, sortdir: -1, limit, offset, sort, set,\n },\n });\n}\nfunction saveDetections(folderId, args) {\n return girderRest.patch('dive_annotation', args, {\n params: { folderId },\n });\n}\nasync function getLabels() {\n const response = await girderRest.get('dive_annotation/labels');\n return response;\n}\nexport { getLabels, loadDetections, loadRevisions, saveDetections, };\n","import girderRest from 'platform/web-girder/plugins/girder';\nfunction getBrandData() {\n return girderRest.get('dive_configuration/brand_data');\n}\nfunction putBrandData(brandData) {\n return girderRest.put('dive_configuration/brand_data', brandData);\n}\nfunction getPipelineList() {\n return girderRest.get('dive_configuration/pipelines');\n}\nfunction getTrainingConfigurations() {\n return girderRest.get('dive_configuration/training_configs');\n}\nfunction getAddons() {\n return girderRest.get('dive_configuration/addons');\n}\nfunction postAddons(urls, forceDownload) {\n return girderRest.post(`dive_configuration/upgrade_pipelines?force=${forceDownload}`, urls);\n}\nexport { getBrandData, putBrandData, getPipelineList, getTrainingConfigurations, getAddons, postAddons, };\n","import girderRest from 'platform/web-girder/plugins/girder';\nfunction postProcess(folderId, skipJobs = false, skipTranscoding = false, additive = false, additivePrepend = '', set = undefined) {\n return girderRest.post(`dive_rpc/postprocess/${folderId}`, null, {\n params: {\n skipJobs, skipTranscoding, additive, additivePrepend, set,\n },\n });\n}\nfunction runPipeline(itemId, pipeline) {\n return girderRest.post('dive_rpc/pipeline', null, {\n params: {\n folderId: itemId,\n pipeline,\n },\n });\n}\nfunction runTraining(folderIds, pipelineName, config, annotatedFramesOnly, labelText) {\n return girderRest.post('dive_rpc/train', { folderIds, labelText }, {\n params: {\n pipelineName, config, annotatedFramesOnly,\n },\n });\n}\nfunction convertLargeImage(folderId) {\n return girderRest.post(`dive_rpc/convert_large_image/${folderId}`, null, {});\n}\nexport { convertLargeImage, postProcess, runPipeline, runTraining, };\n","import girderRest from 'platform/web-girder/plugins/girder';\nimport { postProcess } from './rpc.service';\nfunction getDataset(folderId) {\n return girderRest.get(`dive_dataset/${folderId}`);\n}\nasync function getDatasetList(limit, offset, sort, sortDir, shared, published) {\n const response = await girderRest.get('dive_dataset', {\n params: {\n limit,\n offset,\n sort,\n sortDir,\n shared,\n published,\n },\n });\n response.data.forEach((element) => {\n // eslint-disable-next-line no-param-reassign\n element._modelType = 'folder';\n });\n return response;\n}\nfunction getDatasetMedia(folderId) {\n return girderRest.get(`dive_dataset/${folderId}/media`);\n}\nfunction clone({ folderId, name, parentFolderId, revision, }) {\n return girderRest.post('dive_dataset', null, {\n params: {\n cloneId: folderId, parentFolderId, name, revision,\n },\n });\n}\nfunction makeViameFolder({ folderId, name, fps, type, }) {\n return girderRest.post('/folder', `metadata=${JSON.stringify({\n fps,\n type,\n })}`, {\n params: { parentId: folderId, name },\n });\n}\nasync function importAnnotationFile(parentId, path, file, additive = false, additivePrepend = '', set = undefined) {\n if (file === undefined) {\n return false;\n }\n const resp = await girderRest.post('/file', null, {\n params: {\n parentType: 'folder',\n parentId,\n name: file.name,\n size: file.size,\n mimeType: file.type,\n },\n });\n if (resp.status === 200) {\n const uploadResponse = await girderRest.post('file/chunk', file, {\n params: {\n uploadId: resp.data._id,\n offset: 0,\n },\n headers: { 'Content-Type': 'application/octet-stream' },\n });\n if (uploadResponse.status === 200) {\n const final = await postProcess(parentId, true, false, additive, additivePrepend, set);\n if (final.data.length > 1) {\n const warnings = final.data[1];\n return warnings;\n }\n return final.status === 200;\n }\n }\n return false;\n}\nfunction saveAttributes(folderId, args) {\n return girderRest.patch(`/dive_dataset/${folderId}/attributes`, args);\n}\nfunction saveAttributeTrackFilters(folderId, args) {\n return girderRest.patch(`/dive_dataset/${folderId}/attribute_track_filters`, args);\n}\nfunction saveMetadata(folderId, metadata) {\n return girderRest.patch(`/dive_dataset/${folderId}`, metadata);\n}\nfunction validateUploadGroup(names) {\n return girderRest.post('dive_dataset/validate_files', names);\n}\nexport { clone, getDataset, getDatasetList, getDatasetMedia, importAnnotationFile, makeViameFolder, saveAttributes, saveAttributeTrackFilters, saveMetadata, validateUploadGroup, };\n","import girderRest from 'platform/web-girder/plugins/girder';\nfunction deleteResources(resources) {\n const formData = new FormData();\n formData.set('resources', JSON.stringify({\n folder: resources\n .filter((resource) => resource._modelType === 'folder')\n .map((resource) => resource._id),\n item: resources\n .filter((resource) => resource._modelType === 'item')\n .map((resource) => resource._id),\n }));\n return girderRest.delete('resource', { data: formData });\n}\nfunction getItemsInFolder(folderId, limit) {\n return girderRest.get('item', {\n params: { folderId, limit },\n });\n}\nfunction getFolder(folderId) {\n return girderRest.get(`folder/${folderId}`);\n}\nfunction setUsePrivateQueue(userId, value = false) {\n return girderRest.put(`user/${userId}/use_private_queue`, null, {\n params: {\n privateQueueEnabled: value,\n },\n });\n}\nexport { deleteResources, getItemsInFolder, getFolder, setUsePrivateQueue, };\n","import girderRest from 'platform/web-girder/plugins/girder';\nasync function getTilesMetadata(itemId) {\n const { data } = await girderRest.get(`item/${itemId}/tiles/`);\n return data;\n}\nasync function getTiles(itemId, projection = '') {\n let url = `item/${itemId}/tiles`;\n if (projection !== '') {\n url = `${url}?projection=${encodeURIComponent(projection)}`;\n }\n const { data } = await girderRest.get(url);\n return data;\n}\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction getTileURL(itemId, x, y, level, query) {\n let url = `${girderRest.apiRoot}/item/${itemId}/tiles/zxy/${level}/${x}/${y}`;\n if (query) {\n const params = Object.keys(query).map((k) => `${encodeURIComponent(k)}=${encodeURIComponent(query[k])}`).join('&');\n url += `?${params}`;\n }\n return url;\n}\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nasync function getTileFrames(itemId, options) {\n const { data } = await girderRest.get(`/item/${itemId}/tiles/tile_frames/quad_info`, options);\n return data;\n}\nexport { getTilesMetadata, getTiles, getTileURL, getTileFrames, };\n","import girderRest from 'platform/web-girder/plugins/girder';\nexport * from './annotation.service';\nexport * from './configuration.service';\nexport * from './dataset.service';\nexport * from './girder.service';\nexport * from './rpc.service';\nexport * from './largeImage.service';\nexport function unwrap(func) {\n return async (...args) => (await func(...args)).data;\n}\nexport function getUri(config) {\n return girderRest.apiRoot.replace(/\\/*$/i, '/') + girderRest.getUri(config).replace(/^\\/*/, '');\n}\n","const ImageSequenceType = 'image-sequence';\nconst VideoType = 'video';\nconst MultiType = 'multi';\nconst LargeImageType = 'large-image';\nconst MediaTypes = {\n // friendly media type names\n [ImageSequenceType]: 'image sequence',\n [VideoType]: 'video',\n [MultiType]: 'multi',\n [LargeImageType]: 'tiled image',\n};\nconst DefaultVideoFPS = -1;\nconst FPSOptions = [\n { text: 1, value: 1 },\n { text: 5, value: 5 },\n { text: 10, value: 10 },\n { text: 15, value: 15 },\n { text: 24, value: 24 },\n { text: 25, value: 25 },\n { text: 30, value: 30 },\n { text: 50, value: 50 },\n { text: 60, value: 60 },\n { text: 'Video FPS', value: -1 },\n];\nconst itemsPerPageOptions = [20, 50, 100];\nconst websafeVideoTypes = [\n 'video/mp4',\n 'video/webm',\n];\nconst otherVideoTypes = [\n /* avi */\n 'video/avi',\n 'video/msvideo',\n 'video/x-msvideo',\n 'video/x-ms-wmv',\n /* mov */\n 'video/quicktime',\n /* mpeg */\n 'video/mpeg',\n 'video/x-mpeg',\n 'video/x-mpeq2a',\n /* ogg */\n 'video/ogg',\n /* flv */\n 'video/x-flv',\n];\nconst calibrationFileTypes = [\n 'npz',\n];\nconst fileVideoTypes = [\n 'mp4',\n 'webm',\n 'avi',\n 'mov',\n 'wmv',\n 'mpg',\n 'mpeg',\n 'mp2',\n 'ogg',\n 'flv',\n];\nconst largeImageTypes = [\n 'image/geotiff',\n 'image/tiff',\n 'image/x-tiff',\n 'image/nitf',\n 'image/ntf',\n];\nconst websafeImageTypes = [\n // 'image/apng',\n // 'image/bmp',\n 'image/gif',\n 'image/jpeg',\n 'image/png',\n // 'image/svg+xml',\n // 'image/webp',\n];\nconst otherImageTypes = [\n 'image/avif',\n 'image/tiff',\n 'image/bmp',\n 'image/x-windows-bmp',\n 'image/sgi',\n 'image/x-portable-graymap',\n];\nconst inputAnnotationTypes = [\n 'application/json',\n 'text/csv',\n 'text/yaml',\n 'application/x-yaml',\n];\nconst inputAnnotationFileTypes = [\n 'yml',\n 'yaml',\n 'json',\n 'csv',\n];\nconst listFileTypes = [\n 'txt',\n];\nconst zipFileTypes = [\n 'zip',\n];\nconst stereoPipelineMarker = 'measurement';\nconst multiCamPipelineMarkers = ['2-cam', '3-cam'];\nconst JsonMetaRegEx = /^.*\\.?(meta|config)\\.json$/;\nfunction simplifyTrainingName(item) {\n return item.replace('.conf', '');\n}\nexport { DefaultVideoFPS, ImageSequenceType, VideoType, LargeImageType, MediaTypes, MultiType, FPSOptions, itemsPerPageOptions, calibrationFileTypes, fileVideoTypes, otherImageTypes, otherVideoTypes, websafeImageTypes, websafeVideoTypes, inputAnnotationTypes, largeImageTypes, inputAnnotationFileTypes, listFileTypes, zipFileTypes, stereoPipelineMarker, multiCamPipelineMarkers, JsonMetaRegEx, simplifyTrainingName, };\n","import { calibrationFileTypes, inputAnnotationFileTypes, inputAnnotationTypes, otherImageTypes, otherVideoTypes, websafeImageTypes, websafeVideoTypes, zipFileTypes, } from 'dive-common/constants';\n/**\n * If the current route is representable by a LocationType, return it.\n * _modelType comes from the router spec and must be converted into LocationType\n */\nfunction getLocationFromRoute(route) {\n const { params } = route;\n if (['root', 'collections', 'users'].indexOf(params.routeType) >= 0) {\n return { type: params.routeType };\n }\n if (['user', 'folder', 'collection'].indexOf(params.routeType) >= 0) {\n return {\n _modelType: params.routeType,\n _id: params.routeId,\n };\n }\n return null;\n}\nfunction getRouteFromLocation(location) {\n if (!location) {\n return '/';\n }\n if ('type' in location && !('_modelType' in location)) {\n return `/${location.type}`;\n }\n return `/${location._modelType}/${location._id}`;\n}\nasync function openFromDisk(datasetType) {\n const input = document.createElement('input');\n input.type = 'file';\n const baseTypes = inputAnnotationFileTypes.map((item) => `.${item}`);\n if (!['calbiration', 'annotation', 'zip'].includes(datasetType)) {\n input.multiple = true;\n }\n if (datasetType === 'image-sequence') {\n input.accept = baseTypes.concat(websafeImageTypes).concat(otherImageTypes).join(',');\n }\n else if (datasetType === 'video') {\n input.accept = baseTypes.concat(websafeVideoTypes).concat(otherVideoTypes).join(',');\n }\n else if (datasetType === 'calibration') {\n input.accept = calibrationFileTypes.map((item) => `.${item}`).join(',');\n }\n else if (datasetType === 'annotation') {\n input.accept = inputAnnotationTypes\n .concat(inputAnnotationFileTypes.map((item) => `.${item}`)).join(',');\n }\n else if (datasetType === 'zip') {\n input.accept = zipFileTypes.map((item) => `.${item}`).join(',');\n }\n return new Promise(((resolve, reject) => {\n input.onchange = (event) => {\n if (event) {\n const { files } = event.target;\n if (files) {\n const fileList = Array.from(files);\n if (datasetType === 'annotation') {\n if (!fileList.every((item) => inputAnnotationTypes.includes(item.type))) {\n reject(new Error('File Types did not match JSON or CSV'));\n }\n }\n const response = {\n canceled: !files.length,\n fileList,\n filePaths: fileList.map((item) => item.name),\n };\n return resolve(response);\n }\n }\n return resolve({\n canceled: true,\n filePaths: [],\n });\n };\n input.click();\n }));\n}\nexport { getLocationFromRoute, getRouteFromLocation, openFromDisk, };\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=5f85cffd\"\nimport script from \"./App.vue?vue&type=script&lang=ts\"\nexport * from \"./App.vue?vue&type=script&lang=ts\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=5f85cffd&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-progress-linear',{style:({ visibility: _vm.loading ? 'visible' : 'hidden' }),attrs:{\"indeterminate\":_vm.loading,\"height\":\"6\"}}),_c('v-container',{attrs:{\"fill-height\":\"\",\"fluid\":_vm.$vuetify.breakpoint.mdAndDown}},[_c('v-row',{staticClass:\"fill-height nowraptable\"},[_c('v-col',{attrs:{\"cols\":\"3\"}},[_c('DataDetails',{attrs:{\"value\":_vm.selected.length ? _vm.selected : [_vm.location]},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_c('div',{staticClass:\"pa-2\"},[_c('Clone',_vm._b({attrs:{\"dataset-id\":_vm.locationInputs.length === 1 ? _vm.locationInputs[0] : null}},'Clone',{ buttonOptions: _vm.buttonOptions, menuOptions: _vm.menuOptions },false)),_c('run-training-menu',_vm._b({attrs:{\"selected-dataset-ids\":_vm.locationInputs}},'run-training-menu',{\n buttonOptions:\n { ..._vm.buttonOptions, disabled: _vm.includesLargeImage },\n menuOptions: _vm.menuOptions,\n },false)),_c('run-pipeline-menu',_vm._b({attrs:{\"selected-dataset-ids\":_vm.locationInputs,\"running-pipelines\":_vm.runningPipelines}},'run-pipeline-menu',{\n buttonOptions:\n { ..._vm.buttonOptions, disabled: _vm.includesLargeImage },\n menuOptions: _vm.menuOptions,\n },false)),_c('export',_vm._b({attrs:{\"dataset-ids\":_vm.locationInputs}},'export',{ buttonOptions: _vm.buttonOptions, menuOptions: _vm.menuOptions },false)),_c('v-btn',_vm._b({attrs:{\"disabled\":!_vm.selected.length,\"color\":\"error\"},on:{\"click\":_vm.deleteSelection}},'v-btn',{ ..._vm.buttonOptions },false),[_c('v-icon',[_vm._v(\" mdi-delete \")]),_c('span',{staticClass:\"pl-1\"},[_vm._v(\" Delete \")])],1)],1)]},proxy:true}])})],1),_c('v-col',{attrs:{\"cols\":9}},[_c('v-toolbar',{staticClass:\"mb-4\",attrs:{\"dense\":\"\",\"rounded\":\"\"}},[_c('ShareTab',{attrs:{\"value\":0}})],1),_c('router-view'),(_vm.selectedDescription)?_c('v-card',{staticClass:\"my-4\"},[_c('GirderMarkdown',{staticClass:\"pa-3\",attrs:{\"text\":_vm.selectedDescription}})],1):_vm._e()],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-menu',_vm._b({attrs:{\"max-width\":\"230\",\"close-on-content-click\":false},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: menuOn }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\",\"disabled\":_vm.menuOptions.offsetX},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: tooltipOn }){return [_c('v-btn',_vm._g(_vm._b({attrs:{\"disabled\":_vm.pipelinesNotRunnable || _vm.buttonOptions.disabled,\"color\":_vm.pipelinesCurrentlyRunning ? 'warning' : _vm.buttonOptions.color}},'v-btn',_vm.buttonOptions,false),{ ...tooltipOn, ...menuOn }),[_c('v-icon',[_vm._v(\" mdi-pipe \")]),_c('span',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.$vuetify.breakpoint.mdAndDown || _vm.buttonOptions.block),expression:\"!$vuetify.breakpoint.mdAndDown || buttonOptions.block\"}],staticClass:\"pl-1\"},[_vm._v(\" Run pipeline \")]),_c('v-spacer'),(_vm.menuOptions.right)?_c('v-icon',[_vm._v(\" mdi-chevron-right \")]):_vm._e()],1)]}}],null,true)},[(!_vm.pipelinesCurrentlyRunning)?_c('span',[_vm._v(\"Run CV algorithm pipelines on this data\")]):_c('span',[_vm._v(\"Pipeline is Currently running \")])])]}}])},'v-menu',_vm.menuOptions,false),[[(_vm.pipelinesCurrentlyRunning)?_c('v-card',[_c('v-card-title',[_vm._v(\" Pipeline Running \")]),_c('v-card-text',[_vm._v(\" Data cannot be edited while a pipeline is queued. Pipelines produce output that will replace the existing annotations. You can check the status of your job or cancel it \")]),_c('v-row',{staticClass:\"pb-1\"},[(_vm.singlePipelineValue && _vm.singlePipelineValue !== true)?_c('v-btn',{staticClass:\"ma-auto\",attrs:{\"large\":\"\",\"depressed\":\"\",\"href\":_vm.singlePipelineValue,\"target\":\"_blank\",\"color\":\"info\"}},[_vm._v(\" View Running Job \")]):_c('v-btn',{staticClass:\"ma-auto\",attrs:{\"large\":\"\",\"depressed\":\"\",\"to\":\"/jobs\",\"color\":\"info\"}},[_vm._v(\" View Running Job \")])],1)],1):(_vm.readOnlyMode)?_c('v-card',[_c('v-card-title',[_vm._v(\" Read only Mode\")]),_c('v-card-text',[_vm._v(\" This Dataset is in ReadOnly Mode. You cannot run pipelines on this dataset. \")])],1):(_vm.includesLargeImage)?_c('v-card',[_c('v-card-title',[_vm._v(\" Large Image\")]),_c('v-card-text',[_vm._v(\" Pipelines are not supported yet for Large Images. \")])],1):(_vm.pipelines)?_c('v-card',{attrs:{\"outlined\":\"\"}},[_c('v-card-title',[_vm._v(\" VIAME Pipelines \")]),_c('v-card-text',{staticClass:\"pb-0\"},[_vm._v(\" Choose a pipeline type. Check the \"),_c('a',{attrs:{\"href\":\"https://kitware.github.io/dive/Pipeline-Documentation/\",\"target\":\"_blank\"}},[_vm._v(\"docs\")]),_vm._v(\" for more information about these options. \")]),_c('v-row',{staticClass:\"px-3\"},_vm._l((Object.keys(_vm.pipelines)),function(pipeType){return _c('v-col',{key:pipeType,attrs:{\"cols\":\"12\"}},[_c('v-menu',{key:pipeType,attrs:{\"offset-x\":\"\",\"right\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._g({attrs:{\"depressed\":\"\",\"block\":\"\"}},on),[_vm._v(\" \"+_vm._s(_vm.pipeTypeDisplay(pipeType))+\" \"),_c('v-icon',{staticClass:\"ml-2\",attrs:{\"right\":\"\",\"color\":\"accent\"}},[_vm._v(\" mdi-menu-right \")])],1)]}}],null,true)},[_c('v-list',{staticStyle:{\"overflow-y\":\"auto\",\"max-height\":\"85vh\"},attrs:{\"dense\":\"\",\"outlined\":\"\"}},_vm._l((_vm.pipelines[pipeType].pipes),function(pipeline){return _c('v-list-item',{key:`${pipeline.name}-${pipeline.pipe}`,on:{\"click\":function($event){return _vm.runPipelineOnSelectedItem(pipeline)}}},[_c('v-list-item-title',{staticClass:\"font-weight-regular\"},[_vm._v(\" \"+_vm._s(pipeline.name)+\" \")])],1)}),1)],1)],1)}),1)],1):_vm._e()]],2),_c('JobLaunchDialog',{attrs:{\"value\":_vm.jobState.count > 0,\"loading\":_vm.jobState.loading,\"error\":_vm.jobState.error,\"message\":_vm.successMessage},on:{\"close\":_vm.dismissLaunchDialog}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-dialog',{attrs:{\"value\":_vm.value,\"max-width\":\"400\"},on:{\"input\":function($event){!$event && _vm.$emit('close')}}},[_c('v-card',{attrs:{\"outlined\":\"\"}},[_c('v-card-title',[_vm._v(\" Job Launch \")]),_c('v-card-text',{staticClass:\"d-flex justify-center\"},[(_vm.loading)?_c('v-progress-circular',{attrs:{\"indeterminate\":\"\",\"size\":\"60\",\"width\":\"9\",\"color\":\"primary\"}}):(_vm.error)?_c('v-alert',{attrs:{\"dense\":\"\",\"type\":\"error\"}},[_vm._v(\" \"+_vm._s(_vm.error)+\" \")]):(_vm.message)?_c('v-alert',{attrs:{\"dense\":\"\",\"type\":\"success\"}},[_vm._v(\" \"+_vm._s(_vm.message)+\" \")]):_vm._e()],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"to\":{ name: 'jobs' },\"depressed\":\"\"}},[_vm._v(\" View All Jobs \"),_c('v-icon',{staticClass:\"pl-1\"},[_vm._v(\" mdi-format-list-checks \")])],1),_c('v-btn',{attrs:{\"color\":_vm.error ? 'error' : 'primary',\"disabled\":_vm.loading},on:{\"click\":function($event){return _vm.$emit('close')}}},[_vm._v(\" \"+_vm._s(_vm.error ? 'OK' : 'Done')+\" \")])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./JobLaunchDialog.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./JobLaunchDialog.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./JobLaunchDialog.vue?vue&type=template&id=c94c5d62\"\nimport script from \"./JobLaunchDialog.vue?vue&type=script&lang=ts\"\nexport * from \"./JobLaunchDialog.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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 { watch, reactive } from 'vue';\nimport { cloneDeep, merge } from 'lodash';\nconst defaultSettings = {\n trackSettings: {\n newTrackSettings: {\n mode: 'Track',\n type: 'unknown',\n modeSettings: {\n Track: {\n autoAdvanceFrame: false,\n interpolate: false,\n },\n Detection: {\n continuous: false,\n },\n },\n },\n deletionSettings: {\n promptUser: true,\n },\n },\n groupSettings: {\n newGroupSettings: {\n type: 'unknown',\n },\n },\n typeSettings: {\n showEmptyTypes: false,\n lockTypes: false,\n },\n rowsPerPage: 20,\n annotationFPS: 10,\n annotatorPreferences: {\n trackTails: {\n before: 20,\n after: 10,\n },\n },\n};\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction hydrate(obj) {\n return merge(cloneDeep(defaultSettings), obj);\n}\n//Load default settings initially\nconst storedSettings = JSON.parse(localStorage.getItem('Settings') || '{}');\nconst clientSettings = reactive(hydrate(storedSettings));\nfunction saveSettings() {\n localStorage.setItem('Settings', JSON.stringify(clientSettings));\n}\nexport default function setup(allTypes) {\n // If a type is deleted, reset the default new track type to unknown\n watch(allTypes, (newval) => {\n if (newval.indexOf(clientSettings.trackSettings.newTrackSettings.type) === -1) {\n clientSettings.trackSettings.newTrackSettings.type = 'unknown';\n }\n });\n}\nwatch(clientSettings, saveSettings);\nexport { clientSettings, };\n","import { computed, reactive, ref, onBeforeUnmount, toRef, } from 'vue';\nimport { uniq, flatMapDeep, flattenDeep } from 'lodash';\nimport { updateBounds } from 'vue-media-annotator/utils';\nimport { usePrompt } from 'dive-common/vue-utilities/prompt-service';\nimport { clientSettings } from 'dive-common/store/settings';\n/* default to index + 1\n * call with -1 to select previous, or pass any other delta\n */\nfunction selectNext(filtered, selected, delta = 1) {\n if (filtered.length > 0) {\n if (selected === null) {\n // if no track is selected, return the first trackId\n return filtered[0].id;\n }\n // return the trackId by the delta offset if it exists\n const index = filtered.findIndex((t) => t.id === selected);\n const newIndex = index + delta;\n if (newIndex >= 0 && newIndex < filtered.length) {\n // if we are not at the end\n return filtered[newIndex].id;\n }\n }\n //Return null if no other conditions are met\n return null;\n}\n/**\n * The point of this composition function is to define and manage the transition betwee\n * different UI states within the program. States and state transitions can be modified\n * based on settings, blocked if it tries to go to incompatible state or provide feedback\n *\n * Mostly allows us to inject additional logic into transitions.\n */\nexport default function useModeManager({ cameraStore, trackFilterControls, groupFilterControls, aggregateController, readonlyState, recipes, }) {\n let creating = false;\n const { prompt } = usePrompt();\n const annotationModes = reactive({\n visible: ['rectangle', 'Polygon', 'LineString', 'text'],\n editing: 'rectangle',\n });\n const trackSettings = toRef(clientSettings, 'trackSettings');\n const groupSettings = toRef(clientSettings, 'groupSettings');\n const selectedCamera = ref('singleCam');\n const linkingState = ref(false);\n const linkingTrack = ref(null);\n const linkingCamera = ref('');\n // Meaning of this value varies based on the editing mode. When in\n // polygon edit mode, this corresponds to a polygon point. Ditto in line mode.\n const selectedFeatureHandle = ref(-1);\n //The Key of the selected type, for now mostly ''\n const selectedKey = ref('');\n // the currently selected Track\n const selectedTrackId = ref(null);\n // the currently editing Group\n const editingGroupId = ref(null);\n // boolean whether or not selectedTrackId is also being edited.\n const editingTrack = ref(false);\n // which type is currently being edited, if any\n const editingMode = computed(() => editingTrack.value && annotationModes.editing);\n const editingCanary = ref(false);\n // Track Multi-select state\n const multiSelectList = ref([]);\n const multiSelectActive = computed(() => multiSelectList.value.length > 0);\n const _filteredTracks = computed(() => trackFilterControls.filteredAnnotations.value.map((filtered) => filtered.annotation));\n const _filteredGroups = computed(() => groupFilterControls.filteredAnnotations.value.map((filtered) => filtered.annotation));\n const selectNextTrack = (delta = 1) => selectNext(_filteredTracks.value, selectedTrackId.value, delta);\n const selectNextGroup = (delta = 1) => selectNext(_filteredGroups.value, editingGroupId.value, delta);\n function selectTrack(trackId, edit = false) {\n selectedTrackId.value = trackId;\n if (edit && readonlyState.value) {\n prompt({ title: 'Read Only Mode', text: 'This Dataset is in Read Only mode, no edits can be made.' });\n }\n else {\n editingTrack.value = trackId !== null && edit;\n }\n }\n /** end */\n function _depend() {\n return editingCanary.value;\n }\n function _nudgeEditingCanary() {\n editingCanary.value = !editingCanary.value;\n }\n // What is occuring in editing mode\n const editingDetails = computed(() => {\n var _a, _b;\n _depend();\n if (editingMode.value && selectedTrackId.value !== null) {\n const { frame } = aggregateController.value;\n try {\n const track = cameraStore.getPossibleTrack(selectedTrackId.value, selectedCamera.value);\n if (track) {\n const [feature] = track.getFeature(frame.value);\n if (feature) {\n if (!((_a = feature === null || feature === void 0 ? void 0 : feature.bounds) === null || _a === void 0 ? void 0 : _a.length)) {\n return 'Creating';\n }\n if (annotationModes.editing === 'rectangle') {\n return 'Editing';\n }\n return (((_b = feature.geometry) === null || _b === void 0 ? void 0 : _b.features.filter((item) => item.geometry.type === annotationModes.editing).length) ? 'Editing' : 'Creating');\n }\n return 'Creating';\n }\n }\n catch (_c) {\n // No Track for this camera\n return 'disabled';\n }\n }\n return 'disabled';\n });\n // which types are currently visible, always including the editingType\n const visibleModes = computed(() => (uniq(annotationModes.visible.concat(editingMode.value || []))));\n /**\n * Figure out if a new feature should enable interpolation\n * based on current state and the result of canInterolate.\n */\n function _shouldInterpolate(canInterpolate) {\n // if this is a track, then whether to interpolate\n // is determined by newTrackSettings (if new track)\n // or canInterpolate (if existing track)\n const interpolateTrack = creating\n ? trackSettings.value.newTrackSettings.modeSettings.Track.interpolate\n : canInterpolate;\n // if detection, interpolate is always false\n return trackSettings.value.newTrackSettings.mode === 'Detection'\n ? false\n : interpolateTrack;\n }\n function seekNearest(track) {\n // Seek to the nearest point in the track.\n const { frame } = aggregateController.value;\n if (frame.value < track.begin) {\n aggregateController.value.seek(track.begin);\n }\n else if (frame.value > track.end) {\n aggregateController.value.seek(track.end);\n }\n }\n async function _setLinkingTrack(trackId) {\n //Confirm that there is no track for other cameras.\n const trackList = cameraStore.getTrackAll(trackId);\n if (trackList.length > 1) {\n prompt({\n title: 'Linking Error',\n text: [`TrackId: ${trackId} has tracks on other cameras besides the selected camera ${linkingCamera.value}`,\n `You need to select a track that only exists on camera: ${linkingCamera.value} `,\n 'You can split of the track you were trying to select by clicking OK and hitting Escape to exit Linking Mode and using the split tool',\n ],\n positiveButton: 'OK',\n });\n }\n else {\n linkingTrack.value = trackId;\n }\n }\n function _selectKey(key) {\n if (typeof key === 'string') {\n selectedKey.value = key;\n }\n else {\n selectedKey.value = '';\n }\n }\n function handleSelectFeatureHandle(i, key = '') {\n if (i !== selectedFeatureHandle.value) {\n selectedFeatureHandle.value = i;\n }\n else {\n selectedFeatureHandle.value = -1;\n }\n _selectKey(key);\n }\n function handleSelectTrack(trackId, edit = false) {\n var _a;\n /**\n * If creating mode and editing and selectedTrackId is the same,\n * don't kick out of creating mode. This happens when moving between\n * rect/poly/line during continuous creation.\n */\n if (!(creating && edit && trackId === selectedTrackId.value)) {\n creating = false;\n }\n /**\n * If merge is in progress, add selected tracks to the merge list\n */\n if (trackId !== null && multiSelectActive.value) {\n multiSelectList.value = Array.from((new Set(multiSelectList.value).add(trackId)));\n /**\n * If editing group, then the newly selected track should be added to the group\n */\n if (editingGroupId.value !== null && !edit) {\n const track = cameraStore.getAnyTrack(trackId);\n const groupStore = (_a = cameraStore.camMap.value.get(selectedCamera.value)) === null || _a === void 0 ? void 0 : _a.groupStore;\n if (groupStore) {\n groupStore.get(editingGroupId.value).addMembers({\n [trackId]: { ranges: [[track.begin, track.end]] },\n });\n }\n }\n else if (edit) {\n editingGroupId.value = null;\n multiSelectList.value = [];\n }\n }\n else if (linkingState.value) {\n // Only use the first non-null track with is clicked on to link\n if (trackId !== null) {\n _setLinkingTrack(trackId);\n }\n return;\n }\n /* Do not allow editing when merge is in progress */\n selectTrack(trackId, edit && !multiSelectActive.value);\n }\n /** Put UI into group editing mode. */\n function handleGroupEdit(groupId) {\n var _a;\n creating = false;\n editingTrack.value = false;\n editingGroupId.value = groupId;\n if (groupId !== null) {\n /** When moving into a group edit mode, multi-select all track members */\n const groupStore = (_a = cameraStore.camMap.value.get(selectedCamera.value)) === null || _a === void 0 ? void 0 : _a.groupStore;\n if (groupStore) {\n const group = groupStore.get(groupId);\n multiSelectList.value = group.memberIds;\n selectedTrackId.value = null;\n seekNearest(cameraStore.getAnyTrack(multiSelectList.value[0]));\n }\n }\n }\n //Handles deselection or hitting escape including while editing\n function handleEscapeMode() {\n var _a;\n if (selectedTrackId.value !== null) {\n const track = cameraStore.getPossibleTrack(selectedTrackId.value, selectedCamera.value);\n if (track && track.begin === track.end) {\n const features = track.getFeature(track.begin);\n // If no features exist we remove the empty track\n if (!features.filter((item) => item !== null).length) {\n const trackStore = (_a = cameraStore.camMap.value.get(selectedCamera.value)) === null || _a === void 0 ? void 0 : _a.trackStore;\n if (trackStore) {\n trackStore.remove(selectedTrackId.value);\n }\n }\n }\n }\n linkingState.value = false;\n linkingCamera.value = '';\n linkingTrack.value = null;\n multiSelectList.value = [];\n handleGroupEdit(null);\n handleSelectTrack(null, false);\n }\n function handleAddTrackOrDetection(overrideTrackId) {\n var _a;\n // Handles adding a new track with the NewTrack Settings\n handleEscapeMode();\n const { frame } = aggregateController.value;\n let trackType = trackSettings.value.newTrackSettings.type;\n if (overrideTrackId !== undefined) {\n const track = cameraStore.getAnyPossibleTrack(overrideTrackId);\n if (track !== undefined) {\n // eslint-disable-next-line prefer-destructuring\n trackType = track.confidencePairs[0][0];\n }\n }\n else {\n // eslint-disable-next-line no-param-reassign\n overrideTrackId = cameraStore.getNewTrackId();\n }\n const trackStore = (_a = cameraStore.camMap.value.get(selectedCamera.value)) === null || _a === void 0 ? void 0 : _a.trackStore;\n if (trackStore) {\n const newTrackId = trackStore.add(frame.value, trackType, selectedTrackId.value || undefined, overrideTrackId).id;\n selectTrack(newTrackId, true);\n creating = true;\n return newTrackId;\n }\n throw Error(`Could not find trackStore for Camera: ${selectedCamera.value}`);\n }\n function newTrackSettingsAfterLogic(addedTrack) {\n // Default settings which are updated by the TrackSettings component\n let newCreatingValue = false; // by default, disable creating at the end of this function\n if (creating) {\n if (addedTrack && trackSettings.value.newTrackSettings !== null) {\n if (trackSettings.value.newTrackSettings.mode === 'Track'\n && trackSettings.value.newTrackSettings.modeSettings.Track.autoAdvanceFrame) {\n aggregateController.value.nextFrame();\n newCreatingValue = true;\n }\n else if (trackSettings.value.newTrackSettings.mode === 'Detection') {\n if (trackSettings.value.newTrackSettings.modeSettings.Detection.continuous) {\n handleAddTrackOrDetection(cameraStore.getNewTrackId());\n newCreatingValue = true; // don't disable creating mode\n }\n }\n }\n }\n _nudgeEditingCanary();\n creating = newCreatingValue;\n }\n function handleUpdateRectBounds(frameNum, flickNum, bounds) {\n if (selectedTrackId.value !== null) {\n const track = cameraStore.getPossibleTrack(selectedTrackId.value, selectedCamera.value);\n if (track) {\n // Determines if we are creating a new Detection\n const { interpolate } = track.canInterpolate(frameNum);\n track.setFeature({\n frame: frameNum,\n flick: flickNum,\n bounds,\n keyframe: true,\n interpolate: _shouldInterpolate(interpolate),\n });\n newTrackSettingsAfterLogic(track);\n }\n }\n }\n function handleUpdateGeoJSON(eventType, frameNum, flickNum, \n // Type alias this\n data, key, preventInterrupt) {\n /**\n * Declare aggregate update collector. Each recipe\n * will have the opportunity to modify this object.\n */\n const update = {\n // Geometry data to be applied to the feature\n geoJsonFeatureRecord: {},\n // Ploygons to be unioned with existing bounds (update)\n union: [],\n // Polygons to be unioned without existing bounds (overwrite)\n unionWithoutBounds: [],\n // If the editor mode should change types\n newType: undefined,\n // If the selected key should change\n newSelectedKey: undefined,\n // If the recipe has completed\n done: [],\n };\n if (selectedTrackId.value !== null) {\n const track = cameraStore.getPossibleTrack(selectedTrackId.value, selectedCamera.value);\n if (track) {\n // newDetectionMode is true if there's no keyframe on frameNum\n const { features, interpolate } = track.canInterpolate(frameNum);\n const [real] = features;\n // Give each recipe the opportunity to make changes\n recipes.forEach((recipe) => {\n const changes = recipe.update(eventType, frameNum, track, [data], key);\n // Prevent key conflicts among recipes\n Object.keys(changes.data).forEach((key_) => {\n if (key_ in update.geoJsonFeatureRecord) {\n throw new Error(`Recipe ${recipe.name} tried to overwrite key ${key_} when it was already set`);\n }\n });\n Object.assign(update.geoJsonFeatureRecord, changes.data);\n // Collect unions\n update.union.push(...changes.union);\n update.unionWithoutBounds.push(...changes.unionWithoutBounds);\n update.done.push(changes.done);\n // Prevent more than 1 recipe from changing a given mode/key\n if (changes.newType) {\n if (update.newType) {\n throw new Error(`Recipe ${recipe.name} tried to modify type when it was already set`);\n }\n update.newType = changes.newType;\n }\n if (changes.newSelectedKey) {\n if (update.newSelectedKey) {\n throw new Error(`Recipe ${recipe.name} tried to modify selectedKey when it was already set`);\n }\n update.newSelectedKey = changes.newSelectedKey;\n }\n });\n // somethingChanged indicates whether there will need to be a redraw\n // of the geometry currently displayed\n const somethingChanged = (update.union.length !== 0\n || update.unionWithoutBounds.length !== 0\n || Object.keys(update.geoJsonFeatureRecord).length !== 0);\n // If a drawable changed, but we aren't changing modes\n // prevent an interrupt within EditAnnotationLayer\n if (somethingChanged\n && !update.newSelectedKey\n && !update.newType\n && preventInterrupt) {\n preventInterrupt();\n }\n else {\n // Otherwise, one of these state changes will trigger an interrupt.\n if (update.newSelectedKey) {\n selectedKey.value = update.newSelectedKey;\n }\n if (update.newType) {\n annotationModes.editing = update.newType;\n recipes.forEach((r) => r.deactivate());\n }\n }\n // Update the state of the track in the trackstore.\n if (somethingChanged) {\n track.setFeature({\n frame: frameNum,\n flick: flickNum,\n keyframe: true,\n bounds: updateBounds(real === null || real === void 0 ? void 0 : real.bounds, update.union, update.unionWithoutBounds),\n interpolate,\n }, flatMapDeep(update.geoJsonFeatureRecord, (geomlist, key_) => geomlist.map((geom) => ({\n type: geom.type,\n geometry: geom.geometry,\n properties: { key: key_ },\n }))));\n // Only perform \"initialization\" after the first shape.\n // Treat this as a completed annotation if eventType is editing\n // Or none of the recieps reported that they were unfinished.\n if (eventType === 'editing' || update.done.every((v) => v !== false)) {\n newTrackSettingsAfterLogic(track);\n }\n }\n }\n else {\n throw new Error(`${selectedTrackId.value} missing from trackMap`);\n }\n }\n else {\n throw new Error('Cannot call handleUpdateGeojson without a selected Track ID');\n }\n }\n /* If any recipes are active, allow them to remove a point */\n function handleRemovePoint() {\n if (selectedTrackId.value !== null && selectedFeatureHandle.value !== -1) {\n const track = cameraStore.getPossibleTrack(selectedTrackId.value, selectedCamera.value);\n if (track) {\n recipes.forEach((r) => {\n if (r.active.value) {\n const { frame } = aggregateController.value;\n r.deletePoint(frame.value, track, selectedFeatureHandle.value, selectedKey.value, annotationModes.editing);\n }\n });\n }\n }\n handleSelectFeatureHandle(-1);\n }\n /* If any recipes are active, remove the geometry they added */\n function handleRemoveAnnotation() {\n if (selectedTrackId.value !== null) {\n const track = cameraStore.getPossibleTrack(selectedTrackId.value, selectedCamera.value);\n if (track) {\n const { frame } = aggregateController.value;\n recipes.forEach((r) => {\n if (r.active.value) {\n r.delete(frame.value, track, selectedKey.value, annotationModes.editing);\n }\n });\n _nudgeEditingCanary();\n }\n }\n }\n /**\n * Unstage a track from the merge list\n */\n function handleUnstageFromMerge(trackIds) {\n var _a;\n multiSelectList.value = multiSelectList.value.filter((trackId) => !trackIds.includes(trackId));\n /* Unselect a track when it is unstaged */\n if (selectedTrackId.value !== null && trackIds.includes(selectedTrackId.value)) {\n handleSelectTrack(null);\n }\n /** Remove members from group if group editing */\n if (editingGroupId.value !== null) {\n const groupStore = (_a = cameraStore.camMap.value.get(selectedCamera.value)) === null || _a === void 0 ? void 0 : _a.groupStore;\n if (groupStore) {\n const group = groupStore.annotationMap.get(editingGroupId.value);\n if (group)\n group.removeMembers(trackIds);\n }\n }\n /** Exit group editing mode if last track is removed */\n if (multiSelectList.value.length === 0) {\n handleEscapeMode();\n }\n }\n async function handleRemoveTrack(trackIds, forcePromptDisable = false, cameraName = '') {\n /* Figure out next track ID */\n const maybeNextTrackId = selectNextTrack(1);\n const previousOrNext = maybeNextTrackId !== null\n ? maybeNextTrackId\n : selectNextTrack(-1);\n /* Delete track */\n if (!forcePromptDisable && trackSettings.value.deletionSettings.promptUser) {\n const trackStrings = trackIds.map((track) => track.toString());\n const groups = flattenDeep(trackIds.map((trackId) => cameraStore.lookupGroups(trackId)));\n const text = (['Would you like to delete the following tracks:']).concat(trackStrings);\n if (groups.length > 0) {\n text.push('');\n text.push(`This track will be removed from ${groups.length} groups.`);\n }\n text.push('');\n text.push('This setting can be changed under the Track Settings');\n const result = await prompt({\n title: 'Delete Confirmation',\n text,\n positiveButton: 'OK',\n negativeButton: 'Cancel',\n confirm: true,\n });\n if (!result) {\n return;\n }\n }\n trackIds.forEach((trackId) => {\n cameraStore.remove(trackId, cameraName);\n });\n handleUnstageFromMerge(trackIds);\n selectTrack(previousOrNext, false);\n }\n /** Toggle editing mode for track */\n function handleTrackEdit(trackId) {\n const track = cameraStore.getPossibleTrack(trackId, selectedCamera.value);\n if (track) {\n seekNearest(track);\n const editing = trackId === selectedTrackId.value ? (!editingTrack.value) : true;\n handleSelectTrack(trackId, editing);\n }\n else if (cameraStore.getAnyTrack(trackId) !== undefined) {\n //track exists in other cameras we create in the current map using override\n handleAddTrackOrDetection(trackId);\n const camTrack = cameraStore.getPossibleTrack(trackId, selectedCamera.value);\n // now that we have a new track we select it for editing\n if (camTrack) {\n const editing = trackId === selectedTrackId.value;\n handleSelectTrack(trackId, editing);\n }\n }\n }\n function handleTrackClick(trackId) {\n const track = cameraStore.getTracksMerged(trackId);\n seekNearest(track);\n handleSelectTrack(trackId, editingTrack.value);\n }\n function handleSelectNext(delta) {\n const newTrack = selectNextTrack(delta);\n /** Only allow selectNext when not in group editing mode. */\n if (newTrack !== null && editingGroupId.value === null) {\n handleSelectTrack(newTrack, false);\n seekNearest(cameraStore.getAnyTrack(newTrack));\n }\n }\n function handleSetAnnotationState({ visible, editing, key, recipeName, }) {\n if (visible) {\n annotationModes.visible = visible;\n }\n if (editing) {\n annotationModes.editing = editing;\n _selectKey(key);\n handleSelectTrack(selectedTrackId.value, true);\n recipes.forEach((r) => {\n if (recipeName !== r.name) {\n r.deactivate();\n }\n });\n }\n }\n /**\n * Merge: Enabled whenever there are candidates in the merge list\n */\n function handleToggleMerge() {\n if (!multiSelectActive.value && selectedTrackId.value !== null) {\n /* If no merge in progress and there is a selected track id */\n multiSelectList.value = [selectedTrackId.value];\n /* no editing in merge mode */\n selectTrack(selectedTrackId.value, false);\n }\n else {\n multiSelectList.value = [];\n handleGroupEdit(null);\n }\n return multiSelectList.value;\n }\n /**\n * Merge: Commit the multi-select list to merge\n */\n function handleCommitMerge() {\n if (multiSelectList.value.length >= 2) {\n const track = cameraStore.getTrack(multiSelectList.value[0], selectedCamera.value);\n const otherTrackIds = multiSelectList.value.slice(1);\n track.merge(otherTrackIds.map((trackId) => cameraStore.getTrack(trackId, selectedCamera.value)));\n handleRemoveTrack(otherTrackIds, true);\n handleToggleMerge();\n handleSelectTrack(track.id, false);\n }\n }\n function handleStartLinking(camera) {\n if (!linkingState.value && selectedTrackId.value !== null) {\n linkingState.value = true;\n if (cameraStore.camMap.value.has(camera)) {\n linkingCamera.value = camera;\n }\n else {\n throw Error(`Camera: ${camera} does not exist in the system for linking`);\n }\n }\n else if (selectedTrackId.value === null) {\n throw Error('Cannot start Linking without a track selected');\n }\n }\n function handleStopLinking() {\n linkingState.value = false;\n linkingTrack.value = null;\n linkingCamera.value = '';\n }\n /**\n * Group: Add the currently selected track to a new group and\n * enter group editing mode.\n */\n function handleAddGroup() {\n var _a;\n if (selectedTrackId.value !== null) {\n const members = [cameraStore.getTrack(selectedTrackId.value, selectedCamera.value)];\n const groupStore = (_a = cameraStore.camMap.value.get(selectedCamera.value)) === null || _a === void 0 ? void 0 : _a.groupStore;\n if (groupStore) {\n const newGrp = groupStore.add(members, groupSettings.value.newGroupSettings.type);\n handleGroupEdit(newGrp.id);\n }\n }\n }\n /**\n * Group: Remove group ids and unselect everything.\n */\n function handleRemoveGroup(ids) {\n ids.forEach((groupId) => {\n var _a;\n const groupStore = (_a = cameraStore.camMap.value.get(selectedCamera.value)) === null || _a === void 0 ? void 0 : _a.groupStore;\n if (groupStore) {\n groupStore.remove(groupId);\n }\n });\n /* Figure out next track ID */\n const maybeNextGroupId = selectNextGroup(1);\n const previousOrNext = maybeNextGroupId !== null\n ? maybeNextGroupId\n : selectNextGroup(-1);\n handleEscapeMode();\n handleGroupEdit(previousOrNext);\n }\n /* Subscribe to recipe activation events */\n recipes.forEach((r) => r.bus.$on('activate', handleSetAnnotationState));\n /* Unsubscribe before unmount */\n onBeforeUnmount(() => {\n recipes.forEach((r) => r.bus.$off('activate', handleSetAnnotationState));\n });\n return {\n selectedTrackId,\n editingGroupId,\n editingMode,\n editingTrack,\n editingDetails,\n linkingTrack,\n linkingState,\n linkingCamera,\n multiSelectList,\n multiSelectActive,\n visibleModes,\n selectedFeatureHandle,\n selectedKey,\n selectedCamera,\n selectNextTrack,\n handler: {\n commitMerge: handleCommitMerge,\n groupAdd: handleAddGroup,\n groupEdit: handleGroupEdit,\n toggleMerge: handleToggleMerge,\n trackAdd: handleAddTrackOrDetection,\n trackAbort: handleEscapeMode,\n trackEdit: handleTrackEdit,\n trackSeek: handleTrackClick,\n trackSelect: handleSelectTrack,\n trackSelectNext: handleSelectNext,\n updateRectBounds: handleUpdateRectBounds,\n updateGeoJSON: handleUpdateGeoJSON,\n removeTrack: handleRemoveTrack,\n removePoint: handleRemovePoint,\n removeAnnotation: handleRemoveAnnotation,\n removeGroup: handleRemoveGroup,\n selectFeatureHandle: handleSelectFeatureHandle,\n setAnnotationState: handleSetAnnotationState,\n unstageFromMerge: handleUnstageFromMerge,\n startLinking: handleStartLinking,\n stopLinking: handleStopLinking,\n },\n };\n}\n","import { readonly, ref } from 'vue';\nimport { useApi } from 'dive-common/apispec';\nfunction _updatePendingChangeMap(key, value, action, upsert, del) {\n if (action === 'delete') {\n del.add(key);\n upsert.delete(key);\n }\n else if (action === 'upsert') {\n del.delete(key);\n upsert.set(key, value);\n }\n}\nexport default function useSave(datasetId, readonlyMode) {\n const pendingSaveCount = ref(0);\n const pendingChangeMaps = {\n singleCam: {\n upsert: new Map(),\n delete: new Set(),\n attributeUpsert: new Map(),\n attributeDelete: new Set(),\n groupUpsert: new Map(),\n groupDelete: new Set(),\n attributeTrackFilterUpsert: new Map(),\n attributeTrackFilterDelete: new Set(),\n meta: 0,\n },\n };\n const { saveDetections, saveMetadata, saveAttributes, saveAttributeTrackFilters, } = useApi();\n async function save(datasetMeta, set) {\n if (readonlyMode.value) {\n throw new Error('attempted to save in read only mode');\n }\n const promiseList = [];\n let globalMetadataUpdated = false;\n Object.entries(pendingChangeMaps).forEach(([camera, pendingChangeMap]) => {\n const saveId = camera === 'singleCam' ? datasetId.value : `${datasetId.value}/${camera}`;\n if (pendingChangeMap.upsert.size\n || pendingChangeMap.delete.size\n || pendingChangeMap.groupUpsert.size\n || pendingChangeMap.groupDelete.size) {\n promiseList.push(saveDetections(saveId, {\n tracks: {\n upsert: Array.from(pendingChangeMap.upsert).map((pair) => pair[1].serialize()),\n delete: Array.from(pendingChangeMap.delete),\n },\n groups: {\n upsert: Array.from(pendingChangeMap.groupUpsert).map((pair) => pair[1].serialize()),\n delete: Array.from(pendingChangeMap.groupDelete),\n },\n set,\n }).then(() => {\n pendingChangeMap.upsert.clear();\n pendingChangeMap.delete.clear();\n }));\n }\n if (datasetMeta && pendingChangeMap.meta > 0) {\n // Save once for each camera into their own metadata file\n promiseList.push(saveMetadata(saveId, datasetMeta).then(() => {\n // eslint-disable-next-line no-param-reassign\n pendingChangeMap.meta = 0;\n }));\n // Only update global if there are multiple cameras\n if (saveId !== datasetId.value) {\n globalMetadataUpdated = true;\n }\n }\n if (pendingChangeMap.attributeUpsert.size || pendingChangeMap.attributeDelete.size) {\n promiseList.push(saveAttributes(datasetId.value, {\n upsert: Array.from(pendingChangeMap.attributeUpsert).map((pair) => pair[1]),\n delete: Array.from(pendingChangeMap.attributeDelete),\n }).then(() => {\n pendingChangeMap.attributeUpsert.clear();\n pendingChangeMap.attributeDelete.clear();\n }));\n }\n if (pendingChangeMap.attributeTrackFilterUpsert.size\n || pendingChangeMap.attributeTrackFilterDelete.size) {\n promiseList.push(saveAttributeTrackFilters(datasetId.value, {\n upsert: Array.from(pendingChangeMap.attributeTrackFilterUpsert).map((pair) => pair[1]),\n delete: Array.from(pendingChangeMap.attributeTrackFilterDelete),\n }).then(() => {\n pendingChangeMap.attributeTrackFilterUpsert.clear();\n pendingChangeMap.attributeTrackFilterDelete.clear();\n }));\n }\n });\n // Final save into the multi-cam metadata if multiple cameras exists\n if (globalMetadataUpdated && datasetMeta && pendingChangeMaps) {\n promiseList.push(saveMetadata(datasetId.value, datasetMeta));\n }\n await Promise.all(promiseList);\n pendingSaveCount.value = 0;\n }\n function markChangesPending({ action, track, attribute, attributeTrackFilter, group, cameraName = 'singleCam', } = { action: 'meta' }) {\n // For meta changes we need to indicate to all cameras that there is change.\n // Meta changes are global across all cameras\n if (action === 'meta') {\n Object.values(pendingChangeMaps).forEach((pendingChangeMap) => {\n // eslint-disable-next-line no-param-reassign\n pendingChangeMap.meta += 1;\n });\n pendingSaveCount.value += 1;\n }\n else if (pendingChangeMaps[cameraName]) {\n const pendingChangeMap = pendingChangeMaps[cameraName];\n if (!readonlyMode.value) {\n if (track !== undefined) {\n _updatePendingChangeMap(track.trackId, track, action, pendingChangeMap.upsert, pendingChangeMap.delete);\n }\n else if (attribute !== undefined) {\n _updatePendingChangeMap(attribute.key, attribute, action, pendingChangeMap.attributeUpsert, pendingChangeMap.attributeDelete);\n }\n else if (attributeTrackFilter !== undefined) {\n _updatePendingChangeMap(attributeTrackFilter.name, attributeTrackFilter, action, pendingChangeMap.attributeTrackFilterUpsert, pendingChangeMap.attributeTrackFilterDelete);\n }\n else if (group !== undefined) {\n _updatePendingChangeMap(group.id, group, action, pendingChangeMap.groupUpsert, pendingChangeMap.groupDelete);\n }\n else {\n throw new Error(`Arguments inconsistent with pending change type: ${action} cannot be performed without additional arguments`);\n }\n pendingSaveCount.value += 1;\n }\n }\n }\n function discardChanges() {\n Object.values(pendingChangeMaps).forEach((pendingChangeMap) => {\n pendingChangeMap.upsert.clear();\n pendingChangeMap.delete.clear();\n pendingChangeMap.attributeUpsert.clear();\n pendingChangeMap.attributeDelete.clear();\n pendingChangeMap.groupUpsert.clear();\n pendingChangeMap.groupDelete.clear();\n // eslint-disable-next-line no-param-reassign\n pendingChangeMap.meta = 0;\n });\n pendingSaveCount.value = 0;\n }\n function addCamera(cameraName) {\n pendingChangeMaps[cameraName] = {\n upsert: new Map(),\n delete: new Set(),\n attributeUpsert: new Map(),\n attributeDelete: new Set(),\n groupUpsert: new Map(),\n groupDelete: new Set(),\n attributeTrackFilterUpsert: new Map(),\n attributeTrackFilterDelete: new Set(),\n meta: 0,\n };\n }\n function removeCamera(cameraName) {\n if (pendingChangeMaps[cameraName]) {\n delete pendingChangeMaps[cameraName];\n }\n }\n return {\n save,\n markChangesPending,\n discardChanges,\n pendingSaveCount: readonly(pendingSaveCount),\n addCamera,\n removeCamera,\n };\n}\n","import { reactive, shallowRef, toRefs } from 'vue';\nimport { getResponseError } from 'vue-media-annotator/utils';\nexport default function useRequest() {\n const state = reactive({\n loading: false,\n error: null,\n count: 0, // indicates number of successful calls\n });\n async function request(func) {\n try {\n state.loading = true;\n state.error = null;\n state.count += 1;\n const val = await func();\n state.loading = false;\n return val;\n }\n catch (err) {\n state.loading = false;\n state.error = getResponseError(err);\n throw err;\n }\n }\n async function reset() {\n state.loading = false;\n state.error = null;\n state.count = 0;\n }\n return {\n ...toRefs(state),\n state,\n request,\n reset,\n };\n}\nexport function usePaginatedRequest() {\n const main = useRequest();\n const paginationParams = reactive({\n totalCount: 0,\n offset: 0,\n limit: 20,\n });\n const allPages = shallowRef([]);\n function reset() {\n paginationParams.totalCount = 0;\n paginationParams.offset = 0;\n paginationParams.limit = 20;\n allPages.value = [];\n main.reset();\n }\n async function loadNextPage(func) {\n const wrapped = () => main.request(() => func(paginationParams.limit, paginationParams.offset));\n const nextOffset = paginationParams.offset + paginationParams.limit;\n const maxOffset = (paginationParams.totalCount + paginationParams.limit);\n if (nextOffset < maxOffset || main.count.value === 0) {\n const resp = await wrapped();\n paginationParams.offset = nextOffset;\n paginationParams.totalCount = Number.parseInt(resp.headers['girder-total-count'], 10);\n allPages.value = allPages.value.concat(resp.data);\n }\n }\n return {\n ...main,\n ...toRefs(paginationParams),\n allPages,\n reset,\n loadNextPage,\n };\n}\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RunPipelineMenu.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RunPipelineMenu.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./RunPipelineMenu.vue?vue&type=template&id=6216bc19\"\nimport script from \"./RunPipelineMenu.vue?vue&type=script&lang=ts\"\nexport * from \"./RunPipelineMenu.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-menu',_vm._b({attrs:{\"max-width\":\"500\",\"close-on-content-click\":false},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: menuOn }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\",\"disabled\":_vm.menuOptions.offsetX},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: tooltipOn }){return [_c('v-btn',_vm._g(_vm._b({attrs:{\"disabled\":_vm.trainingDisabled || _vm.buttonOptions.disabled}},'v-btn',_vm.buttonOptions,false),{ ...tooltipOn, ...menuOn }),[_c('v-icon',[_vm._v(\" mdi-brain \")]),_c('span',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.$vuetify.breakpoint.mdAndDown || _vm.buttonOptions.block),expression:\"!$vuetify.breakpoint.mdAndDown || buttonOptions.block\"}],staticClass:\"pl-1\"},[_vm._v(\" Run Training \")]),_c('v-spacer'),_c('v-icon',[_vm._v(\"mdi-chevron-right\")])],1)]}}],null,true)},[_c('span',[_vm._v(\"Train a detector model on this data\")])])]}}]),model:{value:(_vm.menuOpen),callback:function ($$v) {_vm.menuOpen=$$v},expression:\"menuOpen\"}},'v-menu',_vm.menuOptions,false),[[(_vm.trainingConfigurations)?_c('v-card',{attrs:{\"outlined\":\"\"}},[_c('v-card-title',{staticClass:\"pb-1\"},[_vm._v(\" Run Training \")]),_c('v-card-text',[_c('p',[_vm._v(\" Specify the name of the resulting pipeline and configuration file to use for training. Check the \"),_c('a',{attrs:{\"href\":\"https://kitware.github.io/dive/Pipeline-Documentation/#training\"}},[_vm._v(\" documentation \")]),_vm._v(\" for more information about these options. \")]),(_vm.brandData.trainingMessage)?_c('v-alert',{attrs:{\"dense\":\"\",\"color\":\"warning\",\"outlined\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.brandData.trainingMessage)+\" \")]):_vm._e(),_c('v-text-field',{staticClass:\"my-4\",attrs:{\"outlined\":\"\",\"label\":\"New Model Name\",\"hint\":\"Choose a name for the newly trained model\",\"persistent-hint\":\"\"},model:{value:(_vm.trainingOutputName),callback:function ($$v) {_vm.trainingOutputName=$$v},expression:\"trainingOutputName\"}}),_c('v-select',{staticClass:\"my-4\",attrs:{\"outlined\":\"\",\"label\":\"Configuration File\",\"items\":_vm.trainingConfigurations.configs,\"hint\":_vm.selectedTrainingConfig,\"persistent-hint\":\"\"},scopedSlots:_vm._u([{key:\"item\",fn:function(row){return [_vm._v(\" \"+_vm._s(_vm.simplifyTrainingName(row.item))+\" \")]}},{key:\"selection\",fn:function({ item }){return [_vm._v(\" \"+_vm._s(_vm.simplifyTrainingName(item))+\" \")]}}],null,false,2402858081),model:{value:(_vm.selectedTrainingConfig),callback:function ($$v) {_vm.selectedTrainingConfig=$$v},expression:\"selectedTrainingConfig\"}}),_c('v-file-input',{attrs:{\"icon\":\"mdi-folder-open\",\"label\":\"Labels.txt mapping file (optional)\",\"hint\":\"Combine or rename output classes using a labels.txt file\",\"persistent-hint\":\"\",\"clearable\":\"\"},on:{\"click:clear\":_vm.clearLabelText},model:{value:(_vm.labelFile),callback:function ($$v) {_vm.labelFile=$$v},expression:\"labelFile\"}}),_c('v-checkbox',{staticClass:\"pt-0\",attrs:{\"label\":\"Use annotated frames only\",\"hint\":\"Train only on frames with groundtruth and ignore frames without annotations\",\"persistent-hint\":\"\"},model:{value:(_vm.annotatedFramesOnly),callback:function ($$v) {_vm.annotatedFramesOnly=$$v},expression:\"annotatedFramesOnly\"}}),_c('v-btn',{staticClass:\"mt-4\",attrs:{\"depressed\":\"\",\"block\":\"\",\"color\":\"primary\",\"disabled\":!_vm.trainingOutputName || !_vm.selectedTrainingConfig},on:{\"click\":_vm.runTrainingOnFolder}},[_vm._v(\" Train on \"+_vm._s(_vm.selectedDatasetIds.length)+\" dataset(s) \")])],1)],1):_vm._e()]],2),_c('JobLaunchDialog',{attrs:{\"value\":_vm.jobState.count > 0,\"loading\":_vm.jobState.loading,\"error\":_vm.jobState.error,\"message\":_vm.successMessage},on:{\"close\":_vm.dismissJobDialog}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-menu',{attrs:{\"offset-y\":\"\",\"offset-x\":\"\",\"nudge-left\":\"180\",\"max-width\":\"180\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._b({staticClass:\"px-0\",attrs:{\"large\":!_vm.small,\"small\":_vm.small},on:{\"click\":function($event){return _vm.$emit('open', _vm.openType)}}},'v-btn',_vm.buttonAttrs,false),[_c('div',{staticClass:\"col-11\"},[_vm._v(\" \"+_vm._s(_vm.name)+\" \"),_c('v-icon',{staticClass:\"ml-2\"},[_vm._v(\" \"+_vm._s(_vm.icon)+\" \")])],1),(_vm.multiCamImport)?_c('v-icon',_vm._g({staticClass:\"button-dropdown col-1\"},on),[_vm._v(\" mdi-chevron-down \")]):_vm._e()],1)]}}])},[_c('v-card',{attrs:{\"outlined\":\"\"}},[_c('v-list',{attrs:{\"dense\":\"\"}},[(['image-sequence', 'large-image'].includes(_vm.openType))?_c('v-list-item',{staticStyle:{\"align-items'\":\"'center\"},on:{\"click\":function($event){return _vm.$emit('open', _vm.openType)}}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-folder-open\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\"Directory\")])],1)],1):(_vm.openType === 'video')?_c('v-list-item',{staticStyle:{\"align-items'\":\"'center\"},on:{\"click\":function($event){return _vm.$emit('open', _vm.openType)}}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-file-video\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\"From File\")])],1)],1):_vm._e(),(['image-sequence', 'large-image'].includes(_vm.openType))?_c('v-list-item',{staticStyle:{\"align-items'\":\"'center\"},on:{\"click\":function($event){return _vm.$emit('open', 'text')}}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-view-list-outline\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\"Image List\")])],1)],1):_vm._e(),_c('v-list-item',{staticStyle:{\"align-items'\":\"'center\"},on:{\"click\":function($event){return _vm.$emit('multi-cam', { stereo: true, openType: _vm.openType })}}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-binoculars\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\"Stereoscopic\")])],1)],1),_c('v-list-item',{staticStyle:{\"align-items'\":\"'center\"},on:{\"click\":function($event){return _vm.$emit('multi-cam', { stereo: false, openType: _vm.openType })}}},[_c('v-list-item-icon',[_c('v-icon',[_vm._v(\"mdi-camera-burst\")])],1),_c('v-list-item-content',[_c('v-list-item-title',[_vm._v(\"MultiCam\")])],1)],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImportButton.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImportButton.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ImportButton.vue?vue&type=template&id=6bdafde9&scoped=true\"\nimport script from \"./ImportButton.vue?vue&type=script&lang=ts\"\nexport * from \"./ImportButton.vue?vue&type=script&lang=ts\"\nimport style0 from \"./ImportButton.vue?vue&type=style&index=0&id=6bdafde9&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6bdafde9\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RunTrainingMenu.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RunTrainingMenu.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./RunTrainingMenu.vue?vue&type=template&id=3084e069\"\nimport script from \"./RunTrainingMenu.vue?vue&type=script&lang=ts\"\nexport * from \"./RunTrainingMenu.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-menu',_vm._b({attrs:{\"close-on-content-click\":false,\"nudge-width\":120,\"max-width\":\"280\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: menuOn }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: tooltipOn }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"ma-0\",attrs:{\"disabled\":!_vm.datasetIds.length}},'v-btn',_vm.buttonOptions,false),{ ...tooltipOn, ...menuOn }),[_c('v-icon',[_vm._v(\" mdi-download \")]),_c('span',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.$vuetify.breakpoint.mdAndDown || _vm.buttonOptions.block),expression:\"!$vuetify.breakpoint.mdAndDown || buttonOptions.block\"}],staticClass:\"pl-1\"},[_vm._v(\" Download \")]),_c('v-spacer'),(_vm.menuOptions.right)?_c('v-icon',[_vm._v(\" mdi-chevron-right \")]):_vm._e()],1)]}}],null,true)},[_c('span',[_vm._v(\"Download media and annotations\")])])]}}]),model:{value:(_vm.menuOpen),callback:function ($$v) {_vm.menuOpen=$$v},expression:\"menuOpen\"}},'v-menu',_vm.menuOptions,false),[[_c('AutosavePrompt',{on:{\"save\":function($event){return _vm.doExport({ forceSave: true })}},model:{value:(_vm.savePrompt),callback:function ($$v) {_vm.savePrompt=$$v},expression:\"savePrompt\"}}),_c('v-card',{staticClass:\"downloadMenu\",attrs:{\"outlined\":\"\"}},[_c('v-card-title',[_vm._v(\" Download options \")]),(_vm.revisionId)?_c('v-alert',{attrs:{\"type\":\"info\",\"tile\":\"\"}},[_vm._v(\" Revision \"+_vm._s(_vm.revisionId)+\" selected \")]):_vm._e(),(_vm.error)?_c('v-alert',{staticClass:\"mx-2\",attrs:{\"color\":\"error\"}},[_c('p',{staticClass:\"text-h5\"},[_vm._v(\" Error \")]),_vm._v(\" \"+_vm._s(_vm.error)+\" \")]):_vm._e(),(_vm.dataset !== null && _vm.mediaType !== null)?[_c('v-card-text',{staticClass:\"pb-0\"},[_vm._v(\" Zip all \"+_vm._s(_vm.mediaType)+\" files only \")]),_c('v-card-actions',[_c('v-btn',{attrs:{\"depressed\":\"\",\"block\":\"\",\"target\":\"_blank\",\"rel\":\"noopener\",\"disabled\":!_vm.exportUrls.exportMediaUrl,\"href\":_vm.exportUrls.exportMediaUrl}},[_vm._v(\" \"+_vm._s(_vm.mediaType)+\" \")])],1),_c('v-card-text',{staticClass:\"pb-2\"},[_c('div',[_vm._v(\"Get latest annotation csv only\")]),(_vm.dataset.confidenceFilters || true)?[_c('v-checkbox',{attrs:{\"label\":\"exclude tracks below confidence threshold\",\"dense\":\"\",\"hide-details\":\"\"},model:{value:(_vm.excludeBelowThreshold),callback:function ($$v) {_vm.excludeBelowThreshold=$$v},expression:\"excludeBelowThreshold\"}}),_c('div',{staticClass:\"pt-2\"},[_c('span',[_vm._v(\"Current thresholds:\")]),_vm._l((_vm.dataset.confidenceFilters),function(val,key){return _c('span',{key:key,staticClass:\"pt-2\"},[_vm._v(\" (\"+_vm._s(key)+\", \"+_vm._s(val)+\") \")])})],2)]:_vm._e(),(_vm.checkedTypes.length)?[_c('v-checkbox',{staticClass:\"pt-0\",attrs:{\"label\":\"export checked types only\",\"dense\":\"\",\"hint\":\"Export only the track types currently enabled in the type filter\",\"persistent-hint\":\"\"},model:{value:(_vm.excludeUncheckedTypes),callback:function ($$v) {_vm.excludeUncheckedTypes=$$v},expression:\"excludeUncheckedTypes\"}})]:_vm._e()],2),_c('v-card-actions',[_c('v-row',[_c('v-col',[_c('v-btn',{attrs:{\"depressed\":\"\",\"block\":\"\",\"disabled\":!_vm.exportUrls.exportDetectionsUrl},on:{\"click\":function($event){return _vm.doExport({ url: _vm.exportUrls && _vm.exportUrls.exportDetectionsUrl })}}},[(_vm.exportUrls.exportDetectionsUrl)?_c('span',[_vm._v(\"VIAME CSV\")]):_c('span',[_vm._v(\"detections unavailable\")])]),_c('v-btn',{staticClass:\"mt-2\",attrs:{\"depressed\":\"\",\"block\":\"\",\"disabled\":!_vm.exportUrls.exportDetectionsUrl},on:{\"click\":function($event){return _vm.doExport({\n url: _vm.exportUrls\n && _vm.exportUrls.exportDetectionsUrlTrackJSON,\n })}}},[(_vm.exportUrls.exportDetectionsUrl)?_c('span',[_vm._v(\"DIVE TrackJSON\")]):_c('span',[_vm._v(\"detections unavailable\")])])],1)],1)],1),_c('v-card-text',{staticClass:\"pb-0\"},[_vm._v(\" Export the dataset configuration, including attribute definitions, types, styles, and thresholds. \")]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"depressed\":\"\",\"block\":\"\"},on:{\"click\":function($event){return _vm.doExport({ url: _vm.exportUrls && _vm.exportUrls.exportConfigurationUrl })}}},[_vm._v(\" Configuration \")])],1),_c('v-card-text',{staticClass:\"pb-0\"},[_vm._v(\" Zip all media, detections, and edit history recursively from all sub-folders \")]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"depressed\":\"\",\"block\":\"\"},on:{\"click\":function($event){return _vm.doExport({ url: _vm.exportUrls && _vm.exportUrls.exportAllUrl })}}},[_vm._v(\" Everything \")])],1)]:(_vm.exportUrls.exportAllUrl !== undefined)?[_c('v-card-text',{staticClass:\"pb-0\"},[_vm._v(\" Zip all media, detections, and edit history from all selected dataset folders \")]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"depressed\":\"\",\"block\":\"\"},on:{\"click\":function($event){return _vm.doExport({ url: _vm.exportUrls && _vm.exportUrls.exportAllUrl })}}},[_vm._v(\" Everything \")])],1),_c('v-card-text',{staticClass:\"pb-0\"},[_vm._v(\" Export All selected Dataset Detections in VIAME CSV and TrackJSON \")]),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"depressed\":\"\",\"block\":\"\"},on:{\"click\":function($event){return _vm.doExport({ url: _vm.exportUrls && _vm.exportUrls.exportAllUrlDetections })}}},[_vm._v(\" Detections \")])],1)]:_vm._e()],2)]],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-dialog',{attrs:{\"max-width\":\"500\",\"persistent\":\"\",\"value\":_vm.value,\"overlay-opacity\":0.95}},[_c('v-card',{attrs:{\"outlined\":\"\"}},[_c('v-card-text',{staticClass:\"py-4\"},[_c('p',{staticClass:\"text-h5\"},[_vm._v(\" Do you want to save changes first? \")]),_c('v-alert',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"type\":\"warning\"}},[_vm._v(\" There are unsaved changes to this dataset. \")])],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"depressed\":\"\",\"text\":\"\"},on:{\"click\":function($event){return _vm.$emit('input', false)}}},[_vm._v(\" Cancel \")]),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){return _vm.$emit('save')}}},[_vm._v(\" Save and Export \")])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AutosavePrompt.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AutosavePrompt.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AutosavePrompt.vue?vue&type=template&id=180438e7\"\nimport script from \"./AutosavePrompt.vue?vue&type=script&lang=ts\"\nexport * from \"./AutosavePrompt.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Export.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Export.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Export.vue?vue&type=template&id=bf4adc42&scoped=true\"\nimport script from \"./Export.vue?vue&type=script&lang=ts\"\nexport * from \"./Export.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Export.vue?vue&type=style&index=0&id=bf4adc42&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"bf4adc42\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"upload\"},[_c('v-dialog',{attrs:{\"value\":_vm.importMultiCamDialog,\"persistent\":\"\",\"overlay-opacity\":\"0.95\",\"max-width\":\"80%\"}},[(_vm.importMultiCamDialog)?_c('ImportMultiCamDialog',{attrs:{\"stereo\":_vm.stereo,\"data-type\":_vm.multiCamOpenType,\"import-media\":_vm.multiCamImportCheck},on:{\"begin-multicam-import\":function($event){return _vm.multiCamImport($event)},\"abort\":function($event){_vm.importMultiCamDialog = false; _vm.preUploadErrorMessage = null}}}):_vm._e()],1),_c('v-card',{attrs:{\"outlined\":\"\",\"color\":\"default\"}},[_c('v-toolbar',{attrs:{\"flat\":\"\",\"dark\":\"\"}},[_c('v-toolbar-title',[_vm._v(\"Upload datasets\")]),_c('v-spacer'),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":_vm.close}},[_c('v-icon',[_vm._v(\"mdi-close\")])],1)],1),_c('v-progress-linear',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.girderUpload && _vm.girderUpload.totalProgressPercent),expression:\"girderUpload && girderUpload.totalProgressPercent\"}],attrs:{\"value\":_vm.girderUpload && _vm.girderUpload.totalProgressPercent,\"absolute\":\"\",\"height\":\"6px\"}}),_c('upload-girder',{ref:\"girderUpload\",staticClass:\"mx-6\",attrs:{\"pending-uploads\":_vm.pendingUploads,\"pre-upload-error-message\":_vm.preUploadErrorMessage,\"location\":_vm.location},on:{\"remove-upload\":_vm.remove,\"update:uploading\":function($event){return _vm.$emit('update:uploading', $event)},\"abort\":_vm.abort,\"error\":_vm.errorHandler},scopedSlots:_vm._u([{key:\"default\",fn:function({ upload }){return [_vm._l((_vm.pendingUploads),function(pendingUpload,i){return _c('v-card',{key:i,staticClass:\"pa-4 my-4\",attrs:{\"outlined\":\"\"}},[_c('v-row',{staticClass:\"align-center\"},[_c('v-col',{staticClass:\"py-0\"},[_c('v-text-field',{staticClass:\"upload-name\",attrs:{\"value\":_vm.getFilenameInputValue(pendingUpload),\"rules\":[val => (val || '').length > 0 || 'This field is required'],\"required\":\"\",\"label\":_vm.getFilenameInputStateLabel(pendingUpload),\"disabled\":_vm.getFilenameInputStateDisabled(pendingUpload),\"hint\":_vm.getFilenameInputStateHint(pendingUpload),\"persistent-hint\":\"\"},on:{\"input\":function($event){pendingUpload.name = $event}}})],1),_c('v-col',{staticClass:\"py-0\",attrs:{\"cols\":\"3\"}},[_c('v-select',{attrs:{\"items\":_vm.FPSOptions,\"disabled\":pendingUpload.uploading,\"type\":\"number\",\"required\":\"\",\"label\":\"FPS\",\"append-icon\":pendingUpload.annotationFile\n ? 'mdi-alert' : 'mdi-chevron-down',\"hint\":pendingUpload.annotationFile\n ? 'should match annotation fps' : 'annotation fps',\"persistent-hint\":\"\"},on:{\"change\":function($event){_vm.clientSettings.annotationFPS = $event}},model:{value:(pendingUpload.fps),callback:function ($$v) {_vm.$set(pendingUpload, \"fps\", $$v)},expression:\"pendingUpload.fps\"}})],1),_c('v-col',{staticClass:\"py-0\",attrs:{\"cols\":\"1\"}},[_c('v-btn',{attrs:{\"icon\":\"\",\"outlined\":\"\",\"disabled\":pendingUpload.uploading},on:{\"click\":function($event){return _vm.remove(pendingUpload)}}},[_c('v-icon',[_vm._v(\"mdi-close\")])],1)],1)],1),(!pendingUpload.createSubFolders && pendingUpload.type !== 'zip')?_c('v-row',[_c('v-col',{staticClass:\"py-0 mx-2\"},[_c('v-row',[_c('v-file-input',{attrs:{\"multiple\":\"\",\"show-size\":\"\",\"counter\":\"\",\"disabled\":pendingUpload.uploading,\"prepend-icon\":['image-sequence', 'large-image'].includes(pendingUpload.type)\n ? 'mdi-image-multiple'\n : 'mdi-file-video',\"label\":pendingUpload.type === 'image-sequence'\n ? 'Image files'\n : pendingUpload.type === 'video'\n ? 'Video file'\n : 'Tiled Image files',\"rules\":[val => (val || '').length > 0 || 'Media Files are required'],\"accept\":_vm.filterFileUpload(pendingUpload.type)},model:{value:(pendingUpload.mediaList),callback:function ($$v) {_vm.$set(pendingUpload, \"mediaList\", $$v)},expression:\"pendingUpload.mediaList\"}})],1),_c('v-row',[_c('v-file-input',{attrs:{\"show-size\":\"\",\"counter\":\"\",\"prepend-icon\":\"mdi-file-table\",\"label\":\"Annotation File (Optional)\",\"hint\":\"Optional\",\"disabled\":pendingUpload.uploading,\"accept\":_vm.filterFileUpload('annotation')},model:{value:(pendingUpload.annotationFile),callback:function ($$v) {_vm.$set(pendingUpload, \"annotationFile\", $$v)},expression:\"pendingUpload.annotationFile\"}})],1),_c('v-row',[_c('v-file-input',{attrs:{\"show-size\":\"\",\"counter\":\"\",\"label\":\"Configuration File (Optional)\",\"hint\":\"Optional\",\"disabled\":pendingUpload.uploading,\"accept\":_vm.filterFileUpload('meta')},model:{value:(pendingUpload.meta),callback:function ($$v) {_vm.$set(pendingUpload, \"meta\", $$v)},expression:\"pendingUpload.meta\"}})],1)],1)],1):_vm._e(),(pendingUpload.type === 'video')?_c('v-row',[_c('v-checkbox',{attrs:{\"label\":\"Skip Transcoding\"},model:{value:(pendingUpload.skipTranscoding),callback:function ($$v) {_vm.$set(pendingUpload, \"skipTranscoding\", $$v)},expression:\"pendingUpload.skipTranscoding\"}}),_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"right\":\"\",\"max-width\":\"200\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({attrs:{\"small\":\"\"}},on),[_vm._v(\" mdi-help \")])]}}],null,true)},[_c('span',[_vm._v(\"Attempt to skip transcoding of video file if it is an '.mp4' and encoded using the h264 codec. If skipping fails it will fallback to transcoding.\")])])],1):_vm._e(),(_vm.uploading)?_c('span',[_vm._v(\" \"+_vm._s(_vm.computeUploadProgress(pendingUpload))+\" \")]):_vm._e()],1)}),_c('div',[_c('v-list',[_c('v-list-item',[_c('import-button',{staticClass:\"grow my-2\",attrs:{\"name\":`Add ${_vm.pendingUploads.length ? 'Another ' : ''}Image Sequence`,\"icon\":\"mdi-folder-open\",\"open-type\":\"image-sequence\",\"small\":!!_vm.pendingUploads.length,\"button-attrs\":_vm.buttonAttrs},on:{\"open\":function($event){return _vm.openImport($event)},\"multi-cam\":_vm.openMultiCamDialog}})],1),_c('v-list-item',[_c('import-button',{staticClass:\"grow my-2\",attrs:{\"name\":`Add ${_vm.pendingUploads.length ? 'Another ' : ''}Video`,\"icon\":\"mdi-file-video\",\"small\":!!_vm.pendingUploads.length,\"open-type\":\"video\",\"button-attrs\":_vm.buttonAttrs},on:{\"open\":function($event){return _vm.openImport($event)},\"multi-cam\":_vm.openMultiCamDialog}})],1),_c('v-tooltip',{attrs:{\"open-delay\":\"50\",\"top\":\"\",\"max-width\":\"400\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-list-item',_vm._g({},on),[_c('import-button',{staticClass:\"grow my-2\",attrs:{\"name\":`Add ${_vm.pendingUploads.length ? 'Another ' : ''}Tiled Images`,\"icon\":\"mdi-folder-open\",\"open-type\":\"large-image\",\"small\":!!_vm.pendingUploads.length,\"button-attrs\":_vm.buttonAttrs},on:{\"open\":function($event){return _vm.openImport($event)},\"multi-cam\":_vm.openMultiCamDialog}})],1)]}}],null,true)},[_c('b',[_vm._v(\" Allows for a single or sequence of geospatial large images for use in a tile server with formats such as: .tiff, .nitf, .ntf, .tif \")])]),_c('v-list-item',[_c('import-button',{staticClass:\"grow my-2\",attrs:{\"name\":`Add ${_vm.pendingUploads.length ? 'Another ' : ''}Zip File`,\"icon\":\"mdi-zip-box\",\"small\":!!_vm.pendingUploads.length,\"open-type\":\"zip\",\"button-attrs\":_vm.buttonAttrs},on:{\"open\":function($event){return _vm.openImport($event)}}})],1),_c('v-list')],1)],1),(_vm.pendingUploads.length && _vm.pendingUploads.some((item) => item.type === 'zip'))?_c('div',[_c('h3',{staticClass:\"text-center\"},[_c('a',{attrs:{\"target\":\"_blank\",\"href\":\"https://kitware.github.io/dive/Web-Version/#zip-files\"}},[_vm._v(\" Supported Zip Files \")])])]):_vm._e(),(_vm.pendingUploads.length)?_c('v-btn',{staticClass:\"my-6\",attrs:{\"disabled\":_vm.uploading,\"block\":\"\",\"large\":\"\",\"color\":\"primary\"},on:{\"click\":upload}},[_c('v-icon',{staticClass:\"pr-3\"},[_vm._v(\" mdi-upload \")]),_vm._v(\" Start upload \")],1):_vm._e()]}}])})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","const fileSuffixRegex = /\\.[^.]*$/;\nexport { fileSuffixRegex, };\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-card',{staticClass:\"import-card px-3\",attrs:{\"outlined\":\"\"}},[_c('v-card-title',{staticClass:\"text-h5\"},[_vm._v(\" Import \"+_vm._s(_vm.stereo ? 'Stereo' : 'Multi-Camera')+\" \"+_vm._s(_vm.dataType === 'image-sequence' ? 'Image Sequence' : 'Videos')+\" \")]),_c('v-card-text',[(_vm.dataType === 'image-sequence')?_c('div',[_c('v-radio-group',{attrs:{\"label\":\"How do you want to choose each camera?\"},on:{\"change\":_vm.clearCameraSet},model:{value:(_vm.importType),callback:function ($$v) {_vm.importType=$$v},expression:\"importType\"}},[_c('v-radio',{attrs:{\"value\":\"multi\",\"label\":\"Multi-Folder: Choose a folder or image list for each camera\"}}),_c('v-radio',{attrs:{\"value\":\"keyword\",\"label\":\"Glob Filter: Use pattern matching to deteremine left and right camera\"}})],1)],1):_vm._e(),(_vm.importType === 'multi')?_c('div',[_vm._l((_vm.folderList),function(item,key){return _c('ImportMultiCamCameraGroup',{key:key,staticClass:\"mb-3\",attrs:{\"camera-name\":key,\"show-delete\":!_vm.stereo},on:{\"delete\":function($event){return _vm.deleteSet(key)}}},[[_c('ImportMultiCamChooseSource',{attrs:{\"camera-name\":key,\"data-type\":_vm.dataType,\"stereo\":_vm.stereo,\"show-delete\":!_vm.stereo,\"value\":_vm.folderList[key].sourcePath},on:{\"open\":function($event){return _vm.open(_vm.dataType, key)},\"open-text\":function($event){return _vm.open('text', key)},\"delete\":function($event){return _vm.deleteSet(key)}}}),(item.sourcePath && _vm.importAnnotationFilesCheck)?_c('ImportMultiCamChooseAnnotation',{staticClass:\"my-3\",attrs:{\"camera-name\":key,\"track-file\":item.trackFile},on:{\"clear\":function($event){item.trackFile = ''},\"open\":function($event){return _vm.openAnnotationFile(key)}}}):_vm._e()]],2)}),(!_vm.stereo)?_c('ImportMultiCamAddType',{staticClass:\"my-3\",attrs:{\"name-list\":_vm.displayKeys},on:{\"add-new\":_vm.addNewSet}}):_vm._e()],2):(_vm.importType === 'keyword')?_c('div',[_c('ImportMultiCamChooseSource',{staticClass:\"mb-3\",attrs:{\"camera-name\":\"Folder or Image List\",\"data-type\":_vm.dataType,\"value\":_vm.keywordFolder},on:{\"open\":function($event){return _vm.open(_vm.dataType, 'keyword')},\"open-text\":function($event){return _vm.open('text', 'keyword')}}}),_vm._l((_vm.globList),function(item,key){return _c('ImportMultiCamCameraGroup',{key:key,staticClass:\"mb-3\",attrs:{\"camera-name\":key,\"show-delete\":!_vm.stereo},on:{\"delete\":function($event){return _vm.deleteSet(key)}}},[_c('v-row',{staticClass:\"align-center my-3\",attrs:{\"no-gutters\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Glob Filter Pattern\",\"placeholder\":\"Leave blank to use all images. example: *.png\",\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"\"},model:{value:(_vm.globList[key].glob),callback:function ($$v) {_vm.$set(_vm.globList[key], \"glob\", $$v)},expression:\"globList[key].glob\"}}),(_vm.globList[key].glob && _vm.pendingImportPayloads.keyword)?_c('v-chip',{staticClass:\"ml-3\",attrs:{\"color\":_vm.filteredImages[key].length ? 'success' : 'error',\"outlined\":\"\"}},[_vm._v(\" \\\"\"+_vm._s(_vm.globList[key].glob)+\"\\\" matches \"+_vm._s(_vm.filteredImages[key].length)+\" out of \"+_vm._s(_vm.pendingImportPayloads.keyword.jsonMeta.originalImageFiles.length)+\" images \")]):_vm._e()],1),(item.glob && _vm.importAnnotationFilesCheck)?_c('ImportMultiCamChooseAnnotation',{staticClass:\"my-3\",attrs:{\"camera-name\":key,\"track-file\":item.trackFile},on:{\"clear\":function($event){item.trackFile = ''},\"open\":function($event){return _vm.openAnnotationFile(key)}}}):_vm._e()],1)}),(!_vm.stereo)?_c('ImportMultiCamAddType',{staticClass:\"my-3\",attrs:{\"name-list\":_vm.displayKeys},on:{\"add-new\":_vm.addNewSet}}):_vm._e()],2):_vm._e(),_c('div',[(_vm.errorMessage)?_c('v-alert',{attrs:{\"type\":\"error\",\"outlined\":\"\",\"dense\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.errorMessage)+\" \")]):_vm._e()],1),(_vm.nextSteps)?_c('div',[_c('v-alert',{attrs:{\"type\":\"info\",\"outlined\":\"\",\"dense\":\"\"}},[_vm._v(\" Visualization currently doesn't support multi views so please choose a list of images or video to display by default when viewing \")]),_c('div',[_c('div',[_c('v-radio-group',{attrs:{\"label\":\"Default Display\"},model:{value:(_vm.defaultDisplay),callback:function ($$v) {_vm.defaultDisplay=$$v},expression:\"defaultDisplay\"}},_vm._l((_vm.displayKeys),function(item,index){return _c('v-radio',{key:index,attrs:{\"value\":item,\"label\":item}})}),1)],1),(_vm.stereo)?_c('v-row',{staticClass:\"align-center\",attrs:{\"no-gutters\":\"\"}},[_c('v-text-field',{staticClass:\"mr-3\",attrs:{\"label\":\"Calibration File:\",\"placeholder\":\"Choose File\",\"disabled\":\"\",\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"\",\"value\":_vm.calibrationFile}}),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){return _vm.open('calibration', 'calibration')}}},[_vm._v(\" Open Calibration File \"),_c('v-icon',{staticClass:\"ml-2\"},[_vm._v(\" mdi-matrix \")])],1)],1):_vm._e()],1)],1):_vm._e(),_c('v-row',{staticClass:\"align-center\",attrs:{\"no-gutters\":\"\"}},[(_vm.importType)?_c('v-checkbox',{attrs:{\"label\":\"Import Annotations\",\"dense\":\"\",\"persistent-hint\":\"\"},model:{value:(_vm.importAnnotationFilesCheck),callback:function ($$v) {_vm.importAnnotationFilesCheck=$$v},expression:\"importAnnotationFilesCheck\"}}):_vm._e(),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-3\",attrs:{\"text\":\"\",\"outlined\":\"\"},on:{\"click\":function($event){return _vm.$emit('abort')}}},[_vm._v(\" Cancel \")]),_c('v-btn',{attrs:{\"color\":\"primary\",\"disabled\":!_vm.nextSteps || (_vm.stereo && !_vm.calibrationFile)},on:{\"click\":_vm.prepForImport}},[_vm._v(\" Begin Import \")])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * utilities shared between renderer and main threads.\n */\nimport globToRegexp from 'glob-to-regexp';\nfunction cleanString(dirty) {\n return dirty.replace(/[^a-z0-9]/gi, '_').toLowerCase();\n}\n// https://stackoverflow.com/questions/1349404/generate-random-string-characters-in-javascript\nfunction makeid(length) {\n let result = '';\n const characters = 'abcdefghijklmnopqrstuvwxyz0123456789';\n const charactersLength = characters.length;\n for (let i = 0; i < length; i += 1) {\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\n }\n return result;\n}\nfunction filterByGlob(pattern, files = []) {\n const patterns = pattern.split(';').map((p) => globToRegexp(p, { flags: 'i' }));\n return files.filter((val) => patterns.some((re) => re.test(val)));\n}\n/* Zip arrays of unequal length */\nfunction zip(a, b) {\n return Array.from(Array(Math.max(b.length, a.length)), (_, i) => [a[i], b[i]]);\n}\n/* Same as python version */\nfunction strChunks(input) {\n return Array.from(input.split(/(\\d+)/g))\n .filter((v) => v !== '')\n .map((v) => {\n const asInt = parseInt(v, 10);\n return Number.isNaN(asInt) ? v : asInt;\n });\n}\n/* same as python version */\nfunction strNumericCompare(input1, input2) {\n if (input1 === input2) {\n return 0;\n }\n const zipped = zip(strChunks(input1), strChunks(input2));\n for (let i = 0, [a, b] = zipped[0]; i < zipped.length; i += 1, [a, b] = zipped[i]) {\n if (a !== b) {\n if (a === undefined)\n return -1;\n if (b === undefined)\n return 1;\n if (typeof a === 'number' && typeof b === 'number')\n return a - b;\n if (typeof a === 'number')\n return -1;\n if (typeof b === 'number')\n return 1;\n return input1 > input2 ? 1 : -1;\n }\n }\n throw new Error('Unreachable');\n}\nexport { cleanString, filterByGlob, makeid, strChunks, strNumericCompare, };\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-card',{staticClass:\"camera-group px-3 py-2\",staticStyle:{\"background-color\":\"#2b2b2b\"},attrs:{\"flat\":\"\"}},[_c('v-row',{staticClass:\"align-center mb-2\",attrs:{\"no-gutters\":\"\"}},[_c('h3',[_vm._v(\" Camera \"+_vm._s(_vm.cameraName)+\" \")]),(_vm.showDelete)?_c('v-btn',{staticClass:\"mx-3\",attrs:{\"icon\":\"\",\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.$emit('delete')}}},[_c('v-icon',[_vm._v(\"mdi-delete\")])],1):_vm._e()],1),_vm._t(\"default\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImportMultiCamCameraGroup.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImportMultiCamCameraGroup.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ImportMultiCamCameraGroup.vue?vue&type=template&id=c394fe44\"\nimport script from \"./ImportMultiCamCameraGroup.vue?vue&type=script&lang=ts\"\nexport * from \"./ImportMultiCamCameraGroup.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-row',{staticClass:\"align-center\",attrs:{\"no-gutters\":\"\"}},[_c('v-text-field',{staticClass:\"mr-3\",attrs:{\"placeholder\":_vm.dataType === 'image-sequence'\n ? 'Choose folder or image list' : 'Choose Video',\"disabled\":\"\",\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"\",\"value\":_vm.value}}),_c('v-btn',{staticClass:\"mr-3\",attrs:{\"color\":\"primary\"},on:{\"click\":function($event){return _vm.$emit('open')}}},[_vm._v(\" \"+_vm._s(_vm.dataType === 'image-sequence' ? 'Folder' : 'Open Video')+\" \"),_c('v-icon',{staticClass:\"ml-2\"},[_vm._v(\" \"+_vm._s(_vm.dataType === 'image-sequence' ? 'mdi-folder-open' : 'mdi-file-video')+\" \")])],1),(_vm.dataType === 'image-sequence')?_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){return _vm.$emit('open-text')}}},[_vm._v(\" List File \"),_c('v-icon',{staticClass:\"ml-2\"},[_vm._v(\" mdi-view-list-outline \")])],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImportMultiCamChooseSource.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImportMultiCamChooseSource.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ImportMultiCamChooseSource.vue?vue&type=template&id=639013b4\"\nimport script from \"./ImportMultiCamChooseSource.vue?vue&type=script&lang=ts\"\nexport * from \"./ImportMultiCamChooseSource.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-row',{staticClass:\"align-center\",attrs:{\"no-gutters\":\"\"}},[_c('v-text-field',{staticClass:\"mr-3\",attrs:{\"label\":\"Annotation File\",\"placeholder\":`Annotation File (${_vm.cameraName})`,\"outlined\":\"\",\"dense\":\"\",\"hide-details\":\"\",\"clearable\":\"\",\"value\":_vm.trackFile},on:{\"click:clear\":function($event){return _vm.$emit('clear')}}}),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){return _vm.$emit('open')}}},[_vm._v(\" Open \"),_c('v-icon',{staticClass:\"ml-2\"},[_vm._v(\" mdi-file-table \")])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImportMultiCamChooseAnnotation.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImportMultiCamChooseAnnotation.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ImportMultiCamChooseAnnotation.vue?vue&type=template&id=018de4aa\"\nimport script from \"./ImportMultiCamChooseAnnotation.vue?vue&type=script&lang=ts\"\nexport * from \"./ImportMultiCamChooseAnnotation.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-row',{staticClass:\"align-start\",staticStyle:{\"height\":\"48px\"},attrs:{\"no-gutters\":\"\"}},[_c('v-btn',{staticClass:\"mr-3\",attrs:{\"color\":\"primary\",\"disabled\":_vm.enabled},on:{\"click\":function($event){_vm.enabled = true}}},[_vm._v(\" Add Camera \"),_c('v-icon',{staticClass:\"ml-1\"},[_vm._v(\" mdi-camera \")])],1),(_vm.enabled)?[_c('v-text-field',{attrs:{\"rules\":[\n v => !!v || 'Name is required',\n v => _vm.alphaNumeric.test(v) || 'Letters and Numbers only',\n v => !v.includes(' ') || 'No spaces',\n v => !_vm.nameList.includes(v) || 'No duplicate Names'],\"label\":\"name\",\"placeholder\":\"Choose a Camera Name\",\"outlined\":\"\",\"persistent-hint\":\"\",\"dense\":\"\",\"hide-details\":\"auto\"},model:{value:(_vm.newSetName),callback:function ($$v) {_vm.newSetName=$$v},expression:\"newSetName\"}}),_c('v-btn',{staticClass:\"mx-3\",attrs:{\"color\":\"error\"},on:{\"click\":function($event){_vm.newSetName = ''; _vm.enabled = false;}}},[_vm._v(\" Cancel \")]),_c('v-btn',{attrs:{\"color\":\"success\"},on:{\"click\":_vm.addNewSet}},[_vm._v(\" Create \")])]:_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImportMultiCamAddType.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImportMultiCamAddType.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ImportMultiCamAddType.vue?vue&type=template&id=f5ba80e8&scoped=true\"\nimport script from \"./ImportMultiCamAddType.vue?vue&type=script&lang=ts\"\nexport * from \"./ImportMultiCamAddType.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"f5ba80e8\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImportMultiCamDialog.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImportMultiCamDialog.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ImportMultiCamDialog.vue?vue&type=template&id=eaf44778&scoped=true\"\nimport script from \"./ImportMultiCamDialog.vue?vue&type=script&lang=ts\"\nexport * from \"./ImportMultiCamDialog.vue?vue&type=script&lang=ts\"\nimport style0 from \"./ImportMultiCamDialog.vue?vue&type=style&index=0&id=eaf44778&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"eaf44778\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[(_vm.errorMessage || _vm.preUploadErrorMessage)?_c('div',[_c('v-alert',{staticClass:\"my-3\",attrs:{\"value\":true,\"dark\":\"dark\",\"type\":\"error\"}},[_vm._v(\" \"+_vm._s(_vm.errorMessage || _vm.preUploadErrorMessage)+\" \"),(_vm.preUploadErrorMessage || _vm.pendingUploads[0].uploading)?_c('v-btn',{staticClass:\"ml-3\",attrs:{\"dark\":\"dark\",\"small\":\"small\",\"outlined\":\"outlined\"},on:{\"click\":function($event){return _vm.abort(_vm.pendingUploads[0])}}},[_vm._v(\" Abort \")]):_vm._e()],1)],1):_vm._e(),_vm._t(\"default\",null,null,{ upload: _vm.upload })],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UploadGirder.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UploadGirder.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./UploadGirder.vue?vue&type=template&id=c6776280\"\nimport script from \"./UploadGirder.vue?vue&type=script&lang=js\"\nexport * from \"./UploadGirder.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Upload.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Upload.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Upload.vue?vue&type=template&id=016fd2a4\"\nimport script from \"./Upload.vue?vue&type=script&lang=ts\"\nexport * from \"./Upload.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-card',{staticClass:\"data-details\"},[_c('v-toolbar',{attrs:{\"flat\":\"flat\",\"dark\":\"dark\",\"dense\":\"dense\",\"color\":\"primary\"}},[_c('v-toolbar-title',{staticClass:\"subtitle-1\"},[_c('v-icon',{staticClass:\"pr-2 mdi-18px\"},[_vm._v(\" \"+_vm._s(_vm.icon)+\" \")]),_vm._v(_vm._s(_vm.title)+\" \")],1)],1),_c('girder-detail-list',{attrs:{\"rows\":_vm.info,\"title\":\"Info\"}}),_vm._t(\"actions\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DataDetails.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DataDetails.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DataDetails.vue?vue&type=template&id=632c477e\"\nimport script from \"./DataDetails.vue?vue&type=script&lang=js\"\nexport * from \"./DataDetails.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-dialog',{attrs:{\"max-width\":800,\"overlay-opacity\":0.95},scopedSlots:_vm._u([{key:\"activator\",fn:function({ attrs, on }){return [_c('v-tooltip',_vm._g(_vm._b({attrs:{\"bottom\":\"\",\"open-delay\":\"400\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: ton, attrs: tattrs }){return [_c('v-btn',_vm._g(_vm._b({attrs:{\"disabled\":_vm.datasetId === null}},'v-btn',{ ...tattrs, ..._vm.buttonOptions },false),{ ...ton, click: _vm.click }),[_c('v-icon',[_vm._v(\" mdi-content-copy \")]),_c('span',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.$vuetify.breakpoint.mdAndDown || _vm.buttonOptions.block),expression:\"!$vuetify.breakpoint.mdAndDown || buttonOptions.block\"}],staticClass:\"pl-1\"},[_vm._v(\" Clone \")]),_c('v-spacer'),(_vm.menuOptions.right)?_c('v-icon',[_vm._v(\" mdi-dock-window \")]):_vm._e()],1)]}}],null,true)},'v-tooltip',attrs,false),on),[_c('span',[_vm._v(\"Create a clone of this data\")])])]}}]),model:{value:(_vm.open),callback:function ($$v) {_vm.open=$$v},expression:\"open\"}},[(_vm.source)?_c('v-card',[(_vm.source.foreign_media_id)?[_c('v-card-title',[_vm._v(\" This dataset is a clone \")]),_c('v-card-text',[_vm._v(\" This dataset was cloned from another. It can be annotated and used for pipelines and training like a regular dataset, but its images or video are references to an external dataset. \"),_c('router-link',{attrs:{\"to\":{ name: 'viewer', params: { id: _vm.source.foreign_media_id } }}},[_vm._v(\" Open media source dataset. \")])],1)]:_vm._e(),_c('v-divider'),_c('v-card-title',[_vm._v(\" Create a new clone \")]),_c('v-card-text',[(_vm.revision)?_c('v-alert',{attrs:{\"type\":\"info\"}},[_vm._v(\" Revision \"+_vm._s(_vm.revision)+\" selected. \")]):_vm._e(),(_vm.cloneError)?_c('v-alert',{attrs:{\"type\":\"error\",\"dismissible\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.cloneError)+\" \")]):_vm._e(),_vm._v(\" Create a copy of this dataset in your personal workspace. You will be able to edit annotations and run pipelines on the clone. This operation does not copy, but instead directly references the source media. \"),_c('v-text-field',{staticClass:\"mt-4\",attrs:{\"label\":\"New clone name\",\"outlined\":\"\",\"dense\":\"\",\"block\":\"\"},model:{value:(_vm.newName),callback:function ($$v) {_vm.newName=$$v},expression:\"newName\"}}),_c('v-card',{attrs:{\"outlined\":\"\",\"flat\":\"\"}},[_c('GirderFileManager',{attrs:{\"new-folder-enabled\":\"\",\"root-location-disabled\":\"\",\"no-access-control\":\"\",\"location\":_vm.location},on:{\"update:location\":_vm.setLocation},scopedSlots:_vm._u([{key:\"row\",fn:function({ item }){return [_c('span',[_vm._v(_vm._s(item.name))]),((item.meta && item.meta.annotate))?_c('v-chip',{staticClass:\"mx-3\",attrs:{\"color\":\"white\",\"x-small\":\"\",\"outlined\":\"\"}},[_vm._v(\" dataset \")]):_vm._e()]}}],null,false,2556336483)})],1),_c('v-btn',{staticClass:\"mt-4\",attrs:{\"depressed\":\"\",\"block\":\"\",\"color\":\"primary\",\"loading\":_vm.cloneLoading,\"disabled\":!_vm.locationIsFolder || _vm.cloneLoading},on:{\"click\":_vm.doClone}},[(!_vm.locationIsFolder)?_c('span',[_vm._v(\" Choose a destination folder... \")]):('name' in _vm.location)?_c('span',[_vm._v(\" Clone into \"+_vm._s(_vm.location.name)+\" \")]):_c('span',[_vm._v(\" Something went wrong \")])])],1)],2):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Clone.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Clone.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Clone.vue?vue&type=template&id=6cd29ad7\"\nimport script from \"./Clone.vue?vue&type=script&lang=ts\"\nexport * from \"./Clone.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-tabs',{staticClass:\"px-4\",attrs:{\"dense\":\"\",\"right\":\"\"},on:{\"change\":_vm.clearSelected}},[_c('v-tab',{attrs:{\"to\":_vm.getters['Location/locationRoute']}},[_c('v-icon',{staticClass:\"mr-2\"},[_vm._v(\" mdi-folder-multiple \")]),_vm._v(\" Browse Data \")],1),_c('v-tab',{attrs:{\"to\":{ name: 'shared' }}},[_c('v-icon',{staticClass:\"tab-icon\"},[_vm._v(\" mdi-share-variant \")]),_vm._v(\" Shared with Me \")],1),_c('v-tab',{attrs:{\"to\":{ name: 'summary' }}},[_c('v-icon',{staticClass:\"tab-icon\"},[_vm._v(\" mdi-tag \")]),_vm._v(\" Label summaries \")],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ShareTab.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ShareTab.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ShareTab.vue?vue&type=template&id=1c640966&scoped=true\"\nimport script from \"./ShareTab.vue?vue&type=script&lang=ts\"\nexport * from \"./ShareTab.vue?vue&type=script&lang=ts\"\nimport style0 from \"./ShareTab.vue?vue&type=style&index=0&id=1c640966&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1c640966\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-data-table',{attrs:{\"selectable\":!_vm.getters['Location/locationIsViameFolder'],\"location\":_vm.locationStore.location,\"headers\":_vm.headers,\"page\":_vm.page,\"items-per-page\":_vm.clientSettings.rowsPerPage,\"sort-by\":_vm.sortBy,\"sort-desc\":_vm.sortDesc,\"server-items-length\":_vm.total,\"items\":_vm.dataList,\"footer-props\":{ itemsPerPageOptions: _vm.itemsPerPageOptions },\"item-key\":\"_id\",\"show-select\":\"\"},on:{\"update:page\":function($event){_vm.page=$event},\"update:itemsPerPage\":function($event){return _vm.$set(_vm.clientSettings, \"rowsPerPage\", $event)},\"update:items-per-page\":function($event){return _vm.$set(_vm.clientSettings, \"rowsPerPage\", $event)},\"update:sortBy\":function($event){_vm.sortBy=$event},\"update:sort-by\":function($event){_vm.sortBy=$event},\"update:sortDesc\":function($event){_vm.sortDesc=$event},\"update:sort-desc\":function($event){_vm.sortDesc=$event},\"input\":function($event){return _vm.$emit('input', $event)},\"update:location\":_vm.setLocation},scopedSlots:_vm._u([{key:\"item.annotator\",fn:function({item}){return [(_vm.isAnnotationFolder(item))?_c('v-btn',{staticClass:\"ml-2\",attrs:{\"x-small\":\"\",\"color\":\"primary\",\"depressed\":\"\",\"to\":{ name: 'viewer', params: { id: item._id } }}},[_vm._v(\" Launch Annotator \")]):_vm._e()]}},{key:\"no-data\",fn:function(){return [_c('span',{staticClass:\"pr-4\"},[_vm._v(\"No datasets have been shared with you yet.\")]),_c('a',{attrs:{\"href\":\"https://kitware.github.io/dive/Web-Version/#sharing-data-with-teams\"}},[_vm._v(\"Learn more about sharing\")])]},proxy:true}]),model:{value:(_vm.locationStore.selected),callback:function ($$v) {_vm.$set(_vm.locationStore, \"selected\", $$v)},expression:\"locationStore.selected\"}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DataShared.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DataShared.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./DataShared.vue?vue&type=template&id=0ed7bbe4\"\nimport script from \"./DataShared.vue?vue&type=script&lang=ts\"\nexport * from \"./DataShared.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 Vue from 'vue';\nexport default new Vue();\n","\n\n\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Home.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Home.vue?vue&type=template&id=7c2e4505\"\nimport script from \"./Home.vue?vue&type=script&lang=js\"\nexport * from \"./Home.vue?vue&type=script&lang=js\"\nimport style0 from \"./Home.vue?vue&type=style&index=0&id=7c2e4505&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',{attrs:{\"fluid\":_vm.$vuetify.breakpoint.mdAndDown}},[(_vm.outstandingJobs)?_c('v-alert',{attrs:{\"type\":\"warning\"}},[_vm._v(\" There are \"+_vm._s(_vm.outstandingJobs)+\" jobs currently in the job queue (including yours). Jobs will be processed in the order in which they are received. \")]):_vm._e(),_c('GirderJobList',{scopedSlots:_vm._u([{key:\"jobwidget\",fn:function({ item }){return [(item.dataset_id)?_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"ml-0\",attrs:{\"x-small\":\"\",\"depressed\":\"\",\"to\":{ name: 'viewer', params: { id: item.dataset_id } },\"color\":\"info\"}},'v-btn',attrs,false),on),[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-eye \")])],1)]}}],null,true)},[_c('span',[_vm._v(\"Launch dataset viewer\")])]):_vm._e(),_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"mx-2\",attrs:{\"x-small\":\"\",\"depressed\":\"\",\"href\":`/girder/#job/${item._id}`,\"color\":\"info\"}},'v-btn',attrs,false),on),[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-text-box-outline \")])],1)]}}],null,true)},[_c('span',[_vm._v(\"View job logs and manage job\")])]),_c('span',[_vm._v(_vm._s(item.statusText.replace('Inactive', 'Queued')))])]}}])}),_c('v-card',{staticClass:\"mt-4 pa-6\"},[_c('v-card',{staticClass:\"mb-6\",attrs:{\"outlined\":\"\"}},[_c('v-card-title',[_vm._v(\" Shared Job Runner \")]),_c('v-card-text',[_c('p',{staticClass:\"white--text\"},[_vm._v(\" The job runner is shared between all users of this system and has limited GPU capacity. Jobs in queue will be processed in the order in which they are received. \")])])],1),(_vm.distributedWorkerEnabled)?_c('v-card',{attrs:{\"outlined\":\"\"}},[_c('v-card-title',[_vm._v(\" Private Job runner \")]),_c('v-card-text',[_c('p',{staticClass:\"white--text\"},[_vm._v(\" You can run your own personal, dedicated job runner anywhere you have compute resources. This could be a lab workstation or a cloud environment like Google Cloud. You'll need a local installation of VIAME. \")]),_c('v-switch',{attrs:{\"input-value\":_vm.privateQueueEnabled,\"loading\":_vm.loading,\"disabled\":_vm.loading,\"label\":\"Enable private runner queue\",\"hide-details\":\"\"},on:{\"change\":_vm.setPrivateQueueEnabled}}),(_vm.privateQueueEnabled)?_c('v-alert',{staticClass:\"my-5\",attrs:{\"type\":\"warning\",\"outlined\":\"\"}},[_vm._v(\" You have enabled the private queue. Jobs created by your user account must be processed by a private runner, and will remain queued until you configure one. \")]):_vm._e()],1),_c('v-card-title',[_vm._v(\" Complete documentation \")]),_c('v-card-text',[_c('v-btn',{staticClass:\"mr-3\",attrs:{\"depressed\":\"\",\"href\":\"https://kitware.github.io/dive/Deployment-Overview/\"}},[_vm._v(\" Deployment documentation \")]),_c('v-btn',{attrs:{\"depressed\":\"\",\"href\":\"https://kitware.github.io/dive/Deployment-Docker-Compose/\"}},[_vm._v(\" Docker docs \")])],1),_c('v-card-title',[_vm._v(\" Docker Quickstart \")]),_c('v-card-text',[_c('p',{staticClass:\"white--text\"},[_vm._v(\" Run the worker container under nvidia-docker. \")]),_c('pre',{staticClass:\"code-container\"},[_vm._v(\"docker run --rm --name dive_worker \\\\\\n --gpus all \\\\\\n --ipc host \\\\\\n --volume \\\"/opt/noaa/viame:/tmp/addons/extracted:ro\\\" \\\\\\n -e \\\"DIVE_USERNAME=username\\\" \\\\\\n -e \\\"DIVE_PASSWORD=CHANGEME\\\" \\\\\\n kitware/viame-worker:latest\")])])],1):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Jobs.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Jobs.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Jobs.vue?vue&type=template&id=5a91cad8&scoped=true\"\nimport script from \"./Jobs.vue?vue&type=script&lang=ts\"\nexport * from \"./Jobs.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Jobs.vue?vue&type=style&index=0&id=5a91cad8&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5a91cad8\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',[_c('v-dialog',{attrs:{\"value\":_vm.userDialog,\"persistent\":\"\",\"max-width\":\"400px\"}},[_c('v-alert',{staticClass:\"pl-8\",attrs:{\"border\":\"left\",\"elevation\":\"2\",\"colored-border\":\"\",\"color\":\"primary\"}},[_c('img',{staticClass:\"mb-2\",staticStyle:{\"width\":\"100%\"},attrs:{\"src\":_vm.brandData.logo}}),_c('h3',[_vm._v(\"Welcome to \"+_vm._s(_vm.brandData.name)+\" (Public Beta)\")]),_c('div',[_vm._v(\" Log in or register to get started. \")]),_c('v-alert',{staticClass:\"my-4\",attrs:{\"outlined\":\"\"}},[_vm._v(\" \"+_vm._s(_vm.brandData.loginMessage)+\" \")]),_c('div',[_vm._v(\" If you need help, check the \"),_c('a',{attrs:{\"href\":\"https://kitware.github.io/dive/\"}},[_vm._v(\" User Documentation \")]),_vm._v(\" or email \"),_c('a',{attrs:{\"href\":\"mailto:viame-web@kitware.com\"}},[_vm._v(\"viame-web@kitware.com\")])])],1),_c('GirderAuthentication',{attrs:{\"register\":\"\",\"forgot-password-url\":\"/girder#?dialog=resetpassword\"}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Login.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Login.vue?vue&type=template&id=27e41318\"\nimport script from \"./Login.vue?vue&type=script&lang=ts\"\nexport * from \"./Login.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-main',[_c('NavigationBar'),_c('router-view')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('v-app-bar',{attrs:{\"app\":\"\"}},[_c('NavigationTitle',{attrs:{\"name\":_vm.brandData.name}}),_c('v-tabs',{staticClass:\"mx-2\",attrs:{\"icons-and-text\":\"\",\"color\":\"accent\"}},[_c('v-tab',{attrs:{\"exact\":\"\",\"to\":_vm.locationRoute}},[_vm._v(\" Data \"),_c('v-icon',[_vm._v(\"mdi-database\")])],1),_c('JobsTab'),(_vm.isAdmin)?_c('v-tab',{attrs:{\"to\":`/admin`}},[_vm._v(\" Admin \"),_c('v-icon',[_vm._v(\"mdi-badge-account\")])],1):_vm._e()],1),_c('v-spacer'),_c('GirderSearch',{staticClass:\"mx-2 grow\",attrs:{\"search-types\":['user', 'folder'],\"placeholder\":\"search\",\"hide-options-menu\":\"\",\"hide-search-icon\":\"\"},on:{\"select\":_vm.setRouteFromLocation}}),_c('user-guide-button'),_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":_vm.logout}},[_vm._v(\" Logout \")])],1),(_vm.brandData.alertMessage)?_c('v-banner',{attrs:{\"color\":\"warning\",\"app\":\"\"}},[_c('v-icon',{staticClass:\"pr-2\",attrs:{\"large\":\"\"}},[_vm._v(\" mdi-alert-circle \")]),_vm._v(\" \"+_vm._s(_vm.brandData.alertMessage)+\" \")],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-toolbar-title',{staticClass:\"my-title mx-5\"},[_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('span',_vm._g({},on),[_vm._t(\"default\",function(){return [_vm._v(_vm._s(_vm.name))]})],2)]}}],null,true)},[_c('span',[_vm._v(_vm._s(_vm.version))])])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./NavigationTitle.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./NavigationTitle.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./NavigationTitle.vue?vue&type=template&id=5c9d29d2&scoped=true\"\nimport script from \"./NavigationTitle.vue?vue&type=script&lang=js\"\nexport * from \"./NavigationTitle.vue?vue&type=script&lang=js\"\nimport style0 from \"./NavigationTitle.vue?vue&type=style&index=0&id=5c9d29d2&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5c9d29d2\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(!_vm.annotating)?_c('v-btn',{staticClass:\"mx-3\",attrs:{\"dense\":\"\",\"depressed\":\"\",\"href\":_vm.userGuideLink,\"target\":\"_blank\",\"color\":\"secondary darken-2\"}},[_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\" mdi-help-circle \")]),_vm._v(\" User Guide \")],1):_c('v-dialog',{attrs:{\"width\":\"800\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._g({staticClass:\"mx-1\",attrs:{\"dense\":\"\",\"depressed\":\"\",\"target\":\"_blank\",\"color\":\"secondary darken-2\"}},on),[_c('v-icon',[_vm._v(\" mdi-help-circle \")]),_c('span',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.$vuetify.breakpoint.mdAndDown),expression:\"!$vuetify.breakpoint.mdAndDown\"}],staticClass:\"pl-1\"},[_vm._v(\" Help \")])],1)]}}]),model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}},[_c('v-card',[_c('user-guide-dialog'),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{staticClass:\"ma-2\",attrs:{\"dense\":\"\",\"depressed\":\"\",\"href\":_vm.userGuideLink,\"target\":\"_blank\",\"color\":\"secondary darken-2\"}},[_vm._v(\" User Guide \"),_c('v-icon',{staticClass:\"pl-2\"},[_vm._v(\" mdi-open-in-new \")])],1)],1)],1)],1),_c('div')],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"d-flex justify-space-around flex-wrap pa-4\"},_vm._l((_vm.categories),function(category){return _c('v-card',{key:category.name,staticClass:\"my-3\",attrs:{\"id\":\"helpdialog\",\"outlined\":\"\",\"flat\":\"\",\"width\":\"360\"}},[_c('v-card-title',[_vm._v(_vm._s(category.name))]),_vm._l((category.data),function(item,index){return _c('v-tooltip',{key:`${item.name}_${index}`,attrs:{\"color\":\"red\",\"top\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-row',_vm._g({staticClass:\"helpContextRow ma-0 align-center\"},on),[_c('v-col',{attrs:{\"cols\":\"4\"}},[_vm._v(\" \"+_vm._s(item.name)+\" \")]),_c('v-col',{attrs:{\"cols\":\"2\"}},[_c('v-icon',[_vm._v(_vm._s(item.icon))])],1),_c('v-col',{attrs:{\"col\":\"6\"}},_vm._l((item.actions),function(action){return _c('div',{key:action},[_vm._v(\" \"+_vm._s(action)+\" \")])}),0)],1)]}}],null,true)},[_c('span',[_vm._v(\" \"+_vm._s(item.description))])])})],2)}),1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UserGuideDialog.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UserGuideDialog.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./UserGuideDialog.vue?vue&type=template&id=e2c21f3a&scoped=true\"\nimport script from \"./UserGuideDialog.vue?vue&type=script&lang=ts\"\nexport * from \"./UserGuideDialog.vue?vue&type=script&lang=ts\"\nimport style0 from \"./UserGuideDialog.vue?vue&type=style&index=0&id=e2c21f3a&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e2c21f3a\",\n null\n \n)\n\nexport default component.exports","\n\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UserGuideButton.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UserGuideButton.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./UserGuideButton.vue?vue&type=template&id=acef0b50\"\nimport script from \"./UserGuideButton.vue?vue&type=script&lang=js\"\nexport * from \"./UserGuideButton.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-tab',{attrs:{\"to\":\"/jobs\"}},[_vm._v(\" Jobs \"),_c('v-badge',{attrs:{\"value\":_vm.getters['Jobs/runningJobIds'],\"overlap\":\"\",\"bottom\":\"\",\"offset-x\":\"-6\",\"offset-y\":\"16\"}},[_c('template',{slot:\"badge\"},[_c('v-icon',{staticClass:\"rotate\",attrs:{\"dark\":\"\"}},[_vm._v(\" mdi-autorenew \")])],1),_c('v-icon',[_vm._v(\"mdi-format-list-checks\")])],2)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./JobsTab.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./JobsTab.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./JobsTab.vue?vue&type=template&id=35fa69fe\"\nimport script from \"./JobsTab.vue?vue&type=script&lang=ts\"\nexport * from \"./JobsTab.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./NavigationBar.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./NavigationBar.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./NavigationBar.vue?vue&type=template&id=1caf2ca5\"\nimport script from \"./NavigationBar.vue?vue&type=script&lang=js\"\nexport * from \"./NavigationBar.vue?vue&type=script&lang=js\"\nimport style0 from \"./NavigationBar.vue?vue&type=style&index=0&id=1caf2ca5&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RouterPage.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RouterPage.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./RouterPage.vue?vue&type=template&id=fcd01f52\"\nimport script from \"./RouterPage.vue?vue&type=script&lang=ts\"\nexport * from \"./RouterPage.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c;return _c('v-container',[_c('v-card',{staticClass:\"mt-4\"},[_c('v-card-title',{staticClass:\"text-h6\"},[_c('v-tabs',{model:{value:(_vm.currentTab),callback:function ($$v) {_vm.currentTab=$$v},expression:\"currentTab\"}},[_c('v-tab',[_vm._v(\" Recents \")]),_c('v-tab',[_vm._v(\" Users \")]),_c('v-tab',[_vm._v(\" Jobs \")]),_c('v-tab',[_vm._v(\" Addons \")]),_c('v-tab',[_vm._v(\" Branding \")])],1)],1),_c('v-tabs-items',{model:{value:(_vm.currentTab),callback:function ($$v) {_vm.currentTab=$$v},expression:\"currentTab\"}},[_c('v-tab-item',[_c('AdminRecents')],1),_c('v-tab-item',[_c('UserRecents')],1),_c('v-tab-item',[_c('AdminJobs')],1),_c('v-tab-item',[_c('AddOns',{on:{\"addon-job-run\":function($event){_vm.currentTab = 2}}})],1),_c('v-tab-item',[_c('AdminBranding')],1)],1),_c('v-card-text')],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',[_c('v-card',[_c('v-card-title',[_vm._v(\" AddOns \")]),_c('v-card-text',[_c('p',[_vm._v(\" Below is a list of the available configuration addons for working with VIAME. Select the addons you want to download and install. If an addon is already installed and you want to install again you must use the 'Force Download' switch \")]),_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"headers\":_vm.headers,\"items\":_vm.data,\"single-select\":false,\"item-key\":\"Name\",\"items-per-page\":-1,\"hide-default-footer\":\"\",\"show-select\":\"\"},scopedSlots:_vm._u([{key:\"item.Installed\",fn:function({ item }){return [_c('v-icon',{attrs:{\"large\":\"\",\"color\":item.Installed ? 'success' : 'error'}},[_vm._v(\" \"+_vm._s(item.Installed ? 'mdi-check' : 'mdi-cancel')+\" \")])]}}]),model:{value:(_vm.selected),callback:function ($$v) {_vm.selected=$$v},expression:\"selected\"}})],1),_c('v-card-actions',[_c('v-spacer'),_c('v-switch',{attrs:{\"label\":\"Force Download\"},model:{value:(_vm.forceDownload),callback:function ($$v) {_vm.forceDownload=$$v},expression:\"forceDownload\"}}),_c('v-btn',{staticClass:\"ml-2\",attrs:{\"color\":\"success\",\"disabled\":!_vm.selected.length},on:{\"click\":_vm.downloadAddons}},[_vm._v(\" Add Selected \")])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Addons.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Addons.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Addons.vue?vue&type=template&id=adde5c2c\"\nimport script from \"./Addons.vue?vue&type=script&lang=ts\"\nexport * from \"./Addons.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',[_c('v-card',[_c('v-card-title',[_vm._v(\" Recent Datasets \")]),_c('v-card-text',[_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"headers\":_vm.headers,\"items\":_vm.data,\"item-key\":\"Name\",\"items-per-page\":-1,\"hide-default-footer\":\"\"},scopedSlots:_vm._u([{key:\"item.userDir\",fn:function({ item }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"ma-1\",attrs:{\"small\":\"\",\"depressed\":\"\",\"to\":`/user/${item.userDir}`,\"color\":\"info\"}},'v-btn',attrs,false),on),[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-account \")])],1)]}}],null,true)},[_c('span',[_vm._v(\"Launch User Directory\")])])]}},{key:\"item.type\",fn:function({ item }){return [_c('v-icon',[_vm._v(\" \"+_vm._s(item.type === 'video' ? 'mdi-file-video' : 'mdi-camera-burst'))])]}},{key:\"item.dataset\",fn:function({ item }){return [_c('v-btn',{attrs:{\"color\":\"primary\",\"to\":`/viewer/${item.dataset}`}},[_vm._v(\" Open Dataset \")])]}}]),model:{value:(_vm.selected),callback:function ($$v) {_vm.selected=$$v},expression:\"selected\"}})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","// Admin endpoints used for review and managment\nimport girderRest from 'platform/web-girder/plugins/girder';\nfunction getRecentDatasets(limit, offset) {\n return girderRest.get(`dive_dataset?limit=${limit}&sort=created&sortdir=-1&offset=${offset}&published=false&shared=false`);\n}\nfunction getJobTypesStatus() {\n return girderRest.get('job/typeandstatus/all');\n}\nfunction getRecentJobs(limit, offset, statuses, types) {\n return girderRest.get('job/all', {\n params: {\n limit,\n offset,\n statuses: JSON.stringify(statuses),\n sort: 'created',\n sortdir: -1,\n types: JSON.stringify(types),\n },\n });\n}\nfunction getRecentUsers(limit, offset) {\n return girderRest.get(`user?limit=${limit}&sort=created&sortdir=-1&offset=${offset}`);\n}\nfunction cancelJob(jobId) {\n return girderRest.put(`job/${jobId}/cancel`);\n}\nfunction deleteJob(jobId) {\n return girderRest.delete(`job/${jobId}`);\n}\nexport { getRecentDatasets, getRecentJobs, getRecentUsers, getJobTypesStatus, cancelJob, deleteJob, };\n","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminRecents.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminRecents.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AdminRecents.vue?vue&type=template&id=45c88112\"\nimport script from \"./AdminRecents.vue?vue&type=script&lang=ts\"\nexport * from \"./AdminRecents.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',[_c('v-card',[_c('v-card-title',[_vm._v(\" Recent Users \")]),_c('v-card-text',[_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"headers\":_vm.headers,\"items\":_vm.data,\"item-key\":\"Name\",\"items-per-page\":-1,\"hide-default-footer\":\"\"},scopedSlots:_vm._u([{key:\"item.dir\",fn:function({ item }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"ma-1\",attrs:{\"small\":\"\",\"depressed\":\"\",\"to\":`/user/${item.dir }`,\"color\":\"info\"}},'v-btn',attrs,false),on),[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-account \")])],1)]}}],null,true)},[_c('span',[_vm._v(\"Launch User Directory\")])])]}},{key:\"item.created\",fn:function({ item }){return [_c('span',[_vm._v(\" \"+_vm._s(item.created))])]}}]),model:{value:(_vm.selected),callback:function ($$v) {_vm.selected=$$v},expression:\"selected\"}})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UserRecents.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./UserRecents.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./UserRecents.vue?vue&type=template&id=44723ab9\"\nimport script from \"./UserRecents.vue?vue&type=script&lang=ts\"\nexport * from \"./UserRecents.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',[_c('v-card',[_c('v-card-title',[_vm._v(\" Recent Jobs \")]),_c('v-card-text',[_c('v-row',[_c('v-combobox',{attrs:{\"items\":_vm.jobTypes,\"chips\":\"\",\"label\":\"Job Types\",\"multiple\":\"\",\"outlined\":\"\"},on:{\"change\":_vm.getData},scopedSlots:_vm._u([{key:\"selection\",fn:function({\n attrs, item, select, selected,\n }){return [_c('v-chip',_vm._b({attrs:{\"input-value\":selected,\"close\":\"\"},on:{\"click\":select,\"click:close\":function($event){return _vm.removeTypeChip(item)}}},'v-chip',attrs,false),[_c('strong',[_vm._v(_vm._s(item))]),_vm._v(\"  \")])]}}]),model:{value:(_vm.filterTypes),callback:function ($$v) {_vm.filterTypes=$$v},expression:\"filterTypes\"}})],1),_c('v-row',[_c('v-combobox',{attrs:{\"items\":_vm.jobStatusList,\"chips\":\"\",\"label\":\"Job Statuses\",\"multiple\":\"\",\"outlined\":\"\"},on:{\"change\":_vm.getData},scopedSlots:_vm._u([{key:\"selection\",fn:function({\n attrs, item, select, selected,\n }){return [_c('v-chip',_vm._b({attrs:{\"input-value\":selected,\"color\":_vm.getJobStatusColor(item),\"close\":\"\"},on:{\"click\":select,\"click:close\":function($event){return _vm.removeStatusChip(item)}}},'v-chip',attrs,false),[_c('strong',[_vm._v(_vm._s(item))]),_vm._v(\"  \")])]}}]),model:{value:(_vm.filterStatus),callback:function ($$v) {_vm.filterStatus=$$v},expression:\"filterStatus\"}})],1),_c('v-data-table',{staticClass:\"elevation-1\",attrs:{\"headers\":_vm.headers,\"items\":_vm.data,\"item-key\":\"Title\",\"items-per-page\":-1,\"hide-default-footer\":\"\"},scopedSlots:_vm._u([{key:\"item.userDir\",fn:function({ item }){return [(item.userDir === 'Unknown')?_c('div',[_vm._v(\" Unknown \")]):_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"ma-1\",attrs:{\"small\":\"\",\"depressed\":\"\",\"to\":`/user/${item.userDir}`,\"color\":\"info\"}},'v-btn',attrs,false),on),[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-account \")])],1)]}}],null,true)},[_c('span',[_vm._v(\"Launch User Directory\")])])]}},{key:\"item.type\",fn:function({ item }){return [_vm._v(\" \"+_vm._s(item.type)+\" \")]}},{key:\"item.status\",fn:function({ item }){return [_c('JobProgress',{attrs:{\"formatted-job\":_vm.formatStatus(item.status)}})]}},{key:\"item.params\",fn:function({ item }){return [(item.type === 'pipelines')?_c('div',[(item.params.input_folder)?_c('div',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"ml-0\",attrs:{\"x-small\":\"\",\"depressed\":\"\",\"to\":{ name: 'viewer', params: { id: item.params.input_folder } },\"color\":\"info\"}},'v-btn',attrs,false),on),[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-eye \")])],1)]}}],null,true)},[_c('span',[_vm._v(\"Launch dataset viewer\")])])],1):_vm._e()]):_vm._e(),(item.type === 'training')?_c('div',[(item.params.dataset_input_list)?_c('div',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"ml-0\",attrs:{\"x-small\":\"\",\"depressed\":\"\",\"color\":\"info\"},on:{\"click\":function($event){return _vm.viewTrainingList(item.params.dataset_input_list)}}},'v-btn',attrs,false),on),[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-eye \")])],1)]}}],null,true)},[_c('span',[_vm._v(\"View Training List\")])])],1):_vm._e()]):_vm._e()]}},{key:\"item.actions\",fn:function({ item }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"ma-2\",attrs:{\"x-small\":\"\",\"depressed\":\"\",\"href\":`/girder/#job/${item.actions}`,\"color\":\"info\"}},'v-btn',attrs,false),on),[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-text-box-outline \")])],1)]}}],null,true)},[_c('span',[_vm._v(\"View job logs and manage job\")])]),(item.status < 3 )?_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"ma-2\",attrs:{\"x-small\":\"\",\"depressed\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){return _vm.modifyJob('Cancel', item.actions, item.title)}}},'v-btn',attrs,false),on),[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-close-circle-outline \")])],1)]}}],null,true)},[_c('span',[_vm._v(\"Cancel Job\")])]):_vm._e(),_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"ma-2\",attrs:{\"x-small\":\"\",\"depressed\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.modifyJob('Delete', item.actions, item.title)}}},'v-btn',attrs,false),on),[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-delete \")])],1)]}}],null,true)},[_c('span',[_vm._v(\"Delete Job\")])])]}}])})],1)],1),_c('v-dialog',{attrs:{\"width\":\"250\",\"color\":\"blue-grey darken-4\"},model:{value:(_vm.trainingListDialog),callback:function ($$v) {_vm.trainingListDialog=$$v},expression:\"trainingListDialog\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\" Training Datasets \")]),_c('v-card-text',_vm._l((_vm.trainingInputList),function(item,index){return _c('v-row',{key:item[0],staticClass:\"my-2 mx-auto\"},[_c('v-col',[_c('span',[_vm._v(\" Training Dataset # \"+_vm._s(index)+\" \")])]),_c('v-col',[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"mx-3\",attrs:{\"depressed\":\"\",\"small\":\"\",\"to\":{ name: 'viewer', params: { id: item[0] } },\"color\":\"info\"}},'v-btn',attrs,false),on),[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-eye \")])],1)]}}],null,true)},[_c('span',[_vm._v(\"Launch dataset viewer\")])])],1)],1)}),1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":\"default\",\"depressed\":\"\"},on:{\"click\":function($event){_vm.trainingListDialog = false}}},[_vm._v(\" Dismiss \")])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminJobs.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminJobs.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AdminJobs.vue?vue&type=template&id=1f6f79b2\"\nimport script from \"./AdminJobs.vue?vue&type=script&lang=ts\"\nexport * from \"./AdminJobs.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-container',[_c('v-card',[_c('v-card-title',[_vm._v(\" Branding \")]),_c('v-card-text',[_c('p',[_vm._v(\" Below are settings that can be configured for branding. \")]),_c('v-row',[_c('v-text-field',{attrs:{\"label\":\"Name\",\"type\":\"text\"},model:{value:(_vm.brandData.name),callback:function ($$v) {_vm.$set(_vm.brandData, \"name\", $$v)},expression:\"brandData.name\"}})],1),_c('v-row',[_c('v-text-field',{attrs:{\"type\":\"text\",\"label\":\"Login Message\"},model:{value:(_vm.brandData.loginMessage),callback:function ($$v) {_vm.$set(_vm.brandData, \"loginMessage\", $$v)},expression:\"brandData.loginMessage\"}})],1),_c('v-row',[_c('v-text-field',{attrs:{\"type\":\"text\",\"label\":\"Training Message\"},model:{value:(_vm.brandData.trainingMessage),callback:function ($$v) {_vm.$set(_vm.brandData, \"trainingMessage\", $$v)},expression:\"brandData.trainingMessage\"}})],1),_c('v-row',[_c('v-text-field',{attrs:{\"type\":\"text\",\"label\":\"Alert Message\",\"clearable\":\"\"},model:{value:(_vm.brandData.alertMessage),callback:function ($$v) {_vm.$set(_vm.brandData, \"alertMessage\", $$v)},expression:\"brandData.alertMessage\"}})],1)],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{staticClass:\"ml-2\",attrs:{\"color\":\"success\"},on:{\"click\":_vm.uploadBranding}},[_vm._v(\" Set Branding \")])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminBranding.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminBranding.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AdminBranding.vue?vue&type=template&id=cf3741ba\"\nimport script from \"./AdminBranding.vue?vue&type=script&lang=ts\"\nexport * from \"./AdminBranding.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/@vue/vue-loader-v15/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\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminPage.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AdminPage.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./AdminPage.vue?vue&type=template&id=297cc7fd\"\nimport script from \"./AdminPage.vue?vue&type=script&lang=js\"\nexport * from \"./AdminPage.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('Viewer',{key:_vm.id,ref:\"viewerRef\",attrs:{\"id\":_vm.id,\"revision\":_vm.revisionNum,\"current-set\":_vm.set,\"read-only-mode\":!!_vm.getters['Jobs/datasetRunningState'](_vm.id),\"comparison-sets\":_vm.comparisonSets},on:{\"large-image-warning\":function($event){return _vm.largeImageWarning()},\"update:set\":_vm.routeSet},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_c('ViewerAlert'),_c('NavigationTitle',{attrs:{\"name\":_vm.brandData.name}}),_c('v-tabs',{staticClass:\"mx-2\",staticStyle:{\"flex-basis\":\"0\",\"flex-grow\":\"0\"},attrs:{\"icons-and-text\":\"\",\"hide-slider\":\"\"}},[_c('v-tab',{attrs:{\"to\":_vm.getters['Location/locationRoute']}},[_vm._v(\" Data \"),_c('v-icon',[_vm._v(\"mdi-database\")])],1),_c('JobsTab')],1)]},proxy:true},{key:\"title-right\",fn:function(){return [_c('RunPipelineMenu',_vm._b({attrs:{\"selected-dataset-ids\":[_vm.id],\"running-pipelines\":_vm.runningPipelines,\"read-only-mode\":_vm.revisionNum !== undefined}},'RunPipelineMenu',{ buttonOptions: _vm.buttonOptions, menuOptions: _vm.menuOptions, typeList: _vm.typeList },false)),_c('ImportAnnotations',{attrs:{\"button-options\":_vm.buttonOptions,\"menu-options\":_vm.menuOptions,\"read-only-mode\":!!_vm.getters['Jobs/datasetRunningState'](_vm.id) || _vm.revisionNum !== undefined,\"dataset-id\":_vm.id,\"block-on-unsaved\":\"\"}}),_c('Export',_vm._b({attrs:{\"dataset-ids\":[_vm.id],\"block-on-unsaved\":\"\"}},'Export',{ buttonOptions: _vm.buttonOptions, menuOptions: _vm.menuOptions },false)),(_vm.$store.state.Dataset.meta)?_c('Clone',_vm._b({attrs:{\"dataset-id\":_vm.id,\"revision\":_vm.revisionNum}},'Clone',{ buttonOptions: _vm.buttonOptions, menuOptions: _vm.menuOptions },false)):_vm._e()]},proxy:true},{key:\"right-sidebar\",fn:function(){return [_c('SidebarContext',{scopedSlots:_vm._u([{key:\"default\",fn:function({ name, subCategory }){return [_c(name,{tag:\"component\",attrs:{\"sub-category\":subCategory},on:{\"update:revision\":_vm.routeRevision}})]}}])})]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-main',{staticClass:\"viewer\"},[_c('v-app-bar',{attrs:{\"app\":\"\"},scopedSlots:_vm._u([{key:\"extension\",fn:function(){return [_c('EditorMenu',_vm._b({attrs:{\"tail-settings\":_vm.clientSettings.annotatorPreferences.trackTails},on:{\"update:tailSettings\":function($event){return _vm.$set(_vm.clientSettings.annotatorPreferences, \"trackTails\", $event)},\"update:tail-settings\":function($event){return _vm.$set(_vm.clientSettings.annotatorPreferences, \"trackTails\", $event)},\"set-annotation-state\":_vm.handler.setAnnotationState,\"exit-edit\":_vm.handler.trackAbort}},'EditorMenu',{\n editingMode: _vm.editingMode,\n visibleModes: _vm.visibleModes,\n editingTrack: _vm.editingTrack,\n recipes: _vm.recipes,\n multiSelectActive: _vm.multiSelectActive,\n editingDetails: _vm.editingDetails,\n groupEditActive: _vm.editingGroupId !== null,\n },false),[_c('template',{slot:\"delete-controls\"},[_c('delete-controls',_vm._b({staticClass:\"mr-2\",on:{\"delete-point\":_vm.handler.removePoint,\"delete-annotation\":_vm.handler.removeAnnotation}},'delete-controls',{ editingMode: _vm.editingMode, selectedFeatureHandle: _vm.selectedFeatureHandle },false))],1)],2),(_vm.multiCamList.length > 1)?_c('v-select',{staticClass:\"shrink\",staticStyle:{\"width\":\"180px\"},attrs:{\"value\":_vm.selectedCamera,\"items\":_vm.multiCamList,\"label\":\"Camera\",\"outlined\":\"\",\"hide-details\":\"\",\"dense\":\"\"},on:{\"change\":_vm.changeCamera},scopedSlots:_vm._u([{key:\"item\",fn:function({ item }){return [_vm._v(\" \"+_vm._s(item)+\" \"+_vm._s(item === _vm.defaultCamera ? '(Default)' : '')+\" \")]}}],null,false,4228490455)}):_vm._e(),_c('v-divider',{staticClass:\"mx-2\",attrs:{\"vertical\":\"\"}}),_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({on:{\"click\":function($event){return _vm.context.toggle()}}},on),[_vm._v(\" \"+_vm._s(_vm.context.state.active ? 'mdi-chevron-right-box' : 'mdi-chevron-left-box')+\" \")])]}}])},[_c('span',[_vm._v(\"Menus for Advanced Tools/Settings\")])]),_vm._t(\"extension-right\")]},proxy:true}],null,true)},[_vm._t(\"title\"),_c('span',{staticClass:\"title pl-3 flex-row\",staticStyle:{\"white-space\":\"nowrap\",\"overflow\":\"hidden\",\"text-overflow\":\"ellipsis\"}},[_vm._v(\" \"+_vm._s(_vm.datasetName)+\" \"),(_vm.currentSet || _vm.sets.length > 0 || _vm.comparisonSets.length)?_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-chip',_vm._g({attrs:{\"outlined\":\"\",\"color\":_vm.annotationSetColor(_vm.currentSet || 'default'),\"small\":\"\"},on:{\"click\":function($event){return _vm.context.toggle('AnnotationSets')}}},on),[_vm._v(\" \"+_vm._s(_vm.currentSet || 'default'))])]}}],null,false,7279038)},[_c('span',[_vm._v(\"Custom Annotation Set. Click to open the Annotation Set Settings\")])]):_vm._e(),(_vm.displayComparisons && _vm.displayComparisons.length)?_c('span',{staticClass:\"px-2\",staticStyle:{\"font-size\":\"small\"}},[_vm._v(\" Comparing: \")]):_vm._e(),(_vm.displayComparisons && _vm.displayComparisons.length)?_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: onIcon }){return [_c('v-chip',_vm._g({staticClass:\"pl-2\",attrs:{\"small\":\"\",\"outlined\":\"\",\"color\":_vm.annotationSetColor(_vm.displayComparisons[0] || 'default')}},onIcon),[_vm._v(\" \"+_vm._s(_vm.displayComparisons[0]))])]}}],null,false,2350737627)},[_vm._v(\" Click on the \"+_vm._s(_vm.currentSet || 'default')+\" chip to open the Comparison Menu \")]):_vm._e(),(_vm.readonlyState)?_c('div',{staticClass:\"mx-auto my-0 pa-0\",staticStyle:{\"line-height\":\"0.2em\"}},[_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-chip',_vm._g({staticClass:\"warning pr-1\",staticStyle:{\"white-space\":\"nowrap\",\"display\":\"inline\"},attrs:{\"small\":\"\"}},on),[_vm._v(\" Read Only Mode \"),_c('v-icon',{staticClass:\"pl-1\",attrs:{\"small\":\"\"}},[_vm._v(\"mdi-information-outline\")])],1)]}}],null,false,1423572741)},[_c('span',[_vm._v(\"Read Only Mode: Editing, Deleting and Importing actions are disabled\")])])],1):_vm._e()],1),_c('v-spacer'),_vm._t(\"title-right\"),_c('user-guide-button',{attrs:{\"annotating\":\"\"}}),_c('v-tooltip',{attrs:{\"bottom\":\"\",\"disabled\":!_vm.readonlyState},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-badge',{attrs:{\"overlap\":\"\",\"bottom\":\"\",\"color\":_vm.readonlyState ? 'warning' : undefined,\"icon\":_vm.readonlyState ? 'mdi-exclamation-thick' : undefined,\"content\":!_vm.readonlyState ? _vm.pendingSaveCount : undefined,\"value\":_vm.readonlyState || _vm.pendingSaveCount > 0,\"offset-x\":\"14\",\"offset-y\":\"18\"}},[_c('div',_vm._g({},on),[_c('v-btn',{attrs:{\"icon\":\"\",\"disabled\":_vm.readonlyState || _vm.pendingSaveCount === 0 || _vm.saveInProgress},on:{\"click\":function($event){return _vm.save(_vm.currentSet)}}},[_c('v-icon',[_vm._v(\" mdi-content-save \")])],1)],1)])]}}])},[_c('span',[_vm._v(\"Read only mode, cannot save changes\")])])],2),_c('v-row',{staticClass:\"fill-height\",staticStyle:{\"min-width\":\"700px\"},attrs:{\"no-gutters\":\"\"}},[_c('sidebar',{on:{\"import-types\":function($event){return _vm.trackFilters.importTypes($event)},\"track-seek\":function($event){return _vm.aggregateController.seek($event)}}},[[_c('v-divider'),_c('primary-attribute-track-filter',{attrs:{\"toggle\":_vm.context.toggle}}),(_vm.context.state.active !== 'TypeThreshold')?_c('ConfidenceFilter',{staticClass:\"ma-2 mb-0\",attrs:{\"confidence\":_vm.confidenceFilters.default},on:{\"update:confidence\":function($event){return _vm.$set(_vm.confidenceFilters, \"default\", $event)},\"end\":_vm.saveThreshold}},[_c('a',{staticStyle:{\"text-decoration\":\"underline\",\"color\":\"white\"},on:{\"click\":function($event){return _vm.context.toggle('TypeThreshold')}}},[_vm._v(\" Advanced \")])]):_vm._e()]],2),_c('v-col',{staticClass:\"d-flex flex-column grow\",staticStyle:{\"position\":\"relative\"},attrs:{\"dense\":\"\"}},[(_vm.progress.loaded)?_c('div',{directives:[{name:\"mousetrap\",rawName:\"v-mousetrap\",value:([\n { bind: 'n', handler: () => !_vm.readonlyState && _vm.handler.trackAdd() },\n { bind: 'r', handler: () => _vm.aggregateController.resetZoom() },\n { bind: 'esc', handler: () => _vm.handler.trackAbort() },\n ]),expression:\"[\\n { bind: 'n', handler: () => !readonlyState && handler.trackAdd() },\\n { bind: 'r', handler: () => aggregateController.resetZoom() },\\n { bind: 'esc', handler: () => handler.trackAbort() },\\n ]\"}],staticClass:\"d-flex flex-column grow\"},[_c('div',{staticClass:\"d-flex grow\"},_vm._l((_vm.multiCamList),function(camera){return _c('div',{key:camera,staticClass:\"d-flex flex-column grow\",style:({ height: `calc(100% - ${_vm.controlsHeight}px)` }),on:{\"mousedown\":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;return _vm.changeCamera(camera, $event)},\"mouseup\":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;return _vm.changeCamera(camera, $event)}}},[((_vm.imageData[camera].length || _vm.videoUrl[camera]) && _vm.progress.loaded)?_c(_vm.datasetType === 'image-sequence' ? 'image-annotator'\n : _vm.datasetType === 'video' ? 'video-annotator' : 'large-image-annotator',_vm._b({ref:\"subPlaybackComponent\",refInFor:true,tag:\"component\",staticClass:\"fill-height\",class:{ 'selected-camera': _vm.selectedCamera === camera && camera !== 'singleCam' },on:{\"large-image-warning\":function($event){return _vm.$emit('large-image-warning', true)}}},'component',{\n imageData: _vm.imageData[camera],\n videoUrl: _vm.videoUrl[camera],\n updateTime: _vm.updateTime,\n frameRate: _vm.frameRate,\n originalFps: _vm.originalFps,\n camera,\n brightness: _vm.brightness,\n intercept: _vm.intercept,\n getTiles: _vm.getTiles,\n getTileURL: _vm.getTileURL,\n },false),[_c('LayerManager',{attrs:{\"camera\":camera}})],1):_vm._e()],1)}),0),_c('ControlsContainer',_vm._b({ref:\"controlsRef\",staticClass:\"shrink\",attrs:{\"collapsed\":_vm.controlsCollapsed},on:{\"update:collapsed\":function($event){_vm.controlsCollapsed=$event},\"select-track\":_vm.handler.trackSelect}},'ControlsContainer',{\n lineChartData: _vm.lineChartData, eventChartData: _vm.eventChartData, groupChartData: _vm.groupChartData, datasetType: _vm.datasetType,\n },false))],1):_c('div',{staticClass:\"d-flex justify-center align-center fill-height\"},[(_vm.loadError)?_c('v-alert',{attrs:{\"type\":\"error\",\"prominent\":\"\",\"max-width\":\"60%\"}},[_c('p',{staticClass:\"ma-2\"},[_vm._v(\" \"+_vm._s(_vm.loadError)+\" \")])]):_c('v-progress-circular',{staticClass:\"main-progress-linear\",attrs:{\"indeterminate\":_vm.progressValue === 0,\"value\":_vm.progressValue,\"size\":\"100\",\"width\":\"15\",\"color\":\"light-blue\",\"rotate\":\"-90\"}},[(_vm.progressValue === 0)?_c('span',[_vm._v(\"Loading\")]):_c('span',[_vm._v(_vm._s(_vm.progressValue)+\"%\")])])],1)]),_vm._t(\"right-sidebar\")],2)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { ref, computed, set as VueSet, del as VueDel, } from 'vue';\nexport default function UseAttributes({ markChangesPending, trackStyleManager, selectedTrackId, cameraStore, }) {\n const attributes = ref({});\n const attributeFilters = ref({ track: [], detection: [] });\n const timelineFilter = ref({\n appliedTo: ['all'],\n active: true,\n value: true,\n type: 'key',\n });\n const timelineEnabled = ref(false);\n function loadAttributes(metadataAttributes) {\n attributes.value = metadataAttributes;\n Object.values(attributes.value).forEach((attribute) => {\n if (attribute.color === undefined) {\n // eslint-disable-next-line no-param-reassign\n attribute.color = trackStyleManager.typeStyling.value.color(attribute.name);\n }\n });\n }\n const attributesList = computed(() => Object.values(attributes.value));\n function setAttribute({ data, oldAttribute }, updateAllTracks = false) {\n if (oldAttribute && data.key !== oldAttribute.key) {\n // Name change should delete the old attribute and create a new one with the updated id\n VueDel(attributes.value, oldAttribute.key);\n markChangesPending({ action: 'delete', attribute: oldAttribute });\n // Create a new attribute to replace it\n }\n if (oldAttribute === undefined) {\n // eslint-disable-next-line no-param-reassign\n data.color = trackStyleManager.typeStyling.value.color(data.name);\n }\n if (updateAllTracks && oldAttribute) {\n // TODO: Lengthy track/detection attribute updating function\n }\n VueSet(attributes.value, data.key, data);\n markChangesPending({ action: 'upsert', attribute: attributes.value[data.key] });\n }\n function deleteAttribute({ data }, removeFromTracks = false) {\n if (attributes.value[data.key] !== undefined) {\n markChangesPending({ action: 'delete', attribute: attributes.value[data.key] });\n VueDel(attributes.value, data.key);\n }\n if (removeFromTracks) {\n // TODO: Lengthty track/detection attribute deletion function\n }\n }\n function addAttributeFilter(index, type, filter) {\n const filterList = attributeFilters.value[type];\n filterList.push(filter);\n VueSet(attributeFilters.value, type, filterList);\n }\n function deleteAttributeFilter(index, type) {\n const filterList = attributeFilters.value[type];\n if (index < filterList.length) {\n filterList.splice(index, 1);\n }\n else {\n throw Error(`Index: ${index} is out of range for the ${type} filter list of length ${filterList.length}`);\n }\n }\n function modifyAttributeFilter(index, type, filter) {\n const filterList = attributeFilters.value[type];\n if (index < filterList.length) {\n filterList[index] = filter;\n VueSet(attributeFilters.value, type, filterList);\n }\n else {\n throw Error(`Index: ${index} is out of range for the ${type} filter list of length ${filterList.length}`);\n }\n }\n function sortAttributes(attributeList, mode, attribVals, sortingMode) {\n const filteredAttributes = Object.values(attributeList).filter((attribute) => attribute.belongs === mode);\n return filteredAttributes.sort((a, b) => {\n if (sortingMode === 0) {\n return (a.key.toLowerCase().localeCompare(b.key.toLowerCase()));\n }\n const aVal = attribVals[a.name];\n const bVal = attribVals[b.name];\n if (aVal === undefined && bVal === undefined) {\n return 0;\n }\n if (aVal === undefined && bVal !== undefined) {\n return 1;\n }\n if (aVal !== undefined && bVal === undefined) {\n return -1;\n }\n if (a.datatype === 'number' && b.datatype === 'number') {\n return bVal - aVal;\n }\n if (a.datatype === 'number' && b.datatype !== 'number') {\n return -1;\n }\n if (a.datatype !== 'number' && b.datatype === 'number') {\n return 1;\n }\n return (a.key.toLowerCase().localeCompare(b.key.toLowerCase()));\n });\n }\n function applyStringFilter(filter, item, val) {\n if (filter.comp === '=') {\n return filter.value.includes(val);\n }\n if (filter.comp === '≠') {\n return !filter.value.includes(val);\n }\n if (filter.comp === 'contains') {\n return filter.value.reduce((prev, str) => prev || str.includes(val), false);\n }\n if (filter.comp === 'starts') {\n return filter.value.reduce((prev, str) => prev || str.startsWith(val), false);\n }\n return true;\n }\n function applyNumberFilter(filter, item, val, index) {\n if (filter.type === 'range') {\n if (filter.comp === '>') {\n return (val > filter.value);\n }\n if (filter.comp === '<') {\n return (val < filter.value);\n }\n if (filter.comp === '<=') {\n return (val <= filter.value);\n }\n if (filter.comp === '>=') {\n return (val >= filter.value);\n }\n return true;\n }\n if (filter.type === 'top') {\n return index < filter.value;\n }\n return true;\n }\n function applyKeyFilter(filter, item) {\n if (filter.appliedTo.includes(item.name) || filter.appliedTo.includes('all')) {\n return true;\n }\n return false;\n }\n function filterAttributes(attributeList, mode, attribVals, filters) {\n let sortedFilteredAttributes = attributeList;\n filters.forEach((filter) => {\n if (filter.filterData.active) {\n sortedFilteredAttributes = sortedFilteredAttributes.filter((item, index) => {\n // Filter on appliedTo list of attributes or 'all'\n if (filter.dataType !== 'key' && (filter.filterData.appliedTo.includes(item.name) || filter.filterData.appliedTo[0] === 'all')) {\n if (filter.dataType === 'number' && item.datatype === 'number') {\n const numberFilter = filter.filterData;\n return applyNumberFilter(numberFilter, item, attribVals[item.name], index);\n }\n if (filter.dataType === 'text' && item.datatype === 'text') {\n const stringFilter = filter.filterData;\n return applyStringFilter(stringFilter, item, attribVals[item.name]);\n }\n return true;\n }\n if (filter.dataType === 'key') {\n const keyFilter = filter.filterData;\n return applyKeyFilter(keyFilter, item);\n }\n return true;\n });\n }\n return sortedFilteredAttributes;\n });\n return sortedFilteredAttributes;\n }\n /**\n * Used for display purposes of the Attributes in the sideBar. If you are rendering\n * Attributes for track and want the filters applied it may be better to filter\n * only on existing values in AttribVals instead of the entire object This takes\n * the Attributes built in Sorts them by Name or Numeric value and then filters them\n * based on the filters that have are active.\n * @param attributeList list of tempalated attributes\n * @param mode - detection or tack\n * @param attribVals - the attribute values for the track/detection\n * @param sortingMode - 0 = alphabetical, 1 = numeric\n * @param filters - list of filters to applie\n * @returns - sorted list of attributes\n */\n function sortAndFilterAttributes(attributeList, mode, attribVals, sortingMode, filters) {\n const sortedAttributes = sortAttributes(attributeList, mode, attribVals, sortingMode);\n const filteredAttributes = filterAttributes(sortedAttributes, mode, attribVals, filters);\n return filteredAttributes;\n }\n function generateDetectionTimelineData(track, filter) {\n // Generate a list of all of the attributres for the length of the track\n const valueMap = {};\n track.features.forEach((feature) => {\n const { frame } = feature;\n if (feature.attributes) {\n Object.keys(feature.attributes).forEach((key) => {\n if (feature.attributes && (filter.appliedTo.includes(key) || filter.appliedTo.includes('all'))) {\n const val = feature.attributes[key];\n if (val === undefined) {\n return;\n }\n if (valueMap[key] === undefined) {\n let dataType = 'text';\n const data = {\n values: [],\n name: key,\n color: attributes.value[`detection_${key}`].color || 'white',\n };\n if (typeof (val) === 'number') {\n dataType = 'number';\n }\n else if (typeof (val) === 'boolean') {\n dataType = 'boolean';\n }\n valueMap[key] = {\n data,\n maxFrame: -Infinity,\n minFrame: Infinity,\n type: dataType,\n };\n }\n if (valueMap[key].type === 'number') {\n valueMap[key].data.values.push([\n frame,\n val,\n ]);\n }\n if (valueMap[key].type === 'number') {\n if (valueMap[key].minValue === undefined || valueMap[key].maxValue === undefined) {\n valueMap[key].minValue = Infinity;\n valueMap[key].maxValue = -Infinity;\n }\n valueMap[key].minValue = Math.min(valueMap[key].minValue, val);\n valueMap[key].maxValue = Math.max(valueMap[key].maxValue, val);\n }\n valueMap[key].minFrame = Math.min(valueMap[key].minFrame, frame);\n valueMap[key].maxFrame = Math.max(valueMap[key].maxFrame, frame);\n }\n });\n }\n });\n return valueMap;\n }\n const attributeTimelineData = computed(() => {\n if (selectedTrackId.value !== null && timelineEnabled.value && timelineFilter.value !== null) {\n const selectedTrack = cameraStore.getAnyPossibleTrack(selectedTrackId.value);\n if (selectedTrack) {\n const timelineData = generateDetectionTimelineData(selectedTrack, timelineFilter.value);\n // Need to convert any Number types to Line Chart data;\n const numberVals = Object.values(timelineData).filter((item) => item.type === 'number');\n return numberVals;\n }\n }\n return [];\n });\n function setTimelineEnabled(val) {\n timelineEnabled.value = val;\n }\n function setTimelineFilter(val) {\n timelineFilter.value = val;\n }\n return {\n loadAttributes,\n attributesList,\n setAttribute,\n deleteAttribute,\n addAttributeFilter,\n deleteAttributeFilter,\n modifyAttributeFilter,\n attributeFilters,\n sortAndFilterAttributes,\n setTimelineEnabled,\n setTimelineFilter,\n attributeTimelineData,\n timelineFilter,\n timelineEnabled,\n };\n}\n","import { computed } from 'vue';\nexport default function useEventChart({ enabledTracks, selectedTrackIds, typeStyling, getTracksMerged, }) {\n const eventChartData = computed(() => {\n const values = [];\n const mapfunc = typeStyling.value.color;\n const selectedTrackIdsValue = selectedTrackIds.value;\n /* use forEach rather than filter().map() to save an interation */\n enabledTracks.value.forEach((filtered) => {\n const { annotation: track } = filtered;\n const { confidencePairs } = track;\n let markers = [];\n if (selectedTrackIds.value.includes(filtered.annotation.id)) {\n const mergedTrack = getTracksMerged(filtered.annotation.id);\n if ('featureIndex' in mergedTrack) {\n markers = mergedTrack.featureIndex.map((i) => ([i, mergedTrack.features[i].interpolate || false]));\n }\n }\n if (confidencePairs.length) {\n const trackType = track.getType(filtered.context.confidencePairIndex);\n values.push({\n id: track.id,\n name: `Track ${track.id}`,\n type: trackType,\n color: mapfunc(trackType),\n selected: selectedTrackIdsValue.includes(track.id),\n range: [track.begin, track.end],\n markers,\n });\n }\n });\n return {\n muted: selectedTrackIdsValue.length > 0,\n values,\n };\n });\n return { eventChartData };\n}\n","import { computed } from 'vue';\nfunction updateHistogram(begin, end, histogram) {\n const beginval = histogram[begin];\n const endval = histogram[end];\n return [\n beginval === undefined ? 1 : beginval + 1,\n endval === undefined ? -1 : endval - 1,\n ];\n}\nexport default function useLineChart({ enabledTracks, typeStyling, allTypes, }) {\n const lineChartData = computed(() => {\n /* Histogram map contains multiple histograms keyed\n * on a type name, which comes from the list of\n * enabled types\n */\n const histograms = new Map();\n histograms.set('total', [0]);\n allTypes.value.forEach((t) => histograms.set(t, [0]));\n /* In order to populate the histograms, generate and solve a\n * sort of \"balanced parenthesis\" problem.\n * For each begin time, push a 1, for each end time, push a -1.\n * Then iterate each histogram and generate its accumulation at each point.\n */\n enabledTracks.value.forEach((filtered) => {\n const { annotation: track } = filtered;\n const totalArr = histograms.get('total');\n const ibegin = track.begin;\n const iend = track.end > track.begin ? track.end : track.begin + 1;\n [totalArr[ibegin], totalArr[iend]] = updateHistogram(ibegin, iend, totalArr);\n const trackType = track.getType(filtered.context.confidencePairIndex);\n const typeArr = histograms.get(trackType);\n [typeArr[ibegin], typeArr[iend]] = updateHistogram(ibegin, iend, typeArr);\n });\n const mapfunc = typeStyling.value.color;\n /* Now, each histograms array looks like this:\n * [1, 2, 0, -2, -1]\n * We want to accumulate each array left-to-right so it looks like this:\n * [1, 3, 3, 1, 0]\n */\n return Array.from(histograms.entries())\n .map(([type, arr]) => {\n const accumulatedHistogram = [];\n arr.reduce((prev, current, i) => {\n accumulatedHistogram.push([i, prev + current]);\n return prev + current;\n }, 0);\n return {\n values: accumulatedHistogram,\n color: type === 'total' ? 'lime' : mapfunc(type),\n name: type,\n };\n });\n });\n return { lineChartData };\n}\n","import { reactive, toRefs, } from 'vue';\nimport { throttle } from 'lodash';\n// https://en.wikipedia.org/wiki/Flick_(time)\nexport const Flick = 705600000;\n/**\n * Avoid floating point errors for common flick rates\n */\nexport const NTSCFlickrates = {\n '24000/1001': 29429400,\n '30000/1001': 23543520,\n '60000/1001': 11771760,\n '120000/1001': 5885880,\n};\n/**\n * The Time Observer is used when some privileged section\n * of the app should be allowed to set time, but the rest\n * of the general app should only read time.\n */\nexport default function useTimeObserver() {\n const data = reactive({\n frame: 0,\n flick: 0,\n frameRate: NaN,\n originalFps: null,\n });\n function initialize({ frameRate, originalFps }) {\n if (typeof frameRate !== 'number') {\n throw new Error(`frameRate=${frameRate} is not a number`);\n }\n data.frameRate = frameRate;\n data.originalFps = originalFps;\n }\n const updateTime = throttle(({ frame, flick }) => {\n data.frame = frame;\n data.flick = flick;\n });\n const time = toRefs(data);\n return {\n initialize,\n updateTime,\n time,\n };\n}\n","import { computed, ref, set as VueSet, } from 'vue';\nexport default function useImageEnhancements() {\n const imageEnhancements = ref({});\n const setSVGFilters = ({ blackPoint, whitePoint }) => {\n VueSet(imageEnhancements.value, 'blackPoint', blackPoint);\n VueSet(imageEnhancements.value, 'whitePoint', whitePoint);\n };\n const brightness = computed(() => {\n if (imageEnhancements.value.blackPoint !== undefined\n && imageEnhancements.value.whitePoint !== undefined) {\n return (1 / (imageEnhancements.value.whitePoint - imageEnhancements.value.blackPoint));\n }\n return undefined;\n });\n const intercept = computed(() => {\n if (imageEnhancements.value.blackPoint !== undefined\n && imageEnhancements.value.whitePoint !== undefined) {\n return (-imageEnhancements.value.blackPoint\n / (imageEnhancements.value.whitePoint - imageEnhancements.value.blackPoint));\n }\n return undefined;\n });\n return {\n imageEnhancements,\n brightness,\n intercept,\n setSVGFilters,\n };\n}\n","/*eslint class-methods-use-this: \"off\"*/\nimport Vue from 'vue';\nexport default class BaseLayer {\n constructor({ annotator, stateStyling, typeStyling, }) {\n this.annotator = annotator;\n this.stateStyling = stateStyling;\n this.typeStyling = typeStyling;\n this.formattedData = [];\n this.style = {};\n this.featureLayer = null;\n this.selectedIndex = [];\n this.bus = new Vue();\n this.initialize();\n }\n initialize() {\n this.style = this.createStyle();\n const style = {\n ...{\n stroke: true,\n uniformPolygon: true,\n strokeColor: this.stateStyling.standard && this.stateStyling.standard.color,\n strokeWidth: 1,\n fill: false,\n },\n ...this.style,\n };\n if (this.featureLayer && this.featureLayer.style) {\n this.featureLayer.style(style);\n }\n }\n changeData(frameData, comparisons = []) {\n this.formattedData = this.formatData(frameData, comparisons);\n this.redraw();\n }\n createStyle() {\n return {\n strokeColor: 'black',\n strokeWidth: 1.0,\n antialiasing: 0,\n };\n }\n}\n","/* eslint-disable class-methods-use-this */\nimport { cloneDeep } from 'lodash';\nimport BaseLayer from '../BaseLayer';\nexport default class LineLayer extends BaseLayer {\n constructor(params) {\n super(params);\n // Only initialize once, prevents recreating Layer each edit\n this.initialize();\n }\n initialize() {\n const layer = this.annotator.geoViewerRef.value.createLayer('feature', {\n features: ['point', 'line'],\n });\n this.featureLayer = layer.createFeature('line');\n super.initialize();\n }\n /**\n * Creates a linear line of points that can be used to create a dashed line segment\n * @param {number} start - start point of the line segment\n * @param {number} end -end point of the line segment\n * @param {int} dashLength=5 - the length of the dashes that are displayed\n */\n static dashSegment(start, end, dashLength = 5) {\n const distance = Math.sqrt((start[0] - end[0]) ** 2 + (start[1] - end[1]) ** 2);\n const linearSubdivide = Math.round(distance / dashLength);\n const coordinates = [];\n for (let i = 0; i < linearSubdivide; i += 1) {\n const x = start[0] + ((end[0] - start[0]) / linearSubdivide) * i;\n const y = start[1] + ((end[1] - start[1]) / linearSubdivide) * i;\n coordinates.push([x, y]);\n }\n coordinates.push(end);\n return coordinates;\n }\n static dashLine(coordinates, dashLength = 5) {\n // Iterate over and dash each segment\n let dashed = [];\n for (let i = 0; i + 1 < coordinates.length; i += 1) {\n const segment = LineLayer.dashSegment(coordinates[i], coordinates[i + 1], dashLength);\n dashed = dashed.concat(segment);\n }\n return dashed;\n }\n formatData(frameDataTracks) {\n const arr = [];\n frameDataTracks.forEach((frameData) => {\n var _a, _b;\n if (frameData.features && frameData.features.bounds) {\n if ((_b = (_a = frameData.features.geometry) === null || _a === void 0 ? void 0 : _a.features) === null || _b === void 0 ? void 0 : _b[0]) {\n frameData.features.geometry.features.forEach((feature) => {\n if (feature.geometry && feature.geometry.type === 'LineString') {\n const line = cloneDeep(feature.geometry);\n // line.coordinates = LineLayer.dashLine(line.coordinates);\n const annotation = {\n trackId: frameData.track.id,\n selected: frameData.selected,\n editing: frameData.editing,\n styleType: frameData.styleType,\n line,\n dashed: true,\n };\n arr.push(annotation);\n }\n });\n }\n }\n });\n return arr;\n }\n redraw() {\n this.featureLayer\n .data(this.formattedData)\n .line((d) => d.line.coordinates)\n .draw();\n }\n disable() {\n this.featureLayer\n .data([])\n .draw();\n }\n createStyle() {\n return {\n ...super.createStyle(),\n // Style conversion to get array objects to work in geoJS\n position: (point) => ({ x: point[0], y: point[1] }),\n strokeColor: (_point, _index, data) => {\n if (data.selected) {\n return this.stateStyling.selected.color;\n }\n if (data.styleType) {\n return this.typeStyling.value.color(data.styleType[0]);\n }\n return this.typeStyling.value.color('');\n },\n fill: (data) => {\n if (data.styleType) {\n return this.typeStyling.value.fill(data.styleType[0]);\n }\n return this.stateStyling.standard.fill;\n },\n fillColor: (_point, _index, data) => {\n if (data.styleType) {\n return this.typeStyling.value.color(data.styleType[0]);\n }\n return this.typeStyling.value.color('');\n },\n fillOpacity: (_point, _index, data) => {\n if (data.styleType) {\n return this.typeStyling.value.opacity(data.styleType[0]);\n }\n return this.stateStyling.standard.opacity;\n },\n strokeOpacity: (_point, _index, data) => {\n // if (_index % 2 === 1 && data.dashed) {\n // return 0.0;\n // }\n if (data.selected) {\n return this.stateStyling.selected.opacity;\n }\n if (data.styleType) {\n return this.typeStyling.value.opacity(data.styleType[0]);\n }\n return this.stateStyling.standard.opacity;\n },\n strokeOffset: 0,\n strokeWidth: (_point, _index, data) => {\n if (data.selected) {\n return this.stateStyling.selected.strokeWidth;\n }\n if (data.styleType) {\n return this.typeStyling.value.strokeWidth(data.styleType[0]);\n }\n return this.stateStyling.standard.strokeWidth;\n },\n };\n }\n}\n","import BaseLayer from '../BaseLayer';\nexport default class PointLayer extends BaseLayer {\n initialize() {\n const layer = this.annotator.geoViewerRef.value.createLayer('feature', {\n features: ['point'],\n });\n this.featureLayer = layer.createFeature('point');\n super.initialize();\n }\n // eslint-disable-next-line class-methods-use-this\n formatData(frameDataTracks) {\n const arr = []; //(this.checkHeadTail(frameData));\n frameDataTracks.forEach((frameData) => {\n var _a, _b;\n if (frameData.features && frameData.features.bounds) {\n if ((_b = (_a = frameData.features.geometry) === null || _a === void 0 ? void 0 : _a.features) === null || _b === void 0 ? void 0 : _b[0]) {\n frameData.features.geometry.features.forEach((feature) => {\n if (feature.geometry && feature.geometry.type === 'Point') {\n const [x, y] = feature.geometry.coordinates;\n let key = 'point';\n if (feature.properties && feature.properties.key) {\n key = feature.properties.key;\n }\n const annotation = {\n trackId: frameData.track.id,\n selected: frameData.selected,\n editing: frameData.editing,\n styleType: frameData.styleType,\n feature: key,\n x,\n y,\n };\n arr.push(annotation);\n }\n });\n }\n }\n });\n return arr;\n }\n createStyle() {\n return {\n ...super.createStyle(),\n fill: (data) => data.feature === 'head',\n fillColor: (data) => {\n if (data.styleType) {\n return this.typeStyling.value.color(data.styleType[0]);\n }\n return this.typeStyling.value.color('');\n },\n fillOpacity: (data) => {\n if (data.styleType) {\n return this.typeStyling.value.opacity(data.styleType[0]);\n }\n return this.stateStyling.standard.opacity;\n },\n radius: (data) => {\n if (data.selected) {\n return this.stateStyling.selected.strokeWidth * 2;\n }\n if (data.styleType) {\n return this.typeStyling.value.strokeWidth(data.styleType[0]) * 2;\n }\n return this.stateStyling.standard.strokeWidth * 2;\n },\n strokeWidth: (data) => {\n if (data.selected) {\n return this.stateStyling.selected.strokeWidth;\n }\n if (data.styleType) {\n return this.typeStyling.value.strokeWidth(data.styleType[0]);\n }\n return this.stateStyling.standard.strokeWidth;\n },\n strokeColor: (data) => {\n if (data.selected) {\n return this.stateStyling.selected.color;\n }\n if (data.styleType) {\n return this.typeStyling.value.color(data.styleType[0]);\n }\n return this.typeStyling.value.color('');\n },\n };\n }\n redraw() {\n return this.featureLayer.data(this.formattedData).draw();\n }\n disable() {\n this.featureLayer\n .data([])\n .draw();\n }\n}\n","/* eslint-disable class-methods-use-this */\nimport geo from 'geojs';\nimport BaseLayer from '../BaseLayer';\nexport default class PolygonLayer extends BaseLayer {\n constructor(params) {\n super(params);\n this.drawingOther = true; // Initialized to true in case polygons aren't supported\n //Only initialize once, prevents recreating Layer each edit\n this.hoverOn = false;\n this.initialize();\n }\n initialize() {\n const layer = this.annotator.geoViewerRef.value.createLayer('feature', {\n features: ['polygon'],\n });\n this.featureLayer = layer\n .createFeature('polygon', { selectionAPI: true })\n .geoOn(geo.event.feature.mouseclick, (e) => {\n /**\n * Handle clicking on individual annotations, if DrawingOther is true we use the\n * Rectangle type if only the polygon is visible we use the polygon bounds\n * */\n if (e.mouse.buttonsDown.left && !this.drawingOther) {\n if (!e.data.editing || (e.data.editing && !e.data.selected)) {\n this.bus.$emit('annotation-clicked', e.data.trackId, false);\n }\n }\n else if (e.mouse.buttonsDown.right && !this.drawingOther) {\n if (!e.data.editing || (e.data.editing && !e.data.selected)) {\n this.bus.$emit('annotation-right-clicked', e.data.trackId, true);\n }\n }\n });\n this.featureLayer.geoOn(geo.event.feature.mouseclick_order, this.featureLayer.mouseOverOrderClosestBorder);\n this.featureLayer.geoOn(geo.event.mouseclick, (e) => {\n // If we aren't clicking on an annotation we can deselect the current track\n if (this.featureLayer.pointSearch(e.geo).found.length === 0 && !this.drawingOther) {\n this.bus.$emit('annotation-clicked', null, false);\n }\n });\n super.initialize();\n }\n hoverAnnotations(e) {\n if (!this.drawingOther) {\n const { found } = this.featureLayer.pointSearch(e.mouse.geo);\n this.bus.$emit('annotation-hover', found, e.mouse.geo);\n }\n }\n setHoverAnnotations(val) {\n if (!this.hoverOn && val) {\n this.featureLayer.geoOn(geo.event.feature.mouseover, (e) => this.hoverAnnotations(e));\n this.featureLayer.geoOn(geo.event.feature.mouseoff, (e) => this.hoverAnnotations(e));\n this.hoverOn = true;\n }\n else if (this.hoverOn && !val) {\n this.featureLayer.geoOff(geo.event.feature.mouseover);\n this.featureLayer.geoOff(geo.event.feature.mouseoff);\n this.hoverOn = false;\n }\n }\n /**\n * Used to set the drawingOther parameter used to change styling if other types are drawn\n * and also handle selection clicking between different types\n * @param val - determines if we are drawing other types of annotations\n */\n setDrawingOther(val) {\n this.drawingOther = val;\n }\n formatData(frameDataTracks) {\n const arr = [];\n frameDataTracks.forEach((frameData) => {\n var _a, _b;\n if (frameData.features && frameData.features.bounds) {\n if ((_b = (_a = frameData.features.geometry) === null || _a === void 0 ? void 0 : _a.features) === null || _b === void 0 ? void 0 : _b[0]) {\n frameData.features.geometry.features.forEach((feature) => {\n if (feature.geometry && feature.geometry.type === 'Polygon') {\n const polygon = feature.geometry;\n const annotation = {\n trackId: frameData.track.id,\n selected: frameData.selected,\n editing: frameData.editing,\n styleType: frameData.styleType,\n polygon,\n set: frameData.set,\n };\n arr.push(annotation);\n }\n });\n }\n }\n });\n return arr;\n }\n redraw() {\n this.featureLayer\n .data(this.formattedData)\n .polygon((d) => d.polygon.coordinates[0])\n .draw();\n }\n disable() {\n this.featureLayer\n .data([])\n .draw();\n }\n createStyle() {\n return {\n ...super.createStyle(),\n // Style conversion to get array objects to work in geoJS\n position: (point) => ({ x: point[0], y: point[1] }),\n strokeColor: (_point, _index, data) => {\n if (data.selected) {\n return this.stateStyling.selected.color;\n }\n if (data.styleType) {\n return this.typeStyling.value.color(data.styleType[0]);\n }\n return this.typeStyling.value.color('');\n },\n fill: (data) => {\n if (data.set) {\n return this.typeStyling.value.fill(data.set);\n }\n if (data.styleType) {\n return this.typeStyling.value.fill(data.styleType[0]);\n }\n return this.stateStyling.standard.fill;\n },\n fillColor: (_point, _index, data) => {\n if (data.styleType) {\n return this.typeStyling.value.color(data.styleType[0]);\n }\n return this.typeStyling.value.color('');\n },\n fillOpacity: (_point, _index, data) => {\n if (data.set) {\n return this.typeStyling.value.opacity(data.set);\n }\n if (data.styleType) {\n return this.typeStyling.value.opacity(data.styleType[0]);\n }\n return this.stateStyling.standard.opacity;\n },\n strokeOpacity: (_point, _index, data) => {\n if (data.selected) {\n return this.stateStyling.selected.opacity;\n }\n if (data.styleType) {\n return this.typeStyling.value.opacity(data.styleType[0]);\n }\n return this.stateStyling.standard.opacity;\n },\n strokeOffset: (_point, _index, data) => {\n if (data.selected) {\n return this.stateStyling.selected.strokeWidth;\n }\n if (data.styleType) {\n return this.typeStyling.value.strokeWidth(data.styleType[0]);\n }\n return this.stateStyling.standard.strokeWidth;\n },\n strokeWidth: (_point, _index, data) => {\n if (data.selected) {\n return this.stateStyling.selected.strokeWidth;\n }\n if (data.styleType) {\n return this.typeStyling.value.strokeWidth(data.styleType[0]);\n }\n return this.stateStyling.standard.strokeWidth;\n },\n };\n }\n}\n","/* eslint-disable class-methods-use-this */\nimport geo from 'geojs';\nimport { cloneDeep } from 'lodash';\nimport { boundToGeojson } from '../../utils';\nimport BaseLayer from '../BaseLayer';\nimport LineLayer from './LineLayer';\nexport default class RectangleLayer extends BaseLayer {\n constructor(params) {\n super(params);\n this.drawingOther = false;\n this.hoverOn = false;\n //Only initialize once, prevents recreating Layer each edit\n this.initialize();\n }\n initialize() {\n const layer = this.annotator.geoViewerRef.value.createLayer('feature', {\n features: ['polygon'],\n });\n this.featureLayer = layer\n .createFeature('polygon', { selectionAPI: true })\n .geoOn(geo.event.feature.mouseclick, (e) => {\n /**\n * Handle clicking on individual annotations, if DrawingOther is true we use the\n * Rectangle type if only the polygon is visible we use the polygon bounds\n * */\n if (e.mouse.buttonsDown.left) {\n if (!e.data.editing || (e.data.editing && !e.data.selected)) {\n this.bus.$emit('annotation-clicked', e.data.trackId, false);\n }\n }\n else if (e.mouse.buttonsDown.right) {\n if (!e.data.editing || (e.data.editing && !e.data.selected)) {\n this.bus.$emit('annotation-right-clicked', e.data.trackId, true);\n }\n }\n });\n this.featureLayer.geoOn(geo.event.feature.mouseclick_order, this.featureLayer.mouseOverOrderClosestBorder);\n this.featureLayer.geoOn(geo.event.mouseclick, (e) => {\n // If we aren't clicking on an annotation we can deselect the current track\n if (this.featureLayer.pointSearch(e.geo).found.length === 0) {\n this.bus.$emit('annotation-clicked', null, false);\n }\n });\n super.initialize();\n }\n hoverAnnotations(e) {\n const { found } = this.featureLayer.pointSearch(e.mouse.geo);\n this.bus.$emit('annotation-hover', found, e.mouse.geo);\n }\n setHoverAnnotations(val) {\n if (!this.hoverOn && val) {\n this.featureLayer.geoOn(geo.event.feature.mouseover, (e) => this.hoverAnnotations(e));\n this.featureLayer.geoOn(geo.event.feature.mouseoff, (e) => this.hoverAnnotations(e));\n this.hoverOn = true;\n }\n else if (this.hoverOn && !val) {\n this.featureLayer.geoOff(geo.event.feature.mouseover);\n this.featureLayer.geoOff(geo.event.feature.mouseoff);\n this.hoverOn = false;\n }\n }\n /**\n * Used to set the drawingOther parameter used to change styling if other types are drawn\n * and also handle selection clicking between different types\n * @param val - determines if we are drawing other types of annotations\n */\n setDrawingOther(val) {\n this.drawingOther = val;\n }\n formatData(frameData, comparisonSets = []) {\n const arr = [];\n frameData.forEach((track) => {\n var _a;\n if (track.features && track.features.bounds) {\n let polygon = boundToGeojson(track.features.bounds);\n let hasPoly = false;\n if ((_a = track.features.geometry) === null || _a === void 0 ? void 0 : _a.features) {\n const filtered = track.features.geometry.features.filter((feature) => feature.geometry && feature.geometry.type === 'Polygon');\n hasPoly = filtered.length > 0;\n }\n const dashed = !!(track.set && (comparisonSets === null || comparisonSets === void 0 ? void 0 : comparisonSets.includes(track.set)));\n if (dashed) {\n const temp = cloneDeep(polygon);\n const width = track.features.bounds[2] - track.features.bounds[0];\n const height = track.features.bounds[3] - track.features.bounds[1];\n const dashSize = Math.min(width, height) / 20.0;\n temp.coordinates[0] = LineLayer.dashLine(temp.coordinates[0], dashSize);\n polygon = temp;\n }\n const annotation = {\n trackId: track.track.id,\n selected: track.selected,\n editing: track.editing,\n styleType: track.styleType,\n polygon,\n hasPoly,\n set: track.set,\n dashed,\n };\n arr.push(annotation);\n }\n });\n return arr;\n }\n redraw() {\n this.featureLayer\n .data(this.formattedData)\n .polygon((d) => d.polygon.coordinates[0])\n .draw();\n }\n disable() {\n this.featureLayer\n .data([])\n .draw();\n }\n createStyle() {\n return {\n ...super.createStyle(),\n // Style conversion to get array objects to work in geoJS\n position: (point) => ({ x: point[0], y: point[1] }),\n strokeColor: (_point, _index, data) => {\n if (data.selected) {\n return this.stateStyling.selected.color;\n }\n if (data.styleType) {\n return this.typeStyling.value.color(data.styleType[0]);\n }\n return this.typeStyling.value.color('');\n },\n fill: (data) => {\n if (data.set) {\n return this.typeStyling.value.fill(data.set, true);\n }\n if (data.styleType) {\n return this.typeStyling.value.fill(data.styleType[0]);\n }\n return this.stateStyling.standard.fill;\n },\n fillColor: (_point, _index, data) => {\n if (data.set) {\n return this.typeStyling.value.annotationSetColor(data.set);\n }\n if (data.styleType) {\n return this.typeStyling.value.color(data.styleType[0]);\n }\n return this.typeStyling.value.color('');\n },\n fillOpacity: (_point, _index, data) => {\n if (data.set) {\n return this.typeStyling.value.opacity(data.set, true);\n }\n if (data.styleType) {\n return this.typeStyling.value.opacity(data.styleType[0]);\n }\n return this.stateStyling.standard.opacity;\n },\n strokeOpacity: (_point, _index, data) => {\n // Reduce the rectangle opacity if a polygon is also drawn\n if (_index % 2 === 1 && data.dashed) {\n return 0.0;\n }\n if (this.drawingOther && data.hasPoly) {\n return this.stateStyling.disabled.opacity;\n }\n if (data.selected) {\n return this.stateStyling.selected.opacity;\n }\n if (data.styleType) {\n return this.typeStyling.value.opacity(data.styleType[0]);\n }\n return this.stateStyling.standard.opacity;\n },\n strokeOffset: (_point, _index, data) => {\n if (data.selected) {\n return this.stateStyling.selected.strokeWidth;\n }\n if (data.styleType) {\n return this.typeStyling.value.strokeWidth(data.styleType[0]);\n }\n return this.stateStyling.standard.strokeWidth;\n },\n strokeWidth: (_point, _index, data) => {\n //Reduce rectangle line thickness if polygon is also drawn\n if (this.drawingOther && data.hasPoly) {\n return this.stateStyling.disabled.strokeWidth;\n }\n if (data.selected) {\n return this.stateStyling.selected.strokeWidth;\n }\n if (data.styleType) {\n return this.typeStyling.value.strokeWidth(data.styleType[0]);\n }\n return this.stateStyling.standard.strokeWidth;\n },\n };\n }\n}\n","import BaseLayer from '../BaseLayer';\n/**\n * @param track - standard frameDataTrack info\n * @param maxPairs - maximum number of lines to show\n * @param lineHeight - height of each text line\n * @returns value or null. null indicates that the text should not be displayed.\n */\nfunction defaultFormatter(annotation, typeStyling) {\n if (annotation.features && annotation.features.bounds) {\n const { bounds } = annotation.features;\n let confidencePairs = [annotation.styleType];\n if (annotation.groups.length) {\n const trackType = annotation.track.getType();\n confidencePairs = annotation.groups.map(({ confidencePairs: cp }) => {\n const [_type, _conf] = cp[0];\n return [\n `${trackType[0]}::${_type}`, _conf,\n ];\n });\n }\n const arr = [];\n for (let i = 0; i < confidencePairs.length; i += 1) {\n const [type, confidence] = confidencePairs[i];\n let text = '';\n if (typeStyling) {\n const { showLabel, showConfidence } = typeStyling.labelSettings(type);\n if (showLabel && !showConfidence) {\n text = type;\n }\n else if (showConfidence && !showLabel) {\n text = `${confidence.toFixed(2)}`;\n }\n else if (showConfidence && showLabel) {\n text = `${type}: ${confidence.toFixed(2)}`;\n }\n }\n arr.push({\n selected: annotation.selected,\n editing: annotation.editing,\n type: annotation.styleType[0],\n confidence,\n text,\n x: bounds[2],\n y: bounds[1],\n });\n }\n if (annotation.track.set && confidencePairs.length) {\n const { set } = annotation.track;\n let text = '';\n const [type, confidence] = confidencePairs[0];\n if (typeStyling) {\n const { showLabel } = typeStyling.labelSettings(set, true);\n if (showLabel) {\n text = set;\n arr.push({\n selected: annotation.selected,\n editing: annotation.editing,\n type,\n confidence,\n text,\n x: bounds[2],\n y: bounds[3],\n offsetX: 10,\n set,\n });\n }\n }\n }\n return arr;\n }\n return null;\n}\nexport default class TextLayer extends BaseLayer {\n constructor(params) {\n super(params);\n this.formatter = params.formatter || defaultFormatter;\n }\n initialize() {\n const layer = this.annotator.geoViewerRef.value.createLayer('feature', {\n features: ['text'],\n });\n this.featureLayer = layer\n .createFeature('text')\n .text((data) => data.text)\n .position((data) => ({ x: data.x, y: data.y }));\n super.initialize();\n }\n formatData(frameData) {\n const arr = [];\n const typeStyling = this.typeStyling.value;\n frameData.forEach((track) => {\n const formatted = this.formatter(track, typeStyling);\n if (formatted !== null) {\n arr.push(...formatted);\n }\n });\n return arr;\n }\n redraw() {\n this.featureLayer.data(this.formattedData).draw();\n return null;\n }\n disable() {\n this.featureLayer.data([]).draw();\n }\n createStyle() {\n const baseStyle = super.createStyle();\n return {\n ...baseStyle,\n color: (data) => {\n if (data.set) {\n return this.typeStyling.value.annotationSetColor(data.set);\n }\n if (data.editing || data.selected) {\n if (!data.selected) {\n if (this.stateStyling.disabled.color !== 'type') {\n return this.stateStyling.disabled.color;\n }\n return this.typeStyling.value.color(data.type);\n }\n if (data.selected) {\n return this.stateStyling.selected.color;\n }\n return this.typeStyling.value.color(data.type);\n }\n return this.typeStyling.value.color(data.type);\n },\n offset: (data) => ({\n x: data.offsetY || 3,\n y: data.offsetX || -8,\n }),\n };\n }\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.dataList.value.length)?_c('v-card',{staticClass:\"d-inline-flex pa-2\",attrs:{\"dark\":\"\"}},[_c('div',_vm._l((_vm.dataList.value),function(item,index){return _c('div',{key:index},[_c('span',{staticClass:\"pr-1 pb-1\",style:({ color: _vm.coloring(item) })},[_vm._v(\" █ \")]),_c('span',[_vm._v(_vm._s(`${item.type}:${item.confidence.toFixed(2)}`))])])}),0)]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ToolTipWidget.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ToolTipWidget.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ToolTipWidget.vue?vue&type=template&id=245ae080\"\nimport script from \"./ToolTipWidget.vue?vue&type=script&lang=ts\"\nexport * from \"./ToolTipWidget.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 Vue from 'vue';\nimport geo from 'geojs';\n/**\n * UILayer provides a way to add Reactive VUE DOM Widgets to GeoJS\n * These widgets are created under their own Vue App and can't rely on parent elements\n * for reactivity.\n * Reactive properties for these components will need to be passed in as Refs and\n * dereferenced inside of the Vue component to properly update.\n * This will probably change once Vue 3 is adopted and can be used\n */\nexport default class UILayer {\n constructor(annotator) {\n this.zoomToolTipPosition = () => {\n Object.keys(this.widgets).forEach((name) => {\n if (this.widgets[name].toolTip) {\n const mousePos = this.widgets[name].lastMousePos;\n this.updateWidgetToolTipPosition(mousePos, this.widgets[name]);\n }\n });\n };\n this.updateToolTipPositions = (evt) => {\n const mousePos = evt.geo;\n Object.keys(this.widgets).forEach((name) => {\n if (this.widgets[name].toolTip) {\n this.updateWidgetToolTipPosition(mousePos, this.widgets[name]);\n this.widgets[name].lastMousePos = mousePos;\n }\n });\n };\n this.annotator = annotator;\n this.widgets = {};\n this.uiLayer = this.annotator.geoViewerRef.value.createLayer('ui');\n this.uiLayer.geoOn(geo.event.mousemove, this.updateToolTipPositions);\n this.uiLayer.geoOn(geo.event.zoom, this.zoomToolTipPosition);\n }\n updateWidgetToolTipPosition(mousePos, widget) {\n const tipOffset = widget.toolTipOffset;\n const newOffset = this.uiLayer.map().gcsToDisplay(mousePos);\n const finalOffset = this.uiLayer.map().displayToGcs({\n x: newOffset.x + tipOffset.x, y: newOffset.y + tipOffset.y,\n });\n widget.position(finalOffset);\n }\n addDOMWidget(name, \n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n component, \n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n props, position = { x: 0, y: 0 }) {\n const widget = this.uiLayer.createWidget('dom', { position });\n widget.canvas().setAttribute('id', name);\n const parent = widget.canvas();\n const div = document.createElement('div');\n const element = parent.appendChild(div);\n new Vue({\n render: (h) => h(component, { props }),\n }).$mount(element);\n widget.toolTipOffset = position;\n widget.toolTip = false;\n widget.lastMousePos = position;\n this.widgets[name] = widget;\n return widget;\n }\n // Toggle named widget toolTip On or Off\n setToolTipWidget(name, on) {\n if (this.widgets[name]) {\n this.widgets[name].toolTip = on;\n }\n }\n}\n","/*eslint class-methods-use-this: \"off\"*/\nimport geo from 'geojs';\nimport { boundToGeojson, reOrdergeoJSON } from '../utils';\nimport BaseLayer from './BaseLayer';\nconst typeMapper = new Map([\n ['LineString', 'line'],\n ['Polygon', 'polygon'],\n ['Point', 'point'],\n ['rectangle', 'rectangle'],\n]);\n/**\n * correct matching of drag handle to cursor direction relies on strict ordering of\n * vertices within the GeoJSON coordinate list using utils.reOrdergeoJSON()\n * and utils.reOrderBounds()\n */\nconst rectVertex = [\n 'sw-resize',\n 'nw-resize',\n 'ne-resize',\n 'se-resize',\n];\nconst rectEdge = [\n 'w-resize',\n 'n-resize',\n 'e-resize',\n 's-resize',\n];\n/**\n * This class is used to edit annotations within the viewer\n * It will do and display different things based on it either being in\n * rectangle or edit modes\n * Basic operation is that changedData will start the edited annotation\n * emits 'update:geojson' when data is changed\n */\nexport default class EditAnnotationLayer extends BaseLayer {\n constructor(params) {\n super(params);\n this.skipNextExternalUpdate = false;\n this._mode = 'editing';\n this.selectedKey = '';\n this.type = params.type;\n this.selectedHandleIndex = -1;\n this.hoverHandleIndex = -1;\n this.shapeInProgress = null;\n this.disableModeSync = false;\n this.leftButtonCheckTimeout = -1;\n //Only initialize once, prevents recreating Layer each edit\n this.initialize();\n }\n /**\n * Initialization of the layer should only be done once for edit layers\n * Handlers for edit_action and state which will emit data when necessary\n */\n initialize() {\n if (!this.featureLayer && this.type) {\n this.featureLayer = this.annotator.geoViewerRef.value.createLayer('annotation', {\n clickToEdit: true,\n showLabels: false,\n continuousPointProximity: false,\n finalPointProximity: 1,\n adjacentPointProximity: 1,\n });\n // For these we need to use an anonymous function to prevent geoJS from erroring\n this.featureLayer.geoOn(geo.event.annotation.edit_action, (e) => this.handleEditAction(e));\n this.featureLayer.geoOn(geo.event.annotation.state, (e) => this.handleEditStateChange(e));\n //Event name is misleading, this means hovering over an edit handle\n this.featureLayer.geoOn(geo.event.annotation.select_edit_handle, (e) => this.hoverEditHandle(e));\n this.featureLayer.geoOn(geo.event.mouseclick, (e) => {\n //Used to sync clicks that kick out of editing mode with application\n //This prevents that pseudo Edit state when left clicking on a object in edit mode\n if (!this.disableModeSync && (e.buttonsDown.left)\n && this.getMode() === 'disabled' && this.featureLayer.annotations()[0]) {\n this.bus.$emit('editing-annotation-sync', false);\n }\n else if (e.buttonsDown.left) {\n const newIndex = this.hoverHandleIndex;\n // Click features like a toggle: unselect if it's clicked twice.\n if (newIndex === this.selectedHandleIndex) {\n this.selectedHandleIndex = -1;\n }\n else {\n this.selectedHandleIndex = newIndex;\n }\n let divisor = 1;\n if (this.type === 'Polygon' && this.selectedHandleIndex >= 0) {\n divisor = 2;\n }\n window.setTimeout(() => this.redraw(), 0); //Redraw timeout to update the selected handle\n if (this.type !== 'rectangle') {\n this.bus.$emit('update:selectedIndex', this.selectedHandleIndex / divisor, this.type, this.selectedKey);\n }\n }\n this.disableModeSync = false;\n });\n this.featureLayer.geoOn(geo.event.actiondown, (e) => this.setShapeInProgress(e));\n }\n }\n skipNextFunc() {\n return () => { this.skipNextExternalUpdate = true; };\n }\n /**\n * Listen to mousedown events and build a replica of the in-progress annotation\n * shape that GeoJS is keeps internally. Emit the shape as update:in-progress-geojson\n */\n setShapeInProgress(e) {\n var _a, _b;\n // Allow middle click movement when placing points\n if (e.mouse.buttons.middle && !e.propogated) {\n return;\n }\n if (this.getMode() === 'creation' && ['LineString', 'Polygon'].includes(this.type)) {\n if (this.shapeInProgress === null) {\n // Initialize a new in-progress shape\n this.shapeInProgress = {\n type: this.type,\n coordinates: this.type === 'Polygon' ? [[]] : [],\n };\n }\n // Update the coordinates of the existing shape\n const newPoint = [Math.round(e.mouse.geo.x), Math.round(e.mouse.geo.y)];\n if (this.type === 'Polygon') {\n const coords = (_a = this.shapeInProgress) === null || _a === void 0 ? void 0 : _a.coordinates;\n // Magic 0: there can only be a single polygon in progress at a time\n coords[0].push(newPoint);\n }\n else {\n const coords = (_b = this.shapeInProgress) === null || _b === void 0 ? void 0 : _b.coordinates;\n coords.push(newPoint);\n }\n this.bus.$emit('update:geojson', 'in-progress', false, // Geometry isn't complete\n {\n type: 'Feature',\n geometry: this.shapeInProgress,\n properties: {},\n }, this.type, this.selectedKey, this.skipNextFunc());\n // triggers a mouse up while editing to make it seem like a point was placed\n window.setTimeout(() => this.annotator.geoViewerRef.value.interactor().simulateEvent('mouseup', { map: { x: e.mouse.geo.x, y: e.mouse.geo.y }, button: 'left' }), 0);\n }\n else if (this.shapeInProgress) {\n this.shapeInProgress = null;\n }\n }\n hoverEditHandle(e) {\n const divisor = this.type === 'LineString' ? 1 : 2; //For Polygons we skip over edge handles (midpoints)\n if (e.enable && e.handle.handle.type === 'vertex') {\n if (e.handle.handle.selected\n && (e.handle.handle.index * divisor) !== this.hoverHandleIndex) {\n this.hoverHandleIndex = e.handle.handle.index * divisor;\n }\n if (!e.handle.handle.selected) {\n this.hoverHandleIndex = -1;\n }\n }\n else if (e.enable && e.handle.handle.type === 'center') {\n this.hoverHandleIndex = -1;\n }\n if (e.enable) {\n if (this.type === 'rectangle') {\n if (e.handle.handle.type === 'vertex') {\n this.annotator.setCursor(rectVertex[e.handle.handle.index]);\n }\n else if (e.handle.handle.type === 'edge') {\n this.annotator.setCursor(rectEdge[e.handle.handle.index]);\n }\n }\n else if (e.handle.handle.type === 'vertex') {\n this.annotator.setCursor('grab');\n }\n else if (e.handle.handle.type === 'edge') {\n this.annotator.setCursor('copy');\n }\n if (e.handle.handle.type === 'center') {\n this.annotator.setCursor('move');\n }\n else if (e.handle.handle.type === 'resize') {\n this.annotator.setCursor('nwse-resize');\n }\n }\n else if (this.getMode() !== 'creation') {\n this.annotator.setCursor('default');\n }\n }\n applyStylesToAnnotations() {\n const annotation = this.featureLayer.annotations()[0];\n //Setup styling for rectangle and point editing\n if (annotation) {\n annotation.style(this.createStyle());\n annotation.editHandleStyle(this.editHandleStyle());\n annotation.highlightStyle(this.highlightStyle());\n }\n return annotation;\n }\n /**\n * Set the current Editing type for switching between editing polygons or rects.\n * */\n setType(type) {\n this.type = type;\n }\n setKey(key) {\n if (typeof key === 'string') {\n this.selectedKey = key;\n }\n else {\n throw new Error(`${key} is invalid`);\n }\n }\n /**\n * Provides whether the user is creating a new annotation or editing one\n */\n getMode() {\n const layermode = this.featureLayer.mode();\n return layermode ? this._mode : 'disabled';\n }\n /**\n * Change the layer mode\n */\n setMode(mode, geom) {\n if (mode !== null) {\n let newLayerMode;\n if (geom) {\n this._mode = 'editing';\n newLayerMode = 'edit';\n this.annotator.setCursor('default');\n }\n else if (typeMapper.has(mode)) {\n this._mode = 'creation';\n newLayerMode = typeMapper.get(mode);\n this.annotator.setCursor('crosshair');\n }\n else {\n throw new Error(`No such mode ${mode}`);\n }\n this.featureLayer.mode(newLayerMode, geom);\n }\n else {\n this.featureLayer.mode(null);\n }\n }\n calculateCursorImage() {\n if (this.getMode() === 'creation') {\n // TODO: we may want to make this more generic or utilize the icons from editMenu\n this.annotator.setImageCursor(`mdi-vector-${typeMapper.get(this.type)}`);\n }\n }\n /**\n * Removes the current annotation and resets the mode when completed editing\n */\n disable() {\n if (this.featureLayer) {\n this.skipNextExternalUpdate = false;\n this.setMode(null);\n this.featureLayer.removeAllAnnotations(false);\n this.shapeInProgress = null;\n if (this.selectedHandleIndex !== -1) {\n this.selectedHandleIndex = -1;\n this.hoverHandleIndex = -1;\n this.bus.$emit('update:selectedIndex', this.selectedHandleIndex, this.type, this.selectedKey);\n }\n this.annotator.setCursor('default');\n this.annotator.setImageCursor('');\n }\n }\n /**\n * retrieves geoJSON data based on the key and type\n * @param frameData\n */\n getGeoJSONData(track) {\n let geoJSONData;\n if (track && track.features && track.features.geometry) {\n track.features.geometry.features.forEach((feature) => {\n if (feature.geometry\n && feature.geometry.type.toLowerCase() === this.type.toLowerCase()) {\n if (feature.properties && feature.properties.key !== 'undefined') {\n if (feature.properties.key === this.selectedKey) {\n geoJSONData = feature.geometry;\n }\n }\n }\n });\n }\n return geoJSONData;\n }\n /** overrides default function to disable and clear anotations before drawing again */\n async changeData(frameData) {\n if (this.skipNextExternalUpdate === false) {\n // disable resets things before we load a new/different shape or mode\n this.disable();\n //TODO: Find a better way to track mouse up after placing a point or completing geometry\n //For line drawings and the actions of any recipes we want\n if (this.annotator.geoViewerRef.value.interactor().mouse().buttons.left) {\n this.leftButtonCheckTimeout = window.setTimeout(() => this.changeData(frameData), 20);\n }\n else {\n clearTimeout(this.leftButtonCheckTimeout);\n this.formattedData = this.formatData(frameData);\n }\n }\n else {\n // prevent was called and it has prevented this update.\n // disable the skip for next time.\n this.skipNextExternalUpdate = false;\n }\n this.calculateCursorImage();\n this.redraw();\n }\n /**\n *\n * @param frameData a single FrameDataTrack Array that is the editing item\n */\n formatData(frameData) {\n this.selectedHandleIndex = -1;\n this.hoverHandleIndex = -1;\n this.bus.$emit('update:selectedIndex', this.selectedHandleIndex, this.type, this.selectedKey);\n if (frameData.length > 0) {\n const track = frameData[0];\n if (track.features && track.features.bounds) {\n let geoJSONData;\n if (this.type === 'rectangle') {\n geoJSONData = boundToGeojson(track.features.bounds);\n }\n else {\n // TODO: this assumes only one polygon\n geoJSONData = this.getGeoJSONData(track);\n }\n if (!geoJSONData || this.type === 'Point') {\n this.setMode(this.type);\n }\n else {\n const geojsonFeature = {\n type: 'Feature',\n geometry: geoJSONData,\n properties: {\n annotationType: typeMapper.get(this.type),\n },\n };\n if (track.styleType) {\n [this.styleType] = track.styleType;\n }\n this.featureLayer.geojson(geojsonFeature);\n const annotation = this.applyStylesToAnnotations();\n this.setMode(this.type, annotation);\n return [geojsonFeature];\n }\n }\n }\n // if there wasn't a valid track in frameData\n // then put the component into annotation create mode\n if (typeof this.type !== 'string') {\n throw new Error(`editing props needs to be a string of value \n ${geo.listAnnotations().join(', ')}\n when geojson prop is not set`);\n }\n else {\n // point or rectangle mode for the editor\n this.setMode(this.type);\n }\n return [];\n }\n /**\n *\n * @param e geo.event emitting by handlers\n */\n handleEditStateChange(e) {\n if (this.featureLayer === e.annotation.layer()) {\n // Only calls this once on completion of an annotation\n if (e.annotation.state() === 'done' && this.getMode() === 'creation') {\n const geoJSONData = [e.annotation.geojson()];\n if (this.type === 'rectangle') {\n geoJSONData[0].geometry.coordinates[0] = reOrdergeoJSON(geoJSONData[0].geometry.coordinates[0]);\n }\n this.formattedData = geoJSONData;\n // The new annotation is in a state without styling, so apply local stypes\n this.applyStylesToAnnotations();\n //This makes sure the click for the end point doesn't kick us out of the mode\n this.disableModeSync = true;\n this.bus.$emit('update:geojson', 'editing', this.getMode() === 'creation', this.formattedData[0], this.type, this.selectedKey, this.skipNextFunc());\n }\n }\n }\n /**\n * If we release the mouse after movement we want to signal for the annotation to update\n * @param e geo.event\n */\n handleEditAction(e) {\n if (this.featureLayer === e.annotation.layer()) {\n if (e.action === geo.event.actionup) {\n // This will commit the change to the current annotation on mouse up while editing\n if (e.annotation.state() === 'edit') {\n const newGeojson = (e.annotation.geojson());\n if (this.formattedData.length > 0) {\n if (this.type === 'rectangle') {\n /* Updating the corners for the proper cursor icons\n Also allows for regrabbing of the handle */\n newGeojson.geometry.coordinates[0] = reOrdergeoJSON(newGeojson.geometry.coordinates[0]);\n // The corners need to update for the indexes to update\n // coordinates are in a different system than display\n const coords = newGeojson.geometry.coordinates[0].map((coord) => ({ x: coord[0], y: coord[1] }));\n // only use the 4 coords instead of 5\n const remapped = this.annotator.geoViewerRef.value.worldToGcs(coords.splice(0, 4));\n e.annotation.options('corners', remapped);\n //This will retrigger highlighting of the current handle after releasing the mouse\n setTimeout(() => this.annotator.geoViewerRef\n .value.interactor().retriggerMouseMove(), 0);\n }\n // update existing feature\n this.formattedData[0].geometry = newGeojson.geometry;\n }\n else {\n // create new feature\n this.formattedData = [{\n ...newGeojson,\n properties: {\n annotationType: this.type,\n },\n type: 'Feature',\n }];\n }\n this.bus.$emit('update:geojson', 'editing', this.getMode() === 'creation', this.formattedData[0], this.type, this.selectedKey, this.skipNextFunc());\n }\n }\n }\n }\n /**\n * Drawing for annotations are handled during initialization they don't need the standard redraw\n * function from BaseLayer\n */\n redraw() {\n this.applyStylesToAnnotations();\n this.featureLayer.draw();\n return null;\n }\n /**\n * The base style used to represent the annotation\n */\n createStyle() {\n const baseStyle = super.createStyle();\n if (this.type === 'rectangle' || this.type === 'Polygon' || this.type === 'LineString') {\n return {\n ...baseStyle,\n fill: false,\n strokeColor: () => {\n if (this.styleType) {\n return this.typeStyling.value.color(this.styleType);\n }\n return this.stateStyling.selected.color;\n },\n };\n }\n return {\n fill: false,\n strokeWidth: 0,\n strokeColor: 'none',\n };\n }\n /**\n * Styling for the handles used to drag the annotation for ediing\n */\n editHandleStyle() {\n if (this.type === 'rectangle') {\n return {\n handles: {\n rotate: false,\n },\n };\n }\n if (this.type === 'Point') {\n return {\n handles: false,\n };\n }\n if (this.type === 'Polygon' || this.type === 'LineString') {\n return {\n handles: {\n rotate: false,\n edge: this.type !== 'LineString',\n },\n fill: true,\n radius: (handle) => {\n if (handle.type === 'edge') {\n return 5;\n }\n return 8;\n },\n fillOpacity: (_, index) => {\n if (index === this.selectedHandleIndex) {\n return 1;\n }\n return 0.25;\n },\n strokeColor: (_, index) => {\n if (index === this.selectedHandleIndex) {\n return '#FF0000';\n }\n if (this.styleType) {\n return this.typeStyling.value.color(this.styleType);\n }\n return this.typeStyling.value.color('');\n },\n fillColor: (_data, index) => {\n if (index === this.selectedHandleIndex) {\n return '#FF0000';\n }\n if (this.styleType) {\n return this.typeStyling.value.color(this.styleType);\n }\n return this.typeStyling.value.color('');\n },\n };\n }\n return {\n handles: {\n rotate: false,\n },\n };\n }\n /**\n * Should never have highlighting enabled but this will remove any highlighting style\n * from the annotation. NOTE: this will not remove styling from handles\n */\n highlightStyle() {\n if (this.type === 'rectangle' || this.type === 'Polygon') {\n return {\n handles: {\n rotate: false,\n },\n };\n }\n if (this.type === 'Point') {\n return {\n stroke: false,\n };\n }\n return {\n handles: {\n rotate: false,\n },\n };\n }\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"video-annotator\"},[_c('svg',{staticStyle:{\"position\":\"absolute\",\"top\":\"-1px\",\"left\":\"-1px\"},attrs:{\"width\":\"0\",\"height\":\"0\"}},[_c('defs',[_c('filter',{attrs:{\"id\":\"brightness\"}},[_c('feComponentTransfer',{attrs:{\"color-interpolation-filters\":\"sRGB\"}},[_c('feFuncR',{attrs:{\"type\":\"linear\",\"slope\":_vm.brightness,\"intercept\":_vm.intercept}}),_c('feFuncG',{attrs:{\"type\":\"linear\",\"slope\":_vm.brightness,\"intercept\":_vm.intercept}}),_c('feFuncB',{attrs:{\"type\":\"linear\",\"slope\":_vm.brightness,\"intercept\":_vm.intercept}})],1)],1)])]),_c('div',{ref:\"imageCursorRef\",staticClass:\"imageCursor\"},[_c('v-icon',[_vm._v(\" \"+_vm._s(_vm.data.imageCursor)+\" \")])],1),_c('div',{ref:\"containerRef\",staticClass:\"playback-container\",style:({ cursor: _vm.data.cursor }),on:{\"mousemove\":_vm.cursorHandler.handleMouseMove,\"mouseleave\":_vm.cursorHandler.handleMouseLeave,\"mouseover\":_vm.cursorHandler.handleMouseEnter}},[_c('div',{staticClass:\"loadingSpinnerContainer\"},[(_vm.loadingVideo || _vm.loadingImage)?_c('v-progress-circular',{staticClass:\"loadingSpinner\",attrs:{\"indeterminate\":\"\",\"size\":\"100\",\"width\":\"15\",\"color\":\"light-blue\"}},[_vm._v(\" Loading \")]):_vm._e()],1)]),(_vm.data.ready)?_vm._t(\"default\"):_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","// Reference used because of https://github.com/Microsoft/TypeScript/issues/28502\n/// \nimport geo from 'geojs';\nimport Vue, { ref, reactive, provide, toRef, computed, } from 'vue';\nimport { map, over } from 'lodash';\nimport { use } from '../../provides';\nconst AggregateControllerSymbol = Symbol('aggregate-controller');\nconst CameraInitializerSymbol = Symbol('camera-initializer');\nconst bus = new Vue();\nlet allowCameraTrigger = true; // Used to prevent infinite loop on Camera Sync\nexport function injectAggregateController() {\n return use(AggregateControllerSymbol);\n}\nexport function injectCameraInitializer() {\n return use(CameraInitializerSymbol);\n}\nexport function useMediaController() {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let geoViewers = {};\n let containers = {};\n let imageCursors = {};\n const cameras = ref([]);\n let subControllers = [];\n let state = {};\n let cameraControllerSymbols = {};\n const synchronizeCameras = ref(false);\n function clear() {\n geoViewers = {};\n containers = {};\n imageCursors = {};\n cameras.value = [];\n subControllers = [];\n state = {};\n cameraControllerSymbols = {};\n }\n function getController(camera) {\n if (cameras.value.length === 0) {\n throw new Error('no camera controllers currently exist');\n }\n if (camera === undefined) {\n return subControllers[0];\n }\n const found = subControllers.find((c) => c.cameraName.value === camera);\n if (!found) {\n throw new Error('no controller found for that camera');\n }\n return found;\n }\n /**\n * onResize resets the zoom of a camera when its window size changes.\n */\n function onResize() {\n subControllers.forEach((mc) => {\n const camera = cameraControllerSymbols[mc.cameraName.value].toString();\n const geoViewerRef = geoViewers[camera];\n const containerRef = containers[camera];\n if (geoViewerRef.value === undefined || containerRef.value === undefined) {\n return;\n }\n const size = containerRef.value.getBoundingClientRect();\n const mapSize = geoViewerRef.value.size();\n if (size.width !== mapSize.width || size.height !== mapSize.height) {\n window.requestAnimationFrame(() => {\n geoViewerRef.value.size(size);\n mc.resetZoom();\n });\n }\n });\n }\n function toggleLockedCamera() {\n cameras.value.forEach((camera) => {\n const data = state[camera.toString()];\n data.lockedCamera = !data.lockedCamera;\n });\n }\n function toggleSynchronizeCameras(val) {\n synchronizeCameras.value = val;\n }\n bus.$on('pan', (camEvent) => {\n var _a;\n const activeMap = (_a = geoViewers[camEvent.camera]) === null || _a === void 0 ? void 0 : _a.value;\n if (activeMap !== undefined && synchronizeCameras.value) {\n allowCameraTrigger = false;\n Object.entries(geoViewers).forEach(([camera, geoViewer]) => {\n if (geoViewer.value && camera !== camEvent.camera) {\n geoViewer.value.pan(camEvent.event.screenDelta);\n }\n });\n allowCameraTrigger = true;\n }\n });\n bus.$on('zoom', (camEvent) => {\n var _a;\n const activeMap = (_a = geoViewers[camEvent.camera]) === null || _a === void 0 ? void 0 : _a.value;\n if (activeMap !== undefined && synchronizeCameras.value) {\n allowCameraTrigger = false;\n Object.entries(geoViewers).forEach(([camera, geoViewer]) => {\n if (geoViewer.value && camera !== camEvent.camera) {\n geoViewer.value.zoom(activeMap.zoom());\n }\n });\n allowCameraTrigger = true;\n }\n });\n /**\n * This secondary initialization wrapper solves a sort of\n * chicken-and-egg problem, allowing the function consumer to use\n * the state above to construct the dependencies for the methods below.\n */\n function initialize(cameraName, { seek: _seek, play: _play, pause: _pause, setVolume: _setVolume, setSpeed: _setSpeed, }) {\n const cameraSymbol = Symbol(`media-controller-${cameraName}`);\n cameraControllerSymbols[cameraName] = cameraSymbol;\n const camera = cameraSymbol.toString();\n geoViewers[camera] = ref(undefined);\n containers[camera] = ref(undefined);\n imageCursors[camera] = ref(undefined);\n state[camera] = reactive({\n cameraName,\n ready: false,\n playing: false,\n frame: 0,\n flick: 0,\n filename: '',\n lockedCamera: false,\n currentTime: 0,\n duration: 0,\n volume: 0,\n speed: 1.0,\n maxFrame: 0,\n syncedFrame: 0,\n cursor: 'default',\n imageCursor: '',\n originalBounds: {\n left: 0,\n top: 0,\n bottom: 1,\n right: 1,\n },\n });\n function setCursor(newCursor) {\n state[camera].cursor = `${newCursor}`;\n }\n function setImageCursor(newCursor) {\n state[camera].imageCursor = `${newCursor}`;\n }\n function centerOn(coords) {\n geoViewers[camera].value.center(coords);\n }\n function resetZoom() {\n const geoViewerRef = geoViewers[camera];\n const data = state[camera];\n const zoomAndCenter = geoViewerRef.value.zoomAndCenterFromBounds(data.originalBounds, 0);\n geoViewerRef.value.zoom(zoomAndCenter.zoom);\n geoViewerRef.value.center(zoomAndCenter.center);\n }\n function resetMapDimensions(width, height, isMap = false, margin = 0.3) {\n const geoViewerRef = geoViewers[camera];\n const containerRef = containers[camera];\n const data = state[camera];\n geoViewerRef.value.bounds({\n left: 0,\n top: 0,\n bottom: height,\n right: width,\n });\n const params = geo.util.pixelCoordinateParams(containerRef.value, width, height, width, height);\n const { right, bottom } = params.map.maxBounds;\n data.originalBounds = params.map.maxBounds;\n geoViewerRef.value.maxBounds({\n left: 0 - (right * margin),\n top: 0 - (bottom * margin),\n right: right * (1 + margin),\n bottom: bottom * (1 + margin),\n });\n if (!isMap) {\n geoViewerRef.value.zoomRange({\n // do not set a min limit so that bounds clamping determines min\n min: -Infinity,\n // 4x zoom max\n max: 4,\n });\n if (Object.keys(geoViewers).length === 1) {\n geoViewerRef.value.clampBoundsX(true);\n geoViewerRef.value.clampBoundsY(true);\n geoViewerRef.value.clampZoom(true);\n }\n else {\n geoViewerRef.value.clampBoundsX(false);\n geoViewerRef.value.clampBoundsY(false);\n geoViewerRef.value.clampZoom(false);\n }\n }\n resetZoom();\n }\n function initializeViewer(width, height, tileWidth = undefined, tileHeight = undefined, isMap = false, geoSpatial = false) {\n if (tileHeight === undefined) {\n // eslint-disable-next-line no-param-reassign\n tileHeight = height;\n }\n if (tileWidth === undefined) {\n // eslint-disable-next-line no-param-reassign\n tileWidth = width;\n }\n let params = geo.util.pixelCoordinateParams(containers[camera].value, width, height, tileWidth, tileHeight);\n if (isMap && geoSpatial) {\n params = { map: { node: containers[camera].value } };\n }\n geoViewers[camera].value = geo.map(params.map);\n if (!isMap || !geoSpatial) {\n resetMapDimensions(width, height, isMap);\n }\n const interactorOpts = geoViewers[camera].value.interactor().options();\n interactorOpts.keyboard.focusHighlight = false;\n interactorOpts.keyboard.actions = {};\n interactorOpts.click.cancelOnMove = 5;\n interactorOpts.actions = [\n interactorOpts.actions[0],\n // The action below is needed to have GeoJS use the proper handler\n // with cancelOnMove for right clicks\n {\n action: geo.geo_action.select,\n input: { right: true },\n name: 'button edit',\n owner: 'geo.MapInteractor',\n },\n // The action below adds middle mouse button click to panning\n // It allows for panning while in the process of polygon editing or creation\n {\n action: geo.geo_action.pan,\n input: 'middle',\n modifiers: { shift: false, ctrl: false },\n owner: 'geo.mapInteractor',\n name: 'button pan',\n },\n interactorOpts.actions[2],\n interactorOpts.actions[6],\n interactorOpts.actions[7],\n interactorOpts.actions[8],\n interactorOpts.actions[9],\n ];\n // Set > 2pi to disable rotation\n interactorOpts.zoomrotateMinimumRotation = 7;\n interactorOpts.zoomAnimation = {\n enabled: false,\n };\n interactorOpts.momentum = {\n enabled: false,\n };\n interactorOpts.wheelScaleY = 0.2;\n geoViewers[camera].value.interactor().options(interactorOpts);\n //Add in bus control synchronization for cameras\n geoViewers[camera].value.geoOn(geo.event.pan, (e) => {\n // Only trigger if not handling other camera interactions.\n if (allowCameraTrigger) {\n bus.$emit('pan', { camera: camera.toString(), event: e });\n }\n });\n geoViewers[camera].value.geoOn(geo.event.zoom, (e) => {\n // Only trigger if not handling other camera interactions.\n if (allowCameraTrigger) {\n bus.$emit('zoom', { camera: camera.toString(), event: e });\n }\n });\n }\n function prevFrame() {\n const targetFrame = state[camera].frame - 1;\n if (targetFrame >= 0) {\n _seek(targetFrame);\n }\n }\n function nextFrame() {\n const targetFrame = state[camera].frame + 1;\n if (targetFrame <= state[camera].maxFrame) {\n _seek(targetFrame);\n }\n }\n const imageCursorRef = imageCursors[camera];\n const cursorHandler = {\n handleMouseLeave() {\n if (imageCursorRef.value) {\n imageCursorRef.value.style.display = 'none';\n }\n },\n handleMouseEnter() {\n if (imageCursorRef.value) {\n imageCursorRef.value.style.display = 'block';\n }\n },\n handleMouseMove(evt) {\n const offsetX = evt.clientX + 10;\n const offsetY = evt.clientY - 25;\n window.requestAnimationFrame(() => {\n if (imageCursorRef.value) {\n imageCursorRef.value.style.transform = `translate(${offsetX}px, ${offsetY}px)`;\n }\n });\n },\n };\n const mediaController = {\n geoViewerRef: geoViewers[camera],\n cameraName: toRef(state[camera], 'cameraName'),\n cameras: ref([]),\n currentTime: toRef(state[camera], 'currentTime'),\n playing: toRef(state[camera], 'playing'),\n frame: toRef(state[camera], 'frame'),\n flick: toRef(state[camera], 'flick'),\n filename: toRef(state[camera], 'filename'),\n lockedCamera: toRef(state[camera], 'lockedCamera'),\n duration: toRef(state[camera], 'duration'),\n volume: toRef(state[camera], 'volume'),\n maxFrame: toRef(state[camera], 'maxFrame'),\n speed: toRef(state[camera], 'speed'),\n syncedFrame: toRef(state[camera], 'syncedFrame'),\n prevFrame,\n nextFrame,\n play: _play,\n pause: _pause,\n seek: _seek,\n resetZoom,\n toggleLockedCamera,\n centerOn,\n setCursor,\n setImageCursor,\n setVolume: _setVolume,\n setSpeed: _setSpeed,\n getController,\n resetMapDimensions,\n toggleSynchronizeCameras,\n cameraSync: synchronizeCameras,\n };\n subControllers.push(mediaController);\n cameras.value.push(cameraSymbol);\n return {\n state: state[camera],\n geoViewer: geoViewers[camera],\n container: containers[camera],\n imageCursor: imageCursors[camera],\n cursorHandler,\n initializeViewer,\n mediaController,\n };\n }\n const aggregateController = computed(() => {\n const defaultController = getController();\n return {\n cameras: computed(() => cameras.value.map((v) => String(v))),\n maxFrame: defaultController.maxFrame,\n frame: defaultController.frame,\n seek: over(map(subControllers, 'seek')),\n nextFrame: over(map(subControllers, 'nextFrame')),\n prevFrame: over(map(subControllers, 'prevFrame')),\n volume: defaultController.volume,\n setVolume: over(map(subControllers, 'setVolume')),\n speed: defaultController.speed,\n setSpeed: over(map(subControllers, 'setSpeed')),\n lockedCamera: defaultController.lockedCamera,\n toggleLockedCamera,\n pause: over(map(subControllers, 'pause')),\n play: over(map(subControllers, 'play')),\n playing: defaultController.playing,\n resetZoom: over(map(subControllers, 'resetZoom')),\n currentTime: defaultController.currentTime,\n getController,\n toggleSynchronizeCameras,\n cameraSync: synchronizeCameras,\n };\n });\n provide(AggregateControllerSymbol, aggregateController);\n provide(CameraInitializerSymbol, initialize);\n return {\n aggregateController,\n containers,\n state,\n geoViewers,\n imageCursors,\n initialize,\n onResize,\n clear,\n };\n}\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImageAnnotator.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImageAnnotator.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ImageAnnotator.vue?vue&type=template&id=02ecf66e&scoped=true\"\nimport script from \"./ImageAnnotator.vue?vue&type=script&lang=ts\"\nexport * from \"./ImageAnnotator.vue?vue&type=script&lang=ts\"\nimport style0 from \"./ImageAnnotator.vue?vue&type=style&index=0&id=02ecf66e&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"02ecf66e\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"video-annotator\",style:({ cursor: _vm.data.cursor })},[_c('svg',{staticStyle:{\"position\":\"absolute\",\"top\":\"-1px\",\"left\":\"-1px\"},attrs:{\"width\":\"0\",\"height\":\"0\"}},[_c('defs',[_c('filter',{attrs:{\"id\":\"brightness\"}},[_c('feComponentTransfer',{attrs:{\"color-interpolation-filters\":\"sRGB\"}},[_c('feFuncR',{attrs:{\"type\":\"linear\",\"slope\":_vm.brightness,\"intercept\":_vm.intercept}}),_c('feFuncG',{attrs:{\"type\":\"linear\",\"slope\":_vm.brightness,\"intercept\":_vm.intercept}}),_c('feFuncB',{attrs:{\"type\":\"linear\",\"slope\":_vm.brightness,\"intercept\":_vm.intercept}})],1)],1)])]),_c('div',{ref:\"imageCursorRef\",staticClass:\"imageCursor\"},[_c('v-icon',[_vm._v(\" \"+_vm._s(_vm.data.imageCursor)+\" \")])],1),_c('div',{ref:\"containerRef\",staticClass:\"playback-container\",on:{\"mousemove\":_vm.cursorHandler.handleMouseMove,\"mouseleave\":_vm.cursorHandler.handleMouseLeave,\"mouseover\":_vm.cursorHandler.handleMouseEnter}}),_vm._t(\"control\"),(_vm.data.ready)?_vm._t(\"default\"):_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./VideoAnnotator.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./VideoAnnotator.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./VideoAnnotator.vue?vue&type=template&id=751ee3f9&scoped=true\"\nimport script from \"./VideoAnnotator.vue?vue&type=script&lang=ts\"\nexport * from \"./VideoAnnotator.vue?vue&type=script&lang=ts\"\nimport style0 from \"./VideoAnnotator.vue?vue&type=style&index=0&id=751ee3f9&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"751ee3f9\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"video-annotator\"},[_c('svg',{staticStyle:{\"position\":\"absolute\",\"top\":\"-1px\",\"left\":\"-1px\"},attrs:{\"width\":\"0\",\"height\":\"0\"}},[_c('defs',[_c('filter',{attrs:{\"id\":\"brightness\"}},[_c('feComponentTransfer',{attrs:{\"color-interpolation-filters\":\"sRGB\"}},[_c('feFuncR',{attrs:{\"type\":\"linear\",\"slope\":_vm.brightness,\"intercept\":_vm.intercept}}),_c('feFuncG',{attrs:{\"type\":\"linear\",\"slope\":_vm.brightness,\"intercept\":_vm.intercept}}),_c('feFuncB',{attrs:{\"type\":\"linear\",\"slope\":_vm.brightness,\"intercept\":_vm.intercept}})],1)],1)])]),_c('div',{ref:\"imageCursorRef\",staticClass:\"imageCursor\"},[_c('v-icon',[_vm._v(\" \"+_vm._s(_vm.data.imageCursor)+\" \")])],1),_c('div',{ref:\"containerRef\",staticClass:\"playback-container\",style:({ cursor: _vm.data.cursor }),on:{\"mousemove\":_vm.cursorHandler.handleMouseMove,\"mouseleave\":_vm.cursorHandler.handleMouseLeave,\"mouseover\":_vm.cursorHandler.handleMouseEnter}},[_c('div',{staticClass:\"loadingSpinnerContainer\"},[(_vm.loadingVideo || _vm.loadingImage)?_c('v-progress-circular',{staticClass:\"loadingSpinner\",attrs:{\"indeterminate\":\"\",\"size\":\"100\",\"width\":\"15\",\"color\":\"light-blue\"}},[_vm._v(\" Loading \")]):_vm._e()],1)]),(_vm.data.ready)?_vm._t(\"default\"):_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LargeImageAnnotator.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LargeImageAnnotator.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./LargeImageAnnotator.vue?vue&type=template&id=2a0180e0&scoped=true\"\nimport script from \"./LargeImageAnnotator.vue?vue&type=script&lang=ts\"\nexport * from \"./LargeImageAnnotator.vue?vue&type=script&lang=ts\"\nimport style0 from \"./LargeImageAnnotator.vue?vue&type=style&index=0&id=2a0180e0&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2a0180e0\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{directives:[{name:\"mousetrap\",rawName:\"v-mousetrap\",value:([\n { bind: 'left', handler: _vm.mediaController.prevFrame, disabled: _vm.visible() },\n { bind: 'right', handler: _vm.mediaController.nextFrame, disabled: _vm.visible() },\n { bind: 'space', handler: _vm.togglePlay, disabled: _vm.visible() },\n { bind: 'f', handler: _vm.mediaController.nextFrame, disabled: _vm.visible() },\n { bind: 'd', handler: _vm.mediaController.prevFrame, disabled: _vm.visible() },\n {\n bind: 'l',\n handler: () => _vm.mediaController.toggleSynchronizeCameras(!_vm.mediaController.cameraSync.value),\n disabled: _vm.visible(),\n },\n ]),expression:\"[\\n { bind: 'left', handler: mediaController.prevFrame, disabled: visible() },\\n { bind: 'right', handler: mediaController.nextFrame, disabled: visible() },\\n { bind: 'space', handler: togglePlay, disabled: visible() },\\n { bind: 'f', handler: mediaController.nextFrame, disabled: visible() },\\n { bind: 'd', handler: mediaController.prevFrame, disabled: visible() },\\n {\\n bind: 'l',\\n handler: () => mediaController.toggleSynchronizeCameras(!mediaController.cameraSync.value),\\n disabled: visible(),\\n },\\n ]\"}]},[_c('v-card',{staticClass:\"px-4 py-1\",attrs:{\"tile\":\"\"}},[_c('v-slider',{attrs:{\"hide-details\":\"\",\"min\":0,\"max\":_vm.mediaController.maxFrame.value,\"value\":_vm.data.frame},on:{\"start\":_vm.dragHandler.start,\"end\":_vm.dragHandler.end,\"input\":_vm.input}}),_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-col',{staticClass:\"pl-1 py-1 shrink\"},[_vm._t(\"timelineControls\",null,{\"justify\":\"start\"})],2),_c('v-col',{staticClass:\"py-1 shrink\",staticStyle:{\"min-width\":\"100px\"}},[_c('v-btn',{attrs:{\"icon\":\"\",\"small\":\"\",\"title\":\"(d, left-arrow) previous frame\"},on:{\"click\":_vm.mediaController.prevFrame}},[_c('v-icon',[_vm._v(\"mdi-skip-previous\")])],1),(!_vm.mediaController.playing.value)?_c('v-btn',{attrs:{\"icon\":\"\",\"small\":\"\",\"title\":\"(space) Play\"},on:{\"click\":_vm.mediaController.play}},[_c('v-icon',[_vm._v(\"mdi-play\")])],1):_c('v-btn',{attrs:{\"icon\":\"\",\"small\":\"\",\"title\":\"(space) Pause\"},on:{\"click\":_vm.mediaController.pause}},[_c('v-icon',[_vm._v(\"mdi-pause\")])],1),_c('v-btn',{attrs:{\"icon\":\"\",\"small\":\"\",\"title\":\"(f, right-arrow) next frame\"},on:{\"click\":_vm.mediaController.nextFrame}},[_c('v-icon',[_vm._v(\"mdi-skip-next\")])],1)],1),_c('v-col',{staticClass:\"pl-1 py-1\"},[_vm._t(\"middle\")],2),_c('v-col',{staticClass:\"pl-1 py-1 shrink d-flex\",attrs:{\"align\":\"right\"}},[_c('v-btn',{attrs:{\"icon\":\"\",\"small\":\"\",\"color\":_vm.mediaController.lockedCamera.value ? 'primary' : 'default',\"title\":\"center camera on selected track\"},on:{\"click\":_vm.mediaController.toggleLockedCamera}},[_c('v-icon',[_vm._v(\" \"+_vm._s(_vm.mediaController.lockedCamera.value ? 'mdi-lock-check' : 'mdi-lock-open')+\" \")])],1),_c('v-btn',{attrs:{\"icon\":\"\",\"small\":\"\",\"title\":\"(r)eset pan and zoom\"},on:{\"click\":_vm.mediaController.resetZoom}},[_c('v-icon',[_vm._v(\"mdi-image-filter-center-focus\")])],1),_c('v-btn',{attrs:{\"icon\":\"\",\"small\":\"\",\"title\":\"Image Enhancements\"},on:{\"click\":_vm.toggleEnhancements}},[_c('v-icon',[_vm._v(\"mdi-contrast-box\")])],1),(_vm.mediaController.cameras.value.length > 1)?_c('v-btn',{attrs:{\"icon\":\"\",\"small\":\"\",\"color\":_vm.mediaController.cameraSync.value ? 'primary' : 'default',\"title\":\"Synchronize camera controls\"},on:{\"click\":function($event){return _vm.mediaController.toggleSynchronizeCameras(!_vm.mediaController.cameraSync.value)}}},[_c('v-icon',[_vm._v(\" \"+_vm._s(_vm.mediaController.cameraSync.value ? 'mdi-link' : 'mdi-link-off')+\" \")])],1):_vm._e()],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"mx-4\"},[_c('span',{staticClass:\"text-body-2\"},[_vm._v(\" Any individual type thresholds take effect when they are set higher than the base threshold. \")]),_c('v-divider',{staticClass:\"my-3\"}),_c('ConfidenceFilter',{attrs:{\"confidence\":_vm.confidenceFiltersRef.default,\"text\":\"Base Confidence Threshold\"},on:{\"update:confidence\":function($event){return _vm.$set(_vm.confidenceFiltersRef, \"default\", $event)},\"end\":_vm.saveThreshold}}),_c('v-divider',{staticClass:\"my-3\"}),_vm._l((_vm.checkedTypesRef),function(type){return _c('div',{key:type,staticClass:\"slidercontainer\"},[_c('ConfidenceFilter',{attrs:{\"confidence\":_vm.confidenceFiltersRef[type],\"text\":type,\"color\":_vm.typeStylingRef.color(type)},on:{\"update:confidence\":function($event){return _vm.$set(_vm.confidenceFiltersRef, type, $event)},\"end\":_vm.saveThreshold}})],1)}),_c('v-btn',{staticClass:\"my-3\",attrs:{\"block\":\"\",\"depressed\":\"\",\"color\":\"warning\"},on:{\"click\":_vm.resetThresholds}},[_vm._v(\" Reset Thresholds \")])],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('div',{staticClass:\"text-body-2 grey--text text--lighten-1 d-flex flex-row py-0\"},[(_vm.color)?_c('span',{staticClass:\"pr-1 pb-1\",style:({ color: _vm.color })},[_vm._v(\" █ \")]):_vm._e(),_c('span',{class:{ 'main-confidence': _vm.text === 'Confidence Threshold' }},[_vm._v(_vm._s(_vm.text))]),(!_vm.$scopedSlots.default)?_c('v-spacer'):_vm._e(),_c('span',{staticClass:\"pl-2\"},[_vm._v(\" \"+_vm._s(_vm.confidence.toFixed(2))+\" \")]),(_vm.$scopedSlots.default)?_c('v-spacer'):_vm._e(),_vm._t(\"default\")],2),_c('input',{staticStyle:{\"width\":\"100%\"},attrs:{\"type\":\"range\",\"min\":_vm.min,\"max\":1,\"step\":0.01,\"persistent-hint\":\"\"},domProps:{\"value\":Math.max(_vm.min, _vm.confidence)},on:{\"input\":_vm.updateConfidence,\"end\":_vm.emitEnd,\"mouseup\":_vm.emitEnd}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ConfidenceFilter.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ConfidenceFilter.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ConfidenceFilter.vue?vue&type=template&id=d20f00d2&scoped=true\"\nimport script from \"./ConfidenceFilter.vue?vue&type=script&lang=ts\"\nexport * from \"./ConfidenceFilter.vue?vue&type=script&lang=ts\"\nimport style0 from \"./ConfidenceFilter.vue?vue&type=style&index=0&id=d20f00d2&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"d20f00d2\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TypeThreshold.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TypeThreshold.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./TypeThreshold.vue?vue&type=template&id=3b20b916&scoped=true\"\nimport script from \"./TypeThreshold.vue?vue&type=script&lang=ts\"\nexport * from \"./TypeThreshold.vue?vue&type=script&lang=ts\"\nimport style0 from \"./TypeThreshold.vue?vue&type=style&index=0&id=3b20b916&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3b20b916\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"mx-4\"},[_c('span',{staticClass:\"text-body-2\"},[_vm._v(\" Controls for adjusting images. \")]),_c('v-divider',{staticClass:\"my-3\"}),_c('v-range-slider',{staticClass:\"my-4\",attrs:{\"min\":0,\"max\":255,\"step\":1.0,\"thumb-label\":\"always\",\"label\":\"Contrast:\"},on:{\"input\":_vm.modifyValue},model:{value:(_vm.range),callback:function ($$v) {_vm.range=$$v},expression:\"range\"}}),_c('v-btn',{staticClass:\"my-2\",attrs:{\"block\":\"\",\"depressed\":\"\",\"color\":\"warning\"},on:{\"click\":function($event){_vm.range = [0, 255]; _vm.modifyValue()}}},[_vm._v(\" Reset \")])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImageEnhancements.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImageEnhancements.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ImageEnhancements.vue?vue&type=template&id=68ce7b85&scoped=true\"\nimport script from \"./ImageEnhancements.vue?vue&type=script&lang=ts\"\nexport * from \"./ImageEnhancements.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"68ce7b85\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('StackedVirtualSidebarContainer',{attrs:{\"width\":_vm.width,\"enable-slot\":false},scopedSlots:_vm._u([{key:\"default\",fn:function({ topHeight, bottomHeight }){return [_c('FilterList',{staticClass:\"flex-shrink-1 flex-grow-1\",attrs:{\"show-empty-types\":true,\"height\":topHeight - 46,\"width\":_vm.width,\"style-manager\":_vm.styleManager,\"filter-controls\":_vm.groupFilterControls,\"group\":\"\"}}),_c('v-divider'),_c('GroupList',{staticClass:\"flex-grow-0 flex-shrink-0\",attrs:{\"height\":bottomHeight,\"hotkeys-disabled\":_vm.visible() || _vm.readOnlyMode}})]}}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"d-flex flex-column\"},[_c('v-container',{attrs:{\"dense\":\"\"}},[_c('v-row',{staticClass:\"border-highlight\",attrs:{\"align\":\"center\"}},[_c('v-col',{staticClass:\"d-flex flex-row align-center py-0 mr-8\",attrs:{\"id\":\"type-header\"}},[_c('v-checkbox',{staticClass:\"my-1 type-checkbox\",attrs:{\"input-value\":_vm.headCheckState !== -1 ? _vm.headCheckState : false,\"indeterminate\":_vm.headCheckState === -1,\"dense\":\"\",\"shrink\":\"\",\"hide-details\":\"\",\"color\":\"white\"},on:{\"change\":_vm.headCheckClicked}}),_c('v-tooltip',{attrs:{\"open-delay\":\"100\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('b',_vm._g({},on),[_vm._v(\"Type Filter\")])]}}])},[_c('span',[_vm._v(\"Toggle Type TotalCount:FrameCount Type Name\")])]),_c('v-spacer'),_c('tooltip-btn',{attrs:{\"icon\":_vm.sortingMethodIcons[_vm.data.sortingMethod],\"tooltip-text\":`Sort types by Total Count, Alphabetically or Frame Count, current: ${_vm.sortingMethods[_vm.data.sortingMethod]}`},on:{\"click\":_vm.clickSortToggle}}),_vm._t(\"settings\"),_c('v-tooltip',{attrs:{\"open-delay\":\"100\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._g({staticClass:\"hover-show-child\",attrs:{\"disabled\":_vm.checkedTypesRef.length === 0 || _vm.readOnlyMode,\"icon\":\"\",\"small\":\"\"},on:{\"click\":function($event){return _vm.clickDelete()}}},on),[_c('v-icon',{attrs:{\"small\":\"\",\"color\":\"error\"}},[_vm._v(\" mdi-delete \")])],1)]}}])},[_c('span',[_vm._v(\"Delete visible items\")])])],2)],1)],1),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.filterText),expression:\"data.filterText\"}],staticClass:\"mx-2 mt-2 shrink input-box\",attrs:{\"id\":\"search-types\",\"type\":\"text\",\"placeholder\":\"Search types\"},domProps:{\"value\":(_vm.data.filterText)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.data, \"filterText\", $event.target.value)}}}),_c('div',{staticClass:\"py-2 overflow-y-hidden\"},[_c('v-virtual-scroll',{staticClass:\"tracks\",attrs:{\"items\":_vm.virtualTypes,\"item-height\":30,\"height\":_vm.virtualHeight,\"bench\":\"1\"},scopedSlots:_vm._u([{key:\"default\",fn:function({ item }){return [_c('type-item',{attrs:{\"type\":item.type,\"checked\":item.checked,\"color\":item.color,\"display-text\":item.displayText,\"confidence-filter-num\":item.confidenceFilterNum,\"width\":_vm.width},on:{\"setCheckedTypes\":function($event){return _vm.updateCheckedType($event, item.type)},\"clickEdit\":_vm.clickEdit}})]}}])})],1),_c('v-dialog',{attrs:{\"width\":\"350\"},model:{value:(_vm.data.showPicker),callback:function ($$v) {_vm.$set(_vm.data, \"showPicker\", $$v)},expression:\"data.showPicker\"}},[_c('TypeEditor',{attrs:{\"selected-type\":_vm.data.selectedType,\"filter-controls\":_vm.filterControls,\"style-manager\":_vm.styleManager,\"group\":_vm.group},on:{\"close\":function($event){_vm.data.showPicker = false}}})],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-tooltip',{attrs:{\"bottom\":\"\",\"open-delay\":_vm.delay},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"ma-0\",attrs:{\"small\":_vm.size === 'small',\"x-small\":_vm.size === 'x-small',\"icon\":\"\",\"disabled\":_vm.disabled,\"color\":_vm.color,\"outlined\":_vm.outlined,\"tile\":_vm.tile},on:{\"click\":function($event){return _vm.$emit('click', $event)}}},'v-btn',attrs,false),on),[_c('v-icon',[_vm._v(\" \"+_vm._s(_vm.icon)+\" \")])],1)]}}])},[_c('span',[_vm._v(_vm._s(_vm.tooltipText))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TooltipButton.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TooltipButton.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./TooltipButton.vue?vue&type=template&id=bb26386a\"\nimport script from \"./TooltipButton.vue?vue&type=script&lang=ts\"\nexport * from \"./TooltipButton.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"type-edit\"},[_c('v-card',[_c('v-card-title',[_vm._v(\" Editing Type \"),_c('v-spacer'),_c('v-btn',{attrs:{\"icon\":\"\",\"small\":\"\",\"color\":\"white\"},on:{\"click\":function($event){return _vm.$emit('close')}}},[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-close \")])],1)],1),_c('v-card-subtitle',{staticClass:\"my-0 py-0\"},[_c('v-container',{staticClass:\"py-0\"},[_c('v-row',[_vm._v(\" \"+_vm._s(_vm.data.selectedType)+\" \")])],1)],1),_c('v-card-text',[_c('v-form',{model:{value:(_vm.data.valid),callback:function ($$v) {_vm.$set(_vm.data, \"valid\", $$v)},expression:\"data.valid\"}},[_c('v-row',[_c('v-col',{attrs:{\"clas\":\"py-0\"}},[_c('v-text-field',{attrs:{\"disabled\":_vm.readOnlyMode,\"label\":_vm.readOnlyMode ? 'Type Name (disabled in ReadOnly Mode)' : 'Type Name',\"hide-details\":\"\"},model:{value:(_vm.data.editingType),callback:function ($$v) {_vm.$set(_vm.data, \"editingType\", $$v)},expression:\"data.editingType\"}})],1)],1),(!_vm.group)?_c('v-row',[_c('v-col',[_c('v-checkbox',{attrs:{\"label\":\"Show Label\",\"dense\":\"\",\"shrink\":\"\",\"hide-details\":\"\"},model:{value:(_vm.data.editingShowLabel),callback:function ($$v) {_vm.$set(_vm.data, \"editingShowLabel\", $$v)},expression:\"data.editingShowLabel\"}}),_c('v-checkbox',{attrs:{\"label\":\"Show Confidence\",\"dense\":\"\",\"shrink\":\"\",\"hide-details\":\"\"},model:{value:(_vm.data.editingShowConfidence),callback:function ($$v) {_vm.$set(_vm.data, \"editingShowConfidence\", $$v)},expression:\"data.editingShowConfidence\"}})],1)],1):_vm._e(),_c('v-row',{staticClass:\"align-center\"},[_c('v-col',[_c('v-text-field',{attrs:{\"type\":\"number\",\"rules\":[\n val => val >= 0 || 'Must be >= 0',\n ],\"required\":\"\",\"hide-details\":\"\",\"label\":\"Box Border Thickness\"},model:{value:(_vm.data.editingThickness),callback:function ($$v) {_vm.$set(_vm.data, \"editingThickness\", $$v)},expression:\"data.editingThickness\"}})],1),_c('v-col',[_c('v-checkbox',{attrs:{\"label\":\"Fill\",\"dense\":\"\",\"shrink\":\"\",\"hint\":\"Toggle Box Shading\",\"persistent-hint\":\"\"},model:{value:(_vm.data.editingFill),callback:function ($$v) {_vm.$set(_vm.data, \"editingFill\", $$v)},expression:\"data.editingFill\"}})],1)],1),_c('v-row',[_c('v-col',[_c('v-slider',{staticClass:\"pr-3\",attrs:{\"label\":`${_vm.data.editingOpacity.toFixed(2)}`,\"min\":\"0.0\",\"max\":\"1.0\",\"step\":\"0.01\",\"height\":\"8\",\"hint\":\"Border & Fill Opacity\",\"persistent-hint\":\"\"},model:{value:(_vm.data.editingOpacity),callback:function ($$v) {_vm.$set(_vm.data, \"editingOpacity\", $$v)},expression:\"data.editingOpacity\"}})],1)],1),_c('v-row',{attrs:{\"dense\":\"\",\"align\":\"center\"}},[_c('v-col',{staticClass:\"mx-2\"},[_c('v-color-picker',{attrs:{\"hide-inputs\":\"\"},model:{value:(_vm.data.editingColor),callback:function ($$v) {_vm.$set(_vm.data, \"editingColor\", $$v)},expression:\"data.editingColor\"}})],1)],1)],1)],1),_c('v-card-actions',{},[(!_vm.group)?_c('v-tooltip',{attrs:{\"open-delay\":\"100\",\"bottom\":\"\",\"color\":_vm.usedTypesRef.includes(_vm.data.selectedType) ? 'error' : ''},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('div',_vm._g({},on),[_c('v-btn',{staticClass:\"hover-show-child\",attrs:{\"disabled\":_vm.usedTypesRef.includes(_vm.data.selectedType),\"small\":\"\",\"color\":\"error\"},on:{\"click\":function($event){return _vm.clickDeleteType(_vm.data.selectedType)}}},[_vm._v(\" Delete Type \")])],1)]}}],null,false,2310263957)},[_c('span',{staticClass:\"ma-0 pa-1\"},[_vm._v(\" Only types without any annotations can be deleted. \")])]):_vm._e(),_c('v-spacer'),_c('v-btn',{attrs:{\"depressed\":\"\",\"text\":\"\"},on:{\"click\":function($event){return _vm.$emit('close')}}},[_vm._v(\" Cancel \")]),_c('v-btn',{attrs:{\"color\":\"primary\",\"depressed\":\"\",\"disabled\":!_vm.data.valid},on:{\"click\":_vm.acceptChanges}},[_vm._v(\" Save \")])],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TypeEditor.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TypeEditor.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./TypeEditor.vue?vue&type=template&id=b6fcd7e8\"\nimport script from \"./TypeEditor.vue?vue&type=script&lang=ts\"\nexport * from \"./TypeEditor.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-row',{staticClass:\"hover-show-parent\",style:(_vm.cssVars),attrs:{\"align\":\"center\"}},[_c('v-col',{staticClass:\"d-flex flex-row py-0 align-center\"},[_c('v-checkbox',{staticClass:\"my-1 pl-2\",attrs:{\"input-value\":_vm.checked,\"color\":_vm.color,\"dense\":\"\",\"shrink\":\"\",\"hide-details\":\"\"},on:{\"change\":function($event){return _vm.$emit('setCheckedTypes', $event)}},scopedSlots:_vm._u([{key:\"label\",fn:function(){return [_c('div',{staticClass:\"text-body-2 grey--text text--lighten-1 d-flex flex-row nowrap\"},[_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('span',_vm._g({staticClass:\"nowrap\"},on),[_vm._v(\" \"+_vm._s(_vm.displayText)+\" \")])]}}])},[_c('span',[_vm._v(_vm._s(_vm.displayText)+\" \")])]),(_vm.confidenceFilterNum)?_c('v-tooltip',{staticClass:\"align-self-end\",attrs:{\"open-delay\":\"200\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('span',_vm._g(_vm._b({staticClass:\"outlined\"},'span',attrs,false),on),[_vm._v(\" \"+_vm._s(`>${_vm.confidenceFilterNum}`)+\" \")])]}}],null,false,219603796)},[_c('span',[_vm._v(\"Type has threshold set individually\")])]):_vm._e()],1)]},proxy:true}])}),_c('v-spacer'),_c('v-tooltip',{attrs:{\"open-delay\":\"100\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._g({staticClass:\"hover-show-child\",attrs:{\"icon\":\"\",\"small\":\"\"},on:{\"click\":function($event){return _vm.$emit('clickEdit', _vm.type)}}},on),[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-pencil \")])],1)]}}])},[_c('span',[_vm._v(\"Edit\")])])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TypeItem.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TypeItem.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./TypeItem.vue?vue&type=template&id=796b3a1a&scoped=true\"\nimport script from \"./TypeItem.vue?vue&type=script&lang=ts\"\nexport * from \"./TypeItem.vue?vue&type=script&lang=ts\"\nimport style0 from \"./TypeItem.vue?vue&type=style&index=0&id=796b3a1a&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"796b3a1a\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./FilterList.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./FilterList.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FilterList.vue?vue&type=template&id=15c39aaa&scoped=true\"\nimport script from \"./FilterList.vue?vue&type=script&lang=ts\"\nexport * from \"./FilterList.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FilterList.vue?vue&type=style&index=0&id=15c39aaa&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"15c39aaa\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"d-flex flex-column\"},[_c('v-subheader',{staticClass:\"flex-grow-1 trackHeader px-2\"},[_c('v-container',{staticClass:\"py-2\"},[_c('v-row',{attrs:{\"align\":\"center\"}},[_vm._v(\" Groups (\"+_vm._s(_vm.virtualListItems.length)+\") \")])],1)],1),_c('datalist',{attrs:{\"id\":\"allGroupTypesOptions\"}},_vm._l((_vm.groupFilters.allTypes.value),function(type){return _c('option',{key:type,domProps:{\"value\":type}},[_vm._v(\" \"+_vm._s(type)+\" \")])}),0),_c('v-virtual-scroll',{directives:[{name:\"mousetrap\",rawName:\"v-mousetrap\",value:(_vm.mouseTrap),expression:\"mouseTrap\"}],ref:\"virtualList\",staticClass:\"groups\",attrs:{\"items\":_vm.virtualListItems,\"item-height\":_vm.data.itemHeight,\"height\":_vm.height - 38,\"bench\":\"1\"},scopedSlots:_vm._u([{key:\"default\",fn:function({ item }){return [_c('group-item',_vm._b({},'group-item',_vm.getItemProps(item),false))]}}])})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Vue, { ref, watch } from 'vue';\nexport default function useVirtualScrollTo({ itemHeight, getAnnotation, filteredListRef, selectedIdRef, multiSelectList, selectNext, }) {\n const virtualList = ref(null);\n function scrollTo(id) {\n if (id !== null && virtualList.value !== null) {\n const annotation = getAnnotation(id);\n if (annotation) {\n const offset = filteredListRef.value.findIndex((filtered) => filtered.annotation.id === id);\n if (offset === -1) {\n virtualList.value.$el.scrollTop = 0;\n }\n else {\n // try to show the selected track as the third track in the list\n virtualList.value.$el.scrollTop = (offset * itemHeight) - (2 * itemHeight);\n }\n }\n }\n }\n function scrollToSelected() {\n if (selectedIdRef.value !== null) {\n Vue.nextTick(() => scrollTo(selectedIdRef.value));\n }\n else if (multiSelectList.value.length >= 1) {\n Vue.nextTick(() => scrollTo(multiSelectList.value[0]));\n }\n }\n // If we mount with selected we scroll to it automatically\n scrollToSelected();\n function scrollPreventDefault(element, keyEvent, direction) {\n if (virtualList.value !== null && element === virtualList.value.$el) {\n if (direction === 'up') {\n selectNext(-1);\n }\n else if (direction === 'down') {\n selectNext(1);\n }\n keyEvent.preventDefault();\n }\n }\n watch(selectedIdRef, scrollTo);\n watch(filteredListRef, scrollToSelected);\n watch(multiSelectList, scrollToSelected);\n return {\n virtualList,\n scrollTo,\n scrollToSelected,\n scrollPreventDefault,\n };\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"px-1\",style:(_vm.style)},[_c('v-row',{staticClass:\"pt-2\",attrs:{\"no-gutters\":\"\"}},[_c('v-checkbox',{staticClass:\"my-0 ml-0 pt-0\",attrs:{\"dense\":\"\",\"hide-details\":\"\",\"input-value\":_vm.inputValue,\"color\":_vm.color},on:{\"change\":function($event){return _vm.groupFilters.updateCheckedId(_vm.group.id, $event)}}}),_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"bottom\":\"\",\"max-width\":\"200\",\"disabled\":_vm.group.id.toString().length < 8},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('div',_vm._g({staticClass:\"trackNumber pl-0 pr-2\",on:{\"click\":function($event){if($event.target !== $event.currentTarget)return null;return _vm.handler.groupEdit(_vm.group.id)}}},on),[_vm._v(\" \"+_vm._s(_vm.group.id)+\" \")])]}}])},[_c('span',[_vm._v(\" \"+_vm._s(_vm.group.id)+\" \")])]),_c('v-spacer'),_c('TypePicker',{attrs:{\"value\":_vm.group.getType(),\"all-types\":_vm.groupFilters.allTypes.value,\"read-only-mode\":_vm.readOnlyMode,\"data-list-source\":\"allGroupTypesOptions\"},on:{\"input\":function($event){return _vm.group.setType($event)}}})],1),_c('v-row',{staticClass:\"mt-1\",attrs:{\"no-gutters\":\"\"}},[_c('v-spacer'),_c('div',{staticClass:\"text-caption grey--text text--lighten-1\"},[_vm._v(\" \"+_vm._s(_vm.group.memberIds.join(', '))+\" \")])],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { getCurrentInstance } from 'vue';\nconst useVuetify = () => {\n const vm = getCurrentInstance();\n if ((vm === null || vm === void 0 ? void 0 : vm.proxy.$vuetify) === undefined) {\n throw new Error('Vuetify is undefined');\n }\n return vm.proxy.$vuetify;\n};\nexport default useVuetify;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('span',[(_vm.lockTypes)?_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.trackTypeValue),expression:\"data.trackTypeValue\"}],ref:\"typeInputBoxRef\",staticClass:\"input-box select-input\",attrs:{\"disabled\":_vm.readOnlyMode},on:{\"focus\":_vm.onFocus,\"change\":[function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(_vm.data, \"trackTypeValue\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])},_vm.onBlur],\"keydown\":_vm.onInputKeyEvent}},_vm._l((_vm.allTypes),function(item){return _c('option',{key:item,domProps:{\"value\":item}},[_vm._v(\" \"+_vm._s(item)+\" \")])}),0):_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.data.trackTypeValue),expression:\"data.trackTypeValue\"}],ref:\"typeInputBoxRef\",staticClass:\"input-box freeform-input\",attrs:{\"type\":\"text\",\"list\":_vm.dataListSource,\"disabled\":_vm.readOnlyMode},domProps:{\"value\":(_vm.data.trackTypeValue)},on:{\"focus\":_vm.onFocus,\"blur\":_vm.onBlur,\"keydown\":_vm.onInputKeyEvent,\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.data, \"trackTypeValue\", $event.target.value)}}}),(_vm.lockTypes)?_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-lock \")]):_vm._e(),(_vm.selected)?_c('span',{directives:[{name:\"mousetrap\",rawName:\"v-mousetrap\",value:([\n { bind: 'shift+enter', handler: _vm.focusType },\n ]),expression:\"[\\n { bind: 'shift+enter', handler: focusType },\\n ]\"}]}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TypePicker.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TypePicker.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./TypePicker.vue?vue&type=template&id=5011a29b&scoped=true\"\nimport script from \"./TypePicker.vue?vue&type=script&lang=ts\"\nexport * from \"./TypePicker.vue?vue&type=script&lang=ts\"\nimport style0 from \"./TypePicker.vue?vue&type=style&index=0&id=5011a29b&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5011a29b\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GroupItem.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GroupItem.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./GroupItem.vue?vue&type=template&id=02a5a674&scoped=true\"\nimport script from \"./GroupItem.vue?vue&type=script&lang=ts\"\nexport * from \"./GroupItem.vue?vue&type=script&lang=ts\"\nimport style0 from \"./GroupItem.vue?vue&type=style&index=0&id=02a5a674&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"02a5a674\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GroupList.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GroupList.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./GroupList.vue?vue&type=template&id=195061fa&scoped=true\"\nimport script from \"./GroupList.vue?vue&type=script&lang=ts\"\nexport * from \"./GroupList.vue?vue&type=script&lang=ts\"\nimport style0 from \"./GroupList.vue?vue&type=style&index=0&id=195061fa&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"195061fa\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-card',{directives:[{name:\"resize\",rawName:\"v-resize\",value:(_vm.onResize),expression:\"onResize\"}],staticClass:\"sidebar d-flex flex-column overflow-hidden\",staticStyle:{\"z-index\":\"1\"},attrs:{\"width\":_vm.width,\"tile\":\"\",\"outlined\":\"\"}},[_vm._t(\"default\",null,null,_vm.data)],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./StackedVirtualSidebarContainer.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./StackedVirtualSidebarContainer.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./StackedVirtualSidebarContainer.vue?vue&type=template&id=12d8e531&scoped=true\"\nimport script from \"./StackedVirtualSidebarContainer.vue?vue&type=script&lang=ts\"\nexport * from \"./StackedVirtualSidebarContainer.vue?vue&type=script&lang=ts\"\nimport style0 from \"./StackedVirtualSidebarContainer.vue?vue&type=style&index=0&id=12d8e531&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"12d8e531\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GroupSidebar.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GroupSidebar.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./GroupSidebar.vue?vue&type=template&id=ff506f46\"\nimport script from \"./GroupSidebar.vue?vue&type=script&lang=ts\"\nexport * from \"./GroupSidebar.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('StackedVirtualSidebarContainer',{attrs:{\"width\":_vm.width,\"enable-slot\":false},scopedSlots:_vm._u([{key:\"default\",fn:function({ bottomHeight }){return [_c('v-container',[_c('h3',[_vm._v(\" \"+_vm._s(_vm.currentMode)+\" \")]),_c('v-row',{staticClass:\"px-3\"},[_c('div',{staticClass:\"mx-1 my-3\"},[_c('tooltip-btn',{attrs:{\"icon\":\"mdi-filter\",\"tooltip-text\":\"Filter Attributes displayed\",\"size\":\"large\",\"color\":_vm.currentMode === 'Filtering' ? 'primary' : 'default',\"outlined\":\"\",\"tile\":\"\"},on:{\"click\":function($event){_vm.currentMode = 'Filtering'}}})],1),_c('div',{staticClass:\"mx-1 my-3\"},[_c('tooltip-btn',{attrs:{\"icon\":\"mdi-chart-line-variant\",\"tooltip-text\":\"Chart Numeric Attributes\",\"size\":\"large\",\"outlined\":\"\",\"color\":_vm.currentMode === 'Timeline' ? 'primary' : 'default',\"tile\":\"\"},on:{\"click\":function($event){_vm.currentMode = 'Timeline'}}})],1)]),_c('v-divider'),(_vm.currentMode === 'Filtering')?_c('attribute-filters',{staticClass:\"flex-grow-0 flex-shrink-0\",attrs:{\"height\":bottomHeight,\"hotkeys-disabled\":_vm.visible() || _vm.readOnlyMode}}):_vm._e(),(_vm.currentMode === 'Timeline')?_c('attribute-timeline',{staticClass:\"flex-grow-0 flex-shrink-0\",attrs:{\"height\":bottomHeight}}):_vm._e()],1)]}}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-card',{staticClass:\"pa-0\"},[_c('p',[_vm._v(\" Add filters to decrease the number of attributes visible. Filter by attribute numeric value, top numeric values attribute name, attribute string value, or attribute boolean values. Filters are applied in the order they are created. \")]),_c('v-card-title',{staticClass:\"pa-0\"},[_c('h4',[_vm._v(\" Filter on: \")])]),_c('v-card-text',[_c('div',[_c('v-radio-group',{attrs:{\"row\":\"\"},model:{value:(_vm.currentTab),callback:function ($$v) {_vm.currentTab=$$v},expression:\"currentTab\"}},_vm._l((_vm.tabMap),function(item){return _c('span',{key:item},[_c('v-radio',{attrs:{\"label\":item,\"value\":item}})],1)}),0)],1),_vm._l((_vm.attributeFilters[_vm.currentTab]),function(filter,index){return _c('div',{key:`track_${index}`,attrs:{\"no-gutters\":\"\"}},[_c(_vm.getComponentType(filter.dataType),{tag:\"component\",attrs:{\"attribute-filter\":filter.filterData,\"filter-names\":_vm.filterNames},on:{\"delete\":function($event){return _vm.deleteFilter(index, _vm.currentTab)},\"update-value\":function($event){return _vm.updateValue(index, _vm.currentTab, $event)},\"update-active\":function($event){return _vm.updateActive(index, _vm.currentTab, $event)},\"save-changes\":function($event){return _vm.modifyFilter(index, _vm.currentTab, $event)}}})],1)})],2),_c('v-card-actions',[_c('v-btn',{attrs:{\"color\":\"success\",\"tooltip-text\":\"Add Filter\"},on:{\"click\":function($event){_vm.addFilterDialog = true}}},[_vm._v(\" Add Filter \")])],1)],1),_c('v-dialog',{attrs:{\"width\":\"650\"},model:{value:(_vm.addFilterDialog),callback:function ($$v) {_vm.addFilterDialog=$$v},expression:\"addFilterDialog\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\" Add Filter \")]),_c('v-card-text',[_c('v-stepper',{model:{value:(_vm.addFilterPosition),callback:function ($$v) {_vm.addFilterPosition=$$v},expression:\"addFilterPosition\"}},[_c('v-stepper-header',[_c('v-stepper-step',{attrs:{\"complete\":_vm.addFilterPosition > 1,\"step\":\"1\"}},[_vm._v(\" Select Filter Type \")]),_c('v-divider'),_c('v-stepper-step',{attrs:{\"complete\":_vm.addFilterPosition > 2,\"step\":\"2\"}},[_vm._v(\" Configure Filter \")])],1),_c('v-stepper-items',[_c('v-stepper-content',{attrs:{\"step\":\"1\"}},[_c('p',[_vm._v(\" Select the Attribute filter type to add \")]),_c('v-container',{staticClass:\"px-0\",attrs:{\"fluid\":\"\"}},[_c('v-radio-group',{model:{value:(_vm.selectedAddFilterType),callback:function ($$v) {_vm.selectedAddFilterType=$$v},expression:\"selectedAddFilterType\"}},_vm._l((_vm.filterTypes),function(item){return _c('div',{key:item.type,staticClass:\"pt-3\"},[_c('v-radio',{attrs:{\"label\":`${item.type}`,\"value\":item.type}}),_c('span',[_vm._v(\" \"+_vm._s(item.description)+\" \")])],1)}),0)],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{staticClass:\"mx-3\",attrs:{\"color\":\"error\"},on:{\"click\":function($event){_vm.addFilterDialog = false; _vm.addFilterPosition = 1}}},[_vm._v(\" Cancel \")]),_c('v-btn',{attrs:{\"color\":\"success\"},on:{\"click\":function($event){return _vm.addFilter(_vm.selectedAddFilterType)}}},[_vm._v(\" Next \")])],1)],1),_c('v-stepper-content',{attrs:{\"step\":\"2\"}},[(_vm.addFilterFilter !== null)?_c(`${_vm.getComponentType(_vm.addFilterFilter.dataType)}-settings`,{tag:\"component\",attrs:{\"filter-names\":_vm.filterNames},model:{value:(_vm.addFilterFilter.filterData),callback:function ($$v) {_vm.$set(_vm.addFilterFilter, \"filterData\", $$v)},expression:\"addFilterFilter.filterData\"}}):_vm._e(),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{staticClass:\"mx-3\",attrs:{\"color\":\"error\"},on:{\"click\":function($event){_vm.addFilterPosition = 1}}},[_vm._v(\" Cancel \")]),_c('v-btn',{attrs:{\"color\":\"success\"},on:{\"click\":_vm.finalizeFilter}},[_vm._v(\" Create \")])],1)],1),_c('v-stepper-content',{attrs:{\"step\":\"3\"}},[_vm._v(\" Step 3 is completion \")])],1)],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('h4',[_vm._v(\"Number: \"+_vm._s(_vm.attributeFilter.type))]),_c('v-spacer'),_c('tooltip-btn',{attrs:{\"icon\":\"mdi-cog\",\"size\":\"x-small\",\"tooltip-text\":\"Edit Settings of Filter\"},on:{\"click\":function($event){return _vm.showSettings()}}}),_c('tooltip-btn',{attrs:{\"icon\":\"mdi-delete\",\"color\":\"error\",\"size\":\"x-small\",\"tooltip-text\":\"Delete Filter\"},on:{\"click\":function($event){return _vm.$emit('delete')}}})],1),_c('v-divider'),(_vm.attributeFilter.type === 'range')?_c('div',[_c('v-row',{staticClass:\"align-center\",attrs:{\"no-gutters\":\"\"}},[_c('v-checkbox',{attrs:{\"input-value\":_vm.attributeFilter.active,\"label\":\"enabled\"},on:{\"change\":_vm.setActive}}),_c('span',{staticClass:\"pl-1\"},[_vm._v(\" \"+_vm._s(_vm.attributeFilter.appliedTo.join(','))+\" \")]),_c('b',[_vm._v(\" \"+_vm._s(_vm.attributeFilter.comp)+\" \")]),_c('span',[_vm._v(\" value \")])],1),(_vm.attributeFilter.range)?_c('v-row',{attrs:{\"no-gutters\":\"\",\"align-content\":\"center\"}},[_c('v-slider',{attrs:{\"value\":_vm.attributeFilter.value,\"min\":_vm.attributeFilter.range[0],\"max\":_vm.attributeFilter.range[1],\"step\":_vm.attributeFilter.range[1] > 1 ? 1 : .01,\"label\":_vm.attributeFilter.value.toString()},on:{\"input\":_vm.setValue}})],1):_vm._e()],1):(_vm.attributeFilter.type === 'top')?_c('div',[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('v-checkbox',{attrs:{\"value\":_vm.attributeFilter.active,\"label\":\"enabled\"},on:{\"change\":_vm.setActive}}),_c('span',{staticClass:\"pl-1\"},[_vm._v(\" Show \"+_vm._s(_vm.attributeFilter.value)+\" top items \")])],1),_c('v-row',{attrs:{\"no-gutters\":\"\",\"align-content\":\"center\"}},[_c('v-slider',{attrs:{\"value\":_vm.attributeFilter.value,\"min\":_vm.attributeFilter.range[0],\"max\":_vm.attributeFilter.range[1],\"step\":1,\"label\":_vm.attributeFilter.value.toString()},on:{\"input\":_vm.setValue}})],1)],1):_vm._e(),_c('v-divider'),_c('v-dialog',{attrs:{\"width\":\"600\"},model:{value:(_vm.settingsDialog),callback:function ($$v) {_vm.settingsDialog=$$v},expression:\"settingsDialog\"}},[(_vm.settingsDialog && _vm.copiedFilter !== null)?_c('attribute-number-filter-settings',{attrs:{\"filter-names\":_vm.filterNames},model:{value:(_vm.copiedFilter),callback:function ($$v) {_vm.copiedFilter=$$v},expression:\"copiedFilter\"}},[[_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"depressed\":\"\",\"text\":\"\"},on:{\"click\":function($event){_vm.settingsDialog = false}}},[_vm._v(\" Cancel \")]),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":_vm.saveChanges}},[_vm._v(\" Save \")])],1)]],2):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-card',[_c('v-card-title',[_vm._v(\" Number Filter Settings \")]),_c('v-card-text',[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('ul',[_c('li',[_vm._v(\" \\\"range\\\" - to set a slider range that can be filtered based on the comparison value \")]),_c('li',[_vm._v(\" \\\"top\\\" - filter to show the top X numerical values \")])]),_c('v-select',{attrs:{\"items\":['range', 'top'],\"label\":\"Type\",\"outlined\":\"\"},on:{\"change\":_vm.typeChange},model:{value:(_vm.value.type),callback:function ($$v) {_vm.$set(_vm.value, \"type\", $$v)},expression:\"value.type\"}})],1),_c('v-row',[_c('v-combobox',{staticClass:\"mb-2\",attrs:{\"items\":_vm.filterNames,\"chips\":\"\",\"labels\":\"Apply To\",\"multiple\":\"\",\"hint\":\"Select Attributes this filter applies to\",\"persistent-hint\":\"\",\"outlined\":\"\",\"deletable-chips\":\"\"},model:{value:(_vm.value.appliedTo),callback:function ($$v) {_vm.$set(_vm.value, \"appliedTo\", $$v)},expression:\"value.appliedTo\"}})],1),(_vm.value.type === 'range')?_c('div',[_c('v-row',{staticClass:\"pb-3\"},[_c('v-select',{attrs:{\"items\":['>', '<', '>=', '<='],\"label\":\"Comparison\",\"hint\":`Show values that are ${_vm.value.comp} the filter value`,\"persistent-hint\":\"\",\"outlined\":\"\"},model:{value:(_vm.value.comp),callback:function ($$v) {_vm.$set(_vm.value, \"comp\", $$v)},expression:\"value.comp\"}})],1),_c('v-row',{staticClass:\"pt-2\"},[_c('v-text-field',{attrs:{\"hide-details\":\"\",\"dense\":\"\",\"outlined\":\"\",\"step\":_vm.value.range[0] > 1 ? 1 : 0.01,\"type\":\"number\",\"label\":\"Lower\",\"max\":_vm.value.range[1],\"hint\":\"Lower limit for slider\",\"persistent-hint\":\"\"},model:{value:(_vm.value.range[0]),callback:function ($$v) {_vm.$set(_vm.value.range, 0, _vm._n($$v))},expression:\"value.range[0]\"}}),_c('v-text-field',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"step\":_vm.value.range[1] > 1 ? 1 : 0.01,\"type\":\"number\",\"label\":\"Upper\",\"min\":_vm.value.range[0],\"hint\":\"Upper limit for slider\",\"persistent-hint\":\"\"},model:{value:(_vm.value.range[1]),callback:function ($$v) {_vm.$set(_vm.value.range, 1, _vm._n($$v))},expression:\"value.range[1]\"}})],1)],1):(_vm.value.type === 'top')?_c('div',[_c('v-text-field',{attrs:{\"outlined\":\"\",\"dense\":\"\",\"step\":1,\"type\":\"number\",\"label\":\"Top X items\",\"min\":1,\"persistent-hint\":\"\"},model:{value:(_vm.value.value),callback:function ($$v) {_vm.$set(_vm.value, \"value\", _vm._n($$v))},expression:\"value.value\"}})],1):_vm._e()],1),_vm._t(\"default\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeNumberFilterSettings.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeNumberFilterSettings.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AttributeNumberFilterSettings.vue?vue&type=template&id=3e1f9c8e&scoped=true\"\nimport script from \"./AttributeNumberFilterSettings.vue?vue&type=script&lang=ts\"\nexport * from \"./AttributeNumberFilterSettings.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3e1f9c8e\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeNumberFilter.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeNumberFilter.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AttributeNumberFilter.vue?vue&type=template&id=2cf09f30&scoped=true\"\nimport script from \"./AttributeNumberFilter.vue?vue&type=script&lang=ts\"\nexport * from \"./AttributeNumberFilter.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2cf09f30\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('h4',[_vm._v(\"String: \"+_vm._s(_vm.attributeFilter.comp))]),_c('v-spacer'),_c('tooltip-btn',{attrs:{\"icon\":\"mdi-cog\",\"size\":\"x-small\",\"tooltip-text\":\"Edit Settings of Filter\"},on:{\"click\":function($event){return _vm.showSettings()}}}),_c('tooltip-btn',{attrs:{\"icon\":\"mdi-delete\",\"color\":\"error\",\"size\":\"x-small\",\"tooltip-text\":\"Delete Filter\"},on:{\"click\":function($event){return _vm.$emit('delete')}}})],1),_c('v-divider'),_c('div',[_c('v-row',{staticClass:\"align-center\",attrs:{\"no-gutters\":\"\"}},[_c('v-checkbox',{attrs:{\"value\":_vm.attributeFilter.active,\"label\":\"enabled\"},on:{\"change\":_vm.setActive}}),_c('span',{staticClass:\"pl-1\"},[_vm._v(\" \"+_vm._s(_vm.attributeFilter.appliedTo.join(','))+\" \")]),_c('b',{staticClass:\"px-2\"},[_vm._v(\" \"+_vm._s(_vm.attributeFilter.comp)+\" \")]),_c('span',[_vm._v(\" \"+_vm._s(_vm.attributeFilter.value.join(','))+\" \")])],1)],1),_c('v-divider'),_c('v-dialog',{attrs:{\"width\":\"600\"},model:{value:(_vm.settingsDialog),callback:function ($$v) {_vm.settingsDialog=$$v},expression:\"settingsDialog\"}},[(_vm.settingsDialog && _vm.copiedFilter !== null)?_c('attribute-string-filter-settings',{attrs:{\"filter-names\":_vm.filterNames},model:{value:(_vm.copiedFilter),callback:function ($$v) {_vm.copiedFilter=$$v},expression:\"copiedFilter\"}},[_c('v-card-title',[_vm._v(\" Number Filter Settings \")]),[_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"depressed\":\"\",\"text\":\"\"},on:{\"click\":function($event){_vm.settingsDialog = false}}},[_vm._v(\" Cancel \")]),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":_vm.saveChanges}},[_vm._v(\" Save \")])],1)]],2):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-card',[_c('v-card-title',[_vm._v(\" Number Filter Settings \")]),_c('v-card-text',[_c('v-row',[_c('v-combobox',{attrs:{\"items\":_vm.filterNames,\"chips\":\"\",\"labels\":\"Apply To\",\"multiple\":\"\",\"outlined\":\"\",\"hint\":\"Select Attributes this filter applies to\",\"persistent-hint\":\"\",\"deletable-chips\":\"\",\"clearable\":\"\"},model:{value:(_vm.value.appliedTo),callback:function ($$v) {_vm.$set(_vm.value, \"appliedTo\", $$v)},expression:\"value.appliedTo\"}})],1),_c('div',[_c('v-row',[_c('v-select',{attrs:{\"items\":['=', '≠', 'contains', 'starts'],\"label\":\"Comparison\",\"outlined\":\"\"},model:{value:(_vm.value.comp),callback:function ($$v) {_vm.$set(_vm.value, \"comp\", $$v)},expression:\"value.comp\"}})],1),_c('v-row',[_c('v-combobox',{attrs:{\"chips\":\"\",\"labels\":\"Values\",\"multiple\":\"\",\"solor\":\"\",\"deletable-chips\":\"\",\"hint\":\"List of the filter will match\",\"persistent-hint\":\"\",\"clearable\":\"\"},model:{value:(_vm.value.value),callback:function ($$v) {_vm.$set(_vm.value, \"value\", $$v)},expression:\"value.value\"}})],1)],1)],1),_vm._t(\"default\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeStringFilterSettings.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeStringFilterSettings.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AttributeStringFilterSettings.vue?vue&type=template&id=629f30e0&scoped=true\"\nimport script from \"./AttributeStringFilterSettings.vue?vue&type=script&lang=ts\"\nexport * from \"./AttributeStringFilterSettings.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"629f30e0\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeStringFilter.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeStringFilter.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AttributeStringFilter.vue?vue&type=template&id=590c9bde&scoped=true\"\nimport script from \"./AttributeStringFilter.vue?vue&type=script&lang=ts\"\nexport * from \"./AttributeStringFilter.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"590c9bde\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-row',{attrs:{\"no-gutters\":\"\"}},[_c('h4',[_vm._v(_vm._s(!_vm.timeline ? 'Key' : 'Timeline')+\" Filter\")]),_c('v-spacer'),_c('tooltip-btn',{attrs:{\"icon\":\"mdi-cog\",\"size\":\"x-small\",\"tooltip-text\":\"Edit Settings of Filter\"},on:{\"click\":function($event){return _vm.showSettings()}}}),(!_vm.timeline)?_c('tooltip-btn',{attrs:{\"icon\":\"mdi-delete\",\"color\":\"error\",\"size\":\"x-small\",\"tooltip-text\":\"Delete Filter\"},on:{\"click\":function($event){return _vm.$emit('delete')}}}):_vm._e()],1),_c('v-divider'),(!_vm.timeline)?_c('div',[_c('v-row',{staticClass:\"align-center\",attrs:{\"no-gutters\":\"\"}},[_c('v-checkbox',{attrs:{\"input-value\":_vm.attributeFilter.active,\"label\":\"enabled\",\"disabled\":_vm.timeline},on:{\"change\":_vm.setActive}}),_c('span',{staticClass:\"pl-1\"},[_vm._v(\" \"+_vm._s(_vm.attributeFilter.appliedTo.join(','))+\" \")])],1)],1):(_vm.timeline)?_c('div',_vm._l((_vm.attributeFilter.appliedTo),function(item){return _c('v-row',{key:item,staticClass:\"py-2\"},[_c('div',{staticClass:\"type-color-box\",style:({\n backgroundColor: _vm.getColor(item),\n })}),_c('span',[_vm._v(_vm._s(item))])])}),1):_vm._e(),_c('v-divider'),_c('v-dialog',{attrs:{\"width\":\"600\"},model:{value:(_vm.settingsDialog),callback:function ($$v) {_vm.settingsDialog=$$v},expression:\"settingsDialog\"}},[(_vm.settingsDialog && _vm.copiedFilter !== null)?_c('attribute-key-filter-settings',{attrs:{\"filter-names\":_vm.filterNames},model:{value:(_vm.copiedFilter),callback:function ($$v) {_vm.copiedFilter=$$v},expression:\"copiedFilter\"}},[[_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"depressed\":\"\",\"text\":\"\"},on:{\"click\":function($event){_vm.settingsDialog = false}}},[_vm._v(\" Cancel \")]),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":_vm.saveChanges}},[_vm._v(\" Save \")])],1)]],2):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-card',[_c('v-card-title',[_vm._v(\" Key Filter Settings \")]),_c('v-card-text',[_c('v-row',[_c('v-combobox',{attrs:{\"items\":_vm.filterNames,\"chips\":\"\",\"labels\":\"Apply To\",\"multiple\":\"\",\"solor\":\"\",\"clearable\":\"\",\"hint\":\"Select Attributes this filter displays\",\"persistent-hint\":\"\",\"deletable-chips\":\"\"},model:{value:(_vm.value.appliedTo),callback:function ($$v) {_vm.$set(_vm.value, \"appliedTo\", $$v)},expression:\"value.appliedTo\"}})],1)],1),_vm._t(\"default\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeKeyFilterSettings.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeKeyFilterSettings.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AttributeKeyFilterSettings.vue?vue&type=template&id=0a8664ce&scoped=true\"\nimport script from \"./AttributeKeyFilterSettings.vue?vue&type=script&lang=ts\"\nexport * from \"./AttributeKeyFilterSettings.vue?vue&type=script&lang=ts\"\nimport style0 from \"./AttributeKeyFilterSettings.vue?vue&type=style&index=0&id=0a8664ce&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0a8664ce\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeKeyFilter.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeKeyFilter.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AttributeKeyFilter.vue?vue&type=template&id=6c01bbaa&scoped=true\"\nimport script from \"./AttributeKeyFilter.vue?vue&type=script&lang=ts\"\nexport * from \"./AttributeKeyFilter.vue?vue&type=script&lang=ts\"\nimport style0 from \"./AttributeKeyFilter.vue?vue&type=style&index=0&id=6c01bbaa&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6c01bbaa\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeFilters.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeFilters.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AttributeFilters.vue?vue&type=template&id=558db588&scoped=true\"\nimport script from \"./AttributeFilters.vue?vue&type=script&lang=ts\"\nexport * from \"./AttributeFilters.vue?vue&type=script&lang=ts\"\nimport style0 from \"./AttributeFilters.vue?vue&type=style&index=0&id=558db588&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"558db588\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-card',[_c('ul',[_c('li',[_vm._v(\" Display the selected attributes numberical values in the timeline for the currently selected track. \")]),_c('li',[_vm._v(\"Click on the \\\"Key Filter\\\" Cog wheel to change which attributes to graph.\")]),_c('li',[_vm._v(\" The attributes graph button will be displayed near the \\\"Detections\\\" and \\\"Events\\\" button on the timeline. \")])]),_c('v-card-text',[_c('v-row',[_c('v-switch',{attrs:{\"input-value\":_vm.timelineEnabled,\"label\":\"Draw Timeline\"},on:{\"change\":_vm.setTimelineEnabled}})],1),_c('v-row',[_c('attribute-key-filter',{attrs:{\"attribute-filter\":_vm.timelineFilter,\"filter-names\":_vm.filterNames,\"timeline\":\"\"},on:{\"save-changes\":function($event){return _vm.setTimelineFilter($event)}}})],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeTimeline.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeTimeline.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AttributeTimeline.vue?vue&type=template&id=e3a6ea3e&scoped=true\"\nimport script from \"./AttributeTimeline.vue?vue&type=script&lang=ts\"\nexport * from \"./AttributeTimeline.vue?vue&type=script&lang=ts\"\nimport style0 from \"./AttributeTimeline.vue?vue&type=style&index=0&id=e3a6ea3e&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e3a6ea3e\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributesSideBar.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributesSideBar.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AttributesSideBar.vue?vue&type=template&id=e24d3e9c\"\nimport script from \"./AttributesSideBar.vue?vue&type=script&lang=ts\"\nexport * from \"./AttributesSideBar.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"mx-4\"},[_c('span',{staticClass:\"text-body-2\"},[_vm._v(\" Multicam Tools for creating tracks, linking and unlinking tracks \")]),_c('v-divider',{staticClass:\"my-3\"}),_c('v-divider',{staticClass:\"my-3\"}),(_vm.selectedTrackId !== null)?_c('div',[_c('span',[_vm._v(\" Selected Track: \"+_vm._s(_vm.selectedTrackId)+\" Frame: \"+_vm._s(_vm.frame))]),_c('div',_vm._l((_vm.cameras),function(camera){return _c('div',{key:camera},[_c('v-row',[_c('h2',{class:{ selected: camera === _vm.selectedCamera }},[_vm._v(\" \"+_vm._s(camera)+\" \")])]),_c('v-divider'),_c('v-row',{staticClass:\"pl-2\"},[_c('h3',[_vm._v(\" Detection: \")]),_c('tooltip-btn',{attrs:{\"icon\":\"mdi-star\",\"disabled\":!_vm.tracks[camera].annotationExists,\"tooltip-text\":`Delete detection for camera: ${camera}`},on:{\"click\":function($event){return _vm.deleteAnnotation(camera, _vm.selectedTrackId)}}}),(_vm.tracks[camera].annotationExists)?_c('tooltip-btn',{attrs:{\"icon\":\"mdi-pencil-box-outline\",\"tooltip-text\":`Edit detection for camera: ${camera}`},on:{\"click\":function($event){return _vm.editOrCreateAnnotation(camera)}}}):(!_vm.tracks[camera].annotationExists)?_c('tooltip-btn',{attrs:{\"icon\":\"mdi-shape-square-plus\",\"tooltip-text\":`Add detection for camera: ${camera}`},on:{\"click\":function($event){return _vm.editOrCreateAnnotation(camera)}}}):_vm._e()],1),_c('v-divider',{staticClass:\"pl-2\"}),_c('v-row',{staticClass:\"pl-2\"},[_c('h3',[_vm._v(\" Track: \")]),_c('tooltip-btn',{attrs:{\"color\":\"error\",\"icon\":\"mdi-delete\",\"disabled\":!_vm.tracks[camera].trackExists,\"tooltip-text\":`Delete Track for camera: ${camera}`},on:{\"click\":function($event){return _vm.deleteTrack(camera, _vm.selectedTrackId)}}}),(_vm.tracks[camera].trackExists)?_c('tooltip-btn',{attrs:{\"color\":\"error\",\"icon\":\"mdi-link-variant-minus\",\"disabled\":_vm.existingCount === 1,\"tooltip-text\":`Unlink Track for camera: ${camera}`},on:{\"click\":function($event){return _vm.handler.unlinkCameraTrack(_vm.selectedTrackId, camera)}}}):(!_vm.tracks[camera].trackExists)?_c('tooltip-btn',{attrs:{\"icon\":\"mdi-link-variant-plus\",\"tooltip-text\":`Link Track to this camera: ${camera}`},on:{\"click\":function($event){return _vm.startLinking(camera)}}}):_vm._e()],1),_c('v-divider')],1)}),0)]):_c('div',{staticClass:\"text-body-2\"},[_c('p',[_vm._v(\"No track selected.\")]),_vm._m(0),_c('p',[_vm._v(\"Select a track to populate this editor.\")])])],1)\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('p',[_vm._v(\" This panel is used for: \"),_c('ul',[_c('li',[_vm._v(\"Viewing which cameras have tracks/detections for the selected trackId\")]),_c('li',[_vm._v(\"Deleting detection and/or tracks from a camera \")]),_c('li',[_vm._v(\"Splitting off tracks from an existing camera\")]),_c('li',[_vm._v(\"Linking tracks from difference cameras to the same trackId\")])])])\n}]\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MultiCamTools.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./MultiCamTools.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./MultiCamTools.vue?vue&type=template&id=5fc1dd26&scoped=true\"\nimport script from \"./MultiCamTools.vue?vue&type=script&lang=ts\"\nexport * from \"./MultiCamTools.vue?vue&type=script&lang=ts\"\nimport style0 from \"./MultiCamTools.vue?vue&type=style&index=0&id=5fc1dd26&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5fc1dd26\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-card',{staticClass:\"pa-0\"},[_c('p',[_vm._v(\" Add Track Attribute filters to filter out tracks. \")]),_c('v-card-title',{staticClass:\"pa-0\"}),_c('v-card-text',_vm._l((_vm.filters),function(item,index){return _c('attribute-track-filter-vue',{key:item.name,staticClass:\"attributeTrackFilter ma-2\",attrs:{\"filter-index\":index,\"editable\":\"\"},on:{\"edit\":function($event){return _vm.addEditTrackFilter(index)},\"delete\":function($event){return _vm.deleteFilter(index)}}})}),1),_c('v-card-actions',[_c('v-btn',{attrs:{\"color\":\"success\",\"tooltip-text\":\"Add Filter\"},on:{\"click\":function($event){return _vm.addEditTrackFilter()}}},[_vm._v(\" Add Filter \")])],1)],1),_c('v-dialog',{attrs:{\"width\":\"650\"},model:{value:(_vm.addFilterDialog),callback:function ($$v) {_vm.addFilterDialog=$$v},expression:\"addFilterDialog\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\" Add/Edit Track Attribute Filter \")]),_c('v-card-text',[_c('v-form',{ref:\"form\",model:{value:(_vm.areSettingsValid),callback:function ($$v) {_vm.areSettingsValid=$$v},expression:\"areSettingsValid\"}},[_c('v-row',{attrs:{\"dense\":\"\"}},[_c('v-text-field',{attrs:{\"label\":\"Filter Name\",\"rules\":[v => !!v || 'Name is required', (v) => (!_vm.existingNames.includes(v) || _vm.editingFilter !== _vm.filters.length) || 'Name needs to be unique'],\"required\":\"\"},model:{value:(_vm.editing.name),callback:function ($$v) {_vm.$set(_vm.editing, \"name\", $$v)},expression:\"editing.name\"}})],1),_c('v-row',{attrs:{\"dense\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.types,\"multiple\":\"\",\"clearable\":\"\",\"deletable-chips\":\"\",\"chips\":\"\",\"label\":\"Track Types\"},scopedSlots:_vm._u([{key:\"selection\",fn:function({ item }){return [_c('v-chip',{attrs:{\"close\":\"\",\"color\":_vm.typeStylingRef.color(item),\"text-color\":\"#555555\"},on:{\"click:close\":function($event){return _vm.deleteChip(item)}}},[_vm._v(\" \"+_vm._s(item)+\" \")])]}}]),model:{value:(_vm.editing.typeFilter),callback:function ($$v) {_vm.$set(_vm.editing, \"typeFilter\", $$v)},expression:\"editing.typeFilter\"}}),_c('v-tooltip',{attrs:{\"open-delay\":\"100\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({},on),[_vm._v(\" mdi-information \")])]}}])},[_c('span',{staticClass:\"ma-0 pa-1\"},[_vm._v(\" Empty is all Tracks, or select a specific track type to filter \")])])],1),_c('v-row',{attrs:{\"dense\":\"\"}},[_c('v-select',{staticClass:\"mx-2\",attrs:{\"items\":_vm.dropdowns.atrTypeList,\"label\":\"Attribute Type\"},model:{value:(_vm.editing.atrType),callback:function ($$v) {_vm.$set(_vm.editing, \"atrType\", $$v)},expression:\"editing.atrType\"}}),_c('v-select',{staticClass:\"mx-2\",attrs:{\"rules\":[v => !!v || 'Attribute is required'],\"required\":\"\",\"items\":_vm.attributeList,\"label\":\"Attribute\"},model:{value:(_vm.editing.atrKey),callback:function ($$v) {_vm.$set(_vm.editing, \"atrKey\", $$v)},expression:\"editing.atrKey\"}})],1),_c('v-row',{attrs:{\"dense\":\"\"}},[_c('v-switch',{staticClass:\"mx-2\",attrs:{\"label\":\"Enabled\"},model:{value:(_vm.editing.filterEnabled),callback:function ($$v) {_vm.$set(_vm.editing, \"filterEnabled\", $$v)},expression:\"editing.filterEnabled\"}}),_c('v-tooltip',{attrs:{\"open-delay\":\"100\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({},on),[_vm._v(\" mdi-information \")])]}}])},[_c('span',{staticClass:\"ma-0 pa-1\"},[_vm._v(\" Will configure the filter to be enabled when opening the dataset. \")])]),_c('v-switch',{staticClass:\"mx-2\",attrs:{\"label\":\"Primary Display\"},model:{value:(_vm.editing.primaryDisplay),callback:function ($$v) {_vm.$set(_vm.editing, \"primaryDisplay\", $$v)},expression:\"editing.primaryDisplay\"}}),_c('v-tooltip',{attrs:{\"open-delay\":\"100\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({},on),[_vm._v(\" mdi-information \")])]}}])},[_c('span',{staticClass:\"ma-0 pa-1\"},[_vm._v(\" The Track Attribute Filter will be displayed on the main panel below the type list. \")])]),_c('v-switch',{staticClass:\"mx-2\",attrs:{\"label\":\"User Editable\"},model:{value:(_vm.editing.userDefined),callback:function ($$v) {_vm.$set(_vm.editing, \"userDefined\", $$v)},expression:\"editing.userDefined\"}}),_c('v-tooltip',{attrs:{\"open-delay\":\"100\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({},on),[_vm._v(\" mdi-information \")])]}}])},[_c('span',{staticClass:\"ma-0 pa-1\"},[_vm._v(\" The values for the filter can be edited by the user. \")])])],1),_c('v-row',{attrs:{\"dense\":\"\"}},[_c('v-select',{attrs:{\"items\":_vm.editingOps,\"label\":\"Operator\",\"rules\":[v => !!v || 'Operator is required'],\"required\":\"\"},on:{\"change\":_vm.changeAttributeType},model:{value:(_vm.editing.atrOp),callback:function ($$v) {_vm.$set(_vm.editing, \"atrOp\", $$v)},expression:\"editing.atrOp\"}})],1),_c('v-row',{attrs:{\"dense\":\"\"}},[(!['range', 'in'].includes(_vm.editing.atrOp))?_c('v-text-field',{attrs:{\"type\":_vm.attributeTypes[_vm.editing.atrKey] === 'text' ? 'text' : 'number',\"label\":_vm.editing.atrOp === 'rangeFilter' ? 'Default Value' : 'Test/Default Value',\"step\":\"0.01\",\"persistent-hint\":\"\",\"hint\":_vm.editing.atrOp === 'rangeFilter' ? 'Default Value' : 'Test/Default Value'},model:{value:(_vm.editing.atrVal),callback:function ($$v) {_vm.$set(_vm.editing, \"atrVal\", $$v)},expression:\"editing.atrVal\"}}):('in' === _vm.editing.atrOp)?_c('div',[_c('v-combobox',{attrs:{\"chips\":\"\",\"dense\":\"\",\"deletable-chips\":\"\",\"multiple\":\"\",\"type\":_vm.attributeTypes[_vm.editing.atrKey] === 'text' ? 'text' : 'number'},model:{value:(_vm.editing.atrVal),callback:function ($$v) {_vm.$set(_vm.editing, \"atrVal\", $$v)},expression:\"editing.atrVal\"}})],1):('range' === _vm.editing.atrOp && _vm.editing.atrVal !== null && typeof _vm.editing.atrVal === 'object' && _vm.editing.atrVal.length > 0)?_c('div',[_c('v-text-field',{attrs:{\"type\":'number',\"label\":\"low\"},model:{value:(_vm.editing.atrVal[0]),callback:function ($$v) {_vm.$set(_vm.editing.atrVal, 0, $$v)},expression:\"editing.atrVal[0]\"}}),_c('v-text-field',{attrs:{\"type\":'number',\"label\":\"high\"},model:{value:(_vm.editing.atrVal[1]),callback:function ($$v) {_vm.$set(_vm.editing.atrVal, 1, $$v)},expression:\"editing.atrVal[1]\"}})],1):_vm._e(),('rangeFilter' === _vm.editing.atrOp)?_c('v-row',{attrs:{\"dense\":\"\"}},[_c('v-text-field',{attrs:{\"type\":'number',\"label\":\"low range\"},model:{value:(_vm.editing.range[0]),callback:function ($$v) {_vm.$set(_vm.editing.range, 0, $$v)},expression:\"editing.range[0]\"}}),_c('v-text-field',{attrs:{\"type\":'number',\"label\":\"high range\"},model:{value:(_vm.editing.range[1]),callback:function ($$v) {_vm.$set(_vm.editing.range, 1, $$v)},expression:\"editing.range[1]\"}})],1):_vm._e()],1)],1)],1),_c('v-card-actions',[_c('v-row',[_c('v-spacer'),_c('v-btn',{on:{\"click\":_vm.resetFilterFields}},[_vm._v(\" Cancel \")]),_c('v-btn',{attrs:{\"color\":\"primary\",\"disabled\":!_vm.areSettingsValid},on:{\"click\":_vm.saveFilter}},[_vm._v(\" Save \")])],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.baseFilter)?_c('div',[(_vm.editable)?_c('v-row',{attrs:{\"dense\":\"\"}},[_c('v-spacer'),_c('v-icon',{staticClass:\"mx-2\",attrs:{\"small\":\"\"},on:{\"click\":function($event){return _vm.$emit('edit', _vm.filterIndex)}}},[_vm._v(\" mdi-pencil \")]),_c('v-icon',{attrs:{\"color\":\"error\",\"small\":\"\"},on:{\"click\":function($event){return _vm.$emit('delete', _vm.filterIndex)}}},[_vm._v(\" mdi-delete \")])],1):_vm._e(),_c('div',{staticClass:\"text-body-2 grey--text text--lighten-1 d-flex flex-row py-0\"},[_c('v-checkbox',{staticClass:\"ma-0 pa-0\",attrs:{\"input-value\":_vm.enabled,\"dense\":\"\",\"shrink\":\"\",\"hide-details\":\"\"},on:{\"change\":function($event){return _vm.setEnabled($event)}}}),_c('span',[_vm._v(\" \"+_vm._s(_vm.baseFilter.name))]),_c('v-spacer'),_c('v-tooltip',{attrs:{\"right\":\"\",\"max-width\":\"200\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._g({attrs:{\"small\":\"\",\"icon\":\"\"}},on),[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-information \")])],1)]}}],null,false,1837634161)},[_c('span',[_c('span',[_c('div',[_c('b',[_vm._v(\"Attribute:\")]),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(_vm.baseFilter.attribute))])]),_c('div',[_c('b',[_vm._v(\"Type:\")]),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(_vm.baseFilter.type))])]),(!_vm.baseFilter.filter.userDefined)?_c('div',[_c('b',[_vm._v(\"Value:\")]),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(_vm.baseFilter.filter.op)+\" \"+_vm._s(_vm.baseFilter.filter.val))])]):_vm._e(),(_vm.baseFilter.typeFilter.length)?_c('div',[_c('b',[_vm._v(\"Types:\")]),_vm._l((_vm.baseFilter.typeFilter),function(trackType){return _c('span',{key:`${_vm.baseFilter.name}_${trackType}`,staticClass:\"mx-1\"},[_c('v-chip',{attrs:{\"color\":_vm.typeStylingRef.color(trackType),\"text-color\":\"#555555\"}},[_vm._v(\" \"+_vm._s(trackType)+\" \")])],1)})],2):_vm._e(),(_vm.baseFilter.filter.userDefined)?_c('div',[_c('div',[_c('b',[_vm._v(\"User Defined Value:\")]),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(_vm.baseFilter.filter.op)+\" \"+_vm._s(_vm.userDefinedValue))])]),_c('div',[_c('b',[_vm._v(\"Default Value:\")]),_vm._v(\" \"),_c('span',[_vm._v(_vm._s(_vm.baseFilter.filter.val))])])]):_vm._e()])])])],1),_c('div',{staticClass:\"text-body-2 grey--text text--lighten-1 d-flex flex-row py-0\"},[(_vm.attrType === 'number' && typeof _vm.userDefinedValue === 'number' && (!_vm.baseFilter.filter.userDefined || _vm.baseFilter.filter.op === 'rangeFilter'))?_c('span',{staticClass:\"pl-2\"},[_vm._v(\" \"+_vm._s(_vm.userDefinedValue.toFixed(2))+\" \")]):_vm._e(),(_vm.attrType === 'text' && typeof _vm.userDefinedValue === 'string' && (!_vm.baseFilter.filter.userDefined || _vm.baseFilter.filter.op === 'rangeFilter'))?_c('span',{staticClass:\"pl-2\"},[_vm._v(\" \"+_vm._s(_vm.userDefinedValue)+\" \")]):_vm._e()]),(!_vm.baseFilter.filter.userDefined)?_c('div',[_vm._v(\" Value \"+_vm._s(_vm.baseFilter.filter.op)+\" \"+_vm._s(_vm.baseFilter.filter.val)+\" \")]):(_vm.baseFilter.filter.op === 'rangeFilter' && _vm.baseFilter.filter.userDefined)?_c('input',{staticStyle:{\"width\":\"100%\"},attrs:{\"type\":\"range\",\"min\":_vm.range[0],\"max\":_vm.range[1],\"step\":0.01,\"disabled\":!_vm.enabled,\"persistent-hint\":\"\"},domProps:{\"value\":_vm.userDefinedValue},on:{\"input\":_vm.updateValue}}):(_vm.baseFilter.filter.op !== 'in')?_c('div',{staticClass:\"my-1\"},[_c('span',[_vm._v(\" Value \"+_vm._s(_vm.baseFilter.filter.op))]),_c('span',{staticClass:\"mx-2\"},[(_vm.inputFilter.includes(_vm.baseFilter.filter.op) && _vm.attrType === 'number')?_c('input',{staticClass:\"input-box\",attrs:{\"type\":\"number\",\"step\":\"0.01\",\"disabled\":!_vm.enabled},domProps:{\"value\":_vm.userDefinedValue},on:{\"input\":_vm.updateValue}}):(_vm.inputFilter.includes(_vm.baseFilter.filter.op) && _vm.attrType === 'text')?_c('input',{staticClass:\"input-box\",attrs:{\"type\":\"text\",\"disabled\":!_vm.enabled},domProps:{\"value\":_vm.userDefinedValue},on:{\"change\":_vm.updateValue}}):_vm._e()])]):(_vm.baseFilter.filter.op === 'in')?_c('div',[_c('div',[_vm._v(\"Value in \")]),_c('v-row',{attrs:{\"dense\":\"\"}},[_c('v-combobox',{staticClass:\"input-box\",attrs:{\"if\":\"baseFilter.filter.op === 'in' && attrType === 'text'\",\"multiple\":\"\",\"chips\":\"\",\"deletable-chips\":\"\",\"clearable\":\"\",\"dense\":\"\",\"value\":_vm.userDefinedValue,\"disabled\":!_vm.enabled},on:{\"change\":_vm.updateCombo}})],1)],1):_vm._e()],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeTrackFilter.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeTrackFilter.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AttributeTrackFilter.vue?vue&type=template&id=13a210fc&scoped=true\"\nimport script from \"./AttributeTrackFilter.vue?vue&type=script&lang=ts\"\nexport * from \"./AttributeTrackFilter.vue?vue&type=script&lang=ts\"\nimport style0 from \"./AttributeTrackFilter.vue?vue&type=style&index=0&id=13a210fc&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"13a210fc\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeTrackFilters.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeTrackFilters.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AttributeTrackFilters.vue?vue&type=template&id=6b24888b&scoped=true\"\nimport script from \"./AttributeTrackFilters.vue?vue&type=script&lang=ts\"\nexport * from \"./AttributeTrackFilters.vue?vue&type=script&lang=ts\"\nimport style0 from \"./AttributeTrackFilters.vue?vue&type=style&index=0&id=6b24888b&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6b24888b\",\n null\n \n)\n\nexport default component.exports","import { reactive } from 'vue';\n/* Components */\nimport TypeThreshold from 'dive-common/components/TypeThreshold.vue';\nimport ImageEnhancements from 'vue-media-annotator/components/ImageEnhancements.vue';\nimport GroupSidebar from 'dive-common/components/GroupSidebar.vue';\nimport AttributesSideBar from 'dive-common/components/Attributes/AttributesSideBar.vue';\nimport MultiCamTools from 'dive-common/components/MultiCamTools.vue';\nimport AttributeTrackFilters from 'vue-media-annotator/components/AttributeTrackFilters.vue';\nconst state = reactive({\n last: 'TypeThreshold',\n active: null,\n subCategory: null,\n});\nconst componentMap = {\n [TypeThreshold.name]: {\n description: 'Threshold Controls',\n component: TypeThreshold,\n },\n [ImageEnhancements.name]: {\n description: 'Image Enhancements',\n component: ImageEnhancements,\n },\n [GroupSidebar.name]: {\n description: 'Group Manager',\n component: GroupSidebar,\n },\n [MultiCamTools.name]: {\n description: 'Multi Camera Tools',\n component: MultiCamTools,\n },\n [AttributesSideBar.name]: {\n description: 'Attribute Details',\n component: AttributesSideBar,\n },\n [AttributeTrackFilters.name]: {\n description: 'Attribute Track Filters',\n component: AttributeTrackFilters,\n },\n};\nfunction register(item) {\n componentMap[item.component.name || 'default'] = item;\n}\nfunction unregister(item) {\n if (componentMap[item.component.name || 'default']) {\n delete componentMap[item.component.name || 'default'];\n }\n}\nfunction resetActive() {\n state.last = 'TypeThreshold';\n state.active = null;\n}\nfunction getComponents() {\n const components = {};\n Object.values(componentMap).forEach((v) => {\n components[v.component.name || 'default'] = v.component;\n });\n return components;\n}\nfunction toggle(active) {\n if (active === undefined) {\n if (state.active) {\n state.active = null;\n }\n else {\n state.active = state.last;\n }\n }\n else if (active && state.active === active) {\n state.active = null;\n }\n else if (active === null || active in componentMap) {\n state.active = active;\n if (active) {\n state.last = active;\n }\n }\n else {\n throw new Error(`${active} is not a valid context component`);\n }\n window.dispatchEvent(new Event('resize'));\n}\nfunction openClose(active, action, subCategory) {\n if (action) {\n if (state.active) {\n state.last = state.active;\n }\n state.active = active;\n }\n else {\n if (state.active) {\n state.last = state.active;\n state.subCategory = null;\n }\n state.active = null;\n }\n if (subCategory) {\n state.subCategory = subCategory;\n }\n}\nexport default {\n toggle,\n openClose,\n register,\n unregister,\n getComponents,\n resetActive,\n componentMap,\n state,\n};\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Controls.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Controls.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Controls.vue?vue&type=template&id=8a9b02d8\"\nimport script from \"./Controls.vue?vue&type=script&lang=ts\"\nexport * from \"./Controls.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"event-chart\",on:{\"mousewheel\":function($event){$event.preventDefault();}}},[_c('canvas',{ref:\"canvas\",on:{\"mousemove\":_vm.mousemove,\"mouseout\":_vm.mouseout,\"mousedown\":_vm.mousedown}}),(_vm.tooltipComputed)?_c('div',{staticClass:\"tooltip\",style:(_vm.tooltipComputed.style)},[_vm._v(\" \"+_vm._s(_vm.tooltipComputed.content)+\" \")]):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EventChart.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EventChart.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./EventChart.vue?vue&type=template&id=60623854\"\nimport script from \"./EventChart.vue?vue&type=script&lang=js\"\nexport * from \"./EventChart.vue?vue&type=script&lang=js\"\nimport style0 from \"./EventChart.vue?vue&type=style&index=0&id=60623854&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('span',[_c('span',[_vm._v(\" \"+_vm._s(_vm.display)+\" \")]),_c('span',{staticClass:\"border-radius mr-1\"},[_vm._v(\"frame \"+_vm._s(_vm.frame))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./FileNameTimeDisplay.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./FileNameTimeDisplay.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./FileNameTimeDisplay.vue?vue&type=template&id=08429d54&scoped=true\"\nimport script from \"./FileNameTimeDisplay.vue?vue&type=script&lang=ts\"\nexport * from \"./FileNameTimeDisplay.vue?vue&type=script&lang=ts\"\nimport style0 from \"./FileNameTimeDisplay.vue?vue&type=style&index=0&id=08429d54&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"08429d54\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"line-chart\"})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LineChart.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LineChart.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./LineChart.vue?vue&type=template&id=ad52f5cc\"\nimport script from \"./LineChart.vue?vue&type=script&lang=js\"\nexport * from \"./LineChart.vue?vue&type=script&lang=js\"\nimport style0 from \"./LineChart.vue?vue&type=style&index=0&id=ad52f5cc&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"timeline\",on:{\"wheel\":_vm.onwheel,\"mouseup\":_vm.containerMouseup,\"mousemove\":_vm.containerMousemove}},[_c('div',{ref:\"workarea\",staticClass:\"work-area\",on:{\"mouseup\":_vm.workareaMouseup,\"mousedown\":_vm.workareaMousedown,\"mousemove\":_vm.workareaMousemove,\"mouseleave\":_vm.workareaMouseleave}},[_c('div',{ref:\"hand\",staticClass:\"hand\"}),(_vm.init && _vm.mounted)?_c('div',{staticClass:\"child\"},[_vm._t(\"child\",null,{\"startFrame\":_vm.startFrame,\"endFrame\":_vm.endFrame,\"maxFrame\":_vm.maxFrame,\"clientWidth\":_vm.clientWidth,\"clientHeight\":_vm.clientHeight,\"margin\":_vm.margin})],2):_vm._e()]),_c('div',{ref:\"minimap\",staticClass:\"minimap\"},[_c('div',{staticClass:\"fill\",style:(_vm.minimapFillStyle),on:{\"mousedown\":_vm.minimapFillMousedown}})]),_vm._t(\"default\")],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Timeline.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js??clonedRuleSet-40.use[1]!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js??clonedRuleSet-43.use[0]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Timeline.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./Timeline.vue?vue&type=template&id=8b05b42e&scoped=true\"\nimport script from \"./Timeline.vue?vue&type=script&lang=js\"\nexport * from \"./Timeline.vue?vue&type=script&lang=js\"\nimport style0 from \"./Timeline.vue?vue&type=style&index=0&id=8b05b42e&prod&lang=scss&scoped=true\"\nimport style1 from \"./Timeline.vue?vue&type=style&index=1&id=8b05b42e&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"8b05b42e\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_vm._v(\" Group \"+_vm._s(_vm.group.id)+\" \")])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GroupEditor.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./GroupEditor.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./GroupEditor.vue?vue&type=template&id=006bb288\"\nimport script from \"./GroupEditor.vue?vue&type=script&lang=ts\"\nexport * from \"./GroupEditor.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div')\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * GeoJS Track Lines\n * Based on geo.trackFeature https://opengeoscience.github.io/geojs/apidocs/geo.trackFeature.html\n * Example implementation: https://opengeoscience.github.io/geojs/tutorials/tracks/\n *\n * Track layer is a-typical because it requires extra temporal context,\n * so it cannot be based on the a-temporal BaseLayer.\n */\nimport BaseLayer from '../BaseLayer';\nexport default class TailLayer extends BaseLayer {\n constructor(params, trackStore) {\n super(params);\n this.currentFrame = 0;\n this.before = 10;\n this.after = 5;\n this.markerSize = 10;\n this.markerOpacity = 1.0;\n this.trackStore = trackStore;\n this.initialize();\n }\n generateDataForTrack(fd) {\n const track = this.trackStore.get(fd.track.id);\n const tailData = [];\n let lastPoint = null;\n const start = Math.max(this.currentFrame - this.before, 0);\n const end = Math.min(this.currentFrame + this.after, track.end);\n const inputFeatures = track.features.slice(start, end);\n const firstFeature = track.getFeature(start)[0];\n const lastFeature = track.getFeature(end)[0];\n if (firstFeature)\n inputFeatures.splice(0, 0, firstFeature);\n if (lastFeature)\n inputFeatures.push(lastFeature);\n inputFeatures.forEach((feature) => {\n const { bounds, frame, interpolate } = feature;\n if (bounds) {\n const point = {\n trackId: track.trackId,\n confidencePairs: track.getType(),\n selected: fd.selected,\n t: frame,\n x: bounds[0] + (bounds[2] - bounds[0]) / 2.0,\n y: bounds[1] + (bounds[3] - bounds[1]) / 2.0,\n interpolated: !!interpolate,\n };\n if (!interpolate && (lastPoint === null || lastPoint === void 0 ? void 0 : lastPoint.interpolated)) {\n // Close the end of an interpolated region.\n const pointCopy = { ...point, interpolated: true };\n tailData.push(pointCopy, point);\n }\n else if (interpolate && !(lastPoint === null || lastPoint === void 0 ? void 0 : lastPoint.interpolated)) {\n // Open the beginning of an interpolated region.\n const pointCopy = { ...point, interpolated: false };\n tailData.push(pointCopy, point);\n }\n else {\n tailData.push(point);\n }\n lastPoint = point;\n }\n });\n /** Make sure first and last frame in range are accounted for */\n return tailData;\n }\n initialize() {\n const layer = this.annotator.geoViewerRef.value.createLayer('feature', {\n features: ['line'],\n });\n this.featureLayer = layer.createFeature('track');\n super.initialize();\n this.featureLayer\n .markerStyle(this.createMarkerStyle())\n .futureStyle('strokeOpacity', 0.5);\n }\n changeData(frameData) {\n const data = frameData.map((d) => this.generateDataForTrack(d));\n this.featureLayer\n .data(data)\n .startTime(0)\n .endTime(this.currentFrame)\n .draw();\n }\n updateSettings(currentFrame, before, after) {\n this.currentFrame = currentFrame;\n this.before = before;\n this.after = after;\n }\n redraw() {\n throw new Error(`${this}.redraw Unimplemented`);\n }\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n formatData(_) {\n throw new Error(`${this}.formatData Unimplemented`);\n }\n disable() {\n this.featureLayer\n .data([])\n .draw();\n }\n createMarkerStyle() {\n return {\n symbol: 16,\n symbolValue: [1, 1, 0, false],\n radius: this.markerSize,\n fillColor: (trackData) => {\n if (trackData[0]) {\n if (trackData[0].selected) {\n return this.stateStyling.selected.color;\n }\n if (trackData[0].confidencePairs) {\n return this.typeStyling.value.color(trackData[0].confidencePairs[0]);\n }\n }\n return this.typeStyling.value.color('');\n },\n strokeOpacity: this.markerOpacity,\n fillOpacity: 0.7,\n strokeColor: (trackData) => {\n if (trackData[0]) {\n if (trackData[0].selected) {\n return this.stateStyling.selected.color;\n }\n if (trackData[0].confidencePairs) {\n return this.typeStyling.value.color(trackData[0].confidencePairs[0]);\n }\n }\n return this.typeStyling.value.color('');\n },\n };\n }\n createStyle() {\n return {\n strokeColor: (point, _, trackData) => {\n if (trackData[0]) {\n if (trackData[0].selected) {\n if (point.interpolated) {\n return 'yellow';\n }\n return this.stateStyling.selected.color;\n }\n if (trackData[0].confidencePairs) {\n return this.typeStyling.value.color(trackData[0].confidencePairs[0]);\n }\n }\n return this.typeStyling.value.color('');\n },\n antialiasing: false,\n fill: false,\n strokeWidth: 3,\n };\n }\n}\n","/* eslint-disable class-methods-use-this */\nimport { boundToGeojson } from '../../utils';\nimport BaseLayer from '../BaseLayer';\nfunction createOverlappingComparingBounds(comparingBounds) {\n const overlappingBounds = [];\n for (let i = 0; i < comparingBounds.length; i += 1) {\n for (let j = i + 1; j < comparingBounds.length; j += 1) {\n if (comparingBounds[i].type !== comparingBounds[j].type\n || comparingBounds[i].set === comparingBounds[j].set) {\n // eslint-disable-next-line no-continue\n continue;\n }\n const box1 = comparingBounds[i].bounds;\n const box2 = comparingBounds[j].bounds;\n const x1 = Math.max(box1[0], box2[0]);\n const y1 = Math.max(box1[1], box2[1]);\n const x2 = Math.min(box1[2], box2[2]);\n const y2 = Math.min(box1[3], box2[3]);\n if (x1 < x2 && y1 < y2) {\n overlappingBounds.push({\n bounds: [x1, y1, x2, y2],\n type: comparingBounds[i].type,\n set: comparingBounds[i].set,\n });\n }\n }\n }\n return overlappingBounds;\n}\nexport default class OverlapLayer extends BaseLayer {\n constructor(params) {\n super(params);\n this.hoverOn = false;\n //Only initialize once, prevents recreating Layer each edit\n this.initialize();\n }\n initialize() {\n const layer = this.annotator.geoViewerRef.value.createLayer('feature', {\n features: ['polygon'],\n });\n this.featureLayer = layer\n .createFeature('polygon', { selectionAPI: true });\n super.initialize();\n }\n formatData(frameData) {\n const arr = [];\n // For each track Type we need to calcualte the overlap area between areas;\n const comparingBounds = [];\n for (let i = 0; i < frameData.length; i += 1) {\n const track = frameData[i];\n if (track.features && track.features.bounds) {\n comparingBounds.push({\n bounds: track.features.bounds,\n type: track.styleType[0],\n set: track.set,\n });\n }\n }\n const merged = createOverlappingComparingBounds(comparingBounds);\n merged.forEach((merge) => {\n const polygon = boundToGeojson(merge.bounds);\n const annotation = {\n polygon,\n type: merge.type,\n };\n arr.push(annotation);\n });\n return arr;\n }\n redraw() {\n this.featureLayer\n .data(this.formattedData)\n .polygon((d) => d.polygon.coordinates[0])\n .draw();\n }\n disable() {\n this.featureLayer\n .data([])\n .draw();\n }\n createStyle() {\n return {\n ...super.createStyle(),\n // Style conversion to get array objects to work in geoJS\n position: (point) => ({ x: point[0], y: point[1] }),\n strokeColor: (_point, _index, data) => {\n if (data.type) {\n return this.typeStyling.value.color(data.type);\n }\n return this.typeStyling.value.color('');\n },\n fill: (data) => {\n return true;\n if (data.type) {\n return this.typeStyling.value.fill(data.type);\n }\n return this.stateStyling.standard.fill;\n },\n fillColor: (_point, _index, data) => {\n if (data.type) {\n return this.typeStyling.value.color(data.type);\n }\n return this.typeStyling.value.color('');\n },\n fillOpacity: (_point, _index, data) => {\n return 0.25;\n if (data.type) {\n return this.typeStyling.value.opacity(data.type);\n }\n return this.stateStyling.standard.opacity;\n },\n strokeOpacity: (_point, _index, data) => {\n // Reduce the rectangle opacity if a polygon is also drawn\n if (data.type) {\n return this.typeStyling.value.opacity(data.type);\n }\n return this.stateStyling.standard.opacity;\n },\n strokeWidth: (_point, _index, data) => {\n //Reduce rectangle line thickness if polygon is also drawn\n if (data.type) {\n return this.typeStyling.value.strokeWidth(data.type);\n }\n return this.stateStyling.standard.strokeWidth;\n },\n };\n }\n}\n","import * as d3 from 'd3';\nimport BaseLayer from '../BaseLayer';\nconst lineHeight = 15;\n// function to calculate x,y as well as bounds based on render settings\nexport function calculateAttributeArea(baseBounds, renderSettings, renderIndex, renderAttrLength) {\n // Calculate X Position\n if (renderSettings && renderSettings.layout === 'vertical') {\n const trackWidth = baseBounds[2] - baseBounds[0];\n const widthType = renderSettings.displayWidth.type;\n let width = renderSettings.displayWidth.val; //px is the type so the width is this\n if (widthType === '%') {\n width = trackWidth * 0.01 * renderSettings.displayWidth.val;\n }\n // calculate center position for point\n const displayX = baseBounds[2] + 0.5 * width;\n const valueX = displayX;\n // Calcualte Y Position\n const trackHeight = baseBounds[3] - baseBounds[1];\n const heightType = renderSettings.displayHeight.type;\n let height = renderSettings.displayHeight.val; // px is the height\n if (heightType === 'auto') { //The height is auto calculated based on length of attributes being rendered\n height = (trackHeight / renderAttrLength);\n }\n if (heightType === '%') {\n height = trackHeight * 0.01 * renderSettings.displayHeight.val;\n }\n const displayHeight = baseBounds[1] + (height * renderIndex) + height * (1 / 3);\n const valueHeight = baseBounds[1] + (height * renderIndex) + height * (2 / 3);\n // [x1, y1, x2, y2] as (left, top), (bottom, right)\n const newBounds = [baseBounds[2], baseBounds[1] + (height * renderIndex), baseBounds[2] + width, baseBounds[1] + (height * renderIndex) + height];\n return {\n displayX, displayHeight, valueX, valueHeight, newBounds,\n };\n }\n if (renderSettings && renderSettings.layout === 'horizontal') {\n // DisplayName: DisplayValue in a corner either inside or outside the box\n // The height it determined by the number of attributes in the list\n const anchor = [baseBounds[2], baseBounds[3]]; //SE corner\n if (renderSettings.corner === 'SW') {\n anchor[0] = baseBounds[0];\n }\n if (renderSettings.corner === 'NW') {\n anchor[0] = baseBounds[0];\n anchor[1] = baseBounds[1];\n }\n const displayX = anchor[0];\n const valueX = anchor[0];\n const displayHeight = anchor[1];\n const valueHeight = displayHeight;\n const offsetY = (lineHeight * (renderIndex));\n return {\n displayX, displayHeight, valueX, valueHeight, offsetY, newBounds: [0, 0, 0, 0],\n };\n }\n return {\n displayX: 0, displayHeight: 0, valueX: 0, valueHeight: 0, offsetY: 0, newBounds: [0, 0, 0, 0],\n };\n}\n/**\n * @param track - standard frameDataTrack info\n * @param maxPairs - maximum number of lines to show\n * @param lineHeight - height of each text line\n * @returns value or null. null indicates that the text should not be displayed.\n */\nfunction defaultFormatter(annotation, renderAttr, user, typeStyling, autoColorIndex) {\n if (annotation.features && annotation.features.bounds) {\n const { bounds } = annotation.features;\n const arr = [];\n // figure out the attributes we are displaying:\n const renderFiltered = renderAttr.filter((item) => {\n if (item.render) {\n if (!item.render.typeFilter.includes('all')) {\n return item.render.typeFilter.includes(annotation.styleType[0]);\n }\n if (item.render.selected && !annotation.selected) {\n return false;\n }\n if (item.render.typeFilter.includes('all')) {\n return true;\n }\n }\n return false;\n });\n for (let i = 0; i < renderFiltered.length; i += 1) {\n const currentRender = renderFiltered[i].render;\n const { name } = renderFiltered[i];\n if (currentRender !== undefined) {\n const { displayName } = currentRender;\n const type = renderFiltered[i].belongs;\n // Calculate Value\n let value = '';\n if (type === 'detection') {\n if (annotation.features && annotation.features.attributes) {\n const { attributes } = annotation.features;\n if (renderFiltered[i].user && user && attributes.userAttributes && attributes.userAttributes[user]) {\n value = attributes.userAttributes[user][name];\n }\n else {\n value = attributes[name];\n }\n }\n }\n if (type === 'track') {\n const { attributes } = annotation.track;\n if (attributes) {\n if (renderAttr[i].user && user && attributes.userAttributes && attributes.userAttributes[user]) {\n value = attributes.userAttributes[user][name];\n }\n else {\n value = attributes[name];\n }\n }\n }\n const { displayX, displayHeight, valueX, valueHeight, offsetY, } = calculateAttributeArea(bounds, currentRender, i, renderFiltered.length);\n const displayColor = currentRender.displayColor === 'auto' ? renderAttr[i].color : currentRender.displayColor;\n const { displayTextSize } = currentRender;\n arr.push({\n selected: annotation.selected,\n editing: annotation.editing,\n color: displayColor || 'white',\n text: displayHeight === valueHeight ? `${displayName} : ` : displayName,\n fontSize: displayTextSize === -1 ? undefined : `${displayTextSize}px`,\n x: displayX,\n y: displayHeight,\n textAlign: displayHeight === valueHeight ? 'end' : 'center',\n offsetY,\n offsetX: displayHeight === valueHeight ? 20 : 0,\n });\n const valueColor = autoColorIndex[i](value);\n const { valueTextSize } = currentRender;\n if (value === undefined) {\n value = '';\n }\n arr.push({\n selected: annotation.selected,\n editing: annotation.editing,\n color: valueColor || 'white',\n text: value.toString(),\n fontSize: valueTextSize === -1 ? undefined : `${valueTextSize}px`,\n x: valueX,\n y: valueHeight,\n textAlign: displayHeight === valueHeight ? 'start' : 'center',\n offsetX: displayHeight === valueHeight ? 20 : 0,\n offsetY,\n });\n }\n }\n return arr;\n }\n return null;\n}\nexport default class AttributeLayer extends BaseLayer {\n constructor(params) {\n super(params);\n this.formatter = defaultFormatter;\n this.renderAttributes = [];\n this.autoColorIndex = [];\n this.user = '';\n }\n initialize() {\n const layer = this.annotator.geoViewerRef.value.createLayer('feature', {\n features: ['text'],\n });\n this.featureLayer = layer\n .createFeature('text')\n .text((data) => data.text)\n .position((data) => ({ x: data.x, y: data.y }));\n super.initialize();\n }\n updateRenderAttributes(attributes, user) {\n this.renderAttributes = attributes;\n this.autoColorIndex = [];\n // We create the color formatter for the render attributesW\n this.renderAttributes.forEach((item) => {\n if (item.datatype === 'text') {\n this.autoColorIndex.push((data) => {\n if (item.valueColors && Object.keys(item.valueColors).length) {\n return item.valueColors[data] || item.color || 'white';\n }\n return item.color || 'white';\n });\n }\n else if (item.datatype === 'number') {\n this.autoColorIndex.push((data) => {\n var _a;\n // Check that data is number and 2 colors for gradient\n if (typeof data === 'number' && item.valueColors && Object.keys(item.valueColors).length > 1) {\n const colorArr = Object.entries(item.valueColors)\n .map(([key, val]) => ({ key: parseFloat(key), val }));\n colorArr.sort((a, b) => a.key - b.key);\n const colorNums = colorArr.map((map) => map.key);\n const colorVals = colorArr.map((map) => map.val);\n const colorScale = d3.scaleLinear()\n .domain(colorNums)\n .range(colorVals);\n return (data !== undefined && ((_a = colorScale(data)) === null || _a === void 0 ? void 0 : _a.toString())) || item.color || 'white';\n }\n return item.color || 'white';\n });\n }\n });\n this.user = user;\n }\n formatData(frameData) {\n const arr = [];\n const typeStyling = this.typeStyling.value;\n frameData.forEach((track) => {\n const formatted = this.formatter(track, this.renderAttributes, this.user, typeStyling, this.autoColorIndex);\n if (formatted !== null) {\n arr.push(...formatted);\n }\n });\n return arr;\n }\n redraw() {\n this.featureLayer.data(this.formattedData).draw();\n return null;\n }\n disable() {\n this.featureLayer.data([]).draw();\n }\n createStyle() {\n const baseStyle = super.createStyle();\n return {\n ...baseStyle,\n offset: (data) => ({\n x: data.offsetX || 0,\n y: data.offsetY || 0,\n }),\n textAlign: (data) => data.textAlign,\n color: (data) => data.color,\n fontSize: (data) => data.fontSize,\n textBaseline: 'top',\n textScaled: (data) => (data.fontSize ? 0 : undefined),\n };\n }\n}\n","/* eslint-disable max-len */\n/* eslint-disable class-methods-use-this */\nimport { boundToGeojson } from '../../utils';\nimport BaseLayer from '../BaseLayer';\nimport { calculateAttributeArea } from './AttributeLayer';\nexport default class AttributeBoxLayer extends BaseLayer {\n constructor(params) {\n super(params);\n //Only initialize once, prevents recreating Layer each edit\n this.renderAttributes = [];\n this.initialize();\n }\n initialize() {\n const layer = this.annotator.geoViewerRef.value.createLayer('feature', {\n features: ['polygon'],\n });\n this.featureLayer = layer\n .createFeature('polygon');\n super.initialize();\n }\n updateRenderAttributes(attributes) {\n this.renderAttributes = attributes;\n }\n formatData(frameData) {\n const arr = [];\n frameData.forEach((track) => {\n if (track.features && track.features.bounds) {\n // Ho through the renderAttr and create a bounds for each renderAttr based on the settings\n const renderFiltered = this.renderAttributes.filter((item) => {\n if (item.render) {\n if (!item.render.typeFilter.includes('all')) {\n return item.render.typeFilter.includes(track.styleType[0]);\n }\n if (item.render.selected && !track.selected) {\n return false;\n }\n if (item.render.typeFilter.includes('all')) {\n return true;\n }\n }\n return false;\n });\n for (let i = 0; i < renderFiltered.length; i += 1) {\n const currentRender = renderFiltered[i].render;\n if (currentRender && currentRender.box) {\n const { newBounds } = calculateAttributeArea(track.features.bounds, renderFiltered[i].render, i, renderFiltered.length);\n const polygon = boundToGeojson(newBounds);\n const lineColor = currentRender.boxColor === 'auto' ? renderFiltered[i].color || 'white' : currentRender.boxColor;\n const lineThickness = currentRender.boxThickness || 1;\n const { boxBackground } = currentRender;\n const { boxOpacity } = currentRender;\n const annotation = {\n trackId: track.track.id,\n selected: track.selected,\n editing: track.editing,\n styleType: track.styleType,\n lineColor,\n lineThickness,\n boxBackground,\n boxOpacity,\n polygon,\n };\n arr.push(annotation);\n }\n }\n }\n });\n return arr;\n }\n redraw() {\n this.featureLayer\n .data(this.formattedData)\n .polygon((d) => d.polygon.coordinates[0])\n .draw();\n }\n disable() {\n this.featureLayer\n .data([])\n .draw();\n }\n createStyle() {\n return {\n ...super.createStyle(),\n // Style conversion to get array objects to work in geoJS\n position: (point) => ({ x: point[0], y: point[1] }),\n strokeColor: (_point, _index, data) => data.lineColor,\n fill: (data) => {\n if (data.boxOpacity) {\n return !!data.boxOpacity;\n }\n if (data.styleType) {\n return this.typeStyling.value.fill(data.styleType[0]);\n }\n return this.stateStyling.standard.fill;\n },\n fillColor: (_point, _index, data) => {\n if (data.boxBackground) {\n return data.boxBackground;\n }\n if (data.styleType) {\n return this.typeStyling.value.color(data.styleType[0]);\n }\n return this.typeStyling.value.color('');\n },\n fillOpacity: (_point, _index, data) => {\n if (data.boxOpacity) {\n return data.boxOpacity;\n }\n if (data.styleType) {\n return this.typeStyling.value.opacity(data.styleType[0]);\n }\n return this.stateStyling.standard.opacity;\n },\n strokeOpacity: (_point, _index, data) => {\n // Reduce the rectangle opacity if a polygon is also drawn\n if (data.boxOpacity) {\n return data.boxOpacity;\n }\n if (data.selected) {\n return this.stateStyling.selected.opacity;\n }\n if (data.styleType) {\n return this.typeStyling.value.opacity(data.styleType[0]);\n }\n return this.stateStyling.standard.opacity;\n },\n strokeOffset: (_point, _index, data) => {\n if (data.lineThickness) {\n return data.lineThickness;\n }\n return this.stateStyling.standard.strokeWidth;\n },\n strokeWidth: (_point, _index, data) => {\n if (data.lineThickness) {\n return data.lineThickness;\n }\n return this.stateStyling.standard.strokeWidth;\n },\n };\n }\n}\n","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LayerManager.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./LayerManager.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./LayerManager.vue?vue&type=template&id=32356e12\"\nimport script from \"./LayerManager.vue?vue&type=script&lang=ts\"\nexport * from \"./LayerManager.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"track-item d-flex flex-column align-start hover-show-parent px-1\",style:(_vm.style)},[_c('v-row',{staticClass:\"pt-2 justify-center item-row\",attrs:{\"no-gutters\":\"\",\"align\":\"center\"}},[(_vm.solo)?_c('div',{staticClass:\"type-color-box\",style:({\n backgroundColor: _vm.color,\n })}):_c('v-checkbox',{staticClass:\"my-0 ml-1 pt-0\",attrs:{\"dense\":\"\",\"hide-details\":\"\",\"input-value\":_vm.inputValue,\"color\":_vm.color},on:{\"change\":function($event){return _vm.trackFilters.updateCheckedId(_vm.track.trackId, $event)}}}),_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"bottom\":\"\",\"max-width\":\"200\",\"disabled\":_vm.track.trackId.toString().length < 8},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('div',_vm._g({staticClass:\"trackNumber pl-0 pr-2\",on:{\"click\":function($event){if($event.target !== $event.currentTarget)return null;return _vm.handler.trackSeek(_vm.track.trackId)}}},on),[_vm._v(\" \"+_vm._s(_vm.track.trackId)+\" \")])]}}])},[_c('span',[_vm._v(\" \"+_vm._s(_vm.track.trackId)+\" \")])]),(_vm.track.set)?_c('v-chip',{attrs:{\"outlined\":\"\",\"x-small\":\"\",\"color\":_vm.typeStyling.annotationSetColor(_vm.track.set)}},[_vm._v(\" \"+_vm._s(_vm.track.set)+\" \")]):_vm._e(),_c('v-spacer'),_c('TypePicker',_vm._b({attrs:{\"value\":_vm.trackType},on:{\"input\":function($event){return _vm.setTrackType($event)}}},'TypePicker',{\n lockTypes: _vm.lockTypes, readOnlyMode: _vm.readOnlyMode, allTypes: _vm.allTypes, selected: _vm.selected,\n },false))],1),_c('v-row',{staticClass:\"my-1 justify-center item-row flex-nowrap\",attrs:{\"no-gutters\":\"\"}},[(!_vm.isTrack)?_c('v-spacer'):_vm._e(),(_vm.selected)?[_c('span',{directives:[{name:\"show\",rawName:\"v-show\",value:(false),expression:\"false\"},{name:\"mousetrap\",rawName:\"v-mousetrap\",value:([\n { bind: 'k', handler: _vm.toggleKeyframe },\n { bind: 'i', handler: _vm.toggleInterpolation },\n { bind: 'ctrl+i', handler: _vm.toggleAllInterpolation },\n { bind: 'home', handler: () => _vm.$emit('seek', _vm.track.begin) },\n { bind: 'end', handler: () => _vm.$emit('seek', _vm.track.end) },\n ]),expression:\"[\\n { bind: 'k', handler: toggleKeyframe },\\n { bind: 'i', handler: toggleInterpolation },\\n { bind: 'ctrl+i', handler: toggleAllInterpolation },\\n { bind: 'home', handler: () => $emit('seek', track.begin) },\\n { bind: 'end', handler: () => $emit('seek', track.end) },\\n ]\"}]}),_c('tooltip-btn',{attrs:{\"color\":\"error\",\"icon\":\"mdi-delete\",\"disabled\":_vm.merging || _vm.readOnlyMode,\"tooltip-text\":`Delete ${_vm.isTrack ? 'Track' : 'Detection'}`},on:{\"click\":function($event){return _vm.handler.removeTrack([_vm.track.trackId])}}}),(!_vm.multiCam)?_c('span',[(_vm.isTrack)?_c('tooltip-btn',{attrs:{\"disabled\":!_vm.track.canSplit(_vm.frame) || _vm.merging || _vm.readOnlyMode,\"icon\":\"mdi-call-split\",\"tooltip-text\":\"Split Track\"},on:{\"click\":function($event){return _vm.handler.trackSplit(_vm.track.trackId, _vm.frame)}}}):_vm._e(),(_vm.isTrack && !_vm.readOnlyMode)?_c('tooltip-btn',{attrs:{\"icon\":(_vm.feature.isKeyframe)\n ? 'mdi-star'\n : 'mdi-star-outline',\"disabled\":_vm.keyframeDisabled,\"tooltip-text\":\"Toggle keyframe\"},on:{\"click\":_vm.toggleKeyframe}}):_vm._e(),(_vm.isTrack && !_vm.readOnlyMode)?_c('tooltip-btn',{attrs:{\"icon\":(_vm.feature.shouldInterpolate)\n ? 'mdi-vector-selection'\n : 'mdi-selection-off',\"tooltip-text\":\"Toggle interpolation, ctrl+click to toggle all interpolation\"},on:{\"click\":function($event){return _vm.clickToggleInterpolation($event)}}}):_vm._e()],1):_c('span',[_c('tooltip-btn',{attrs:{\"icon\":\"mdi-camera\",\"tooltip-text\":\"Open MultiCamera Tools\"},on:{\"click\":_vm.openMultiCamTools}})],1)]:_vm._e(),(_vm.isTrack)?_c('v-spacer'):_vm._e(),(_vm.isTrack)?[_c('tooltip-btn',{attrs:{\"icon\":\"mdi-chevron-double-left\",\"tooltip-text\":\"Seek to track beginning\"},on:{\"click\":function($event){return _vm.$emit('seek', _vm.track.begin)}}}),_c('tooltip-btn',{attrs:{\"icon\":\"mdi-chevron-left\",\"tooltip-text\":\"Seek to previous keyframe\"},on:{\"click\":_vm.gotoPrevious}}),_c('tooltip-btn',{attrs:{\"icon\":\"mdi-chevron-right\",\"tooltip-text\":\"Seek to next keyframe\"},on:{\"click\":_vm.gotoNext}}),_c('tooltip-btn',{attrs:{\"icon\":\"mdi-chevron-double-right\",\"tooltip-text\":\"Seek to track end\"},on:{\"click\":function($event){return _vm.$emit('seek', _vm.track.end)}}})]:_c('tooltip-btn',{attrs:{\"icon\":\"mdi-map-marker\",\"tooltip-text\":\"Seek to detection\"},on:{\"click\":function($event){return _vm.$emit('seek', _vm.track.begin)}}}),(!_vm.merging)?_c('tooltip-btn',{attrs:{\"icon\":(_vm.editing) ? 'mdi-pencil-box' : 'mdi-pencil-box-outline',\"tooltip-text\":\"Toggle edit mode\",\"disabled\":!_vm.inputValue || _vm.readOnlyMode},on:{\"click\":function($event){return _vm.handler.trackEdit(_vm.track.trackId)}}}):_vm._e()],2)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TrackItem.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TrackItem.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./TrackItem.vue?vue&type=template&id=7741b30a&scoped=true\"\nimport script from \"./TrackItem.vue?vue&type=script&lang=ts\"\nexport * from \"./TrackItem.vue?vue&type=script&lang=ts\"\nimport style0 from \"./TrackItem.vue?vue&type=style&index=0&id=7741b30a&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7741b30a\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"d-flex flex-column\"},[_c('v-subheader',{staticClass:\"flex-grow-1 trackHeader px-2\"},[_c('v-container',{staticClass:\"py-2\"},[_c('v-row',{attrs:{\"align\":\"center\"}},[_vm._v(\" Tracks (\"+_vm._s(_vm.filteredTracks.length)+\") \"),_c('v-spacer'),_c('v-menu',{attrs:{\"close-on-content-click\":false,\"nudge-bottom\":28},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"mr-2\",attrs:{\"icon\":\"\",\"small\":\"\"}},'v-btn',attrs,false),on),[_c('v-icon',{attrs:{\"small\":\"\",\"color\":_vm.data.settingsActive ? 'accent' : 'default'}},[_vm._v(\" mdi-cog \")])],1)]}}]),model:{value:(_vm.data.settingsActive),callback:function ($$v) {_vm.$set(_vm.data, \"settingsActive\", $$v)},expression:\"data.settingsActive\"}},[(_vm.data.settingsActive)?_vm._t(\"settings\"):_vm._e()],2),_c('v-tooltip',{attrs:{\"open-delay\":\"100\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._g({staticClass:\"mr-2\",attrs:{\"disabled\":_vm.filteredTracks.length === 0 || _vm.readOnlyMode,\"icon\":\"\",\"small\":\"\"},on:{\"click\":function($event){return _vm.multiDelete()}}},on),[_c('v-icon',{attrs:{\"small\":\"\",\"color\":\"error\"}},[_vm._v(\" mdi-delete \")])],1)]}}])},[_c('span',[_vm._v(\"Delete visible items\")])]),_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"bottom\":\"\",\"max-width\":\"200\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._g({staticClass:\"mr-2\",attrs:{\"disabled\":_vm.readOnlyMode,\"outlined\":\"\",\"x-small\":\"\",\"color\":_vm.newTrackColor},on:{\"click\":function($event){return _vm.trackAdd()}}},on),[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-plus \")]),_vm._v(\" \"+_vm._s(_vm.newTrackMode)+\" \")],1)]}}])},[_c('span',[_vm._v(\"Default Type: \"+_vm._s(_vm.newTrackType))])])],1)],1)],1),_c('datalist',{attrs:{\"id\":\"allTypesOptions\"}},_vm._l((_vm.allTypes),function(type){return _c('option',{key:type,domProps:{\"value\":type}},[_vm._v(\" \"+_vm._s(type)+\" \")])}),0),_c('v-virtual-scroll',{directives:[{name:\"mousetrap\",rawName:\"v-mousetrap\",value:(_vm.mouseTrap),expression:\"mouseTrap\"}],ref:\"virtualList\",staticClass:\"tracks\",attrs:{\"items\":_vm.virtualListItems,\"item-height\":_vm.data.itemHeight,\"height\":_vm.virtualHeight,\"bench\":\"1\"},scopedSlots:_vm._u([{key:\"default\",fn:function({ item }){return [_c('track-item',_vm._b({attrs:{\"lock-types\":_vm.lockTypes},on:{\"seek\":function($event){return _vm.$emit('track-seek', $event)}}},'track-item',_vm.getItemProps(item),false))]}}])})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TrackList.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TrackList.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./TrackList.vue?vue&type=template&id=eee2acdc\"\nimport script from \"./TrackList.vue?vue&type=script&lang=ts\"\nexport * from \"./TrackList.vue?vue&type=script&lang=ts\"\nimport style0 from \"./TrackList.vue?vue&type=style&index=0&id=eee2acdc&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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 { cloneDeep } from 'lodash';\nimport Vue, { ref } from 'vue';\nimport { removePoint } from 'vue-media-annotator/utils';\nconst EmptyResponse = { data: {}, union: [], unionWithoutBounds: [] };\nexport default class PolygonBoundsExpand {\n constructor() {\n this.bus = new Vue();\n this.active = ref(false);\n this.name = 'PolygonBase';\n this.toggleable = ref(true);\n this.icon = ref('mdi-vector-polygon');\n }\n update(mode, frameNum, track, data, key) {\n if (data.length === 1 && mode === 'editing' && this.active.value) {\n const poly = data[0].geometry;\n if (poly.type === 'Polygon') {\n return {\n data: {\n [key || '']: data,\n },\n union: [],\n done: true,\n unionWithoutBounds: [poly],\n };\n }\n }\n return EmptyResponse;\n }\n // eslint-disable-next-line class-methods-use-this\n delete(frame, track, key, type) {\n if (key === '' && type === 'Polygon') {\n track.removeFeatureGeometry(frame, { key: '', type: 'Polygon' });\n }\n }\n // eslint-disable-next-line class-methods-use-this\n deletePoint(frame, track, idx, key, type) {\n if (key === '' && type === 'Polygon') {\n const geoJsonFeatures = track.getFeatureGeometry(frame, {\n type: 'Polygon',\n key: '',\n });\n if (geoJsonFeatures.length === 0)\n return;\n const clone = cloneDeep(geoJsonFeatures[0]);\n if (removePoint(clone, idx)) {\n track.setFeature({ frame }, [clone]);\n }\n }\n }\n // eslint-disable-next-line class-methods-use-this\n activate() {\n // no-op\n this.active.value = true;\n this.bus.$emit('activate', {\n editing: 'Polygon',\n key: '',\n recipeName: this.name,\n });\n }\n // eslint-disable-next-line class-methods-use-this\n deactivate() {\n // no-op\n this.active.value = false;\n }\n // eslint-disable-next-line class-methods-use-this\n mousetrap() {\n return [];\n }\n}\n","import Vue, { ref } from 'vue';\nimport { withinBounds } from 'vue-media-annotator/utils';\nexport const HeadTailLineKey = 'HeadTails';\nexport const HeadPointKey = 'head';\nexport const TailPointKey = 'tail';\nconst EmptyResponse = { data: {}, union: [], unionWithoutBounds: [] };\n/* Standard 10% padding */\nconst PaddingVector = [\n [-0.10, -0.10],\n [-0.10, 0.10],\n [1.10, -0.10],\n [1.10, 0.10],\n [-0.10, -0.10],\n];\n/* No padding */\nconst PaddingVectorZero = [\n [0, 0],\n [0, 0],\n [1, 0],\n [1, 0],\n [0, 0],\n];\nexport default class HeadTail {\n constructor() {\n this.bus = new Vue();\n this.startWithHead = true;\n this.active = ref(false);\n this.name = 'HeadTail';\n this.toggleable = ref(true);\n this.icon = ref('mdi-vector-line');\n }\n /**\n * findBounds computes a padding polygon around the linestring given paddingVector\n * @param ls Linestring\n * @param paddingVector polypoints in terms of C and CPerp\n */\n static findBounds(ls, paddingVector) {\n // Coords = [ Vec A, Vec B ]\n const coords = ls.coordinates;\n if (coords.length === 2) {\n // vec = B - A\n const vec = [\n coords[1][0] - coords[0][0],\n coords[1][1] - coords[0][1],\n ];\n // perpendicular vector\n const vecPerp = [\n -1 * vec[1],\n vec[0],\n ];\n if (paddingVector.length !== 5) {\n throw new Error('Padding vector must have length 5');\n }\n return [{\n type: 'Polygon',\n coordinates: [\n paddingVector.map((p) => ([\n coords[0][0] + (p[0] * vec[0]) + (p[1] * vecPerp[0]),\n coords[0][1] + (p[0] * vec[1]) + (p[1] * vecPerp[1]),\n ])),\n ],\n }];\n }\n // If only 1 point is available so far\n return [{\n type: 'Polygon',\n coordinates: coords.map((p) => ([\n p.map((c) => c + 5),\n p.map((c) => c - 5),\n ])),\n }];\n }\n static coordsInBounds(bounds, coords) {\n const results = [];\n for (let i = 0; i < coords.length; i += 1) {\n const x = coords[i][0];\n const y = coords[i][1];\n results.push(withinBounds([x, y], bounds));\n }\n return (results.filter((item) => item).length === coords.length);\n }\n static makeGeom(ls, startWithHead) {\n const firstFeature = {\n type: 'Feature',\n geometry: {\n type: 'Point',\n coordinates: [\n ls.coordinates[0][0],\n ls.coordinates[0][1],\n ],\n },\n properties: {},\n };\n const ret = {\n [startWithHead ? HeadPointKey : TailPointKey]: [firstFeature],\n };\n if (ls.coordinates.length === 2) {\n const secondFeature = {\n type: 'Feature',\n geometry: {\n type: 'Point',\n coordinates: [\n ls.coordinates[1][0],\n ls.coordinates[1][1],\n ],\n },\n properties: {},\n };\n if (!startWithHead) {\n ls.coordinates.reverse();\n }\n const headTailLine = {\n type: 'Feature',\n geometry: ls,\n properties: {},\n };\n ret[startWithHead ? TailPointKey : HeadPointKey] = [secondFeature];\n ret[HeadTailLineKey] = [headTailLine];\n }\n return ret;\n }\n update(mode, frameNum, track, data, key) {\n const linestrings = data.filter((d) => d.geometry.type === 'LineString');\n if (linestrings.length) {\n const linestring = linestrings[0];\n if (this.active.value && mode === 'in-progress') {\n /**\n * IF the recipe is active, we are creating a new headtail\n */\n let geom = linestring.geometry;\n const head = track.getFeatureGeometry(frameNum, { type: 'Point', key: HeadPointKey });\n const tail = track.getFeatureGeometry(frameNum, { type: 'Point', key: TailPointKey });\n const currentFeature = track.features.find((item) => item.frame === frameNum);\n let bounds = null;\n if (currentFeature && currentFeature.bounds) {\n bounds = currentFeature.bounds;\n }\n if (head.length !== tail.length) {\n // If one point exists but not the other\n if (head.length > 0) {\n this.startWithHead = true;\n this.icon.value = 'mdi-vector-line';\n }\n else {\n this.startWithHead = false;\n this.icon.value = 'mdi-alpha-t-box-outline';\n }\n geom = {\n type: 'LineString',\n coordinates: [\n this.startWithHead\n ? head[0].geometry.coordinates\n : tail[0].geometry.coordinates,\n geom.coordinates[geom.coordinates.length - 1],\n ],\n properties: {},\n };\n }\n if (geom.coordinates.length === 2) {\n let union = HeadTail.findBounds(geom, PaddingVector);\n if (bounds !== null) {\n // If both are inside of the bbox don't adjust the union\n if (HeadTail.coordsInBounds(bounds, geom.coordinates)) {\n union = [];\n }\n else if (tail.length > 0) { // If creating new box add padding\n union = HeadTail.findBounds(geom, PaddingVectorZero);\n }\n }\n // Both head and tail placed, replace them.\n return {\n ...EmptyResponse,\n data: HeadTail.makeGeom(geom, this.startWithHead),\n newSelectedKey: HeadTailLineKey,\n done: true,\n union,\n };\n }\n if (geom.coordinates.length === 1) {\n // Only the head placed so far\n let union = HeadTail.findBounds(geom, PaddingVector);\n if (bounds !== null) {\n if (HeadTail.coordsInBounds(bounds, geom.coordinates)) {\n union = [];\n }\n }\n return {\n ...EmptyResponse,\n data: HeadTail.makeGeom(geom, this.startWithHead),\n union,\n done: false,\n };\n }\n }\n if (key === HeadTailLineKey && mode === 'editing') {\n /**\n * IF recipe isn't active, but the key matches, we are editing\n */\n return {\n ...EmptyResponse,\n data: HeadTail.makeGeom(linestring.geometry, true),\n union: HeadTail.findBounds(linestring.geometry, PaddingVectorZero),\n done: true,\n };\n }\n }\n return EmptyResponse;\n }\n // eslint-disable-next-line class-methods-use-this\n delete(frame, track, key, type) {\n if (key === HeadTailLineKey && type === 'LineString') {\n track.removeFeatureGeometry(frame, { type: 'Point', key: HeadPointKey });\n track.removeFeatureGeometry(frame, { type: 'Point', key: TailPointKey });\n track.removeFeatureGeometry(frame, { type: 'LineString', key: HeadTailLineKey });\n }\n }\n // eslint-disable-next-line class-methods-use-this\n deletePoint(frame, track, idx, key, type) {\n if (key === HeadTailLineKey && type === 'LineString') {\n track.removeFeatureGeometry(frame, { type: 'LineString', key: HeadTailLineKey });\n if (idx === 0) {\n track.removeFeatureGeometry(frame, { type: 'Point', key: HeadPointKey });\n }\n else {\n track.removeFeatureGeometry(frame, { type: 'Point', key: TailPointKey });\n }\n }\n }\n activate() {\n this.active.value = true;\n this.icon.value = 'mdi-vector-line';\n this.startWithHead = true;\n this.bus.$emit('activate', {\n editing: 'LineString',\n key: HeadTailLineKey,\n recipeName: this.name,\n });\n }\n deactivate() {\n this.active.value = false;\n }\n headfirst() {\n this.activate();\n this.startWithHead = true;\n this.icon.value = 'mdi-vector-line';\n }\n tailfirst() {\n this.activate();\n this.startWithHead = false;\n this.icon.value = 'mdi-alpha-t-box-outline';\n }\n mousetrap() {\n return [\n { bind: 'h', handler: () => this.headfirst() },\n { bind: 't', handler: () => this.tailfirst() },\n ];\n }\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-row',{directives:[{name:\"mousetrap\",rawName:\"v-mousetrap\",value:(_vm.mousetrap),expression:\"mousetrap\"}],staticClass:\"pa-0 ma-0 grow\",attrs:{\"no-gutters\":\"\"}},[_c('div',{staticClass:\"d-flex align-center grow\"},[_c('div',{staticClass:\"pa-1 d-flex\",staticStyle:{\"width\":\"280px\"}},[_c('v-icon',{staticClass:\"pr-1\"},[_vm._v(\" \"+_vm._s(_vm.editingHeader.icon)+\" \")]),_c('div',[_c('div',{staticClass:\"text-subtitle-2\"},[_vm._v(\" \"+_vm._s(_vm.editingHeader.text)+\" \")]),_c('div',{staticStyle:{\"line-height\":\"1.22em\",\"font-size\":\"10px\"}},[(_vm.groupEditActive)?_c('span',[_vm._v(\" Editing group. Add or remove tracks. Esc. to exit. \")]):(_vm.multiSelectActive)?_c('span',[_vm._v(\" Multi-select in progress. Editing is disabled. Select additional tracks to merge or group. \")]):(_vm.editingDetails !== 'disabled')?_c('span',[_vm._v(\" \"+_vm._s(_vm.modeToolTips[_vm.editingDetails][_vm.editingMode])+\" \")]):_c('span',[_vm._v(\"Right click on an annotation to edit\")])])])],1),_vm._l((_vm.editButtons),function(button){return _c('v-btn',{key:button.id + 'view',staticClass:\"mx-1\",attrs:{\"disabled\":!_vm.editingMode,\"outlined\":!button.active,\"color\":button.active ? _vm.editingHeader.color : '',\"small\":\"\"},on:{\"click\":button.click}},[(button.mousetrap)?_c('pre',[_vm._v(_vm._s(button.mousetrap[0].bind)+\":\")]):_vm._e(),_c('v-icon',[_vm._v(_vm._s(button.icon))])],1)}),_vm._t(\"delete-controls\"),_c('v-spacer'),_c('span',{staticClass:\"pb-1\"},[_c('span',{staticClass:\"mr-1 px-3 py-1\"},[_c('v-icon',{staticClass:\"pr-1\"},[_vm._v(\" mdi-eye \")]),_c('span',{staticClass:\"text-subtitle-2\"},[_vm._v(\" Visibility \")])],1),_vm._l((_vm.viewButtons),function(button){return _c('v-btn',{key:button.id,staticClass:\"mx-1 mode-button\",attrs:{\"color\":button.active ? 'grey darken-2' : '',\"small\":\"\"},on:{\"click\":button.click}},[_c('v-icon',[_vm._v(_vm._s(button.icon))])],1)}),_c('v-menu',{attrs:{\"open-on-hover\":\"\",\"bottom\":\"\",\"offset-y\":\"\",\"close-on-content-click\":false},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"mx-1 mode-button\",attrs:{\"color\":_vm.isVisible('TrackTail') ? 'grey darken-2' : '',\"small\":\"\"},on:{\"click\":function($event){return _vm.toggleVisible('TrackTail')}}},'v-btn',attrs,false),on),[_c('v-icon',[_vm._v(\"mdi-navigation\")])],1)]}}])},[_c('v-card',{staticClass:\"pa-4 flex-column d-flex\",attrs:{\"outlined\":\"\"}},[_c('label',{attrs:{\"for\":\"frames-before\"}},[_vm._v(\"Frames before: \"+_vm._s(_vm.tailSettings.before))]),_c('input',{staticClass:\"tail-slider-width\",attrs:{\"id\":\"frames-before\",\"type\":\"range\",\"name\":\"frames-before\",\"label\":\"\",\"min\":\"0\",\"max\":\"100\"},domProps:{\"value\":_vm.tailSettings.before},on:{\"input\":function($event){_vm.$emit('update:tail-settings', { ..._vm.tailSettings, before: Number.parseFloat($event.target.value) })}}}),_c('div',{staticClass:\"py-2\"}),_c('label',{attrs:{\"for\":\"frames-after\"}},[_vm._v(\"Frames after: \"+_vm._s(_vm.tailSettings.after))]),_c('input',{staticClass:\"tail-slider-width\",attrs:{\"id\":\"frames-after\",\"type\":\"range\",\"name\":\"frames-after\",\"min\":\"0\",\"max\":\"100\"},domProps:{\"value\":_vm.tailSettings.after},on:{\"input\":function($event){_vm.$emit('update:tail-settings', { ..._vm.tailSettings, after: Number.parseFloat($event.target.value) })}}})])],1)],2)],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditorMenu.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./EditorMenu.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./EditorMenu.vue?vue&type=template&id=06002780&scoped=true\"\nimport script from \"./EditorMenu.vue?vue&type=script&lang=ts\"\nexport * from \"./EditorMenu.vue?vue&type=script&lang=ts\"\nimport style0 from \"./EditorMenu.vue?vue&type=style&index=0&id=06002780&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"06002780\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('span',{staticClass:\"mx-1\"},[(!_vm.disabled)?_c('v-btn',{attrs:{\"color\":\"error\",\"depressed\":\"\",\"small\":\"\"},on:{\"click\":_vm.deleteSelected}},[_c('pre',{staticClass:\"mr-1 text-body-2\"},[_vm._v(\"del\")]),(_vm.selectedFeatureHandle >= 0)?_c('span',[_vm._v(\" point \"+_vm._s(_vm.selectedFeatureHandle)+\" \")]):(_vm.editingMode)?_c('span',[_vm._v(\" \"+_vm._s(_vm.editingMode)+\" \")]):_c('span',[_vm._v(\"unselected\")]),_c('v-icon',{staticClass:\"ml-2\",attrs:{\"small\":\"\"}},[_vm._v(\" mdi-delete \")])],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DeleteControls.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DeleteControls.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./DeleteControls.vue?vue&type=template&id=e3c4da36\"\nimport script from \"./DeleteControls.vue?vue&type=script&lang=ts\"\nexport * from \"./DeleteControls.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-col',{staticStyle:{\"position\":\"absolute\",\"bottom\":\"0px\",\"padding\":\"0px\",\"margin\":\"0px\"},attrs:{\"dense\":\"\"}},[_c('Controls',{scopedSlots:_vm._u([{key:\"middle\",fn:function(){return [(_vm.datasetType === 'image-sequence' || _vm.datasetType === 'large-image')?_c('file-name-time-display',{staticClass:\"text-middle px-3\",attrs:{\"display-type\":\"filename\"}}):(_vm.datasetType === 'video')?_c('span',[_c('span',{staticClass:\"mr-2\"},[_c('v-menu',{attrs:{\"close-on-content-click\":false,\"top\":\"\",\"offset-y\":\"\",\"nudge-left\":\"3\",\"open-on-hover\":\"\",\"close-delay\":\"500\",\"open-delay\":\"250\",\"rounded\":\"pill\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({on:{\"click\":function($event){(!_vm.volume && _vm.setVolume(1)) || (_vm.volume && _vm.setVolume(0))}}},on),[_vm._v(\" \"+_vm._s(_vm.volume === 0 ? 'mdi-volume-off' : 'mdi-volume-medium')+\" \")])]}}])},[_c('v-card',{staticStyle:{\"overflow\":\"hidden\",\"width\":\"30px\"}},[_c('v-slider',{attrs:{\"value\":_vm.volume,\"min\":\"0\",\"max\":\"1.0\",\"step\":\"0.05\",\"vertical\":\"\"},on:{\"change\":_vm.setVolume}})],1)],1)],1),_c('span',{staticClass:\"mr-2\"},[_c('v-menu',{attrs:{\"close-on-content-click\":false,\"top\":\"\",\"offset-y\":\"\",\"nudge-left\":\"3\",\"open-on-hover\":\"\",\"close-delay\":\"500\",\"open-delay\":\"250\",\"rounded\":\"lg\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-badge',{attrs:{\"value\":_vm.speed != 1.0,\"color\":\"#0277bd88\",\"content\":`${_vm.speed}X`,\"offset-y\":\"5px\",\"overlap\":\"\"}},[_c('v-icon',_vm._g({on:{\"click\":function($event){return _vm.setSpeed(1)}}},on),[_vm._v(\" mdi-speedometer \")])],1)]}}])},[_c('v-card',{staticStyle:{\"overflow\":\"hidden\",\"width\":\"90px\"}},[_c('v-slider',{staticStyle:{\"font-size\":\"0.75em\"},attrs:{\"value\":_vm.ticks.indexOf(_vm.speed),\"min\":\"0\",\"max\":\"6\",\"step\":\"1\",\"tick-labels\":_vm.ticks,\"ticks\":\"always\",\"tick-size\":4,\"vertical\":\"\"},on:{\"change\":function($event){return _vm.setSpeed(_vm.ticks[$event])}}})],1)],1)],1),_c('file-name-time-display',{staticClass:\"text-middle pl-2\",attrs:{\"display-type\":\"time\"}})],1):_vm._e(),_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({staticClass:\"mx-2\",attrs:{\"small\":\"\"}},on),[_vm._v(\" mdi-information \")])]}}])},[_c('span',[_vm._v(\" annotation framerate may be downsampled. \"),_c('br'),_vm._v(\" frame numbers start at zero. \")])])]},proxy:true}])},[_c('template',{slot:\"timelineControls\"},[_c('div',{staticStyle:{\"min-width\":\"270px\"}},[_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({attrs:{\"small\":\"\"},on:{\"click\":function($event){return _vm.$emit('update:collapsed', !_vm.collapsed)}}},on),[_vm._v(\" \"+_vm._s(_vm.collapsed ? 'mdi-chevron-up-box' : 'mdi-chevron-down-box')+\" \")])]}}])},[_c('span',[_vm._v(\"Collapse/Expand Timeline\")])]),_c('v-btn',{staticClass:\"ml-1\",class:{ 'timeline-button': _vm.currentView !== 'Detections' || _vm.collapsed },attrs:{\"depressed\":\"\",\"outlined\":_vm.currentView === 'Detections' && !_vm.collapsed,\"x-small\":\"\",\"tab-index\":\"-1\"},on:{\"click\":function($event){return _vm.toggleView('Detections')}}},[_vm._v(\" Detections \")]),_c('v-btn',{staticClass:\"ml-1\",class:{ 'timeline-button': _vm.currentView !== 'Events' || _vm.collapsed },attrs:{\"depressed\":\"\",\"outlined\":_vm.currentView === 'Events' && !_vm.collapsed,\"x-small\":\"\",\"tab-index\":\"-1\"},on:{\"click\":function($event){return _vm.toggleView('Events')}}},[_vm._v(\" Events \")]),(!_vm.multiCam && _vm.hasGroups)?_c('v-btn',{staticClass:\"ml-1\",class:{ 'timeline-button': _vm.currentView !== 'Groups' || _vm.collapsed },attrs:{\"depressed\":\"\",\"outlined\":_vm.currentView === 'Groups' && !_vm.collapsed,\"x-small\":\"\",\"tab-index\":\"-1\"},on:{\"click\":function($event){return _vm.toggleView('Groups')}}},[_vm._v(\" Groups \")]):_vm._e(),(!_vm.multiCam && _vm.timelineEnabled)?_c('v-btn',{staticClass:\"ml-1\",class:{ 'timeline-button': _vm.currentView !== 'Attributes' || _vm.collapsed },attrs:{\"depressed\":\"\",\"outlined\":_vm.currentView === 'Attributes' && !_vm.collapsed,\"x-small\":\"\",\"tab-index\":\"-1\"},on:{\"click\":function($event){return _vm.toggleView('Attributes')}}},[_vm._v(\" Attributes \")]):_vm._e()],1)])],2),((!_vm.collapsed))?_c('Timeline',{attrs:{\"max-frame\":_vm.maxFrame,\"frame\":_vm.frame,\"display\":!_vm.collapsed},on:{\"seek\":_vm.seek},scopedSlots:_vm._u([{key:\"child\",fn:function({\n startFrame,\n endFrame,\n maxFrame: childMaxFrame,\n clientWidth,\n clientHeight,\n margin,\n }){return [(_vm.currentView === 'Detections')?_c('line-chart',{attrs:{\"start-frame\":startFrame,\"end-frame\":endFrame,\"max-frame\":childMaxFrame,\"data\":_vm.lineChartData,\"client-width\":clientWidth,\"client-height\":clientHeight,\"margin\":margin}}):_vm._e(),(_vm.currentView === 'Events')?_c('event-chart',{attrs:{\"start-frame\":startFrame,\"end-frame\":endFrame,\"max-frame\":childMaxFrame,\"data\":_vm.eventChartData,\"client-width\":clientWidth,\"margin\":margin},on:{\"select-track\":function($event){return _vm.$emit('select-track', $event)}}}):_vm._e(),(_vm.currentView === 'Groups')?_c('event-chart',{attrs:{\"start-frame\":startFrame,\"end-frame\":endFrame,\"max-frame\":childMaxFrame,\"data\":_vm.groupChartData,\"client-width\":clientWidth,\"margin\":margin},on:{\"select-track\":function($event){return _vm.$emit('select-group', $event)}}}):_vm._e(),(_vm.currentView === 'Attributes')?_c('line-chart',{attrs:{\"start-frame\":startFrame,\"end-frame\":endFrame,\"max-frame\":endFrame,\"data\":_vm.attributeData.data,\"client-width\":clientWidth,\"client-height\":clientHeight,\"margin\":margin,\"atrributes-chart\":true}}):_vm._e()]}}],null,false,3859938353)}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ControlsContainer.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ControlsContainer.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ControlsContainer.vue?vue&type=template&id=e6852290&scoped=true\"\nimport script from \"./ControlsContainer.vue?vue&type=script&lang=ts\"\nexport * from \"./ControlsContainer.vue?vue&type=script&lang=ts\"\nimport style0 from \"./ControlsContainer.vue?vue&type=style&index=0&id=e6852290&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e6852290\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('StackedVirtualSidebarContainer',{attrs:{\"width\":_vm.width,\"enable-slot\":_vm.enableSlot},scopedSlots:_vm._u([{key:\"default\",fn:function({ topHeight, bottomHeight }){return [_c('v-btn',{directives:[{name:\"mousetrap\",rawName:\"v-mousetrap\",value:(_vm.mouseTrap),expression:\"mouseTrap\"}],staticClass:\"swap-button\",attrs:{\"small\":\"\",\"icon\":\"\",\"title\":\"press `a`\"},on:{\"click\":_vm.swapTabs}},[_c('v-icon',[_vm._v(\"mdi-swap-horizontal\")])],1),_c('v-slide-x-transition',[(_vm.data.currentTab === 'tracks')?_c('div',{key:\"type-tracks\",staticClass:\"wrapper d-flex flex-column\"},[_c('FilterList',{staticClass:\"flex-shrink-1 flex-grow-1\",attrs:{\"show-empty-types\":_vm.typeSettings.showEmptyTypes,\"height\":topHeight,\"width\":_vm.width,\"style-manager\":_vm.styleManager,\"filter-controls\":_vm.trackFilterControls},scopedSlots:_vm._u([{key:\"settings\",fn:function(){return [_c('TypeSettingsPanel',{attrs:{\"all-types\":_vm.allTypesRef},on:{\"import-types\":function($event){return _vm.$emit('import-types', $event)}}})]},proxy:true}],null,true)}),(_vm.enableSlot)?_vm._t(\"default\"):_vm._e(),_c('v-divider'),_c('TrackList',{staticClass:\"flex-grow-0 flex-shrink-0\",attrs:{\"new-track-mode\":_vm.trackSettings.newTrackSettings.mode,\"new-track-type\":_vm.trackSettings.newTrackSettings.type,\"lock-types\":_vm.typeSettings.lockTypes,\"hotkeys-disabled\":_vm.visible() || _vm.readOnlyMode,\"height\":bottomHeight},on:{\"track-seek\":function($event){return _vm.$emit('track-seek', $event)}}},[_c('template',{slot:\"settings\"},[_c('TrackSettingsPanel',{attrs:{\"all-types\":_vm.allTypesRef}})],1)],2)],2):(_vm.data.currentTab === 'attributes')?_c('track-details-panel',{attrs:{\"lock-types\":_vm.typeSettings.lockTypes,\"hotkeys-disabled\":_vm.visible() || _vm.readOnlyMode,\"width\":_vm.width},on:{\"track-seek\":function($event){return _vm.$emit('track-seek', $event)},\"toggle-merge\":_vm.doToggleMerge,\"back\":_vm.swapTabs,\"commit-merge\":_vm.commitMerge,\"create-group\":_vm.groupAdd}}):_vm._e()],1)]}}],null,true)})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{directives:[{name:\"mousetrap\",rawName:\"v-mousetrap\",value:(_vm.mouseTrap),expression:\"mouseTrap\"}],staticClass:\"d-flex flex-column fill-height overflow-hidden\",style:({ width: `${_vm.width}px` }),on:{\"click\":_vm.resetEditIndividual}},[_c('v-subheader',{staticClass:\"pl-2\"},[_vm._v(\" \"+_vm._s(_vm.multiSelectInProgress ? (_vm.editingGroupIdRef !== null ? 'Editing Group' : 'Merge Candidates') : 'Track Editor')+\" \")]),(!_vm.selectedTrackList.length)?_c('div',{staticClass:\"ml-4 body-2 text-caption\"},[_c('p',[_vm._v(\"No track or group selected.\")]),_c('p',[_vm._v(\" This panel is used for: \"),_c('ul',[_c('li',[_vm._v(\"Setting attributes on tracks and keyframes\")]),_c('li',[_vm._v(\"Merging several tracks together\")]),_c('li',[_vm._v(\"Viewing and managing class types and conficence values\")]),(!_vm.multiCam)?_c('li',[_vm._v(\" Creating and editing track groups \")]):_vm._e()])]),_c('p',[_vm._v(\"Select a track or group to populate this editor.\")]),_c('span',{staticStyle:{\"text-decoration\":\"underline\",\"cursor\":\"pointer\"},on:{\"click\":function($event){return _vm.$emit('back')}}},[_vm._v(\" ← back to track list (press `a` to toggle) \")])]):[(_vm.editingGroup && !_vm.multiCam)?_c('div',{staticClass:\"px-2\"},[_c('div',{staticClass:\"d-flex\"},[_c('span',{staticClass:\"trackNumber\"},[_vm._v(_vm._s(_vm.editingGroup.id))]),_c('v-spacer'),_c('TypePicker',{attrs:{\"value\":_vm.editingGroup.getType(),\"all-types\":_vm.allGroupTypesRef,\"read-only-mode\":_vm.readOnlyMode,\"data-list-source\":\"allGroupTypesOptions\"},on:{\"input\":function($event){return _vm.editingGroup.setType($event)}}})],1),_c('RangeEditor',{staticClass:\"my-2 input-box px-0\",attrs:{\"frame\":_vm.frameRef,\"begin\":_vm.editingGroup.begin,\"end\":_vm.editingGroup.end,\"disabled\":\"\"},on:{\"update:begin\":function($event){return _vm.$set(_vm.editingGroup, \"begin\", $event)},\"update:end\":function($event){return _vm.$set(_vm.editingGroup, \"end\", $event)}}}),_c('v-btn',{attrs:{\"color\":\"error\",\"disabled\":_vm.readOnlyMode,\"depressed\":\"\",\"block\":\"\",\"x-small\":\"\"},on:{\"click\":function($event){return _vm.removeGroup([_vm.editingGroup.id])}}},[_c('v-icon',{staticClass:\"pr-1\",attrs:{\"small\":\"\"}},[_vm._v(\" mdi-delete \")]),_c('v-spacer'),_vm._v(\" Delete Group \")],1),_c('v-btn',{staticClass:\"mt-2\",attrs:{\"color\":\"secondary\",\"disabled\":_vm.readOnlyMode,\"depressed\":\"\",\"block\":\"\",\"x-small\":\"\"},on:{\"click\":_vm.toggleMerge}},[_c('v-icon',{staticClass:\"pr-1\",attrs:{\"small\":\"\"}},[_vm._v(\" mdi-close \")]),_c('v-spacer'),_vm._v(\" Cancel (esc) \")],1),_c('v-subheader',{staticClass:\"pl-0\"},[_vm._v(\" Group Members: \")])],1):_vm._e(),_c('datalist',{attrs:{\"id\":\"allTypesOptions\"}},_vm._l((_vm.allTypesRef),function(type){return _c('option',{key:type,domProps:{\"value\":type}},[_vm._v(\" \"+_vm._s(type)+\" \")])}),0),_c('div',{staticClass:\"track-details\",class:{ 'multi-select-list': true, unlimited: _vm.editingGroup !== null }},_vm._l((_vm.selectedTrackList),function(track){return _c('v-card',{key:track.trackId,staticClass:\"mx-2 mb-2\",attrs:{\"outlined\":\"\",\"flat\":\"\"}},[_c('div',{staticClass:\"d-flex align-center\"},[_c('TrackItem',{staticClass:\"grow\",attrs:{\"solo\":true,\"merging\":_vm.multiSelectInProgress,\"track\":track,\"track-type\":track.confidencePairs[0][0],\"selected\":_vm.selectedTrackIdRef === track.id,\"secondary-selected\":true,\"editing\":!!_vm.editingModeRef,\"input-value\":true,\"color\":_vm.typeStylingRef.color(track.confidencePairs[0][0]),\"lock-types\":_vm.lockTypes},on:{\"seek\":function($event){return _vm.$emit('track-seek', $event)}}}),(_vm.multiSelectInProgress && !_vm.multiCam)?_c('tooltip-btn',{attrs:{\"icon\":\"mdi-close\",\"tooltip-text\":_vm.editingGroup ? 'Remove from group' : 'Remove from merge candidates',\"disabled\":(_vm.editingGroup && _vm.selectedTrackList.length === 1) || _vm.readOnlyMode},on:{\"click\":function($event){return _vm.unstageFromMerge([track.trackId])}}}):_vm._e()],1),(_vm.editingGroup && !_vm.multiCam)?_vm._l((_vm.editingGroup.members[track.id].ranges),function(range,idx){return _c('RangeEditor',{key:`rangeEditor-${_vm.editingGroup.id}-${track.revision}-${idx}`,attrs:{\"frame\":_vm.frameRef,\"begin\":range[0],\"end\":range[1],\"disabled\":_vm.readOnlyMode,\"last\":idx === (_vm.editingGroup.members[track.id].ranges.length - 1),\"min\":track.begin,\"max\":track.end},on:{\"update:begin\":function($event){return _vm.editingGroup.setMemberRange(\n track.id, idx, [$event, range[1]])},\"update:end\":function($event){return _vm.editingGroup.setMemberRange(\n track.id, idx, [range[0], $event])},\"click:begin\":function($event){return _vm.editingGroup.setMemberRange(\n track.id, idx, [_vm.frameRef, range[1]])},\"click:end\":function($event){return _vm.editingGroup.setMemberRange(\n track.id, idx, [range[0], _vm.frameRef])},\"click:add-range\":function($event){return _vm.editingGroup.addMemberRange(\n track.id, idx + 1, [_vm.frameRef, range[1]])},\"click:remove-range\":function($event){return _vm.editingGroup.removeMemberRange(\n track.id, idx)}}})}):_vm._e()],2)}),1),_c('div',{staticClass:\"d-flex flex-column\"},[(!_vm.multiSelectInProgress && !_vm.multiCam)?_c('v-btn',{staticClass:\"mx-2 mb-2 grow\",attrs:{\"color\":\"primary lighten-1\",\"disabled\":_vm.readOnlyMode,\"depressed\":\"\",\"x-small\":\"\"},on:{\"click\":function($event){return _vm.$emit('toggle-merge')}}},[_c('v-icon',{staticClass:\"pr-1\",attrs:{\"small\":\"\"}},[_vm._v(\" mdi-call-merge \")]),_c('v-spacer'),_vm._v(\" Begin Track Merge (m) \")],1):_vm._e(),(!_vm.multiSelectInProgress && !_vm.multiCam)?_c('v-btn',{staticClass:\"mx-2 mb-2 grow\",attrs:{\"color\":\"primary darken-1\",\"disabled\":_vm.readOnlyMode,\"depressed\":\"\",\"x-small\":\"\"},on:{\"click\":function($event){return _vm.$emit('create-group')}}},[_c('v-icon',{staticClass:\"pr-1\",attrs:{\"small\":\"\"}},[_vm._v(\" mdi-group \")]),_c('v-spacer'),_vm._v(\" Create New Group from Track (g) \")],1):_vm._e(),(_vm.multiSelectInProgress && (_vm.editingGroupIdRef === null))?_c('v-btn',{staticClass:\"mx-2 mb-2 grow\",attrs:{\"color\":\"primary lighten-1\",\"x-small\":\"\",\"depressed\":\"\",\"disabled\":_vm.multiSelectList.length < 2},on:{\"click\":function($event){return _vm.$emit('commit-merge')}}},[_c('v-icon',{staticClass:\"pr-1\",attrs:{\"small\":\"\"}},[_vm._v(\" mdi-call-merge \")]),_c('v-icon',{staticClass:\"pr-1\",attrs:{\"small\":\"\"}},[_vm._v(\" mdi-check \")]),_c('v-spacer'),_vm._v(\" Commit Merge (shift+m) \")],1):_vm._e(),(_vm.multiSelectInProgress && (_vm.editingGroupIdRef === null))?_c('v-btn',{staticClass:\"mx-2 mb-2 grow\",attrs:{\"color\":\"error\",\"disabled\":_vm.readOnlyMode,\"depressed\":\"\",\"x-small\":\"\"},on:{\"click\":function($event){return _vm.$emit('toggle-merge')}}},[_c('v-spacer'),_vm._v(\" Abort (esc) \")],1):_vm._e()],1),(_vm.editingGroupIdRef === null)?_c('confidence-subsection',{staticStyle:{\"max-height\":\"33vh\"},attrs:{\"confidence-pairs\":_vm.flatten(_vm.selectedTrackList.map((t) => t.confidencePairs)).sort((a, b) => b[1] - a[1]),\"disabled\":_vm.selectedTrackList.length > 1},on:{\"set-type\":function($event){return _vm.selectedTrackList[0].setType($event)}}}):_vm._e(),(!_vm.multiSelectInProgress)?_c('attribute-subsection',{attrs:{\"mode\":\"Track\",\"attributes\":_vm.attributes,\"edit-individual\":_vm.editIndividual},on:{\"edit-attribute\":function($event){return _vm.editAttribute($event)},\"set-edit-individual\":function($event){return _vm.setEditIndividual($event)},\"add-attribute\":_vm.addAttribute}}):_vm._e(),(!_vm.multiSelectInProgress)?_c('attribute-subsection',{attrs:{\"mode\":\"Detection\",\"attributes\":_vm.attributes,\"edit-individual\":_vm.editIndividual},on:{\"edit-attribute\":function($event){return _vm.editAttribute($event)},\"set-edit-individual\":function($event){return _vm.setEditIndividual($event)},\"add-attribute\":_vm.addAttribute}}):_vm._e()],_c('v-spacer'),_c('v-dialog',{attrs:{\"value\":_vm.editingAttribute != null,\"max-width\":\"550\"},on:{\"click:outside\":_vm.closeEditor,\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"]))return null;$event.stopPropagation();return _vm.closeEditor.apply(null, arguments)}}},[(_vm.editingAttribute != null)?_c('attribute-editor',{attrs:{\"selected-attribute\":_vm.editingAttribute,\"error\":_vm.editingError},on:{\"close\":_vm.closeEditor,\"save\":_vm.saveAttributeHandler,\"delete\":_vm.deleteAttributeHandler}}):_vm._e()],1)],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('div',{staticClass:\"d-flex align-center px-1\",style:({\n background: `linear-gradient(\n to right,\n #2c759650 ${((_vm.frame - _vm.begin) / (_vm.end - _vm.begin) * 100).toFixed(0)}%,\n rgba(0,0,0,0) ${(1 - ((_vm.frame - _vm.begin) / (_vm.end - _vm.begin)) * 100, 0).toFixed(0)}%)`,\n })},[_c('v-text-field',{staticClass:\"px-2 mt-0\",staticStyle:{\"width\":\"100%\"},attrs:{\"value\":_vm.begin,\"disabled\":_vm.disabled,\"single-line\":\"\",\"dense\":\"\",\"type\":\"number\",\"label\":\"Begin frame\",\"hide-details\":\"\",\"min\":_vm.min,\"max\":Math.min(_vm.end, _vm.max),\"rules\":[\n (v) => v <= Math.min(_vm.end, _vm.max) || 'Begin must be less than end and max',\n (v) => v >= _vm.min || 'Begin must be >= min',\n ]},on:{\"input\":_vm.updateBegin},scopedSlots:_vm._u([(!_vm.disabled)?{key:\"append-outer\",fn:function(){return [_c('tooltip-btn',{attrs:{\"icon\":\"mdi-map-marker\",\"tooltip-text\":`Set range start to current frame (${_vm.frame})`,\"size\":\"x-small\",\"delay\":100,\"disabled\":_vm.frame < _vm.min || _vm.frame > Math.min(_vm.end, _vm.max)},on:{\"click\":function($event){return _vm.$emit('click:begin')}}})]},proxy:true}:null],null,true)}),_c('v-text-field',{staticClass:\"px-2 mt-0\",staticStyle:{\"width\":\"100%\"},attrs:{\"value\":_vm.end,\"disabled\":_vm.disabled,\"hide-details\":\"\",\"single-line\":\"\",\"dense\":\"\",\"type\":\"number\",\"label\":\"End frame\",\"min\":Math.max(_vm.begin, _vm.min),\"max\":_vm.max,\"rules\":[\n (v) => v >= Math.max(_vm.begin, _vm.min) || 'End must be >= begin and min',\n (v) => v <= _vm.max || 'End must be <= max',\n ]},on:{\"input\":_vm.updateEnd},scopedSlots:_vm._u([(!_vm.disabled)?{key:\"append-outer\",fn:function(){return [_c('tooltip-btn',{attrs:{\"icon\":\"mdi-map-marker\",\"delay\":100,\"size\":\"x-small\",\"tooltip-text\":`Set range end to current frame (${_vm.frame})`,\"disabled\":_vm.frame < Math.max(_vm.begin, _vm.min) || _vm.frame > _vm.max},on:{\"click\":function($event){return _vm.$emit('click:end')}}})]},proxy:true}:null],null,true)}),(!_vm.disabled && _vm.last)?_c('tooltip-btn',{attrs:{\"icon\":\"mdi-clock-plus\",\"tooltip-text\":\"Add new sub-range\",\"delay\":100,\"disabled\":_vm.frame < _vm.min || _vm.frame > _vm.max,\"size\":\"x-small\"},on:{\"click\":function($event){return _vm.$emit('click:add-range')}}}):_vm._e(),(!_vm.disabled && !_vm.last)?_c('tooltip-btn',{attrs:{\"icon\":\"mdi-clock-minus\",\"tooltip-text\":\"Remove sub-range\",\"delay\":100,\"size\":\"x-small\"},on:{\"click\":function($event){return _vm.$emit('click:remove-range')}}}):_vm._e()],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RangeEditor.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RangeEditor.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./RangeEditor.vue?vue&type=template&id=0c6567f4\"\nimport script from \"./RangeEditor.vue?vue&type=script&lang=ts\"\nexport * from \"./RangeEditor.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[(_vm.datatype === 'text' && _vm.values && _vm.values.length)?_c('datalist',{attrs:{\"id\":`optionsList_${_vm._uid}`,\"disabled\":_vm.disabled}},_vm._l(([' ', ..._vm.values]),function(type){return _c('option',{key:type,domProps:{\"value\":type}},[_vm._v(\" \"+_vm._s(type)+\" \")])}),0):_vm._e(),(_vm.datatype === 'text')?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.tempVal),expression:\"tempVal\"}],ref:\"inputBoxRef\",staticClass:\"input-box\",attrs:{\"type\":\"text\",\"disabled\":_vm.disabled,\"list\":`optionsList_${_vm._uid}`},domProps:{\"value\":(_vm.tempVal)},on:{\"change\":_vm.change,\"focus\":_vm.onFocus,\"keydown\":_vm.onInputKeyEvent,\"input\":function($event){if($event.target.composing)return;_vm.tempVal=$event.target.value}}}):(_vm.datatype === 'number' && (!_vm.typeSettings || _vm.typeSettings.type === 'combo'))?_c('input',{ref:\"inputBoxRef\",staticClass:\"input-box\",attrs:{\"label\":_vm.datatype,\"disabled\":_vm.disabled,\"step\":_vm.value <= 1 ? .01 : 1,\"type\":\"number\"},domProps:{\"value\":_vm.value},on:{\"change\":_vm.change,\"keydown\":_vm.onInputKeyEvent}}):(_vm.datatype === 'number' && (_vm.typeSettings && _vm.typeSettings.type === 'slider'))?_c('div',[_c('div',{staticClass:\"slider-label\"},[_vm._v(\" \"+_vm._s(_vm.value)+\" \")]),_c('v-slider',{staticClass:\"attribute-slider\",attrs:{\"value\":_vm.value,\"step\":_vm.typeSettings.steps ? _vm.typeSettings.steps\n : (_vm.typeSettings.range[1] - _vm.typeSettings.range[0]) / 2.0,\"min\":_vm.typeSettings.range[0],\"max\":_vm.typeSettings.range[1],\"dense\":\"\"},on:{\"input\":_vm.sliderChange}})],1):(_vm.datatype === 'boolean')?_c('select',{ref:\"inputBoxRef\",staticClass:\"input-box select-input\",attrs:{\"label\":_vm.datatype,\"disabled\":_vm.disabled},domProps:{\"value\":_vm.value},on:{\"change\":_vm.change,\"keydown\":_vm.onInputKeyEvent}},_vm._l((_vm.boolOpts),function(item,index){return _c('option',{key:index,domProps:{\"value\":item.value}},[_vm._v(\" \"+_vm._s(item.text)+\" \")])}),0):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeInput.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeInput.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AttributeInput.vue?vue&type=template&id=5ee04ab2&scoped=true\"\nimport script from \"./AttributeInput.vue?vue&type=script&lang=ts\"\nexport * from \"./AttributeInput.vue?vue&type=script&lang=ts\"\nimport style0 from \"./AttributeInput.vue?vue&type=style&index=0&id=5ee04ab2&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5ee04ab2\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-card',{staticClass:\"attribute-settings\"},[_c('v-card-title',{staticClass:\"pb-0\"},[_vm._v(\" Attributes \"),_c('v-card-text',[_c('v-card-title',{staticClass:\"text-h6\"},[_c('v-tabs',{model:{value:(_vm.currentTab),callback:function ($$v) {_vm.currentTab=$$v},expression:\"currentTab\"}},[_c('v-tab',[_vm._v(\" Main \")]),_c('v-tab',[_vm._v(\" Rendering \")]),(['text', 'number'].includes(_vm.baseSettings.datatype))?_c('v-tab',[_vm._v(\" Value Colors \")]):_vm._e()],1)],1),_c('v-tabs-items',{model:{value:(_vm.currentTab),callback:function ($$v) {_vm.currentTab=$$v},expression:\"currentTab\"}},[_c('v-tab-item',[(_vm.error || !_vm.addNew)?_c('v-alert',{attrs:{\"type\":_vm.error ? 'error' : 'info'}},[_c('div',{staticStyle:{\"word-break\":\"break-word\"}},[_vm._v(\" \"+_vm._s(_vm.error ? _vm.error : 'Changes to Attribute Datatypes or Names do not effect \\ currently set attributes on tracks.')+\" \")])]):_vm._e(),_c('v-form',{ref:\"form\",model:{value:(_vm.baseSettings.areSettingsValid),callback:function ($$v) {_vm.$set(_vm.baseSettings, \"areSettingsValid\", $$v)},expression:\"baseSettings.areSettingsValid\"}},[_c('v-text-field',{attrs:{\"label\":\"Name\",\"rules\":[v => !!v || 'Name is required', v => !v.includes(' ')\n || 'No spaces', v => v !== 'userAttributes' || 'Reserved Name'],\"required\":\"\"},model:{value:(_vm.baseSettings.name),callback:function ($$v) {_vm.$set(_vm.baseSettings, \"name\", $$v)},expression:\"baseSettings.name\"}}),_c('v-select',{attrs:{\"value\":_vm.baseSettings.datatype,\"items\":[\n { text: 'Boolean', value: 'boolean' },\n { text: 'Number', value: 'number' },\n { text: 'Text', value: 'text' },\n ],\"label\":\"Datatype\"},on:{\"change\":_vm.typeChange}}),(_vm.baseSettings.datatype === 'number')?_c('div',[_c('v-radio-group',{attrs:{\"value\":(_vm.baseSettings.editor && _vm.baseSettings.editor.type) || 'combo',\"row\":\"\",\"label\":\"Display Type:\"},on:{\"change\":_vm.numericChange}},[_c('v-radio',{attrs:{\"label\":\"Input Box\",\"value\":\"combo\"}}),_c('v-radio',{attrs:{\"label\":\"Slider\",\"value\":\"slider\"}})],1)],1):_vm._e(),(false)?_c('div',[_c('v-checkbox',{attrs:{\"label\":\"User Attribute\",\"hint\":\"Attribute data is saved per user instead of globally.\",\"persistent-hint\":\"\"},model:{value:(_vm.user),callback:function ($$v) {_vm.user=$$v},expression:\"user\"}})],1):_vm._e(),(_vm.baseSettings.datatype === 'number'\n && _vm.baseSettings.editor && _vm.baseSettings.editor.type === 'slider')?_c('div',[(_vm.baseSettings.editor.range)?_c('v-row',{staticClass:\"pt-2\"},[_c('v-text-field',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"step\":_vm.baseSettings.editor.range[0] > 1 ? 1 : 0.01,\"type\":\"number\",\"label\":\"Min\",\"rules\":[\n v => !isNaN(parseFloat(v)) || 'Number is required',\n v => _vm.baseSettings.editor\n && _vm.baseSettings.editor.type === 'slider'\n && _vm.baseSettings.editor.range\n && v < _vm.baseSettings.editor.range[1]\n || 'Min needs to be smaller than the Max'],\"max\":_vm.baseSettings.editor.range[1],\"hint\":\"Min limit for slider\",\"persistent-hint\":\"\"},model:{value:(_vm.baseSettings.editor.range[0]),callback:function ($$v) {_vm.$set(_vm.baseSettings.editor.range, 0, _vm._n($$v))},expression:\"baseSettings.editor.range[0]\"}}),_c('v-text-field',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"step\":_vm.baseSettings.editor.range[1] > 1 ? 1 : 0.01,\"type\":\"number\",\"label\":\"Max\",\"rules\":[\n v => !isNaN(parseFloat(v)) || 'Number is required',\n v => _vm.baseSettings.editor\n && _vm.baseSettings.editor.type === 'slider'\n && _vm.baseSettings.editor.range\n && v > _vm.baseSettings.editor.range[0]\n || 'Max needs to be larger than the Min'],\"min\":_vm.baseSettings.editor.range[0],\"hint\":\"Max limit for slider\",\"persistent-hint\":\"\"},model:{value:(_vm.baseSettings.editor.range[1]),callback:function ($$v) {_vm.$set(_vm.baseSettings.editor.range, 1, _vm._n($$v))},expression:\"baseSettings.editor.range[1]\"}})],1):_vm._e(),_c('v-row',{staticClass:\"pt-2\"},[_c('v-text-field',{attrs:{\"dense\":\"\",\"outlined\":\"\",\"step\":_vm.baseSettings.editor\n && _vm.baseSettings.editor.steps && _vm.baseSettings.editor.steps > 1 ? 1 : 0.01,\"type\":\"number\",\"rules\":[\n v => !isNaN(parseFloat(v)) || 'Number is required',\n v => _vm.baseSettings.editor\n && _vm.baseSettings.editor.type === 'slider'\n && _vm.baseSettings.editor.range\n && v < (_vm.baseSettings.editor.range[1] - _vm.baseSettings.editor.range[0])\n || 'Steps should be smaller than the range'],\"label\":\"Slider Step Interval\",\"min\":\"0\",\"hint\":\"Each movement will move X amount\",\"persistent-hint\":\"\"},model:{value:(_vm.baseSettings.editor.steps),callback:function ($$v) {_vm.$set(_vm.baseSettings.editor, \"steps\", _vm._n($$v))},expression:\"baseSettings.editor.steps\"}})],1)],1):_vm._e(),(_vm.baseSettings.datatype === 'text')?_c('v-textarea',{attrs:{\"label\":\"Predefined values\",\"hint\":\"Line separated values\",\"outlined\":\"\",\"auto-grow\":\"\",\"row-height\":\"30\"},model:{value:(_vm.textValues),callback:function ($$v) {_vm.textValues=$$v},expression:\"textValues\"}}):_vm._e()],1),(!_vm.colorEditor)?_c('v-row',{attrs:{\"align\":\"center\",\"justify\":\"start\"}},[_c('v-col',{attrs:{\"align-self\":\"center\",\"cols\":\"2\"}},[_c('h2',[_vm._v(\" Color: \")])]),_c('v-col',{attrs:{\"align-self\":\"center\"}},[(!_vm.colorSettings.color)?_c('div',{staticClass:\"edit-color-box\",style:({\n backgroundColor: _vm.colorSettings.tempColor,\n }),on:{\"click\":_vm.launchColorEditor}}):_c('div',{staticClass:\"edit-color-box\",style:({\n backgroundColor: _vm.colorSettings.color,\n }),on:{\"click\":_vm.launchColorEditor}})]),_c('v-spacer')],1):_vm._e(),(_vm.colorEditor)?_c('v-row',[_c('v-spacer'),_c('v-col',[_c('v-color-picker',{attrs:{\"hide-inputs\":\"\"},model:{value:(_vm.colorSettings.color),callback:function ($$v) {_vm.$set(_vm.colorSettings, \"color\", $$v)},expression:\"colorSettings.color\"}})],1),_c('v-spacer')],1):_vm._e()],1),_c('v-tab-item',[_c('v-switch',{attrs:{\"label\":\"Rendering\"},model:{value:(_vm.attributeRendering),callback:function ($$v) {_vm.attributeRendering=$$v},expression:\"attributeRendering\"}}),(_vm.attributeRendering && _vm.renderingVals !== undefined)?_c('attribute-rendering',{attrs:{\"attribute\":_vm.selectedAttribute},model:{value:(_vm.renderingVals),callback:function ($$v) {_vm.renderingVals=$$v},expression:\"renderingVals\"}}):_vm._e()],1),(_vm.baseSettings.datatype === 'text')?_c('v-tab-item',[_c('attribute-value-colors',{attrs:{\"attribute\":_vm.selectedAttribute},on:{\"save\":function($event){_vm.colorSettings.attributeColors = $event}}})],1):(_vm.baseSettings.datatype === 'number')?_c('v-tab-item',[_c('attribute-number-value-colors',{attrs:{\"attribute\":_vm.selectedAttribute},on:{\"save\":function($event){_vm.colorSettings.attributeColors = $event}}})],1):_vm._e()],1),_c('v-card-actions',[_c('v-row',[_c('v-tooltip',{attrs:{\"open-delay\":\"100\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('div',_vm._g({},on),[_c('v-btn',{staticClass:\"hover-show-child\",attrs:{\"color\":\"error\",\"disabled\":!_vm.selectedAttribute.key.length},on:{\"click\":function($event){$event.preventDefault();return _vm.deleteAttribute.apply(null, arguments)}}},[_vm._v(\" Delete \")])],1)]}}])},[_c('span',{staticClass:\"ma-0 pa-1\"},[_vm._v(\" Deletion of Attribute \")])]),_c('v-spacer'),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"text\":\"\"},on:{\"click\":function($event){return _vm.$emit('close')}}},[_vm._v(\" Cancel \")]),_c('v-btn',{attrs:{\"color\":\"primary\",\"disabled\":!_vm.baseSettings.areSettingsValid\n || (!_vm.baseSettings.name || _vm.baseSettings.name.includes(' '))},on:{\"click\":function($event){$event.preventDefault();return _vm.submit.apply(null, arguments)}}},[_vm._v(\" Save \")])],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-expansion-panels',[_c('v-expansion-panel',[_c('v-expansion-panel-header',[_c('h3',[_vm._v(\" Main Settings \"),_c('v-tooltip',{attrs:{\"open-delay\":\"100\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({},on),[_vm._v(\" mdi-information \")])]}}])},[_c('span',[_c('ul',[_c('li',[_c('b',[_vm._v(\"Selected Track\")]),_vm._v(\" : Only display attributes when a track is selected\")]),_c('li',[_c('b',[_vm._v(\"Filter Types\")]),_vm._v(\" : Only display attributes on the filtered types\")]),_c('li',[_c('b',[_vm._v(\"Order\")]),_vm._v(\" : Order top to bottom for attributes where 0 is higher\")])])])])],1)]),_c('v-expansion-panel-content',[_c('v-row',{staticClass:\"my-2 border\"},[_c('v-switch',{staticClass:\"mx-2\",attrs:{\"label\":\"Selected Track\",\"hint\":\"Only display on selected Track\",\"persistent-hint\":\"\"},model:{value:(_vm.mainSettings.selected),callback:function ($$v) {_vm.$set(_vm.mainSettings, \"selected\", $$v)},expression:\"mainSettings.selected\"}}),_c('v-select',{staticClass:\"mx-2\",staticStyle:{\"max-width\":\"250px\"},attrs:{\"items\":_vm.types,\"multiple\":\"\",\"clearable\":\"\",\"deletable-chips\":\"\",\"chips\":\"\",\"label\":\"Filter Types\"},scopedSlots:_vm._u([{key:\"selection\",fn:function({ item }){return [_c('v-chip',{attrs:{\"close\":\"\",\"color\":_vm.typeStylingRef.color(item),\"text-color\":\"gray\"},on:{\"click:close\":function($event){return _vm.deleteChip(item)}}},[_vm._v(\" \"+_vm._s(item)+\" \")])]}}]),model:{value:(_vm.mainSettings.typeFilter),callback:function ($$v) {_vm.$set(_vm.mainSettings, \"typeFilter\", $$v)},expression:\"mainSettings.typeFilter\"}}),_c('v-text-field',{staticClass:\"mx-2\",attrs:{\"type\":\"number\",\"label\":\"Order\",\"step\":\"1\",\"hint\":\"Top to bottom, lower is higher\",\"persistent-hint\":\"\"},model:{value:(_vm.mainSettings.order),callback:function ($$v) {_vm.$set(_vm.mainSettings, \"order\", _vm._n($$v))},expression:\"mainSettings.order\"}})],1)],1)],1),_c('v-expansion-panel',[_c('v-expansion-panel-header',[_c('h3',[_vm._v(\" Layout \"),_c('v-tooltip',{attrs:{\"open-delay\":\"100\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({},on),[_vm._v(\" mdi-information \")])]}}])},[_c('span',[_c('ul',[_c('li',[_c('b',[_vm._v(\"Location\")]),_vm._v(\" : Display attributes inside or outside of the track box\")]),_c('li',[_c('b',[_vm._v(\"Layout\")]),_vm._v(\" : Vertically stacked attributes or horizontal like confidence pairs\")]),_c('li',[_c('b',[_vm._v(\"Corner\")]),_vm._v(\" : Which corner to place the list of attributes in\")])])])])],1)]),_c('v-expansion-panel-content',[_c('v-row',{staticClass:\"my-2 border\"},[_c('v-select',{staticClass:\"mx-2\",staticStyle:{\"max-width\":\"100px\"},attrs:{\"items\":_vm.dropdownOptions.locationOptions,\"label\":\"Location\"},model:{value:(_vm.layoutSettings.location),callback:function ($$v) {_vm.$set(_vm.layoutSettings, \"location\", $$v)},expression:\"layoutSettings.location\"}}),_c('v-select',{staticClass:\"mx-2\",staticStyle:{\"max-width\":\"100px\"},attrs:{\"items\":_vm.dropdownOptions.layoutOptions,\"label\":\"Layout\"},model:{value:(_vm.layoutSettings.layout),callback:function ($$v) {_vm.$set(_vm.layoutSettings, \"layout\", $$v)},expression:\"layoutSettings.layout\"}}),_c('v-select',{staticClass:\"mx-2\",staticStyle:{\"max-width\":\"100px\"},attrs:{\"items\":_vm.dropdownOptions.cornerOptions,\"label\":\"Corner\"},model:{value:(_vm.layoutSettings.corner),callback:function ($$v) {_vm.$set(_vm.layoutSettings, \"corner\", $$v)},expression:\"layoutSettings.corner\"}})],1)],1)],1),_c('v-expansion-panel',[_c('v-expansion-panel-header',[_c('h3',[_vm._v(\" Display Name \"),_c('v-tooltip',{attrs:{\"open-delay\":\"100\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({},on),[_vm._v(\" mdi-information \")])]}}])},[_c('span',[_c('ul',[_c('li',[_c('b',[_vm._v(\"Display Name\")]),_vm._v(\" : Label that is displayed for attribute, auto-populates to the attribute name\")]),_c('li',[_c('b',[_vm._v(\"Display Text Size\")]),_vm._v(\" : Pixel font size for the attribute display name (-1 is auto)\")]),_c('li',[_c('b',[_vm._v(\"Color\")]),_vm._v(\" : Color of the text, auto will use attribute color\")])])])])],1)]),_c('v-expansion-panel-content',[_c('v-row',{staticClass:\"mb-2 border\"},[_c('v-text-field',{staticClass:\"mx-2\",attrs:{\"label\":\"Display Name\"},model:{value:(_vm.displayNameSettings.displayName),callback:function ($$v) {_vm.$set(_vm.displayNameSettings, \"displayName\", $$v)},expression:\"displayNameSettings.displayName\"}}),_c('v-text-field',{staticClass:\"mx-2\",attrs:{\"type\":\"number\",\"step\":\"1\",\"label\":\"Display Text Size\"},model:{value:(_vm.displayNameSettings.displayTextSize),callback:function ($$v) {_vm.$set(_vm.displayNameSettings, \"displayTextSize\", _vm._n($$v))},expression:\"displayNameSettings.displayTextSize\"}}),_c('v-switch',{staticClass:\"mx-2\",attrs:{\"label\":\"Auto Color\"},model:{value:(_vm.displayNameSettings.displayColorAuto),callback:function ($$v) {_vm.$set(_vm.displayNameSettings, \"displayColorAuto\", $$v)},expression:\"displayNameSettings.displayColorAuto\"}}),_c('div',{staticClass:\"color-box mx-2 mt-5\",class:{ 'edit-color-box': !_vm.displayNameSettings.displayColorAuto },style:({\n backgroundColor: _vm.computedDisplayColor,\n }),on:{\"click\":function($event){return _vm.setEditingColor('display', !_vm.displayNameSettings.displayColorAuto)}}})],1)],1)],1),_c('v-expansion-panel',[_c('v-expansion-panel-header',[_c('h3',[_vm._v(\" Value \"),_c('v-tooltip',{attrs:{\"open-delay\":\"100\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({},on),[_vm._v(\" mdi-information \")])]}}])},[_c('span',[_c('ul',[_c('li',[_c('b',[_vm._v(\"Value Text Size\")]),_vm._v(\" : Pixel font size for the attribute display name (-1 is auto)\")]),_c('li',[_c('b',[_vm._v(\"Color\")]),_vm._v(\" : Color of the text, auto will use attribute color\")])])])])],1)]),_c('v-expansion-panel-content',[_c('v-row',{staticClass:\"mb-2 border\"},[_c('v-text-field',{staticClass:\"mx-2\",attrs:{\"type\":\"number\",\"step\":\"1\",\"label\":\"Value Text Size\"},model:{value:(_vm.valueSettings.valueTextSize),callback:function ($$v) {_vm.$set(_vm.valueSettings, \"valueTextSize\", _vm._n($$v))},expression:\"valueSettings.valueTextSize\"}}),_c('v-switch',{staticClass:\"mx-2\",attrs:{\"label\":\"Auto Color\"},model:{value:(_vm.valueSettings.valueColorAuto),callback:function ($$v) {_vm.$set(_vm.valueSettings, \"valueColorAuto\", $$v)},expression:\"valueSettings.valueColorAuto\"}}),_c('div',{staticClass:\"color-box mx-2 mt-5\",class:{ 'edit-color-box': !_vm.valueSettings.valueColorAuto },style:({\n backgroundColor: _vm.computedValueColor,\n }),on:{\"click\":function($event){return _vm.setEditingColor('value', !_vm.valueSettings.valueColorAuto)}}})],1)],1)],1),(_vm.layoutSettings.layout === 'vertical')?_c('v-expansion-panel',[_c('v-expansion-panel-header',[_c('h3',[_vm._v(\" Dimensions \"),_c('v-tooltip',{attrs:{\"open-delay\":\"100\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({},on),[_vm._v(\" mdi-information \")])]}}],null,false,271524879)},[_c('span',[_c('p',[_vm._v(\"This specifies the dimensions of the area surrounding the attribute area\")]),_c('ul',[_c('li',[_c('b',[_vm._v(\"Type %\")]),_vm._v(\" : Uses a the track width/length to caclulate a percentage using the value to size the area for the attribute\")]),_c('li',[_c('b',[_vm._v(\"Type px\")]),_vm._v(\" : A default pixel value for the width/height of the track, it is suggested to use a pixel value if you have varying widths of tracks\")]),_c('li',[_c('b',[_vm._v(\"Type auto\")]),_vm._v(\": For Height values only it will auto use the space to evenly distribute attributes along the height of the track\")])])])])],1)]),_c('v-expansion-panel-content',[_c('v-row',{staticClass:\"border mb-2\"},[_c('v-row',{attrs:{\"dense\":\"\"}},[_c('v-select',{staticClass:\"mx-2\",attrs:{\"items\":['%', 'px'],\"label\":\"Width Type\"},model:{value:(_vm.verticalDimensions.displayWidthType),callback:function ($$v) {_vm.$set(_vm.verticalDimensions, \"displayWidthType\", $$v)},expression:\"verticalDimensions.displayWidthType\"}}),_c('v-text-field',{staticClass:\"mx-2\",attrs:{\"label\":\"Value\",\"type\":\"number\",\"step\":\"1\"},model:{value:(_vm.verticalDimensions.displayWidthVal),callback:function ($$v) {_vm.$set(_vm.verticalDimensions, \"displayWidthVal\", _vm._n($$v))},expression:\"verticalDimensions.displayWidthVal\"}})],1),_c('v-row',{attrs:{\"dense\":\"\"}},[_c('v-select',{staticClass:\"mx-2\",attrs:{\"items\":_vm.dropdownOptions.displayDimOptions,\"label\":\"Height Type\"},model:{value:(_vm.verticalDimensions.displayHeightType),callback:function ($$v) {_vm.$set(_vm.verticalDimensions, \"displayHeightType\", $$v)},expression:\"verticalDimensions.displayHeightType\"}}),_c('v-text-field',{staticClass:\"mx-2\",attrs:{\"label\":\"Value\",\"type\":\"number\",\"step\":\"1\"},model:{value:(_vm.verticalDimensions.displayHeightVal),callback:function ($$v) {_vm.$set(_vm.verticalDimensions, \"displayHeightVal\", _vm._n($$v))},expression:\"verticalDimensions.displayHeightVal\"}})],1)],1)],1)],1):_vm._e(),(_vm.layoutSettings.layout === 'vertical')?_c('v-expansion-panel',[_c('v-expansion-panel-header',[_c('h3',[_vm._v(\" Box \"),_c('v-tooltip',{attrs:{\"open-delay\":\"100\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({},on),[_vm._v(\" mdi-information \")])]}}],null,false,271524879)},[_c('span',[_c('p',[_vm._v(\"Drawing a box around the area for the attribute\")])])])],1)]),_c('v-expansion-panel-content',[_c('v-row',{staticClass:\"my-2 border\"},[_c('v-row',{attrs:{\"dense\":\"\"}},[_c('v-switch',{staticClass:\"mx-2\",attrs:{\"label\":\"Draw Box\"},model:{value:(_vm.boxSettings.box),callback:function ($$v) {_vm.$set(_vm.boxSettings, \"box\", $$v)},expression:\"boxSettings.box\"}}),(_vm.boxSettings.box)?_c('v-text-field',{staticClass:\"mx-2\",staticStyle:{\"max-width\":\"75px\"},attrs:{\"label\":\"Thickness\",\"type\":\"number\",\"step\":\"1\"},model:{value:(_vm.boxSettings.boxThickness),callback:function ($$v) {_vm.$set(_vm.boxSettings, \"boxThickness\", _vm._n($$v))},expression:\"boxSettings.boxThickness\"}}):_vm._e(),(_vm.boxSettings.box)?_c('v-switch',{staticClass:\"mx-2\",attrs:{\"label\":\"Auto Color\"},model:{value:(_vm.boxSettings.boxColorAuto),callback:function ($$v) {_vm.$set(_vm.boxSettings, \"boxColorAuto\", $$v)},expression:\"boxSettings.boxColorAuto\"}}):_vm._e(),(_vm.boxSettings.box)?_c('div',{staticClass:\"color-box mx-2 mt-5\",class:{ 'edit-color-box': !_vm.boxSettings.boxColorAuto },style:({\n backgroundColor: _vm.computedBoxColor,\n }),on:{\"click\":function($event){return _vm.setEditingColor('box', !_vm.boxSettings.boxColorAuto)}}}):_vm._e()],1),(_vm.boxSettings.box)?_c('v-row',{attrs:{\"dense\":\"\"}},[_c('v-switch',{staticClass:\"mx-2\",attrs:{\"label\":\"Box Background\"},model:{value:(_vm.boxSettings.boxBackgroundSwitch),callback:function ($$v) {_vm.$set(_vm.boxSettings, \"boxBackgroundSwitch\", $$v)},expression:\"boxSettings.boxBackgroundSwitch\"}}),(_vm.boxSettings.boxBackgroundSwitch)?_c('div',{staticClass:\"color-box mx-2 mt-2 edit-color-box\",style:({\n backgroundColor: _vm.boxSettings.boxBackground,\n }),on:{\"click\":function($event){return _vm.setEditingColor('boxBackground', true)}}}):_vm._e(),(_vm.boxSettings.boxBackgroundSwitch)?_c('v-slider',{staticClass:\"mx-2\",attrs:{\"label\":`Opacity (${_vm.boxSettings.boxOpacity})`,\"min\":\"0\",\"max\":\"1\",\"step\":\"0.01\"},model:{value:(_vm.boxSettings.boxOpacity),callback:function ($$v) {_vm.$set(_vm.boxSettings, \"boxOpacity\", _vm._n($$v))},expression:\"boxSettings.boxOpacity\"}}):_vm._e()],1):_vm._e()],1)],1)],1):_vm._e()],1),_c('v-dialog',{attrs:{\"max-width\":\"300\"},model:{value:(_vm.editingColor),callback:function ($$v) {_vm.editingColor=$$v},expression:\"editingColor\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\" Edit color \")]),_c('v-card-text',[_c('v-color-picker',{attrs:{\"hide-inputs\":\"\"},model:{value:(_vm.currentEditColor),callback:function ($$v) {_vm.currentEditColor=$$v},expression:\"currentEditColor\"}})],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"depressed\":\"\",\"text\":\"\"},on:{\"click\":function($event){_vm.editingColor = false}}},[_vm._v(\" Cancel \")]),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":_vm.saveEditingColor}},[_vm._v(\" Save \")])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeRendering.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeRendering.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AttributeRendering.vue?vue&type=template&id=46af3f10\"\nimport script from \"./AttributeRendering.vue?vue&type=script&lang=ts\"\nexport * from \"./AttributeRendering.vue?vue&type=script&lang=ts\"\nimport style0 from \"./AttributeRendering.vue?vue&type=style&index=0&id=46af3f10&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('h3',[_vm._v(\" Attribute Value Colors\")]),_c('v-container',{staticClass:\"attribute-colors\"},[_c('v-row',{staticStyle:{\"border\":\"2px solid white\"},attrs:{\"align\":\"center\",\"justify\":\"center\"}},[_c('v-spacer'),_c('v-col',{staticClass:\"column\",attrs:{\"cols\":\"3\"}},[_vm._v(\" Value \")]),_c('v-col',{staticClass:\"column\",attrs:{\"cols\":\"2\"}},[_vm._v(\" Color \")]),_c('v-spacer')],1),_vm._l((_vm.attributeColors),function(val,key){return _c('v-row',{key:val,staticStyle:{\"border\":\"1px solid white\"},attrs:{\"align\":\"center\",\"justify\":\"center\"}},[_c('v-spacer'),_c('v-col',{staticClass:\"column\",attrs:{\"cols\":\"3\"}},[_c('div',{staticClass:\"value-text\"},[_vm._v(\" \"+_vm._s(key)+\": \")])]),_c('v-col',{staticClass:\"column\",attrs:{\"cols\":\"2\"}},[_c('div',[_c('div',{staticClass:\"color-box mx-2 mt-2 edit-color-box\",style:({\n backgroundColor: val,\n }),on:{\"click\":function($event){return _vm.setEditingColor(key)}}})])]),_c('v-spacer')],1)})],2),_c('v-dialog',{attrs:{\"max-width\":\"300\"},model:{value:(_vm.editingColor),callback:function ($$v) {_vm.editingColor=$$v},expression:\"editingColor\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\" Edit color \")]),_c('v-card-text',[_c('v-color-picker',{attrs:{\"hide-inputs\":\"\"},model:{value:(_vm.currentEditColor),callback:function ($$v) {_vm.currentEditColor=$$v},expression:\"currentEditColor\"}})],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"depressed\":\"\",\"text\":\"\"},on:{\"click\":function($event){_vm.editingColor = false}}},[_vm._v(\" Cancel \")]),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":_vm.saveEditingColor}},[_vm._v(\" Save \")])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeValueColors.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeValueColors.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AttributeValueColors.vue?vue&type=template&id=5131fcf3\"\nimport script from \"./AttributeValueColors.vue?vue&type=script&lang=ts\"\nexport * from \"./AttributeValueColors.vue?vue&type=script&lang=ts\"\nimport style0 from \"./AttributeValueColors.vue?vue&type=style&index=0&id=5131fcf3&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('h3',[_vm._v(\" Attribute Value Colors\")]),_c('v-container',{staticClass:\"attribute-colors\"},[_c('v-row',{staticStyle:{\"border\":\"2px solid white\"},attrs:{\"align\":\"center\",\"justify\":\"center\"}},[_c('v-spacer'),_c('v-col',{staticClass:\"column\",attrs:{\"cols\":\"3\"}},[_vm._v(\" Value \")]),_c('v-col',{staticClass:\"column\",attrs:{\"cols\":\"2\"}},[_vm._v(\" Color \")]),_c('v-spacer'),_c('v-col')],1),_vm._l((_vm.attributeColors),function(item,index){return _c('v-row',{key:`${item.key}_${item.val}`,staticStyle:{\"border\":\"1px solid white\"},attrs:{\"align\":\"center\",\"justify\":\"center\"}},[_c('v-spacer'),_c('v-col',{staticClass:\"column\",attrs:{\"cols\":\"3\"}},[_c('div',{staticClass:\"value-text\"},[_vm._v(\" \"+_vm._s(item.key)+\" \")])]),_c('v-col',{staticClass:\"column\",attrs:{\"cols\":\"2\"}},[_c('div',[_c('div',{staticClass:\"color-box mx-2 mt-2 edit-color-box\",style:({\n backgroundColor: item.val,\n }),on:{\"click\":function($event){return _vm.setEditingColor(index)}}})])]),_c('v-spacer'),_c('v-col',[_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){return _vm.deleteGradient(index)}}},[_c('v-icon',{attrs:{\"color\":\"error\"}},[_vm._v(\" mdi-delete \")])],1)],1)],1)}),_c('v-row',{attrs:{\"dense\":\"\",\"align\":\"center\"}},[_c('v-btn',{staticClass:\"mt-2\",attrs:{\"color\":\"success\"},on:{\"click\":_vm.addColor}},[_vm._v(\" Add Color \")]),_c('svg',{ref:\"gradientSVG\",staticClass:\"ml-3\",attrs:{\"id\":\"gradient-image\",\"width\":\"300\",\"height\":\"30\"}})],1)],2),_c('v-dialog',{attrs:{\"max-width\":\"300\"},model:{value:(_vm.editingColor),callback:function ($$v) {_vm.editingColor=$$v},expression:\"editingColor\"}},[_c('v-card',[_c('v-card-title',[_vm._v(\" Edit color \")]),_c('v-card-text',[_c('v-form',{model:{value:(_vm.validForm),callback:function ($$v) {_vm.validForm=$$v},expression:\"validForm\"}},[_c('v-row',{attrs:{\"dense\":\"\"}},[_c('v-text-field',{attrs:{\"rules\":[\n val => val >= 0 || 'Must be >= 0',\n val => _vm.attributeColors.findIndex((item) => item.key.toString() === val) === -1 || 'Values need to be unique',\n ],\"type\":\"number\",\"label\":\"Value\"},model:{value:(_vm.currentEditKey),callback:function ($$v) {_vm.currentEditKey=$$v},expression:\"currentEditKey\"}})],1),_c('v-row',[_c('v-color-picker',{attrs:{\"hide-inputs\":\"\"},model:{value:(_vm.currentEditColor),callback:function ($$v) {_vm.currentEditColor=$$v},expression:\"currentEditColor\"}})],1)],1)],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"depressed\":\"\",\"text\":\"\"},on:{\"click\":function($event){_vm.editingColor = false}}},[_vm._v(\" Cancel \")]),_c('v-btn',{attrs:{\"color\":\"primary\",\"disabled\":!_vm.validForm},on:{\"click\":_vm.saveEditingColor}},[_vm._v(\" Save \")])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeNumberValueColors.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeNumberValueColors.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AttributeNumberValueColors.vue?vue&type=template&id=8b0b311e\"\nimport script from \"./AttributeNumberValueColors.vue?vue&type=script&lang=ts\"\nexport * from \"./AttributeNumberValueColors.vue?vue&type=script&lang=ts\"\nimport style0 from \"./AttributeNumberValueColors.vue?vue&type=style&index=0&id=8b0b311e&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeEditor.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributeEditor.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AttributeEditor.vue?vue&type=template&id=0a39fae8\"\nimport script from \"./AttributeEditor.vue?vue&type=script&lang=ts\"\nexport * from \"./AttributeEditor.vue?vue&type=script&lang=ts\"\nimport style0 from \"./AttributeEditor.vue?vue&type=style&index=0&id=0a39fae8&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.selectedAttributes)?_c('panel-subsection',[_c('template',{slot:\"header\"},[_c('v-row',{staticClass:\"align-center\",attrs:{\"no-gutters\":\"\"}},[_c('v-col',{attrs:{\"dense\":\"\"}},[_c('b',{staticClass:\"attribute-header\"},[_vm._v(_vm._s(_vm.mode)+\" Attributes\")]),(_vm.mode === 'Detection')?_c('div',{staticClass:\"text-caption\",attrs:{\"no-gutters\":\"\"}},[_vm._v(\" \"+_vm._s(`Frame: ${_vm.frameRef}`)+\" \")]):_vm._e()]),_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"bottom\":\"\",\"max-width\":\"200\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._g({attrs:{\"small\":\"\",\"icon\":\"\",\"disabled\":_vm.readOnlyMode},on:{\"click\":_vm.addAttribute}},on),[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-plus \")])],1)]}}],null,false,3528641628)},[_c('span',[_vm._v(\"Add a new \"+_vm._s(_vm.mode)+\" Attribute\")])]),_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"bottom\":\"\",\"max-width\":\"200\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._g({staticClass:\"ml-2\",attrs:{\"small\":\"\",\"icon\":\"\",\"color\":_vm.activeSettings ? 'accent' : ''},on:{\"click\":function($event){return _vm.toggleActiveSettings()}}},on),[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-eye \")])],1)]}}],null,false,3884864411)},[_c('span',[_vm._v(\"Show/Hide un-used\")])]),_c('tooltip-btn',{attrs:{\"icon\":_vm.sortingMethodIcons[_vm.sortingMode],\"tooltip-text\":\"Sort types by value or alphabetically\"},on:{\"click\":_vm.clickSortToggle}}),_c('tooltip-btn',{attrs:{\"icon\":\"mdi-filter\",\"color\":_vm.filtersActive ? 'primary' : 'default',\"tooltip-text\":_vm.filtersActive\n ? 'Filters are active, click to view' : 'No filters are active, click to edit'},on:{\"click\":_vm.openFilter}}),(_vm.mode === 'Detection')?_c('tooltip-btn',{attrs:{\"icon\":\"mdi-chart-line-variant\",\"color\":_vm.timelineEnabled ? 'primary' : 'default',\"tooltip-text\":\"Timeline Settings for Attributes\"},on:{\"click\":_vm.openTimeline}}):_c('div',{staticClass:\"blank-spacer\"})],1)],1),(_vm.selectedAttributes)?_c('template',{slot:\"scroll-section\"},[(\n _vm.activeSettings || _vm.activeAttributesCount\n )?_c('v-col',{staticClass:\"pa-0\"},_vm._l((_vm.filteredFullAttributes),function(attribute){return _c('span',{key:attribute.name},[(\n _vm.activeSettings\n || _vm.selectedAttributes.attributes[attribute.name] !== undefined\n )?_c('v-row',{staticClass:\"ma-0\",attrs:{\"dense\":\"\",\"align\":\"center\"}},[_c('v-col',{staticClass:\"attribute-name\"},[_c('div',{staticClass:\"type-color-box\",style:({\n backgroundColor: attribute.color,\n })}),_c('span',[_vm._v(_vm._s(attribute.name)+\": \")])]),_c('v-col',{staticClass:\"px-1\"},[(_vm.activeSettings)?_c('AttributeInput',{attrs:{\"datatype\":attribute.datatype,\"name\":attribute.name,\"disabled\":_vm.readOnlyMode,\"values\":attribute.values ? attribute.values : null,\"value\":_vm.getAttributeValue(attribute),\"type-settings\":attribute.editor || null},on:{\"change\":function($event){return _vm.updateAttribute($event, attribute)}}}):_c('div',[(_vm.editIndividual != attribute)?_c('div',{staticClass:\"attribute-item-value\",on:{\"click\":function($event){$event.stopPropagation();return _vm.setEditIndividual(attribute)}}},[_vm._v(\" \"+_vm._s(_vm.getAttributeValue(attribute))+\" \")]):_c('div',[_c('AttributeInput',{attrs:{\"datatype\":attribute.datatype,\"name\":attribute.name,\"disabled\":_vm.readOnlyMode,\"values\":attribute.values ? attribute.values : null,\"value\":_vm.getAttributeValue(attribute),\"type-settings\":attribute.editor || null,\"focus\":\"\"},on:{\"change\":function($event){return _vm.updateAttribute($event, attribute)}}})],1)])],1),(_vm.activeSettings)?_c('v-col',{attrs:{\"cols\":\"1\"}},[_c('v-btn',{attrs:{\"icon\":\"\",\"x-small\":\"\"},on:{\"click\":function($event){return _vm.editAttribute(attribute)}}},[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-cog \")])],1)],1):_vm._e()],1):_vm._e()],1)}),0):_c('v-col',[_c('div',{staticStyle:{\"font-size\":\"0.75em\"}},[_vm._v(\" No \"+_vm._s(_vm.mode)+\" attributes set \")])])],1):_vm._e()],2):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('span',{staticClass:\"d-flex flex-column overflow-hidden panel-subsection\"},[_c('div',{staticClass:\"border-highlight\"},[_vm._t(\"header\")],2),_c('v-row',{staticClass:\"scroll-section shrink\",attrs:{\"dense\":\"\",\"no-gutters\":\"\"}},[_vm._t(\"scroll-section\")],2)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PanelSubsection.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PanelSubsection.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./PanelSubsection.vue?vue&type=template&id=95de4256&scoped=true\"\nimport script from \"./PanelSubsection.vue?vue&type=script&lang=ts\"\nexport * from \"./PanelSubsection.vue?vue&type=script&lang=ts\"\nimport style0 from \"./PanelSubsection.vue?vue&type=style&index=0&id=95de4256&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"95de4256\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributesSubsection.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AttributesSubsection.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AttributesSubsection.vue?vue&type=template&id=8ec6baf0&scoped=true\"\nimport script from \"./AttributesSubsection.vue?vue&type=script&lang=ts\"\nexport * from \"./AttributesSubsection.vue?vue&type=script&lang=ts\"\nimport style0 from \"./AttributesSubsection.vue?vue&type=style&index=0&id=8ec6baf0&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"8ec6baf0\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('panel-subsection',[_c('template',{slot:\"header\"},[_c('v-row',{staticClass:\"align-center\",attrs:{\"no-gutters\":\"\"}},[_c('b',[_vm._v(\"Confidence Pairs:\")]),_c('v-spacer'),_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"bottom\":\"\",\"max-width\":\"200\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._g({staticClass:\"my-1\",attrs:{\"disabled\":\"\",\"outlined\":\"\",\"x-small\":\"\"}},on),[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-plus \")]),_vm._v(\" Pair \")],1)]}}])},[_c('span',[_vm._v(\"Add a new Confidence Pair\")])])],1)],1),_c('template',{slot:\"scroll-section\"},[_c('v-col',{staticClass:\"pa-0\"},_vm._l((_vm.confidencePairs),function(pair,index){return _c('span',{key:index,staticStyle:{\"font-size\":\"0.8em\"}},[_c('v-row',{staticClass:\"ma-0\",attrs:{\"dense\":\"\",\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"1\"}},[_c('div',{staticClass:\"type-color-box\",style:({\n backgroundColor: _vm.typeStylingRef.color(pair[0]),\n })})]),_c('v-col',{attrs:{\"cols\":pair[1] !== 1 && !_vm.disabled ? '7' : '8'}},[_vm._v(\" \"+_vm._s(pair[0])+\" \")]),_c('v-spacer'),_c('v-col',{staticClass:\"type-score shrink mr-1\",attrs:{\"cols\":\"2\"}},[_vm._v(\" \"+_vm._s(pair[1].toFixed(4))+\" \")]),(pair[1] !== 1 && !_vm.disabled)?_c('v-col',{staticClass:\"shrink\"},[_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ bind, on }){return [_c('v-btn',_vm._g(_vm._b({attrs:{\"x-small\":\"\",\"icon\":\"\"},on:{\"click\":function($event){return _vm.$emit('set-type', pair[0])}}},'v-btn',bind,false),on),[_c('v-icon',[_vm._v(\"mdi-check\")])],1)]}}],null,true)},[_c('span',[_vm._v(\"Accept \"+_vm._s(pair[0])+\" as correct type\")])])],1):_vm._e()],1)],1)}),0)],1)],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ConfidenceSubsection.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ConfidenceSubsection.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ConfidenceSubsection.vue?vue&type=template&id=a165c50a\"\nimport script from \"./ConfidenceSubsection.vue?vue&type=script&lang=ts\"\nexport * from \"./ConfidenceSubsection.vue?vue&type=script&lang=ts\"\nimport style0 from \"./ConfidenceSubsection.vue?vue&type=style&index=0&id=a165c50a&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TrackDetailsPanel.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TrackDetailsPanel.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./TrackDetailsPanel.vue?vue&type=template&id=2b8c88d0&scoped=true\"\nimport script from \"./TrackDetailsPanel.vue?vue&type=script&lang=ts\"\nexport * from \"./TrackDetailsPanel.vue?vue&type=script&lang=ts\"\nimport style0 from \"./TrackDetailsPanel.vue?vue&type=style&index=0&id=2b8c88d0&prod&lang=scss&scoped=true\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2b8c88d0\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"TrackSettings\"},[_c('v-card',{staticClass:\"pa-2\",attrs:{\"outlined\":\"\",\"width\":\"300\",\"color\":\"blue-grey darken-3\"}},[_c('div',{staticClass:\"subheading\"},[_vm._v(\" New Annotation Settings \")]),_c('v-row',{attrs:{\"align\":\"end\",\"dense\":\"\"}},[_c('v-col',{staticClass:\"mx-2 px-0\",attrs:{\"cols\":\"2\"}},[_vm._v(\" Mode: \")]),_c('v-col',[_c('v-select',{staticClass:\"ml-0 pa-0\",attrs:{\"x-small\":\"\",\"items\":_vm.modes,\"dense\":\"\",\"hide-details\":\"\"},model:{value:(_vm.clientSettings.trackSettings.newTrackSettings.mode),callback:function ($$v) {_vm.$set(_vm.clientSettings.trackSettings.newTrackSettings, \"mode\", $$v)},expression:\"clientSettings.trackSettings.newTrackSettings.mode\"}})],1),_c('v-col',{attrs:{\"cols\":\"2\",\"align\":\"right\"}},[_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"bottom\":\"\",\"max-width\":\"200\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({attrs:{\"small\":\"\"}},on),[_vm._v(\" mdi-help \")])]}}])},[_c('span',[_vm._v(\" \"+_vm._s(_vm.help.mode[_vm.clientSettings.trackSettings.newTrackSettings.mode])+\" \")])])],1)],1),_c('v-row',{staticClass:\"mb-2\",attrs:{\"align\":\"end\",\"dense\":\"\"}},[_c('v-col',{staticClass:\"mx-2\",attrs:{\"cols\":\"2\"}},[_vm._v(\" Type: \")]),_c('v-col',[_c('v-combobox',{staticClass:\"ml-0 pa-0\",attrs:{\"x-small\":\"\",\"items\":_vm.typeList,\"dense\":\"\",\"hide-details\":\"\"},model:{value:(_vm.clientSettings.trackSettings.newTrackSettings.type),callback:function ($$v) {_vm.$set(_vm.clientSettings.trackSettings.newTrackSettings, \"type\", $$v)},expression:\"clientSettings.trackSettings.newTrackSettings.type\"}})],1),_c('v-col',{attrs:{\"cols\":\"2\",\"align\":\"right\"}},[_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"max-width\":\"200\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({attrs:{\"small\":\"\"}},on),[_vm._v(\" mdi-help \")])]}}])},[_c('span',[_vm._v(_vm._s(_vm.help.type))])])],1)],1),(_vm.clientSettings.trackSettings.newTrackSettings.mode === 'Track')?[_c('v-row',[_c('v-col',{staticClass:\"py-1\"},[_c('v-switch',{staticClass:\"my-0 ml-1 pt-0\",attrs:{\"dense\":\"\",\"label\":\"Advance Frame\",\"hide-details\":\"\"},model:{value:(\n _vm.clientSettings.trackSettings.newTrackSettings.modeSettings.Track.autoAdvanceFrame),callback:function ($$v) {_vm.$set(_vm.clientSettings.trackSettings.newTrackSettings.modeSettings.Track, \"autoAdvanceFrame\", $$v)},expression:\"\\n clientSettings.trackSettings.newTrackSettings.modeSettings.Track.autoAdvanceFrame\"}})],1),_c('v-col',{staticClass:\"py-1 shrink\",attrs:{\"align\":\"right\"}},[_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"max-width\":\"200\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({attrs:{\"small\":\"\"}},on),[_vm._v(\" mdi-help \")])]}}],null,false,1282254411)},[_c('span',[_vm._v(_vm._s(_vm.help.autoAdvanceFrame))])])],1)],1),_c('v-row',[_c('v-col',{staticClass:\"py-1\"},[_c('v-switch',{staticClass:\"my-0 ml-1 pt-0\",attrs:{\"dense\":\"\",\"label\":\"Interpolate\",\"hide-details\":\"\"},model:{value:(\n _vm.clientSettings.trackSettings.newTrackSettings.modeSettings.Track.interpolate),callback:function ($$v) {_vm.$set(_vm.clientSettings.trackSettings.newTrackSettings.modeSettings.Track, \"interpolate\", $$v)},expression:\"\\n clientSettings.trackSettings.newTrackSettings.modeSettings.Track.interpolate\"}})],1),_c('v-col',{staticClass:\"py-1 shrink\",attrs:{\"align\":\"right\"}},[_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"max-width\":\"200\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({attrs:{\"small\":\"\"}},on),[_vm._v(\" mdi-help \")])]}}],null,false,1282254411)},[_c('span',[_vm._v(_vm._s(_vm.help.interpolate))])])],1)],1)]:_vm._e(),(_vm.clientSettings.trackSettings.newTrackSettings.mode === 'Detection')?_c('v-row',[_c('v-col',{staticClass:\"py-1\"},[_c('v-switch',{staticClass:\"my-0 ml-1 pt-0\",attrs:{\"dense\":\"\",\"label\":\"Continuous\",\"hide-details\":\"\"},model:{value:(\n _vm.clientSettings.trackSettings.newTrackSettings.modeSettings.Detection.continuous),callback:function ($$v) {_vm.$set(_vm.clientSettings.trackSettings.newTrackSettings.modeSettings.Detection, \"continuous\", $$v)},expression:\"\\n clientSettings.trackSettings.newTrackSettings.modeSettings.Detection.continuous\"}})],1),_c('v-col',{staticClass:\"py-1 shrink\",attrs:{\"align\":\"right\"}},[_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"max-width\":\"200\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({attrs:{\"small\":\"\"}},on),[_vm._v(\" mdi-help \")])]}}],null,false,1282254411)},[_c('span',[_vm._v(_vm._s(_vm.help.continuous))])])],1)],1):_vm._e(),_c('v-divider',{staticClass:\"my-2\"}),_c('div',{staticClass:\"subheading\"},[_vm._v(\" Deletion Settings \")]),_c('v-row',{attrs:{\"align\":\"end\",\"dense\":\"\"}},[_c('v-col',{staticClass:\"py-1\"},[_c('v-switch',{staticClass:\"my-0 ml-1 pt-0\",attrs:{\"dense\":\"\",\"label\":\"Prompt User\",\"hide-details\":\"\"},model:{value:(_vm.clientSettings.trackSettings.deletionSettings.promptUser),callback:function ($$v) {_vm.$set(_vm.clientSettings.trackSettings.deletionSettings, \"promptUser\", $$v)},expression:\"clientSettings.trackSettings.deletionSettings.promptUser\"}})],1),_c('v-col',{staticClass:\"py-1\",attrs:{\"cols\":\"2\",\"align\":\"right\"}},[_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"max-width\":\"200\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({attrs:{\"small\":\"\"}},on),[_vm._v(\" mdi-help \")])]}}])},[_c('span',[_vm._v(_vm._s(_vm.help.prompt))])])],1)],1)],2)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TrackSettingsPanel.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TrackSettingsPanel.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./TrackSettingsPanel.vue?vue&type=template&id=5c5ae6ee\"\nimport script from \"./TrackSettingsPanel.vue?vue&type=script&lang=ts\"\nexport * from \"./TrackSettingsPanel.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('v-menu',{attrs:{\"nudge-bottom\":28,\"close-on-content-click\":false},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"mx-2\",attrs:{\"icon\":\"\",\"small\":\"\"}},'v-btn',attrs,false),on),[_c('v-icon',{attrs:{\"small\":\"\",\"color\":_vm.active ? 'accent' : 'default'}},[_vm._v(\" mdi-cog \")])],1)]}}]),model:{value:(_vm.active),callback:function ($$v) {_vm.active=$$v},expression:\"active\"}},[_c('v-card',{staticClass:\"pa-2 pr-4\",attrs:{\"outlined\":\"\",\"color\":\"blue-grey darken-3\"}},[_vm._v(\" Type Settings \"),_c('v-row',[_c('v-col',[_c('v-btn',{attrs:{\"dense\":\"\",\"small\":\"\",\"outlined\":\"\",\"hide-details\":\"\"},on:{\"click\":function($event){_vm.importDialog = true}}},[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-plus \")]),_vm._v(\" Types \")],1)],1),_c('v-col',{attrs:{\"cols\":\"2\",\"align\":\"right\",\"justify\":\"center\"}},[_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"bottom\":\"\",\"max-width\":\"200\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({attrs:{\"small\":\"\"}},on),[_vm._v(\" mdi-help \")])]}}])},[_c('span',[_vm._v(_vm._s(_vm.help.import))])])],1)],1),_c('v-row',[_c('v-col',{staticClass:\"py-1\"},[_c('v-switch',{staticClass:\"my-0 ml-1 pt-0\",attrs:{\"dense\":\"\",\"label\":\"Show Empty\",\"hide-details\":\"\"},model:{value:(_vm.clientSettings.typeSettings.showEmptyTypes),callback:function ($$v) {_vm.$set(_vm.clientSettings.typeSettings, \"showEmptyTypes\", $$v)},expression:\"clientSettings.typeSettings.showEmptyTypes\"}})],1),_c('v-col',{staticClass:\"py-1\",attrs:{\"cols\":\"2\",\"align\":\"right\"}},[_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"bottom\":\"\",\"max-width\":\"200\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({attrs:{\"small\":\"\"}},on),[_vm._v(\" mdi-help \")])]}}])},[_c('span',[_vm._v(_vm._s(_vm.help.showEmptyTypes))])])],1)],1),_c('v-row',[_c('v-col',{staticClass:\"py-1\"},[_c('v-switch',{staticClass:\"my-0 ml-1 pt-0\",attrs:{\"label\":\"Lock Types\",\"dense\":\"\",\"hide-details\":\"\"},model:{value:(_vm.clientSettings.typeSettings.lockTypes),callback:function ($$v) {_vm.$set(_vm.clientSettings.typeSettings, \"lockTypes\", $$v)},expression:\"clientSettings.typeSettings.lockTypes\"}})],1),_c('v-col',{staticClass:\"py-1\",attrs:{\"cols\":\"2\",\"align\":\"right\"}},[_c('v-tooltip',{attrs:{\"open-delay\":\"200\",\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({attrs:{\"small\":\"\"}},on),[_vm._v(\" mdi-help \")])]}}])},[_c('span',[_vm._v(_vm._s(_vm.help.lockTypes))])])],1)],1)],1)],1),_c('v-dialog',{attrs:{\"width\":\"350\"},model:{value:(_vm.importDialog),callback:function ($$v) {_vm.importDialog=$$v},expression:\"importDialog\"}},[_c('div',[_c('v-card',[_c('v-card-title',[_vm._v(\" Types \"),_c('v-spacer'),_c('v-btn',{attrs:{\"icon\":\"\",\"small\":\"\"},on:{\"click\":function($event){_vm.importDialog = false}}},[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\" mdi-close \")])],1)],1),_c('v-card-text',[_vm._v(\" \"+_vm._s(_vm.importInstructions)+\" \"),_c('v-form',[_c('v-row',{staticClass:\"align-center\"},[_c('v-col',[_c('v-textarea',{attrs:{\"outlined\":\"\",\"no-resize\":\"\",\"rows\":\"10\"},model:{value:(_vm.importTypes),callback:function ($$v) {_vm.importTypes=$$v},expression:\"importTypes\"}})],1)],1)],1),_c('v-alert',{attrs:{\"text\":\"\",\"color\":\"error\"}},[_vm._v(\" Note: You will have to check 'View Unused' in the settings to see new empty types \")])],1),_c('v-card-actions',[_c('v-spacer'),_c('v-btn',{attrs:{\"depressed\":\"\",\"text\":\"\"},on:{\"click\":function($event){_vm.importDialog = false}}},[_vm._v(\" Cancel \")]),_c('v-btn',{attrs:{\"color\":\"primary\",\"depressed\":\"\"},on:{\"click\":_vm.confirmImport}},[_vm._v(\" Add \")])],1)],1)],1)])],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TypeSettingsPanel.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./TypeSettingsPanel.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./TypeSettingsPanel.vue?vue&type=template&id=73a3083e\"\nimport script from \"./TypeSettingsPanel.vue?vue&type=script&lang=ts\"\nexport * from \"./TypeSettingsPanel.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Sidebar.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Sidebar.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Sidebar.vue?vue&type=template&id=2782561c&scoped=true\"\nimport script from \"./Sidebar.vue?vue&type=script&lang=ts\"\nexport * from \"./Sidebar.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Sidebar.vue?vue&type=style&index=0&id=2782561c&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2782561c\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.primaryFilters.length)?_c('div',{staticClass:\"filter-container pb-2\"},[_c('div',{staticClass:\"mb-2\",attrs:{\"id\":\"AttributeFilters\"}},[_c('v-row',{staticClass:\"mx-2 my-0.5\",attrs:{\"dense\":\"\"}},[_c('v-btn',{staticClass:\"mx-1\",attrs:{\"icon\":\"\",\"x-small\":\"\"},on:{\"click\":function($event){_vm.expanded = !_vm.expanded}}},[_c('v-icon',[_vm._v(_vm._s(_vm.expanded ? 'mdi-chevron-up' : 'mdi-chevron-down'))])],1),_c('b',[_vm._v(\"Track Attribute Filters\")]),_c('v-badge',{attrs:{\"overlap\":\"\",\"value\":_vm.count,\"bottom\":\"\",\"color\":\"primary\",\"content\":_vm.count,\"offset-x\":\"12\",\"offset-y\":\"21\"}},[_c('v-tooltip',{attrs:{\"open-delay\":\"50\",\"bottom\":\"\",\"max-width\":\"200\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-icon',_vm._g({},on),[_vm._v(\" mdi-filter \")])]}}],null,false,1747566211)},[_c('span',[_vm._v(\" There are \"+_vm._s(_vm.count)+\" filters active \")])])],1),_c('v-spacer'),_c('v-btn',{attrs:{\"icon\":\"\",\"x-small\":\"\"},on:{\"click\":function($event){return _vm.toggle('AttributeTrackFilters')}}},[_c('v-icon',[_vm._v(\"mdi-cog\")])],1)],1)],1),(_vm.expanded)?_c('div',{staticClass:\"filterList\"},_vm._l((_vm.primaryFilters),function(item,index){return _c('div',{key:`filter_${item}`},[_c('attribute-track-filter',{staticClass:\"mx-2\",attrs:{\"filter-index\":item}}),(index !== _vm.primaryFilters.length - 1)?_c('v-divider',{staticClass:\"ma-2\"}):_vm._e()],1)}),0):_vm._e()]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PrimaryAttributeTrackFilter.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./PrimaryAttributeTrackFilter.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./PrimaryAttributeTrackFilter.vue?vue&type=template&id=1f24c920&scoped=true\"\nimport script from \"./PrimaryAttributeTrackFilter.vue?vue&type=script&lang=ts\"\nexport * from \"./PrimaryAttributeTrackFilter.vue?vue&type=script&lang=ts\"\nimport style0 from \"./PrimaryAttributeTrackFilter.vue?vue&type=style&index=0&id=1f24c920&prod&scoped=true&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1f24c920\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Viewer.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Viewer.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Viewer.vue?vue&type=template&id=32873e6e\"\nimport script from \"./Viewer.vue?vue&type=script&lang=ts\"\nexport * from \"./Viewer.vue?vue&type=script&lang=ts\"\nimport style0 from \"./Viewer.vue?vue&type=style&index=0&id=32873e6e&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-menu',_vm._b({attrs:{\"close-on-content-click\":false,\"nudge-width\":120,\"max-width\":\"280\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: menuOn }){return [_c('v-tooltip',{attrs:{\"bottom\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on: tooltipOn }){return [_c('v-btn',_vm._g(_vm._b({staticClass:\"ma-0\",attrs:{\"disabled\":!_vm.datasetId || _vm.processing}},'v-btn',_vm.buttonOptions,false),{ ...tooltipOn, ...menuOn }),[_c('div',[_c('v-icon',[_vm._v(\" \"+_vm._s(_vm.processing ? 'mdi-spin mdi-sync' : 'mdi-application-import')+\" \")]),_c('span',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.$vuetify.breakpoint.mdAndDown || _vm.buttonOptions.block),expression:\"!$vuetify.breakpoint.mdAndDown || buttonOptions.block\"}],staticClass:\"pl-1\"},[_vm._v(\" Import \")])],1)])]}}],null,true)},[_c('span',[_vm._v(\" Import Annotation Data \")])])]}}]),model:{value:(_vm.menuOpen),callback:function ($$v) {_vm.menuOpen=$$v},expression:\"menuOpen\"}},'v-menu',_vm.menuOptions,false),[[(_vm.readOnlyMode)?_c('v-card',[_c('v-card-title',[_vm._v(\" Read only Mode\")]),_c('v-card-text',[_vm._v(\" This Dataset is in ReadOnly Mode. You cannot import annotations for this dataset. \")])],1):_c('v-card',{attrs:{\"outlined\":\"\"}},[_c('v-card-title',[_vm._v(\" Import Formats \")]),_c('v-card-text',[_vm._v(\" Multiple Data types can be imported: \"),_c('ul',[_c('li',[_vm._v(\" Viame CSV Files \")]),_c('li',[_vm._v(\" DIVE Annotation JSON \")]),_c('li',[_vm._v(\" DIVE Configuration JSON\")]),_c('li',[_vm._v(\" KWCOCO JSON files \")])]),_c('a',{attrs:{\"href\":\"https://kitware.github.io/dive/DataFormats/\",\"target\":\"_blank\"}},[_vm._v(\"Data Format Documentation\")])]),_c('v-container',[_c('v-col',[_c('v-row',[_c('v-btn',{attrs:{\"depressed\":\"\",\"block\":\"\",\"disabled\":!_vm.datasetId || _vm.processing},on:{\"click\":_vm.openUpload}},[_vm._v(\" Import \")])],1),(_vm.currentSet !== '')?_c('v-row',{staticClass:\"mt-3\",attrs:{\"dense\":\"\"}},[_c('v-combobox',{attrs:{\"items\":_vm.sets,\"chips\":\"\",\"label\":\"Annotation Set\",\"outlined\":\"\",\"small\":\"\"},scopedSlots:_vm._u([{key:\"selection\",fn:function({ attrs, item, selected }){return [_c('v-chip',_vm._b({attrs:{\"small\":\"\",\"input-value\":selected,\"outlined\":\"\"}},'v-chip',attrs,false),[_c('strong',[_vm._v(_vm._s(item))]),_vm._v(\"  \")])]}}],null,false,688174247),model:{value:(_vm.currentSet),callback:function ($$v) {_vm.currentSet=$$v},expression:\"currentSet\"}})],1):_vm._e(),_c('v-row',[_c('v-checkbox',{attrs:{\"input-value\":!_vm.additive,\"label\":\"Overwrite\"},on:{\"change\":function($event){_vm.additive = !$event}}})],1),(_vm.additive)?_c('div',[(_vm.additive)?_c('div',{staticClass:\"pa-2\"},[_vm._v(\" Imported annotations will be added to existing annotations. \")]):_vm._e(),_c('div',{staticClass:\"pa-2\"},[_vm._v(\" The types can be modified to have a prepended value for comparison. \")]),_c('v-text-field',{attrs:{\"label\":\"Prepend to types\",\"clearable\":\"\"},model:{value:(_vm.additivePrepend),callback:function ($$v) {_vm.additivePrepend=$$v},expression:\"additivePrepend\"}})],1):_vm._e()],1)],1)],1)]],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImportAnnotations.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ImportAnnotations.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ImportAnnotations.vue?vue&type=template&id=178e4969\"\nimport script from \"./ImportAnnotations.vue?vue&type=script&lang=ts\"\nexport * from \"./ImportAnnotations.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[(_vm.context.state.active !== null)?_c('v-card',{staticClass:\"d-flex flex-column sidebar\",staticStyle:{\"z-index\":\"1\"},attrs:{\"width\":_vm.width,\"tile\":\"\",\"outlined\":\"\"}},[_c('div',{staticClass:\"d-flex align-center mx-1\"},[_c('v-select',{staticStyle:{\"max-width\":\"240px\"},attrs:{\"items\":_vm.options,\"value\":_vm.context.state.active,\"dense\":\"\",\"solo\":\"\",\"flat\":\"\",\"hide-details\":\"\"},on:{\"change\":function($event){return _vm.context.toggle($event)}}}),_c('v-spacer'),_c('v-btn',{staticClass:\"shrink\",attrs:{\"icon\":\"\",\"color\":\"white\"},on:{\"click\":function($event){return _vm.context.toggle(null)}}},[_c('v-icon',[_vm._v(\" mdi-close \")])],1)],1),_c('div',{staticClass:\"sidebar-content\"},[_vm._t(\"default\",null,null,{ name: _vm.context.state.active, subCategory: _vm.context.state.subCategory })],2)]):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SidebarContext.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./SidebarContext.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./SidebarContext.vue?vue&type=template&id=74ae075e&scoped=true\"\nimport script from \"./SidebarContext.vue?vue&type=script&lang=ts\"\nexport * from \"./SidebarContext.vue?vue&type=script&lang=ts\"\nimport style0 from \"./SidebarContext.vue?vue&type=style&index=0&id=74ae075e&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"74ae075e\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.brandData.alertMessage)?_c('v-dialog',{attrs:{\"max-width\":\"600px\",\"overlay-opacity\":\"0.90\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({attrs:{\"icon\":\"\",\"dark\":\"\",\"color\":\"warning\"}},'v-btn',attrs,false),on),[_c('v-icon',{attrs:{\"large\":\"\"}},[_vm._v(\" mdi-alert-circle \")])],1)]}}],null,false,490533294),model:{value:(_vm.dialog),callback:function ($$v) {_vm.dialog=$$v},expression:\"dialog\"}},[_c('v-card',{staticClass:\"d-flex justify-space-between align-center pa-4\",attrs:{\"color\":\"warning\"}},[_vm._v(\" \"+_vm._s(_vm.brandData.alertMessage)+\" \"),_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){_vm.dialog = false}}},[_c('v-icon',[_vm._v(\" mdi-close \")])],1)],1)],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ViewerAlert.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ViewerAlert.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ViewerAlert.vue?vue&type=template&id=738e2adc\"\nimport script from \"./ViewerAlert.vue?vue&type=script&lang=ts\"\nexport * from \"./ViewerAlert.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[(_vm.revisionId)?_c('v-alert',{attrs:{\"type\":\"info\",\"tile\":\"\"}},[_c('h4',[_vm._v(\"Inspecting revision \"+_vm._s(_vm.revisionId)+\".\")]),_vm._v(\" Past revisions are not editable. Return to latest or \"),_c('b',[_vm._v(\"clone\")]),_vm._v(\" this revision to edit. \"),_c('v-btn',{attrs:{\"x-small\":\"\",\"depressed\":\"\",\"to\":{\n name: 'viewer',\n params: { id: _vm.datasetId },\n }}},[_vm._v(\" Return to newest revision \")])],1):_c('v-alert',{attrs:{\"color\":\"grey darken-3\",\"tile\":\"\"}},[_vm._v(\" Choose a previous revision to inspect in read-only mode. \")]),(_vm.revisions.length)?_c('v-list',{attrs:{\"two-line\":\"\"}},[_vm._l((_vm.revisions),function(revision){return _c('v-list-item',{key:revision.revision,attrs:{\"input-value\":revision.revision === _vm.revisionId},on:{\"click\":function($event){return _vm.checkout(revision.revision)}}},[_c('v-list-item-content',[_c('v-list-item-title',[_c('v-tooltip',{attrs:{\"bottom\":\"\",\"open-delay\":\"500\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('span',_vm._g(_vm._b({domProps:{\"textContent\":_vm._s(`${revision.revision}: ${revision.description}`)}},'span',attrs,false),on))]}}],null,true)},[_c('span',[_vm._v(_vm._s(revision.description))])])],1),(revision.set)?_c('v-list-item-title',[_c('v-chip',{attrs:{\"small\":\"\",\"outlined\":\"\",\"color\":\"red\"}},[_vm._v(\" \"+_vm._s(revision.set)+\" \")])],1):_vm._e(),_c('v-list-item-subtitle',[_vm._v(\" by \"),_c('router-link',{attrs:{\"to\":`/user/${revision.author_id}`}},[_vm._v(\" \"+_vm._s(revision.author_name)+\" \")])],1),_c('v-list-item-subtitle',{domProps:{\"textContent\":_vm._s((new Date(revision.created)).toLocaleString())}})],1),_c('v-list-item-action',[_c('v-list-item-action-text',{domProps:{\"textContent\":_vm._s(`+${revision.additions} -${revision.deletions}`)}})],1)],1)}),_c('span',{directives:[{name:\"intersect\",rawName:\"v-intersect.quiet\",value:(_vm.loadNext),expression:\"loadNext\",modifiers:{\"quiet\":true}}]}),(_vm.revisions.length < _vm.totalCount)?_c('a',{staticClass:\"px-4\",on:{\"click\":_vm.loadNext}},[_vm._v(\" Load More \")]):_vm._e()],2):(!_vm.loading && _vm.count > 0)?_c('v-alert',{attrs:{\"type\":\"info\",\"tile\":\"\"}},[_vm._v(\" No revision history yet. A revision is created each time you press save \"),_c('v-icon',[_vm._v(\"mdi-content-save\")]),_vm._v(\". \")],1):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RevisionHistory.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./RevisionHistory.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./RevisionHistory.vue?vue&type=template&id=21fb8af4\"\nimport script from \"./RevisionHistory.vue?vue&type=script&lang=ts\"\nexport * from \"./RevisionHistory.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('div',{staticClass:\"px-4 pt-2 text-body-1\"},[_vm._v(\" Available Sets \")]),_c('v-list',[_c('v-list-item',[_c('v-row',{attrs:{\"dense\":\"\",\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"8\"}},[_vm._v(\" Set \")]),_c('v-col',{attrs:{\"cols\":\"4\"}},[_vm._v(\" Compare \")])],1)],1),_vm._l((_vm.computedSets),function(set,index){return _c('v-list-item',{key:set,class:{ border: (set === _vm.currentSet || (!_vm.currentSet && set === 'default')) }},[_c('v-row',{attrs:{\"dense\":\"\",\"align\":\"center\"}},[_c('v-col',{attrs:{\"cols\":\"8\"}},[_c('v-chip',{attrs:{\"outlined\":\"\",\"small\":\"\",\"color\":_vm.typeStyling.annotationSetColor(set)},on:{\"click\":function($event){return _vm.selectSet(set)}}},[_c('span',[_vm._v(\" \"+_vm._s(`${set}${set === _vm.currentSet || (!_vm.currentSet && set === 'default') ? '*' : ''}`)+\" \")])])],1),_c('v-col',{attrs:{\"cols\":\"4\"}},[(_vm.compareChecks.length)?_c('v-switch',{attrs:{\"value\":_vm.compareChecks[index].checked,\"disabled\":_vm.selectedSet === _vm.compareChecks[index].name,\"dense\":\"\"},on:{\"change\":function($event){return _vm.selectForComparison(set)}}}):_vm._e()],1)],1)],1)})],2),_c('v-divider'),(_vm.selectedComparisons.length)?_c('div',[_c('p',[_vm._v(\" Compare \"+_vm._s(_vm.selectedComparisons.join(', '))+\" sets\")]),_c('v-btn',{attrs:{\"color\":\"primary\"},on:{\"click\":function($event){return _vm.launchComparison()}}},[_vm._v(\" Compare \")]),_c('v-divider')],1):_vm._e(),_c('v-expansion-panels',[_c('v-expansion-panel',[_c('v-expansion-panel-header',[_vm._v(\" Add New Set\")]),_c('v-expansion-panel-content',[_c('p',[_vm._v(\" Add a new Set with a custom name that can be used to reference it in the future. 'default' is a reserved set which can't be used. Adding a new set will use the current annotations and copy them to the new set. \")]),_c('v-form',{model:{value:(_vm.validForm),callback:function ($$v) {_vm.validForm=$$v},expression:\"validForm\"}},[_c('v-text-field',{attrs:{\"label\":\"Set\",\"rules\":[\n v => !_vm.sets.includes(v) || 'Using a reserved set',\n v => !!v || 'requires at least one character',\n ]},model:{value:(_vm.newSet),callback:function ($$v) {_vm.newSet=$$v},expression:\"newSet\"}}),_c('v-btn',{attrs:{\"disabled\":!_vm.validForm},on:{\"click\":function($event){return _vm.addSet()}}},[_vm._v(\" Add Set \")])],1)],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AnnotationSets.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./AnnotationSets.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./AnnotationSets.vue?vue&type=template&id=450ed84c\"\nimport script from \"./AnnotationSets.vue?vue&type=script&lang=ts\"\nexport * from \"./AnnotationSets.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ViewerLoader.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./ViewerLoader.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./ViewerLoader.vue?vue&type=template&id=364a8370\"\nimport script from \"./ViewerLoader.vue?vue&type=script&lang=ts\"\nexport * from \"./ViewerLoader.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('GirderFileManager',{ref:\"fileManager\",attrs:{\"selectable\":!_vm.getters['Location/locationIsViameFolder'],\"new-folder-enabled\":!_vm.locationStore.selected.length && !_vm.getters['Location/locationIsViameFolder'],\"location\":_vm.locationStore.location,\"items-per-page\":_vm.clientSettings.rowsPerPage,\"items-per-page-options\":_vm.itemsPerPageOptions},on:{\"update:itemsPerPage\":function($event){return _vm.$set(_vm.clientSettings, \"rowsPerPage\", $event)},\"update:items-per-page\":function($event){return _vm.$set(_vm.clientSettings, \"rowsPerPage\", $event)},\"update:location\":function($event){return _vm.setLocation($event)}},scopedSlots:_vm._u([{key:\"headerwidget\",fn:function(){return [(_vm.shouldShowUpload)?_c('v-dialog',{attrs:{\"max-width\":\"800px\",\"persistent\":_vm.uploading},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on }){return [_c('v-btn',_vm._g({staticClass:\"ma-0\",attrs:{\"text\":\"\",\"small\":\"\"}},on),[_c('v-icon',{attrs:{\"left\":\"\",\"color\":\"accent\"}},[_vm._v(\" mdi-file-upload \")]),_vm._v(\" Upload \")],1)]}}],null,false,1281488740),model:{value:(_vm.uploaderDialog),callback:function ($$v) {_vm.uploaderDialog=$$v},expression:\"uploaderDialog\"}},[_c('Upload',{attrs:{\"location\":_vm.locationStore.location},on:{\"update:uploading\":_vm.updateUploading,\"close\":function($event){_vm.uploaderDialog = false}}})],1):_vm._e()]},proxy:true},{key:\"row\",fn:function({ item }){return [_c('span',[_vm._v(_vm._s(item.name))]),(_vm.getters['Jobs/datasetRunningState'](item._id))?_c('v-icon',{staticClass:\"rotate\",attrs:{\"color\":\"warning\"}},[_vm._v(\" mdi-autorenew \")]):_vm._e(),(_vm.isAnnotationFolder(item))?_c('v-btn',{staticClass:\"ml-2\",attrs:{\"x-small\":\"\",\"color\":\"primary\",\"depressed\":\"\",\"to\":{ name: 'viewer', params: { id: item._id } }}},[_vm._v(\" Launch Annotator \")]):_vm._e(),((item.foreign_media_id))?_c('v-chip',{staticClass:\"my-0 mx-3\",attrs:{\"color\":\"white\",\"x-small\":\"\",\"outlined\":\"\",\"disabled\":\"\"}},[_vm._v(\" cloned \")]):_vm._e(),((item.meta && item.meta.published))?_c('v-chip',{staticClass:\"my-0 mx-3\",attrs:{\"color\":\"green\",\"x-small\":\"\",\"outlined\":\"\",\"disabled\":\"\"}},[_vm._v(\" published \")]):_vm._e()]}}]),model:{value:(_vm.locationStore.selected),callback:function ($$v) {_vm.$set(_vm.locationStore, \"selected\", $$v)},expression:\"locationStore.selected\"}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DataBrowser.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./DataBrowser.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./DataBrowser.vue?vue&type=template&id=cd6e4026\"\nimport script from \"./DataBrowser.vue?vue&type=script&lang=ts\"\nexport * from \"./DataBrowser.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.summaryList,\"expanded\":_vm.expanded,\"items-per-page\":_vm.clientSettings.rowsPerPage,\"footer-props\":{ itemsPerPageOptions: _vm.itemsPerPageOptions },\"item-key\":\"_id\",\"show-expand\":\"\"},on:{\"update:expanded\":function($event){_vm.expanded=$event},\"update:itemsPerPage\":function($event){return _vm.$set(_vm.clientSettings, \"rowsPerPage\", $event)},\"update:items-per-page\":function($event){return _vm.$set(_vm.clientSettings, \"rowsPerPage\", $event)}},scopedSlots:_vm._u([{key:\"expanded-item\",fn:function({ headers, item }){return [_c('td',{attrs:{\"colspan\":headers.length}},_vm._l((item.datasets),function(dataset){return _c('v-chip',{key:`${dataset.id}-${item._id}`,staticClass:\"ma-1 float-left\",attrs:{\"small\":\"\",\"color\":dataset.color,\"text-color\":\"#000000\",\"depressed\":\"\",\"to\":{ name: 'viewer', params: { id: dataset.id } }}},[_vm._v(\" \"+_vm._s(dataset.name)+\" \")])}),1)]}}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Summary.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/babel-loader/lib/index.js!../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??clonedRuleSet-41.use[2]!../../../node_modules/@vue/vue-loader-v15/lib/index.js??vue-loader-options!./Summary.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./Summary.vue?vue&type=template&id=71150cbb\"\nimport script from \"./Summary.vue?vue&type=script&lang=ts\"\nexport * from \"./Summary.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/vue-loader-v15/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 Vue from 'vue';\nimport Router from 'vue-router';\nimport girderRest from './plugins/girder';\nimport Home from './views/Home.vue';\nimport Jobs from './views/Jobs.vue';\nimport Login from './views/Login.vue';\nimport RouterPage from './views/RouterPage.vue';\nimport AdminPage from './views/AdminPage.vue';\nimport ViewerLoader from './views/ViewerLoader.vue';\nimport DataShared from './views/DataShared.vue';\nimport DataBrowser from './views/DataBrowser.vue';\nimport Summary from './views/Summary.vue';\nVue.use(Router);\n// eslint-disable-next-line @typescript-eslint/ban-types\nfunction beforeEnter(to, from, next) {\n if (!girderRest.user) {\n next('/login');\n }\n else {\n next();\n }\n}\n// eslint-disable-next-line @typescript-eslint/ban-types\nfunction adminGuard(to, from, next) {\n if (!girderRest.user.admin) {\n next('/');\n }\n else {\n next();\n }\n}\nfunction toArray(data) {\n if (data && typeof data === 'string') {\n return [data];\n }\n return data;\n}\nconst router = new Router({\n routes: [\n {\n path: '/login',\n name: 'login',\n component: Login,\n },\n {\n path: '/viewer/:id',\n name: 'viewer',\n component: ViewerLoader,\n props: (route) => ({ ...route.params, comparisonSets: toArray(route.query.comparisonSets) }),\n beforeEnter,\n },\n {\n path: '/viewer/:id/set/:set',\n name: 'set viewer',\n component: ViewerLoader,\n props: (route) => ({ ...route.params, comparisonSets: toArray(route.query.comparisonSets) }),\n beforeEnter,\n },\n {\n path: '/viewer/:id/revision/:revision',\n name: 'revision viewer',\n component: ViewerLoader,\n props: true,\n beforeEnter,\n },\n {\n path: '/viewer/:id/set/:set/revision/:revision',\n name: 'revision set viewer',\n component: ViewerLoader,\n props: true,\n beforeEnter,\n },\n {\n path: '/',\n component: RouterPage,\n children: [\n {\n path: '/admin',\n name: 'admin',\n component: AdminPage,\n props: true,\n beforeEnter: adminGuard,\n },\n {\n path: 'jobs',\n name: 'jobs',\n component: Jobs,\n beforeEnter,\n },\n {\n path: '',\n component: Home,\n children: [\n {\n path: 'shared',\n name: 'shared',\n component: DataShared,\n beforeEnter,\n },\n {\n path: 'summary',\n name: 'summary',\n component: Summary,\n beforeEnter,\n },\n {\n path: ':routeType?/:routeId?',\n name: 'home',\n component: DataBrowser,\n beforeEnter,\n },\n ],\n },\n ],\n },\n ],\n});\nexport default router;\n","import girderRest from 'platform/web-girder/plugins/girder';\nimport { getLocationFromRoute, getRouteFromLocation } from 'platform/web-girder/utils';\nimport { getFolder } from 'platform/web-girder/api';\nimport { isGirderModel, } from './types';\nimport router from '../router';\nconst locationModule = {\n namespaced: true,\n state: {\n location: null,\n selected: [],\n },\n mutations: {\n setLocation(state, location) {\n state.location = location;\n },\n setSelected(state, selected) {\n state.selected = selected;\n },\n },\n getters: {\n locationIsViameFolder(state) {\n var _a, _b;\n if (state.location && isGirderModel(state.location)) {\n return !!((_b = (_a = state.location) === null || _a === void 0 ? void 0 : _a.meta) === null || _b === void 0 ? void 0 : _b.annotate);\n }\n return false;\n },\n defaultRoute() {\n if (girderRest.user) {\n return {\n name: 'home',\n params: {\n routeId: girderRest.user._id,\n routeType: 'user',\n },\n };\n }\n /* Public collections is the default route for unautnehticated users */\n return {\n name: 'home',\n params: {\n routeType: 'collections',\n },\n };\n },\n locationRoute(state, getters) {\n if (state.location) {\n return getRouteFromLocation(state.location);\n }\n return getters.defaultRoute;\n },\n },\n actions: {\n // Populate full girder model on location change if missing.\n async hydrate({ commit }, location) {\n if (isGirderModel(location)\n && location._modelType === 'folder'\n && !location.name) {\n commit('setLocation', (await getFolder(location._id)).data);\n }\n else {\n commit('setLocation', location);\n }\n },\n async setLocationFromRoute({ dispatch, state, getters }, route) {\n /**\n * Update the location because the route changed.\n * May need to fetch the full location details from server\n */\n const newLocation = getLocationFromRoute(route) || getLocationFromRoute(getters.defaultRoute);\n if (newLocation === null) {\n throw new Error('Unexpected null default route');\n }\n /** If the current and new location are the same, abort */\n if (state.location) {\n if ('type' in state.location && 'type' in newLocation) {\n if (state.location.type === newLocation.type)\n return;\n }\n if ('_id' in state.location && '_id' in newLocation) {\n if (state.location._id === newLocation._id)\n return;\n }\n }\n dispatch('hydrate', newLocation);\n },\n setRouteFromLocation({ getters, dispatch }, location) {\n /**\n * Update the current route because the location was changed,\n * such as by navigating within the data browser\n */\n if (isGirderModel(location)\n && getters.locationIsViameFolder\n && location.name === 'auxiliary') {\n /* Prevent navigation into auxiliary folder */\n return;\n }\n router.push(getRouteFromLocation(location));\n dispatch('hydrate', location);\n },\n },\n};\nexport default locationModule;\n","import { getDataset, getDatasetMedia, getFolder } from 'platform/web-girder/api';\nimport { MultiType } from 'dive-common/constants';\nconst datasetModule = {\n namespaced: true,\n state: {\n meta: null,\n },\n mutations: {\n set(state, { dataset }) {\n state.meta = dataset;\n },\n },\n actions: {\n async load({ commit, dispatch }, datasetId) {\n var _a;\n const [folder, metaStatic, media] = await Promise.all([\n getFolder(datasetId),\n getDataset(datasetId),\n getDatasetMedia(datasetId),\n ]);\n const dsMeta = {\n ...metaStatic.data,\n ...media.data,\n videoUrl: (_a = media.data.video) === null || _a === void 0 ? void 0 : _a.url,\n };\n // TODO remove when multi is supported in web\n if (dsMeta.type === MultiType) {\n throw new Error('multi is not supported on web yet');\n }\n commit('set', { dataset: dsMeta });\n const { parentId, parentCollection } = folder.data;\n if (parentId && parentCollection) {\n dispatch('Location/hydrate', {\n _id: parentId,\n _modelType: parentCollection,\n }, { root: true });\n }\n else {\n throw new Error(`dataset ${datasetId} was not a valid girder folder`);\n }\n return dsMeta;\n },\n },\n};\nexport default datasetModule;\n","import { merge } from 'lodash';\nimport { getBrandData } from 'platform/web-girder/api';\nimport defaultLogo from 'dive-common/assets/logo.png';\nfunction setFavicon(href) {\n let faviconLink = document.querySelector(\"link[rel~='icon']\");\n if (!faviconLink) {\n faviconLink = document.createElement('link');\n faviconLink.setAttribute('rel', 'icon');\n document.getElementsByTagName('head')[0].appendChild(faviconLink);\n }\n faviconLink.setAttribute('href', href);\n}\nfunction setTitle(title) {\n const titleEl = document.querySelector('title');\n if (titleEl && title !== undefined) {\n titleEl.innerText = title;\n }\n}\nconst brandModule = {\n namespaced: true,\n state: {\n brandData: {\n vuetify: null,\n favicon: undefined,\n logo: defaultLogo,\n name: 'DIVE',\n loginMessage: `DIVE is automatically updated\n at 2AM EST/EDT on Thursdays. Downtime is typically\n less than 10 minutes.`,\n alertMessage: '',\n trainingMessage: `Training Jobs depending on the configuration and the size/number of datasets can\n take a long time to complete.`,\n },\n },\n mutations: {\n setBrandData(state, data) {\n state.brandData = merge(state.brandData, data);\n setTitle(state.brandData.name);\n if (state.brandData.favicon) {\n setFavicon(state.brandData.favicon);\n }\n },\n },\n actions: {\n async loadBrand({ commit }) {\n commit('setBrandData', (await getBrandData()).data);\n },\n },\n};\nexport default brandModule;\n","import { merge } from 'lodash';\nimport girderRest from '../plugins/girder';\nconst userModule = {\n namespaced: true,\n state: {\n user: null,\n },\n mutations: {\n setUserState(state, data) {\n state.user = merge(state.user, data);\n },\n },\n actions: {\n async loadUser({ commit }) {\n const data = await girderRest.fetchUser();\n commit('setUserState', data);\n },\n },\n};\nexport default userModule;\n","import { all } from '@girder/components/src/components/Job/status';\nimport Vue from 'vue';\nimport eventBus from 'platform/web-girder/eventBus';\nimport girderRest from 'platform/web-girder/plugins/girder';\nconst JobStatus = all();\nconst NonRunningStates = [\n JobStatus.CANCELED.value,\n JobStatus.ERROR.value,\n JobStatus.SUCCESS.value,\n];\nconst jobModule = {\n namespaced: true,\n state: {\n jobIds: {},\n datasetStatus: {},\n completeJobsInfo: {},\n },\n getters: {\n runningJobIds(state) {\n return Object.values(state.jobIds).filter((v) => !NonRunningStates.includes(v)).length >= 1;\n },\n datasetRunningState: (state) => (datasetId) => {\n if (datasetId in state.datasetStatus\n && !NonRunningStates.includes(state.datasetStatus[datasetId].status)) {\n return `/girder/#job/${state.datasetStatus[datasetId].jobId}`;\n }\n return false;\n },\n datasetCompleteJobs: (state) => (datasetId) => {\n if (datasetId in state.completeJobsInfo) {\n return (state.completeJobsInfo[datasetId]);\n }\n return false;\n },\n },\n mutations: {\n setJobState(state, { jobId, value }) {\n Vue.set(state.jobIds, jobId, value);\n },\n setDatasetStatus(state, { datasetId, status, jobId }) {\n Vue.set(state.datasetStatus, datasetId, { status, jobId });\n },\n setCompleteJobsInfo(state, { datasetId, type, title, success, }) {\n Vue.set(state.completeJobsInfo, datasetId, { type, title, success });\n },\n removeCompleteJobsInfo(state, { datasetId }) {\n if (datasetId in state.completeJobsInfo) {\n Vue.delete(state.completeJobsInfo, datasetId);\n }\n },\n },\n actions: {\n removeCompleteJob({ commit }, { datasetId }) {\n commit('removeCompleteJobsInfo', { datasetId });\n },\n },\n};\nexport async function init(store) {\n const { data: runningJobs } = await girderRest.get('/job', {\n params: { statuses: `[${JobStatus.RUNNING.value}, ${JobStatus.QUEUED.value}, ${JobStatus.INACTIVE.value}]` },\n });\n function updateJob(job) {\n store.commit('Jobs/setJobState', { jobId: job._id, value: job.status });\n if (typeof job.dataset_id === 'string') {\n store.commit('Jobs/setDatasetStatus', { datasetId: job.dataset_id, status: job.status, jobId: job._id });\n if (['pipelines', 'convert'].includes(job.type || '') && NonRunningStates.includes(job.status)) {\n store.commit('Jobs/setCompleteJobsInfo', {\n datasetId: job.dataset_id,\n type: job.type,\n title: job.title,\n success: job.status === JobStatus.SUCCESS.value,\n });\n }\n }\n }\n runningJobs.forEach(updateJob);\n girderRest.$on('message:job_status', ({ data: job }) => {\n updateJob(job);\n eventBus.$emit('refresh-data-browser');\n });\n}\nexport default jobModule;\n","import Vue from 'vue';\nimport Vuex from 'vuex';\nimport router from '../router';\nimport Location from './Location';\nimport Dataset from './Dataset';\nimport Brand from './Brand';\nimport User from './User';\nimport Jobs, { init as JobsInit } from './Jobs';\nVue.use(Vuex);\nconst store = new Vuex.Store({\n modules: {\n Brand,\n Location,\n Dataset,\n Jobs,\n User,\n },\n});\n/* Keep location state up to date with current route */\nrouter.beforeEach((to, from, next) => {\n if (to.name === 'home') {\n store.dispatch('Location/setLocationFromRoute', to);\n }\n next();\n});\nJobsInit(store);\nexport default store;\n","import Vue from 'vue';\nimport VueGtag from 'vue-gtag';\nimport { init as SentryInit } from '@sentry/browser';\nimport { Vue as SentryVue } from '@sentry/integrations';\nimport registerNotifications from 'vue-media-annotator/notificatonBus';\nimport promptService from 'dive-common/vue-utilities/prompt-service';\nimport vMousetrap from 'dive-common/vue-utilities/v-mousetrap';\nimport getVuetify from './plugins/vuetify';\nimport girderRest from './plugins/girder';\nimport App from './App.vue';\nimport router from './router';\nimport store from './store';\nVue.config.productionTip = false;\nVue.use(vMousetrap);\nif (process.env.NODE_ENV === 'production'\n && window.location.hostname !== 'localhost') {\n SentryInit({\n dsn: process.env.VUE_APP_SENTRY_DSN,\n integrations: [\n new SentryVue({ Vue, logErrors: true }),\n ],\n release: process.env.VUE_APP_GIT_HASH,\n environment: (window.location.hostname === 'viame.kitware.com')\n ? 'production' : 'development',\n });\n Vue.use(VueGtag, {\n config: { id: process.env.VUE_APP_GTAG },\n }, router);\n}\nPromise.all([\n store.dispatch('Brand/loadBrand'),\n girderRest.fetchUser(),\n]).then(() => {\n var _a;\n const vuetify = getVuetify((_a = store.state.Brand.brandData) === null || _a === void 0 ? void 0 : _a.vuetify);\n Vue.use(promptService(vuetify));\n new Vue({\n router,\n store,\n vuetify,\n provide: {\n store,\n girderRest,\n notificationBus: girderRest,\n vuetify,\n },\n render: (h) => h(App),\n })\n .$mount('#app')\n .$promptAttach();\n /** Start notification stream if everything else succeeds */\n registerNotifications(girderRest).connect();\n});\n","var map = {\n\t\"./af\": 25177,\n\t\"./af.js\": 25177,\n\t\"./ar\": 61509,\n\t\"./ar-dz\": 41488,\n\t\"./ar-dz.js\": 41488,\n\t\"./ar-kw\": 58676,\n\t\"./ar-kw.js\": 58676,\n\t\"./ar-ly\": 42353,\n\t\"./ar-ly.js\": 42353,\n\t\"./ar-ma\": 24496,\n\t\"./ar-ma.js\": 24496,\n\t\"./ar-ps\": 6947,\n\t\"./ar-ps.js\": 6947,\n\t\"./ar-sa\": 82682,\n\t\"./ar-sa.js\": 82682,\n\t\"./ar-tn\": 89756,\n\t\"./ar-tn.js\": 89756,\n\t\"./ar.js\": 61509,\n\t\"./az\": 95533,\n\t\"./az.js\": 95533,\n\t\"./be\": 28959,\n\t\"./be.js\": 28959,\n\t\"./bg\": 47777,\n\t\"./bg.js\": 47777,\n\t\"./bm\": 54903,\n\t\"./bm.js\": 54903,\n\t\"./bn\": 61290,\n\t\"./bn-bd\": 17357,\n\t\"./bn-bd.js\": 17357,\n\t\"./bn.js\": 61290,\n\t\"./bo\": 31545,\n\t\"./bo.js\": 31545,\n\t\"./br\": 11470,\n\t\"./br.js\": 11470,\n\t\"./bs\": 44429,\n\t\"./bs.js\": 44429,\n\t\"./ca\": 7306,\n\t\"./ca.js\": 7306,\n\t\"./cs\": 56464,\n\t\"./cs.js\": 56464,\n\t\"./cv\": 73635,\n\t\"./cv.js\": 73635,\n\t\"./cy\": 64226,\n\t\"./cy.js\": 64226,\n\t\"./da\": 93601,\n\t\"./da.js\": 93601,\n\t\"./de\": 77853,\n\t\"./de-at\": 26111,\n\t\"./de-at.js\": 26111,\n\t\"./de-ch\": 54697,\n\t\"./de-ch.js\": 54697,\n\t\"./de.js\": 77853,\n\t\"./dv\": 60708,\n\t\"./dv.js\": 60708,\n\t\"./el\": 54691,\n\t\"./el.js\": 54691,\n\t\"./en-au\": 53872,\n\t\"./en-au.js\": 53872,\n\t\"./en-ca\": 28298,\n\t\"./en-ca.js\": 28298,\n\t\"./en-gb\": 56195,\n\t\"./en-gb.js\": 56195,\n\t\"./en-ie\": 66584,\n\t\"./en-ie.js\": 66584,\n\t\"./en-il\": 65543,\n\t\"./en-il.js\": 65543,\n\t\"./en-in\": 9033,\n\t\"./en-in.js\": 9033,\n\t\"./en-nz\": 79402,\n\t\"./en-nz.js\": 79402,\n\t\"./en-sg\": 43004,\n\t\"./en-sg.js\": 43004,\n\t\"./eo\": 32934,\n\t\"./eo.js\": 32934,\n\t\"./es\": 97650,\n\t\"./es-do\": 20838,\n\t\"./es-do.js\": 20838,\n\t\"./es-mx\": 17730,\n\t\"./es-mx.js\": 17730,\n\t\"./es-us\": 56575,\n\t\"./es-us.js\": 56575,\n\t\"./es.js\": 97650,\n\t\"./et\": 3035,\n\t\"./et.js\": 3035,\n\t\"./eu\": 3508,\n\t\"./eu.js\": 3508,\n\t\"./fa\": 119,\n\t\"./fa.js\": 119,\n\t\"./fi\": 90527,\n\t\"./fi.js\": 90527,\n\t\"./fil\": 95995,\n\t\"./fil.js\": 95995,\n\t\"./fo\": 52477,\n\t\"./fo.js\": 52477,\n\t\"./fr\": 85498,\n\t\"./fr-ca\": 26435,\n\t\"./fr-ca.js\": 26435,\n\t\"./fr-ch\": 37892,\n\t\"./fr-ch.js\": 37892,\n\t\"./fr.js\": 85498,\n\t\"./fy\": 37071,\n\t\"./fy.js\": 37071,\n\t\"./ga\": 41734,\n\t\"./ga.js\": 41734,\n\t\"./gd\": 70217,\n\t\"./gd.js\": 70217,\n\t\"./gl\": 77329,\n\t\"./gl.js\": 77329,\n\t\"./gom-deva\": 9743,\n\t\"./gom-deva.js\": 9743,\n\t\"./gom-latn\": 93383,\n\t\"./gom-latn.js\": 93383,\n\t\"./gu\": 95050,\n\t\"./gu.js\": 95050,\n\t\"./he\": 11713,\n\t\"./he.js\": 11713,\n\t\"./hi\": 43861,\n\t\"./hi.js\": 43861,\n\t\"./hr\": 26308,\n\t\"./hr.js\": 26308,\n\t\"./hu\": 90609,\n\t\"./hu.js\": 90609,\n\t\"./hy-am\": 17160,\n\t\"./hy-am.js\": 17160,\n\t\"./id\": 74063,\n\t\"./id.js\": 74063,\n\t\"./is\": 89374,\n\t\"./is.js\": 89374,\n\t\"./it\": 88383,\n\t\"./it-ch\": 21827,\n\t\"./it-ch.js\": 21827,\n\t\"./it.js\": 88383,\n\t\"./ja\": 23827,\n\t\"./ja.js\": 23827,\n\t\"./jv\": 89722,\n\t\"./jv.js\": 89722,\n\t\"./ka\": 41794,\n\t\"./ka.js\": 41794,\n\t\"./kk\": 27088,\n\t\"./kk.js\": 27088,\n\t\"./km\": 96870,\n\t\"./km.js\": 96870,\n\t\"./kn\": 84451,\n\t\"./kn.js\": 84451,\n\t\"./ko\": 63164,\n\t\"./ko.js\": 63164,\n\t\"./ku\": 98174,\n\t\"./ku-kmr\": 6181,\n\t\"./ku-kmr.js\": 6181,\n\t\"./ku.js\": 98174,\n\t\"./ky\": 78474,\n\t\"./ky.js\": 78474,\n\t\"./lb\": 79680,\n\t\"./lb.js\": 79680,\n\t\"./lo\": 15867,\n\t\"./lo.js\": 15867,\n\t\"./lt\": 45766,\n\t\"./lt.js\": 45766,\n\t\"./lv\": 69532,\n\t\"./lv.js\": 69532,\n\t\"./me\": 58076,\n\t\"./me.js\": 58076,\n\t\"./mi\": 41848,\n\t\"./mi.js\": 41848,\n\t\"./mk\": 30306,\n\t\"./mk.js\": 30306,\n\t\"./ml\": 73739,\n\t\"./ml.js\": 73739,\n\t\"./mn\": 99053,\n\t\"./mn.js\": 99053,\n\t\"./mr\": 86169,\n\t\"./mr.js\": 86169,\n\t\"./ms\": 73386,\n\t\"./ms-my\": 92297,\n\t\"./ms-my.js\": 92297,\n\t\"./ms.js\": 73386,\n\t\"./mt\": 77075,\n\t\"./mt.js\": 77075,\n\t\"./my\": 72264,\n\t\"./my.js\": 72264,\n\t\"./nb\": 22274,\n\t\"./nb.js\": 22274,\n\t\"./ne\": 8235,\n\t\"./ne.js\": 8235,\n\t\"./nl\": 92572,\n\t\"./nl-be\": 43784,\n\t\"./nl-be.js\": 43784,\n\t\"./nl.js\": 92572,\n\t\"./nn\": 54566,\n\t\"./nn.js\": 54566,\n\t\"./oc-lnc\": 69330,\n\t\"./oc-lnc.js\": 69330,\n\t\"./pa-in\": 29849,\n\t\"./pa-in.js\": 29849,\n\t\"./pl\": 94418,\n\t\"./pl.js\": 94418,\n\t\"./pt\": 79834,\n\t\"./pt-br\": 48303,\n\t\"./pt-br.js\": 48303,\n\t\"./pt.js\": 79834,\n\t\"./ro\": 24457,\n\t\"./ro.js\": 24457,\n\t\"./ru\": 82271,\n\t\"./ru.js\": 82271,\n\t\"./sd\": 1221,\n\t\"./sd.js\": 1221,\n\t\"./se\": 33478,\n\t\"./se.js\": 33478,\n\t\"./si\": 17538,\n\t\"./si.js\": 17538,\n\t\"./sk\": 5784,\n\t\"./sk.js\": 5784,\n\t\"./sl\": 46637,\n\t\"./sl.js\": 46637,\n\t\"./sq\": 86794,\n\t\"./sq.js\": 86794,\n\t\"./sr\": 45719,\n\t\"./sr-cyrl\": 3322,\n\t\"./sr-cyrl.js\": 3322,\n\t\"./sr.js\": 45719,\n\t\"./ss\": 56000,\n\t\"./ss.js\": 56000,\n\t\"./sv\": 41011,\n\t\"./sv.js\": 41011,\n\t\"./sw\": 40748,\n\t\"./sw.js\": 40748,\n\t\"./ta\": 11025,\n\t\"./ta.js\": 11025,\n\t\"./te\": 11885,\n\t\"./te.js\": 11885,\n\t\"./tet\": 28861,\n\t\"./tet.js\": 28861,\n\t\"./tg\": 86571,\n\t\"./tg.js\": 86571,\n\t\"./th\": 55802,\n\t\"./th.js\": 55802,\n\t\"./tk\": 59527,\n\t\"./tk.js\": 59527,\n\t\"./tl-ph\": 29231,\n\t\"./tl-ph.js\": 29231,\n\t\"./tlh\": 31052,\n\t\"./tlh.js\": 31052,\n\t\"./tr\": 85096,\n\t\"./tr.js\": 85096,\n\t\"./tzl\": 79846,\n\t\"./tzl.js\": 79846,\n\t\"./tzm\": 81765,\n\t\"./tzm-latn\": 97711,\n\t\"./tzm-latn.js\": 97711,\n\t\"./tzm.js\": 81765,\n\t\"./ug-cn\": 48414,\n\t\"./ug-cn.js\": 48414,\n\t\"./uk\": 16618,\n\t\"./uk.js\": 16618,\n\t\"./ur\": 57777,\n\t\"./ur.js\": 57777,\n\t\"./uz\": 57609,\n\t\"./uz-latn\": 72475,\n\t\"./uz-latn.js\": 72475,\n\t\"./uz.js\": 57609,\n\t\"./vi\": 21135,\n\t\"./vi.js\": 21135,\n\t\"./x-pseudo\": 64051,\n\t\"./x-pseudo.js\": 64051,\n\t\"./yo\": 82218,\n\t\"./yo.js\": 82218,\n\t\"./zh-cn\": 52648,\n\t\"./zh-cn.js\": 52648,\n\t\"./zh-hk\": 1632,\n\t\"./zh-hk.js\": 1632,\n\t\"./zh-mo\": 31541,\n\t\"./zh-mo.js\": 31541,\n\t\"./zh-tw\": 50304,\n\t\"./zh-tw.js\": 50304\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 35358;","if(typeof vtkjs === 'undefined') { var e = new Error(\"Cannot find module 'vtkjs'\"); e.code = 'MODULE_NOT_FOUND'; throw e; }\n\nmodule.exports = vtkjs;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\tvar threw = true;\n\ttry {\n\t\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\t\tthrew = false;\n\t} finally {\n\t\tif(threw) delete __webpack_module_cache__[moduleId];\n\t}\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.hmd = function(module) {\n\tmodule = Object.create(module);\n\tif (!module.children) module.children = [];\n\tObject.defineProperty(module, 'exports', {\n\t\tenumerable: true,\n\t\tset: function() {\n\t\t\tthrow new Error('ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: ' + module.id);\n\t\t}\n\t});\n\treturn module;\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = function(module) {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.p = \"static/viame/\";","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t524: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkvue_media_annotator\"] = self[\"webpackChunkvue_media_annotator\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [504], function() { return __webpack_require__(66534); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["registerNotifications","_rc","rc","ES","window","EventSource","withCredentials","timeoutSeconds","retryMsDefault","since","Date","lastConnectionAttempt","eventSourceInstance","connected","emitNotification","notification","type","updated","Math","max","i","indexOf","$emit","substring","onSseMessage","e","JSON","parse","data","disconnect","close","onSseError","nowSeconds","ceil","now","lastSeconds","retryMs","setTimeout","connect","user","sinceSeconds","url","apiRoot","onmessage","onerror","$on","model","value","callback","show","expression","directives","name","rawName","handler","disable","bind","staticClass","_vm","key","ref","on","_v","negativeButton","attrs","staticRenderFns","render","defineComponent","props","setup","title","text","positiveButton","selected","confirm","functions","resolve","val","positive","negative","clickPositive","clickNegative","select","focusPositive","$el","focus","focusNegative","watch","nextTick","component","PromptService","constructor","Vue","vuetify","PromptComponent","extend","Prompt","this","set","Promise","unwatch","visible","invisible","hide","mount","element","$mount","promptService","usePrompt","prompt","params","prototype","$promptAttach","div","document","createElement","appendChild","el","bindElement","mousetrap","Mousetrap","undefined","isArray","forEach","_ref","_bind","disabled","_len","arguments","length","args","Array","_key","apply","concat","_unbind","reset","install","directive","inserted","_ref2","modifiers","update","_ref3","unbind","getVuetify","config","theme","dark","options","customProperties","themes","accent","colors","blue","lighten1","accentBackground","appVuetifyConfig","merge","vuetifyConfig","Vuetify","use","Girder","girderRest","RestClient","useGirderRest","_c","_self","_setup","generateColors","numColors","_a","colorList","pos","baseColor","d3","hex","hueColor","s","l","push","seed","sort","cos","defaultStaticStyles","color","defaultSetStaticStyles","StyleManager","markChangesPending","revisionCounter","customStyles","annotationSetStyles","standard","strokeWidth","opacity","fill","showLabel","showConfidence","preset","stateStyles","typeColors","range","typeStyling","computed","noop","_customStyles","_annotationSetStyles","annotationSetColor","includes","labelSettings","populateTypeStyles","styles","updateTypeStyle","oldValue","VueSet","getTypeStyles","allTypes","savedTypeStyles","updateSubset","oldsuper","newsuper","subarr","addedValues","difference","removedValues","subset","Set","v","add","delete","from","geojsonToBound","geojson","coords","geometry","coordinates","boundToGeojson","bounds","removePoint","index","second","splice","console","warn","updateBounds","oldBounds","union","unionNoBounds","limits","xLow","Infinity","yLow","xHigh","yHigh","poly","posarr","min","reOrdergeoJSON","x1","x2","y1","y2","coord","getResponseError","error","response","String","message","withinBounds","x","y","DefaultConfidence","BaseFilterControls","checkedIDs","sorted","map","t","id","confidenceFilters","default","defaultTypes","remove","setType","removeTypes","typeSet","annotation","confidencePairs","usedTypes","checkedTypes","filteredAnnotations","enabledAnnotations","checkedSet","filter","filtered","has","oldCheckedIds","newval","IDs","newArr","oldCheckedtypes","importTypes","types","userInteraction","action","deleteType","setConfidenceFilters","updateTypeName","currentType","newType","confidenceVal","removeTypeAnnotations","filteredType","getType","context","confidencePairIndex","newConfidencePairs","updateCheckedTypes","updateCheckedId","checkAttributes","attributeMatch","attributeVal","userDefinedVal","results","checkVal","userDefined","op","toString","item","trackIdPassesFilter","getTrack","filters","userDefinedvals","enabled","track","trackAttributes","attributes","trackFilters","detectionFilters","trackUserVals","detectionUserVals","typeFilter","attribute","ignoreUndefined","result","k","featureIndex","detectionAttributes","features","TrackFilterControls","super","attributeFilters","userDefinedValues","enabledFilters","filteredGroupsSet","groupFilterControls","confidenceFiltersVal","cloneDeep","resultsArr","resultsIds","enabledInGroupFilters","groups","lookupGroups","some","group","findIndex","confkey","confval","confidenceThresh","addValue","loadTrackAttributesFilter","trackAttributesFilter","updateTrackFilter","attributeTrackFilter","deleteTrackFilter","items","setUserDefinedValue","setEnabled","GroupFilterControls","isTrack","BaseAnnotationStore","cameraName","annotationMap","Map","annotationIds","intervalTree","IntervalTree","canary","enableSorting","depend","trackId","get","begin","end","a","b","setEnableSorting","annotationId","Error","getPossible","getNewId","reduce","prev","current","notify","event","oldInterval","insert","setNotifier","afterId","insertIndex","imported","disableNotifications","listIndex","clearAll","clear","BaseAnnotation","meta","revision","notifierEnabled","isInitialized","maybeExpandBounds","frame","oldval","notifier","old","annotationType","replace","replaceIndex","setAttribute","userAttributes","exceedsThreshold","pairs","thresholds","defaultThresh","Group","members","setBoundsForMembers","Object","values","m","ranges","memberIds","keys","parseInt","addMembers","entries","memberId","setMemberRange","idx","addMemberRange","removeMemberRange","removeMembers","omit","serialize","fromJSON","json","intId","MultiMap","mapping","GroupStore","trackMap","defaultGroup","defaultType","newId","memberMap","trackRemove","groupIds","binarySearch","arr","n","cmp","listInsert","position","newpos","listRemove","deleted","getSurroundingElements","starti","abs","Track","sanityCheckFeatures","repopulateInterpolatedFrames","breakException","Symbol","f","keyframe","maybeShrinkBounds","nextFrame","getNextKeyframe","previousFrame","getPreviousKeyframe","canSplit","canInterpolate","real","lower","upper","getFeature","interpolate","split","id1","id2","slice","others","disableNotifier","other","pair","match","find","setFeature","toggleKeyframe","deleteFeature","interFeature","toggleInterpolation","targetKeyframe","toggleInterpolationForAllGaps","feature","round","fg","geo","_b","keyMatch","properties","typeMatch","getFeatureGeometry","matchesKey","matchesType","removeFeatureGeometry","setFeatureAttribute","maybeFrame","maybeInterpolated","d0","d1","_frame","next","previous","reverse","condenseFeatures","getUserAttributeList","userList","len","box","d0bounds","d1bounds","_","sparseFeatures","intTrackId","TrackStore","overrideTrackId","CameraStore","camMap","shallowRef","trackStore","groupStore","sortedTracks","idList","camera","uniq","getTracksMergedForSorted","sortedGroups","list","currentMap","tempTrack","getPossibleTrack","err","getAnyPossibleTrack","getAnyTrack","getTrackAll","trackList","getTracksMerged","size","addCamera","triggerRef","removeCamera","getNewTrackId","trackIds","removeTracks","removeGroups","setTrackType","changeTrackTypes","resultingTypes","getGroupMemebers","AnnotatorPreferencesSymbol","AttributesSymbol","AttributesFilterSymbol","DatasetIdSymbol","EditingModeSymbol","MultiSelectSymbol","PendingSaveCountSymbol","ProgressSymbol","RevisionIdSymbol","AnnotationSetSymbol","AnnotationSetsSymbol","ComparisonSetsSymbol","SelectedCameraSymbol","SelectedKeySymbol","SelectedTrackIdSymbol","EditingGroupIdSymbol","TimeSymbol","VisibleModesSymbol","ReadOnlyModeSymbol","ImageEnhancementsSymbol","CameraStoreSymbol","TrackStyleManagerSymbol","GroupStyleManagerSymbol","TrackFilterControlsSymbol","GroupFilterControlsSymbol","HandlerSymbol","provideAnnotator","state","attributesFilters","provide","annotatorPreferences","cameraStore","datasetId","editingMode","groupFilters","groupStyleManager","multiSelectList","pendingSaveCount","progress","revisionId","annotationSet","annotationSets","comparisonSets","trackStyleManager","selectedCamera","selectedKey","selectedTrackId","editingGroupId","time","visibleModes","readOnlyMode","imageEnhancements","_handleMissing","inject","useAnnotatorPreferences","useAttributes","useAttributesFilters","useCameraStore","useDatasetId","useEditingMode","useGroupFilterControls","useGroupStyleManager","useHandler","useMultiSelectList","usePendingSaveCount","useProgress","useRevisionId","useAnnotationSet","useAnnotationSets","useComparisonSets","useTrackStyleManager","useSelectedCamera","useSelectedKey","useSelectedTrackId","useEditingGroupId","useTime","useTrackFilters","useVisibleModes","useReadOnlyMode","useImageEnhancements","ApiSymbol","provideApi","api","useApi","useStore","store","isGirderModel","_id","_modelType","AnnotationsCurrentVersion","async","loadDetections","folderId","tracks","sets","version","loadRevisions","limit","offset","sortdir","saveDetections","patch","getLabels","getBrandData","putBrandData","brandData","put","getPipelineList","getTrainingConfigurations","getAddons","postAddons","urls","forceDownload","post","postProcess","skipJobs","skipTranscoding","additive","additivePrepend","runPipeline","itemId","pipeline","runTraining","folderIds","pipelineName","annotatedFramesOnly","labelText","convertLargeImage","getDataset","getDatasetList","sortDir","shared","published","getDatasetMedia","clone","parentFolderId","cloneId","makeViameFolder","fps","stringify","parentId","importAnnotationFile","path","file","resp","parentType","mimeType","status","uploadResponse","uploadId","headers","final","warnings","saveAttributes","saveAttributeTrackFilters","saveMetadata","metadata","validateUploadGroup","names","deleteResources","resources","formData","FormData","folder","resource","getFolder","setUsePrivateQueue","userId","privateQueueEnabled","getTiles","projection","encodeURIComponent","getTileURL","level","query","join","unwrap","func","getUri","ImageSequenceType","VideoType","MultiType","LargeImageType","DefaultVideoFPS","FPSOptions","itemsPerPageOptions","websafeVideoTypes","otherVideoTypes","calibrationFileTypes","largeImageTypes","websafeImageTypes","otherImageTypes","inputAnnotationTypes","inputAnnotationFileTypes","zipFileTypes","stereoPipelineMarker","multiCamPipelineMarkers","JsonMetaRegEx","simplifyTrainingName","getLocationFromRoute","route","routeType","routeId","getRouteFromLocation","location","openFromDisk","datasetType","input","baseTypes","multiple","accept","reject","onchange","files","target","fileList","every","canceled","filePaths","click","components","useRoute","loadMetadata","dispatch","$vuetify","breakpoint","mdAndDown","scopedSlots","locationInputs","buttonOptions","menuOptions","_objectSpread","selectedDescription","pipelinesCurrentlyRunning","singlePipelineValue","pipeType","_u","fn","staticStyle","pipelines","_e","count","jobState","$event","Boolean","loading","defaultSettings","trackSettings","newTrackSettings","mode","modeSettings","autoAdvanceFrame","Detection","continuous","deletionSettings","promptUser","groupSettings","newGroupSettings","typeSettings","showEmptyTypes","lockTypes","rowsPerPage","annotationFPS","trackTails","before","after","hydrate","obj","storedSettings","localStorage","getItem","clientSettings","reactive","saveSettings","setItem","selectNext","delta","newIndex","useModeManager","trackFilterControls","aggregateController","readonlyState","recipes","creating","annotationModes","editing","toRef","linkingState","linkingTrack","linkingCamera","selectedFeatureHandle","editingTrack","editingCanary","multiSelectActive","_filteredTracks","_filteredGroups","selectNextTrack","selectNextGroup","selectTrack","edit","_depend","_nudgeEditingCanary","editingDetails","_shouldInterpolate","interpolateTrack","seekNearest","seek","_setLinkingTrack","_selectKey","handleSelectFeatureHandle","handleSelectTrack","handleGroupEdit","groupId","handleEscapeMode","handleAddTrackOrDetection","trackType","newTrackId","newTrackSettingsAfterLogic","addedTrack","newCreatingValue","handleUpdateRectBounds","frameNum","flickNum","flick","handleUpdateGeoJSON","eventType","preventInterrupt","geoJsonFeatureRecord","unionWithoutBounds","newSelectedKey","done","recipe","changes","key_","assign","somethingChanged","r","deactivate","flatMapDeep","geomlist","geom","handleRemovePoint","active","deletePoint","handleRemoveAnnotation","handleUnstageFromMerge","handleRemoveTrack","forcePromptDisable","maybeNextTrackId","previousOrNext","trackStrings","flattenDeep","handleTrackEdit","camTrack","handleTrackClick","handleSelectNext","newTrack","handleSetAnnotationState","recipeName","handleToggleMerge","handleCommitMerge","otherTrackIds","handleStartLinking","handleStopLinking","handleAddGroup","newGrp","handleRemoveGroup","ids","maybeNextGroupId","bus","onBeforeUnmount","$off","commitMerge","groupAdd","groupEdit","toggleMerge","trackAdd","trackAbort","trackEdit","trackSeek","trackSelect","trackSelectNext","updateRectBounds","updateGeoJSON","removeTrack","removeAnnotation","removeGroup","selectFeatureHandle","setAnnotationState","unstageFromMerge","startLinking","stopLinking","_updatePendingChangeMap","upsert","del","useSave","readonlyMode","pendingChangeMaps","singleCam","attributeUpsert","attributeDelete","groupUpsert","groupDelete","attributeTrackFilterUpsert","attributeTrackFilterDelete","save","datasetMeta","promiseList","globalMetadataUpdated","pendingChangeMap","saveId","then","all","discardChanges","readonly","useRequest","request","toRefs","usePaginatedRequest","main","paginationParams","totalCount","allPages","loadNextPage","wrapped","nextOffset","maxOffset","Number","JobLaunchDialog","selectedDatasetIds","typeList","subTypeList","cameraNumbers","runningPipelines","unsortedPipelines","selectedPipe","camNumberStringArray","_runPipelineRequest","dismissLaunchDialog","includesLargeImage","successMessage","onBeforeMount","sortedPipelines","category","pipes","aName","toLowerCase","bName","pipelineExpectedCameraCount","pipelinesNotRunnable","acc","runPipelineOnSelectedItem","datasetIds","cameraNames","lastIndexOf","pipeTypeDisplay","menuOpen","trainingOutputName","trainingConfigurations","clearLabelText","labelFile","$$v","runTrainingOnFolder","stereo","DefaultButtonAttrs","block","class","required","icon","openType","multiCamImport","buttonAttrs","small","ImportButton","Brand","selectedTrainingConfig","_runTrainingRequest","dismissJobDialog","trainingDisabled","outputPipelineName","reader","FileReader","onload","evt","readAsText","tooltipOn","doExport","forceSave","excludeBelowThreshold","excludeUncheckedTypes","exportUrls","exportDetectionsUrl","exportDetectionsUrlTrackJSON","exportConfigurationUrl","exportAllUrl","exportAllUrlDetections","AutosavePrompt","blockOnUnsaved","savePrompt","currentSaveUrl","singleDataSetId","dataset","datasetMedia","loadDatasetMeta","exportMediaUrl","video","includeDetections","includeMedia","format","mediaType","importMultiCamDialog","updateUploading","errorHandler","getFilenameInputStateLabel","pendingUpload","uploading","$set","pendingUploads","openImport","open","openMultiCamDialog","upload","fileSuffixRegex","importType","folderList","dataType","deleteSet","trackFile","openAnnotationFile","displayKeys","addNewSet","keywordFolder","globList","_s","defaultDisplay","calibrationFile","importAnnotationFilesCheck","nextSteps","filterByGlob","pattern","patterns","p","globToRegexp","flags","re","test","showDelete","newSetName","nameList","emit","alphaNumeric","ImportMultiCamCameraGroup","ImportMultiCamChooseAnnotation","ImportMultiCamChooseSource","ImportMultiCamAddType","importMedia","Function","pendingImportPayloads","importError","importRequest","clearCameraSet","left","sourcePath","right","glob","keyword","globImages","payload","jsonMeta","originalImageFiles","folderImages","filteredImages","errorMessage","totalList","images","imageName","filterLength","ret","dstype","root","prepForImport","sourceList","mixins","preUploadErrorMessage","uploadEnabled","methods","abort","_this","_asyncToGenerator","_regeneratorRuntime","mark","_callee","uploaded","pendingUplodsCopy","wrap","_context","abrupt","uploadPending","t0","stop","convertFileToInternal","indeterminate","_this2","_callee2","createSubFolders","annotationFile","mediaList","subfile","subname","subtype","_context2","createUploadFolder","sent","uploadFiles","_this3","_callee3","_yield$makeViameFolde","_context3","_arguments","_this4","_callee5","postUpload","_context5","_callee4","_context4","_x","setFiles","start","dest","ImportMultiCamDialog","UploadGirder","multiCamOpenType","girderUpload","addPendingZipUpload","allFiles","defaultFilename","addPendingUpload","suggestedFps","ok","media","validFiles","annotations","internalFiles","processImport","output","metaFile","fullList","jsonFiles","csvFiles","metaIndex","processed","filterFileUpload","multiCamImportCheck","globPattern","mediaConvertList","log","filesNotUploaded","computeUploadProgress","formatSize","totalProgress","totalSize","plural","getFilenameInputStateDisabled","getFilenameInputStateHint","getFilenameInputValue","depressed","_t","dateFormatter","sizeFormatter","usernameFormatter","DefaultInfoKeys","transform","formatDate","GirderDetailList","infoKeys","showUpsert","asyncComputed","details","_yield$_this$girderRe","datum","created","formatUsername","icons","fileMultiple","info","_this2$details$meta","reducer","curr","typeCounts","countMessages","sizeMessage","_toConsumableArray","source","foreign_media_id","cloneError","cloneLoading","locationIsFolder","doClone","GirderFileManager","router","useRouter","newName","setLocation","newLoc","annotate","_cloneRequest","newDataset","getters","locationStore","Location","clearSelected","commit","page","sortBy","dataList","updateItemsPerPage","updateSortBy","updateSortDesc","sortDesc","total","tableOptions","sortable","fixSize","updateOptions","formattedSize","isAnnotationFolder","deep","offsetX","nudgeRight","Clone","DataDetails","Export","GirderMarkdown","Upload","RunPipelineMenu","RunTrainingMenu","DataShared","ShareTab","_usePrompt","eventBus","mapState","mapGetters","selectedViameFolderIds","locationIsViameFolder","_this$location","description","deleteSelection","finish","GirderJobList","restClient","outstandingJobs","distributedWorkerEnabled","setPrivateQueueEnabled","user_private_queue_enabled","outstanding","distributedWorker","fetchUser","userDialog","GirderAuthentication","form","onLogin","locationRoute","process","userGuideLink","categories","actions","UserGuideDialog","annotating","dialog","slot","NavigationTitle","UserGuideButton","JobsTab","GirderSearch","runningJobIds","isAdmin","_this$girderRest","admin","onLogout","beforeDestroy","mapActions","$router","logout","NavigationBar","currentTab","downloadAddons","table","getData","Name","Description","Installed","downloadArray","found","tabItem","getRecentDatasets","getJobTypesStatus","getRecentJobs","statuses","getRecentUsers","cancelJob","jobId","deleteJob","owner","ownerLogin","userDir","creatorId","moment","login","first","firstName","last","lastName","email","dir","filterTypes","jobStatusList","removeStatusChip","filterStatus","_ref6","_ref7","_ref9","_ref11","_ref12","_ref13","trainingListDialog","JobStatus","JobStatusMap","Cancelled","CANCELED","ERROR","Success","SUCCESS","Inactive","INACTIVE","Running","RUNNING","Cancelling","WORKER_CANCELING","JobProgress","jobTypes","trainingInputList","initTypes","typesAndStatus","statusNums","isObject","kwargs","temp","user_login","user_id","modified","onMounted","formatStatus","statusDef","getByValue","statusText","statusColor","statusTextColor","statusIcon","updateString","progressNumber","getJobStatusColor","removeTypeChip","modifyJob","viewTrainingList","inputList","loginMessage","trainingMessage","uploadBranding","rootBrandData","AddOns","AdminRecents","UserRecents","AdminJobs","AdminBranding","largeImageWarning","revisionNum","proxy","subCategory","tag","groupEditActive","changeCamera","_g","onIcon","_ref4","displayComparisons","_ref5","style","height","imageData","videoUrl","updateTime","frameRate","originalFps","brightness","intercept","controlsCollapsed","eventChartData","groupChartData","progressValue","UseAttributes","detection","timelineFilter","appliedTo","timelineEnabled","loadAttributes","metadataAttributes","attributesList","oldAttribute","updateAllTracks","VueDel","deleteAttribute","removeFromTracks","addAttributeFilter","filterList","deleteAttributeFilter","modifyAttributeFilter","sortAttributes","attributeList","attribVals","sortingMode","filteredAttributes","belongs","localeCompare","aVal","bVal","datatype","applyStringFilter","comp","str","startsWith","applyNumberFilter","applyKeyFilter","filterAttributes","sortedFilteredAttributes","filterData","numberFilter","stringFilter","keyFilter","sortAndFilterAttributes","sortedAttributes","generateDetectionTimelineData","valueMap","maxFrame","minFrame","minValue","maxValue","attributeTimelineData","selectedTrack","timelineData","numberVals","setTimelineEnabled","setTimelineFilter","useEventChart","enabledTracks","selectedTrackIds","mapfunc","selectedTrackIdsValue","markers","mergedTrack","muted","updateHistogram","histogram","beginval","endval","useLineChart","lineChartData","histograms","totalArr","ibegin","iend","typeArr","accumulatedHistogram","Flick","useTimeObserver","NaN","initialize","throttle","setSVGFilters","blackPoint","whitePoint","BaseLayer","annotator","stateStyling","formattedData","featureLayer","selectedIndex","createStyle","stroke","uniformPolygon","strokeColor","changeData","frameData","comparisons","formatData","redraw","antialiasing","LineLayer","layer","geoViewerRef","createLayer","createFeature","dashSegment","dashLength","distance","sqrt","linearSubdivide","dashLine","dashed","segment","frameDataTracks","line","styleType","d","draw","point","_point","_index","fillColor","fillOpacity","strokeOpacity","strokeOffset","PointLayer","radius","PolygonLayer","drawingOther","hoverOn","selectionAPI","geoOn","mouseclick","mouse","buttonsDown","mouseclick_order","mouseOverOrderClosestBorder","pointSearch","hoverAnnotations","setHoverAnnotations","mouseover","mouseoff","geoOff","setDrawingOther","polygon","RectangleLayer","hasPoly","width","dashSize","defaultFormatter","cp","_type","_conf","confidence","toFixed","TextLayer","formatter","formatted","baseStyle","offsetY","coloring","textSettings","UILayer","zoomToolTipPosition","widgets","toolTip","mousePos","lastMousePos","updateWidgetToolTipPosition","updateToolTipPositions","uiLayer","mousemove","zoom","widget","tipOffset","toolTipOffset","newOffset","gcsToDisplay","finalOffset","displayToGcs","addDOMWidget","createWidget","canvas","parent","h","setToolTipWidget","typeMapper","rectVertex","rectEdge","EditAnnotationLayer","skipNextExternalUpdate","_mode","selectedHandleIndex","hoverHandleIndex","shapeInProgress","disableModeSync","leftButtonCheckTimeout","clickToEdit","showLabels","continuousPointProximity","finalPointProximity","adjacentPointProximity","edit_action","handleEditAction","handleEditStateChange","select_edit_handle","hoverEditHandle","getMode","divisor","actiondown","setShapeInProgress","skipNextFunc","buttons","middle","propogated","newPoint","interactor","simulateEvent","button","enable","handle","setCursor","applyStylesToAnnotations","editHandleStyle","highlightStyle","setKey","layermode","setMode","newLayerMode","calculateCursorImage","setImageCursor","removeAllAnnotations","getGeoJSONData","geoJSONData","clearTimeout","geojsonFeature","actionup","newGeojson","remapped","worldToGcs","retriggerMouseMove","handles","rotate","edge","_data","cursor","cursorHandler","AggregateControllerSymbol","CameraInitializerSymbol","allowCameraTrigger","injectAggregateController","injectCameraInitializer","useMediaController","geoViewers","containers","imageCursors","cameras","subControllers","cameraControllerSymbols","synchronizeCameras","getController","c","onResize","mc","containerRef","getBoundingClientRect","mapSize","requestAnimationFrame","resetZoom","toggleLockedCamera","lockedCamera","toggleSynchronizeCameras","_seek","play","_play","pause","_pause","setVolume","_setVolume","setSpeed","_setSpeed","cameraSymbol","newCursor","imageCursor","centerOn","center","zoomAndCenter","zoomAndCenterFromBounds","originalBounds","resetMapDimensions","isMap","margin","top","bottom","pixelCoordinateParams","maxBounds","zoomRange","clampBoundsX","clampBoundsY","clampZoom","initializeViewer","tileWidth","tileHeight","geoSpatial","node","interactorOpts","keyboard","focusHighlight","cancelOnMove","pan","shift","ctrl","zoomrotateMinimumRotation","zoomAnimation","momentum","wheelScaleY","prevFrame","targetFrame","ready","playing","filename","currentTime","duration","volume","speed","syncedFrame","imageCursorRef","handleMouseLeave","display","handleMouseEnter","handleMouseMove","clientX","clientY","mediaController","cameraSync","geoViewer","container","camEvent","activeMap","screenDelta","defaultController","over","loadImageFunc","imageDataItem","img","src","loadingVideo","loadingImage","cameraInitializer","unimplemented","local","playCache","cacheSeconds","frontBackRatio","imgs","pendingImgs","lastFrame","quadFeature","forceUnload","imgInternal","image","expectFrame","drawImage","naturalHeight","naturalWidth","ul","lr","cacheFrame","Image","crossOrigin","newImgInternal","cached","onloadPromise","cacheNewRange","minusFrame","cacheImages","cachedFrames","floor","frameDiff","newFrame","checkCached","seconds","syncWithVideo","nextImage","ex","onUnmounted","setBrightnessFilter","css","quadFeatureLayer","autoshareRenderer","renderer","init","oldBrightness","OnePTSTick","kwiverSeek","roundOrFloor","requestedTimeInSeconds","requestedTrueVideoFrame","nextTrueFrameBoundary","videoPlayerAttributes","makeVideo","preload","requestedFrame","scheduleAnimationFrame","logError","playbackRate","loadedMetadata","removeEventListener","videoWidth","videoHeight","maybeMaxFrame","pendingUpdate","addEventListener","levels","currentLayer","nextLayer","nextLayerFrame","_getTileURL","proj","returnFunc","updatedParams","encoding","resp2","newParams","sizeX","sizeY","_options","maxLevel","tilesAtZoom","tilesMaxBounds","moveDown","ltemp","onIdle","keepLower","attribution","useCredentials","sourceSizeX","sourceSizeY","xmin","xmax","ymax","ymin","origMin","localParams","togglePlay","dragHandler","toggleEnhancements","saveThreshold","updateConfidence","$scopedSlots","domProps","_updateConfidence","parseFloat","_emitEnd","emitEnd","debounce","ConfidenceFilter","datasetIdRef","resetThresholds","checkedTypesRef","confidenceFiltersRef","typeStylingRef","modifyValue","bottomHeight","styleManager","headCheckClicked","clickSortToggle","virtualHeight","updateCheckedType","showPicker","tooltipText","delay","outlined","tile","editingShowLabel","editingThickness","editingOpacity","editingColor","usedTypesRef","selectedType","filterControls","selectedColor","editingType","editingFill","editingShowConfidence","valid","acceptChanges","updatedTypeObj","clickDeleteType","HorizontalPadding","TooltipBtn","displayText","confidenceFilterNum","checked","cssVars","TypeListHeaderHeight","TypeEditor","TypeItem","sortingMethods","sortingMethodIcons","sortingMethod","filterText","allTypesRef","filteredTracksRef","clickEdit","clickDelete","typeDisplay","filteredTrack","confidencePair","filteredTracksForFrame","trackIdsForFrame","search","filteredKeyFrameTracks","currentFrameTrackTypes","sortAndFilterTypes","visibleTypes","virtualTypes","confidenceFiltersDeRef","typeCountsDeRef","typeStylingDeRef","checkedTypesDeRef","frameTRackTypesDeRef","headCheckState","uncheckedTypes","allVisibleAndCheckedInvisible","setCheckedTypes","mouseTrap","useVirtualScrollTo","itemHeight","getAnnotation","filteredListRef","selectedIdRef","virtualList","scrollTo","scrollTop","scrollToSelected","scrollPreventDefault","keyEvent","direction","preventDefault","useVuetify","vm","getCurrentInstance","$$selectedVal","o","onInputKeyEvent","dataListSource","trackTypeValue","skipOnFocus","typeInputBoxRef","currentTarget","focusType","blurType","blur","onBlur","trim","onFocus","code","TypePicker","secondarySelected","inputValue","GroupItem","hotkeysDisabled","selectedId","groupStoreRef","virtualScroll","virtualListItems","filteredGroups","checkedTrackIds","filteredGroup","getItemProps","toolbarHeight","confidenceThresholdHeight","enableSlot","topHeight","totalHeight","innerHeight","GroupList","FilterList","StackedVirtualSidebarContainer","currentMode","_l","tabMap","getComponentType","updateValue","modifyFilter","addFilterDialog","addFilterPosition","selectedAddFilterType","addFilterFilter","attributeFilter","settingsDialog","copiedFilter","saveChanges","filterNames","updateField","typeChange","AttributeNumberFilterSettings","setValue","setActive","showSettings","lowRange","highRange","AttributeStringFilterSettings","removeChip","timeline","backgroundColor","AttributeKeyFilterSettings","getColor","atr","AttributeNumberFilter","AttributeNumberFilterVue","AttributeStringFilter","AttributeStringFilterVue","AttributeKeyFilter","AttributeKeyFilterVue","deleteFilter","tab","addFilter","filterType","newFilter","finalizeFilter","updateNewFilter","updateActive","AttributeFilters","AttributeTimeline","modes","annotationExists","trackExists","_setupProxy","inEditingMode","enabledTracksRef","trackKeyPair","completeTrackExists","existingCount","deleteAnnotation","allTracks","deleteTrack","editOrCreateAnnotation","selectCamera","areSettingsValid","atrKey","atrVal","baseFilter","inputFilter","userDefinedValue","filterIndex","editable","attrType","typeConversion","number","boolean","_updateValue","updateCombo","AttributeTrackFilterVue","attributeTypes","typeMap","editingFilter","atrOp","atrType","filterEnabled","primaryDisplay","dropdowns","atrTypeList","ops","existingNames","editingAttributeType","editingOps","changeAttributeType","addEditTrackFilter","resetFilterFields","saveFilter","updatedTrackFilter","deleteChip","componentMap","TypeThreshold","ImageEnhancements","GroupSidebar","MultiCamTools","AttributesSideBar","AttributeTrackFilters","register","unregister","resetActive","getComponents","toggle","dispatchEvent","Event","openClose","dragging","mouseout","mousedown","tooltipComputed","content","intersect","range1","range2","startFrame","endFrame","clientWidth","tooltip","startFrame_","endFrame_","hoverTrack","barData","bars","endPosition","events","startPoisiton","frameWidth","minWidth","detectBarHovering","tooltipTimeoutHandle","mounted","domain","$refs","ctx","getContext","clearRect","muteOpacity","overflow","barHeight","bar","barWidth","fillStyle","fillRect","scrollToElement","featureWidth","_slicedToArray","barMiddle","nextPos","strokeStyle","moveTo","lineTo","typeColor","typeColorMuted","selectedBar","eventChart","parentNode","offsetHeight","cancel","remainder","displayType","selectedCameraController","toISOString","substr","clientHeight","validator","atrributesChart","clientDimensions","append","attr","curve","svg","axis","tickSize","call","g","selectAll","highlightedLine","highlightedColor","enter","_d3$mouse","_d3$mouse2","_y","onwheel","containerMouseup","containerMousemove","workareaMouseup","workareaMousedown","workareaMousemove","workareaMouseleave","minimapFillStyle","minimapFillMousedown","timelineScale","handLeftPosition","hand","resizeHandler","workarea","scale","tickSizeOuter","updateAxis","resizeTimer","sign","deltaY","ratio","layerX","offsetLeft","emitSeek","leftBounds","rightBounds","minimapDragging","minimapDraggingStartClientX","minimapDraggingStartFrame","minimapDraggingEndFrame","which","frameDelta","TailLayer","currentFrame","markerSize","markerOpacity","generateDataForTrack","fd","tailData","lastPoint","inputFeatures","firstFeature","lastFeature","interpolated","pointCopy","markerStyle","createMarkerStyle","futureStyle","startTime","endTime","updateSettings","symbol","symbolValue","trackData","createOverlappingComparingBounds","comparingBounds","overlappingBounds","j","box1","box2","OverlapLayer","merged","lineHeight","calculateAttributeArea","baseBounds","renderSettings","renderIndex","renderAttrLength","layout","trackWidth","widthType","displayWidth","displayX","valueX","trackHeight","heightType","displayHeight","valueHeight","newBounds","anchor","corner","renderAttr","autoColorIndex","renderFiltered","currentRender","displayName","displayColor","displayTextSize","fontSize","textAlign","valueColor","valueTextSize","AttributeLayer","renderAttributes","updateRenderAttributes","valueColors","colorArr","colorNums","colorVals","colorScale","textBaseline","textScaled","AttributeBoxLayer","lineColor","boxColor","lineThickness","boxThickness","boxBackground","boxOpacity","formatTextRow","colorBy","comparison","selectedTrackIdRef","multiSeletListRef","editingModeRef","visibleModesRef","selectedKeyRef","annotatorPrefs","frameNumberRef","flickNumberRef","rectAnnotationLayer","overlapLayer","polyAnnotationLayer","lineLayer","pointLayer","tailLayer","textLayer","attributeBoxLayer","attributeLayer","editAnnotationLayer","updateAttributes","newList","order","hoverOvered","toolTipWidgetProps","updateLayers","currentFrameIds","inlcudesTooltip","editingTracks","enabledIndex","trackWithContext","trackStyleType","groupStyleType","trackFrame","z","editTrack","ToolTipWidget","Clicked","geometryCompleteEvent","cb","annotationHoverTooltip","hoveredVals","maxX","minY","toggleAllInterpolation","openMultiCamTools","trackSplit","isKeyframe","keyframeDisabled","gotoPrevious","gotoNext","solo","merging","frameRef","multiCam","shouldInterpolate","clickToggleInterpolation","ctrlKey","settingsActive","newTrackColor","TrackListHeaderHeight","TrackItem","newTrackMode","newTrackType","checkedTrackIdsRef","multiSelect","multiDelete","tracksDisplayed","filteredTracks","EmptyResponse","PolygonBoundsExpand","toggleable","geoJsonFeatures","activate","HeadTailLineKey","HeadPointKey","TailPointKey","PaddingVector","PaddingVectorZero","HeadTail","startWithHead","findBounds","ls","paddingVector","vec","vecPerp","coordsInBounds","makeGeom","secondFeature","headTailLine","linestrings","linestring","head","tail","currentFeature","headfirst","tailfirst","editingHeader","tailSettings","toolTipForce","toolTimeTimeout","modeToolTips","Creating","rectangle","Polygon","LineString","Editing","editButtons","em","viewButtons","isVisible","toggleVisible","flatten","deleteSelected","currentView","hasGroups","childMaxFrame","attributeData","Controls","EventChart","FileNameTimeDisplay","LineChart","Timeline","collapsed","ticks","toggleView","multiSelectInProgress","editingGroup","updateEnd","unlimited","selectedTrackList","editIndividual","editAttribute","setEditIndividual","editingAttribute","keydown","stopPropagation","closeEditor","saveAttributeHandler","updateBegin","num","tempVal","boolOpts","inputBoxRef","change","sliderChange","newVal","baseSettings","editor","isNaN","textValues","colorSettings","launchColorEditor","selectedAttribute","attributeRendering","renderingVals","mainSettings","layoutSettings","displayNameSettings","valueSettings","verticalDimensions","dropdownOptions","boxSettings","displayColorAuto","valueColorAuto","displayWidthType","displayWidthVal","displayHeightType","displayHeightVal","boxColorAuto","boxBackgroundSwitch","locationOptions","layoutOptions","cornerOptions","displayDimOptions","currentEditColor","currentEditColorType","computedDisplayColor","computedValueColor","computedBoxColor","setEditingColor","saveEditingColor","User","predeterminedValues","attributeColors","currentEditKey","getActualValues","userAttr","existingValues","finalValues","finalKeys","validForm","recalculateGradient","linearGradient","percent","base","currentEditIndex","mapper","addColor","gradientSVG","deleteGradient","AttributeRendering","AttributeValueColors","AttributeNumberValueColors","tempColor","addNew","colorEditor","setDefaultValue","resetValidation","submit","validate","numericChange","steps","activeSettings","filteredFullAttributes","getAttributeValue","updateAttribute","AttributeInput","PanelSubsection","selectedAttributes","additionFilters","attributeVals","activeAttributesCount","toggleActiveSettings","updatedValue","addAttribute","filtersActive","openFilter","openTimeline","AttributeEditor","AttributeSubsection","ConfidenceSubsection","RangeEditor","editingError","allGroupTypesRef","editingGroupIdRef","resetEditIndividual","composedPath","inputs","classList","contains","nodeName","deleteAttributeHandler","help","importDialog","import","importInstructions","confirmImport","TrackDetailsPanel","TrackSettingsPanel","TrackList","TypeSettingsPanel","swapTabs","doToggleMerge","trap","expanded","primaryFilters","AttributeTrackFilter","ControlsContainer","DeleteControls","Sidebar","LayerManager","VideoAnnotator","ImageAnnotator","LargeImageAnnotator","EditorMenu","PrimaryAttributeTrackFilter","currentSet","loadError","baseMulticamDatasetId","multiCamList","defaultCamera","playbackComponent","selectedSet","mediaControllerClear","initTime","datasetName","saveInProgress","loaded","controlsRef","controlsHeight","saveToServer","addSaveCamera","removeSaveCamera","PolygonBase","clientSettingsSetup","allSelectedIds","newtracks","wasEditing","unlinkCameraTrack","linkCameraTrack","baseTrack","linkTrack","subCamera","setVal","saveSet","customTypeStyling","customGroupStyling","warnBrowserExit","returnValue","navigateAwayGuard","handleSetChange","guard","editMode","loadData","defaultCameraMeta","multiCamMedia","cameraId","subCameraMeta","foundSets","baseSet","firstSet","setIndex","loadingSet","setTracks","setGroups","cam","attributeTrackFilters","GroupSidebarVue","MultiCamToolsVue","errorEl","innerHTML","innerText","reloadAnnotations","handleResize","observer","ResizeObserver","unobserve","observe","globalHandler","setChange","useAttributeFilters","defaultSet","processing","openUpload","importFile","entry","revisions","saveCount","loadNext","checkout","compareChecks","selectForComparison","launchComparison","newSet","selectSet","selectedComparisons","computedSets","addSet","RevisionHistory","AnnotationSets","Viewer","ImportAnnotations","SidebarContext","ViewerAlert","beforeRouteLeave","to","viewerRef","parsed","currentJob","findType","routeRevision","routeSet","success","updateLocation","uploaderDialog","fileManager","handleNotification","girderBrowser","refresh","shouldShowUpload","getLocationType","summaryList","labelColors","ordinalColorMapper","label","updateList","datasets","beforeEnter","adminGuard","toArray","Router","routes","Login","ViewerLoader","RouterPage","children","AdminPage","Jobs","Home","Summary","DataBrowser","locationModule","namespaced","mutations","setSelected","defaultRoute","setLocationFromRoute","newLocation","setRouteFromLocation","datasetModule","load","metaStatic","dsMeta","parentCollection","setFavicon","href","faviconLink","querySelector","getElementsByTagName","setTitle","titleEl","brandModule","favicon","logo","defaultLogo","alertMessage","setBrandData","loadBrand","userModule","setUserState","loadUser","NonRunningStates","jobModule","jobIds","datasetStatus","completeJobsInfo","datasetRunningState","datasetCompleteJobs","setJobState","setDatasetStatus","setCompleteJobsInfo","removeCompleteJobsInfo","removeCompleteJob","runningJobs","QUEUED","updateJob","job","dataset_id","Vuex","modules","Dataset","beforeEach","JobsInit","productionTip","vMousetrap","hostname","SentryInit","dsn","integrations","SentryVue","logErrors","release","environment","VueGtag","notificationBus","App","webpackContext","req","webpackContextResolve","__webpack_require__","module","exports","vtkjs","__webpack_module_cache__","moduleId","cachedModule","threw","__webpack_modules__","deferred","O","chunkIds","priority","notFulfilled","fulfilled","getter","__esModule","definition","defineProperty","enumerable","globalThis","hmd","create","prop","hasOwnProperty","toStringTag","nmd","paths","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","chunkLoadingGlobal","self","__webpack_exports__"],"sourceRoot":""}