@collabdt/core 0.3.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core/components/AppSidebarContent.d.ts +1 -1
- package/dist/core/components/AppSidebarContent.d.ts.map +1 -1
- package/dist/core/components/AppSidebarContent.js +9 -9
- package/dist/core/components/AppSidebarContent.js.map +1 -1
- package/dist/core/components/ConfirmDialog.js.map +1 -1
- package/dist/core/components/DataTableSkeleton.d.ts.map +1 -1
- package/dist/core/components/DataTableSkeleton.js.map +1 -1
- package/dist/core/components/LanguageSwitch.d.ts.map +1 -1
- package/dist/core/components/LanguageSwitch.js +4 -4
- package/dist/core/components/LanguageSwitch.js.map +1 -1
- package/dist/core/components/Logo.js +1 -1
- package/dist/core/components/Logo.js.map +1 -1
- package/dist/core/components/Toolbar.d.ts +1 -1
- package/dist/core/components/Toolbar.d.ts.map +1 -1
- package/dist/core/components/Toolbar.js +1 -1
- package/dist/core/components/Toolbar.js.map +1 -1
- package/dist/core/components/ToolbarBody.d.ts +1 -1
- package/dist/core/components/ToolbarBody.d.ts.map +1 -1
- package/dist/core/components/ToolbarBody.js +1 -1
- package/dist/core/components/ToolbarBody.js.map +1 -1
- package/dist/core/components/ToolbarSubmenu.d.ts +1 -1
- package/dist/core/components/ToolbarSubmenu.d.ts.map +1 -1
- package/dist/core/components/ToolbarSubmenu.js +2 -2
- package/dist/core/components/ToolbarSubmenu.js.map +1 -1
- package/dist/core/components/TopNavigationBar.d.ts.map +1 -1
- package/dist/core/components/TopNavigationBar.js +5 -5
- package/dist/core/components/TopNavigationBar.js.map +1 -1
- package/dist/core/components/authentication/AuthPage.d.ts.map +1 -1
- package/dist/core/components/authentication/AuthPage.js +5 -5
- package/dist/core/components/authentication/AuthPage.js.map +1 -1
- package/dist/core/components/authentication/ForgotPassword.d.ts.map +1 -1
- package/dist/core/components/authentication/ForgotPassword.js +3 -3
- package/dist/core/components/authentication/ForgotPassword.js.map +1 -1
- package/dist/core/components/authentication/Signin.d.ts.map +1 -1
- package/dist/core/components/authentication/Signin.js +5 -5
- package/dist/core/components/authentication/Signin.js.map +1 -1
- package/dist/core/components/authentication/Signup.d.ts.map +1 -1
- package/dist/core/components/authentication/Signup.js +7 -7
- package/dist/core/components/authentication/Signup.js.map +1 -1
- package/dist/core/components/instance-not-found/index.d.ts.map +1 -1
- package/dist/core/components/instance-not-found/index.js +4 -4
- package/dist/core/components/instance-not-found/index.js.map +1 -1
- package/dist/core/components/instance-not-found/src/OrganizationNotFoundSection.d.ts.map +1 -1
- package/dist/core/components/instance-not-found/src/OrganizationNotFoundSection.js +3 -3
- package/dist/core/components/instance-not-found/src/OrganizationNotFoundSection.js.map +1 -1
- package/dist/core/components/organizationConfig/index.d.ts.map +1 -1
- package/dist/core/components/organizationConfig/index.js +4 -4
- package/dist/core/components/organizationConfig/index.js.map +1 -1
- package/dist/core/components/organizationConfig/src/organizationConfigContent.js +2 -2
- package/dist/core/components/organizationConfig/src/organizationConfigContent.js.map +1 -1
- package/dist/core/components/settings/index.d.ts.map +1 -1
- package/dist/core/components/settings/index.js +2 -2
- package/dist/core/components/settings/index.js.map +1 -1
- package/dist/core/components/settings/src/AccountSettingsPanel.d.ts.map +1 -1
- package/dist/core/components/settings/src/AccountSettingsPanel.js +8 -8
- package/dist/core/components/settings/src/AccountSettingsPanel.js.map +1 -1
- package/dist/core/components/settings/src/ChangePassword.d.ts.map +1 -1
- package/dist/core/components/settings/src/ChangePassword.js +5 -5
- package/dist/core/components/settings/src/ChangePassword.js.map +1 -1
- package/dist/core/components/settings/src/OrganizationSettingsPanel.d.ts.map +1 -1
- package/dist/core/components/settings/src/OrganizationSettingsPanel.js +7 -7
- package/dist/core/components/settings/src/OrganizationSettingsPanel.js.map +1 -1
- package/dist/core/components/settings/src/SettingsContent.d.ts.map +1 -1
- package/dist/core/components/settings/src/SettingsContent.js +1 -1
- package/dist/core/components/settings/src/SettingsContent.js.map +1 -1
- package/dist/core/components/settings/src/SettingsSidebar.d.ts.map +1 -1
- package/dist/core/components/settings/src/SettingsSidebar.js +3 -3
- package/dist/core/components/settings/src/SettingsSidebar.js.map +1 -1
- package/dist/core/components/settings/src/UsersSettingsPanel.js +1 -1
- package/dist/core/components/settings/src/UsersSettingsPanel.js.map +1 -1
- package/dist/core/components/support/BugReportDialog.d.ts.map +1 -1
- package/dist/core/components/support/BugReportDialog.js +8 -8
- package/dist/core/components/support/BugReportDialog.js.map +1 -1
- package/dist/core/components/support/FeatureRequestDialog.d.ts.map +1 -1
- package/dist/core/components/support/FeatureRequestDialog.js +6 -6
- package/dist/core/components/support/FeatureRequestDialog.js.map +1 -1
- package/dist/core/components/support/SupportMenu.d.ts.map +1 -1
- package/dist/core/components/support/SupportMenu.js +1 -1
- package/dist/core/components/support/SupportMenu.js.map +1 -1
- package/dist/core/components/ui/Accordion.d.ts +1 -1
- package/dist/core/components/ui/Accordion.d.ts.map +1 -1
- package/dist/core/components/ui/Accordion.js +1 -1
- package/dist/core/components/ui/Accordion.js.map +1 -1
- package/dist/core/components/ui/AddItemDialog.d.ts.map +1 -1
- package/dist/core/components/ui/AddItemDialog.js +1 -1
- package/dist/core/components/ui/AddItemDialog.js.map +1 -1
- package/dist/core/components/ui/AlertDialog.d.ts +1 -1
- package/dist/core/components/ui/AlertDialog.d.ts.map +1 -1
- package/dist/core/components/ui/AlertDialog.js +1 -1
- package/dist/core/components/ui/AlertDialog.js.map +1 -1
- package/dist/core/components/ui/AnimatedBackground.js +1 -1
- package/dist/core/components/ui/AnimatedBackground.js.map +1 -1
- package/dist/core/components/ui/AppSidebar.d.ts.map +1 -1
- package/dist/core/components/ui/AppSidebar.js +7 -7
- package/dist/core/components/ui/AppSidebar.js.map +1 -1
- package/dist/core/components/ui/Avatar.d.ts +1 -1
- package/dist/core/components/ui/Avatar.d.ts.map +1 -1
- package/dist/core/components/ui/Avatar.js +1 -1
- package/dist/core/components/ui/Avatar.js.map +1 -1
- package/dist/core/components/ui/Badge.d.ts.map +1 -1
- package/dist/core/components/ui/Badge.js.map +1 -1
- package/dist/core/components/ui/Breadcrumb.d.ts.map +1 -1
- package/dist/core/components/ui/Breadcrumb.js +2 -2
- package/dist/core/components/ui/Breadcrumb.js.map +1 -1
- package/dist/core/components/ui/Button.d.ts.map +1 -1
- package/dist/core/components/ui/Button.js +1 -1
- package/dist/core/components/ui/Button.js.map +1 -1
- package/dist/core/components/ui/Calendar.d.ts +2 -1
- package/dist/core/components/ui/Calendar.d.ts.map +1 -1
- package/dist/core/components/ui/Calendar.js +1 -1
- package/dist/core/components/ui/Calendar.js.map +1 -1
- package/dist/core/components/ui/Checkbox.d.ts +1 -1
- package/dist/core/components/ui/Checkbox.d.ts.map +1 -1
- package/dist/core/components/ui/Checkbox.js +1 -1
- package/dist/core/components/ui/Checkbox.js.map +1 -1
- package/dist/core/components/ui/CollapsibleSection.d.ts.map +1 -1
- package/dist/core/components/ui/CollapsibleSection.js +2 -2
- package/dist/core/components/ui/CollapsibleSection.js.map +1 -1
- package/dist/core/components/ui/Command.d.ts +8 -8
- package/dist/core/components/ui/Command.d.ts.map +1 -1
- package/dist/core/components/ui/Command.js +1 -1
- package/dist/core/components/ui/Command.js.map +1 -1
- package/dist/core/components/ui/Comments/CollapsibleCommentItem.d.ts +1 -1
- package/dist/core/components/ui/Comments/CollapsibleCommentItem.d.ts.map +1 -1
- package/dist/core/components/ui/Comments/CollapsibleCommentItem.js +9 -9
- package/dist/core/components/ui/Comments/CollapsibleCommentItem.js.map +1 -1
- package/dist/core/components/ui/Comments/Comment.d.ts.map +1 -1
- package/dist/core/components/ui/Comments/Comment.js +4 -4
- package/dist/core/components/ui/Comments/Comment.js.map +1 -1
- package/dist/core/components/ui/Comments/CommentInput.d.ts.map +1 -1
- package/dist/core/components/ui/Comments/CommentInput.js +6 -6
- package/dist/core/components/ui/Comments/CommentInput.js.map +1 -1
- package/dist/core/components/ui/Comments/CommentsSection.d.ts.map +1 -1
- package/dist/core/components/ui/Comments/CommentsSection.js +4 -4
- package/dist/core/components/ui/Comments/CommentsSection.js.map +1 -1
- package/dist/core/components/ui/Comments/commentUtils.d.ts +1 -1
- package/dist/core/components/ui/Comments/commentUtils.d.ts.map +1 -1
- package/dist/core/components/ui/Comments/commentUtils.js.map +1 -1
- package/dist/core/components/ui/Countdown.d.ts.map +1 -1
- package/dist/core/components/ui/Countdown.js +1 -1
- package/dist/core/components/ui/Countdown.js.map +1 -1
- package/dist/core/components/ui/DataTable.d.ts +1 -1
- package/dist/core/components/ui/DataTable.d.ts.map +1 -1
- package/dist/core/components/ui/DataTable.js +17 -17
- package/dist/core/components/ui/DataTable.js.map +1 -1
- package/dist/core/components/ui/DatePicker.d.ts.map +1 -1
- package/dist/core/components/ui/DatePicker.js +2 -2
- package/dist/core/components/ui/DatePicker.js.map +1 -1
- package/dist/core/components/ui/DescriptionList.d.ts.map +1 -1
- package/dist/core/components/ui/DescriptionList.js +2 -2
- package/dist/core/components/ui/DescriptionList.js.map +1 -1
- package/dist/core/components/ui/Dialog.d.ts +1 -1
- package/dist/core/components/ui/Dialog.d.ts.map +1 -1
- package/dist/core/components/ui/Dialog.js +1 -1
- package/dist/core/components/ui/Dialog.js.map +1 -1
- package/dist/core/components/ui/DropdownMenu.d.ts +1 -1
- package/dist/core/components/ui/DropdownMenu.d.ts.map +1 -1
- package/dist/core/components/ui/DropdownMenu.js +1 -1
- package/dist/core/components/ui/DropdownMenu.js.map +1 -1
- package/dist/core/components/ui/ExportData.d.ts +2 -2
- package/dist/core/components/ui/ExportData.d.ts.map +1 -1
- package/dist/core/components/ui/ExportData.js +5 -5
- package/dist/core/components/ui/ExportData.js.map +1 -1
- package/dist/core/components/ui/FilesManager/src/FileItemComponent.d.ts.map +1 -1
- package/dist/core/components/ui/FilesManager/src/FileItemComponent.js +3 -3
- package/dist/core/components/ui/FilesManager/src/FileItemComponent.js.map +1 -1
- package/dist/core/components/ui/FilesManager/src/FileMarker.d.ts.map +1 -1
- package/dist/core/components/ui/FilesManager/src/FileMarker.js +2 -2
- package/dist/core/components/ui/FilesManager/src/FileMarker.js.map +1 -1
- package/dist/core/components/ui/FilesManager/src/ViewerContextMenu.d.ts.map +1 -1
- package/dist/core/components/ui/FilesManager/src/ViewerContextMenu.js +1 -1
- package/dist/core/components/ui/FilesManager/src/ViewerContextMenu.js.map +1 -1
- package/dist/core/components/ui/FilesManager/src/convertIfcToFragmentsFile.d.ts.map +1 -1
- package/dist/core/components/ui/FilesManager/src/convertIfcToFragmentsFile.js.map +1 -1
- package/dist/core/components/ui/FilesManager/src/downloadUtils.d.ts +1 -1
- package/dist/core/components/ui/FilesManager/src/downloadUtils.d.ts.map +1 -1
- package/dist/core/components/ui/FilesManager/src/downloadUtils.js.map +1 -1
- package/dist/core/components/ui/FilesManager/src/useCommonFileUpload.js.map +1 -1
- package/dist/core/components/ui/FilesManager/src/useFileActions.d.ts +2 -2
- package/dist/core/components/ui/FilesManager/src/useFileActions.d.ts.map +1 -1
- package/dist/core/components/ui/FilesManager/src/useFileActions.js +2 -2
- package/dist/core/components/ui/FilesManager/src/useFileActions.js.map +1 -1
- package/dist/core/components/ui/FilesManager/src/useFileDeleteHandler.js +1 -1
- package/dist/core/components/ui/FilesManager/src/useFileDeleteHandler.js.map +1 -1
- package/dist/core/components/ui/FilesManager/src/useFileUploadHandler.js +3 -3
- package/dist/core/components/ui/FilesManager/src/useFileUploadHandler.js.map +1 -1
- package/dist/core/components/ui/FilesManager/src/useFileUploadWithProgress.d.ts.map +1 -1
- package/dist/core/components/ui/FilesManager/src/useFileUploadWithProgress.js.map +1 -1
- package/dist/core/components/ui/GenericTool.d.ts +1 -1
- package/dist/core/components/ui/GenericTool.d.ts.map +1 -1
- package/dist/core/components/ui/GenericTool.js +2 -2
- package/dist/core/components/ui/GenericTool.js.map +1 -1
- package/dist/core/components/ui/Icons/FloorPlanIcon.js +1 -1
- package/dist/core/components/ui/Icons/FloorPlanIcon.js.map +1 -1
- package/dist/core/components/ui/InfoSidebar/Container.d.ts.map +1 -1
- package/dist/core/components/ui/InfoSidebar/Container.js.map +1 -1
- package/dist/core/components/ui/InfoSidebar/Header.d.ts.map +1 -1
- package/dist/core/components/ui/InfoSidebar/Header.js +4 -4
- package/dist/core/components/ui/InfoSidebar/Header.js.map +1 -1
- package/dist/core/components/ui/InfoSidebar/index.d.ts +1 -1
- package/dist/core/components/ui/InfoSidebar/index.d.ts.map +1 -1
- package/dist/core/components/ui/InfoSidebar/index.js +1 -1
- package/dist/core/components/ui/InfoSidebar/index.js.map +1 -1
- package/dist/core/components/ui/Label.d.ts +1 -1
- package/dist/core/components/ui/Label.d.ts.map +1 -1
- package/dist/core/components/ui/Label.js +1 -1
- package/dist/core/components/ui/Label.js.map +1 -1
- package/dist/core/components/ui/LanguageToggle.d.ts +1 -1
- package/dist/core/components/ui/LanguageToggle.d.ts.map +1 -1
- package/dist/core/components/ui/LanguageToggle.js +1 -1
- package/dist/core/components/ui/LanguageToggle.js.map +1 -1
- package/dist/core/components/ui/Menubar.d.ts +1 -1
- package/dist/core/components/ui/Menubar.d.ts.map +1 -1
- package/dist/core/components/ui/Menubar.js +1 -1
- package/dist/core/components/ui/Menubar.js.map +1 -1
- package/dist/core/components/ui/NavUser.js +7 -7
- package/dist/core/components/ui/NavUser.js.map +1 -1
- package/dist/core/components/ui/Navbar.d.ts.map +1 -1
- package/dist/core/components/ui/Navbar.js +2 -2
- package/dist/core/components/ui/Navbar.js.map +1 -1
- package/dist/core/components/ui/Popover.d.ts +1 -1
- package/dist/core/components/ui/Popover.d.ts.map +1 -1
- package/dist/core/components/ui/Popover.js +1 -1
- package/dist/core/components/ui/Popover.js.map +1 -1
- package/dist/core/components/ui/Progress.d.ts +1 -1
- package/dist/core/components/ui/Progress.d.ts.map +1 -1
- package/dist/core/components/ui/Progress.js +1 -1
- package/dist/core/components/ui/Progress.js.map +1 -1
- package/dist/core/components/ui/ScrollArea.d.ts +1 -1
- package/dist/core/components/ui/ScrollArea.d.ts.map +1 -1
- package/dist/core/components/ui/ScrollArea.js +1 -1
- package/dist/core/components/ui/ScrollArea.js.map +1 -1
- package/dist/core/components/ui/SearchInput.d.ts.map +1 -1
- package/dist/core/components/ui/SearchInput.js +2 -2
- package/dist/core/components/ui/SearchInput.js.map +1 -1
- package/dist/core/components/ui/Select.d.ts +1 -1
- package/dist/core/components/ui/Select.d.ts.map +1 -1
- package/dist/core/components/ui/Select.js +3 -3
- package/dist/core/components/ui/Select.js.map +1 -1
- package/dist/core/components/ui/Sensors/CollapsibleSensorItem.d.ts +1 -1
- package/dist/core/components/ui/Sensors/CollapsibleSensorItem.d.ts.map +1 -1
- package/dist/core/components/ui/Sensors/CollapsibleSensorItem.js +10 -10
- package/dist/core/components/ui/Sensors/CollapsibleSensorItem.js.map +1 -1
- package/dist/core/components/ui/Sensors/Sensor.d.ts +2 -1
- package/dist/core/components/ui/Sensors/Sensor.d.ts.map +1 -1
- package/dist/core/components/ui/Sensors/Sensor.js +3 -3
- package/dist/core/components/ui/Sensors/Sensor.js.map +1 -1
- package/dist/core/components/ui/Sensors/SensorChart.d.ts +1 -1
- package/dist/core/components/ui/Sensors/SensorChart.d.ts.map +1 -1
- package/dist/core/components/ui/Sensors/SensorChart.js +1 -1
- package/dist/core/components/ui/Sensors/SensorChart.js.map +1 -1
- package/dist/core/components/ui/Sensors/SensorInput.d.ts.map +1 -1
- package/dist/core/components/ui/Sensors/SensorInput.js +9 -9
- package/dist/core/components/ui/Sensors/SensorInput.js.map +1 -1
- package/dist/core/components/ui/Sensors/SensorTagsSection.d.ts.map +1 -1
- package/dist/core/components/ui/Sensors/SensorTagsSection.js +3 -3
- package/dist/core/components/ui/Sensors/SensorTagsSection.js.map +1 -1
- package/dist/core/components/ui/Sensors/SensorsSection.d.ts.map +1 -1
- package/dist/core/components/ui/Sensors/SensorsSection.js +7 -7
- package/dist/core/components/ui/Sensors/SensorsSection.js.map +1 -1
- package/dist/core/components/ui/Sensors/SensorsSectionSkeleton.d.ts.map +1 -1
- package/dist/core/components/ui/Sensors/SensorsSectionSkeleton.js.map +1 -1
- package/dist/core/components/ui/Sensors/sensorUtils.d.ts +1 -1
- package/dist/core/components/ui/Sensors/sensorUtils.d.ts.map +1 -1
- package/dist/core/components/ui/Sensors/sensorUtils.js.map +1 -1
- package/dist/core/components/ui/Separator.d.ts +1 -1
- package/dist/core/components/ui/Separator.d.ts.map +1 -1
- package/dist/core/components/ui/Separator.js +1 -1
- package/dist/core/components/ui/Separator.js.map +1 -1
- package/dist/core/components/ui/SettingsButton.d.ts.map +1 -1
- package/dist/core/components/ui/SettingsButton.js +4 -4
- package/dist/core/components/ui/SettingsButton.js.map +1 -1
- package/dist/core/components/ui/ShareFeature/ShareToolSubmenu.d.ts +1 -1
- package/dist/core/components/ui/ShareFeature/ShareToolSubmenu.d.ts.map +1 -1
- package/dist/core/components/ui/ShareFeature/ShareToolSubmenu.js +14 -14
- package/dist/core/components/ui/ShareFeature/ShareToolSubmenu.js.map +1 -1
- package/dist/core/components/ui/Sheet.d.ts +1 -1
- package/dist/core/components/ui/Sheet.d.ts.map +1 -1
- package/dist/core/components/ui/Sheet.js +1 -1
- package/dist/core/components/ui/Sheet.js.map +1 -1
- package/dist/core/components/ui/Sidebar.d.ts +1 -1
- package/dist/core/components/ui/Sidebar.d.ts.map +1 -1
- package/dist/core/components/ui/Sidebar.js +6 -6
- package/dist/core/components/ui/Sidebar.js.map +1 -1
- package/dist/core/components/ui/Slider.d.ts +1 -1
- package/dist/core/components/ui/Slider.d.ts.map +1 -1
- package/dist/core/components/ui/Slider.js +1 -1
- package/dist/core/components/ui/Slider.js.map +1 -1
- package/dist/core/components/ui/Switch.d.ts +1 -1
- package/dist/core/components/ui/Switch.d.ts.map +1 -1
- package/dist/core/components/ui/Switch.js +1 -1
- package/dist/core/components/ui/Switch.js.map +1 -1
- package/dist/core/components/ui/Tabs.d.ts +1 -1
- package/dist/core/components/ui/Tabs.d.ts.map +1 -1
- package/dist/core/components/ui/Tabs.js +1 -1
- package/dist/core/components/ui/Tabs.js.map +1 -1
- package/dist/core/components/ui/Toggle.d.ts +1 -1
- package/dist/core/components/ui/Toggle.d.ts.map +1 -1
- package/dist/core/components/ui/Toggle.js +1 -1
- package/dist/core/components/ui/Toggle.js.map +1 -1
- package/dist/core/components/ui/ToggleGroup.d.ts +1 -1
- package/dist/core/components/ui/ToggleGroup.d.ts.map +1 -1
- package/dist/core/components/ui/ToggleGroup.js +1 -1
- package/dist/core/components/ui/ToggleGroup.js.map +1 -1
- package/dist/core/components/ui/ToolbarButton.d.ts +1 -1
- package/dist/core/components/ui/ToolbarButton.d.ts.map +1 -1
- package/dist/core/components/ui/ToolbarButton.js +1 -1
- package/dist/core/components/ui/ToolbarButton.js.map +1 -1
- package/dist/core/components/ui/Tooltip.d.ts +1 -1
- package/dist/core/components/ui/Tooltip.d.ts.map +1 -1
- package/dist/core/components/ui/Tooltip.js +1 -1
- package/dist/core/components/ui/Tooltip.js.map +1 -1
- package/dist/core/components/ui/UserAvatar.d.ts.map +1 -1
- package/dist/core/components/ui/UserAvatar.js +1 -1
- package/dist/core/components/ui/UserAvatar.js.map +1 -1
- package/dist/core/components/ui/downloadUtils.d.ts.map +1 -1
- package/dist/core/components/ui/downloadUtils.js.map +1 -1
- package/dist/core/components/ui/stats.d.ts.map +1 -1
- package/dist/core/components/ui/stats.js.map +1 -1
- package/dist/core/components/ui/uploadFile.js +1 -1
- package/dist/core/components/ui/uploadFile.js.map +1 -1
- package/dist/core/components/viewers/Data/DataMenu.d.ts +1 -1
- package/dist/core/components/viewers/Data/DataMenu.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/DataMenu.js +11 -11
- package/dist/core/components/viewers/Data/DataMenu.js.map +1 -1
- package/dist/core/components/viewers/Data/FilterButtons.d.ts +1 -1
- package/dist/core/components/viewers/Data/FilterButtons.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/FilterButtons.js +7 -7
- package/dist/core/components/viewers/Data/FilterButtons.js.map +1 -1
- package/dist/core/components/viewers/Data/HeaderButtons.d.ts +1 -1
- package/dist/core/components/viewers/Data/HeaderButtons.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/HeaderButtons.js +9 -9
- package/dist/core/components/viewers/Data/HeaderButtons.js.map +1 -1
- package/dist/core/components/viewers/Data/MoreOptions.d.ts +1 -1
- package/dist/core/components/viewers/Data/MoreOptions.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/MoreOptions.js +16 -16
- package/dist/core/components/viewers/Data/MoreOptions.js.map +1 -1
- package/dist/core/components/viewers/Data/advancedFilter/Filters.d.ts +1 -1
- package/dist/core/components/viewers/Data/advancedFilter/Filters.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/advancedFilter/Filters.js +2 -2
- package/dist/core/components/viewers/Data/advancedFilter/Filters.js.map +1 -1
- package/dist/core/components/viewers/Data/advancedFilter/FiltersDialog.d.ts +1 -1
- package/dist/core/components/viewers/Data/advancedFilter/FiltersDialog.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/advancedFilter/FiltersDialog.js +6 -6
- package/dist/core/components/viewers/Data/advancedFilter/FiltersDialog.js.map +1 -1
- package/dist/core/components/viewers/Data/buildingDetails/AddBuilding.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/buildingDetails/AddBuilding.js +3 -3
- package/dist/core/components/viewers/Data/buildingDetails/AddBuilding.js.map +1 -1
- package/dist/core/components/viewers/Data/buildingDetails/BuildingDetails.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/buildingDetails/BuildingDetails.js +10 -10
- package/dist/core/components/viewers/Data/buildingDetails/BuildingDetails.js.map +1 -1
- package/dist/core/components/viewers/Data/buildingDetails/BuildingsMoreOptions.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/buildingDetails/BuildingsMoreOptions.js +11 -11
- package/dist/core/components/viewers/Data/buildingDetails/BuildingsMoreOptions.js.map +1 -1
- package/dist/core/components/viewers/Data/buildingDetails/FieldRenderer.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/buildingDetails/FieldRenderer.js +10 -10
- package/dist/core/components/viewers/Data/buildingDetails/FieldRenderer.js.map +1 -1
- package/dist/core/components/viewers/Data/buildingDetails/GeocoderInput.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/buildingDetails/GeocoderInput.js.map +1 -1
- package/dist/core/components/viewers/Data/buildingDetails/buildingSchemaTemplate.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/buildingDetails/buildingSchemaTemplate.js.map +1 -1
- package/dist/core/components/viewers/Data/details/AttachedFiles.d.ts +1 -1
- package/dist/core/components/viewers/Data/details/AttachedFiles.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/details/AttachedFiles.js +3 -3
- package/dist/core/components/viewers/Data/details/AttachedFiles.js.map +1 -1
- package/dist/core/components/viewers/Data/details/DetailActions.d.ts +1 -1
- package/dist/core/components/viewers/Data/details/DetailActions.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/details/DetailActions.js +2 -2
- package/dist/core/components/viewers/Data/details/DetailActions.js.map +1 -1
- package/dist/core/components/viewers/Data/details/DetailHeader.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/details/DetailHeader.js.map +1 -1
- package/dist/core/components/viewers/Data/details/EnergySourcesGrid.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/details/EnergySourcesGrid.js +4 -4
- package/dist/core/components/viewers/Data/details/EnergySourcesGrid.js.map +1 -1
- package/dist/core/components/viewers/Data/details/FieldValue.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/details/FieldValue.js +2 -2
- package/dist/core/components/viewers/Data/details/FieldValue.js.map +1 -1
- package/dist/core/components/viewers/Data/details/FileUpload.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/details/FileUpload.js +2 -2
- package/dist/core/components/viewers/Data/details/FileUpload.js.map +1 -1
- package/dist/core/components/viewers/Data/details/FilterFiles.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/details/FilterFiles.js +2 -2
- package/dist/core/components/viewers/Data/details/FilterFiles.js.map +1 -1
- package/dist/core/components/viewers/Data/details/TabSidebar.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/details/TabSidebar.js +3 -3
- package/dist/core/components/viewers/Data/details/TabSidebar.js.map +1 -1
- package/dist/core/components/viewers/Data/files/DatatableFileAdder.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/files/DatatableFileAdder.js +3 -3
- package/dist/core/components/viewers/Data/files/DatatableFileAdder.js.map +1 -1
- package/dist/core/components/viewers/Data/files/FileDetails.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/files/FileDetails.js +8 -8
- package/dist/core/components/viewers/Data/files/FileDetails.js.map +1 -1
- package/dist/core/components/viewers/Data/files/FileMoreOptions.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/files/FileMoreOptions.js +8 -8
- package/dist/core/components/viewers/Data/files/FileMoreOptions.js.map +1 -1
- package/dist/core/components/viewers/Data/files/FilePreview.d.ts +1 -1
- package/dist/core/components/viewers/Data/files/FilePreview.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/files/FilePreview.js +1 -1
- package/dist/core/components/viewers/Data/files/FilePreview.js.map +1 -1
- package/dist/core/components/viewers/Data/infrastructureDetails/AddInfrastructure.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/infrastructureDetails/AddInfrastructure.js +3 -3
- package/dist/core/components/viewers/Data/infrastructureDetails/AddInfrastructure.js.map +1 -1
- package/dist/core/components/viewers/Data/infrastructureDetails/FieldRenderer.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/infrastructureDetails/FieldRenderer.js +2 -2
- package/dist/core/components/viewers/Data/infrastructureDetails/FieldRenderer.js.map +1 -1
- package/dist/core/components/viewers/Data/infrastructureDetails/InfrastructureDetails.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/infrastructureDetails/InfrastructureDetails.js +6 -6
- package/dist/core/components/viewers/Data/infrastructureDetails/InfrastructureDetails.js.map +1 -1
- package/dist/core/components/viewers/Data/siteDetails/AddSite.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/siteDetails/AddSite.js +5 -5
- package/dist/core/components/viewers/Data/siteDetails/AddSite.js.map +1 -1
- package/dist/core/components/viewers/Data/siteDetails/AssociatedBuildings.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/siteDetails/AssociatedBuildings.js +10 -10
- package/dist/core/components/viewers/Data/siteDetails/AssociatedBuildings.js.map +1 -1
- package/dist/core/components/viewers/Data/siteDetails/FieldRenderer.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/siteDetails/FieldRenderer.js +9 -9
- package/dist/core/components/viewers/Data/siteDetails/FieldRenderer.js.map +1 -1
- package/dist/core/components/viewers/Data/siteDetails/SiteDetails.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/siteDetails/SiteDetails.js +11 -11
- package/dist/core/components/viewers/Data/siteDetails/SiteDetails.js.map +1 -1
- package/dist/core/components/viewers/Data/userDetails/AddUser.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/userDetails/AddUser.js +3 -3
- package/dist/core/components/viewers/Data/userDetails/AddUser.js.map +1 -1
- package/dist/core/components/viewers/Data/userDetails/UserDetails.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/userDetails/UserDetails.js +12 -12
- package/dist/core/components/viewers/Data/userDetails/UserDetails.js.map +1 -1
- package/dist/core/components/viewers/Data/userDetails/UserMoreOptions.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/userDetails/UserMoreOptions.js +12 -12
- package/dist/core/components/viewers/Data/userDetails/UserMoreOptions.js.map +1 -1
- package/dist/core/components/viewers/Data/utils/Columns.d.ts +2 -2
- package/dist/core/components/viewers/Data/utils/Columns.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/utils/Columns.js +7 -7
- package/dist/core/components/viewers/Data/utils/Columns.js.map +1 -1
- package/dist/core/components/viewers/Data/utils/Headers.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/utils/Headers.js.map +1 -1
- package/dist/core/components/viewers/Data/utils/csvUtils.js.map +1 -1
- package/dist/core/components/viewers/Data/utils/positionParser.js.map +1 -1
- package/dist/core/components/viewers/Data/utils/useViewerData.d.ts +2 -2
- package/dist/core/components/viewers/Data/utils/useViewerData.d.ts.map +1 -1
- package/dist/core/components/viewers/Data/utils/useViewerData.js.map +1 -1
- package/dist/core/components/viewers/Viewer.d.ts +1 -1
- package/dist/core/components/viewers/Viewer.d.ts.map +1 -1
- package/dist/core/components/viewers/Viewer.js +6 -6
- package/dist/core/components/viewers/Viewer.js.map +1 -1
- package/dist/core/components/viewers/bim/BimToolbar.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/BimToolbar.js +1 -1
- package/dist/core/components/viewers/bim/BimToolbar.js.map +1 -1
- package/dist/core/components/viewers/bim/BimViewer.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/BimViewer.js +7 -7
- package/dist/core/components/viewers/bim/BimViewer.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BCFTopicsManager.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BCFTopicsManager.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BIMManager/index.d.ts +2 -2
- package/dist/core/components/viewers/bim/src/BIMManager/index.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BIMManager/index.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimLoadingState/index.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimLoadingState/index.js +9 -9
- package/dist/core/components/viewers/bim/src/BimLoadingState/index.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimMeasurements/LenghtMeasurement.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimMeasurements/LenghtMeasurement.js +1 -1
- package/dist/core/components/viewers/bim/src/BimMeasurements/LenghtMeasurement.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/index.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/index.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/index.js +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/index.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/CollapsibleTopicItem.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/CollapsibleTopicItem.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/CollapsibleTopicItem.js +5 -5
- package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/CollapsibleTopicItem.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/CreateTopicDialog.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/CreateTopicDialog.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/CreateTopicDialog.js +9 -9
- package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/CreateTopicDialog.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/TopicsSection.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/TopicsSection.js +6 -6
- package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/TopicsSection.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/index.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/index.js +4 -4
- package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/index.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/src/FilesSection.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/src/FilesSection.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/src/FilesSection.js +10 -10
- package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/src/FilesSection.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/src/ModelsSection.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/src/ModelsSection.js +9 -9
- package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/src/ModelsSection.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/index.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/index.js +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/index.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/src/ElevationsSection.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/src/ElevationsSection.js +2 -2
- package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/src/ElevationsSection.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/src/FloorplanSection.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/src/FloorplanSection.js +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/src/FloorplanSection.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/src/SpatialStructureSection.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/src/SpatialStructureSection.js +6 -6
- package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/src/SpatialStructureSection.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/SensorsTab/index.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/SensorsTab/index.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/SensorsTab/index.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/index.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/index.js +2 -2
- package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/index.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/GridManagement.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/GridManagement.js +5 -5
- package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/GridManagement.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/LightingManagement.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/LightingManagement.js +3 -3
- package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/LightingManagement.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/RenderMode.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/RenderMode.js +3 -3
- package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/RenderMode.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/ToggleProjection.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/ToggleProjection.js +4 -4
- package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/ToggleProjection.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/TabSelector.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/TabSelector.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/TabSelector.js +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/TabSelector.js.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/index.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/BimSidebar/src/index.js +5 -5
- package/dist/core/components/viewers/bim/src/BimSidebar/src/index.js.map +1 -1
- package/dist/core/components/viewers/bim/src/CameraProjection.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/CameraProjection.js.map +1 -1
- package/dist/core/components/viewers/bim/src/ClippingPlane.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/ClippingPlane.js +1 -1
- package/dist/core/components/viewers/bim/src/ClippingPlane.js.map +1 -1
- package/dist/core/components/viewers/bim/src/Cursor.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/Cursor.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/Cursor.js.map +1 -1
- package/dist/core/components/viewers/bim/src/DXFLoader/index.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/DXFLoader/index.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/DXFLoader/index.js +1 -1
- package/dist/core/components/viewers/bim/src/DXFLoader/index.js.map +1 -1
- package/dist/core/components/viewers/bim/src/ElevationsTool/index.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/ElevationsTool/index.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/ElevationsTool/index.js +1 -1
- package/dist/core/components/viewers/bim/src/ElevationsTool/index.js.map +1 -1
- package/dist/core/components/viewers/bim/src/ElevationsTool/src/ElevationProjector.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/ElevationsTool/src/ElevationProjector.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/ElevationsTool/src/ElevationProjector.js.map +1 -1
- package/dist/core/components/viewers/bim/src/ElevationsTool/src/types.d.ts +4 -4
- package/dist/core/components/viewers/bim/src/ElevationsTool/src/types.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/ElevationsTool/src/types.js.map +1 -1
- package/dist/core/components/viewers/bim/src/FitCamera.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/FitCamera.js +1 -1
- package/dist/core/components/viewers/bim/src/FitCamera.js.map +1 -1
- package/dist/core/components/viewers/bim/src/FloorplanTool/index.d.ts +3 -3
- package/dist/core/components/viewers/bim/src/FloorplanTool/index.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/FloorplanTool/index.js +1 -1
- package/dist/core/components/viewers/bim/src/FloorplanTool/index.js.map +1 -1
- package/dist/core/components/viewers/bim/src/FloorplanTool/src/FloorplanRenderer.d.ts +3 -3
- package/dist/core/components/viewers/bim/src/FloorplanTool/src/FloorplanRenderer.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/FloorplanTool/src/FloorplanRenderer.js.map +1 -1
- package/dist/core/components/viewers/bim/src/FloorplanTool/src/StoreyProjector.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/FloorplanTool/src/StoreyProjector.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/FloorplanTool/src/StoreyProjector.js.map +1 -1
- package/dist/core/components/viewers/bim/src/FloorplanTool/src/types.d.ts +2 -2
- package/dist/core/components/viewers/bim/src/FloorplanTool/src/types.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/FloorplanTool/src/types.js.map +1 -1
- package/dist/core/components/viewers/bim/src/GhostMode.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/GhostMode.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/GhostMode.js.map +1 -1
- package/dist/core/components/viewers/bim/src/Highlighter/index.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/Highlighter/index.js +1 -1
- package/dist/core/components/viewers/bim/src/Highlighter/index.js.map +1 -1
- package/dist/core/components/viewers/bim/src/IDSManager/index.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/IDSManager/index.js +3 -3
- package/dist/core/components/viewers/bim/src/IDSManager/index.js.map +1 -1
- package/dist/core/components/viewers/bim/src/IDSManager/src/IDSLegend.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/IDSManager/src/IDSLegend.js +2 -2
- package/dist/core/components/viewers/bim/src/IDSManager/src/IDSLegend.js.map +1 -1
- package/dist/core/components/viewers/bim/src/LoadIfcAsFragments.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/LoadIfcAsFragments.js.map +1 -1
- package/dist/core/components/viewers/bim/src/LoadModels.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/LoadModels.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/LoadModels.js +1 -1
- package/dist/core/components/viewers/bim/src/LoadModels.js.map +1 -1
- package/dist/core/components/viewers/bim/src/ModelManager/index.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/ModelManager/index.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/ModelManager/index.js +4 -4
- package/dist/core/components/viewers/bim/src/ModelManager/index.js.map +1 -1
- package/dist/core/components/viewers/bim/src/SimpleBimViewer.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/SimpleBimViewer.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/SimpleBimViewer.js +8 -8
- package/dist/core/components/viewers/bim/src/SimpleBimViewer.js.map +1 -1
- package/dist/core/components/viewers/bim/src/SpatialStructure.js.map +1 -1
- package/dist/core/components/viewers/bim/src/ViewportGizmo.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/ViewportGizmo.js +2 -2
- package/dist/core/components/viewers/bim/src/ViewportGizmo.js.map +1 -1
- package/dist/core/components/viewers/bim/src/lib/CameraController.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/lib/CameraController.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/lib/CameraController.js.map +1 -1
- package/dist/core/components/viewers/bim/src/lib/ChromeController.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/lib/ChromeController.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/lib/ChromeController.js.map +1 -1
- package/dist/core/components/viewers/bim/src/lib/ClipController.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/lib/ClipController.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/lib/ClipController.js.map +1 -1
- package/dist/core/components/viewers/bim/src/lib/GridController.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/lib/GridController.js.map +1 -1
- package/dist/core/components/viewers/bim/src/lib/TrueNorthPopover.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/lib/TrueNorthPopover.js +1 -1
- package/dist/core/components/viewers/bim/src/lib/TrueNorthPopover.js.map +1 -1
- package/dist/core/components/viewers/bim/src/lib/ViewSectionList.d.ts +2 -2
- package/dist/core/components/viewers/bim/src/lib/ViewSectionList.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/lib/ViewSectionList.js +1 -1
- package/dist/core/components/viewers/bim/src/lib/ViewSectionList.js.map +1 -1
- package/dist/core/components/viewers/bim/src/lib/drawingProjection.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/lib/drawingProjection.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/lib/drawingProjection.js.map +1 -1
- package/dist/core/components/viewers/bim/src/lib/useBuildingName.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/lib/useBuildingName.js.map +1 -1
- package/dist/core/components/viewers/bim/src/lib/useFriendlyIfcClassName.js +1 -1
- package/dist/core/components/viewers/bim/src/lib/useFriendlyIfcClassName.js.map +1 -1
- package/dist/core/components/viewers/bim/src/propertiesMenu/index.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/propertiesMenu/index.js +4 -4
- package/dist/core/components/viewers/bim/src/propertiesMenu/index.js.map +1 -1
- package/dist/core/components/viewers/bim/src/propertiesMenu/src/ElementList.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/propertiesMenu/src/ElementList.js +1 -1
- package/dist/core/components/viewers/bim/src/propertiesMenu/src/ElementList.js.map +1 -1
- package/dist/core/components/viewers/bim/src/propertiesMenu/src/PropertiesMenuHeader.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/propertiesMenu/src/PropertiesMenuHeader.js +2 -2
- package/dist/core/components/viewers/bim/src/propertiesMenu/src/PropertiesMenuHeader.js.map +1 -1
- package/dist/core/components/viewers/bim/src/propertiesMenu/src/PropertyGroup.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/propertiesMenu/src/PropertyGroup.js.map +1 -1
- package/dist/core/components/viewers/bim/src/propertiesMenu/src/useElementProperties.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/propertiesMenu/src/useElementProperties.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/propertiesMenu/src/useElementProperties.js +2 -2
- package/dist/core/components/viewers/bim/src/propertiesMenu/src/useElementProperties.js.map +1 -1
- package/dist/core/components/viewers/bim/src/propertiesMenu/src/utils.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/propertiesMenu/src/utils.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/index.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/index.js +9 -9
- package/dist/core/components/viewers/bim/src/tools/AddToBim/index.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddDxf.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddDxf.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddDxf.js +2 -2
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddDxf.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddFile.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddFile.js +2 -2
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddFile.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddSensor.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddSensor.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddSensor.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddToBimToolbar.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddToBimToolbar.js +3 -3
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddToBimToolbar.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/BimComment.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/BimComment.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/BimComment.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/BimSensor.d.ts +2 -2
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/BimSensor.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/BimSensor.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/FileHandler.d.ts +5 -5
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/FileHandler.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/FileHandler.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/FileMarkerUtils.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/FileMarkerUtils.js +2 -2
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/FileMarkerUtils.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/Position3DCard.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/Position3DCard.js +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/Position3DCard.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/renderCSS2DMarkers.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/renderCSS2DMarkers.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/renderCSS2DMarkers.js +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/renderCSS2DMarkers.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useCommentMarkers.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useCommentMarkers.js +4 -4
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useCommentMarkers.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useFilePlacement.d.ts +2 -2
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useFilePlacement.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useFilePlacement.js +4 -4
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useFilePlacement.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useSensorMarkers.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useSensorMarkers.js +6 -6
- package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useSensorMarkers.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/BIMSearchTool.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/BIMSearchTool.js +2 -2
- package/dist/core/components/viewers/bim/src/tools/BIMSearchTool.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/ClippingTool/ClippingTool.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/tools/ClippingTool/ClippingTool.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/ClippingTool/ClippingTool.js +6 -6
- package/dist/core/components/viewers/bim/src/tools/ClippingTool/ClippingTool.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/ExplodeByLevelTool.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/tools/ExplodeByLevelTool.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/ExplodeByLevelTool.js +3 -3
- package/dist/core/components/viewers/bim/src/tools/ExplodeByLevelTool.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/FitCameraTool.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/tools/FitCameraTool.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/FitCameraTool.js +2 -2
- package/dist/core/components/viewers/bim/src/tools/FitCameraTool.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/InspectBimTool.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/tools/InspectBimTool.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/InspectBimTool.js +4 -4
- package/dist/core/components/viewers/bim/src/tools/InspectBimTool.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/bimToolbar.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/tools/bimToolbar.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/bimToolbar.js +4 -4
- package/dist/core/components/viewers/bim/src/tools/bimToolbar.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/measureBimTool.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/tools/measureBimTool.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/measureBimTool.js +5 -5
- package/dist/core/components/viewers/bim/src/tools/measureBimTool.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/selectionBimTool.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/tools/selectionBimTool.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/selectionBimTool.js +5 -5
- package/dist/core/components/viewers/bim/src/tools/selectionBimTool.js.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/shareBimTool.d.ts +1 -1
- package/dist/core/components/viewers/bim/src/tools/shareBimTool.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/src/tools/shareBimTool.js.map +1 -1
- package/dist/core/components/viewers/bim/utils/GizmoController.d.ts +1 -1
- package/dist/core/components/viewers/bim/utils/GizmoController.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/utils/GizmoController.js.map +1 -1
- package/dist/core/components/viewers/bim/utils/setCameraLookAt.d.ts +1 -1
- package/dist/core/components/viewers/bim/utils/setCameraLookAt.d.ts.map +1 -1
- package/dist/core/components/viewers/bim/utils/setCameraLookAt.js.map +1 -1
- package/dist/core/components/viewers/map/MapViewer.d.ts +1 -1
- package/dist/core/components/viewers/map/MapViewer.d.ts.map +1 -1
- package/dist/core/components/viewers/map/MapViewer.js +7 -7
- package/dist/core/components/viewers/map/MapViewer.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/AddPortalDialog.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/AddPortalDialog.js +4 -4
- package/dist/core/components/viewers/map/datasets/AddPortalDialog.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/DatasetDetails.d.ts +1 -1
- package/dist/core/components/viewers/map/datasets/DatasetDetails.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/DatasetDetails.js +4 -4
- package/dist/core/components/viewers/map/datasets/DatasetDetails.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/DatasetManager/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/DatasetManager/index.js +13 -13
- package/dist/core/components/viewers/map/datasets/DatasetManager/index.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/DatasetManager/src/FieldsTable.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/DatasetManager/src/FieldsTable.js +2 -2
- package/dist/core/components/viewers/map/datasets/DatasetManager/src/FieldsTable.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/DatasetSkeleton.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/DatasetSkeleton.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/Filters.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/Filters.js +2 -2
- package/dist/core/components/viewers/map/datasets/Filters.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/NestedFilter.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/NestedFilter.js +1 -1
- package/dist/core/components/viewers/map/datasets/NestedFilter.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/RowActions.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/RowActions.js +3 -3
- package/dist/core/components/viewers/map/datasets/RowActions.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/data.d.ts +1 -1
- package/dist/core/components/viewers/map/datasets/data.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/data.js +2 -2
- package/dist/core/components/viewers/map/datasets/data.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/index.d.ts +1 -1
- package/dist/core/components/viewers/map/datasets/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/index.js +11 -11
- package/dist/core/components/viewers/map/datasets/index.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/arcGISDatasets.d.ts +1 -1
- package/dist/core/components/viewers/map/datasets/src/arcGISDatasets.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/arcGISDatasets.js +2 -2
- package/dist/core/components/viewers/map/datasets/src/arcGISDatasets.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/builtinLiveDatasets.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/builtinLiveDatasets.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/cache.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/ckanDatasets.d.ts +1 -1
- package/dist/core/components/viewers/map/datasets/src/ckanDatasets.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/ckanDatasets.js +1 -1
- package/dist/core/components/viewers/map/datasets/src/ckanDatasets.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/localDatasets.d.ts +1 -1
- package/dist/core/components/viewers/map/datasets/src/localDatasets.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/localDatasets.js +3 -3
- package/dist/core/components/viewers/map/datasets/src/localDatasets.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/minioDatasets.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/minioDatasets.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/opendatasoftDatasets.d.ts +1 -1
- package/dist/core/components/viewers/map/datasets/src/opendatasoftDatasets.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/opendatasoftDatasets.js +1 -1
- package/dist/core/components/viewers/map/datasets/src/opendatasoftDatasets.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/publishedTiles.d.ts +1 -1
- package/dist/core/components/viewers/map/datasets/src/publishedTiles.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/publishedTiles.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/socrataDatasets.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/socrataDatasets.js +1 -1
- package/dist/core/components/viewers/map/datasets/src/socrataDatasets.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/urlSources.d.ts +1 -12
- package/dist/core/components/viewers/map/datasets/src/urlSources.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/urlSources.js +1 -1
- package/dist/core/components/viewers/map/datasets/src/urlSources.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/useDatasetsForPortals.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/useDatasetsForPortals.js +1 -1
- package/dist/core/components/viewers/map/datasets/src/useDatasetsForPortals.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/useFastDatasetCache.d.ts +1 -1
- package/dist/core/components/viewers/map/datasets/src/useFastDatasetCache.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/src/useFastDatasetCache.js.map +1 -1
- package/dist/core/components/viewers/map/datasets/utils.d.ts +1 -1
- package/dist/core/components/viewers/map/datasets/utils.d.ts.map +1 -1
- package/dist/core/components/viewers/map/datasets/utils.js.map +1 -1
- package/dist/core/components/viewers/map/legends/MapLegendHost.d.ts.map +1 -1
- package/dist/core/components/viewers/map/legends/MapLegendHost.js +3 -3
- package/dist/core/components/viewers/map/legends/MapLegendHost.js.map +1 -1
- package/dist/core/components/viewers/map/src/Geocoder.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/Geocoder.js +8 -8
- package/dist/core/components/viewers/map/src/Geocoder.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/index.d.ts +1 -1
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/index.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/DatabaseBuildingPopover/index.d.ts +1 -1
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/DatabaseBuildingPopover/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/DatabaseBuildingPopover/index.js +3 -3
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/DatabaseBuildingPopover/index.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/DatabaseBuildingPopover/src/BuildingsTools.d.ts +1 -1
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/DatabaseBuildingPopover/src/BuildingsTools.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/DatabaseBuildingPopover/src/BuildingsTools.js +11 -10
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/DatabaseBuildingPopover/src/BuildingsTools.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/NonDatabaseBuildingPopover.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/NonDatabaseBuildingPopover.js +23 -55
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/NonDatabaseBuildingPopover.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/OpenDataFeaturePopover.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/OpenDataFeaturePopover.js +4 -4
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/OpenDataFeaturePopover.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/PopoverSkeleton.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/PopoverSkeleton.js +2 -2
- package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/PopoverSkeleton.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/index.js +5 -5
- package/dist/core/components/viewers/map/src/MapLayers/index.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/BimLayer/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/BimLayer/index.js +5 -5
- package/dist/core/components/viewers/map/src/MapLayers/src/BimLayer/index.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/BuildingLayers/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/BuildingLayers/index.js +4 -4
- package/dist/core/components/viewers/map/src/MapLayers/src/BuildingLayers/index.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/BuildingLayers/src/databaseBuildings.d.ts +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/BuildingLayers/src/databaseBuildings.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/BuildingLayers/src/databaseBuildings.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/CommentLayer/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/CommentLayer/index.js +9 -9
- package/dist/core/components/viewers/map/src/MapLayers/src/CommentLayer/index.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/CountryLayer/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/CountryLayer/index.js +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/CountryLayer/index.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/EditPosition.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/EditPosition.js +3 -3
- package/dist/core/components/viewers/map/src/MapLayers/src/EditPosition.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/FileModelLayer/FileModelLayer.d.ts +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/FileModelLayer/FileModelLayer.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/FileModelLayer/FileModelLayer.js +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/FileModelLayer/FileModelLayer.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/FileIcon.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/FileIcon.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/FileManagerRow.d.ts +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/FileManagerRow.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/FileManagerRow.js +3 -3
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/FileManagerRow.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/MapFileManager.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/MapFileManager.js +2 -2
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/MapFileManager.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/MapFileMarker.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/MapFileMarker.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/index.js +6 -6
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/index.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/utils/CustomModelLayer.d.ts +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/utils/CustomModelLayer.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/utils/CustomModelLayer.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/utils/openFileInPopUpWindow.d.ts +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/utils/openFileInPopUpWindow.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/utils/openFileInPopUpWindow.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/OpenDataLayer/src/WmsTimeControl.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/OpenDataLayer/src/WmsTimeControl.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/OpenDataLayer/src/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/OpenDataLayer/src/index.js +3 -3
- package/dist/core/components/viewers/map/src/MapLayers/src/OpenDataLayer/src/index.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/PlaceOnMap.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/PlaceOnMap.js +3 -3
- package/dist/core/components/viewers/map/src/MapLayers/src/PlaceOnMap.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/SensorsLayer/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/SensorsLayer/index.js +11 -11
- package/dist/core/components/viewers/map/src/MapLayers/src/SensorsLayer/index.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/SiteContextMenu.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/SiteContextMenu.js +2 -2
- package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/SiteContextMenu.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/SiteLayer.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/SiteLayer.js +4 -4
- package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/SiteLayer.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/index.d.ts +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/index.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/siteGeometry.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/siteGeometry.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/useShowSitesOnMap.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/useShowSitesOnMap.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/TabSelector.d.ts +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/TabSelector.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/TabSelector.js +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/TabSelector.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/index.d.ts +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/index.js +4 -4
- package/dist/core/components/viewers/map/src/MapSidebar/index.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/CommunicationTab/index.d.ts +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/CommunicationTab/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/CommunicationTab/index.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/index.js +2 -2
- package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/index.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/src/FilesSection.d.ts +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/src/FilesSection.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/src/FilesSection.js +5 -5
- package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/src/FilesSection.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/src/ModelsSection.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/src/ModelsSection.js +5 -5
- package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/src/ModelsSection.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/index.d.ts +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/index.js +4 -4
- package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/index.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/src/AppliedDatasetsSection.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/src/AppliedDatasetsSection.js +4 -4
- package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/src/AppliedDatasetsSection.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/src/AvailableDatasetsSection.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/src/AvailableDatasetsSection.js +2 -2
- package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/src/AvailableDatasetsSection.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/SensorsTab/index.d.ts +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/SensorsTab/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/SensorsTab/index.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/index.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/LocationSettings.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/LocationSettings.js +3 -3
- package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/LocationSettings.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/MapCustomization.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/MapCustomization.js +3 -3
- package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/MapCustomization.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/MapProjection.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/MapProjection.js +3 -3
- package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/MapProjection.js.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/TerrainLevel.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/TerrainLevel.js +3 -3
- package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/TerrainLevel.js.map +1 -1
- package/dist/core/components/viewers/map/src/SimpleMap.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/SimpleMap.js +1 -1
- package/dist/core/components/viewers/map/src/SimpleMap.js.map +1 -1
- package/dist/core/components/viewers/map/src/compare/AddItem.d.ts +1 -1
- package/dist/core/components/viewers/map/src/compare/AddItem.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/compare/AddItem.js +6 -6
- package/dist/core/components/viewers/map/src/compare/AddItem.js.map +1 -1
- package/dist/core/components/viewers/map/src/compare/CompareDialog.d.ts +2 -2
- package/dist/core/components/viewers/map/src/compare/CompareDialog.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/compare/CompareDialog.js +5 -5
- package/dist/core/components/viewers/map/src/compare/CompareDialog.js.map +1 -1
- package/dist/core/components/viewers/map/src/compare/index.d.ts +1 -1
- package/dist/core/components/viewers/map/src/compare/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/compare/index.js +6 -6
- package/dist/core/components/viewers/map/src/compare/index.js.map +1 -1
- package/dist/core/components/viewers/map/src/tools/AddTools/AddDataset/DatasetAdder.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/tools/AddTools/AddDataset/DatasetAdder.js +3 -3
- package/dist/core/components/viewers/map/src/tools/AddTools/AddDataset/DatasetAdder.js.map +1 -1
- package/dist/core/components/viewers/map/src/tools/AddTools/AddFile/FileAdder.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/tools/AddTools/AddFile/FileAdder.js +5 -5
- package/dist/core/components/viewers/map/src/tools/AddTools/AddFile/FileAdder.js.map +1 -1
- package/dist/core/components/viewers/map/src/tools/AddTools/AddSite/AssociateBuildingsDialog.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/tools/AddTools/AddSite/AssociateBuildingsDialog.js +3 -3
- package/dist/core/components/viewers/map/src/tools/AddTools/AddSite/AssociateBuildingsDialog.js.map +1 -1
- package/dist/core/components/viewers/map/src/tools/AddTools/AddSite/SiteAdder.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/tools/AddTools/AddSite/SiteAdder.js +7 -7
- package/dist/core/components/viewers/map/src/tools/AddTools/AddSite/SiteAdder.js.map +1 -1
- package/dist/core/components/viewers/map/src/tools/AddTools/AddSite/persistSite.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/tools/AddTools/AddSite/persistSite.js +1 -1
- package/dist/core/components/viewers/map/src/tools/AddTools/AddSite/persistSite.js.map +1 -1
- package/dist/core/components/viewers/map/src/tools/AddTools/AddToMap.d.ts +2 -2
- package/dist/core/components/viewers/map/src/tools/AddTools/AddToMap.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/tools/AddTools/AddToMap.js +8 -8
- package/dist/core/components/viewers/map/src/tools/AddTools/AddToMap.js.map +1 -1
- package/dist/core/components/viewers/map/src/tools/DatasetMapTool.d.ts +2 -2
- package/dist/core/components/viewers/map/src/tools/DatasetMapTool.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/tools/DatasetMapTool.js +1 -1
- package/dist/core/components/viewers/map/src/tools/DatasetMapTool.js.map +1 -1
- package/dist/core/components/viewers/map/src/tools/mapTools.d.ts +2 -2
- package/dist/core/components/viewers/map/src/tools/mapTools.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/tools/mapTools.js +4 -4
- package/dist/core/components/viewers/map/src/tools/mapTools.js.map +1 -1
- package/dist/core/components/viewers/map/src/tools/measureMapTool.d.ts +1 -1
- package/dist/core/components/viewers/map/src/tools/measureMapTool.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/tools/measureMapTool.js +3 -3
- package/dist/core/components/viewers/map/src/tools/measureMapTool.js.map +1 -1
- package/dist/core/components/viewers/map/src/tools/shareMapTool.d.ts +1 -1
- package/dist/core/components/viewers/map/src/tools/shareMapTool.d.ts.map +1 -1
- package/dist/core/components/viewers/map/src/tools/shareMapTool.js.map +1 -1
- package/dist/core/components/viewers/map/utils/ClusterManager.d.ts +1 -1
- package/dist/core/components/viewers/map/utils/ClusterManager.d.ts.map +1 -1
- package/dist/core/components/viewers/map/utils/ClusterManager.js.map +1 -1
- package/dist/core/components/viewers/map/utils/MarkerManager.d.ts +1 -1
- package/dist/core/components/viewers/map/utils/MarkerManager.d.ts.map +1 -1
- package/dist/core/components/viewers/map/utils/MarkerManager.js.map +1 -1
- package/dist/core/components/viewers/map/utils/extractCoordinates.js.map +1 -1
- package/dist/core/components/viewers/map/utils/fitBuildingsBounds.d.ts +1 -1
- package/dist/core/components/viewers/map/utils/fitBuildingsBounds.d.ts.map +1 -1
- package/dist/core/components/viewers/map/utils/fitBuildingsBounds.js.map +1 -1
- package/dist/core/components/viewers/map/utils/flyToEach.d.ts +1 -1
- package/dist/core/components/viewers/map/utils/flyToEach.d.ts.map +1 -1
- package/dist/core/components/viewers/map/utils/flyToEach.js.map +1 -1
- package/dist/core/components/viewers/map/utils/geocoder.d.ts +1 -1
- package/dist/core/components/viewers/map/utils/geocoder.d.ts.map +1 -1
- package/dist/core/components/viewers/map/utils/geocoder.js +1 -1
- package/dist/core/components/viewers/map/utils/geocoder.js.map +1 -1
- package/dist/core/components/viewers/map/utils/geocoding/adapters.d.ts +1 -1
- package/dist/core/components/viewers/map/utils/geocoding/adapters.d.ts.map +1 -1
- package/dist/core/components/viewers/map/utils/geocoding/adapters.js.map +1 -1
- package/dist/core/components/viewers/map/utils/geocoding/index.d.ts +1 -1
- package/dist/core/components/viewers/map/utils/geocoding/index.d.ts.map +1 -1
- package/dist/core/components/viewers/map/utils/geocoding/index.js +1 -1
- package/dist/core/components/viewers/map/utils/geocoding/index.js.map +1 -1
- package/dist/core/components/viewers/map/utils/geocoding/osm.d.ts +1 -1
- package/dist/core/components/viewers/map/utils/geocoding/osm.d.ts.map +1 -1
- package/dist/core/components/viewers/map/utils/geocoding/osm.js +1 -1
- package/dist/core/components/viewers/map/utils/geocoding/osm.js.map +1 -1
- package/dist/core/components/viewers/map/utils/geocoding/pelias.d.ts +1 -1
- package/dist/core/components/viewers/map/utils/geocoding/pelias.d.ts.map +1 -1
- package/dist/core/components/viewers/map/utils/geocoding/pelias.js.map +1 -1
- package/dist/core/components/viewers/map/utils/getOsmIdFromMartin.d.ts +1 -1
- package/dist/core/components/viewers/map/utils/getOsmIdFromMartin.d.ts.map +1 -1
- package/dist/core/components/viewers/map/utils/getOsmIdFromMartin.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/PointCloudToolbar.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/PointCloudToolbar.js +1 -1
- package/dist/core/components/viewers/pointcloud/PointCloudToolbar.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/PointCloudViewer.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/PointCloudViewer.js +5 -5
- package/dist/core/components/viewers/pointcloud/PointCloudViewer.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudLoadingState/index.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudLoadingState/index.js +7 -7
- package/dist/core/components/viewers/pointcloud/src/PointCloudLoadingState/index.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudManagement/PointCloudManagementTable.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudManagement/PointCloudManagementTable.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudManagement/PointCloudTable.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudManagement/PointCloudTable.js +15 -15
- package/dist/core/components/viewers/pointcloud/src/PointCloudManagement/PointCloudTable.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudManagement/PointCloudUploadPanel.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudManagement/PointCloudUploadPanel.js +3 -3
- package/dist/core/components/viewers/pointcloud/src/PointCloudManagement/PointCloudUploadPanel.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/TabSelector.d.ts +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/TabSelector.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/TabSelector.js +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/TabSelector.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/index.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/index.js +2 -2
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/index.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/index.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/index.js +3 -3
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/index.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/src/FilesSection.d.ts +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/src/FilesSection.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/src/FilesSection.js +4 -4
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/src/FilesSection.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/src/PointCloudSection.d.ts +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/src/PointCloudSection.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/src/PointCloudSection.js +5 -5
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/src/PointCloudSection.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/index.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/index.js +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/index.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/src/CameraSettings.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/src/CameraSettings.js +3 -3
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/src/CameraSettings.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/src/GridManagement.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/src/GridManagement.js +4 -4
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/src/GridManagement.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/src/PerformanceSettings.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/src/PerformanceSettings.js +10 -10
- package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/src/PerformanceSettings.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/ViewportGizmo.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/ClippingTools/ClippingTool.d.ts +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/ClippingTools/ClippingTool.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/ClippingTools/ClippingTool.js +3 -3
- package/dist/core/components/viewers/pointcloud/src/tools/ClippingTools/ClippingTool.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/FitToScreen.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/FitToScreen.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/AngleMeasurement.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/AngleMeasurement.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/AreaMeasurement.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/AreaMeasurement.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/LineMeasurement.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/LineMeasurement.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/MeasurePointCloudTool.d.ts +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/MeasurePointCloudTool.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/MeasurePointCloudTool.js +6 -6
- package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/MeasurePointCloudTool.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/PCSearchTool.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/PCSearchTool.js +2 -2
- package/dist/core/components/viewers/pointcloud/src/tools/PCSearchTool.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/NodeSizeSelectionTool.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/NodeSizeSelectionTool.js +2 -2
- package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/NodeSizeSelectionTool.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/PerformanceSettingTools.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/PerformanceSettingTools.js +3 -3
- package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/PerformanceSettingTools.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/PointBudgetTool.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/PointBudgetTool.js +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/PointBudgetTool.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/ShowOctreeBoxTool.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/ShowOctreeBoxTool.js +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/ShowOctreeBoxTool.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/SplatQualitySelection.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/SplatQualitySelection.js +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/SplatQualitySelection.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/SetCameraOption.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/SetCameraOption.js +4 -4
- package/dist/core/components/viewers/pointcloud/src/tools/SetCameraOption.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/SharePointCloudTool/index.d.ts +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/SharePointCloudTool/index.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/SharePointCloudTool/index.js +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/SharePointCloudTool/index.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/pointcloudToolbarTools.d.ts +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/pointcloudToolbarTools.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/src/tools/pointcloudToolbarTools.js +2 -2
- package/dist/core/components/viewers/pointcloud/src/tools/pointcloudToolbarTools.js.map +1 -1
- package/dist/core/components/viewers/pointcloud/utils/restoreCameraFromUrl.d.ts +1 -1
- package/dist/core/components/viewers/pointcloud/utils/restoreCameraFromUrl.d.ts.map +1 -1
- package/dist/core/components/viewers/pointcloud/utils/restoreCameraFromUrl.js.map +1 -1
- package/dist/core/hooks/buildings/createBuildingHooks.d.ts +1 -1
- package/dist/core/hooks/buildings/createBuildingHooks.d.ts.map +1 -1
- package/dist/core/hooks/buildings/createBuildingHooks.js.map +1 -1
- package/dist/core/hooks/comments/createCommentHooks.d.ts +1 -1
- package/dist/core/hooks/comments/createCommentHooks.d.ts.map +1 -1
- package/dist/core/hooks/comments/createCommentHooks.js +1 -1
- package/dist/core/hooks/comments/createCommentHooks.js.map +1 -1
- package/dist/core/hooks/files/createFileHooks.d.ts +1 -1
- package/dist/core/hooks/files/createFileHooks.d.ts.map +1 -1
- package/dist/core/hooks/files/createFileHooks.js.map +1 -1
- package/dist/core/hooks/files/files.d.ts.map +1 -1
- package/dist/core/hooks/files/files.js +1 -1
- package/dist/core/hooks/files/files.js.map +1 -1
- package/dist/core/hooks/infrastructures/createInfrastructureHooks.d.ts +1 -1
- package/dist/core/hooks/infrastructures/createInfrastructureHooks.d.ts.map +1 -1
- package/dist/core/hooks/infrastructures/createInfrastructureHooks.js.map +1 -1
- package/dist/core/hooks/openDataPortals/createOpenDataPortalHooks.d.ts +1 -1
- package/dist/core/hooks/openDataPortals/createOpenDataPortalHooks.d.ts.map +1 -1
- package/dist/core/hooks/openDataPortals/createOpenDataPortalHooks.js.map +1 -1
- package/dist/core/hooks/organizations/createOrganizationHooks.d.ts +1 -1
- package/dist/core/hooks/organizations/createOrganizationHooks.d.ts.map +1 -1
- package/dist/core/hooks/organizations/createOrganizationHooks.js.map +1 -1
- package/dist/core/hooks/provider.d.ts +5 -5
- package/dist/core/hooks/provider.d.ts.map +1 -1
- package/dist/core/hooks/provider.js +4 -4
- package/dist/core/hooks/provider.js.map +1 -1
- package/dist/core/hooks/sensorTypes/createSensorTypeHooks.d.ts +1 -1
- package/dist/core/hooks/sensorTypes/createSensorTypeHooks.d.ts.map +1 -1
- package/dist/core/hooks/sensorTypes/createSensorTypeHooks.js.map +1 -1
- package/dist/core/hooks/sensors/createSensorHooks.d.ts +1 -1
- package/dist/core/hooks/sensors/createSensorHooks.d.ts.map +1 -1
- package/dist/core/hooks/sensors/createSensorHooks.js +1 -1
- package/dist/core/hooks/sensors/createSensorHooks.js.map +1 -1
- package/dist/core/hooks/sites/createSiteHooks.d.ts +1 -1
- package/dist/core/hooks/sites/createSiteHooks.d.ts.map +1 -1
- package/dist/core/hooks/sites/createSiteHooks.js.map +1 -1
- package/dist/core/hooks/sites/sites.d.ts.map +1 -1
- package/dist/core/hooks/useCaptureScreenshot.d.ts.map +1 -1
- package/dist/core/hooks/useCaptureScreenshot.js.map +1 -1
- package/dist/core/hooks/useCurrentViewerPosition.d.ts.map +1 -1
- package/dist/core/hooks/useCurrentViewerPosition.js +1 -1
- package/dist/core/hooks/useCurrentViewerPosition.js.map +1 -1
- package/dist/core/hooks/useGeocodingRuntimeConfig.d.ts +1 -1
- package/dist/core/hooks/useGeocodingRuntimeConfig.d.ts.map +1 -1
- package/dist/core/hooks/useGeocodingRuntimeConfig.js.map +1 -1
- package/dist/core/hooks/useShareUrl.d.ts.map +1 -1
- package/dist/core/hooks/useShareUrl.js +1 -1
- package/dist/core/hooks/useShareUrl.js.map +1 -1
- package/dist/core/hooks/users/createUserHooks.d.ts +1 -1
- package/dist/core/hooks/users/createUserHooks.d.ts.map +1 -1
- package/dist/core/hooks/users/createUserHooks.js.map +1 -1
- package/dist/core/i18n/index.js +1 -1
- package/dist/core/i18n/index.js.map +1 -1
- package/dist/core/i18n/messages/en.json +1872 -1872
- package/dist/core/i18n/messages/es.json +1870 -1870
- package/dist/core/i18n/messages/fr.json +1870 -1870
- package/dist/core/plugins/host/context.d.ts +1 -1
- package/dist/core/plugins/host/context.d.ts.map +1 -1
- package/dist/core/plugins/host/context.js.map +1 -1
- package/dist/core/plugins/host/host.d.ts +1 -1
- package/dist/core/plugins/host/host.d.ts.map +1 -1
- package/dist/core/plugins/host/host.js.map +1 -1
- package/dist/core/plugins/host/provider.d.ts.map +1 -1
- package/dist/core/plugins/host/provider.js +2 -2
- package/dist/core/plugins/host/provider.js.map +1 -1
- package/dist/core/store/AppConfig/context.d.ts +1 -1
- package/dist/core/store/AppConfig/context.d.ts.map +1 -1
- package/dist/core/store/AppConfig/context.js.map +1 -1
- package/dist/core/store/AppConfig/reducer.d.ts +2 -2
- package/dist/core/store/AppConfig/reducer.d.ts.map +1 -1
- package/dist/core/store/AppConfig/reducer.js.map +1 -1
- package/dist/core/store/BIM/context.d.ts +1 -1
- package/dist/core/store/BIM/context.d.ts.map +1 -1
- package/dist/core/store/BIM/context.js.map +1 -1
- package/dist/core/store/BIM/reducer.d.ts +3 -3
- package/dist/core/store/BIM/reducer.d.ts.map +1 -1
- package/dist/core/store/BIM/reducer.js.map +1 -1
- package/dist/core/store/Buildings/context.d.ts +1 -1
- package/dist/core/store/Buildings/context.d.ts.map +1 -1
- package/dist/core/store/Buildings/context.js.map +1 -1
- package/dist/core/store/Buildings/reducer.d.ts +2 -2
- package/dist/core/store/Buildings/reducer.d.ts.map +1 -1
- package/dist/core/store/Buildings/reducer.js.map +1 -1
- package/dist/core/store/CombineProviders.d.ts.map +1 -1
- package/dist/core/store/CombineProviders.js +7 -7
- package/dist/core/store/CombineProviders.js.map +1 -1
- package/dist/core/store/Content/context.d.ts +1 -1
- package/dist/core/store/Content/context.d.ts.map +1 -1
- package/dist/core/store/Content/context.js.map +1 -1
- package/dist/core/store/Datasets/context.d.ts +1 -1
- package/dist/core/store/Datasets/context.d.ts.map +1 -1
- package/dist/core/store/Datasets/context.js.map +1 -1
- package/dist/core/store/Datasets/reducer.d.ts +1 -1
- package/dist/core/store/Datasets/reducer.d.ts.map +1 -1
- package/dist/core/store/Datasets/reducer.js.map +1 -1
- package/dist/core/store/Files/context.d.ts +1 -1
- package/dist/core/store/Files/context.d.ts.map +1 -1
- package/dist/core/store/Files/context.js.map +1 -1
- package/dist/core/store/Files/reducer.d.ts +3 -3
- package/dist/core/store/Files/reducer.d.ts.map +1 -1
- package/dist/core/store/Files/reducer.js.map +1 -1
- package/dist/core/store/Map/context.d.ts +1 -1
- package/dist/core/store/Map/context.d.ts.map +1 -1
- package/dist/core/store/Map/context.js +1 -1
- package/dist/core/store/Map/context.js.map +1 -1
- package/dist/core/store/Map/reducer.d.ts +6 -5
- package/dist/core/store/Map/reducer.d.ts.map +1 -1
- package/dist/core/store/Map/reducer.js.map +1 -1
- package/dist/core/store/MapSites/context.d.ts +1 -1
- package/dist/core/store/MapSites/context.d.ts.map +1 -1
- package/dist/core/store/MapSites/context.js.map +1 -1
- package/dist/core/store/MapSites/reducer.d.ts +1 -1
- package/dist/core/store/MapSites/reducer.d.ts.map +1 -1
- package/dist/core/store/MapSites/reducer.js.map +1 -1
- package/dist/core/store/Menus/context.d.ts +1 -1
- package/dist/core/store/Menus/context.d.ts.map +1 -1
- package/dist/core/store/Menus/context.js +2 -2
- package/dist/core/store/Menus/context.js.map +1 -1
- package/dist/core/store/Menus/reducer.d.ts +1 -1
- package/dist/core/store/Menus/reducer.d.ts.map +1 -1
- package/dist/core/store/Menus/reducer.js.map +1 -1
- package/dist/core/store/Permissions/context.d.ts +1 -1
- package/dist/core/store/Permissions/context.d.ts.map +1 -1
- package/dist/core/store/Permissions/context.js +2 -2
- package/dist/core/store/Permissions/context.js.map +1 -1
- package/dist/core/store/PointCloud/context.d.ts +1 -1
- package/dist/core/store/PointCloud/context.d.ts.map +1 -1
- package/dist/core/store/PointCloud/context.js.map +1 -1
- package/dist/core/store/PointCloud/reducer.d.ts +1 -1
- package/dist/core/store/PointCloud/reducer.d.ts.map +1 -1
- package/dist/core/store/PointCloud/reducer.js.map +1 -1
- package/dist/core/store/Tools/context.d.ts +1 -1
- package/dist/core/store/Tools/context.d.ts.map +1 -1
- package/dist/core/store/Tools/context.js.map +1 -1
- package/dist/core/store/Tools/reducer.d.ts +1 -1
- package/dist/core/store/Tools/reducer.d.ts.map +1 -1
- package/dist/core/store/Tools/reducer.js.map +1 -1
- package/dist/core/styles/globals.css +17 -16
- package/dist/core/styles/tailwindMerge.d.ts +1 -1
- package/dist/core/styles/tailwindMerge.d.ts.map +1 -1
- package/dist/core/styles/tailwindMerge.js.map +1 -1
- package/dist/core/types/datasetTypes.d.ts +2 -2
- package/dist/core/types/datasetTypes.d.ts.map +1 -1
- package/dist/core/types/dbTypes.d.ts +1 -1
- package/dist/core/types/dbTypes.d.ts.map +1 -1
- package/dist/core/types/dbTypes.js.map +1 -1
- package/dist/core/types/files.d.ts +2 -2
- package/dist/core/types/files.d.ts.map +1 -1
- package/dist/core/types/global.d.ts +3 -3
- package/dist/core/types/global.d.ts.map +1 -1
- package/dist/core/types/global.js.map +1 -1
- package/dist/core/types/map.d.ts +2 -2
- package/dist/core/types/map.d.ts.map +1 -1
- package/dist/core/types/tools.d.ts +3 -3
- package/dist/core/types/tools.d.ts.map +1 -1
- package/dist/core/types/users.d.ts +2 -2
- package/dist/core/types/users.d.ts.map +1 -1
- package/dist/core/utils/getFileIcon.d.ts +1 -1
- package/dist/core/utils/getFileIcon.d.ts.map +1 -1
- package/dist/core/utils/getFileIcon.js.map +1 -1
- package/dist/core/utils/memcache.js.map +1 -1
- package/dist/core/utils/roles.d.ts.map +1 -1
- package/dist/core/utils/roles.js.map +1 -1
- package/dist/core/utils/timeUtils.js.map +1 -1
- package/dist/core/utils/utils.d.ts +1 -1
- package/dist/core/utils/utils.d.ts.map +1 -1
- package/dist/core/utils/utils.js.map +1 -1
- package/package.json +5 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/core/components/viewers/map/utils/MarkerManager.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport type { LayerColors } from '../../../../types/datasetTypes'\r\nimport { Marker } from 'maplibre-gl'\r\n\r\n// Custom events for marker actions\r\nconst MARKER_REMOVED_EVENT = 'markerRemoved'\r\nconst MARKER_MOVED_EVENT = 'markerMoved'\r\nconst MARKER_EDITING_CHANGED_EVENT = 'markerEditingChanged'\r\n\r\n// Interface for marker events\r\ninterface MarkerEventDetail {\r\n coordinates?: [number, number]\r\n editing?: boolean\r\n}\r\n\r\nexport interface ClusterDataset {\r\n name: string\r\n data: any[]\r\n layerColor?: LayerColors | string\r\n}\r\n\r\nexport interface ClusterOptions {\r\n longitudeKey?: string\r\n latitudeKey?: string\r\n color?: string\r\n clusterMaxZoom?: number\r\n clusterRadius?: number\r\n}\r\n\r\nexport class MarkerManager {\r\n private markers: Marker[] = []\r\n private marker: Marker | null = null\r\n private map: any = null\r\n private escKeyCleanup: (() => void) | null = null\r\n private _editing: boolean = false\r\n private _coordinates: [number, number] | null = null\r\n private defaultColour = '#73cee2'\r\n private allowMultiple: boolean = false // <-- Add this\r\n\r\n constructor() {\r\n this.handleEscKey = this.handleEscKey.bind(this)\r\n this.handleMarkerDragEnd = this.handleMarkerDragEnd.bind(this)\r\n }\r\n\r\n // Getter for editing state\r\n get editing(): boolean {\r\n return this._editing\r\n }\r\n\r\n // Setter for editing state\r\n set editing(value: boolean) {\r\n if (this._editing !== value) {\r\n this._editing = value\r\n this.updateMarkerDraggable()\r\n this.dispatchEditingChangedEvent()\r\n }\r\n }\r\n\r\n // Getter for coordinates\r\n get coordinates(): [number, number] | null {\r\n return this._coordinates\r\n }\r\n\r\n // Create and add a marker to the map\r\n create(\r\n coordinates: [number, number],\r\n map: any,\r\n options?: { allowMultiple?: boolean, layerColor?: LayerColors | string, editing?: boolean },\r\n ): Marker {\r\n this.allowMultiple = options?.allowMultiple ?? false\r\n\r\n if (!this.allowMultiple) {\r\n this.remove()\r\n }\r\n\r\n this.map = map\r\n this._coordinates = coordinates\r\n const editing = options?.editing ?? false\r\n const layerColor = options?.layerColor\r\n\r\n // Create marker element\r\n const markerElement = document.createElement('div')\r\n markerElement.style.width = '15px'\r\n markerElement.style.height = '15px'\r\n markerElement.style.borderRadius = '50%'\r\n markerElement.style.backgroundColor\r\n = typeof layerColor === 'string'\r\n ? layerColor\r\n : (layerColor?.color || this.defaultColour)\r\n markerElement.style.border = '3px solid white'\r\n markerElement.style.cursor = editing ? 'move' : 'pointer'\r\n\r\n // Create the marker\r\n const newMarker = new Marker({\r\n element: markerElement,\r\n anchor: 'center',\r\n draggable: editing,\r\n })\r\n .setLngLat(coordinates)\r\n .addTo(map)\r\n\r\n if (editing) {\r\n newMarker.on('dragend', this.handleMarkerDragEnd)\r\n }\r\n\r\n if (this.allowMultiple) {\r\n this.markers.push(newMarker)\r\n }\r\n else {\r\n this.marker = newMarker\r\n }\r\n\r\n this.setupEscapeKeyListener()\r\n\r\n return newMarker\r\n }\r\n\r\n // Update marker draggable state\r\n private updateMarkerDraggable(): void {\r\n if (this.marker) {\r\n // Remove existing drag listener\r\n this.marker.off('dragend', this.handleMarkerDragEnd)\r\n\r\n // Update draggable state\r\n this.marker.setDraggable(this._editing)\r\n\r\n // Update cursor style\r\n const element = this.marker.getElement()\r\n if (element) {\r\n element.style.cursor = this._editing ? 'dragging' : 'pointer'\r\n }\r\n\r\n // Add drag listener if editing\r\n if (this._editing) {\r\n this.marker.on('dragend', this.handleMarkerDragEnd)\r\n }\r\n }\r\n }\r\n\r\n // Handle marker drag end\r\n private handleMarkerDragEnd(): void {\r\n if (this.marker) {\r\n const newCoordinates = this.marker.getLngLat().toArray() as [number, number]\r\n this._coordinates = newCoordinates\r\n this.dispatchMarkerMovedEvent(newCoordinates)\r\n }\r\n }\r\n\r\n // Handle escape key press\r\n private handleEscKey(event: KeyboardEvent): void {\r\n if (event.key === 'Escape') {\r\n this.remove()\r\n }\r\n }\r\n\r\n // Set up escape key listener\r\n private setupEscapeKeyListener(): void {\r\n // Clean up existing listener\r\n if (this.escKeyCleanup) {\r\n this.escKeyCleanup()\r\n }\r\n\r\n // Add new listener\r\n document.addEventListener('keydown', this.handleEscKey)\r\n\r\n // Store cleanup function\r\n this.escKeyCleanup = () => {\r\n document.removeEventListener('keydown', this.handleEscKey)\r\n }\r\n }\r\n\r\n // Remove the marker(s)\r\n remove(): void {\r\n if (this.allowMultiple) {\r\n for (const marker of this.markers) marker.remove()\r\n this.markers = []\r\n this._coordinates = null\r\n this.dispatchMarkerRemovedEvent()\r\n }\r\n else if (this.marker) {\r\n this.marker.remove()\r\n this.marker = null\r\n this._coordinates = null\r\n this.dispatchMarkerRemovedEvent()\r\n }\r\n\r\n // Clean up escape key listener\r\n if (this.escKeyCleanup) {\r\n this.escKeyCleanup()\r\n this.escKeyCleanup = null\r\n }\r\n }\r\n\r\n // Update marker position\r\n updatePosition(coordinates: [number, number]): void {\r\n if (this.marker) {\r\n this.marker.setLngLat(coordinates)\r\n this._coordinates = coordinates\r\n }\r\n }\r\n\r\n // Check if marker exists\r\n hasMarker(): boolean {\r\n return this.marker !== null\r\n }\r\n\r\n // Get the underlying MapLibre marker instance\r\n getMarker(): Marker | null {\r\n return this.marker\r\n }\r\n\r\n // Listen to marker events on this instance\r\n onRemoved(callback: (event: CustomEvent) => void): () => void {\r\n document.addEventListener(MARKER_REMOVED_EVENT, callback as EventListener)\r\n return () => {\r\n document.removeEventListener(MARKER_REMOVED_EVENT, callback as EventListener)\r\n }\r\n }\r\n\r\n onMoved(callback: (event: CustomEvent) => void): () => void {\r\n document.addEventListener(MARKER_MOVED_EVENT, callback as EventListener)\r\n return () => {\r\n document.removeEventListener(MARKER_MOVED_EVENT, callback as EventListener)\r\n }\r\n }\r\n\r\n onEditingChanged(callback: (event: CustomEvent) => void): () => void {\r\n document.addEventListener(MARKER_EDITING_CHANGED_EVENT, callback as EventListener)\r\n return () => {\r\n document.removeEventListener(MARKER_EDITING_CHANGED_EVENT, callback as EventListener)\r\n }\r\n }\r\n\r\n // Dispatch marker removed event\r\n private dispatchMarkerRemovedEvent(): void {\r\n const event = new CustomEvent(MARKER_REMOVED_EVENT, {\r\n detail: {\r\n timestamp: new Date().toISOString(),\r\n markerType: 'marker',\r\n } as MarkerEventDetail,\r\n })\r\n document.dispatchEvent(event)\r\n }\r\n\r\n // Dispatch marker moved event\r\n private dispatchMarkerMovedEvent(coordinates: [number, number]): void {\r\n const event = new CustomEvent(MARKER_MOVED_EVENT, {\r\n detail: {\r\n timestamp: new Date().toISOString(),\r\n markerType: 'marker',\r\n coordinates,\r\n } as MarkerEventDetail,\r\n })\r\n document.dispatchEvent(event)\r\n }\r\n\r\n // Dispatch editing state changed event\r\n private dispatchEditingChangedEvent(): void {\r\n const event = new CustomEvent(MARKER_EDITING_CHANGED_EVENT, {\r\n detail: {\r\n timestamp: new Date().toISOString(),\r\n markerType: 'marker',\r\n editing: this._editing,\r\n coordinates: this._coordinates,\r\n } as MarkerEventDetail,\r\n })\r\n document.dispatchEvent(event)\r\n }\r\n\r\n static addClusterMarkers(\r\n map: any,\r\n dataset: ClusterDataset,\r\n options: ClusterOptions = {},\r\n ): void {\r\n const {\r\n longitudeKey = 'longitude',\r\n latitudeKey = 'latitude',\r\n color = (typeof dataset.layerColor === 'string'\r\n ? dataset.layerColor\r\n : dataset.layerColor?.color) || '#73cee2',\r\n clusterMaxZoom = 14,\r\n clusterRadius = 50,\r\n } = options\r\n\r\n const sourceId = `cluster-${dataset.name}`\r\n const clusterLayerId = `cluster-layer-${dataset.name}`\r\n const countLayerId = `cluster-count-${dataset.name}`\r\n const unclusteredLayerId = `unclustered-${dataset.name}`\r\n\r\n // Prepare GeoJSON FeatureCollection\r\n const geojson = {\r\n type: 'FeatureCollection',\r\n features: dataset.data\r\n .filter((item: any) => item[longitudeKey] && item[latitudeKey])\r\n .map((item: any) => ({\r\n type: 'Feature',\r\n geometry: {\r\n type: 'Point',\r\n coordinates: [item[longitudeKey], item[latitudeKey]],\r\n },\r\n properties: { name: dataset.name },\r\n })),\r\n }\r\n\r\n // Add or update source\r\n if (map.getSource(sourceId)) {\r\n (map.getSource(sourceId) as any).setData(geojson)\r\n }\r\n else {\r\n map.addSource(sourceId, {\r\n type: 'geojson',\r\n data: geojson,\r\n cluster: true,\r\n clusterMaxZoom,\r\n clusterRadius,\r\n })\r\n\r\n // Cluster circles\r\n map.addLayer({\r\n id: clusterLayerId,\r\n type: 'circle',\r\n source: sourceId,\r\n filter: ['has', 'point_count'],\r\n paint: {\r\n 'circle-color': color,\r\n 'circle-radius': [\r\n 'step',\r\n ['get', 'point_count'],\r\n 20,\r\n 100,\r\n 30,\r\n 750,\r\n 40,\r\n ],\r\n },\r\n })\r\n\r\n // Cluster count labels\r\n map.addLayer({\r\n id: countLayerId,\r\n type: 'symbol',\r\n source: sourceId,\r\n filter: ['has', 'point_count'],\r\n layout: {\r\n 'text-field': '{point_count_abbreviated}',\r\n 'text-font': ['DIN Offc Pro Medium', 'Arial Unicode MS Bold'],\r\n 'text-size': 12,\r\n },\r\n paint: {\r\n 'text-color': '#ffffff',\r\n },\r\n })\r\n\r\n // Unclustered points\r\n map.addLayer({\r\n id: unclusteredLayerId,\r\n type: 'circle',\r\n source: sourceId,\r\n filter: ['!', ['has', 'point_count']],\r\n paint: {\r\n 'circle-color': color,\r\n 'circle-radius': 6,\r\n 'circle-stroke-width': 2,\r\n 'circle-stroke-color': '#fff',\r\n },\r\n })\r\n }\r\n }\r\n\r\n // Cleanup method for when the instance is no longer needed\r\n destroy(): void {\r\n this.remove()\r\n }\r\n}\r\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/core/components/viewers/map/utils/MarkerManager.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport { Marker } from 'maplibre-gl'\r\n\r\nimport type { LayerColors } from '../../../../types/datasetTypes'\r\n\r\n// Custom events for marker actions\r\nconst MARKER_REMOVED_EVENT = 'markerRemoved'\r\nconst MARKER_MOVED_EVENT = 'markerMoved'\r\nconst MARKER_EDITING_CHANGED_EVENT = 'markerEditingChanged'\r\n\r\n// Interface for marker events\r\ninterface MarkerEventDetail {\r\n coordinates?: [number, number]\r\n editing?: boolean\r\n}\r\n\r\nexport interface ClusterDataset {\r\n name: string\r\n data: any[]\r\n layerColor?: LayerColors | string\r\n}\r\n\r\nexport interface ClusterOptions {\r\n longitudeKey?: string\r\n latitudeKey?: string\r\n color?: string\r\n clusterMaxZoom?: number\r\n clusterRadius?: number\r\n}\r\n\r\nexport class MarkerManager {\r\n private markers: Marker[] = []\r\n private marker: Marker | null = null\r\n private map: any = null\r\n private escKeyCleanup: (() => void) | null = null\r\n private _editing: boolean = false\r\n private _coordinates: [number, number] | null = null\r\n private defaultColour = '#73cee2'\r\n private allowMultiple: boolean = false // <-- Add this\r\n\r\n constructor() {\r\n this.handleEscKey = this.handleEscKey.bind(this)\r\n this.handleMarkerDragEnd = this.handleMarkerDragEnd.bind(this)\r\n }\r\n\r\n // Getter for editing state\r\n get editing(): boolean {\r\n return this._editing\r\n }\r\n\r\n // Setter for editing state\r\n set editing(value: boolean) {\r\n if (this._editing !== value) {\r\n this._editing = value\r\n this.updateMarkerDraggable()\r\n this.dispatchEditingChangedEvent()\r\n }\r\n }\r\n\r\n // Getter for coordinates\r\n get coordinates(): [number, number] | null {\r\n return this._coordinates\r\n }\r\n\r\n // Create and add a marker to the map\r\n create(\r\n coordinates: [number, number],\r\n map: any,\r\n options?: { allowMultiple?: boolean, layerColor?: LayerColors | string, editing?: boolean },\r\n ): Marker {\r\n this.allowMultiple = options?.allowMultiple ?? false\r\n\r\n if (!this.allowMultiple) {\r\n this.remove()\r\n }\r\n\r\n this.map = map\r\n this._coordinates = coordinates\r\n const editing = options?.editing ?? false\r\n const layerColor = options?.layerColor\r\n\r\n // Create marker element\r\n const markerElement = document.createElement('div')\r\n markerElement.style.width = '15px'\r\n markerElement.style.height = '15px'\r\n markerElement.style.borderRadius = '50%'\r\n markerElement.style.backgroundColor\r\n = typeof layerColor === 'string'\r\n ? layerColor\r\n : (layerColor?.color || this.defaultColour)\r\n markerElement.style.border = '3px solid white'\r\n markerElement.style.cursor = editing ? 'move' : 'pointer'\r\n\r\n // Create the marker\r\n const newMarker = new Marker({\r\n element: markerElement,\r\n anchor: 'center',\r\n draggable: editing,\r\n })\r\n .setLngLat(coordinates)\r\n .addTo(map)\r\n\r\n if (editing) {\r\n newMarker.on('dragend', this.handleMarkerDragEnd)\r\n }\r\n\r\n if (this.allowMultiple) {\r\n this.markers.push(newMarker)\r\n }\r\n else {\r\n this.marker = newMarker\r\n }\r\n\r\n this.setupEscapeKeyListener()\r\n\r\n return newMarker\r\n }\r\n\r\n // Update marker draggable state\r\n private updateMarkerDraggable(): void {\r\n if (this.marker) {\r\n // Remove existing drag listener\r\n this.marker.off('dragend', this.handleMarkerDragEnd)\r\n\r\n // Update draggable state\r\n this.marker.setDraggable(this._editing)\r\n\r\n // Update cursor style\r\n const element = this.marker.getElement()\r\n if (element) {\r\n element.style.cursor = this._editing ? 'dragging' : 'pointer'\r\n }\r\n\r\n // Add drag listener if editing\r\n if (this._editing) {\r\n this.marker.on('dragend', this.handleMarkerDragEnd)\r\n }\r\n }\r\n }\r\n\r\n // Handle marker drag end\r\n private handleMarkerDragEnd(): void {\r\n if (this.marker) {\r\n const newCoordinates = this.marker.getLngLat().toArray() as [number, number]\r\n this._coordinates = newCoordinates\r\n this.dispatchMarkerMovedEvent(newCoordinates)\r\n }\r\n }\r\n\r\n // Handle escape key press\r\n private handleEscKey(event: KeyboardEvent): void {\r\n if (event.key === 'Escape') {\r\n this.remove()\r\n }\r\n }\r\n\r\n // Set up escape key listener\r\n private setupEscapeKeyListener(): void {\r\n // Clean up existing listener\r\n if (this.escKeyCleanup) {\r\n this.escKeyCleanup()\r\n }\r\n\r\n // Add new listener\r\n document.addEventListener('keydown', this.handleEscKey)\r\n\r\n // Store cleanup function\r\n this.escKeyCleanup = () => {\r\n document.removeEventListener('keydown', this.handleEscKey)\r\n }\r\n }\r\n\r\n // Remove the marker(s)\r\n remove(): void {\r\n if (this.allowMultiple) {\r\n for (const marker of this.markers) marker.remove()\r\n this.markers = []\r\n this._coordinates = null\r\n this.dispatchMarkerRemovedEvent()\r\n }\r\n else if (this.marker) {\r\n this.marker.remove()\r\n this.marker = null\r\n this._coordinates = null\r\n this.dispatchMarkerRemovedEvent()\r\n }\r\n\r\n // Clean up escape key listener\r\n if (this.escKeyCleanup) {\r\n this.escKeyCleanup()\r\n this.escKeyCleanup = null\r\n }\r\n }\r\n\r\n // Update marker position\r\n updatePosition(coordinates: [number, number]): void {\r\n if (this.marker) {\r\n this.marker.setLngLat(coordinates)\r\n this._coordinates = coordinates\r\n }\r\n }\r\n\r\n // Check if marker exists\r\n hasMarker(): boolean {\r\n return this.marker !== null\r\n }\r\n\r\n // Get the underlying MapLibre marker instance\r\n getMarker(): Marker | null {\r\n return this.marker\r\n }\r\n\r\n // Listen to marker events on this instance\r\n onRemoved(callback: (event: CustomEvent) => void): () => void {\r\n document.addEventListener(MARKER_REMOVED_EVENT, callback as EventListener)\r\n return () => {\r\n document.removeEventListener(MARKER_REMOVED_EVENT, callback as EventListener)\r\n }\r\n }\r\n\r\n onMoved(callback: (event: CustomEvent) => void): () => void {\r\n document.addEventListener(MARKER_MOVED_EVENT, callback as EventListener)\r\n return () => {\r\n document.removeEventListener(MARKER_MOVED_EVENT, callback as EventListener)\r\n }\r\n }\r\n\r\n onEditingChanged(callback: (event: CustomEvent) => void): () => void {\r\n document.addEventListener(MARKER_EDITING_CHANGED_EVENT, callback as EventListener)\r\n return () => {\r\n document.removeEventListener(MARKER_EDITING_CHANGED_EVENT, callback as EventListener)\r\n }\r\n }\r\n\r\n // Dispatch marker removed event\r\n private dispatchMarkerRemovedEvent(): void {\r\n const event = new CustomEvent(MARKER_REMOVED_EVENT, {\r\n detail: {\r\n timestamp: new Date().toISOString(),\r\n markerType: 'marker',\r\n } as MarkerEventDetail,\r\n })\r\n document.dispatchEvent(event)\r\n }\r\n\r\n // Dispatch marker moved event\r\n private dispatchMarkerMovedEvent(coordinates: [number, number]): void {\r\n const event = new CustomEvent(MARKER_MOVED_EVENT, {\r\n detail: {\r\n timestamp: new Date().toISOString(),\r\n markerType: 'marker',\r\n coordinates,\r\n } as MarkerEventDetail,\r\n })\r\n document.dispatchEvent(event)\r\n }\r\n\r\n // Dispatch editing state changed event\r\n private dispatchEditingChangedEvent(): void {\r\n const event = new CustomEvent(MARKER_EDITING_CHANGED_EVENT, {\r\n detail: {\r\n timestamp: new Date().toISOString(),\r\n markerType: 'marker',\r\n editing: this._editing,\r\n coordinates: this._coordinates,\r\n } as MarkerEventDetail,\r\n })\r\n document.dispatchEvent(event)\r\n }\r\n\r\n static addClusterMarkers(\r\n map: any,\r\n dataset: ClusterDataset,\r\n options: ClusterOptions = {},\r\n ): void {\r\n const {\r\n longitudeKey = 'longitude',\r\n latitudeKey = 'latitude',\r\n color = (typeof dataset.layerColor === 'string'\r\n ? dataset.layerColor\r\n : dataset.layerColor?.color) || '#73cee2',\r\n clusterMaxZoom = 14,\r\n clusterRadius = 50,\r\n } = options\r\n\r\n const sourceId = `cluster-${dataset.name}`\r\n const clusterLayerId = `cluster-layer-${dataset.name}`\r\n const countLayerId = `cluster-count-${dataset.name}`\r\n const unclusteredLayerId = `unclustered-${dataset.name}`\r\n\r\n // Prepare GeoJSON FeatureCollection\r\n const geojson = {\r\n type: 'FeatureCollection',\r\n features: dataset.data\r\n .filter((item: any) => item[longitudeKey] && item[latitudeKey])\r\n .map((item: any) => ({\r\n type: 'Feature',\r\n geometry: {\r\n type: 'Point',\r\n coordinates: [item[longitudeKey], item[latitudeKey]],\r\n },\r\n properties: { name: dataset.name },\r\n })),\r\n }\r\n\r\n // Add or update source\r\n if (map.getSource(sourceId)) {\r\n (map.getSource(sourceId) as any).setData(geojson)\r\n }\r\n else {\r\n map.addSource(sourceId, {\r\n type: 'geojson',\r\n data: geojson,\r\n cluster: true,\r\n clusterMaxZoom,\r\n clusterRadius,\r\n })\r\n\r\n // Cluster circles\r\n map.addLayer({\r\n id: clusterLayerId,\r\n type: 'circle',\r\n source: sourceId,\r\n filter: ['has', 'point_count'],\r\n paint: {\r\n 'circle-color': color,\r\n 'circle-radius': [\r\n 'step',\r\n ['get', 'point_count'],\r\n 20,\r\n 100,\r\n 30,\r\n 750,\r\n 40,\r\n ],\r\n },\r\n })\r\n\r\n // Cluster count labels\r\n map.addLayer({\r\n id: countLayerId,\r\n type: 'symbol',\r\n source: sourceId,\r\n filter: ['has', 'point_count'],\r\n layout: {\r\n 'text-field': '{point_count_abbreviated}',\r\n 'text-font': ['DIN Offc Pro Medium', 'Arial Unicode MS Bold'],\r\n 'text-size': 12,\r\n },\r\n paint: {\r\n 'text-color': '#ffffff',\r\n },\r\n })\r\n\r\n // Unclustered points\r\n map.addLayer({\r\n id: unclusteredLayerId,\r\n type: 'circle',\r\n source: sourceId,\r\n filter: ['!', ['has', 'point_count']],\r\n paint: {\r\n 'circle-color': color,\r\n 'circle-radius': 6,\r\n 'circle-stroke-width': 2,\r\n 'circle-stroke-color': '#fff',\r\n },\r\n })\r\n }\r\n }\r\n\r\n // Cleanup method for when the instance is no longer needed\r\n destroy(): void {\r\n this.remove()\r\n }\r\n}\r\n"],"mappings":"AAGA,SAAS,cAAc;AAKvB,MAAM,uBAAuB;AAC7B,MAAM,qBAAqB;AAC3B,MAAM,+BAA+B;AAsB9B,MAAM,cAAc;AAAA;AAAA,EAUzB,cAAc;AATd,SAAQ,UAAoB,CAAC;AAC7B,SAAQ,SAAwB;AAChC,SAAQ,MAAW;AACnB,SAAQ,gBAAqC;AAC7C,SAAQ,WAAoB;AAC5B,SAAQ,eAAwC;AAChD,SAAQ,gBAAgB;AACxB,SAAQ,gBAAyB;AAG/B,SAAK,eAAe,KAAK,aAAa,KAAK,IAAI;AAC/C,SAAK,sBAAsB,KAAK,oBAAoB,KAAK,IAAI;AAAA,EAC/D;AAAA;AAAA,EAGA,IAAI,UAAmB;AACrB,WAAO,KAAK;AAAA,EACd;AAAA;AAAA,EAGA,IAAI,QAAQ,OAAgB;AAC1B,QAAI,KAAK,aAAa,OAAO;AAC3B,WAAK,WAAW;AAChB,WAAK,sBAAsB;AAC3B,WAAK,4BAA4B;AAAA,IACnC;AAAA,EACF;AAAA;AAAA,EAGA,IAAI,cAAuC;AACzC,WAAO,KAAK;AAAA,EACd;AAAA;AAAA,EAGA,OACE,aACA,KACA,SACQ;AAvEZ;AAwEI,SAAK,iBAAgB,wCAAS,kBAAT,YAA0B;AAE/C,QAAI,CAAC,KAAK,eAAe;AACvB,WAAK,OAAO;AAAA,IACd;AAEA,SAAK,MAAM;AACX,SAAK,eAAe;AACpB,UAAM,WAAU,wCAAS,YAAT,YAAoB;AACpC,UAAM,aAAa,mCAAS;AAG5B,UAAM,gBAAgB,SAAS,cAAc,KAAK;AAClD,kBAAc,MAAM,QAAQ;AAC5B,kBAAc,MAAM,SAAS;AAC7B,kBAAc,MAAM,eAAe;AACnC,kBAAc,MAAM,kBAChB,OAAO,eAAe,WACpB,cACC,yCAAY,UAAS,KAAK;AACjC,kBAAc,MAAM,SAAS;AAC7B,kBAAc,MAAM,SAAS,UAAU,SAAS;AAGhD,UAAM,YAAY,IAAI,OAAO;AAAA,MAC3B,SAAS;AAAA,MACT,QAAQ;AAAA,MACR,WAAW;AAAA,IACb,CAAC,EACE,UAAU,WAAW,EACrB,MAAM,GAAG;AAEZ,QAAI,SAAS;AACX,gBAAU,GAAG,WAAW,KAAK,mBAAmB;AAAA,IAClD;AAEA,QAAI,KAAK,eAAe;AACtB,WAAK,QAAQ,KAAK,SAAS;AAAA,IAC7B,OACK;AACH,WAAK,SAAS;AAAA,IAChB;AAEA,SAAK,uBAAuB;AAE5B,WAAO;AAAA,EACT;AAAA;AAAA,EAGQ,wBAA8B;AACpC,QAAI,KAAK,QAAQ;AAEf,WAAK,OAAO,IAAI,WAAW,KAAK,mBAAmB;AAGnD,WAAK,OAAO,aAAa,KAAK,QAAQ;AAGtC,YAAM,UAAU,KAAK,OAAO,WAAW;AACvC,UAAI,SAAS;AACX,gBAAQ,MAAM,SAAS,KAAK,WAAW,aAAa;AAAA,MACtD;AAGA,UAAI,KAAK,UAAU;AACjB,aAAK,OAAO,GAAG,WAAW,KAAK,mBAAmB;AAAA,MACpD;AAAA,IACF;AAAA,EACF;AAAA;AAAA,EAGQ,sBAA4B;AAClC,QAAI,KAAK,QAAQ;AACf,YAAM,iBAAiB,KAAK,OAAO,UAAU,EAAE,QAAQ;AACvD,WAAK,eAAe;AACpB,WAAK,yBAAyB,cAAc;AAAA,IAC9C;AAAA,EACF;AAAA;AAAA,EAGQ,aAAa,OAA4B;AAC/C,QAAI,MAAM,QAAQ,UAAU;AAC1B,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AAAA;AAAA,EAGQ,yBAA+B;AAErC,QAAI,KAAK,eAAe;AACtB,WAAK,cAAc;AAAA,IACrB;AAGA,aAAS,iBAAiB,WAAW,KAAK,YAAY;AAGtD,SAAK,gBAAgB,MAAM;AACzB,eAAS,oBAAoB,WAAW,KAAK,YAAY;AAAA,IAC3D;AAAA,EACF;AAAA;AAAA,EAGA,SAAe;AACb,QAAI,KAAK,eAAe;AACtB,iBAAW,UAAU,KAAK,QAAS,QAAO,OAAO;AACjD,WAAK,UAAU,CAAC;AAChB,WAAK,eAAe;AACpB,WAAK,2BAA2B;AAAA,IAClC,WACS,KAAK,QAAQ;AACpB,WAAK,OAAO,OAAO;AACnB,WAAK,SAAS;AACd,WAAK,eAAe;AACpB,WAAK,2BAA2B;AAAA,IAClC;AAGA,QAAI,KAAK,eAAe;AACtB,WAAK,cAAc;AACnB,WAAK,gBAAgB;AAAA,IACvB;AAAA,EACF;AAAA;AAAA,EAGA,eAAe,aAAqC;AAClD,QAAI,KAAK,QAAQ;AACf,WAAK,OAAO,UAAU,WAAW;AACjC,WAAK,eAAe;AAAA,IACtB;AAAA,EACF;AAAA;AAAA,EAGA,YAAqB;AACnB,WAAO,KAAK,WAAW;AAAA,EACzB;AAAA;AAAA,EAGA,YAA2B;AACzB,WAAO,KAAK;AAAA,EACd;AAAA;AAAA,EAGA,UAAU,UAAoD;AAC5D,aAAS,iBAAiB,sBAAsB,QAAyB;AACzE,WAAO,MAAM;AACX,eAAS,oBAAoB,sBAAsB,QAAyB;AAAA,IAC9E;AAAA,EACF;AAAA,EAEA,QAAQ,UAAoD;AAC1D,aAAS,iBAAiB,oBAAoB,QAAyB;AACvE,WAAO,MAAM;AACX,eAAS,oBAAoB,oBAAoB,QAAyB;AAAA,IAC5E;AAAA,EACF;AAAA,EAEA,iBAAiB,UAAoD;AACnE,aAAS,iBAAiB,8BAA8B,QAAyB;AACjF,WAAO,MAAM;AACX,eAAS,oBAAoB,8BAA8B,QAAyB;AAAA,IACtF;AAAA,EACF;AAAA;AAAA,EAGQ,6BAAmC;AACzC,UAAM,QAAQ,IAAI,YAAY,sBAAsB;AAAA,MAClD,QAAQ;AAAA,QACN,YAAW,oBAAI,KAAK,GAAE,YAAY;AAAA,QAClC,YAAY;AAAA,MACd;AAAA,IACF,CAAC;AACD,aAAS,cAAc,KAAK;AAAA,EAC9B;AAAA;AAAA,EAGQ,yBAAyB,aAAqC;AACpE,UAAM,QAAQ,IAAI,YAAY,oBAAoB;AAAA,MAChD,QAAQ;AAAA,QACN,YAAW,oBAAI,KAAK,GAAE,YAAY;AAAA,QAClC,YAAY;AAAA,QACZ;AAAA,MACF;AAAA,IACF,CAAC;AACD,aAAS,cAAc,KAAK;AAAA,EAC9B;AAAA;AAAA,EAGQ,8BAAoC;AAC1C,UAAM,QAAQ,IAAI,YAAY,8BAA8B;AAAA,MAC1D,QAAQ;AAAA,QACN,YAAW,oBAAI,KAAK,GAAE,YAAY;AAAA,QAClC,YAAY;AAAA,QACZ,SAAS,KAAK;AAAA,QACd,aAAa,KAAK;AAAA,MACpB;AAAA,IACF,CAAC;AACD,aAAS,cAAc,KAAK;AAAA,EAC9B;AAAA,EAEA,OAAO,kBACL,KACA,SACA,UAA0B,CAAC,GACrB;AApRV;AAqRI,UAAM;AAAA,MACJ,eAAe;AAAA,MACf,cAAc;AAAA,MACd,SAAS,OAAO,QAAQ,eAAe,WACnC,QAAQ,cACR,aAAQ,eAAR,mBAAoB,UAAU;AAAA,MAClC,iBAAiB;AAAA,MACjB,gBAAgB;AAAA,IAClB,IAAI;AAEJ,UAAM,WAAW,WAAW,QAAQ,IAAI;AACxC,UAAM,iBAAiB,iBAAiB,QAAQ,IAAI;AACpD,UAAM,eAAe,iBAAiB,QAAQ,IAAI;AAClD,UAAM,qBAAqB,eAAe,QAAQ,IAAI;AAGtD,UAAM,UAAU;AAAA,MACd,MAAM;AAAA,MACN,UAAU,QAAQ,KACf,OAAO,CAAC,SAAc,KAAK,YAAY,KAAK,KAAK,WAAW,CAAC,EAC7D,IAAI,CAAC,UAAe;AAAA,QACnB,MAAM;AAAA,QACN,UAAU;AAAA,UACR,MAAM;AAAA,UACN,aAAa,CAAC,KAAK,YAAY,GAAG,KAAK,WAAW,CAAC;AAAA,QACrD;AAAA,QACA,YAAY,EAAE,MAAM,QAAQ,KAAK;AAAA,MACnC,EAAE;AAAA,IACN;AAGA,QAAI,IAAI,UAAU,QAAQ,GAAG;AAC3B,MAAC,IAAI,UAAU,QAAQ,EAAU,QAAQ,OAAO;AAAA,IAClD,OACK;AACH,UAAI,UAAU,UAAU;AAAA,QACtB,MAAM;AAAA,QACN,MAAM;AAAA,QACN,SAAS;AAAA,QACT;AAAA,QACA;AAAA,MACF,CAAC;AAGD,UAAI,SAAS;AAAA,QACX,IAAI;AAAA,QACJ,MAAM;AAAA,QACN,QAAQ;AAAA,QACR,QAAQ,CAAC,OAAO,aAAa;AAAA,QAC7B,OAAO;AAAA,UACL,gBAAgB;AAAA,UAChB,iBAAiB;AAAA,YACf;AAAA,YACA,CAAC,OAAO,aAAa;AAAA,YACrB;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,UACF;AAAA,QACF;AAAA,MACF,CAAC;AAGD,UAAI,SAAS;AAAA,QACX,IAAI;AAAA,QACJ,MAAM;AAAA,QACN,QAAQ;AAAA,QACR,QAAQ,CAAC,OAAO,aAAa;AAAA,QAC7B,QAAQ;AAAA,UACN,cAAc;AAAA,UACd,aAAa,CAAC,uBAAuB,uBAAuB;AAAA,UAC5D,aAAa;AAAA,QACf;AAAA,QACA,OAAO;AAAA,UACL,cAAc;AAAA,QAChB;AAAA,MACF,CAAC;AAGD,UAAI,SAAS;AAAA,QACX,IAAI;AAAA,QACJ,MAAM;AAAA,QACN,QAAQ;AAAA,QACR,QAAQ,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC;AAAA,QACpC,OAAO;AAAA,UACL,gBAAgB;AAAA,UAChB,iBAAiB;AAAA,UACjB,uBAAuB;AAAA,UACvB,uBAAuB;AAAA,QACzB;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EACF;AAAA;AAAA,EAGA,UAAgB;AACd,SAAK,OAAO;AAAA,EACd;AACF;","names":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/core/components/viewers/map/utils/extractCoordinates.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport type { MapGeoJSONFeature } from 'maplibre-gl'\r\n\r\n/**\r\n * Extracts coordinates from a MapGeoJSONFeature in a type-safe manner.\r\n * Handles multiple coordinate formats:\r\n * - Standard GeoJSON array: [lng, lat]\r\n * - Object formats: { lng, lat }, { lon, lat }, { x, y }\r\n
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/core/components/viewers/map/utils/extractCoordinates.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport type { MapGeoJSONFeature } from 'maplibre-gl'\r\n\r\n/**\r\n * Extracts coordinates from a MapGeoJSONFeature in a type-safe manner.\r\n * Handles multiple coordinate formats:\r\n * - Standard GeoJSON array: [lng, lat]\r\n * - Object formats: { lng, lat }, { lon, lat }, { x, y }\r\n *\r\n * @param feature - The MapGeoJSONFeature to extract coordinates from\r\n * @returns An object with lng and lat properties, or null if coordinates cannot be extracted\r\n */\r\nexport function extractCoordinatesFromFeature(\r\n feature: MapGeoJSONFeature\r\n): { lng: number; lat: number } | null {\r\n // Type guard to ensure geometry has coordinates\r\n if (!('coordinates' in feature.geometry)) {\r\n return null\r\n }\r\n\r\n const coords = feature.geometry.coordinates\r\n\r\n let lng: number\r\n let lat: number\r\n\r\n if (Array.isArray(coords)) {\r\n // Standard GeoJSON array format: [lng, lat]\r\n [lng, lat] = coords as [number, number]\r\n } else if (typeof coords === 'object' && coords !== null) {\r\n // Handle object format: { lng, lat } or { lon, lat } or { x, y }\r\n lng = (coords as any).lng ?? (coords as any).lon ?? (coords as any).x\r\n lat = (coords as any).lat ?? (coords as any).y\r\n } else {\r\n return null // Invalid coordinate format\r\n }\r\n\r\n // Validate that we have valid numbers\r\n if (typeof lng !== 'number' || typeof lat !== 'number' || isNaN(lng) || isNaN(lat)) {\r\n return null\r\n }\r\n\r\n return { lng, lat }\r\n}\r\n"],"mappings":"AAcO,SAAS,8BACd,SACqC;AAhBvC;AAkBE,MAAI,EAAE,iBAAiB,QAAQ,WAAW;AACxC,WAAO;AAAA,EACT;AAEA,QAAM,SAAS,QAAQ,SAAS;AAEhC,MAAI;AACJ,MAAI;AAEJ,MAAI,MAAM,QAAQ,MAAM,GAAG;AAEzB,KAAC,KAAK,GAAG,IAAI;AAAA,EACf,WAAW,OAAO,WAAW,YAAY,WAAW,MAAM;AAExD,WAAO,kBAAe,QAAf,YAAuB,OAAe,QAAtC,YAA8C,OAAe;AACpE,WAAO,YAAe,QAAf,YAAuB,OAAe;AAAA,EAC/C,OAAO;AACL,WAAO;AAAA,EACT;AAGA,MAAI,OAAO,QAAQ,YAAY,OAAO,QAAQ,YAAY,MAAM,GAAG,KAAK,MAAM,GAAG,GAAG;AAClF,WAAO;AAAA,EACT;AAEA,SAAO,EAAE,KAAK,IAAI;AACpB;","names":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
+
import type { Building, Site } from '../../../../types/dbTypes';
|
|
1
2
|
import type { Map } from 'maplibre-gl';
|
|
2
|
-
import { Building, Site } from '../../../../types/dbTypes';
|
|
3
3
|
export declare const fitBuildingsBounds: (buildings: Building[], map: Map) => void;
|
|
4
4
|
export declare const fitSitesBounds: (sites: Site[], map: Map) => void;
|
|
5
5
|
//# sourceMappingURL=fitBuildingsBounds.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fitBuildingsBounds.d.ts","sourceRoot":"","sources":["../../../../../../src/core/components/viewers/map/utils/fitBuildingsBounds.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"fitBuildingsBounds.d.ts","sourceRoot":"","sources":["../../../../../../src/core/components/viewers/map/utils/fitBuildingsBounds.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAA;AAC/D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AAEtC,eAAO,MAAM,kBAAkB,GAAI,WAAW,QAAQ,EAAE,EAAE,KAAK,GAAG,SAqBjE,CAAA;AACD,eAAO,MAAM,cAAc,GAAI,OAAO,IAAI,EAAE,EAAE,KAAK,GAAG,SAqBrD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/core/components/viewers/map/utils/fitBuildingsBounds.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/core/components/viewers/map/utils/fitBuildingsBounds.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport * as turf from '@turf/turf'\r\n\r\nimport type { Building, Site } from '../../../../types/dbTypes'\r\nimport type { Map } from 'maplibre-gl'\r\n\r\nexport const fitBuildingsBounds = (buildings: Building[], map: Map) => {\r\n // Collect valid building coordinates\r\n const coordinates: [number, number][] = []\r\n for (const building of buildings) {\r\n if (building.buildingLongitude != null && building.buildingLatitude != null) {\r\n coordinates.push([building.buildingLongitude, building.buildingLatitude])\r\n }\r\n }\r\n\r\n // Calculate bounding box of all coordinates\r\n const bbox = turf.bbox(turf.featureCollection(\r\n coordinates.map((coord: [number, number]) => turf.point(coord)),\r\n ))\r\n\r\n if (map && bbox && buildings.length > 0) {\r\n map.fitBounds([[bbox[0], bbox[1]], [bbox[2], bbox[3]]], {\r\n duration: 1000,\r\n maxZoom: 18,\r\n padding: 10,\r\n })\r\n }\r\n}\r\nexport const fitSitesBounds = (sites: Site[], map: Map) => {\r\n // Collect valid site coordinates\r\n const coordinates: [number, number][] = []\r\n for (const site of sites) {\r\n if (site.siteLongitude != null && site.siteLatitude != null) {\r\n coordinates.push([site.siteLongitude, site.siteLatitude])\r\n }\r\n }\r\n\r\n // Calculate bounding box of all coordinates\r\n const bbox = turf.bbox(turf.featureCollection(\r\n coordinates.map((coord: [number, number]) => turf.point(coord)),\r\n ))\r\n\r\n if (map && bbox && sites.length > 0) {\r\n map.fitBounds([[bbox[0], bbox[1]], [bbox[2], bbox[3]]], {\r\n duration: 1000,\r\n maxZoom: 18,\r\n padding: 10,\r\n })\r\n }\r\n}\r\n"],"mappings":"AAGA,YAAY,UAAU;AAKf,MAAM,qBAAqB,CAAC,WAAuB,QAAa;AAErE,QAAM,cAAkC,CAAC;AACzC,aAAW,YAAY,WAAW;AAChC,QAAI,SAAS,qBAAqB,QAAQ,SAAS,oBAAoB,MAAM;AAC3E,kBAAY,KAAK,CAAC,SAAS,mBAAmB,SAAS,gBAAgB,CAAC;AAAA,IAC1E;AAAA,EACF;AAGA,QAAM,OAAO,KAAK,KAAK,KAAK;AAAA,IAC1B,YAAY,IAAI,CAAC,UAA4B,KAAK,MAAM,KAAK,CAAC;AAAA,EAChE,CAAC;AAED,MAAI,OAAO,QAAQ,UAAU,SAAS,GAAG;AACvC,QAAI,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG;AAAA,MACtD,UAAU;AAAA,MACV,SAAS;AAAA,MACT,SAAS;AAAA,IACX,CAAC;AAAA,EACH;AACF;AACO,MAAM,iBAAiB,CAAC,OAAe,QAAa;AAEzD,QAAM,cAAkC,CAAC;AACzC,aAAW,QAAQ,OAAO;AACxB,QAAI,KAAK,iBAAiB,QAAQ,KAAK,gBAAgB,MAAM;AAC3D,kBAAY,KAAK,CAAC,KAAK,eAAe,KAAK,YAAY,CAAC;AAAA,IAC1D;AAAA,EACF;AAGA,QAAM,OAAO,KAAK,KAAK,KAAK;AAAA,IAC1B,YAAY,IAAI,CAAC,UAA4B,KAAK,MAAM,KAAK,CAAC;AAAA,EAChE,CAAC;AAED,MAAI,OAAO,QAAQ,MAAM,SAAS,GAAG;AACnC,QAAI,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG;AAAA,MACtD,UAAU;AAAA,MACV,SAAS;AAAA,MACT,SAAS;AAAA,IACX,CAAC;AAAA,EACH;AACF;","names":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
+
import type { Building } from '../../../../types/dbTypes';
|
|
1
2
|
import type { Map } from 'maplibre-gl';
|
|
2
|
-
import { Building } from '../../../../types/dbTypes';
|
|
3
3
|
export declare const flyToEach: (map: Map, buildings: Building[]) => Promise<void>;
|
|
4
4
|
//# sourceMappingURL=flyToEach.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flyToEach.d.ts","sourceRoot":"","sources":["../../../../../../src/core/components/viewers/map/utils/flyToEach.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"flyToEach.d.ts","sourceRoot":"","sources":["../../../../../../src/core/components/viewers/map/utils/flyToEach.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AACzD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AAEtC,eAAO,MAAM,SAAS,GAAU,KAAK,GAAG,EAAE,WAAW,QAAQ,EAAE,kBAuB9D,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/core/components/viewers/map/utils/flyToEach.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport { getOsmIdFromLatLng } from './getOsmIdFromMartin'\r\nimport
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/core/components/viewers/map/utils/flyToEach.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport { getOsmIdFromLatLng } from './getOsmIdFromMartin'\r\nimport { updateBuildingOsmId } from './updateBuildingOsmId'\r\n\r\nimport type { Building } from '../../../../types/dbTypes'\r\nimport type { Map } from 'maplibre-gl'\r\n\r\nexport const flyToEach = async (map: Map, buildings: Building[]) => {\r\n // Sequentially process each building and wait for each to finish\r\n for (const building of buildings) {\r\n if (building.buildingOsmId) continue\r\n try {\r\n const osmId = await getOsmIdFromLatLng(map, building.buildingLatitude, building.buildingLongitude)\r\n if (osmId) {\r\n building.buildingOsmId = String(osmId)\r\n }\r\n console.log('OSM ID for', building.buildingName, ':', osmId)\r\n if (typeof osmId === 'number') {\r\n await updateBuildingOsmId(building.id, osmId)\r\n }\r\n else {\r\n throw new TypeError(`Failed to fetch OSM ID for ${building.buildingName}`)\r\n }\r\n }\r\n catch (error) {\r\n console.error(error)\r\n // Optionally continue on error, or break if you want to stop\r\n // continue;\r\n }\r\n }\r\n}\r\n"],"mappings":"AAGA,SAAS,0BAA0B;AACnC,SAAS,2BAA2B;AAK7B,MAAM,YAAY,OAAO,KAAU,cAA0B;AAElE,aAAW,YAAY,WAAW;AAChC,QAAI,SAAS,cAAe;AAC5B,QAAI;AACF,YAAM,QAAQ,MAAM,mBAAmB,KAAK,SAAS,kBAAkB,SAAS,iBAAiB;AACjG,UAAI,OAAO;AACT,iBAAS,gBAAgB,OAAO,KAAK;AAAA,MACvC;AACA,cAAQ,IAAI,cAAc,SAAS,cAAc,KAAK,KAAK;AAC3D,UAAI,OAAO,UAAU,UAAU;AAC7B,cAAM,oBAAoB,SAAS,IAAI,KAAK;AAAA,MAC9C,OACK;AACH,cAAM,IAAI,UAAU,8BAA8B,SAAS,YAAY,EAAE;AAAA,MAC3E;AAAA,IACF,SACO,OAAO;AACZ,cAAQ,MAAM,KAAK;AAAA,IAGrB;AAAA,EACF;AACF;","names":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"geocoder.d.ts","sourceRoot":"","sources":["../../../../../../src/core/components/viewers/map/utils/geocoder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"geocoder.d.ts","sourceRoot":"","sources":["../../../../../../src/core/components/viewers/map/utils/geocoder.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAS,MAAM,SAAS,CAAA;AAc7C,eAAO,MAAM,0BAA0B,GAAU,UAAU,MAAM,EAAE,WAAW,MAAM,EAAE,cAAc,MAAM;;;EAmBzG,CAAA;AAGD,eAAO,MAAM,gBAAgB,GAAU,OAAO,MAAM,EAAE,cAAc,MAAM;;KAYzE,CAAA;AAGD,eAAO,MAAM,aAAa,GAAI,SAAS,OAAO;;;;CAoC7C,CAAA;AAGD,eAAO,MAAM,oBAAoB,GAAI,SAAS,OAAO,EAAE,KAAK,GAAG,EAAE,MAAM,MAAM,EAAE,UAAU;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqF7G,CAAA;AAGD,eAAO,MAAM,kBAAkB,GAAU,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,MAAM;;GAc3F,CAAA;AAGD,eAAO,MAAM,iBAAiB,GAAI,aAAQ;;;;;;;;;;;;;;;CAgCzC,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { MarkerManager } from "./MarkerManager";
|
|
2
1
|
import { autocompleteGeocode, reverseGeocode } from "./geocoding";
|
|
2
|
+
import { MarkerManager } from "./MarkerManager";
|
|
3
3
|
let geocoderMarkerManager = null;
|
|
4
4
|
const getGeocoderMarkerManager = () => {
|
|
5
5
|
if (!geocoderMarkerManager) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/core/components/viewers/map/utils/geocoder.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport { Feature, Point } from 'geojson'\r\nimport { MarkerManager } from './MarkerManager'\r\nimport { autocompleteGeocode, reverseGeocode } from './geocoding'\r\n\r\n// Global marker manager instance for geocoder\r\nlet geocoderMarkerManager: MarkerManager | null = null\r\n\r\n// Helper function to get or create the marker manager\r\nconst getGeocoderMarkerManager = (): MarkerManager => {\r\n if (!geocoderMarkerManager) {\r\n geocoderMarkerManager = new MarkerManager()\r\n }\r\n return geocoderMarkerManager\r\n}\r\n\r\n// Convert longitude and latitude into Municipality and Country Subdivision\r\nexport const getMunicipalityAndProvince = async (latitude: string, longitude: string, countryCode?: string) => {\r\n try {\r\n const features = await reverseGeocode(latitude, longitude, countryCode, { size: 1, coarse: true })\r\n\r\n if (features.length > 0) {\r\n const properties = features[0].properties as any\r\n\r\n const municipality = properties.locality || properties.neighbourhood || properties.county || ''\r\n const countrySubdivision = properties.region_a || properties.region || '' // region_a gives abbreviation like \"ON\", \"BC\"\r\n\r\n return { municipality, countrySubdivision }\r\n }\r\n\r\n return { municipality: '', countrySubdivision: '' }\r\n }\r\n catch (error) {\r\n console.error('Error fetching municipality and country subdivision:', error)\r\n return { municipality: '', countrySubdivision: '' }\r\n }\r\n}\r\n\r\n// Fetch address suggestions from the active autocomplete provider\r\nexport const fetchSuggestions = async (input: string, countryCode?: string) => {\r\n if (!input || input.length < 3) {\r\n return []\r\n }\r\n\r\n try {\r\n return await autocompleteGeocode(input, countryCode, 5)\r\n }\r\n catch (error) {\r\n console.error('Error fetching address suggestions:', error)\r\n return []\r\n }\r\n}\r\n\r\n// Parse location details for better display\r\nexport const parseLocation = (feature: Feature) => {\r\n const locationName = feature.properties?.name || ''\r\n const fullLabel = feature.properties?.label || ''\r\n\r\n // Try to extract location details from properties\r\n const properties = feature.properties\r\n let regionDetails = ''\r\n\r\n if (properties) {\r\n const locality = properties.locality\r\n const region = properties.region // Full countrySubdivision name\r\n const region_a = properties.region_a // CountrySubdivision abbreviation (ON, BC, etc.)\r\n const country = properties.country\r\n const country_a = properties.country_a // Country abbreviation (CA)\r\n\r\n // Build region details similar to your original format\r\n if (locality && region_a && country_a) {\r\n regionDetails = `${locality}, ${region_a}, ${country_a}`\r\n }\r\n else if (locality && region && country) {\r\n regionDetails = `${locality}, ${region}, ${country}`\r\n }\r\n else {\r\n // Fallback: try to extract from the full label\r\n const parts = fullLabel.split(', ')\r\n if (parts.length > 1) {\r\n regionDetails = parts.slice(1, 3).join(', ')\r\n }\r\n }\r\n }\r\n\r\n return {\r\n name: locationName,\r\n region: regionDetails,\r\n fullLabel: fullLabel,\r\n }\r\n}\r\n\r\n// Handle suggestion selection and map movement\r\nexport const handleLocationSelect = (feature: Feature, map: any, type: string, options?: { editing?: boolean }) => {\r\n const editing = options?.editing || false\r\n const markerManager = getGeocoderMarkerManager()\r\n\r\n // Handle feature with is_database_building flag\r\n if (type === 'dbBuilding') {\r\n const geometry = feature.geometry as Point\r\n const center = geometry.coordinates\r\n const addressData = {\r\n formatted_address: feature.properties?.label || '',\r\n coordinates: center,\r\n properties: feature.properties,\r\n building_id: feature.properties.gid?.replace('building-', ''),\r\n is_database_building: true,\r\n }\r\n\r\n if (map && center) {\r\n // Add marker to the center with editing capability\r\n // markerManager.create(center as [number, number], map)\r\n\r\n map.flyTo({\r\n center: addressData.coordinates,\r\n zoom: 18,\r\n speed: 1.5,\r\n })\r\n }\r\n\r\n return addressData\r\n }\r\n\r\n // Calculate center coordinates\r\n let center\r\n\r\n // Use bbox if available (more precise for areas)\r\n if (feature.bbox) {\r\n center = [\r\n feature.bbox[0] + (feature.bbox[2] - feature.bbox[0]) / 2,\r\n feature.bbox[1] + (feature.bbox[3] - feature.bbox[1]) / 2,\r\n ]\r\n }\r\n // Otherwise extract coordinates based on geometry type\r\n else if (feature.geometry?.type === 'Point') {\r\n center = (feature.geometry as any).coordinates\r\n }\r\n\r\n const addressData = {\r\n formatted_address: feature.properties?.label || feature.properties?.name || '',\r\n coordinates: center,\r\n properties: feature.properties,\r\n address_details: {\r\n name: feature.properties?.name,\r\n label: feature.properties?.label,\r\n locality: feature.properties?.locality,\r\n neighbourhood: feature.properties?.neighbourhood,\r\n region: feature.properties?.region,\r\n region_a: feature.properties?.region_a,\r\n country: feature.properties?.country,\r\n country_a: feature.properties?.country_a,\r\n postalcode: feature.properties?.postalcode,\r\n housenumber: feature.properties?.housenumber,\r\n street: feature.properties?.street,\r\n },\r\n geocode_earth_id: feature.properties?.gid, // Geocode Earth's unique id\r\n layer: feature.properties?.layer, // Type of place (address, venue, locality, etc.)\r\n confidence: feature.properties?.confidence, // Geocode Earth's confidence score\r\n match_type: feature.properties?.match_type, // How well the result matches the query\r\n }\r\n\r\n if (map && center) {\r\n // Add marker to the center with editing capability\r\n // markerManager.create(center as [number, number], map, { editing })\r\n\r\n if (feature.bbox) {\r\n map.fitBounds(feature.bbox, { speed: 2 })\r\n }\r\n else {\r\n map.flyTo({\r\n center: addressData.coordinates,\r\n zoom: 14, // Might be good idea to set zoom level depending on layer / type of place\r\n speed: 2,\r\n })\r\n }\r\n }\r\n\r\n return addressData\r\n}\r\n\r\n// Util function to get detailed address information\r\nexport const getDetailedAddress = async (coordinates: [number, number], countryCode?: string) => {\r\n const [longitude, latitude] = coordinates\r\n\r\n try {\r\n // Restrict to address-layer results (the original popover used layers=address) so\r\n // callers get a street address rather than the nearest venue/POI. Nominatim's zoom-18\r\n // reverse is already building-level, so this only refines the Pelias path.\r\n const features = await reverseGeocode(latitude.toString(), longitude.toString(), countryCode, { size: 1, layers: 'address' })\r\n return features.length > 0 ? features[0] : null\r\n }\r\n catch (error) {\r\n console.error('Error fetching detailed address:', error)\r\n return null\r\n }\r\n}\r\n\r\n// Convert a building object to a GeoJSON feature format compatible with handleLocationSelect\r\nexport const buildingToFeature = (building) => {\r\n const name = building.buildingName || ''\r\n\r\n // Validate coordinates - use the correct property names\r\n const longitude = Number.parseFloat(building.buildingLongitude)\r\n const latitude = Number.parseFloat(building.buildingLatitude)\r\n\r\n if (isNaN(longitude) || isNaN(latitude)) {\r\n console.error('Invalid building coordinates:', {\r\n longitude: building.buildingLongitude,\r\n latitude: building.buildingLatitude,\r\n buildingId: building.id,\r\n })\r\n return null\r\n }\r\n\r\n return {\r\n properties: {\r\n name: name,\r\n label: `${name}, ${[building.buildingAddress, building.buildingMunicipality, building.buildingCountrySubdivision].filter(Boolean).join(', ')}`,\r\n address: building.buildingAddress,\r\n municipality: building.buildingMunicipality,\r\n countrySubdivision: building.buildingCountrySubdivision,\r\n postalCode: building.buildingPostalCode,\r\n gid: `building-${building.id}`,\r\n },\r\n geometry: {\r\n type: 'Point',\r\n coordinates: [longitude, latitude],\r\n },\r\n is_database_building: true,\r\n }\r\n}\r\n\r\n// // Enhanced marker creation with editing capabilities\r\n// export const createGeocoderMarker = (coordinates: [number, number], map: any, options?: { editing?: boolean }) => {\r\n// const editing = options?.editing || false\r\n// const markerManager = getGeocoderMarkerManager()\r\n// markerManager.create(coordinates, map, { editing })\r\n// return markerManager\r\n// }\r\n\r\n// Helper function to remove the current marker\r\n// export const removeGeocoderMarker = (): void => {\r\n// const markerManager = getGeocoderMarkerManager()\r\n// markerManager.remove()\r\n// }\r\n"],"mappings":"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","names":["center","addressData"]}
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/core/components/viewers/map/utils/geocoder.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport { autocompleteGeocode, reverseGeocode } from './geocoding'\r\nimport { MarkerManager } from './MarkerManager'\r\n\r\nimport type { Feature, Point } from 'geojson'\r\n\r\n// Global marker manager instance for geocoder\r\nlet geocoderMarkerManager: MarkerManager | null = null\r\n\r\n// Helper function to get or create the marker manager\r\nconst getGeocoderMarkerManager = (): MarkerManager => {\r\n if (!geocoderMarkerManager) {\r\n geocoderMarkerManager = new MarkerManager()\r\n }\r\n return geocoderMarkerManager\r\n}\r\n\r\n// Convert longitude and latitude into Municipality and Country Subdivision\r\nexport const getMunicipalityAndProvince = async (latitude: string, longitude: string, countryCode?: string) => {\r\n try {\r\n const features = await reverseGeocode(latitude, longitude, countryCode, { size: 1, coarse: true })\r\n\r\n if (features.length > 0) {\r\n const properties = features[0].properties as any\r\n\r\n const municipality = properties.locality || properties.neighbourhood || properties.county || ''\r\n const countrySubdivision = properties.region_a || properties.region || '' // region_a gives abbreviation like \"ON\", \"BC\"\r\n\r\n return { municipality, countrySubdivision }\r\n }\r\n\r\n return { municipality: '', countrySubdivision: '' }\r\n }\r\n catch (error) {\r\n console.error('Error fetching municipality and country subdivision:', error)\r\n return { municipality: '', countrySubdivision: '' }\r\n }\r\n}\r\n\r\n// Fetch address suggestions from the active autocomplete provider\r\nexport const fetchSuggestions = async (input: string, countryCode?: string) => {\r\n if (!input || input.length < 3) {\r\n return []\r\n }\r\n\r\n try {\r\n return await autocompleteGeocode(input, countryCode, 5)\r\n }\r\n catch (error) {\r\n console.error('Error fetching address suggestions:', error)\r\n return []\r\n }\r\n}\r\n\r\n// Parse location details for better display\r\nexport const parseLocation = (feature: Feature) => {\r\n const locationName = feature.properties?.name || ''\r\n const fullLabel = feature.properties?.label || ''\r\n\r\n // Try to extract location details from properties\r\n const properties = feature.properties\r\n let regionDetails = ''\r\n\r\n if (properties) {\r\n const locality = properties.locality\r\n const region = properties.region // Full countrySubdivision name\r\n const region_a = properties.region_a // CountrySubdivision abbreviation (ON, BC, etc.)\r\n const country = properties.country\r\n const country_a = properties.country_a // Country abbreviation (CA)\r\n\r\n // Build region details similar to your original format\r\n if (locality && region_a && country_a) {\r\n regionDetails = `${locality}, ${region_a}, ${country_a}`\r\n }\r\n else if (locality && region && country) {\r\n regionDetails = `${locality}, ${region}, ${country}`\r\n }\r\n else {\r\n // Fallback: try to extract from the full label\r\n const parts = fullLabel.split(', ')\r\n if (parts.length > 1) {\r\n regionDetails = parts.slice(1, 3).join(', ')\r\n }\r\n }\r\n }\r\n\r\n return {\r\n name: locationName,\r\n region: regionDetails,\r\n fullLabel: fullLabel,\r\n }\r\n}\r\n\r\n// Handle suggestion selection and map movement\r\nexport const handleLocationSelect = (feature: Feature, map: any, type: string, options?: { editing?: boolean }) => {\r\n const editing = options?.editing || false\r\n const markerManager = getGeocoderMarkerManager()\r\n\r\n // Handle feature with is_database_building flag\r\n if (type === 'dbBuilding') {\r\n const geometry = feature.geometry as Point\r\n const center = geometry.coordinates\r\n const addressData = {\r\n formatted_address: feature.properties?.label || '',\r\n coordinates: center,\r\n properties: feature.properties,\r\n building_id: feature.properties.gid?.replace('building-', ''),\r\n is_database_building: true,\r\n }\r\n\r\n if (map && center) {\r\n // Add marker to the center with editing capability\r\n // markerManager.create(center as [number, number], map)\r\n\r\n map.flyTo({\r\n center: addressData.coordinates,\r\n zoom: 18,\r\n speed: 1.5,\r\n })\r\n }\r\n\r\n return addressData\r\n }\r\n\r\n // Calculate center coordinates\r\n let center\r\n\r\n // Use bbox if available (more precise for areas)\r\n if (feature.bbox) {\r\n center = [\r\n feature.bbox[0] + (feature.bbox[2] - feature.bbox[0]) / 2,\r\n feature.bbox[1] + (feature.bbox[3] - feature.bbox[1]) / 2,\r\n ]\r\n }\r\n // Otherwise extract coordinates based on geometry type\r\n else if (feature.geometry?.type === 'Point') {\r\n center = (feature.geometry as any).coordinates\r\n }\r\n\r\n const addressData = {\r\n formatted_address: feature.properties?.label || feature.properties?.name || '',\r\n coordinates: center,\r\n properties: feature.properties,\r\n address_details: {\r\n name: feature.properties?.name,\r\n label: feature.properties?.label,\r\n locality: feature.properties?.locality,\r\n neighbourhood: feature.properties?.neighbourhood,\r\n region: feature.properties?.region,\r\n region_a: feature.properties?.region_a,\r\n country: feature.properties?.country,\r\n country_a: feature.properties?.country_a,\r\n postalcode: feature.properties?.postalcode,\r\n housenumber: feature.properties?.housenumber,\r\n street: feature.properties?.street,\r\n },\r\n geocode_earth_id: feature.properties?.gid, // Geocode Earth's unique id\r\n layer: feature.properties?.layer, // Type of place (address, venue, locality, etc.)\r\n confidence: feature.properties?.confidence, // Geocode Earth's confidence score\r\n match_type: feature.properties?.match_type, // How well the result matches the query\r\n }\r\n\r\n if (map && center) {\r\n // Add marker to the center with editing capability\r\n // markerManager.create(center as [number, number], map, { editing })\r\n\r\n if (feature.bbox) {\r\n map.fitBounds(feature.bbox, { speed: 2 })\r\n }\r\n else {\r\n map.flyTo({\r\n center: addressData.coordinates,\r\n zoom: 14, // Might be good idea to set zoom level depending on layer / type of place\r\n speed: 2,\r\n })\r\n }\r\n }\r\n\r\n return addressData\r\n}\r\n\r\n// Util function to get detailed address information\r\nexport const getDetailedAddress = async (coordinates: [number, number], countryCode?: string) => {\r\n const [longitude, latitude] = coordinates\r\n\r\n try {\r\n // Restrict to address-layer results (the original popover used layers=address) so\r\n // callers get a street address rather than the nearest venue/POI. Nominatim's zoom-18\r\n // reverse is already building-level, so this only refines the Pelias path.\r\n const features = await reverseGeocode(latitude.toString(), longitude.toString(), countryCode, { size: 1, layers: 'address' })\r\n return features.length > 0 ? features[0] : null\r\n }\r\n catch (error) {\r\n console.error('Error fetching detailed address:', error)\r\n return null\r\n }\r\n}\r\n\r\n// Convert a building object to a GeoJSON feature format compatible with handleLocationSelect\r\nexport const buildingToFeature = (building) => {\r\n const name = building.buildingName || ''\r\n\r\n // Validate coordinates - use the correct property names\r\n const longitude = Number.parseFloat(building.buildingLongitude)\r\n const latitude = Number.parseFloat(building.buildingLatitude)\r\n\r\n if (isNaN(longitude) || isNaN(latitude)) {\r\n console.error('Invalid building coordinates:', {\r\n longitude: building.buildingLongitude,\r\n latitude: building.buildingLatitude,\r\n buildingId: building.id,\r\n })\r\n return null\r\n }\r\n\r\n return {\r\n properties: {\r\n name: name,\r\n label: `${name}, ${[building.buildingAddress, building.buildingMunicipality, building.buildingCountrySubdivision].filter(Boolean).join(', ')}`,\r\n address: building.buildingAddress,\r\n municipality: building.buildingMunicipality,\r\n countrySubdivision: building.buildingCountrySubdivision,\r\n postalCode: building.buildingPostalCode,\r\n gid: `building-${building.id}`,\r\n },\r\n geometry: {\r\n type: 'Point',\r\n coordinates: [longitude, latitude],\r\n },\r\n is_database_building: true,\r\n }\r\n}\r\n\r\n// // Enhanced marker creation with editing capabilities\r\n// export const createGeocoderMarker = (coordinates: [number, number], map: any, options?: { editing?: boolean }) => {\r\n// const editing = options?.editing || false\r\n// const markerManager = getGeocoderMarkerManager()\r\n// markerManager.create(coordinates, map, { editing })\r\n// return markerManager\r\n// }\r\n\r\n// Helper function to remove the current marker\r\n// export const removeGeocoderMarker = (): void => {\r\n// const markerManager = getGeocoderMarkerManager()\r\n// markerManager.remove()\r\n// }\r\n"],"mappings":"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","names":["center","addressData"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Feature } from 'geojson';
|
|
1
|
+
import type { Feature } from 'geojson';
|
|
2
2
|
export declare const osmCategoryToLayer: (category?: string) => string;
|
|
3
3
|
export declare const normalizePhotonFeature: (feature: any) => Feature;
|
|
4
4
|
export declare const normalizeNominatimResult: (data: any) => Feature;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/components/viewers/map/utils/geocoding/adapters.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/components/viewers/map/utils/geocoding/adapters.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAGtC,eAAO,MAAM,kBAAkB,GAAI,WAAW,MAAM,KAAG,MAoBtD,CAAA;AAkCD,eAAO,MAAM,sBAAsB,GAAI,SAAS,GAAG,KAAG,OAuCrD,CAAA;AAGD,eAAO,MAAM,wBAAwB,GAAI,MAAM,GAAG,KAAG,OAkCpD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../src/core/components/viewers/map/utils/geocoding/adapters.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport { Feature } from 'geojson'\r\n\r\n// Map OSM place categories onto Pelias-style layer names (best effort, display-only).\r\nexport const osmCategoryToLayer = (category?: string): string => {\r\n switch (category) {\r\n case 'house':\r\n case 'building': return 'address'\r\n case 'street':\r\n case 'road': return 'street'\r\n case 'city':\r\n case 'town':\r\n case 'village':\r\n case 'hamlet':\r\n case 'locality': return 'locality'\r\n case 'district':\r\n case 'suburb':\r\n case 'neighbourhood': return 'neighbourhood'\r\n case 'county': return 'county'\r\n case 'state':\r\n case 'region': return 'region'\r\n case 'country': return 'country'\r\n default: return category || 'venue'\r\n }\r\n}\r\n\r\n// Photon (OSM) returns full subdivision names (\"Ontario\"); the rest of the app expects\r\n// Pelias-style abbreviations (\"ON\"). Map common North American ones so the public\r\n// fallback populates region_a the way Geocode Earth / Pelias do.\r\nconst SUBDIVISION_ABBREVIATIONS: Record<string, Record<string, string>> = {\r\n CA: {\r\n 'alberta': 'AB', 'british columbia': 'BC', 'manitoba': 'MB', 'new brunswick': 'NB',\r\n 'newfoundland and labrador': 'NL', 'northwest territories': 'NT', 'nova scotia': 'NS',\r\n 'nunavut': 'NU', 'ontario': 'ON', 'prince edward island': 'PE', 'quebec': 'QC',\r\n 'québec': 'QC', 'saskatchewan': 'SK', 'yukon': 'YT',\r\n },\r\n US: {\r\n 'alabama': 'AL', 'alaska': 'AK', 'arizona': 'AZ', 'arkansas': 'AR', 'california': 'CA',\r\n 'colorado': 'CO', 'connecticut': 'CT', 'delaware': 'DE', 'district of columbia': 'DC',\r\n 'florida': 'FL', 'georgia': 'GA', 'hawaii': 'HI', 'idaho': 'ID', 'illinois': 'IL',\r\n 'indiana': 'IN', 'iowa': 'IA', 'kansas': 'KS', 'kentucky': 'KY', 'louisiana': 'LA',\r\n 'maine': 'ME', 'maryland': 'MD', 'massachusetts': 'MA', 'michigan': 'MI', 'minnesota': 'MN',\r\n 'mississippi': 'MS', 'missouri': 'MO', 'montana': 'MT', 'nebraska': 'NE', 'nevada': 'NV',\r\n 'new hampshire': 'NH', 'new jersey': 'NJ', 'new mexico': 'NM', 'new york': 'NY',\r\n 'north carolina': 'NC', 'north dakota': 'ND', 'ohio': 'OH', 'oklahoma': 'OK', 'oregon': 'OR',\r\n 'pennsylvania': 'PA', 'rhode island': 'RI', 'south carolina': 'SC', 'south dakota': 'SD',\r\n 'tennessee': 'TN', 'texas': 'TX', 'utah': 'UT', 'vermont': 'VT', 'virginia': 'VA',\r\n 'washington': 'WA', 'west virginia': 'WV', 'wisconsin': 'WI', 'wyoming': 'WY',\r\n },\r\n}\r\n\r\nconst subdivisionAbbreviation = (countryCode: string, state?: string): string => {\r\n if (!state) return ''\r\n const table = SUBDIVISION_ABBREVIATIONS[(countryCode || '').toUpperCase()]\r\n return (table && table[state.trim().toLowerCase()]) || ''\r\n}\r\n\r\n// Normalize a Photon autocomplete feature into the Pelias feature shape.\r\nexport const normalizePhotonFeature = (feature: any): Feature => {\r\n const p = feature.properties || {}\r\n const region = p.state || ''\r\n const country = p.country || ''\r\n const country_a = (p.countrycode || '').toUpperCase()\r\n const region_a = subdivisionAbbreviation(country_a, region)\r\n const locality = p.city || p.town || p.village || p.district || ''\r\n const name = p.name || [p.housenumber, p.street].filter(Boolean).join(' ') || locality\r\n // Match the Pelias label shape (\"Name, City, ON, Country\") so label-parsing consumers work.\r\n const label = [name, locality && locality !== name ? locality : null, region_a || region, country]\r\n .filter(Boolean)\r\n .join(', ')\r\n\r\n // Photon `extent` is [west, north, east, south]; Pelias bbox is [west, south, east, north].\r\n const bbox: [number, number, number, number] | undefined = Array.isArray(p.extent) && p.extent.length === 4\r\n ? [p.extent[0], p.extent[3], p.extent[2], p.extent[1]]\r\n : undefined\r\n\r\n return {\r\n type: 'Feature',\r\n geometry: feature.geometry,\r\n ...(bbox ? { bbox } : {}),\r\n properties: {\r\n name,\r\n label,\r\n housenumber: p.housenumber,\r\n street: p.street,\r\n locality,\r\n neighbourhood: p.district,\r\n county: p.county,\r\n region,\r\n region_a, // mapped from the full subdivision name where known (SUBDIVISION_ABBREVIATIONS)\r\n country,\r\n country_a,\r\n postalcode: p.postcode,\r\n gid: p.osm_id != null ? `osm:${p.osm_type}:${p.osm_id}` : undefined,\r\n layer: osmCategoryToLayer(p.type),\r\n },\r\n } as Feature\r\n}\r\n\r\n// Normalize a Nominatim reverse result into the Pelias feature shape.\r\nexport const normalizeNominatimResult = (data: any): Feature => {\r\n const a = data.address || {}\r\n // ISO3166-2-lvl4 looks like \"CA-ON\"; the suffix is the Pelias region_a abbreviation.\r\n const region_a = (a['ISO3166-2-lvl4'] || '').split('-')[1] || ''\r\n const locality = a.city || a.town || a.village || a.municipality || a.suburb || a.neighbourhood || a.county || ''\r\n const name = a.road ? [a.house_number, a.road].filter(Boolean).join(' ') : (locality || (data.display_name || '').split(',')[0])\r\n\r\n // Nominatim boundingbox is [minlat, maxlat, minlon, maxlon]; Pelias bbox is [west, south, east, north].\r\n const bb = data.boundingbox\r\n const bbox: [number, number, number, number] | undefined = Array.isArray(bb) && bb.length === 4\r\n ? [Number(bb[2]), Number(bb[0]), Number(bb[3]), Number(bb[1])]\r\n : undefined\r\n\r\n return {\r\n type: 'Feature',\r\n geometry: { type: 'Point', coordinates: [Number(data.lon), Number(data.lat)] },\r\n ...(bbox ? { bbox } : {}),\r\n properties: {\r\n name,\r\n label: data.display_name || '',\r\n housenumber: a.house_number,\r\n street: a.road,\r\n locality,\r\n neighbourhood: a.neighbourhood || a.suburb,\r\n county: a.county,\r\n region: a.state,\r\n region_a,\r\n country: a.country,\r\n country_a: (a.country_code || '').toUpperCase(),\r\n postalcode: a.postcode,\r\n gid: data.osm_id != null ? `osm:${data.osm_type}:${data.osm_id}` : undefined,\r\n layer: osmCategoryToLayer(data.addresstype || data.type),\r\n },\r\n } as Feature\r\n}\r\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../../../../../src/core/components/viewers/map/utils/geocoding/adapters.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport type { Feature } from 'geojson'\r\n\r\n// Map OSM place categories onto Pelias-style layer names (best effort, display-only).\r\nexport const osmCategoryToLayer = (category?: string): string => {\r\n switch (category) {\r\n case 'house':\r\n case 'building': return 'address'\r\n case 'street':\r\n case 'road': return 'street'\r\n case 'city':\r\n case 'town':\r\n case 'village':\r\n case 'hamlet':\r\n case 'locality': return 'locality'\r\n case 'district':\r\n case 'suburb':\r\n case 'neighbourhood': return 'neighbourhood'\r\n case 'county': return 'county'\r\n case 'state':\r\n case 'region': return 'region'\r\n case 'country': return 'country'\r\n default: return category || 'venue'\r\n }\r\n}\r\n\r\n// Photon (OSM) returns full subdivision names (\"Ontario\"); the rest of the app expects\r\n// Pelias-style abbreviations (\"ON\"). Map common North American ones so the public\r\n// fallback populates region_a the way Geocode Earth / Pelias do.\r\nconst SUBDIVISION_ABBREVIATIONS: Record<string, Record<string, string>> = {\r\n CA: {\r\n 'alberta': 'AB', 'british columbia': 'BC', 'manitoba': 'MB', 'new brunswick': 'NB',\r\n 'newfoundland and labrador': 'NL', 'northwest territories': 'NT', 'nova scotia': 'NS',\r\n 'nunavut': 'NU', 'ontario': 'ON', 'prince edward island': 'PE', 'quebec': 'QC',\r\n 'québec': 'QC', 'saskatchewan': 'SK', 'yukon': 'YT',\r\n },\r\n US: {\r\n 'alabama': 'AL', 'alaska': 'AK', 'arizona': 'AZ', 'arkansas': 'AR', 'california': 'CA',\r\n 'colorado': 'CO', 'connecticut': 'CT', 'delaware': 'DE', 'district of columbia': 'DC',\r\n 'florida': 'FL', 'georgia': 'GA', 'hawaii': 'HI', 'idaho': 'ID', 'illinois': 'IL',\r\n 'indiana': 'IN', 'iowa': 'IA', 'kansas': 'KS', 'kentucky': 'KY', 'louisiana': 'LA',\r\n 'maine': 'ME', 'maryland': 'MD', 'massachusetts': 'MA', 'michigan': 'MI', 'minnesota': 'MN',\r\n 'mississippi': 'MS', 'missouri': 'MO', 'montana': 'MT', 'nebraska': 'NE', 'nevada': 'NV',\r\n 'new hampshire': 'NH', 'new jersey': 'NJ', 'new mexico': 'NM', 'new york': 'NY',\r\n 'north carolina': 'NC', 'north dakota': 'ND', 'ohio': 'OH', 'oklahoma': 'OK', 'oregon': 'OR',\r\n 'pennsylvania': 'PA', 'rhode island': 'RI', 'south carolina': 'SC', 'south dakota': 'SD',\r\n 'tennessee': 'TN', 'texas': 'TX', 'utah': 'UT', 'vermont': 'VT', 'virginia': 'VA',\r\n 'washington': 'WA', 'west virginia': 'WV', 'wisconsin': 'WI', 'wyoming': 'WY',\r\n },\r\n}\r\n\r\nconst subdivisionAbbreviation = (countryCode: string, state?: string): string => {\r\n if (!state) return ''\r\n const table = SUBDIVISION_ABBREVIATIONS[(countryCode || '').toUpperCase()]\r\n return (table && table[state.trim().toLowerCase()]) || ''\r\n}\r\n\r\n// Normalize a Photon autocomplete feature into the Pelias feature shape.\r\nexport const normalizePhotonFeature = (feature: any): Feature => {\r\n const p = feature.properties || {}\r\n const region = p.state || ''\r\n const country = p.country || ''\r\n const country_a = (p.countrycode || '').toUpperCase()\r\n const region_a = subdivisionAbbreviation(country_a, region)\r\n const locality = p.city || p.town || p.village || p.district || ''\r\n const name = p.name || [p.housenumber, p.street].filter(Boolean).join(' ') || locality\r\n // Match the Pelias label shape (\"Name, City, ON, Country\") so label-parsing consumers work.\r\n const label = [name, locality && locality !== name ? locality : null, region_a || region, country]\r\n .filter(Boolean)\r\n .join(', ')\r\n\r\n // Photon `extent` is [west, north, east, south]; Pelias bbox is [west, south, east, north].\r\n const bbox: [number, number, number, number] | undefined = Array.isArray(p.extent) && p.extent.length === 4\r\n ? [p.extent[0], p.extent[3], p.extent[2], p.extent[1]]\r\n : undefined\r\n\r\n return {\r\n type: 'Feature',\r\n geometry: feature.geometry,\r\n ...(bbox ? { bbox } : {}),\r\n properties: {\r\n name,\r\n label,\r\n housenumber: p.housenumber,\r\n street: p.street,\r\n locality,\r\n neighbourhood: p.district,\r\n county: p.county,\r\n region,\r\n region_a, // mapped from the full subdivision name where known (SUBDIVISION_ABBREVIATIONS)\r\n country,\r\n country_a,\r\n postalcode: p.postcode,\r\n gid: p.osm_id != null ? `osm:${p.osm_type}:${p.osm_id}` : undefined,\r\n layer: osmCategoryToLayer(p.type),\r\n },\r\n } as Feature\r\n}\r\n\r\n// Normalize a Nominatim reverse result into the Pelias feature shape.\r\nexport const normalizeNominatimResult = (data: any): Feature => {\r\n const a = data.address || {}\r\n // ISO3166-2-lvl4 looks like \"CA-ON\"; the suffix is the Pelias region_a abbreviation.\r\n const region_a = (a['ISO3166-2-lvl4'] || '').split('-')[1] || ''\r\n const locality = a.city || a.town || a.village || a.municipality || a.suburb || a.neighbourhood || a.county || ''\r\n const name = a.road ? [a.house_number, a.road].filter(Boolean).join(' ') : (locality || (data.display_name || '').split(',')[0])\r\n\r\n // Nominatim boundingbox is [minlat, maxlat, minlon, maxlon]; Pelias bbox is [west, south, east, north].\r\n const bb = data.boundingbox\r\n const bbox: [number, number, number, number] | undefined = Array.isArray(bb) && bb.length === 4\r\n ? [Number(bb[2]), Number(bb[0]), Number(bb[3]), Number(bb[1])]\r\n : undefined\r\n\r\n return {\r\n type: 'Feature',\r\n geometry: { type: 'Point', coordinates: [Number(data.lon), Number(data.lat)] },\r\n ...(bbox ? { bbox } : {}),\r\n properties: {\r\n name,\r\n label: data.display_name || '',\r\n housenumber: a.house_number,\r\n street: a.road,\r\n locality,\r\n neighbourhood: a.neighbourhood || a.suburb,\r\n county: a.county,\r\n region: a.state,\r\n region_a,\r\n country: a.country,\r\n country_a: (a.country_code || '').toUpperCase(),\r\n postalcode: a.postcode,\r\n gid: data.osm_id != null ? `osm:${data.osm_type}:${data.osm_id}` : undefined,\r\n layer: osmCategoryToLayer(data.addresstype || data.type),\r\n },\r\n } as Feature\r\n}\r\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAMO,MAAM,qBAAqB,CAAC,aAA8B;AAC/D,UAAQ,UAAU;AAAA,IAChB,KAAK;AAAA,IACL,KAAK;AAAY,aAAO;AAAA,IACxB,KAAK;AAAA,IACL,KAAK;AAAQ,aAAO;AAAA,IACpB,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAY,aAAO;AAAA,IACxB,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAiB,aAAO;AAAA,IAC7B,KAAK;AAAU,aAAO;AAAA,IACtB,KAAK;AAAA,IACL,KAAK;AAAU,aAAO;AAAA,IACtB,KAAK;AAAW,aAAO;AAAA,IACvB;AAAS,aAAO,YAAY;AAAA,EAC9B;AACF;AAKA,MAAM,4BAAoE;AAAA,EACxE,IAAI;AAAA,IACF,WAAW;AAAA,IAAM,oBAAoB;AAAA,IAAM,YAAY;AAAA,IAAM,iBAAiB;AAAA,IAC9E,6BAA6B;AAAA,IAAM,yBAAyB;AAAA,IAAM,eAAe;AAAA,IACjF,WAAW;AAAA,IAAM,WAAW;AAAA,IAAM,wBAAwB;AAAA,IAAM,UAAU;AAAA,IAC1E,aAAU;AAAA,IAAM,gBAAgB;AAAA,IAAM,SAAS;AAAA,EACjD;AAAA,EACA,IAAI;AAAA,IACF,WAAW;AAAA,IAAM,UAAU;AAAA,IAAM,WAAW;AAAA,IAAM,YAAY;AAAA,IAAM,cAAc;AAAA,IAClF,YAAY;AAAA,IAAM,eAAe;AAAA,IAAM,YAAY;AAAA,IAAM,wBAAwB;AAAA,IACjF,WAAW;AAAA,IAAM,WAAW;AAAA,IAAM,UAAU;AAAA,IAAM,SAAS;AAAA,IAAM,YAAY;AAAA,IAC7E,WAAW;AAAA,IAAM,QAAQ;AAAA,IAAM,UAAU;AAAA,IAAM,YAAY;AAAA,IAAM,aAAa;AAAA,IAC9E,SAAS;AAAA,IAAM,YAAY;AAAA,IAAM,iBAAiB;AAAA,IAAM,YAAY;AAAA,IAAM,aAAa;AAAA,IACvF,eAAe;AAAA,IAAM,YAAY;AAAA,IAAM,WAAW;AAAA,IAAM,YAAY;AAAA,IAAM,UAAU;AAAA,IACpF,iBAAiB;AAAA,IAAM,cAAc;AAAA,IAAM,cAAc;AAAA,IAAM,YAAY;AAAA,IAC3E,kBAAkB;AAAA,IAAM,gBAAgB;AAAA,IAAM,QAAQ;AAAA,IAAM,YAAY;AAAA,IAAM,UAAU;AAAA,IACxF,gBAAgB;AAAA,IAAM,gBAAgB;AAAA,IAAM,kBAAkB;AAAA,IAAM,gBAAgB;AAAA,IACpF,aAAa;AAAA,IAAM,SAAS;AAAA,IAAM,QAAQ;AAAA,IAAM,WAAW;AAAA,IAAM,YAAY;AAAA,IAC7E,cAAc;AAAA,IAAM,iBAAiB;AAAA,IAAM,aAAa;AAAA,IAAM,WAAW;AAAA,EAC3E;AACF;AAEA,MAAM,0BAA0B,CAAC,aAAqB,UAA2B;AAC/E,MAAI,CAAC,MAAO,QAAO;AACnB,QAAM,QAAQ,2BAA2B,eAAe,IAAI,YAAY,CAAC;AACzE,SAAQ,SAAS,MAAM,MAAM,KAAK,EAAE,YAAY,CAAC,KAAM;AACzD;AAGO,MAAM,yBAAyB,CAAC,YAA0B;AAC/D,QAAM,IAAI,QAAQ,cAAc,CAAC;AACjC,QAAM,SAAS,EAAE,SAAS;AAC1B,QAAM,UAAU,EAAE,WAAW;AAC7B,QAAM,aAAa,EAAE,eAAe,IAAI,YAAY;AACpD,QAAM,WAAW,wBAAwB,WAAW,MAAM;AAC1D,QAAM,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY;AAChE,QAAM,OAAO,EAAE,QAAQ,CAAC,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG,KAAK;AAE9E,QAAM,QAAQ,CAAC,MAAM,YAAY,aAAa,OAAO,WAAW,MAAM,YAAY,QAAQ,OAAO,EAC9F,OAAO,OAAO,EACd,KAAK,IAAI;AAGZ,QAAM,OAAqD,MAAM,QAAQ,EAAE,MAAM,KAAK,EAAE,OAAO,WAAW,IACtG,CAAC,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,IACnD;AAEJ,SAAO;AAAA,IACL,MAAM;AAAA,IACN,UAAU,QAAQ;AAAA,KACd,OAAO,EAAE,KAAK,IAAI,CAAC,IAHlB;AAAA,IAIL,YAAY;AAAA,MACV;AAAA,MACA;AAAA,MACA,aAAa,EAAE;AAAA,MACf,QAAQ,EAAE;AAAA,MACV;AAAA,MACA,eAAe,EAAE;AAAA,MACjB,QAAQ,EAAE;AAAA,MACV;AAAA,MACA;AAAA;AAAA,MACA;AAAA,MACA;AAAA,MACA,YAAY,EAAE;AAAA,MACd,KAAK,EAAE,UAAU,OAAO,OAAO,EAAE,QAAQ,IAAI,EAAE,MAAM,KAAK;AAAA,MAC1D,OAAO,mBAAmB,EAAE,IAAI;AAAA,IAClC;AAAA,EACF;AACF;AAGO,MAAM,2BAA2B,CAAC,SAAuB;AAC9D,QAAM,IAAI,KAAK,WAAW,CAAC;AAE3B,QAAM,YAAY,EAAE,gBAAgB,KAAK,IAAI,MAAM,GAAG,EAAE,CAAC,KAAK;AAC9D,QAAM,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,iBAAiB,EAAE,UAAU;AAC/G,QAAM,OAAO,EAAE,OAAO,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG,IAAK,aAAa,KAAK,gBAAgB,IAAI,MAAM,GAAG,EAAE,CAAC;AAG9H,QAAM,KAAK,KAAK;AAChB,QAAM,OAAqD,MAAM,QAAQ,EAAE,KAAK,GAAG,WAAW,IAC1F,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC,IAC3D;AAEJ,SAAO;AAAA,IACL,MAAM;AAAA,IACN,UAAU,EAAE,MAAM,SAAS,aAAa,CAAC,OAAO,KAAK,GAAG,GAAG,OAAO,KAAK,GAAG,CAAC,EAAE;AAAA,KACzE,OAAO,EAAE,KAAK,IAAI,CAAC,IAHlB;AAAA,IAIL,YAAY;AAAA,MACV;AAAA,MACA,OAAO,KAAK,gBAAgB;AAAA,MAC5B,aAAa,EAAE;AAAA,MACf,QAAQ,EAAE;AAAA,MACV;AAAA,MACA,eAAe,EAAE,iBAAiB,EAAE;AAAA,MACpC,QAAQ,EAAE;AAAA,MACV,QAAQ,EAAE;AAAA,MACV;AAAA,MACA,SAAS,EAAE;AAAA,MACX,YAAY,EAAE,gBAAgB,IAAI,YAAY;AAAA,MAC9C,YAAY,EAAE;AAAA,MACd,KAAK,KAAK,UAAU,OAAO,OAAO,KAAK,QAAQ,IAAI,KAAK,MAAM,KAAK;AAAA,MACnE,OAAO,mBAAmB,KAAK,eAAe,KAAK,IAAI;AAAA,IACzD;AAAA,EACF;AACF;","names":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Feature } from 'geojson';
|
|
1
|
+
import type { Feature } from 'geojson';
|
|
2
2
|
export declare const autocompleteGeocode: (text: string, countryCode: string, size: number) => Promise<Feature[]>;
|
|
3
3
|
export declare const reverseGeocode: (latitude: string, longitude: string, countryCode: string, { size, coarse, layers }?: {
|
|
4
4
|
size?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/components/viewers/map/utils/geocoding/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/components/viewers/map/utils/geocoding/index.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AA+BtC,eAAO,MAAM,mBAAmB,GAAU,MAAM,MAAM,EAAE,aAAa,MAAM,EAAE,MAAM,MAAM,KAAG,OAAO,CAAC,OAAO,EAAE,CAU5G,CAAA;AAED,eAAO,MAAM,cAAc,GACzB,UAAU,MAAM,EAChB,WAAW,MAAM,EACjB,aAAa,MAAM,EACnB,2BAAsC;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,KAC9F,OAAO,CAAC,OAAO,EAAE,CAUnB,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { getGeocodingConfig } from "./config";
|
|
2
|
-
import { peliasAutocomplete, peliasReverse } from "./pelias";
|
|
3
2
|
import { photonAutocomplete, nominatimReverse } from "./osm";
|
|
3
|
+
import { peliasAutocomplete, peliasReverse } from "./pelias";
|
|
4
4
|
let peliasAuthFailed = false;
|
|
5
5
|
const peliasActive = () => getGeocodingConfig().usePelias && !peliasAuthFailed;
|
|
6
6
|
const isAuthError = (error) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../src/core/components/viewers/map/utils/geocoding/index.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport {
|
|
1
|
+
{"version":3,"sources":["../../../../../../../src/core/components/viewers/map/utils/geocoding/index.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport { getGeocodingConfig } from './config'\r\nimport { photonAutocomplete, nominatimReverse } from './osm'\r\nimport { peliasAutocomplete, peliasReverse } from './pelias'\r\n\r\nimport type { Feature } from 'geojson'\r\n\r\n// Provider-agnostic entry points. The preferred provider (Geocode Earth or a\r\n// self-hosted Pelias) is resolved in ./config from runtime-injected values;\r\n// if it fails we fall back to the free public OSM services so address search\r\n// keeps working.\r\n//\r\n// A bad/expired/origin-restricted key surfaces as a 401/403. Autocomplete fires\r\n// on every keystroke, so once we see an auth failure we stop retrying the keyed\r\n// provider for the rest of the session and serve results directly from public OSM.\r\nlet peliasAuthFailed = false\r\n\r\nconst peliasActive = (): boolean => getGeocodingConfig().usePelias && !peliasAuthFailed\r\n\r\nconst isAuthError = (error: unknown): boolean => {\r\n const message = error instanceof Error ? error.message : String(error)\r\n return message.includes('401') || message.includes('403')\r\n}\r\n\r\nconst handlePeliasFailure = (error: unknown, fallbackName: string): void => {\r\n if (isAuthError(error)) {\r\n peliasAuthFailed = true\r\n console.warn(\r\n `Geocoder: the configured provider rejected the API key (auth error). ` +\r\n `Falling back to public OSM services (Photon/Nominatim) for the rest of this session.`,\r\n )\r\n } else {\r\n console.warn(`Geocoder: provider request failed; falling back to ${fallbackName}.`, error)\r\n }\r\n}\r\n\r\nexport const autocompleteGeocode = async (text: string, countryCode: string, size: number): Promise<Feature[]> => {\r\n if (peliasActive()) {\r\n try {\r\n return await peliasAutocomplete(text, countryCode, size)\r\n }\r\n catch (error) {\r\n handlePeliasFailure(error, 'Photon')\r\n }\r\n }\r\n return photonAutocomplete(text, countryCode, size)\r\n}\r\n\r\nexport const reverseGeocode = async (\r\n latitude: string,\r\n longitude: string,\r\n countryCode: string,\r\n { size = 1, coarse = false, layers }: { size?: number; coarse?: boolean; layers?: string } = {},\r\n): Promise<Feature[]> => {\r\n if (peliasActive()) {\r\n try {\r\n return await peliasReverse(latitude, longitude, countryCode, { size, coarse, layers })\r\n }\r\n catch (error) {\r\n handlePeliasFailure(error, 'Nominatim')\r\n }\r\n }\r\n return nominatimReverse(latitude, longitude, { coarse })\r\n}\r\n"],"mappings":"AAGA,SAAS,0BAA0B;AACnC,SAAS,oBAAoB,wBAAwB;AACrD,SAAS,oBAAoB,qBAAqB;AAYlD,IAAI,mBAAmB;AAEvB,MAAM,eAAe,MAAe,mBAAmB,EAAE,aAAa,CAAC;AAEvE,MAAM,cAAc,CAAC,UAA4B;AAC/C,QAAM,UAAU,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK;AACrE,SAAO,QAAQ,SAAS,KAAK,KAAK,QAAQ,SAAS,KAAK;AAC1D;AAEA,MAAM,sBAAsB,CAAC,OAAgB,iBAA+B;AAC1E,MAAI,YAAY,KAAK,GAAG;AACtB,uBAAmB;AACnB,YAAQ;AAAA,MACN;AAAA,IAEF;AAAA,EACF,OAAO;AACL,YAAQ,KAAK,sDAAsD,YAAY,KAAK,KAAK;AAAA,EAC3F;AACF;AAEO,MAAM,sBAAsB,OAAO,MAAc,aAAqB,SAAqC;AAChH,MAAI,aAAa,GAAG;AAClB,QAAI;AACF,aAAO,MAAM,mBAAmB,MAAM,aAAa,IAAI;AAAA,IACzD,SACO,OAAO;AACZ,0BAAoB,OAAO,QAAQ;AAAA,IACrC;AAAA,EACF;AACA,SAAO,mBAAmB,MAAM,aAAa,IAAI;AACnD;AAEO,MAAM,iBAAiB,OAC5B,UACA,WACA,aACA,EAAE,OAAO,GAAG,SAAS,OAAO,OAAO,IAA0D,CAAC,MACvE;AACvB,MAAI,aAAa,GAAG;AAClB,QAAI;AACF,aAAO,MAAM,cAAc,UAAU,WAAW,aAAa,EAAE,MAAM,QAAQ,OAAO,CAAC;AAAA,IACvF,SACO,OAAO;AACZ,0BAAoB,OAAO,WAAW;AAAA,IACxC;AAAA,EACF;AACA,SAAO,iBAAiB,UAAU,WAAW,EAAE,OAAO,CAAC;AACzD;","names":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Feature } from 'geojson';
|
|
1
|
+
import type { Feature } from 'geojson';
|
|
2
2
|
export declare const photonAutocomplete: (text: string, countryCode: string | undefined, size: number) => Promise<Feature[]>;
|
|
3
3
|
export declare const nominatimReverse: (latitude: string, longitude: string, { coarse }: {
|
|
4
4
|
coarse: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"osm.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/components/viewers/map/utils/geocoding/osm.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"osm.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/components/viewers/map/utils/geocoding/osm.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAKtC,eAAO,MAAM,kBAAkB,GAAU,MAAM,MAAM,EAAE,aAAa,MAAM,GAAG,SAAS,EAAE,MAAM,MAAM,KAAG,OAAO,CAAC,OAAO,EAAE,CAsBvH,CAAA;AAED,eAAO,MAAM,gBAAgB,GAC3B,UAAU,MAAM,EAChB,WAAW,MAAM,EACjB,YAAY;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,KAC9B,OAAO,CAAC,OAAO,EAAE,CAiBnB,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { getGeocodingConfig } from "./config";
|
|
2
1
|
import { normalizePhotonFeature, normalizeNominatimResult } from "./adapters";
|
|
2
|
+
import { getGeocodingConfig } from "./config";
|
|
3
3
|
const photonAutocomplete = async (text, countryCode, size) => {
|
|
4
4
|
const { photonUrl } = getGeocodingConfig();
|
|
5
5
|
const params = new URLSearchParams({ q: text, limit: String(size * 2), lang: "en" });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../src/core/components/viewers/map/utils/geocoding/osm.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport {
|
|
1
|
+
{"version":3,"sources":["../../../../../../../src/core/components/viewers/map/utils/geocoding/osm.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport { normalizePhotonFeature, normalizeNominatimResult } from './adapters'\r\nimport { getGeocodingConfig } from './config'\r\n\r\nimport type { Feature } from 'geojson'\r\n\r\n// Free, no-key public OSM fallbacks. Photon serves autocomplete (it is built for\r\n// per-keystroke search); Nominatim serves reverse lookups (occasional, single point).\r\n\r\nexport const photonAutocomplete = async (text: string, countryCode: string | undefined, size: number): Promise<Feature[]> => {\r\n const { photonUrl } = getGeocodingConfig()\r\n\r\n // Photon has no country filter, so over-fetch and post-filter by country code.\r\n const params = new URLSearchParams({ q: text, limit: String(size * 2), lang: 'en' })\r\n\r\n const response = await fetch(`${photonUrl}/api?${params}`)\r\n if (!response.ok) throw new Error(`HTTP error! status: ${response.status}`)\r\n\r\n const data = await response.json()\r\n let features: Feature[] = (data.features || []).map(normalizePhotonFeature)\r\n\r\n if (countryCode) {\r\n const cc = countryCode.toUpperCase()\r\n const inCountry = features.filter(f => {\r\n const ca = (f.properties as any)?.country_a\r\n return !ca || ca === cc\r\n })\r\n if (inCountry.length) features = inCountry\r\n }\r\n\r\n return features.slice(0, size)\r\n}\r\n\r\nexport const nominatimReverse = async (\r\n latitude: string,\r\n longitude: string,\r\n { coarse }: { coarse: boolean },\r\n): Promise<Feature[]> => {\r\n const { nominatimUrl } = getGeocodingConfig()\r\n\r\n const params = new URLSearchParams({\r\n format: 'jsonv2',\r\n lat: latitude,\r\n lon: longitude,\r\n addressdetails: '1',\r\n zoom: coarse ? '10' : '18',\r\n })\r\n\r\n const response = await fetch(`${nominatimUrl}/reverse?${params}`)\r\n if (!response.ok) throw new Error(`HTTP error! status: ${response.status}`)\r\n\r\n const data = await response.json()\r\n if (!data || data.error || data.lat == null) return []\r\n return [normalizeNominatimResult(data)]\r\n}\r\n"],"mappings":"AAGA,SAAS,wBAAwB,gCAAgC;AACjE,SAAS,0BAA0B;AAO5B,MAAM,qBAAqB,OAAO,MAAc,aAAiC,SAAqC;AAC3H,QAAM,EAAE,UAAU,IAAI,mBAAmB;AAGzC,QAAM,SAAS,IAAI,gBAAgB,EAAE,GAAG,MAAM,OAAO,OAAO,OAAO,CAAC,GAAG,MAAM,KAAK,CAAC;AAEnF,QAAM,WAAW,MAAM,MAAM,GAAG,SAAS,QAAQ,MAAM,EAAE;AACzD,MAAI,CAAC,SAAS,GAAI,OAAM,IAAI,MAAM,uBAAuB,SAAS,MAAM,EAAE;AAE1E,QAAM,OAAO,MAAM,SAAS,KAAK;AACjC,MAAI,YAAuB,KAAK,YAAY,CAAC,GAAG,IAAI,sBAAsB;AAE1E,MAAI,aAAa;AACf,UAAM,KAAK,YAAY,YAAY;AACnC,UAAM,YAAY,SAAS,OAAO,OAAK;AAzB3C;AA0BM,YAAM,MAAM,OAAE,eAAF,mBAAsB;AAClC,aAAO,CAAC,MAAM,OAAO;AAAA,IACvB,CAAC;AACD,QAAI,UAAU,OAAQ,YAAW;AAAA,EACnC;AAEA,SAAO,SAAS,MAAM,GAAG,IAAI;AAC/B;AAEO,MAAM,mBAAmB,OAC9B,UACA,WACA,EAAE,OAAO,MACc;AACvB,QAAM,EAAE,aAAa,IAAI,mBAAmB;AAE5C,QAAM,SAAS,IAAI,gBAAgB;AAAA,IACjC,QAAQ;AAAA,IACR,KAAK;AAAA,IACL,KAAK;AAAA,IACL,gBAAgB;AAAA,IAChB,MAAM,SAAS,OAAO;AAAA,EACxB,CAAC;AAED,QAAM,WAAW,MAAM,MAAM,GAAG,YAAY,YAAY,MAAM,EAAE;AAChE,MAAI,CAAC,SAAS,GAAI,OAAM,IAAI,MAAM,uBAAuB,SAAS,MAAM,EAAE;AAE1E,QAAM,OAAO,MAAM,SAAS,KAAK;AACjC,MAAI,CAAC,QAAQ,KAAK,SAAS,KAAK,OAAO,KAAM,QAAO,CAAC;AACrD,SAAO,CAAC,yBAAyB,IAAI,CAAC;AACxC;","names":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Feature } from 'geojson';
|
|
1
|
+
import type { Feature } from 'geojson';
|
|
2
2
|
export declare const peliasAutocomplete: (text: string, countryCode: string | undefined, size: number) => Promise<Feature[]>;
|
|
3
3
|
export declare const peliasReverse: (latitude: string, longitude: string, countryCode: string | undefined, { size, coarse, layers }: {
|
|
4
4
|
size: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pelias.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/components/viewers/map/utils/geocoding/pelias.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pelias.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/components/viewers/map/utils/geocoding/pelias.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAKtC,eAAO,MAAM,kBAAkB,GAAU,MAAM,MAAM,EAAE,aAAa,MAAM,GAAG,SAAS,EAAE,MAAM,MAAM,KAAG,OAAO,CAAC,OAAO,EAAE,CAevH,CAAA;AAED,eAAO,MAAM,aAAa,GACxB,UAAU,MAAM,EAChB,WAAW,MAAM,EACjB,aAAa,MAAM,GAAG,SAAS,EAC/B,0BAA0B;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,KAC3E,OAAO,CAAC,OAAO,EAAE,CAkBnB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../src/core/components/viewers/map/utils/geocoding/pelias.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport {
|
|
1
|
+
{"version":3,"sources":["../../../../../../../src/core/components/viewers/map/utils/geocoding/pelias.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport { getGeocodingConfig } from './config'\r\n\r\nimport type { Feature } from 'geojson'\r\n\r\n// Geocode Earth and self-hosted Pelias share this dialect; only the base URL and\r\n// the (optional) api_key differ. Responses already match the shape the app expects.\r\n\r\nexport const peliasAutocomplete = async (text: string, countryCode: string | undefined, size: number): Promise<Feature[]> => {\r\n const { geocodeEarthApiKey, peliasBase } = getGeocodingConfig()\r\n\r\n const params = new URLSearchParams({\r\n 'text': text,\r\n 'size': String(size),\r\n })\r\n if (countryCode) params.set('boundary.country', countryCode.toUpperCase())\r\n if (geocodeEarthApiKey) params.set('api_key', geocodeEarthApiKey)\r\n\r\n const response = await fetch(`${peliasBase}/v1/autocomplete?${params}`)\r\n if (!response.ok) throw new Error(`HTTP error! status: ${response.status}`)\r\n\r\n const geojson = await response.json()\r\n return geojson.features?.length ? geojson.features : []\r\n}\r\n\r\nexport const peliasReverse = async (\r\n latitude: string,\r\n longitude: string,\r\n countryCode: string | undefined,\r\n { size, coarse, layers }: { size: number; coarse: boolean; layers?: string },\r\n): Promise<Feature[]> => {\r\n const { geocodeEarthApiKey, peliasBase } = getGeocodingConfig()\r\n\r\n const params = new URLSearchParams({\r\n 'point.lat': latitude,\r\n 'point.lon': longitude,\r\n 'size': String(size),\r\n })\r\n if (countryCode) params.set('boundary.country', countryCode.toUpperCase())\r\n if (coarse) params.set('layers', 'coarse')\r\n else if (layers) params.set('layers', layers)\r\n if (geocodeEarthApiKey) params.set('api_key', geocodeEarthApiKey)\r\n\r\n const response = await fetch(`${peliasBase}/v1/reverse?${params}`)\r\n if (!response.ok) throw new Error(`HTTP error! status: ${response.status}`)\r\n\r\n const data = await response.json()\r\n return data.features?.length ? data.features : []\r\n}\r\n"],"mappings":"AAGA,SAAS,0BAA0B;AAO5B,MAAM,qBAAqB,OAAO,MAAc,aAAiC,SAAqC;AAV7H;AAWE,QAAM,EAAE,oBAAoB,WAAW,IAAI,mBAAmB;AAE9D,QAAM,SAAS,IAAI,gBAAgB;AAAA,IACjC,QAAQ;AAAA,IACR,QAAQ,OAAO,IAAI;AAAA,EACrB,CAAC;AACD,MAAI,YAAa,QAAO,IAAI,oBAAoB,YAAY,YAAY,CAAC;AACzE,MAAI,mBAAoB,QAAO,IAAI,WAAW,kBAAkB;AAEhE,QAAM,WAAW,MAAM,MAAM,GAAG,UAAU,oBAAoB,MAAM,EAAE;AACtE,MAAI,CAAC,SAAS,GAAI,OAAM,IAAI,MAAM,uBAAuB,SAAS,MAAM,EAAE;AAE1E,QAAM,UAAU,MAAM,SAAS,KAAK;AACpC,WAAO,aAAQ,aAAR,mBAAkB,UAAS,QAAQ,WAAW,CAAC;AACxD;AAEO,MAAM,gBAAgB,OAC3B,UACA,WACA,aACA,EAAE,MAAM,QAAQ,OAAO,MACA;AAhCzB;AAiCE,QAAM,EAAE,oBAAoB,WAAW,IAAI,mBAAmB;AAE9D,QAAM,SAAS,IAAI,gBAAgB;AAAA,IACjC,aAAa;AAAA,IACb,aAAa;AAAA,IACb,QAAQ,OAAO,IAAI;AAAA,EACrB,CAAC;AACD,MAAI,YAAa,QAAO,IAAI,oBAAoB,YAAY,YAAY,CAAC;AACzE,MAAI,OAAQ,QAAO,IAAI,UAAU,QAAQ;AAAA,WAChC,OAAQ,QAAO,IAAI,UAAU,MAAM;AAC5C,MAAI,mBAAoB,QAAO,IAAI,WAAW,kBAAkB;AAEhE,QAAM,WAAW,MAAM,MAAM,GAAG,UAAU,eAAe,MAAM,EAAE;AACjE,MAAI,CAAC,SAAS,GAAI,OAAM,IAAI,MAAM,uBAAuB,SAAS,MAAM,EAAE;AAE1E,QAAM,OAAO,MAAM,SAAS,KAAK;AACjC,WAAO,UAAK,aAAL,mBAAe,UAAS,KAAK,WAAW,CAAC;AAClD;","names":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getOsmIdFromMartin.d.ts","sourceRoot":"","sources":["../../../../../../src/core/components/viewers/map/utils/getOsmIdFromMartin.ts"],"names":[],"mappings":"AAGA,OAAO,UAAU,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"getOsmIdFromMartin.d.ts","sourceRoot":"","sources":["../../../../../../src/core/components/viewers/map/utils/getOsmIdFromMartin.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,UAAU,MAAM,aAAa,CAAA;AAEzC,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,UAAU,CAAC,GAAG,EACnB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,MAAM,CAAC,CA4BjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/core/components/viewers/map/utils/getOsmIdFromMartin.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport maplibregl from 'maplibre-gl' // or 'mapbox-gl'\r\n\r\nexport async function getOsmIdFromLatLng(\r\n map: maplibregl.Map,\r\n lat: number,\r\n lng: number,\r\n): Promise<number> {\r\n // Fly to the location with 1 second duration\r\n map.flyTo({ center: [lng, lat], zoom: 18, duration: 1000 })\r\n\r\n // Wait 2 seconds before querying features\r\n await new Promise(resolve => setTimeout(resolve, 2000))\r\n\r\n // Convert lat/lng to pixel coordinates\r\n const point = map.project([lng, lat])\r\n // Query features at the point\r\n const features = map.queryRenderedFeatures(point)\r\n\r\n // Find the first feature with osm_id\r\n const feature = features.find(f => f.properties && f.properties.osm_id)\r\n\r\n if (feature) {\r\n // Ensure osm_id is a number\r\n const osmId = Number(feature.properties.osm_id)\r\n if (isNaN(osmId)) {\r\n throw new TypeError('osm_id is not a valid number')\r\n }\r\n else {\r\n return osmId\r\n }\r\n }\r\n else {\r\n throw new Error('No feature with osm_id found at the given location')\r\n }\r\n}\r\n"],"mappings":"AAKA,eAAsB,mBACpB,KACA,KACA,KACiB;AAEjB,MAAI,MAAM,EAAE,QAAQ,CAAC,KAAK,GAAG,GAAG,MAAM,IAAI,UAAU,IAAK,CAAC;AAG1D,QAAM,IAAI,QAAQ,aAAW,WAAW,SAAS,GAAI,CAAC;AAGtD,QAAM,QAAQ,IAAI,QAAQ,CAAC,KAAK,GAAG,CAAC;AAEpC,QAAM,WAAW,IAAI,sBAAsB,KAAK;AAGhD,QAAM,UAAU,SAAS,KAAK,OAAK,EAAE,cAAc,EAAE,WAAW,MAAM;AAEtE,MAAI,SAAS;AAEX,UAAM,QAAQ,OAAO,QAAQ,WAAW,MAAM;AAC9C,QAAI,MAAM,KAAK,GAAG;AAChB,YAAM,IAAI,UAAU,8BAA8B;AAAA,IACpD,OACK;AACH,aAAO;AAAA,IACT;AAAA,EACF,OACK;AACH,UAAM,IAAI,MAAM,oDAAoD;AAAA,EACtE;AACF;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/core/components/viewers/map/utils/getOsmIdFromMartin.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport type maplibregl from 'maplibre-gl' // or 'mapbox-gl'\r\n\r\nexport async function getOsmIdFromLatLng(\r\n map: maplibregl.Map,\r\n lat: number,\r\n lng: number,\r\n): Promise<number> {\r\n // Fly to the location with 1 second duration\r\n map.flyTo({ center: [lng, lat], zoom: 18, duration: 1000 })\r\n\r\n // Wait 2 seconds before querying features\r\n await new Promise(resolve => setTimeout(resolve, 2000))\r\n\r\n // Convert lat/lng to pixel coordinates\r\n const point = map.project([lng, lat])\r\n // Query features at the point\r\n const features = map.queryRenderedFeatures(point)\r\n\r\n // Find the first feature with osm_id\r\n const feature = features.find(f => f.properties && f.properties.osm_id)\r\n\r\n if (feature) {\r\n // Ensure osm_id is a number\r\n const osmId = Number(feature.properties.osm_id)\r\n if (isNaN(osmId)) {\r\n throw new TypeError('osm_id is not a valid number')\r\n }\r\n else {\r\n return osmId\r\n }\r\n }\r\n else {\r\n throw new Error('No feature with osm_id found at the given location')\r\n }\r\n}\r\n"],"mappings":"AAKA,eAAsB,mBACpB,KACA,KACA,KACiB;AAEjB,MAAI,MAAM,EAAE,QAAQ,CAAC,KAAK,GAAG,GAAG,MAAM,IAAI,UAAU,IAAK,CAAC;AAG1D,QAAM,IAAI,QAAQ,aAAW,WAAW,SAAS,GAAI,CAAC;AAGtD,QAAM,QAAQ,IAAI,QAAQ,CAAC,KAAK,GAAG,CAAC;AAEpC,QAAM,WAAW,IAAI,sBAAsB,KAAK;AAGhD,QAAM,UAAU,SAAS,KAAK,OAAK,EAAE,cAAc,EAAE,WAAW,MAAM;AAEtE,MAAI,SAAS;AAEX,UAAM,QAAQ,OAAO,QAAQ,WAAW,MAAM;AAC9C,QAAI,MAAM,KAAK,GAAG;AAChB,YAAM,IAAI,UAAU,8BAA8B;AAAA,IACpD,OACK;AACH,aAAO;AAAA,IACT;AAAA,EACF,OACK;AACH,UAAM,IAAI,MAAM,oDAAoD;AAAA,EACtE;AACF;","names":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PointCloudToolbar.d.ts","sourceRoot":"","sources":["../../../../../src/core/components/viewers/pointcloud/PointCloudToolbar.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"PointCloudToolbar.d.ts","sourceRoot":"","sources":["../../../../../src/core/components/viewers/pointcloud/PointCloudToolbar.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAM9B,wBAAgB,iBAAiB,sBAEhC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx } from "react/jsx-runtime";
|
|
3
|
-
import { pointcloudToolbarTools } from "./src/tools";
|
|
4
3
|
import { ToolbarBody } from "../../ToolbarBody";
|
|
4
|
+
import { pointcloudToolbarTools } from "./src/tools";
|
|
5
5
|
function PointCloudToolbar() {
|
|
6
6
|
return /* @__PURE__ */ jsx(ToolbarBody, { viewer: "pointcloud", tools: pointcloudToolbarTools() });
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/core/components/viewers/pointcloud/PointCloudToolbar.tsx"],"sourcesContent":["'use client'\r\n\r\n// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport * as React from 'react'\r\nimport {
|
|
1
|
+
{"version":3,"sources":["../../../../../src/core/components/viewers/pointcloud/PointCloudToolbar.tsx"],"sourcesContent":["'use client'\r\n\r\n// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport * as React from 'react'\r\n\r\nimport { ToolbarBody } from '../../ToolbarBody'\r\n\r\nimport { pointcloudToolbarTools } from './src/tools'\r\n\r\nexport function PointCloudToolbar() {\r\n return <ToolbarBody viewer=\"pointcloud\" tools={pointcloudToolbarTools()} />\r\n}\r\n"],"mappings":";AAYS;AALT,SAAS,mBAAmB;AAE5B,SAAS,8BAA8B;AAEhC,SAAS,oBAAoB;AAClC,SAAO,oBAAC,eAAY,QAAO,cAAa,OAAO,uBAAuB,GAAG;AAC3E;","names":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PointCloudViewer.d.ts","sourceRoot":"","sources":["../../../../../src/core/components/viewers/pointcloud/PointCloudViewer.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PointCloudViewer.d.ts","sourceRoot":"","sources":["../../../../../src/core/components/viewers/pointcloud/PointCloudViewer.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAmB/B,wBAAgB,gBAAgB,CAAC,EAAE,gBAAgB,EAAE,EAAE;IAAE,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAAE,qBAuOnF"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
-
import * as React from "react";
|
|
4
3
|
import { useSearchParams } from "next/navigation";
|
|
5
|
-
import
|
|
4
|
+
import * as React from "react";
|
|
5
|
+
import { useFilesByBuildingId } from "../../../hooks/files/files";
|
|
6
6
|
import { BuildingsContext, PointCloudContext } from "../../../store";
|
|
7
|
-
import {
|
|
7
|
+
import { usePointCloudCoordinateSystem } from "../useCoordinateSystem";
|
|
8
8
|
import { PointCloudLoadingState } from "./src/PointCloudLoadingState";
|
|
9
|
-
import { useFilesByBuildingId } from "../../../hooks/files/files";
|
|
10
9
|
import { ViewportGizmo } from "./src/ViewportGizmo";
|
|
11
|
-
import {
|
|
10
|
+
import { loadAllAssets } from "./utils/potreeLoader";
|
|
11
|
+
import { restoreCameraFromUrl } from "./utils/restoreCameraFromUrl";
|
|
12
12
|
function PointCloudViewer({ pointcloudApiUrl }) {
|
|
13
13
|
usePointCloudCoordinateSystem();
|
|
14
14
|
const API_BASE = pointcloudApiUrl != null ? pointcloudApiUrl : "http://localhost:5101";
|