@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.
Files changed (1284) hide show
  1. package/dist/core/components/AppSidebarContent.d.ts +1 -1
  2. package/dist/core/components/AppSidebarContent.d.ts.map +1 -1
  3. package/dist/core/components/AppSidebarContent.js +9 -9
  4. package/dist/core/components/AppSidebarContent.js.map +1 -1
  5. package/dist/core/components/ConfirmDialog.js.map +1 -1
  6. package/dist/core/components/DataTableSkeleton.d.ts.map +1 -1
  7. package/dist/core/components/DataTableSkeleton.js.map +1 -1
  8. package/dist/core/components/LanguageSwitch.d.ts.map +1 -1
  9. package/dist/core/components/LanguageSwitch.js +4 -4
  10. package/dist/core/components/LanguageSwitch.js.map +1 -1
  11. package/dist/core/components/Logo.js +1 -1
  12. package/dist/core/components/Logo.js.map +1 -1
  13. package/dist/core/components/Toolbar.d.ts +1 -1
  14. package/dist/core/components/Toolbar.d.ts.map +1 -1
  15. package/dist/core/components/Toolbar.js +1 -1
  16. package/dist/core/components/Toolbar.js.map +1 -1
  17. package/dist/core/components/ToolbarBody.d.ts +1 -1
  18. package/dist/core/components/ToolbarBody.d.ts.map +1 -1
  19. package/dist/core/components/ToolbarBody.js +1 -1
  20. package/dist/core/components/ToolbarBody.js.map +1 -1
  21. package/dist/core/components/ToolbarSubmenu.d.ts +1 -1
  22. package/dist/core/components/ToolbarSubmenu.d.ts.map +1 -1
  23. package/dist/core/components/ToolbarSubmenu.js +2 -2
  24. package/dist/core/components/ToolbarSubmenu.js.map +1 -1
  25. package/dist/core/components/TopNavigationBar.d.ts.map +1 -1
  26. package/dist/core/components/TopNavigationBar.js +5 -5
  27. package/dist/core/components/TopNavigationBar.js.map +1 -1
  28. package/dist/core/components/authentication/AuthPage.d.ts.map +1 -1
  29. package/dist/core/components/authentication/AuthPage.js +5 -5
  30. package/dist/core/components/authentication/AuthPage.js.map +1 -1
  31. package/dist/core/components/authentication/ForgotPassword.d.ts.map +1 -1
  32. package/dist/core/components/authentication/ForgotPassword.js +3 -3
  33. package/dist/core/components/authentication/ForgotPassword.js.map +1 -1
  34. package/dist/core/components/authentication/Signin.d.ts.map +1 -1
  35. package/dist/core/components/authentication/Signin.js +5 -5
  36. package/dist/core/components/authentication/Signin.js.map +1 -1
  37. package/dist/core/components/authentication/Signup.d.ts.map +1 -1
  38. package/dist/core/components/authentication/Signup.js +7 -7
  39. package/dist/core/components/authentication/Signup.js.map +1 -1
  40. package/dist/core/components/instance-not-found/index.d.ts.map +1 -1
  41. package/dist/core/components/instance-not-found/index.js +4 -4
  42. package/dist/core/components/instance-not-found/index.js.map +1 -1
  43. package/dist/core/components/instance-not-found/src/OrganizationNotFoundSection.d.ts.map +1 -1
  44. package/dist/core/components/instance-not-found/src/OrganizationNotFoundSection.js +3 -3
  45. package/dist/core/components/instance-not-found/src/OrganizationNotFoundSection.js.map +1 -1
  46. package/dist/core/components/organizationConfig/index.d.ts.map +1 -1
  47. package/dist/core/components/organizationConfig/index.js +4 -4
  48. package/dist/core/components/organizationConfig/index.js.map +1 -1
  49. package/dist/core/components/organizationConfig/src/organizationConfigContent.js +2 -2
  50. package/dist/core/components/organizationConfig/src/organizationConfigContent.js.map +1 -1
  51. package/dist/core/components/settings/index.d.ts.map +1 -1
  52. package/dist/core/components/settings/index.js +2 -2
  53. package/dist/core/components/settings/index.js.map +1 -1
  54. package/dist/core/components/settings/src/AccountSettingsPanel.d.ts.map +1 -1
  55. package/dist/core/components/settings/src/AccountSettingsPanel.js +8 -8
  56. package/dist/core/components/settings/src/AccountSettingsPanel.js.map +1 -1
  57. package/dist/core/components/settings/src/ChangePassword.d.ts.map +1 -1
  58. package/dist/core/components/settings/src/ChangePassword.js +5 -5
  59. package/dist/core/components/settings/src/ChangePassword.js.map +1 -1
  60. package/dist/core/components/settings/src/OrganizationSettingsPanel.d.ts.map +1 -1
  61. package/dist/core/components/settings/src/OrganizationSettingsPanel.js +7 -7
  62. package/dist/core/components/settings/src/OrganizationSettingsPanel.js.map +1 -1
  63. package/dist/core/components/settings/src/SettingsContent.d.ts.map +1 -1
  64. package/dist/core/components/settings/src/SettingsContent.js +1 -1
  65. package/dist/core/components/settings/src/SettingsContent.js.map +1 -1
  66. package/dist/core/components/settings/src/SettingsSidebar.d.ts.map +1 -1
  67. package/dist/core/components/settings/src/SettingsSidebar.js +3 -3
  68. package/dist/core/components/settings/src/SettingsSidebar.js.map +1 -1
  69. package/dist/core/components/settings/src/UsersSettingsPanel.js +1 -1
  70. package/dist/core/components/settings/src/UsersSettingsPanel.js.map +1 -1
  71. package/dist/core/components/support/BugReportDialog.d.ts.map +1 -1
  72. package/dist/core/components/support/BugReportDialog.js +8 -8
  73. package/dist/core/components/support/BugReportDialog.js.map +1 -1
  74. package/dist/core/components/support/FeatureRequestDialog.d.ts.map +1 -1
  75. package/dist/core/components/support/FeatureRequestDialog.js +6 -6
  76. package/dist/core/components/support/FeatureRequestDialog.js.map +1 -1
  77. package/dist/core/components/support/SupportMenu.d.ts.map +1 -1
  78. package/dist/core/components/support/SupportMenu.js +1 -1
  79. package/dist/core/components/support/SupportMenu.js.map +1 -1
  80. package/dist/core/components/ui/Accordion.d.ts +1 -1
  81. package/dist/core/components/ui/Accordion.d.ts.map +1 -1
  82. package/dist/core/components/ui/Accordion.js +1 -1
  83. package/dist/core/components/ui/Accordion.js.map +1 -1
  84. package/dist/core/components/ui/AddItemDialog.d.ts.map +1 -1
  85. package/dist/core/components/ui/AddItemDialog.js +1 -1
  86. package/dist/core/components/ui/AddItemDialog.js.map +1 -1
  87. package/dist/core/components/ui/AlertDialog.d.ts +1 -1
  88. package/dist/core/components/ui/AlertDialog.d.ts.map +1 -1
  89. package/dist/core/components/ui/AlertDialog.js +1 -1
  90. package/dist/core/components/ui/AlertDialog.js.map +1 -1
  91. package/dist/core/components/ui/AnimatedBackground.js +1 -1
  92. package/dist/core/components/ui/AnimatedBackground.js.map +1 -1
  93. package/dist/core/components/ui/AppSidebar.d.ts.map +1 -1
  94. package/dist/core/components/ui/AppSidebar.js +7 -7
  95. package/dist/core/components/ui/AppSidebar.js.map +1 -1
  96. package/dist/core/components/ui/Avatar.d.ts +1 -1
  97. package/dist/core/components/ui/Avatar.d.ts.map +1 -1
  98. package/dist/core/components/ui/Avatar.js +1 -1
  99. package/dist/core/components/ui/Avatar.js.map +1 -1
  100. package/dist/core/components/ui/Badge.d.ts.map +1 -1
  101. package/dist/core/components/ui/Badge.js.map +1 -1
  102. package/dist/core/components/ui/Breadcrumb.d.ts.map +1 -1
  103. package/dist/core/components/ui/Breadcrumb.js +2 -2
  104. package/dist/core/components/ui/Breadcrumb.js.map +1 -1
  105. package/dist/core/components/ui/Button.d.ts.map +1 -1
  106. package/dist/core/components/ui/Button.js +1 -1
  107. package/dist/core/components/ui/Button.js.map +1 -1
  108. package/dist/core/components/ui/Calendar.d.ts +2 -1
  109. package/dist/core/components/ui/Calendar.d.ts.map +1 -1
  110. package/dist/core/components/ui/Calendar.js +1 -1
  111. package/dist/core/components/ui/Calendar.js.map +1 -1
  112. package/dist/core/components/ui/Checkbox.d.ts +1 -1
  113. package/dist/core/components/ui/Checkbox.d.ts.map +1 -1
  114. package/dist/core/components/ui/Checkbox.js +1 -1
  115. package/dist/core/components/ui/Checkbox.js.map +1 -1
  116. package/dist/core/components/ui/CollapsibleSection.d.ts.map +1 -1
  117. package/dist/core/components/ui/CollapsibleSection.js +2 -2
  118. package/dist/core/components/ui/CollapsibleSection.js.map +1 -1
  119. package/dist/core/components/ui/Command.d.ts +8 -8
  120. package/dist/core/components/ui/Command.d.ts.map +1 -1
  121. package/dist/core/components/ui/Command.js +1 -1
  122. package/dist/core/components/ui/Command.js.map +1 -1
  123. package/dist/core/components/ui/Comments/CollapsibleCommentItem.d.ts +1 -1
  124. package/dist/core/components/ui/Comments/CollapsibleCommentItem.d.ts.map +1 -1
  125. package/dist/core/components/ui/Comments/CollapsibleCommentItem.js +9 -9
  126. package/dist/core/components/ui/Comments/CollapsibleCommentItem.js.map +1 -1
  127. package/dist/core/components/ui/Comments/Comment.d.ts.map +1 -1
  128. package/dist/core/components/ui/Comments/Comment.js +4 -4
  129. package/dist/core/components/ui/Comments/Comment.js.map +1 -1
  130. package/dist/core/components/ui/Comments/CommentInput.d.ts.map +1 -1
  131. package/dist/core/components/ui/Comments/CommentInput.js +6 -6
  132. package/dist/core/components/ui/Comments/CommentInput.js.map +1 -1
  133. package/dist/core/components/ui/Comments/CommentsSection.d.ts.map +1 -1
  134. package/dist/core/components/ui/Comments/CommentsSection.js +4 -4
  135. package/dist/core/components/ui/Comments/CommentsSection.js.map +1 -1
  136. package/dist/core/components/ui/Comments/commentUtils.d.ts +1 -1
  137. package/dist/core/components/ui/Comments/commentUtils.d.ts.map +1 -1
  138. package/dist/core/components/ui/Comments/commentUtils.js.map +1 -1
  139. package/dist/core/components/ui/Countdown.d.ts.map +1 -1
  140. package/dist/core/components/ui/Countdown.js +1 -1
  141. package/dist/core/components/ui/Countdown.js.map +1 -1
  142. package/dist/core/components/ui/DataTable.d.ts +1 -1
  143. package/dist/core/components/ui/DataTable.d.ts.map +1 -1
  144. package/dist/core/components/ui/DataTable.js +17 -17
  145. package/dist/core/components/ui/DataTable.js.map +1 -1
  146. package/dist/core/components/ui/DatePicker.d.ts.map +1 -1
  147. package/dist/core/components/ui/DatePicker.js +2 -2
  148. package/dist/core/components/ui/DatePicker.js.map +1 -1
  149. package/dist/core/components/ui/DescriptionList.d.ts.map +1 -1
  150. package/dist/core/components/ui/DescriptionList.js +2 -2
  151. package/dist/core/components/ui/DescriptionList.js.map +1 -1
  152. package/dist/core/components/ui/Dialog.d.ts +1 -1
  153. package/dist/core/components/ui/Dialog.d.ts.map +1 -1
  154. package/dist/core/components/ui/Dialog.js +1 -1
  155. package/dist/core/components/ui/Dialog.js.map +1 -1
  156. package/dist/core/components/ui/DropdownMenu.d.ts +1 -1
  157. package/dist/core/components/ui/DropdownMenu.d.ts.map +1 -1
  158. package/dist/core/components/ui/DropdownMenu.js +1 -1
  159. package/dist/core/components/ui/DropdownMenu.js.map +1 -1
  160. package/dist/core/components/ui/ExportData.d.ts +2 -2
  161. package/dist/core/components/ui/ExportData.d.ts.map +1 -1
  162. package/dist/core/components/ui/ExportData.js +5 -5
  163. package/dist/core/components/ui/ExportData.js.map +1 -1
  164. package/dist/core/components/ui/FilesManager/src/FileItemComponent.d.ts.map +1 -1
  165. package/dist/core/components/ui/FilesManager/src/FileItemComponent.js +3 -3
  166. package/dist/core/components/ui/FilesManager/src/FileItemComponent.js.map +1 -1
  167. package/dist/core/components/ui/FilesManager/src/FileMarker.d.ts.map +1 -1
  168. package/dist/core/components/ui/FilesManager/src/FileMarker.js +2 -2
  169. package/dist/core/components/ui/FilesManager/src/FileMarker.js.map +1 -1
  170. package/dist/core/components/ui/FilesManager/src/ViewerContextMenu.d.ts.map +1 -1
  171. package/dist/core/components/ui/FilesManager/src/ViewerContextMenu.js +1 -1
  172. package/dist/core/components/ui/FilesManager/src/ViewerContextMenu.js.map +1 -1
  173. package/dist/core/components/ui/FilesManager/src/convertIfcToFragmentsFile.d.ts.map +1 -1
  174. package/dist/core/components/ui/FilesManager/src/convertIfcToFragmentsFile.js.map +1 -1
  175. package/dist/core/components/ui/FilesManager/src/downloadUtils.d.ts +1 -1
  176. package/dist/core/components/ui/FilesManager/src/downloadUtils.d.ts.map +1 -1
  177. package/dist/core/components/ui/FilesManager/src/downloadUtils.js.map +1 -1
  178. package/dist/core/components/ui/FilesManager/src/useCommonFileUpload.js.map +1 -1
  179. package/dist/core/components/ui/FilesManager/src/useFileActions.d.ts +2 -2
  180. package/dist/core/components/ui/FilesManager/src/useFileActions.d.ts.map +1 -1
  181. package/dist/core/components/ui/FilesManager/src/useFileActions.js +2 -2
  182. package/dist/core/components/ui/FilesManager/src/useFileActions.js.map +1 -1
  183. package/dist/core/components/ui/FilesManager/src/useFileDeleteHandler.js +1 -1
  184. package/dist/core/components/ui/FilesManager/src/useFileDeleteHandler.js.map +1 -1
  185. package/dist/core/components/ui/FilesManager/src/useFileUploadHandler.js +3 -3
  186. package/dist/core/components/ui/FilesManager/src/useFileUploadHandler.js.map +1 -1
  187. package/dist/core/components/ui/FilesManager/src/useFileUploadWithProgress.d.ts.map +1 -1
  188. package/dist/core/components/ui/FilesManager/src/useFileUploadWithProgress.js.map +1 -1
  189. package/dist/core/components/ui/GenericTool.d.ts +1 -1
  190. package/dist/core/components/ui/GenericTool.d.ts.map +1 -1
  191. package/dist/core/components/ui/GenericTool.js +2 -2
  192. package/dist/core/components/ui/GenericTool.js.map +1 -1
  193. package/dist/core/components/ui/Icons/FloorPlanIcon.js +1 -1
  194. package/dist/core/components/ui/Icons/FloorPlanIcon.js.map +1 -1
  195. package/dist/core/components/ui/InfoSidebar/Container.d.ts.map +1 -1
  196. package/dist/core/components/ui/InfoSidebar/Container.js.map +1 -1
  197. package/dist/core/components/ui/InfoSidebar/Header.d.ts.map +1 -1
  198. package/dist/core/components/ui/InfoSidebar/Header.js +4 -4
  199. package/dist/core/components/ui/InfoSidebar/Header.js.map +1 -1
  200. package/dist/core/components/ui/InfoSidebar/index.d.ts +1 -1
  201. package/dist/core/components/ui/InfoSidebar/index.d.ts.map +1 -1
  202. package/dist/core/components/ui/InfoSidebar/index.js +1 -1
  203. package/dist/core/components/ui/InfoSidebar/index.js.map +1 -1
  204. package/dist/core/components/ui/Label.d.ts +1 -1
  205. package/dist/core/components/ui/Label.d.ts.map +1 -1
  206. package/dist/core/components/ui/Label.js +1 -1
  207. package/dist/core/components/ui/Label.js.map +1 -1
  208. package/dist/core/components/ui/LanguageToggle.d.ts +1 -1
  209. package/dist/core/components/ui/LanguageToggle.d.ts.map +1 -1
  210. package/dist/core/components/ui/LanguageToggle.js +1 -1
  211. package/dist/core/components/ui/LanguageToggle.js.map +1 -1
  212. package/dist/core/components/ui/Menubar.d.ts +1 -1
  213. package/dist/core/components/ui/Menubar.d.ts.map +1 -1
  214. package/dist/core/components/ui/Menubar.js +1 -1
  215. package/dist/core/components/ui/Menubar.js.map +1 -1
  216. package/dist/core/components/ui/NavUser.js +7 -7
  217. package/dist/core/components/ui/NavUser.js.map +1 -1
  218. package/dist/core/components/ui/Navbar.d.ts.map +1 -1
  219. package/dist/core/components/ui/Navbar.js +2 -2
  220. package/dist/core/components/ui/Navbar.js.map +1 -1
  221. package/dist/core/components/ui/Popover.d.ts +1 -1
  222. package/dist/core/components/ui/Popover.d.ts.map +1 -1
  223. package/dist/core/components/ui/Popover.js +1 -1
  224. package/dist/core/components/ui/Popover.js.map +1 -1
  225. package/dist/core/components/ui/Progress.d.ts +1 -1
  226. package/dist/core/components/ui/Progress.d.ts.map +1 -1
  227. package/dist/core/components/ui/Progress.js +1 -1
  228. package/dist/core/components/ui/Progress.js.map +1 -1
  229. package/dist/core/components/ui/ScrollArea.d.ts +1 -1
  230. package/dist/core/components/ui/ScrollArea.d.ts.map +1 -1
  231. package/dist/core/components/ui/ScrollArea.js +1 -1
  232. package/dist/core/components/ui/ScrollArea.js.map +1 -1
  233. package/dist/core/components/ui/SearchInput.d.ts.map +1 -1
  234. package/dist/core/components/ui/SearchInput.js +2 -2
  235. package/dist/core/components/ui/SearchInput.js.map +1 -1
  236. package/dist/core/components/ui/Select.d.ts +1 -1
  237. package/dist/core/components/ui/Select.d.ts.map +1 -1
  238. package/dist/core/components/ui/Select.js +3 -3
  239. package/dist/core/components/ui/Select.js.map +1 -1
  240. package/dist/core/components/ui/Sensors/CollapsibleSensorItem.d.ts +1 -1
  241. package/dist/core/components/ui/Sensors/CollapsibleSensorItem.d.ts.map +1 -1
  242. package/dist/core/components/ui/Sensors/CollapsibleSensorItem.js +10 -10
  243. package/dist/core/components/ui/Sensors/CollapsibleSensorItem.js.map +1 -1
  244. package/dist/core/components/ui/Sensors/Sensor.d.ts +2 -1
  245. package/dist/core/components/ui/Sensors/Sensor.d.ts.map +1 -1
  246. package/dist/core/components/ui/Sensors/Sensor.js +3 -3
  247. package/dist/core/components/ui/Sensors/Sensor.js.map +1 -1
  248. package/dist/core/components/ui/Sensors/SensorChart.d.ts +1 -1
  249. package/dist/core/components/ui/Sensors/SensorChart.d.ts.map +1 -1
  250. package/dist/core/components/ui/Sensors/SensorChart.js +1 -1
  251. package/dist/core/components/ui/Sensors/SensorChart.js.map +1 -1
  252. package/dist/core/components/ui/Sensors/SensorInput.d.ts.map +1 -1
  253. package/dist/core/components/ui/Sensors/SensorInput.js +9 -9
  254. package/dist/core/components/ui/Sensors/SensorInput.js.map +1 -1
  255. package/dist/core/components/ui/Sensors/SensorTagsSection.d.ts.map +1 -1
  256. package/dist/core/components/ui/Sensors/SensorTagsSection.js +3 -3
  257. package/dist/core/components/ui/Sensors/SensorTagsSection.js.map +1 -1
  258. package/dist/core/components/ui/Sensors/SensorsSection.d.ts.map +1 -1
  259. package/dist/core/components/ui/Sensors/SensorsSection.js +7 -7
  260. package/dist/core/components/ui/Sensors/SensorsSection.js.map +1 -1
  261. package/dist/core/components/ui/Sensors/SensorsSectionSkeleton.d.ts.map +1 -1
  262. package/dist/core/components/ui/Sensors/SensorsSectionSkeleton.js.map +1 -1
  263. package/dist/core/components/ui/Sensors/sensorUtils.d.ts +1 -1
  264. package/dist/core/components/ui/Sensors/sensorUtils.d.ts.map +1 -1
  265. package/dist/core/components/ui/Sensors/sensorUtils.js.map +1 -1
  266. package/dist/core/components/ui/Separator.d.ts +1 -1
  267. package/dist/core/components/ui/Separator.d.ts.map +1 -1
  268. package/dist/core/components/ui/Separator.js +1 -1
  269. package/dist/core/components/ui/Separator.js.map +1 -1
  270. package/dist/core/components/ui/SettingsButton.d.ts.map +1 -1
  271. package/dist/core/components/ui/SettingsButton.js +4 -4
  272. package/dist/core/components/ui/SettingsButton.js.map +1 -1
  273. package/dist/core/components/ui/ShareFeature/ShareToolSubmenu.d.ts +1 -1
  274. package/dist/core/components/ui/ShareFeature/ShareToolSubmenu.d.ts.map +1 -1
  275. package/dist/core/components/ui/ShareFeature/ShareToolSubmenu.js +14 -14
  276. package/dist/core/components/ui/ShareFeature/ShareToolSubmenu.js.map +1 -1
  277. package/dist/core/components/ui/Sheet.d.ts +1 -1
  278. package/dist/core/components/ui/Sheet.d.ts.map +1 -1
  279. package/dist/core/components/ui/Sheet.js +1 -1
  280. package/dist/core/components/ui/Sheet.js.map +1 -1
  281. package/dist/core/components/ui/Sidebar.d.ts +1 -1
  282. package/dist/core/components/ui/Sidebar.d.ts.map +1 -1
  283. package/dist/core/components/ui/Sidebar.js +6 -6
  284. package/dist/core/components/ui/Sidebar.js.map +1 -1
  285. package/dist/core/components/ui/Slider.d.ts +1 -1
  286. package/dist/core/components/ui/Slider.d.ts.map +1 -1
  287. package/dist/core/components/ui/Slider.js +1 -1
  288. package/dist/core/components/ui/Slider.js.map +1 -1
  289. package/dist/core/components/ui/Switch.d.ts +1 -1
  290. package/dist/core/components/ui/Switch.d.ts.map +1 -1
  291. package/dist/core/components/ui/Switch.js +1 -1
  292. package/dist/core/components/ui/Switch.js.map +1 -1
  293. package/dist/core/components/ui/Tabs.d.ts +1 -1
  294. package/dist/core/components/ui/Tabs.d.ts.map +1 -1
  295. package/dist/core/components/ui/Tabs.js +1 -1
  296. package/dist/core/components/ui/Tabs.js.map +1 -1
  297. package/dist/core/components/ui/Toggle.d.ts +1 -1
  298. package/dist/core/components/ui/Toggle.d.ts.map +1 -1
  299. package/dist/core/components/ui/Toggle.js +1 -1
  300. package/dist/core/components/ui/Toggle.js.map +1 -1
  301. package/dist/core/components/ui/ToggleGroup.d.ts +1 -1
  302. package/dist/core/components/ui/ToggleGroup.d.ts.map +1 -1
  303. package/dist/core/components/ui/ToggleGroup.js +1 -1
  304. package/dist/core/components/ui/ToggleGroup.js.map +1 -1
  305. package/dist/core/components/ui/ToolbarButton.d.ts +1 -1
  306. package/dist/core/components/ui/ToolbarButton.d.ts.map +1 -1
  307. package/dist/core/components/ui/ToolbarButton.js +1 -1
  308. package/dist/core/components/ui/ToolbarButton.js.map +1 -1
  309. package/dist/core/components/ui/Tooltip.d.ts +1 -1
  310. package/dist/core/components/ui/Tooltip.d.ts.map +1 -1
  311. package/dist/core/components/ui/Tooltip.js +1 -1
  312. package/dist/core/components/ui/Tooltip.js.map +1 -1
  313. package/dist/core/components/ui/UserAvatar.d.ts.map +1 -1
  314. package/dist/core/components/ui/UserAvatar.js +1 -1
  315. package/dist/core/components/ui/UserAvatar.js.map +1 -1
  316. package/dist/core/components/ui/downloadUtils.d.ts.map +1 -1
  317. package/dist/core/components/ui/downloadUtils.js.map +1 -1
  318. package/dist/core/components/ui/stats.d.ts.map +1 -1
  319. package/dist/core/components/ui/stats.js.map +1 -1
  320. package/dist/core/components/ui/uploadFile.js +1 -1
  321. package/dist/core/components/ui/uploadFile.js.map +1 -1
  322. package/dist/core/components/viewers/Data/DataMenu.d.ts +1 -1
  323. package/dist/core/components/viewers/Data/DataMenu.d.ts.map +1 -1
  324. package/dist/core/components/viewers/Data/DataMenu.js +11 -11
  325. package/dist/core/components/viewers/Data/DataMenu.js.map +1 -1
  326. package/dist/core/components/viewers/Data/FilterButtons.d.ts +1 -1
  327. package/dist/core/components/viewers/Data/FilterButtons.d.ts.map +1 -1
  328. package/dist/core/components/viewers/Data/FilterButtons.js +7 -7
  329. package/dist/core/components/viewers/Data/FilterButtons.js.map +1 -1
  330. package/dist/core/components/viewers/Data/HeaderButtons.d.ts +1 -1
  331. package/dist/core/components/viewers/Data/HeaderButtons.d.ts.map +1 -1
  332. package/dist/core/components/viewers/Data/HeaderButtons.js +9 -9
  333. package/dist/core/components/viewers/Data/HeaderButtons.js.map +1 -1
  334. package/dist/core/components/viewers/Data/MoreOptions.d.ts +1 -1
  335. package/dist/core/components/viewers/Data/MoreOptions.d.ts.map +1 -1
  336. package/dist/core/components/viewers/Data/MoreOptions.js +16 -16
  337. package/dist/core/components/viewers/Data/MoreOptions.js.map +1 -1
  338. package/dist/core/components/viewers/Data/advancedFilter/Filters.d.ts +1 -1
  339. package/dist/core/components/viewers/Data/advancedFilter/Filters.d.ts.map +1 -1
  340. package/dist/core/components/viewers/Data/advancedFilter/Filters.js +2 -2
  341. package/dist/core/components/viewers/Data/advancedFilter/Filters.js.map +1 -1
  342. package/dist/core/components/viewers/Data/advancedFilter/FiltersDialog.d.ts +1 -1
  343. package/dist/core/components/viewers/Data/advancedFilter/FiltersDialog.d.ts.map +1 -1
  344. package/dist/core/components/viewers/Data/advancedFilter/FiltersDialog.js +6 -6
  345. package/dist/core/components/viewers/Data/advancedFilter/FiltersDialog.js.map +1 -1
  346. package/dist/core/components/viewers/Data/buildingDetails/AddBuilding.d.ts.map +1 -1
  347. package/dist/core/components/viewers/Data/buildingDetails/AddBuilding.js +3 -3
  348. package/dist/core/components/viewers/Data/buildingDetails/AddBuilding.js.map +1 -1
  349. package/dist/core/components/viewers/Data/buildingDetails/BuildingDetails.d.ts.map +1 -1
  350. package/dist/core/components/viewers/Data/buildingDetails/BuildingDetails.js +10 -10
  351. package/dist/core/components/viewers/Data/buildingDetails/BuildingDetails.js.map +1 -1
  352. package/dist/core/components/viewers/Data/buildingDetails/BuildingsMoreOptions.d.ts.map +1 -1
  353. package/dist/core/components/viewers/Data/buildingDetails/BuildingsMoreOptions.js +11 -11
  354. package/dist/core/components/viewers/Data/buildingDetails/BuildingsMoreOptions.js.map +1 -1
  355. package/dist/core/components/viewers/Data/buildingDetails/FieldRenderer.d.ts.map +1 -1
  356. package/dist/core/components/viewers/Data/buildingDetails/FieldRenderer.js +10 -10
  357. package/dist/core/components/viewers/Data/buildingDetails/FieldRenderer.js.map +1 -1
  358. package/dist/core/components/viewers/Data/buildingDetails/GeocoderInput.d.ts.map +1 -1
  359. package/dist/core/components/viewers/Data/buildingDetails/GeocoderInput.js.map +1 -1
  360. package/dist/core/components/viewers/Data/buildingDetails/buildingSchemaTemplate.d.ts.map +1 -1
  361. package/dist/core/components/viewers/Data/buildingDetails/buildingSchemaTemplate.js.map +1 -1
  362. package/dist/core/components/viewers/Data/details/AttachedFiles.d.ts +1 -1
  363. package/dist/core/components/viewers/Data/details/AttachedFiles.d.ts.map +1 -1
  364. package/dist/core/components/viewers/Data/details/AttachedFiles.js +3 -3
  365. package/dist/core/components/viewers/Data/details/AttachedFiles.js.map +1 -1
  366. package/dist/core/components/viewers/Data/details/DetailActions.d.ts +1 -1
  367. package/dist/core/components/viewers/Data/details/DetailActions.d.ts.map +1 -1
  368. package/dist/core/components/viewers/Data/details/DetailActions.js +2 -2
  369. package/dist/core/components/viewers/Data/details/DetailActions.js.map +1 -1
  370. package/dist/core/components/viewers/Data/details/DetailHeader.d.ts.map +1 -1
  371. package/dist/core/components/viewers/Data/details/DetailHeader.js.map +1 -1
  372. package/dist/core/components/viewers/Data/details/EnergySourcesGrid.d.ts.map +1 -1
  373. package/dist/core/components/viewers/Data/details/EnergySourcesGrid.js +4 -4
  374. package/dist/core/components/viewers/Data/details/EnergySourcesGrid.js.map +1 -1
  375. package/dist/core/components/viewers/Data/details/FieldValue.d.ts.map +1 -1
  376. package/dist/core/components/viewers/Data/details/FieldValue.js +2 -2
  377. package/dist/core/components/viewers/Data/details/FieldValue.js.map +1 -1
  378. package/dist/core/components/viewers/Data/details/FileUpload.d.ts.map +1 -1
  379. package/dist/core/components/viewers/Data/details/FileUpload.js +2 -2
  380. package/dist/core/components/viewers/Data/details/FileUpload.js.map +1 -1
  381. package/dist/core/components/viewers/Data/details/FilterFiles.d.ts.map +1 -1
  382. package/dist/core/components/viewers/Data/details/FilterFiles.js +2 -2
  383. package/dist/core/components/viewers/Data/details/FilterFiles.js.map +1 -1
  384. package/dist/core/components/viewers/Data/details/TabSidebar.d.ts.map +1 -1
  385. package/dist/core/components/viewers/Data/details/TabSidebar.js +3 -3
  386. package/dist/core/components/viewers/Data/details/TabSidebar.js.map +1 -1
  387. package/dist/core/components/viewers/Data/files/DatatableFileAdder.d.ts.map +1 -1
  388. package/dist/core/components/viewers/Data/files/DatatableFileAdder.js +3 -3
  389. package/dist/core/components/viewers/Data/files/DatatableFileAdder.js.map +1 -1
  390. package/dist/core/components/viewers/Data/files/FileDetails.d.ts.map +1 -1
  391. package/dist/core/components/viewers/Data/files/FileDetails.js +8 -8
  392. package/dist/core/components/viewers/Data/files/FileDetails.js.map +1 -1
  393. package/dist/core/components/viewers/Data/files/FileMoreOptions.d.ts.map +1 -1
  394. package/dist/core/components/viewers/Data/files/FileMoreOptions.js +8 -8
  395. package/dist/core/components/viewers/Data/files/FileMoreOptions.js.map +1 -1
  396. package/dist/core/components/viewers/Data/files/FilePreview.d.ts +1 -1
  397. package/dist/core/components/viewers/Data/files/FilePreview.d.ts.map +1 -1
  398. package/dist/core/components/viewers/Data/files/FilePreview.js +1 -1
  399. package/dist/core/components/viewers/Data/files/FilePreview.js.map +1 -1
  400. package/dist/core/components/viewers/Data/infrastructureDetails/AddInfrastructure.d.ts.map +1 -1
  401. package/dist/core/components/viewers/Data/infrastructureDetails/AddInfrastructure.js +3 -3
  402. package/dist/core/components/viewers/Data/infrastructureDetails/AddInfrastructure.js.map +1 -1
  403. package/dist/core/components/viewers/Data/infrastructureDetails/FieldRenderer.d.ts.map +1 -1
  404. package/dist/core/components/viewers/Data/infrastructureDetails/FieldRenderer.js +2 -2
  405. package/dist/core/components/viewers/Data/infrastructureDetails/FieldRenderer.js.map +1 -1
  406. package/dist/core/components/viewers/Data/infrastructureDetails/InfrastructureDetails.d.ts.map +1 -1
  407. package/dist/core/components/viewers/Data/infrastructureDetails/InfrastructureDetails.js +6 -6
  408. package/dist/core/components/viewers/Data/infrastructureDetails/InfrastructureDetails.js.map +1 -1
  409. package/dist/core/components/viewers/Data/siteDetails/AddSite.d.ts.map +1 -1
  410. package/dist/core/components/viewers/Data/siteDetails/AddSite.js +5 -5
  411. package/dist/core/components/viewers/Data/siteDetails/AddSite.js.map +1 -1
  412. package/dist/core/components/viewers/Data/siteDetails/AssociatedBuildings.d.ts.map +1 -1
  413. package/dist/core/components/viewers/Data/siteDetails/AssociatedBuildings.js +10 -10
  414. package/dist/core/components/viewers/Data/siteDetails/AssociatedBuildings.js.map +1 -1
  415. package/dist/core/components/viewers/Data/siteDetails/FieldRenderer.d.ts.map +1 -1
  416. package/dist/core/components/viewers/Data/siteDetails/FieldRenderer.js +9 -9
  417. package/dist/core/components/viewers/Data/siteDetails/FieldRenderer.js.map +1 -1
  418. package/dist/core/components/viewers/Data/siteDetails/SiteDetails.d.ts.map +1 -1
  419. package/dist/core/components/viewers/Data/siteDetails/SiteDetails.js +11 -11
  420. package/dist/core/components/viewers/Data/siteDetails/SiteDetails.js.map +1 -1
  421. package/dist/core/components/viewers/Data/userDetails/AddUser.d.ts.map +1 -1
  422. package/dist/core/components/viewers/Data/userDetails/AddUser.js +3 -3
  423. package/dist/core/components/viewers/Data/userDetails/AddUser.js.map +1 -1
  424. package/dist/core/components/viewers/Data/userDetails/UserDetails.d.ts.map +1 -1
  425. package/dist/core/components/viewers/Data/userDetails/UserDetails.js +12 -12
  426. package/dist/core/components/viewers/Data/userDetails/UserDetails.js.map +1 -1
  427. package/dist/core/components/viewers/Data/userDetails/UserMoreOptions.d.ts.map +1 -1
  428. package/dist/core/components/viewers/Data/userDetails/UserMoreOptions.js +12 -12
  429. package/dist/core/components/viewers/Data/userDetails/UserMoreOptions.js.map +1 -1
  430. package/dist/core/components/viewers/Data/utils/Columns.d.ts +2 -2
  431. package/dist/core/components/viewers/Data/utils/Columns.d.ts.map +1 -1
  432. package/dist/core/components/viewers/Data/utils/Columns.js +7 -7
  433. package/dist/core/components/viewers/Data/utils/Columns.js.map +1 -1
  434. package/dist/core/components/viewers/Data/utils/Headers.d.ts.map +1 -1
  435. package/dist/core/components/viewers/Data/utils/Headers.js.map +1 -1
  436. package/dist/core/components/viewers/Data/utils/csvUtils.js.map +1 -1
  437. package/dist/core/components/viewers/Data/utils/positionParser.js.map +1 -1
  438. package/dist/core/components/viewers/Data/utils/useViewerData.d.ts +2 -2
  439. package/dist/core/components/viewers/Data/utils/useViewerData.d.ts.map +1 -1
  440. package/dist/core/components/viewers/Data/utils/useViewerData.js.map +1 -1
  441. package/dist/core/components/viewers/Viewer.d.ts +1 -1
  442. package/dist/core/components/viewers/Viewer.d.ts.map +1 -1
  443. package/dist/core/components/viewers/Viewer.js +6 -6
  444. package/dist/core/components/viewers/Viewer.js.map +1 -1
  445. package/dist/core/components/viewers/bim/BimToolbar.d.ts.map +1 -1
  446. package/dist/core/components/viewers/bim/BimToolbar.js +1 -1
  447. package/dist/core/components/viewers/bim/BimToolbar.js.map +1 -1
  448. package/dist/core/components/viewers/bim/BimViewer.d.ts.map +1 -1
  449. package/dist/core/components/viewers/bim/BimViewer.js +7 -7
  450. package/dist/core/components/viewers/bim/BimViewer.js.map +1 -1
  451. package/dist/core/components/viewers/bim/src/BCFTopicsManager.d.ts.map +1 -1
  452. package/dist/core/components/viewers/bim/src/BCFTopicsManager.js.map +1 -1
  453. package/dist/core/components/viewers/bim/src/BIMManager/index.d.ts +2 -2
  454. package/dist/core/components/viewers/bim/src/BIMManager/index.d.ts.map +1 -1
  455. package/dist/core/components/viewers/bim/src/BIMManager/index.js.map +1 -1
  456. package/dist/core/components/viewers/bim/src/BimLoadingState/index.d.ts.map +1 -1
  457. package/dist/core/components/viewers/bim/src/BimLoadingState/index.js +9 -9
  458. package/dist/core/components/viewers/bim/src/BimLoadingState/index.js.map +1 -1
  459. package/dist/core/components/viewers/bim/src/BimMeasurements/LenghtMeasurement.d.ts.map +1 -1
  460. package/dist/core/components/viewers/bim/src/BimMeasurements/LenghtMeasurement.js +1 -1
  461. package/dist/core/components/viewers/bim/src/BimMeasurements/LenghtMeasurement.js.map +1 -1
  462. package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/index.d.ts +1 -1
  463. package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/index.d.ts.map +1 -1
  464. package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/index.js +1 -1
  465. package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/index.js.map +1 -1
  466. package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/CollapsibleTopicItem.d.ts +1 -1
  467. package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/CollapsibleTopicItem.d.ts.map +1 -1
  468. package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/CollapsibleTopicItem.js +5 -5
  469. package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/CollapsibleTopicItem.js.map +1 -1
  470. package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/CreateTopicDialog.d.ts +1 -1
  471. package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/CreateTopicDialog.d.ts.map +1 -1
  472. package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/CreateTopicDialog.js +9 -9
  473. package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/CreateTopicDialog.js.map +1 -1
  474. package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/TopicsSection.d.ts.map +1 -1
  475. package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/TopicsSection.js +6 -6
  476. package/dist/core/components/viewers/bim/src/BimSidebar/src/CommunicationTab/src/TopicsSection.js.map +1 -1
  477. package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/index.d.ts.map +1 -1
  478. package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/index.js +4 -4
  479. package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/index.js.map +1 -1
  480. package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/src/FilesSection.d.ts +1 -1
  481. package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/src/FilesSection.d.ts.map +1 -1
  482. package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/src/FilesSection.js +10 -10
  483. package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/src/FilesSection.js.map +1 -1
  484. package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/src/ModelsSection.d.ts.map +1 -1
  485. package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/src/ModelsSection.js +9 -9
  486. package/dist/core/components/viewers/bim/src/BimSidebar/src/FileTab/src/ModelsSection.js.map +1 -1
  487. package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/index.d.ts.map +1 -1
  488. package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/index.js +1 -1
  489. package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/index.js.map +1 -1
  490. package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/src/ElevationsSection.d.ts.map +1 -1
  491. package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/src/ElevationsSection.js +2 -2
  492. package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/src/ElevationsSection.js.map +1 -1
  493. package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/src/FloorplanSection.d.ts.map +1 -1
  494. package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/src/FloorplanSection.js +1 -1
  495. package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/src/FloorplanSection.js.map +1 -1
  496. package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/src/SpatialStructureSection.d.ts.map +1 -1
  497. package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/src/SpatialStructureSection.js +6 -6
  498. package/dist/core/components/viewers/bim/src/BimSidebar/src/LayersTab/src/SpatialStructureSection.js.map +1 -1
  499. package/dist/core/components/viewers/bim/src/BimSidebar/src/SensorsTab/index.d.ts +1 -1
  500. package/dist/core/components/viewers/bim/src/BimSidebar/src/SensorsTab/index.d.ts.map +1 -1
  501. package/dist/core/components/viewers/bim/src/BimSidebar/src/SensorsTab/index.js.map +1 -1
  502. package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/index.d.ts.map +1 -1
  503. package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/index.js +2 -2
  504. package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/index.js.map +1 -1
  505. package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/GridManagement.d.ts.map +1 -1
  506. package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/GridManagement.js +5 -5
  507. package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/GridManagement.js.map +1 -1
  508. package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/LightingManagement.d.ts.map +1 -1
  509. package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/LightingManagement.js +3 -3
  510. package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/LightingManagement.js.map +1 -1
  511. package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/RenderMode.d.ts.map +1 -1
  512. package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/RenderMode.js +3 -3
  513. package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/RenderMode.js.map +1 -1
  514. package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/ToggleProjection.d.ts.map +1 -1
  515. package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/ToggleProjection.js +4 -4
  516. package/dist/core/components/viewers/bim/src/BimSidebar/src/SettingsTab/src/ToggleProjection.js.map +1 -1
  517. package/dist/core/components/viewers/bim/src/BimSidebar/src/TabSelector.d.ts +1 -1
  518. package/dist/core/components/viewers/bim/src/BimSidebar/src/TabSelector.d.ts.map +1 -1
  519. package/dist/core/components/viewers/bim/src/BimSidebar/src/TabSelector.js +1 -1
  520. package/dist/core/components/viewers/bim/src/BimSidebar/src/TabSelector.js.map +1 -1
  521. package/dist/core/components/viewers/bim/src/BimSidebar/src/index.d.ts.map +1 -1
  522. package/dist/core/components/viewers/bim/src/BimSidebar/src/index.js +5 -5
  523. package/dist/core/components/viewers/bim/src/BimSidebar/src/index.js.map +1 -1
  524. package/dist/core/components/viewers/bim/src/CameraProjection.d.ts.map +1 -1
  525. package/dist/core/components/viewers/bim/src/CameraProjection.js.map +1 -1
  526. package/dist/core/components/viewers/bim/src/ClippingPlane.d.ts.map +1 -1
  527. package/dist/core/components/viewers/bim/src/ClippingPlane.js +1 -1
  528. package/dist/core/components/viewers/bim/src/ClippingPlane.js.map +1 -1
  529. package/dist/core/components/viewers/bim/src/Cursor.d.ts +1 -1
  530. package/dist/core/components/viewers/bim/src/Cursor.d.ts.map +1 -1
  531. package/dist/core/components/viewers/bim/src/Cursor.js.map +1 -1
  532. package/dist/core/components/viewers/bim/src/DXFLoader/index.d.ts +1 -1
  533. package/dist/core/components/viewers/bim/src/DXFLoader/index.d.ts.map +1 -1
  534. package/dist/core/components/viewers/bim/src/DXFLoader/index.js +1 -1
  535. package/dist/core/components/viewers/bim/src/DXFLoader/index.js.map +1 -1
  536. package/dist/core/components/viewers/bim/src/ElevationsTool/index.d.ts +1 -1
  537. package/dist/core/components/viewers/bim/src/ElevationsTool/index.d.ts.map +1 -1
  538. package/dist/core/components/viewers/bim/src/ElevationsTool/index.js +1 -1
  539. package/dist/core/components/viewers/bim/src/ElevationsTool/index.js.map +1 -1
  540. package/dist/core/components/viewers/bim/src/ElevationsTool/src/ElevationProjector.d.ts +1 -1
  541. package/dist/core/components/viewers/bim/src/ElevationsTool/src/ElevationProjector.d.ts.map +1 -1
  542. package/dist/core/components/viewers/bim/src/ElevationsTool/src/ElevationProjector.js.map +1 -1
  543. package/dist/core/components/viewers/bim/src/ElevationsTool/src/types.d.ts +4 -4
  544. package/dist/core/components/viewers/bim/src/ElevationsTool/src/types.d.ts.map +1 -1
  545. package/dist/core/components/viewers/bim/src/ElevationsTool/src/types.js.map +1 -1
  546. package/dist/core/components/viewers/bim/src/FitCamera.d.ts.map +1 -1
  547. package/dist/core/components/viewers/bim/src/FitCamera.js +1 -1
  548. package/dist/core/components/viewers/bim/src/FitCamera.js.map +1 -1
  549. package/dist/core/components/viewers/bim/src/FloorplanTool/index.d.ts +3 -3
  550. package/dist/core/components/viewers/bim/src/FloorplanTool/index.d.ts.map +1 -1
  551. package/dist/core/components/viewers/bim/src/FloorplanTool/index.js +1 -1
  552. package/dist/core/components/viewers/bim/src/FloorplanTool/index.js.map +1 -1
  553. package/dist/core/components/viewers/bim/src/FloorplanTool/src/FloorplanRenderer.d.ts +3 -3
  554. package/dist/core/components/viewers/bim/src/FloorplanTool/src/FloorplanRenderer.d.ts.map +1 -1
  555. package/dist/core/components/viewers/bim/src/FloorplanTool/src/FloorplanRenderer.js.map +1 -1
  556. package/dist/core/components/viewers/bim/src/FloorplanTool/src/StoreyProjector.d.ts +1 -1
  557. package/dist/core/components/viewers/bim/src/FloorplanTool/src/StoreyProjector.d.ts.map +1 -1
  558. package/dist/core/components/viewers/bim/src/FloorplanTool/src/StoreyProjector.js.map +1 -1
  559. package/dist/core/components/viewers/bim/src/FloorplanTool/src/types.d.ts +2 -2
  560. package/dist/core/components/viewers/bim/src/FloorplanTool/src/types.d.ts.map +1 -1
  561. package/dist/core/components/viewers/bim/src/FloorplanTool/src/types.js.map +1 -1
  562. package/dist/core/components/viewers/bim/src/GhostMode.d.ts +1 -1
  563. package/dist/core/components/viewers/bim/src/GhostMode.d.ts.map +1 -1
  564. package/dist/core/components/viewers/bim/src/GhostMode.js.map +1 -1
  565. package/dist/core/components/viewers/bim/src/Highlighter/index.d.ts.map +1 -1
  566. package/dist/core/components/viewers/bim/src/Highlighter/index.js +1 -1
  567. package/dist/core/components/viewers/bim/src/Highlighter/index.js.map +1 -1
  568. package/dist/core/components/viewers/bim/src/IDSManager/index.d.ts.map +1 -1
  569. package/dist/core/components/viewers/bim/src/IDSManager/index.js +3 -3
  570. package/dist/core/components/viewers/bim/src/IDSManager/index.js.map +1 -1
  571. package/dist/core/components/viewers/bim/src/IDSManager/src/IDSLegend.d.ts.map +1 -1
  572. package/dist/core/components/viewers/bim/src/IDSManager/src/IDSLegend.js +2 -2
  573. package/dist/core/components/viewers/bim/src/IDSManager/src/IDSLegend.js.map +1 -1
  574. package/dist/core/components/viewers/bim/src/LoadIfcAsFragments.d.ts.map +1 -1
  575. package/dist/core/components/viewers/bim/src/LoadIfcAsFragments.js.map +1 -1
  576. package/dist/core/components/viewers/bim/src/LoadModels.d.ts +1 -1
  577. package/dist/core/components/viewers/bim/src/LoadModels.d.ts.map +1 -1
  578. package/dist/core/components/viewers/bim/src/LoadModels.js +1 -1
  579. package/dist/core/components/viewers/bim/src/LoadModels.js.map +1 -1
  580. package/dist/core/components/viewers/bim/src/ModelManager/index.d.ts +1 -1
  581. package/dist/core/components/viewers/bim/src/ModelManager/index.d.ts.map +1 -1
  582. package/dist/core/components/viewers/bim/src/ModelManager/index.js +4 -4
  583. package/dist/core/components/viewers/bim/src/ModelManager/index.js.map +1 -1
  584. package/dist/core/components/viewers/bim/src/SimpleBimViewer.d.ts +1 -1
  585. package/dist/core/components/viewers/bim/src/SimpleBimViewer.d.ts.map +1 -1
  586. package/dist/core/components/viewers/bim/src/SimpleBimViewer.js +8 -8
  587. package/dist/core/components/viewers/bim/src/SimpleBimViewer.js.map +1 -1
  588. package/dist/core/components/viewers/bim/src/SpatialStructure.js.map +1 -1
  589. package/dist/core/components/viewers/bim/src/ViewportGizmo.d.ts.map +1 -1
  590. package/dist/core/components/viewers/bim/src/ViewportGizmo.js +2 -2
  591. package/dist/core/components/viewers/bim/src/ViewportGizmo.js.map +1 -1
  592. package/dist/core/components/viewers/bim/src/lib/CameraController.d.ts +1 -1
  593. package/dist/core/components/viewers/bim/src/lib/CameraController.d.ts.map +1 -1
  594. package/dist/core/components/viewers/bim/src/lib/CameraController.js.map +1 -1
  595. package/dist/core/components/viewers/bim/src/lib/ChromeController.d.ts +1 -1
  596. package/dist/core/components/viewers/bim/src/lib/ChromeController.d.ts.map +1 -1
  597. package/dist/core/components/viewers/bim/src/lib/ChromeController.js.map +1 -1
  598. package/dist/core/components/viewers/bim/src/lib/ClipController.d.ts +1 -1
  599. package/dist/core/components/viewers/bim/src/lib/ClipController.d.ts.map +1 -1
  600. package/dist/core/components/viewers/bim/src/lib/ClipController.js.map +1 -1
  601. package/dist/core/components/viewers/bim/src/lib/GridController.d.ts.map +1 -1
  602. package/dist/core/components/viewers/bim/src/lib/GridController.js.map +1 -1
  603. package/dist/core/components/viewers/bim/src/lib/TrueNorthPopover.d.ts.map +1 -1
  604. package/dist/core/components/viewers/bim/src/lib/TrueNorthPopover.js +1 -1
  605. package/dist/core/components/viewers/bim/src/lib/TrueNorthPopover.js.map +1 -1
  606. package/dist/core/components/viewers/bim/src/lib/ViewSectionList.d.ts +2 -2
  607. package/dist/core/components/viewers/bim/src/lib/ViewSectionList.d.ts.map +1 -1
  608. package/dist/core/components/viewers/bim/src/lib/ViewSectionList.js +1 -1
  609. package/dist/core/components/viewers/bim/src/lib/ViewSectionList.js.map +1 -1
  610. package/dist/core/components/viewers/bim/src/lib/drawingProjection.d.ts +1 -1
  611. package/dist/core/components/viewers/bim/src/lib/drawingProjection.d.ts.map +1 -1
  612. package/dist/core/components/viewers/bim/src/lib/drawingProjection.js.map +1 -1
  613. package/dist/core/components/viewers/bim/src/lib/useBuildingName.d.ts.map +1 -1
  614. package/dist/core/components/viewers/bim/src/lib/useBuildingName.js.map +1 -1
  615. package/dist/core/components/viewers/bim/src/lib/useFriendlyIfcClassName.js +1 -1
  616. package/dist/core/components/viewers/bim/src/lib/useFriendlyIfcClassName.js.map +1 -1
  617. package/dist/core/components/viewers/bim/src/propertiesMenu/index.d.ts.map +1 -1
  618. package/dist/core/components/viewers/bim/src/propertiesMenu/index.js +4 -4
  619. package/dist/core/components/viewers/bim/src/propertiesMenu/index.js.map +1 -1
  620. package/dist/core/components/viewers/bim/src/propertiesMenu/src/ElementList.d.ts.map +1 -1
  621. package/dist/core/components/viewers/bim/src/propertiesMenu/src/ElementList.js +1 -1
  622. package/dist/core/components/viewers/bim/src/propertiesMenu/src/ElementList.js.map +1 -1
  623. package/dist/core/components/viewers/bim/src/propertiesMenu/src/PropertiesMenuHeader.d.ts.map +1 -1
  624. package/dist/core/components/viewers/bim/src/propertiesMenu/src/PropertiesMenuHeader.js +2 -2
  625. package/dist/core/components/viewers/bim/src/propertiesMenu/src/PropertiesMenuHeader.js.map +1 -1
  626. package/dist/core/components/viewers/bim/src/propertiesMenu/src/PropertyGroup.d.ts.map +1 -1
  627. package/dist/core/components/viewers/bim/src/propertiesMenu/src/PropertyGroup.js.map +1 -1
  628. package/dist/core/components/viewers/bim/src/propertiesMenu/src/useElementProperties.d.ts +1 -1
  629. package/dist/core/components/viewers/bim/src/propertiesMenu/src/useElementProperties.d.ts.map +1 -1
  630. package/dist/core/components/viewers/bim/src/propertiesMenu/src/useElementProperties.js +2 -2
  631. package/dist/core/components/viewers/bim/src/propertiesMenu/src/useElementProperties.js.map +1 -1
  632. package/dist/core/components/viewers/bim/src/propertiesMenu/src/utils.d.ts.map +1 -1
  633. package/dist/core/components/viewers/bim/src/propertiesMenu/src/utils.js.map +1 -1
  634. package/dist/core/components/viewers/bim/src/tools/AddToBim/index.d.ts.map +1 -1
  635. package/dist/core/components/viewers/bim/src/tools/AddToBim/index.js +9 -9
  636. package/dist/core/components/viewers/bim/src/tools/AddToBim/index.js.map +1 -1
  637. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddDxf.d.ts +1 -1
  638. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddDxf.d.ts.map +1 -1
  639. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddDxf.js +2 -2
  640. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddDxf.js.map +1 -1
  641. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddFile.d.ts.map +1 -1
  642. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddFile.js +2 -2
  643. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddFile.js.map +1 -1
  644. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddSensor.d.ts +1 -1
  645. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddSensor.d.ts.map +1 -1
  646. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddSensor.js.map +1 -1
  647. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddToBimToolbar.d.ts.map +1 -1
  648. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddToBimToolbar.js +3 -3
  649. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/AddToBimToolbar.js.map +1 -1
  650. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/BimComment.d.ts +1 -1
  651. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/BimComment.d.ts.map +1 -1
  652. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/BimComment.js.map +1 -1
  653. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/BimSensor.d.ts +2 -2
  654. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/BimSensor.d.ts.map +1 -1
  655. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/BimSensor.js.map +1 -1
  656. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/FileHandler.d.ts +5 -5
  657. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/FileHandler.d.ts.map +1 -1
  658. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/FileHandler.js.map +1 -1
  659. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/FileMarkerUtils.d.ts.map +1 -1
  660. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/FileMarkerUtils.js +2 -2
  661. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/FileMarkerUtils.js.map +1 -1
  662. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/Position3DCard.d.ts.map +1 -1
  663. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/Position3DCard.js +1 -1
  664. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/Position3DCard.js.map +1 -1
  665. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/renderCSS2DMarkers.d.ts +1 -1
  666. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/renderCSS2DMarkers.d.ts.map +1 -1
  667. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/renderCSS2DMarkers.js +1 -1
  668. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/renderCSS2DMarkers.js.map +1 -1
  669. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useCommentMarkers.d.ts.map +1 -1
  670. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useCommentMarkers.js +4 -4
  671. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useCommentMarkers.js.map +1 -1
  672. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useFilePlacement.d.ts +2 -2
  673. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useFilePlacement.d.ts.map +1 -1
  674. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useFilePlacement.js +4 -4
  675. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useFilePlacement.js.map +1 -1
  676. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useSensorMarkers.d.ts.map +1 -1
  677. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useSensorMarkers.js +6 -6
  678. package/dist/core/components/viewers/bim/src/tools/AddToBim/src/useSensorMarkers.js.map +1 -1
  679. package/dist/core/components/viewers/bim/src/tools/BIMSearchTool.d.ts.map +1 -1
  680. package/dist/core/components/viewers/bim/src/tools/BIMSearchTool.js +2 -2
  681. package/dist/core/components/viewers/bim/src/tools/BIMSearchTool.js.map +1 -1
  682. package/dist/core/components/viewers/bim/src/tools/ClippingTool/ClippingTool.d.ts +1 -1
  683. package/dist/core/components/viewers/bim/src/tools/ClippingTool/ClippingTool.d.ts.map +1 -1
  684. package/dist/core/components/viewers/bim/src/tools/ClippingTool/ClippingTool.js +6 -6
  685. package/dist/core/components/viewers/bim/src/tools/ClippingTool/ClippingTool.js.map +1 -1
  686. package/dist/core/components/viewers/bim/src/tools/ExplodeByLevelTool.d.ts +1 -1
  687. package/dist/core/components/viewers/bim/src/tools/ExplodeByLevelTool.d.ts.map +1 -1
  688. package/dist/core/components/viewers/bim/src/tools/ExplodeByLevelTool.js +3 -3
  689. package/dist/core/components/viewers/bim/src/tools/ExplodeByLevelTool.js.map +1 -1
  690. package/dist/core/components/viewers/bim/src/tools/FitCameraTool.d.ts +1 -1
  691. package/dist/core/components/viewers/bim/src/tools/FitCameraTool.d.ts.map +1 -1
  692. package/dist/core/components/viewers/bim/src/tools/FitCameraTool.js +2 -2
  693. package/dist/core/components/viewers/bim/src/tools/FitCameraTool.js.map +1 -1
  694. package/dist/core/components/viewers/bim/src/tools/InspectBimTool.d.ts +1 -1
  695. package/dist/core/components/viewers/bim/src/tools/InspectBimTool.d.ts.map +1 -1
  696. package/dist/core/components/viewers/bim/src/tools/InspectBimTool.js +4 -4
  697. package/dist/core/components/viewers/bim/src/tools/InspectBimTool.js.map +1 -1
  698. package/dist/core/components/viewers/bim/src/tools/bimToolbar.d.ts +1 -1
  699. package/dist/core/components/viewers/bim/src/tools/bimToolbar.d.ts.map +1 -1
  700. package/dist/core/components/viewers/bim/src/tools/bimToolbar.js +4 -4
  701. package/dist/core/components/viewers/bim/src/tools/bimToolbar.js.map +1 -1
  702. package/dist/core/components/viewers/bim/src/tools/measureBimTool.d.ts +1 -1
  703. package/dist/core/components/viewers/bim/src/tools/measureBimTool.d.ts.map +1 -1
  704. package/dist/core/components/viewers/bim/src/tools/measureBimTool.js +5 -5
  705. package/dist/core/components/viewers/bim/src/tools/measureBimTool.js.map +1 -1
  706. package/dist/core/components/viewers/bim/src/tools/selectionBimTool.d.ts +1 -1
  707. package/dist/core/components/viewers/bim/src/tools/selectionBimTool.d.ts.map +1 -1
  708. package/dist/core/components/viewers/bim/src/tools/selectionBimTool.js +5 -5
  709. package/dist/core/components/viewers/bim/src/tools/selectionBimTool.js.map +1 -1
  710. package/dist/core/components/viewers/bim/src/tools/shareBimTool.d.ts +1 -1
  711. package/dist/core/components/viewers/bim/src/tools/shareBimTool.d.ts.map +1 -1
  712. package/dist/core/components/viewers/bim/src/tools/shareBimTool.js.map +1 -1
  713. package/dist/core/components/viewers/bim/utils/GizmoController.d.ts +1 -1
  714. package/dist/core/components/viewers/bim/utils/GizmoController.d.ts.map +1 -1
  715. package/dist/core/components/viewers/bim/utils/GizmoController.js.map +1 -1
  716. package/dist/core/components/viewers/bim/utils/setCameraLookAt.d.ts +1 -1
  717. package/dist/core/components/viewers/bim/utils/setCameraLookAt.d.ts.map +1 -1
  718. package/dist/core/components/viewers/bim/utils/setCameraLookAt.js.map +1 -1
  719. package/dist/core/components/viewers/map/MapViewer.d.ts +1 -1
  720. package/dist/core/components/viewers/map/MapViewer.d.ts.map +1 -1
  721. package/dist/core/components/viewers/map/MapViewer.js +7 -7
  722. package/dist/core/components/viewers/map/MapViewer.js.map +1 -1
  723. package/dist/core/components/viewers/map/datasets/AddPortalDialog.d.ts.map +1 -1
  724. package/dist/core/components/viewers/map/datasets/AddPortalDialog.js +4 -4
  725. package/dist/core/components/viewers/map/datasets/AddPortalDialog.js.map +1 -1
  726. package/dist/core/components/viewers/map/datasets/DatasetDetails.d.ts +1 -1
  727. package/dist/core/components/viewers/map/datasets/DatasetDetails.d.ts.map +1 -1
  728. package/dist/core/components/viewers/map/datasets/DatasetDetails.js +4 -4
  729. package/dist/core/components/viewers/map/datasets/DatasetDetails.js.map +1 -1
  730. package/dist/core/components/viewers/map/datasets/DatasetManager/index.d.ts.map +1 -1
  731. package/dist/core/components/viewers/map/datasets/DatasetManager/index.js +13 -13
  732. package/dist/core/components/viewers/map/datasets/DatasetManager/index.js.map +1 -1
  733. package/dist/core/components/viewers/map/datasets/DatasetManager/src/FieldsTable.d.ts.map +1 -1
  734. package/dist/core/components/viewers/map/datasets/DatasetManager/src/FieldsTable.js +2 -2
  735. package/dist/core/components/viewers/map/datasets/DatasetManager/src/FieldsTable.js.map +1 -1
  736. package/dist/core/components/viewers/map/datasets/DatasetSkeleton.d.ts.map +1 -1
  737. package/dist/core/components/viewers/map/datasets/DatasetSkeleton.js.map +1 -1
  738. package/dist/core/components/viewers/map/datasets/Filters.d.ts.map +1 -1
  739. package/dist/core/components/viewers/map/datasets/Filters.js +2 -2
  740. package/dist/core/components/viewers/map/datasets/Filters.js.map +1 -1
  741. package/dist/core/components/viewers/map/datasets/NestedFilter.d.ts.map +1 -1
  742. package/dist/core/components/viewers/map/datasets/NestedFilter.js +1 -1
  743. package/dist/core/components/viewers/map/datasets/NestedFilter.js.map +1 -1
  744. package/dist/core/components/viewers/map/datasets/RowActions.d.ts.map +1 -1
  745. package/dist/core/components/viewers/map/datasets/RowActions.js +3 -3
  746. package/dist/core/components/viewers/map/datasets/RowActions.js.map +1 -1
  747. package/dist/core/components/viewers/map/datasets/data.d.ts +1 -1
  748. package/dist/core/components/viewers/map/datasets/data.d.ts.map +1 -1
  749. package/dist/core/components/viewers/map/datasets/data.js +2 -2
  750. package/dist/core/components/viewers/map/datasets/data.js.map +1 -1
  751. package/dist/core/components/viewers/map/datasets/index.d.ts +1 -1
  752. package/dist/core/components/viewers/map/datasets/index.d.ts.map +1 -1
  753. package/dist/core/components/viewers/map/datasets/index.js +11 -11
  754. package/dist/core/components/viewers/map/datasets/index.js.map +1 -1
  755. package/dist/core/components/viewers/map/datasets/src/arcGISDatasets.d.ts +1 -1
  756. package/dist/core/components/viewers/map/datasets/src/arcGISDatasets.d.ts.map +1 -1
  757. package/dist/core/components/viewers/map/datasets/src/arcGISDatasets.js +2 -2
  758. package/dist/core/components/viewers/map/datasets/src/arcGISDatasets.js.map +1 -1
  759. package/dist/core/components/viewers/map/datasets/src/builtinLiveDatasets.d.ts.map +1 -1
  760. package/dist/core/components/viewers/map/datasets/src/builtinLiveDatasets.js.map +1 -1
  761. package/dist/core/components/viewers/map/datasets/src/cache.js.map +1 -1
  762. package/dist/core/components/viewers/map/datasets/src/ckanDatasets.d.ts +1 -1
  763. package/dist/core/components/viewers/map/datasets/src/ckanDatasets.d.ts.map +1 -1
  764. package/dist/core/components/viewers/map/datasets/src/ckanDatasets.js +1 -1
  765. package/dist/core/components/viewers/map/datasets/src/ckanDatasets.js.map +1 -1
  766. package/dist/core/components/viewers/map/datasets/src/localDatasets.d.ts +1 -1
  767. package/dist/core/components/viewers/map/datasets/src/localDatasets.d.ts.map +1 -1
  768. package/dist/core/components/viewers/map/datasets/src/localDatasets.js +3 -3
  769. package/dist/core/components/viewers/map/datasets/src/localDatasets.js.map +1 -1
  770. package/dist/core/components/viewers/map/datasets/src/minioDatasets.d.ts.map +1 -1
  771. package/dist/core/components/viewers/map/datasets/src/minioDatasets.js.map +1 -1
  772. package/dist/core/components/viewers/map/datasets/src/opendatasoftDatasets.d.ts +1 -1
  773. package/dist/core/components/viewers/map/datasets/src/opendatasoftDatasets.d.ts.map +1 -1
  774. package/dist/core/components/viewers/map/datasets/src/opendatasoftDatasets.js +1 -1
  775. package/dist/core/components/viewers/map/datasets/src/opendatasoftDatasets.js.map +1 -1
  776. package/dist/core/components/viewers/map/datasets/src/publishedTiles.d.ts +1 -1
  777. package/dist/core/components/viewers/map/datasets/src/publishedTiles.d.ts.map +1 -1
  778. package/dist/core/components/viewers/map/datasets/src/publishedTiles.js.map +1 -1
  779. package/dist/core/components/viewers/map/datasets/src/socrataDatasets.d.ts.map +1 -1
  780. package/dist/core/components/viewers/map/datasets/src/socrataDatasets.js +1 -1
  781. package/dist/core/components/viewers/map/datasets/src/socrataDatasets.js.map +1 -1
  782. package/dist/core/components/viewers/map/datasets/src/urlSources.d.ts +1 -12
  783. package/dist/core/components/viewers/map/datasets/src/urlSources.d.ts.map +1 -1
  784. package/dist/core/components/viewers/map/datasets/src/urlSources.js +1 -1
  785. package/dist/core/components/viewers/map/datasets/src/urlSources.js.map +1 -1
  786. package/dist/core/components/viewers/map/datasets/src/useDatasetsForPortals.d.ts.map +1 -1
  787. package/dist/core/components/viewers/map/datasets/src/useDatasetsForPortals.js +1 -1
  788. package/dist/core/components/viewers/map/datasets/src/useDatasetsForPortals.js.map +1 -1
  789. package/dist/core/components/viewers/map/datasets/src/useFastDatasetCache.d.ts +1 -1
  790. package/dist/core/components/viewers/map/datasets/src/useFastDatasetCache.d.ts.map +1 -1
  791. package/dist/core/components/viewers/map/datasets/src/useFastDatasetCache.js.map +1 -1
  792. package/dist/core/components/viewers/map/datasets/utils.d.ts +1 -1
  793. package/dist/core/components/viewers/map/datasets/utils.d.ts.map +1 -1
  794. package/dist/core/components/viewers/map/datasets/utils.js.map +1 -1
  795. package/dist/core/components/viewers/map/legends/MapLegendHost.d.ts.map +1 -1
  796. package/dist/core/components/viewers/map/legends/MapLegendHost.js +3 -3
  797. package/dist/core/components/viewers/map/legends/MapLegendHost.js.map +1 -1
  798. package/dist/core/components/viewers/map/src/Geocoder.d.ts.map +1 -1
  799. package/dist/core/components/viewers/map/src/Geocoder.js +8 -8
  800. package/dist/core/components/viewers/map/src/Geocoder.js.map +1 -1
  801. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/index.d.ts +1 -1
  802. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/index.d.ts.map +1 -1
  803. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/index.js.map +1 -1
  804. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/DatabaseBuildingPopover/index.d.ts +1 -1
  805. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/DatabaseBuildingPopover/index.d.ts.map +1 -1
  806. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/DatabaseBuildingPopover/index.js +3 -3
  807. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/DatabaseBuildingPopover/index.js.map +1 -1
  808. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/DatabaseBuildingPopover/src/BuildingsTools.d.ts +1 -1
  809. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/DatabaseBuildingPopover/src/BuildingsTools.d.ts.map +1 -1
  810. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/DatabaseBuildingPopover/src/BuildingsTools.js +11 -10
  811. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/DatabaseBuildingPopover/src/BuildingsTools.js.map +1 -1
  812. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/NonDatabaseBuildingPopover.d.ts.map +1 -1
  813. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/NonDatabaseBuildingPopover.js +23 -55
  814. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/NonDatabaseBuildingPopover.js.map +1 -1
  815. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/OpenDataFeaturePopover.d.ts.map +1 -1
  816. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/OpenDataFeaturePopover.js +4 -4
  817. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/OpenDataFeaturePopover.js.map +1 -1
  818. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/PopoverSkeleton.d.ts.map +1 -1
  819. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/PopoverSkeleton.js +2 -2
  820. package/dist/core/components/viewers/map/src/MapFeaturePopoverMenu/src/PopoverSkeleton.js.map +1 -1
  821. package/dist/core/components/viewers/map/src/MapLayers/index.d.ts.map +1 -1
  822. package/dist/core/components/viewers/map/src/MapLayers/index.js +5 -5
  823. package/dist/core/components/viewers/map/src/MapLayers/index.js.map +1 -1
  824. package/dist/core/components/viewers/map/src/MapLayers/src/BimLayer/index.d.ts.map +1 -1
  825. package/dist/core/components/viewers/map/src/MapLayers/src/BimLayer/index.js +5 -5
  826. package/dist/core/components/viewers/map/src/MapLayers/src/BimLayer/index.js.map +1 -1
  827. package/dist/core/components/viewers/map/src/MapLayers/src/BuildingLayers/index.d.ts.map +1 -1
  828. package/dist/core/components/viewers/map/src/MapLayers/src/BuildingLayers/index.js +4 -4
  829. package/dist/core/components/viewers/map/src/MapLayers/src/BuildingLayers/index.js.map +1 -1
  830. package/dist/core/components/viewers/map/src/MapLayers/src/BuildingLayers/src/databaseBuildings.d.ts +1 -1
  831. package/dist/core/components/viewers/map/src/MapLayers/src/BuildingLayers/src/databaseBuildings.d.ts.map +1 -1
  832. package/dist/core/components/viewers/map/src/MapLayers/src/BuildingLayers/src/databaseBuildings.js.map +1 -1
  833. package/dist/core/components/viewers/map/src/MapLayers/src/CommentLayer/index.d.ts.map +1 -1
  834. package/dist/core/components/viewers/map/src/MapLayers/src/CommentLayer/index.js +9 -9
  835. package/dist/core/components/viewers/map/src/MapLayers/src/CommentLayer/index.js.map +1 -1
  836. package/dist/core/components/viewers/map/src/MapLayers/src/CountryLayer/index.d.ts.map +1 -1
  837. package/dist/core/components/viewers/map/src/MapLayers/src/CountryLayer/index.js +1 -1
  838. package/dist/core/components/viewers/map/src/MapLayers/src/CountryLayer/index.js.map +1 -1
  839. package/dist/core/components/viewers/map/src/MapLayers/src/EditPosition.d.ts.map +1 -1
  840. package/dist/core/components/viewers/map/src/MapLayers/src/EditPosition.js +3 -3
  841. package/dist/core/components/viewers/map/src/MapLayers/src/EditPosition.js.map +1 -1
  842. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/FileModelLayer/FileModelLayer.d.ts +1 -1
  843. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/FileModelLayer/FileModelLayer.d.ts.map +1 -1
  844. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/FileModelLayer/FileModelLayer.js +1 -1
  845. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/FileModelLayer/FileModelLayer.js.map +1 -1
  846. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/FileIcon.d.ts.map +1 -1
  847. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/FileIcon.js.map +1 -1
  848. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/FileManagerRow.d.ts +1 -1
  849. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/FileManagerRow.d.ts.map +1 -1
  850. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/FileManagerRow.js +3 -3
  851. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/FileManagerRow.js.map +1 -1
  852. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/MapFileManager.d.ts.map +1 -1
  853. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/MapFileManager.js +2 -2
  854. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/MapFileManager.js.map +1 -1
  855. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/MapFileMarker.d.ts.map +1 -1
  856. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/components/MapFileMarker.js.map +1 -1
  857. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/index.d.ts.map +1 -1
  858. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/index.js +6 -6
  859. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/index.js.map +1 -1
  860. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/utils/CustomModelLayer.d.ts +1 -1
  861. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/utils/CustomModelLayer.d.ts.map +1 -1
  862. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/utils/CustomModelLayer.js.map +1 -1
  863. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/utils/openFileInPopUpWindow.d.ts +1 -1
  864. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/utils/openFileInPopUpWindow.d.ts.map +1 -1
  865. package/dist/core/components/viewers/map/src/MapLayers/src/FileLayer/utils/openFileInPopUpWindow.js.map +1 -1
  866. package/dist/core/components/viewers/map/src/MapLayers/src/OpenDataLayer/src/WmsTimeControl.d.ts.map +1 -1
  867. package/dist/core/components/viewers/map/src/MapLayers/src/OpenDataLayer/src/WmsTimeControl.js.map +1 -1
  868. package/dist/core/components/viewers/map/src/MapLayers/src/OpenDataLayer/src/index.d.ts.map +1 -1
  869. package/dist/core/components/viewers/map/src/MapLayers/src/OpenDataLayer/src/index.js +3 -3
  870. package/dist/core/components/viewers/map/src/MapLayers/src/OpenDataLayer/src/index.js.map +1 -1
  871. package/dist/core/components/viewers/map/src/MapLayers/src/PlaceOnMap.d.ts.map +1 -1
  872. package/dist/core/components/viewers/map/src/MapLayers/src/PlaceOnMap.js +3 -3
  873. package/dist/core/components/viewers/map/src/MapLayers/src/PlaceOnMap.js.map +1 -1
  874. package/dist/core/components/viewers/map/src/MapLayers/src/SensorsLayer/index.d.ts.map +1 -1
  875. package/dist/core/components/viewers/map/src/MapLayers/src/SensorsLayer/index.js +11 -11
  876. package/dist/core/components/viewers/map/src/MapLayers/src/SensorsLayer/index.js.map +1 -1
  877. package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/SiteContextMenu.d.ts.map +1 -1
  878. package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/SiteContextMenu.js +2 -2
  879. package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/SiteContextMenu.js.map +1 -1
  880. package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/SiteLayer.d.ts.map +1 -1
  881. package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/SiteLayer.js +4 -4
  882. package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/SiteLayer.js.map +1 -1
  883. package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/index.d.ts +1 -1
  884. package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/index.d.ts.map +1 -1
  885. package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/index.js.map +1 -1
  886. package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/siteGeometry.d.ts.map +1 -1
  887. package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/siteGeometry.js.map +1 -1
  888. package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/useShowSitesOnMap.d.ts.map +1 -1
  889. package/dist/core/components/viewers/map/src/MapLayers/src/SiteLayer/useShowSitesOnMap.js.map +1 -1
  890. package/dist/core/components/viewers/map/src/MapSidebar/TabSelector.d.ts +1 -1
  891. package/dist/core/components/viewers/map/src/MapSidebar/TabSelector.d.ts.map +1 -1
  892. package/dist/core/components/viewers/map/src/MapSidebar/TabSelector.js +1 -1
  893. package/dist/core/components/viewers/map/src/MapSidebar/TabSelector.js.map +1 -1
  894. package/dist/core/components/viewers/map/src/MapSidebar/index.d.ts +1 -1
  895. package/dist/core/components/viewers/map/src/MapSidebar/index.d.ts.map +1 -1
  896. package/dist/core/components/viewers/map/src/MapSidebar/index.js +4 -4
  897. package/dist/core/components/viewers/map/src/MapSidebar/index.js.map +1 -1
  898. package/dist/core/components/viewers/map/src/MapSidebar/src/CommunicationTab/index.d.ts +1 -1
  899. package/dist/core/components/viewers/map/src/MapSidebar/src/CommunicationTab/index.d.ts.map +1 -1
  900. package/dist/core/components/viewers/map/src/MapSidebar/src/CommunicationTab/index.js.map +1 -1
  901. package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/index.d.ts.map +1 -1
  902. package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/index.js +2 -2
  903. package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/index.js.map +1 -1
  904. package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/src/FilesSection.d.ts +1 -1
  905. package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/src/FilesSection.d.ts.map +1 -1
  906. package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/src/FilesSection.js +5 -5
  907. package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/src/FilesSection.js.map +1 -1
  908. package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/src/ModelsSection.d.ts.map +1 -1
  909. package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/src/ModelsSection.js +5 -5
  910. package/dist/core/components/viewers/map/src/MapSidebar/src/FileTab/src/ModelsSection.js.map +1 -1
  911. package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/index.d.ts +1 -1
  912. package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/index.d.ts.map +1 -1
  913. package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/index.js +4 -4
  914. package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/index.js.map +1 -1
  915. package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/src/AppliedDatasetsSection.d.ts.map +1 -1
  916. package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/src/AppliedDatasetsSection.js +4 -4
  917. package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/src/AppliedDatasetsSection.js.map +1 -1
  918. package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/src/AvailableDatasetsSection.d.ts.map +1 -1
  919. package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/src/AvailableDatasetsSection.js +2 -2
  920. package/dist/core/components/viewers/map/src/MapSidebar/src/LayersTab/src/AvailableDatasetsSection.js.map +1 -1
  921. package/dist/core/components/viewers/map/src/MapSidebar/src/SensorsTab/index.d.ts +1 -1
  922. package/dist/core/components/viewers/map/src/MapSidebar/src/SensorsTab/index.d.ts.map +1 -1
  923. package/dist/core/components/viewers/map/src/MapSidebar/src/SensorsTab/index.js.map +1 -1
  924. package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/index.d.ts.map +1 -1
  925. package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/index.js.map +1 -1
  926. package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/LocationSettings.d.ts.map +1 -1
  927. package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/LocationSettings.js +3 -3
  928. package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/LocationSettings.js.map +1 -1
  929. package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/MapCustomization.d.ts.map +1 -1
  930. package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/MapCustomization.js +3 -3
  931. package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/MapCustomization.js.map +1 -1
  932. package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/MapProjection.d.ts.map +1 -1
  933. package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/MapProjection.js +3 -3
  934. package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/MapProjection.js.map +1 -1
  935. package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/TerrainLevel.d.ts.map +1 -1
  936. package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/TerrainLevel.js +3 -3
  937. package/dist/core/components/viewers/map/src/MapSidebar/src/SettingsTab/src/TerrainLevel.js.map +1 -1
  938. package/dist/core/components/viewers/map/src/SimpleMap.d.ts.map +1 -1
  939. package/dist/core/components/viewers/map/src/SimpleMap.js +1 -1
  940. package/dist/core/components/viewers/map/src/SimpleMap.js.map +1 -1
  941. package/dist/core/components/viewers/map/src/compare/AddItem.d.ts +1 -1
  942. package/dist/core/components/viewers/map/src/compare/AddItem.d.ts.map +1 -1
  943. package/dist/core/components/viewers/map/src/compare/AddItem.js +6 -6
  944. package/dist/core/components/viewers/map/src/compare/AddItem.js.map +1 -1
  945. package/dist/core/components/viewers/map/src/compare/CompareDialog.d.ts +2 -2
  946. package/dist/core/components/viewers/map/src/compare/CompareDialog.d.ts.map +1 -1
  947. package/dist/core/components/viewers/map/src/compare/CompareDialog.js +5 -5
  948. package/dist/core/components/viewers/map/src/compare/CompareDialog.js.map +1 -1
  949. package/dist/core/components/viewers/map/src/compare/index.d.ts +1 -1
  950. package/dist/core/components/viewers/map/src/compare/index.d.ts.map +1 -1
  951. package/dist/core/components/viewers/map/src/compare/index.js +6 -6
  952. package/dist/core/components/viewers/map/src/compare/index.js.map +1 -1
  953. package/dist/core/components/viewers/map/src/tools/AddTools/AddDataset/DatasetAdder.d.ts.map +1 -1
  954. package/dist/core/components/viewers/map/src/tools/AddTools/AddDataset/DatasetAdder.js +3 -3
  955. package/dist/core/components/viewers/map/src/tools/AddTools/AddDataset/DatasetAdder.js.map +1 -1
  956. package/dist/core/components/viewers/map/src/tools/AddTools/AddFile/FileAdder.d.ts.map +1 -1
  957. package/dist/core/components/viewers/map/src/tools/AddTools/AddFile/FileAdder.js +5 -5
  958. package/dist/core/components/viewers/map/src/tools/AddTools/AddFile/FileAdder.js.map +1 -1
  959. package/dist/core/components/viewers/map/src/tools/AddTools/AddSite/AssociateBuildingsDialog.d.ts.map +1 -1
  960. package/dist/core/components/viewers/map/src/tools/AddTools/AddSite/AssociateBuildingsDialog.js +3 -3
  961. package/dist/core/components/viewers/map/src/tools/AddTools/AddSite/AssociateBuildingsDialog.js.map +1 -1
  962. package/dist/core/components/viewers/map/src/tools/AddTools/AddSite/SiteAdder.d.ts.map +1 -1
  963. package/dist/core/components/viewers/map/src/tools/AddTools/AddSite/SiteAdder.js +7 -7
  964. package/dist/core/components/viewers/map/src/tools/AddTools/AddSite/SiteAdder.js.map +1 -1
  965. package/dist/core/components/viewers/map/src/tools/AddTools/AddSite/persistSite.d.ts.map +1 -1
  966. package/dist/core/components/viewers/map/src/tools/AddTools/AddSite/persistSite.js +1 -1
  967. package/dist/core/components/viewers/map/src/tools/AddTools/AddSite/persistSite.js.map +1 -1
  968. package/dist/core/components/viewers/map/src/tools/AddTools/AddToMap.d.ts +2 -2
  969. package/dist/core/components/viewers/map/src/tools/AddTools/AddToMap.d.ts.map +1 -1
  970. package/dist/core/components/viewers/map/src/tools/AddTools/AddToMap.js +8 -8
  971. package/dist/core/components/viewers/map/src/tools/AddTools/AddToMap.js.map +1 -1
  972. package/dist/core/components/viewers/map/src/tools/DatasetMapTool.d.ts +2 -2
  973. package/dist/core/components/viewers/map/src/tools/DatasetMapTool.d.ts.map +1 -1
  974. package/dist/core/components/viewers/map/src/tools/DatasetMapTool.js +1 -1
  975. package/dist/core/components/viewers/map/src/tools/DatasetMapTool.js.map +1 -1
  976. package/dist/core/components/viewers/map/src/tools/mapTools.d.ts +2 -2
  977. package/dist/core/components/viewers/map/src/tools/mapTools.d.ts.map +1 -1
  978. package/dist/core/components/viewers/map/src/tools/mapTools.js +4 -4
  979. package/dist/core/components/viewers/map/src/tools/mapTools.js.map +1 -1
  980. package/dist/core/components/viewers/map/src/tools/measureMapTool.d.ts +1 -1
  981. package/dist/core/components/viewers/map/src/tools/measureMapTool.d.ts.map +1 -1
  982. package/dist/core/components/viewers/map/src/tools/measureMapTool.js +3 -3
  983. package/dist/core/components/viewers/map/src/tools/measureMapTool.js.map +1 -1
  984. package/dist/core/components/viewers/map/src/tools/shareMapTool.d.ts +1 -1
  985. package/dist/core/components/viewers/map/src/tools/shareMapTool.d.ts.map +1 -1
  986. package/dist/core/components/viewers/map/src/tools/shareMapTool.js.map +1 -1
  987. package/dist/core/components/viewers/map/utils/ClusterManager.d.ts +1 -1
  988. package/dist/core/components/viewers/map/utils/ClusterManager.d.ts.map +1 -1
  989. package/dist/core/components/viewers/map/utils/ClusterManager.js.map +1 -1
  990. package/dist/core/components/viewers/map/utils/MarkerManager.d.ts +1 -1
  991. package/dist/core/components/viewers/map/utils/MarkerManager.d.ts.map +1 -1
  992. package/dist/core/components/viewers/map/utils/MarkerManager.js.map +1 -1
  993. package/dist/core/components/viewers/map/utils/extractCoordinates.js.map +1 -1
  994. package/dist/core/components/viewers/map/utils/fitBuildingsBounds.d.ts +1 -1
  995. package/dist/core/components/viewers/map/utils/fitBuildingsBounds.d.ts.map +1 -1
  996. package/dist/core/components/viewers/map/utils/fitBuildingsBounds.js.map +1 -1
  997. package/dist/core/components/viewers/map/utils/flyToEach.d.ts +1 -1
  998. package/dist/core/components/viewers/map/utils/flyToEach.d.ts.map +1 -1
  999. package/dist/core/components/viewers/map/utils/flyToEach.js.map +1 -1
  1000. package/dist/core/components/viewers/map/utils/geocoder.d.ts +1 -1
  1001. package/dist/core/components/viewers/map/utils/geocoder.d.ts.map +1 -1
  1002. package/dist/core/components/viewers/map/utils/geocoder.js +1 -1
  1003. package/dist/core/components/viewers/map/utils/geocoder.js.map +1 -1
  1004. package/dist/core/components/viewers/map/utils/geocoding/adapters.d.ts +1 -1
  1005. package/dist/core/components/viewers/map/utils/geocoding/adapters.d.ts.map +1 -1
  1006. package/dist/core/components/viewers/map/utils/geocoding/adapters.js.map +1 -1
  1007. package/dist/core/components/viewers/map/utils/geocoding/index.d.ts +1 -1
  1008. package/dist/core/components/viewers/map/utils/geocoding/index.d.ts.map +1 -1
  1009. package/dist/core/components/viewers/map/utils/geocoding/index.js +1 -1
  1010. package/dist/core/components/viewers/map/utils/geocoding/index.js.map +1 -1
  1011. package/dist/core/components/viewers/map/utils/geocoding/osm.d.ts +1 -1
  1012. package/dist/core/components/viewers/map/utils/geocoding/osm.d.ts.map +1 -1
  1013. package/dist/core/components/viewers/map/utils/geocoding/osm.js +1 -1
  1014. package/dist/core/components/viewers/map/utils/geocoding/osm.js.map +1 -1
  1015. package/dist/core/components/viewers/map/utils/geocoding/pelias.d.ts +1 -1
  1016. package/dist/core/components/viewers/map/utils/geocoding/pelias.d.ts.map +1 -1
  1017. package/dist/core/components/viewers/map/utils/geocoding/pelias.js.map +1 -1
  1018. package/dist/core/components/viewers/map/utils/getOsmIdFromMartin.d.ts +1 -1
  1019. package/dist/core/components/viewers/map/utils/getOsmIdFromMartin.d.ts.map +1 -1
  1020. package/dist/core/components/viewers/map/utils/getOsmIdFromMartin.js.map +1 -1
  1021. package/dist/core/components/viewers/pointcloud/PointCloudToolbar.d.ts.map +1 -1
  1022. package/dist/core/components/viewers/pointcloud/PointCloudToolbar.js +1 -1
  1023. package/dist/core/components/viewers/pointcloud/PointCloudToolbar.js.map +1 -1
  1024. package/dist/core/components/viewers/pointcloud/PointCloudViewer.d.ts.map +1 -1
  1025. package/dist/core/components/viewers/pointcloud/PointCloudViewer.js +5 -5
  1026. package/dist/core/components/viewers/pointcloud/PointCloudViewer.js.map +1 -1
  1027. package/dist/core/components/viewers/pointcloud/src/PointCloudLoadingState/index.d.ts.map +1 -1
  1028. package/dist/core/components/viewers/pointcloud/src/PointCloudLoadingState/index.js +7 -7
  1029. package/dist/core/components/viewers/pointcloud/src/PointCloudLoadingState/index.js.map +1 -1
  1030. package/dist/core/components/viewers/pointcloud/src/PointCloudManagement/PointCloudManagementTable.d.ts.map +1 -1
  1031. package/dist/core/components/viewers/pointcloud/src/PointCloudManagement/PointCloudManagementTable.js.map +1 -1
  1032. package/dist/core/components/viewers/pointcloud/src/PointCloudManagement/PointCloudTable.d.ts.map +1 -1
  1033. package/dist/core/components/viewers/pointcloud/src/PointCloudManagement/PointCloudTable.js +15 -15
  1034. package/dist/core/components/viewers/pointcloud/src/PointCloudManagement/PointCloudTable.js.map +1 -1
  1035. package/dist/core/components/viewers/pointcloud/src/PointCloudManagement/PointCloudUploadPanel.d.ts.map +1 -1
  1036. package/dist/core/components/viewers/pointcloud/src/PointCloudManagement/PointCloudUploadPanel.js +3 -3
  1037. package/dist/core/components/viewers/pointcloud/src/PointCloudManagement/PointCloudUploadPanel.js.map +1 -1
  1038. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/TabSelector.d.ts +1 -1
  1039. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/TabSelector.d.ts.map +1 -1
  1040. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/TabSelector.js +1 -1
  1041. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/TabSelector.js.map +1 -1
  1042. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/index.d.ts.map +1 -1
  1043. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/index.js +2 -2
  1044. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/index.js.map +1 -1
  1045. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/index.d.ts.map +1 -1
  1046. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/index.js +3 -3
  1047. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/index.js.map +1 -1
  1048. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/src/FilesSection.d.ts +1 -1
  1049. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/src/FilesSection.d.ts.map +1 -1
  1050. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/src/FilesSection.js +4 -4
  1051. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/src/FilesSection.js.map +1 -1
  1052. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/src/PointCloudSection.d.ts +1 -1
  1053. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/src/PointCloudSection.d.ts.map +1 -1
  1054. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/src/PointCloudSection.js +5 -5
  1055. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/FileTab/src/PointCloudSection.js.map +1 -1
  1056. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/index.d.ts.map +1 -1
  1057. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/index.js +1 -1
  1058. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/index.js.map +1 -1
  1059. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/src/CameraSettings.d.ts.map +1 -1
  1060. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/src/CameraSettings.js +3 -3
  1061. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/src/CameraSettings.js.map +1 -1
  1062. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/src/GridManagement.d.ts.map +1 -1
  1063. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/src/GridManagement.js +4 -4
  1064. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/src/GridManagement.js.map +1 -1
  1065. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/src/PerformanceSettings.d.ts.map +1 -1
  1066. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/src/PerformanceSettings.js +10 -10
  1067. package/dist/core/components/viewers/pointcloud/src/PointCloudSidebar/src/SettingsTab/src/PerformanceSettings.js.map +1 -1
  1068. package/dist/core/components/viewers/pointcloud/src/ViewportGizmo.js.map +1 -1
  1069. package/dist/core/components/viewers/pointcloud/src/tools/ClippingTools/ClippingTool.d.ts +1 -1
  1070. package/dist/core/components/viewers/pointcloud/src/tools/ClippingTools/ClippingTool.d.ts.map +1 -1
  1071. package/dist/core/components/viewers/pointcloud/src/tools/ClippingTools/ClippingTool.js +3 -3
  1072. package/dist/core/components/viewers/pointcloud/src/tools/ClippingTools/ClippingTool.js.map +1 -1
  1073. package/dist/core/components/viewers/pointcloud/src/tools/FitToScreen.d.ts.map +1 -1
  1074. package/dist/core/components/viewers/pointcloud/src/tools/FitToScreen.js.map +1 -1
  1075. package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/AngleMeasurement.d.ts.map +1 -1
  1076. package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/AngleMeasurement.js.map +1 -1
  1077. package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/AreaMeasurement.d.ts.map +1 -1
  1078. package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/AreaMeasurement.js.map +1 -1
  1079. package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/LineMeasurement.d.ts.map +1 -1
  1080. package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/LineMeasurement.js.map +1 -1
  1081. package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/MeasurePointCloudTool.d.ts +1 -1
  1082. package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/MeasurePointCloudTool.d.ts.map +1 -1
  1083. package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/MeasurePointCloudTool.js +6 -6
  1084. package/dist/core/components/viewers/pointcloud/src/tools/MeasureTools/MeasurePointCloudTool.js.map +1 -1
  1085. package/dist/core/components/viewers/pointcloud/src/tools/PCSearchTool.d.ts.map +1 -1
  1086. package/dist/core/components/viewers/pointcloud/src/tools/PCSearchTool.js +2 -2
  1087. package/dist/core/components/viewers/pointcloud/src/tools/PCSearchTool.js.map +1 -1
  1088. package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/NodeSizeSelectionTool.d.ts.map +1 -1
  1089. package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/NodeSizeSelectionTool.js +2 -2
  1090. package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/NodeSizeSelectionTool.js.map +1 -1
  1091. package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/PerformanceSettingTools.d.ts.map +1 -1
  1092. package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/PerformanceSettingTools.js +3 -3
  1093. package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/PerformanceSettingTools.js.map +1 -1
  1094. package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/PointBudgetTool.d.ts.map +1 -1
  1095. package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/PointBudgetTool.js +1 -1
  1096. package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/PointBudgetTool.js.map +1 -1
  1097. package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/ShowOctreeBoxTool.d.ts.map +1 -1
  1098. package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/ShowOctreeBoxTool.js +1 -1
  1099. package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/ShowOctreeBoxTool.js.map +1 -1
  1100. package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/SplatQualitySelection.d.ts.map +1 -1
  1101. package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/SplatQualitySelection.js +1 -1
  1102. package/dist/core/components/viewers/pointcloud/src/tools/PerformanceSettingsTools/SplatQualitySelection.js.map +1 -1
  1103. package/dist/core/components/viewers/pointcloud/src/tools/SetCameraOption.d.ts.map +1 -1
  1104. package/dist/core/components/viewers/pointcloud/src/tools/SetCameraOption.js +4 -4
  1105. package/dist/core/components/viewers/pointcloud/src/tools/SetCameraOption.js.map +1 -1
  1106. package/dist/core/components/viewers/pointcloud/src/tools/SharePointCloudTool/index.d.ts +1 -1
  1107. package/dist/core/components/viewers/pointcloud/src/tools/SharePointCloudTool/index.d.ts.map +1 -1
  1108. package/dist/core/components/viewers/pointcloud/src/tools/SharePointCloudTool/index.js +1 -1
  1109. package/dist/core/components/viewers/pointcloud/src/tools/SharePointCloudTool/index.js.map +1 -1
  1110. package/dist/core/components/viewers/pointcloud/src/tools/pointcloudToolbarTools.d.ts +1 -1
  1111. package/dist/core/components/viewers/pointcloud/src/tools/pointcloudToolbarTools.d.ts.map +1 -1
  1112. package/dist/core/components/viewers/pointcloud/src/tools/pointcloudToolbarTools.js +2 -2
  1113. package/dist/core/components/viewers/pointcloud/src/tools/pointcloudToolbarTools.js.map +1 -1
  1114. package/dist/core/components/viewers/pointcloud/utils/restoreCameraFromUrl.d.ts +1 -1
  1115. package/dist/core/components/viewers/pointcloud/utils/restoreCameraFromUrl.d.ts.map +1 -1
  1116. package/dist/core/components/viewers/pointcloud/utils/restoreCameraFromUrl.js.map +1 -1
  1117. package/dist/core/hooks/buildings/createBuildingHooks.d.ts +1 -1
  1118. package/dist/core/hooks/buildings/createBuildingHooks.d.ts.map +1 -1
  1119. package/dist/core/hooks/buildings/createBuildingHooks.js.map +1 -1
  1120. package/dist/core/hooks/comments/createCommentHooks.d.ts +1 -1
  1121. package/dist/core/hooks/comments/createCommentHooks.d.ts.map +1 -1
  1122. package/dist/core/hooks/comments/createCommentHooks.js +1 -1
  1123. package/dist/core/hooks/comments/createCommentHooks.js.map +1 -1
  1124. package/dist/core/hooks/files/createFileHooks.d.ts +1 -1
  1125. package/dist/core/hooks/files/createFileHooks.d.ts.map +1 -1
  1126. package/dist/core/hooks/files/createFileHooks.js.map +1 -1
  1127. package/dist/core/hooks/files/files.d.ts.map +1 -1
  1128. package/dist/core/hooks/files/files.js +1 -1
  1129. package/dist/core/hooks/files/files.js.map +1 -1
  1130. package/dist/core/hooks/infrastructures/createInfrastructureHooks.d.ts +1 -1
  1131. package/dist/core/hooks/infrastructures/createInfrastructureHooks.d.ts.map +1 -1
  1132. package/dist/core/hooks/infrastructures/createInfrastructureHooks.js.map +1 -1
  1133. package/dist/core/hooks/openDataPortals/createOpenDataPortalHooks.d.ts +1 -1
  1134. package/dist/core/hooks/openDataPortals/createOpenDataPortalHooks.d.ts.map +1 -1
  1135. package/dist/core/hooks/openDataPortals/createOpenDataPortalHooks.js.map +1 -1
  1136. package/dist/core/hooks/organizations/createOrganizationHooks.d.ts +1 -1
  1137. package/dist/core/hooks/organizations/createOrganizationHooks.d.ts.map +1 -1
  1138. package/dist/core/hooks/organizations/createOrganizationHooks.js.map +1 -1
  1139. package/dist/core/hooks/provider.d.ts +5 -5
  1140. package/dist/core/hooks/provider.d.ts.map +1 -1
  1141. package/dist/core/hooks/provider.js +4 -4
  1142. package/dist/core/hooks/provider.js.map +1 -1
  1143. package/dist/core/hooks/sensorTypes/createSensorTypeHooks.d.ts +1 -1
  1144. package/dist/core/hooks/sensorTypes/createSensorTypeHooks.d.ts.map +1 -1
  1145. package/dist/core/hooks/sensorTypes/createSensorTypeHooks.js.map +1 -1
  1146. package/dist/core/hooks/sensors/createSensorHooks.d.ts +1 -1
  1147. package/dist/core/hooks/sensors/createSensorHooks.d.ts.map +1 -1
  1148. package/dist/core/hooks/sensors/createSensorHooks.js +1 -1
  1149. package/dist/core/hooks/sensors/createSensorHooks.js.map +1 -1
  1150. package/dist/core/hooks/sites/createSiteHooks.d.ts +1 -1
  1151. package/dist/core/hooks/sites/createSiteHooks.d.ts.map +1 -1
  1152. package/dist/core/hooks/sites/createSiteHooks.js.map +1 -1
  1153. package/dist/core/hooks/sites/sites.d.ts.map +1 -1
  1154. package/dist/core/hooks/useCaptureScreenshot.d.ts.map +1 -1
  1155. package/dist/core/hooks/useCaptureScreenshot.js.map +1 -1
  1156. package/dist/core/hooks/useCurrentViewerPosition.d.ts.map +1 -1
  1157. package/dist/core/hooks/useCurrentViewerPosition.js +1 -1
  1158. package/dist/core/hooks/useCurrentViewerPosition.js.map +1 -1
  1159. package/dist/core/hooks/useGeocodingRuntimeConfig.d.ts +1 -1
  1160. package/dist/core/hooks/useGeocodingRuntimeConfig.d.ts.map +1 -1
  1161. package/dist/core/hooks/useGeocodingRuntimeConfig.js.map +1 -1
  1162. package/dist/core/hooks/useShareUrl.d.ts.map +1 -1
  1163. package/dist/core/hooks/useShareUrl.js +1 -1
  1164. package/dist/core/hooks/useShareUrl.js.map +1 -1
  1165. package/dist/core/hooks/users/createUserHooks.d.ts +1 -1
  1166. package/dist/core/hooks/users/createUserHooks.d.ts.map +1 -1
  1167. package/dist/core/hooks/users/createUserHooks.js.map +1 -1
  1168. package/dist/core/i18n/index.js +1 -1
  1169. package/dist/core/i18n/index.js.map +1 -1
  1170. package/dist/core/i18n/messages/en.json +1872 -1872
  1171. package/dist/core/i18n/messages/es.json +1870 -1870
  1172. package/dist/core/i18n/messages/fr.json +1870 -1870
  1173. package/dist/core/plugins/host/context.d.ts +1 -1
  1174. package/dist/core/plugins/host/context.d.ts.map +1 -1
  1175. package/dist/core/plugins/host/context.js.map +1 -1
  1176. package/dist/core/plugins/host/host.d.ts +1 -1
  1177. package/dist/core/plugins/host/host.d.ts.map +1 -1
  1178. package/dist/core/plugins/host/host.js.map +1 -1
  1179. package/dist/core/plugins/host/provider.d.ts.map +1 -1
  1180. package/dist/core/plugins/host/provider.js +2 -2
  1181. package/dist/core/plugins/host/provider.js.map +1 -1
  1182. package/dist/core/store/AppConfig/context.d.ts +1 -1
  1183. package/dist/core/store/AppConfig/context.d.ts.map +1 -1
  1184. package/dist/core/store/AppConfig/context.js.map +1 -1
  1185. package/dist/core/store/AppConfig/reducer.d.ts +2 -2
  1186. package/dist/core/store/AppConfig/reducer.d.ts.map +1 -1
  1187. package/dist/core/store/AppConfig/reducer.js.map +1 -1
  1188. package/dist/core/store/BIM/context.d.ts +1 -1
  1189. package/dist/core/store/BIM/context.d.ts.map +1 -1
  1190. package/dist/core/store/BIM/context.js.map +1 -1
  1191. package/dist/core/store/BIM/reducer.d.ts +3 -3
  1192. package/dist/core/store/BIM/reducer.d.ts.map +1 -1
  1193. package/dist/core/store/BIM/reducer.js.map +1 -1
  1194. package/dist/core/store/Buildings/context.d.ts +1 -1
  1195. package/dist/core/store/Buildings/context.d.ts.map +1 -1
  1196. package/dist/core/store/Buildings/context.js.map +1 -1
  1197. package/dist/core/store/Buildings/reducer.d.ts +2 -2
  1198. package/dist/core/store/Buildings/reducer.d.ts.map +1 -1
  1199. package/dist/core/store/Buildings/reducer.js.map +1 -1
  1200. package/dist/core/store/CombineProviders.d.ts.map +1 -1
  1201. package/dist/core/store/CombineProviders.js +7 -7
  1202. package/dist/core/store/CombineProviders.js.map +1 -1
  1203. package/dist/core/store/Content/context.d.ts +1 -1
  1204. package/dist/core/store/Content/context.d.ts.map +1 -1
  1205. package/dist/core/store/Content/context.js.map +1 -1
  1206. package/dist/core/store/Datasets/context.d.ts +1 -1
  1207. package/dist/core/store/Datasets/context.d.ts.map +1 -1
  1208. package/dist/core/store/Datasets/context.js.map +1 -1
  1209. package/dist/core/store/Datasets/reducer.d.ts +1 -1
  1210. package/dist/core/store/Datasets/reducer.d.ts.map +1 -1
  1211. package/dist/core/store/Datasets/reducer.js.map +1 -1
  1212. package/dist/core/store/Files/context.d.ts +1 -1
  1213. package/dist/core/store/Files/context.d.ts.map +1 -1
  1214. package/dist/core/store/Files/context.js.map +1 -1
  1215. package/dist/core/store/Files/reducer.d.ts +3 -3
  1216. package/dist/core/store/Files/reducer.d.ts.map +1 -1
  1217. package/dist/core/store/Files/reducer.js.map +1 -1
  1218. package/dist/core/store/Map/context.d.ts +1 -1
  1219. package/dist/core/store/Map/context.d.ts.map +1 -1
  1220. package/dist/core/store/Map/context.js +1 -1
  1221. package/dist/core/store/Map/context.js.map +1 -1
  1222. package/dist/core/store/Map/reducer.d.ts +6 -5
  1223. package/dist/core/store/Map/reducer.d.ts.map +1 -1
  1224. package/dist/core/store/Map/reducer.js.map +1 -1
  1225. package/dist/core/store/MapSites/context.d.ts +1 -1
  1226. package/dist/core/store/MapSites/context.d.ts.map +1 -1
  1227. package/dist/core/store/MapSites/context.js.map +1 -1
  1228. package/dist/core/store/MapSites/reducer.d.ts +1 -1
  1229. package/dist/core/store/MapSites/reducer.d.ts.map +1 -1
  1230. package/dist/core/store/MapSites/reducer.js.map +1 -1
  1231. package/dist/core/store/Menus/context.d.ts +1 -1
  1232. package/dist/core/store/Menus/context.d.ts.map +1 -1
  1233. package/dist/core/store/Menus/context.js +2 -2
  1234. package/dist/core/store/Menus/context.js.map +1 -1
  1235. package/dist/core/store/Menus/reducer.d.ts +1 -1
  1236. package/dist/core/store/Menus/reducer.d.ts.map +1 -1
  1237. package/dist/core/store/Menus/reducer.js.map +1 -1
  1238. package/dist/core/store/Permissions/context.d.ts +1 -1
  1239. package/dist/core/store/Permissions/context.d.ts.map +1 -1
  1240. package/dist/core/store/Permissions/context.js +2 -2
  1241. package/dist/core/store/Permissions/context.js.map +1 -1
  1242. package/dist/core/store/PointCloud/context.d.ts +1 -1
  1243. package/dist/core/store/PointCloud/context.d.ts.map +1 -1
  1244. package/dist/core/store/PointCloud/context.js.map +1 -1
  1245. package/dist/core/store/PointCloud/reducer.d.ts +1 -1
  1246. package/dist/core/store/PointCloud/reducer.d.ts.map +1 -1
  1247. package/dist/core/store/PointCloud/reducer.js.map +1 -1
  1248. package/dist/core/store/Tools/context.d.ts +1 -1
  1249. package/dist/core/store/Tools/context.d.ts.map +1 -1
  1250. package/dist/core/store/Tools/context.js.map +1 -1
  1251. package/dist/core/store/Tools/reducer.d.ts +1 -1
  1252. package/dist/core/store/Tools/reducer.d.ts.map +1 -1
  1253. package/dist/core/store/Tools/reducer.js.map +1 -1
  1254. package/dist/core/styles/globals.css +17 -16
  1255. package/dist/core/styles/tailwindMerge.d.ts +1 -1
  1256. package/dist/core/styles/tailwindMerge.d.ts.map +1 -1
  1257. package/dist/core/styles/tailwindMerge.js.map +1 -1
  1258. package/dist/core/types/datasetTypes.d.ts +2 -2
  1259. package/dist/core/types/datasetTypes.d.ts.map +1 -1
  1260. package/dist/core/types/dbTypes.d.ts +1 -1
  1261. package/dist/core/types/dbTypes.d.ts.map +1 -1
  1262. package/dist/core/types/dbTypes.js.map +1 -1
  1263. package/dist/core/types/files.d.ts +2 -2
  1264. package/dist/core/types/files.d.ts.map +1 -1
  1265. package/dist/core/types/global.d.ts +3 -3
  1266. package/dist/core/types/global.d.ts.map +1 -1
  1267. package/dist/core/types/global.js.map +1 -1
  1268. package/dist/core/types/map.d.ts +2 -2
  1269. package/dist/core/types/map.d.ts.map +1 -1
  1270. package/dist/core/types/tools.d.ts +3 -3
  1271. package/dist/core/types/tools.d.ts.map +1 -1
  1272. package/dist/core/types/users.d.ts +2 -2
  1273. package/dist/core/types/users.d.ts.map +1 -1
  1274. package/dist/core/utils/getFileIcon.d.ts +1 -1
  1275. package/dist/core/utils/getFileIcon.d.ts.map +1 -1
  1276. package/dist/core/utils/getFileIcon.js.map +1 -1
  1277. package/dist/core/utils/memcache.js.map +1 -1
  1278. package/dist/core/utils/roles.d.ts.map +1 -1
  1279. package/dist/core/utils/roles.js.map +1 -1
  1280. package/dist/core/utils/timeUtils.js.map +1 -1
  1281. package/dist/core/utils/utils.d.ts +1 -1
  1282. package/dist/core/utils/utils.d.ts.map +1 -1
  1283. package/dist/core/utils/utils.js.map +1 -1
  1284. package/package.json +5 -2
@@ -1,4 +1,4 @@
1
- import type { Dataset } from '../../../../../types/datasetTypes';
2
1
  import { type OpenDataPortal } from '../../../../../types/dbTypes';
2
+ import type { Dataset } from '../../../../../types/datasetTypes';
3
3
  export declare function fetchLocalDatasets(portal: OpenDataPortal): Promise<Dataset[]>;
4
4
  //# sourceMappingURL=localDatasets.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"localDatasets.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/components/viewers/map/datasets/src/localDatasets.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAgC,MAAM,mCAAmC,CAAA;AAE9F,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAkahF,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,OAAO,EAAE,CAAC,CA+LpB"}
1
+ {"version":3,"file":"localDatasets.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/components/viewers/map/datasets/src/localDatasets.ts"],"names":[],"mappings":"AAMA,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAOhF,OAAO,KAAK,EAAE,OAAO,EAAgC,MAAM,mCAAmC,CAAA;AA6Z9F,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,OAAO,EAAE,CAAC,CA+LpB"}
@@ -17,11 +17,11 @@ var __spreadValues = (a, b) => {
17
17
  return a;
18
18
  };
19
19
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
- import { formatName } from "../utils";
20
+ import { VectorTile } from "@mapbox/vector-tile";
21
+ import Pbf from "pbf";
21
22
  import { DatasetGroup } from "../../../../../types/dbTypes";
22
23
  import { layerColorByName } from "../../utils/stringToColour";
23
- import Pbf from "pbf";
24
- import { VectorTile } from "@mapbox/vector-tile";
24
+ import { formatName } from "../utils";
25
25
  import { getCache, setCache } from "./cache";
26
26
  import { isPublishedOrgTable, buildPublishedTileDatasets } from "./publishedTiles";
27
27
  const ORGANIZATION_FIELD = "organization";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/core/components/viewers/map/datasets/src/localDatasets.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport type { Dataset, FieldType, LayerGeometryType } from '../../../../../types/datasetTypes'\r\nimport { formatName } from '../utils'\r\nimport { DatasetGroup, type OpenDataPortal } from '../../../../../types/dbTypes'\r\nimport type { AllGeoJSON } from '@turf/turf'\r\nimport { layerColorByName } from '../../utils/stringToColour'\r\nimport Pbf from 'pbf'\r\nimport { VectorTile } from '@mapbox/vector-tile'\r\nimport { getCache, setCache } from './cache'\r\nimport { isPublishedOrgTable, buildPublishedTileDatasets, type PublishedFileRow } from './publishedTiles'\r\n\r\n\r\n// Define the structure of local dataset items\r\ninterface LocalDatasetItem {\r\n name: string\r\n organization: number\r\n featuresUrl: string\r\n tileName: string\r\n sourceLayer: string\r\n layer: {\r\n type: string\r\n properties: Record<string, string>\r\n }\r\n visible: boolean\r\n clickable: boolean\r\n url: string\r\n description: string\r\n publisher: string\r\n countrySubdivision?: string\r\n municipality?: string\r\n}\r\n\r\ninterface MartinCatalogTile {\r\n content_type: string\r\n description: string\r\n}\r\n\r\ninterface MartinCatalog {\r\n tiles: Record<string, MartinCatalogTile>\r\n}\r\n\r\ninterface MartinTileStatsAttribute {\r\n attribute: string\r\n values?: Array<string | number>\r\n min?: number | string\r\n max?: number | string\r\n}\r\n\r\ninterface MartinTileStatsLayer {\r\n layer: string\r\n attributes?: MartinTileStatsAttribute[]\r\n}\r\n\r\ninterface MartinTileStats {\r\n layers?: MartinTileStatsLayer[]\r\n}\r\n\r\ninterface MartinTileJson {\r\n id?: string\r\n name?: string\r\n description?: string\r\n tiles?: string[]\r\n vector_layers?: Array<{\r\n id: string\r\n description?: string\r\n minzoom?: number\r\n maxzoom?: number\r\n fields?: Record<string, string>\r\n }>\r\n tilestats?: MartinTileStats\r\n minzoom?: number\r\n maxzoom?: number\r\n}\r\n\r\ntype MartinIndexResponse =\r\n | MartinCatalog\r\n | MartinTileJson[]\r\n | { tiles: Record<string, MartinTileJson> }\r\n | { tilesets: MartinTileJson[] }\r\n\r\ninterface NormalizedMartinTile {\r\n tileName: string\r\n tileUrl: string\r\n description?: string\r\n vectorLayerId: string\r\n tilestats?: MartinTileStats\r\n minzoom?: number\r\n}\r\n\r\nconst ORGANIZATION_FIELD = 'organization'\r\n\r\nfunction normalizeMartinBaseUrl(apiUrl: string) {\r\n return apiUrl.replace(/\\/+$/, '')\r\n}\r\n\r\nfunction resolveMartinUrls(apiUrl: string) {\r\n const trimmed = normalizeMartinBaseUrl(apiUrl)\r\n\r\n if (trimmed.endsWith('/tiles/index.json')) {\r\n const tileBaseUrl = trimmed.replace(/\\/tiles\\/index\\.json$/, '')\r\n return {\r\n indexUrl: trimmed,\r\n tileBaseUrl,\r\n fallbackCatalogUrl: `${tileBaseUrl}/catalog`,\r\n }\r\n }\r\n\r\n if (trimmed.endsWith('/catalog')) {\r\n const tileBaseUrl = trimmed.replace(/\\/catalog$/, '')\r\n return {\r\n indexUrl: `${tileBaseUrl}/tiles/index.json`,\r\n tileBaseUrl,\r\n fallbackCatalogUrl: trimmed,\r\n }\r\n }\r\n\r\n return {\r\n indexUrl: `${trimmed}/tiles/index.json`,\r\n tileBaseUrl: trimmed,\r\n fallbackCatalogUrl: `${trimmed}/catalog`,\r\n }\r\n}\r\n\r\nfunction ensureAbsoluteTileUrl(tileUrl: string, tileBaseUrl: string) {\r\n if (/^https?:\\/\\//i.test(tileUrl)) {\r\n return tileUrl\r\n }\r\n\r\n const cleanedBase = tileBaseUrl.replace(/\\/+$/, '')\r\n const cleanedPath = tileUrl.replace(/^\\/+/, '')\r\n return `${cleanedBase}/${cleanedPath}`\r\n}\r\n\r\nfunction normalizeTileInfo(tileInfo: MartinTileJson, fallbackName: string | null, tileBaseUrl: string): NormalizedMartinTile | null {\r\n const tileName = tileInfo.id || tileInfo.name || fallbackName\r\n if (!tileName) return null\r\n\r\n const vectorLayerId = tileInfo.vector_layers?.[0]?.id || tileName\r\n const tileUrlFromInfo = Array.isArray(tileInfo.tiles) && tileInfo.tiles.length > 0\r\n ? tileInfo.tiles[0]\r\n : `${tileBaseUrl}/${tileName}/{z}/{x}/{y}`\r\n\r\n return {\r\n tileName,\r\n tileUrl: ensureAbsoluteTileUrl(tileUrlFromInfo, tileBaseUrl),\r\n description: tileInfo.description || tileInfo.vector_layers?.[0]?.description,\r\n vectorLayerId,\r\n tilestats: tileInfo.tilestats,\r\n minzoom: tileInfo.minzoom || tileInfo.vector_layers?.[0]?.minzoom,\r\n }\r\n}\r\n\r\nfunction normalizeMartinCatalog(response: MartinIndexResponse, tileBaseUrl: string): NormalizedMartinTile[] {\r\n if (Array.isArray(response)) {\r\n return response\r\n .map(tile => normalizeTileInfo(tile, null, tileBaseUrl))\r\n .filter((t): t is NormalizedMartinTile => Boolean(t))\r\n }\r\n\r\n if ('tilesets' in response && Array.isArray(response.tilesets)) {\r\n return response.tilesets\r\n .map(tile => normalizeTileInfo(tile, null, tileBaseUrl))\r\n .filter((t): t is NormalizedMartinTile => Boolean(t))\r\n }\r\n\r\n if ('tiles' in response && response.tiles) {\r\n return Object.entries(response.tiles)\r\n .map(([tileName, tileInfo]) => normalizeTileInfo(tileInfo as MartinTileJson, tileName, tileBaseUrl))\r\n .filter((t): t is NormalizedMartinTile => Boolean(t))\r\n }\r\n\r\n return []\r\n}\r\n\r\nfunction parseOrganizationValue(value: unknown): number | undefined {\r\n if (value == null) return undefined\r\n if (typeof value === 'number' && Number.isFinite(value)) return value\r\n\r\n const parsed = Number.parseInt(String(value), 10)\r\n return Number.isFinite(parsed) ? parsed : undefined\r\n}\r\n\r\nfunction extractOrganizationFromTilestats(tilestats?: MartinTileStats): number | undefined {\r\n if (!tilestats?.layers) return undefined\r\n\r\n for (const layer of tilestats.layers) {\r\n const orgAttribute = layer.attributes?.find(attr =>\r\n attr.attribute?.toLowerCase() === ORGANIZATION_FIELD,\r\n )\r\n\r\n if (!orgAttribute) continue\r\n\r\n if (orgAttribute.values && orgAttribute.values.length > 0) {\r\n const value = parseOrganizationValue(orgAttribute.values[0])\r\n if (value !== undefined) return value\r\n }\r\n\r\n if (orgAttribute.min !== undefined && orgAttribute.max !== undefined) {\r\n const min = parseOrganizationValue(orgAttribute.min)\r\n const max = parseOrganizationValue(orgAttribute.max)\r\n if (min !== undefined && max !== undefined && min === max) {\r\n return min\r\n }\r\n }\r\n }\r\n\r\n return undefined\r\n}\r\n\r\nasync function fetchOrganizationFromTile(tileUrlTemplate: string, vectorLayerId: string, preferredZoom?: number) {\r\n try {\r\n const z = typeof preferredZoom === 'number' ? Math.max(0, Math.round(preferredZoom)) : 0\r\n const sampleUrl = tileUrlTemplate\r\n .replace('{z}', String(z))\r\n .replace('{x}', '0')\r\n .replace('{y}', '0')\r\n .replace('{Z}', String(z))\r\n .replace('{X}', '0')\r\n .replace('{Y}', '0')\r\n\r\n const response = await fetch(sampleUrl)\r\n if (!response.ok) return undefined\r\n\r\n const buffer = await response.arrayBuffer()\r\n const vectorTile = new VectorTile(new Pbf(buffer))\r\n const layer = vectorTile.layers[vectorLayerId] || Object.values(vectorTile.layers)[0]\r\n\r\n if (!layer || layer.length === 0) return undefined\r\n\r\n const feature = layer.feature(0)\r\n const { properties } = feature.toGeoJSON(0, 0, z)\r\n \r\n // Determine geometry type\r\n let geometryType: LayerGeometryType | undefined\r\n if (feature.type === 1) { // Point\r\n geometryType = 'circle'\r\n } else if (feature.type === 2) { // LineString\r\n geometryType = 'line'\r\n } else if (feature.type === 3) { // Polygon\r\n geometryType = 'fill'\r\n }\r\n\r\n return {\r\n organization: parseOrganizationValue(properties?.[ORGANIZATION_FIELD]),\r\n geometryType\r\n }\r\n } catch (error) {\r\n console.warn('Failed to read organization from tile', error)\r\n return undefined\r\n }\r\n}\r\n\r\nasync function resolveDatasetOrganization(tile: NormalizedMartinTile) {\r\n const fromTilestats = extractOrganizationFromTilestats(tile.tilestats)\r\n \r\n // Always fetch from tile to get geometry type, even if we have organization from tilestats\r\n const fromTile = await fetchOrganizationFromTile(tile.tileUrl, tile.vectorLayerId, tile.minzoom)\r\n \r\n return {\r\n organization: fromTilestats !== undefined ? fromTilestats : fromTile?.organization,\r\n geometryType: fromTile?.geometryType\r\n }\r\n}\r\n\r\nasync function fetchPublishedTileLabels(): Promise<Map<string, string>> {\r\n try {\r\n const res = await fetch('/api/files')\r\n if (!res.ok) return new Map()\r\n const body = await res.json()\r\n const rows: Array<{ name?: string | null, description?: string | null }> =\r\n Array.isArray(body?.files) ? body.files : []\r\n const map = new Map<string, string>()\r\n for (const row of rows) {\r\n if (!row?.description || !row?.name) continue\r\n try {\r\n const desc = JSON.parse(row.description) as { tiledTable?: unknown }\r\n if (typeof desc?.tiledTable === 'string') {\r\n map.set(desc.tiledTable, row.name.replace(/\\.geojson$/i, ''))\r\n }\r\n }\r\n catch { /* skip malformed */ }\r\n }\r\n return map\r\n }\r\n catch {\r\n return new Map()\r\n }\r\n}\r\n\r\nasync function fetchMartinServerDatasets(\r\n portal: OpenDataPortal,\r\n): Promise<Dataset[]> {\r\n const { countrySubdivision, municipality } = portal\r\n const martinServerUrl = portal.apiUrl\r\n\r\n if (!martinServerUrl) {\r\n console.warn('No Martin server URL configured for portal', portal.name)\r\n return []\r\n }\r\n\r\n try {\r\n console.log('Fetching Martin server catalog from:', martinServerUrl)\r\n\r\n const { indexUrl, tileBaseUrl, fallbackCatalogUrl } = resolveMartinUrls(martinServerUrl)\r\n\r\n const publishedLabels = await fetchPublishedTileLabels()\r\n\r\n let response = await fetch(indexUrl)\r\n if (!response.ok && fallbackCatalogUrl && fallbackCatalogUrl !== indexUrl) {\r\n console.warn(`Failed to fetch Martin index (${indexUrl}), falling back to catalog...`)\r\n response = await fetch(fallbackCatalogUrl)\r\n }\r\n\r\n if (!response.ok) {\r\n throw new Error(`Failed to fetch Martin catalog: ${response.status}`)\r\n }\r\n\r\n const catalog: MartinIndexResponse = await response.json()\r\n const tiles = normalizeMartinCatalog(catalog, tileBaseUrl)\r\n // Drop our published org tables (served via the cdt_tiles function + discovered\r\n // from File metadata) and the cdt_tiles function source itself (no ?source= → empty).\r\n .filter(t => !isPublishedOrgTable(t.tileName) && t.tileName !== 'cdt_tiles')\r\n\r\n console.log('Martin catalog received:', tiles.length, 'tiles')\r\n\r\n const datasets: Dataset[] = await Promise.all(tiles.map(async (tileInfo) => {\r\n const publishedLabel = publishedLabels.get(tileInfo.tileName)\r\n const cleanName = publishedLabel ?? formatName(\r\n tileInfo.tileName\r\n .replace(/_\\d{8}$/, '')\r\n .replace(/__\\d+_\\d+$/, ''),\r\n )\r\n\r\n const { organization, geometryType } = await resolveDatasetOrganization(tileInfo)\r\n\r\n const getFields = async () => {\r\n return []\r\n }\r\n\r\n const getFeatures = async (): Promise<AllGeoJSON> => {\r\n return {\r\n type: 'FeatureCollection',\r\n features: [],\r\n } as AllGeoJSON\r\n }\r\n\r\n const getFeaturesData = async () => {\r\n return {\r\n id: tileInfo.tileName,\r\n name: cleanName,\r\n type: 'MVT',\r\n visible: true,\r\n clickable: true,\r\n fields: [],\r\n source: {\r\n url: tileInfo.tileUrl,\r\n description: tileInfo.description,\r\n publisher: 'Martin Server',\r\n },\r\n serviceInfo: {\r\n tileName: tileInfo.tileName,\r\n sourceLayer: tileInfo.vectorLayerId,\r\n type: 'Martin',\r\n tileUrl: tileInfo.tileUrl,\r\n },\r\n }\r\n }\r\n\r\n const dataset: Dataset = {\r\n id: tileInfo.tileName,\r\n name: cleanName,\r\n organization,\r\n publisher: 'Martin Server',\r\n dataManagementSystem: 'other',\r\n license: 'Unknown',\r\n contact: 'Unknown',\r\n keywords: [],\r\n description: tileInfo.description || `Vector tile layer from Martin server: ${tileInfo.tileName}`,\r\n dateReleased: '',\r\n dateUpdated: '',\r\n information: tileInfo.tileUrl,\r\n url: tileInfo.tileUrl,\r\n countrySubdivision: countrySubdivision,\r\n municipality: municipality,\r\n type: 'MVT',\r\n datasetType: 'MVT' as any,\r\n portal,\r\n getFields,\r\n getFeatures,\r\n getFeaturesData,\r\n group: DatasetGroup.Organizational,\r\n layerColor: layerColorByName(cleanName),\r\n layerType: geometryType,\r\n }\r\n\r\n return dataset\r\n }))\r\n\r\n console.log(`Transformed ${datasets.length} Martin datasets`)\r\n\r\n let publishedDatasets: Dataset[] = []\r\n try {\r\n const fileRes = await fetch('/api/files')\r\n if (fileRes.ok) {\r\n const fileBody = await fileRes.json()\r\n const fileRows: PublishedFileRow[] = Array.isArray(fileBody?.files) ? fileBody.files : []\r\n publishedDatasets = buildPublishedTileDatasets(fileRows, tileBaseUrl, portal)\r\n }\r\n }\r\n catch (err) {\r\n console.warn('Failed to build published-tile datasets from /api/files', err)\r\n }\r\n\r\n return [...datasets, ...publishedDatasets]\r\n } catch (error) {\r\n console.error('Error fetching Martin server datasets:', error)\r\n return []\r\n }\r\n}\r\n\r\n// Fetch Local datasets from localDatasetsJson array and transform to Dataset array\r\nexport async function fetchLocalDatasets(\r\n portal: OpenDataPortal,\r\n): Promise<Dataset[]> {\r\n const { countrySubdivision, municipality } = portal\r\n const apiUrl = portal.apiUrl || ''\r\n const trimmedApiUrl = apiUrl.replace(/\\/+$/, '')\r\n\r\n if (!apiUrl) {\r\n console.warn('No apiUrl provided for portal', portal.name)\r\n return []\r\n }\r\n\r\n // Skip legacy portals with non-absolute URLs (e.g. ./localDatasets/index.json)\r\n if (!apiUrl.startsWith('http://') && !apiUrl.startsWith('https://')) {\r\n return []\r\n }\r\n\r\n if (trimmedApiUrl.includes('/catalog') || trimmedApiUrl.includes('/tiles/index')) {\r\n return fetchMartinServerDatasets(portal)\r\n }\r\n\r\n try {\r\n // Fetch the localDatasets.json file\r\n const response = await fetch(apiUrl)\r\n if (!response.ok) {\r\n const shouldTryMartinFallback =\r\n !trimmedApiUrl.endsWith('.json')\r\n && !trimmedApiUrl.includes('/catalog')\r\n && !trimmedApiUrl.includes('/tiles/index')\r\n\r\n if (response.status === 404 && shouldTryMartinFallback) {\r\n console.warn(\r\n `Local dataset URL returned 404 (${apiUrl}); retrying as a Martin server base URL`,\r\n )\r\n return fetchMartinServerDatasets({\r\n ...portal,\r\n apiUrl: trimmedApiUrl,\r\n })\r\n }\r\n\r\n throw new Error(`Failed to fetch local datasets from ${apiUrl}: ${response.status}`)\r\n }\r\n\r\n const localDatasetsJson: LocalDatasetItem[] = await response.json()\r\n\r\n const transformedDatasets: Dataset[] = localDatasetsJson.map((datasetItem: LocalDatasetItem) => {\r\n // Simple getFields function that returns fields from layer properties\r\n const getFields = async () => {\r\n if (datasetItem.layer?.properties) {\r\n return Object.entries(datasetItem.layer.properties).map(([name, type]) => ({\r\n name,\r\n label: formatName(name),\r\n type: type as string,\r\n description: `${formatName(name)} field`,\r\n }))\r\n }\r\n return []\r\n }\r\n\r\n // Fetch GeoJSON data from the featuresUrl\r\n const getFeatures = async (): Promise<AllGeoJSON> => {\r\n // Create a cache key based on the dataset name and features URL\r\n const featuresKey = `features:local:${datasetItem.name}:${datasetItem.featuresUrl}`\r\n \r\n // Check cache first\r\n const cachedFeatures = getCache<AllGeoJSON>(featuresKey)\r\n if (cachedFeatures) {\r\n return cachedFeatures\r\n }\r\n \r\n try {\r\n // Use the featuresUrl from the dataset item\r\n let geojsonUrl: string\r\n if (datasetItem.featuresUrl.startsWith('http://') || datasetItem.featuresUrl.startsWith('https://')) {\r\n geojsonUrl = datasetItem.featuresUrl\r\n } else {\r\n const baseUrl = apiUrl.endsWith('.json') \r\n ? apiUrl.substring(0, apiUrl.lastIndexOf('/'))\r\n : apiUrl\r\n geojsonUrl = `${baseUrl}/${datasetItem.featuresUrl}`\r\n }\r\n\r\n const response = await fetch(geojsonUrl)\r\n\r\n if (!response.ok) {\r\n throw new Error(`Failed to fetch GeoJSON: ${response.status}`)\r\n }\r\n\r\n const geojsonData = await response.json() as AllGeoJSON\r\n \r\n // Cache for 1 hour\r\n setCache(featuresKey, geojsonData, 60 * 60 * 1000)\r\n \r\n return geojsonData\r\n } catch (error) {\r\n console.error(`Error loading GeoJSON for ${datasetItem.name}:`, error)\r\n return {\r\n type: 'FeatureCollection',\r\n features: [],\r\n } as AllGeoJSON\r\n }\r\n }\r\n\r\n const name = formatName(datasetItem.name)\r\n\r\n const getFeaturesData = async () => {\r\n try {\r\n return {\r\n // Basic layer information\r\n id: datasetItem.tileName || datasetItem.name.toLowerCase().replace(/\\s+/g, '-'),\r\n name: datasetItem.name,\r\n type: datasetItem.layer?.type || 'GeoJSON',\r\n\r\n // Layer configuration\r\n visible: datasetItem.visible,\r\n clickable: datasetItem.clickable,\r\n\r\n // Field information (similar to ArcGIS fields structure)\r\n fields: datasetItem.layer?.properties\r\n ? Object.entries(datasetItem.layer.properties).map(([name, type]) => ({\r\n name,\r\n type: type as FieldType,\r\n alias: formatName(name),\r\n description: `${formatName(name)} field`,\r\n }))\r\n : [],\r\n\r\n // Source information\r\n source: {\r\n url: datasetItem.url,\r\n description: datasetItem.description,\r\n publisher: datasetItem.publisher,\r\n featuresUrl: datasetItem.featuresUrl,\r\n },\r\n\r\n // Additional metadata that DatasetDetails.tsx might use\r\n editingInfo: {\r\n lastEditDate: new Date().toISOString(), // Current date as placeholder\r\n dataLastEditDate: new Date().toISOString(),\r\n },\r\n\r\n // Layer properties summary\r\n properties: datasetItem.layer?.properties || {},\r\n fieldCount: datasetItem.layer?.properties ? Object.keys(datasetItem.layer.properties).length : 0,\r\n\r\n // Geometry information\r\n geometryType: 'Unknown', // You could infer this from the actual GeoJSON if needed\r\n\r\n // Service information (for compatibility)\r\n serviceInfo: {\r\n tileName: datasetItem.tileName,\r\n sourceLayer: datasetItem.sourceLayer,\r\n type: 'Local',\r\n },\r\n }\r\n } catch (error) {\r\n console.error('Error getting features data for dataset:', datasetItem.name, error)\r\n return null\r\n }\r\n }\r\n\r\n return {\r\n id: datasetItem.tileName || datasetItem.name.toLowerCase().replace(/\\s+/g, '-'),\r\n name,\r\n organization: datasetItem.organization || 0,\r\n publisher: datasetItem.publisher || 'Unknown',\r\n dataManagementSystem: 'other',\r\n license: 'Unknown',\r\n contact: 'Unknown',\r\n keywords: [],\r\n description: datasetItem.description || 'No description available',\r\n dateReleased: '',\r\n dateUpdated: '',\r\n information: datasetItem.url || '',\r\n url: datasetItem.url || '#', // Ensure there's always a valid URL for the Link component\r\n countrySubdivision: datasetItem.countrySubdivision || countrySubdivision,\r\n municipality: datasetItem.municipality || municipality,\r\n type: datasetItem.layer?.type || 'GeoJSON',\r\n datasetType: 'GeoJSON' as const,\r\n portal,\r\n getFields,\r\n getFeatures,\r\n getFeaturesData,\r\n group: 'Organizational',\r\n layerColor: layerColorByName(name),\r\n }\r\n })\r\n\r\n return transformedDatasets\r\n } catch (error) {\r\n console.error('Error fetching local datasets:', error)\r\n return []\r\n }\r\n}\r\n"],"mappings":"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","names":["_a","name","response"]}
1
+ {"version":3,"sources":["../../../../../../../src/core/components/viewers/map/datasets/src/localDatasets.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport { VectorTile } from '@mapbox/vector-tile'\r\nimport Pbf from 'pbf'\r\n\r\nimport { DatasetGroup, type OpenDataPortal } from '../../../../../types/dbTypes'\r\nimport { layerColorByName } from '../../utils/stringToColour'\r\nimport { formatName } from '../utils'\r\n\r\nimport { getCache, setCache } from './cache'\r\nimport { isPublishedOrgTable, buildPublishedTileDatasets, type PublishedFileRow } from './publishedTiles'\r\n\r\nimport type { Dataset, FieldType, LayerGeometryType } from '../../../../../types/datasetTypes'\r\nimport type { AllGeoJSON } from '@turf/turf'\r\n\r\n\r\n// Define the structure of local dataset items\r\ninterface LocalDatasetItem {\r\n name: string\r\n organization: number\r\n featuresUrl: string\r\n tileName: string\r\n sourceLayer: string\r\n layer: {\r\n type: string\r\n properties: Record<string, string>\r\n }\r\n visible: boolean\r\n clickable: boolean\r\n url: string\r\n description: string\r\n publisher: string\r\n countrySubdivision?: string\r\n municipality?: string\r\n}\r\n\r\ninterface MartinCatalogTile {\r\n content_type: string\r\n description: string\r\n}\r\n\r\ninterface MartinCatalog {\r\n tiles: Record<string, MartinCatalogTile>\r\n}\r\n\r\ninterface MartinTileStatsAttribute {\r\n attribute: string\r\n values?: Array<string | number>\r\n min?: number | string\r\n max?: number | string\r\n}\r\n\r\ninterface MartinTileStatsLayer {\r\n layer: string\r\n attributes?: MartinTileStatsAttribute[]\r\n}\r\n\r\ninterface MartinTileStats {\r\n layers?: MartinTileStatsLayer[]\r\n}\r\n\r\ninterface MartinTileJson {\r\n id?: string\r\n name?: string\r\n description?: string\r\n tiles?: string[]\r\n vector_layers?: Array<{\r\n id: string\r\n description?: string\r\n minzoom?: number\r\n maxzoom?: number\r\n fields?: Record<string, string>\r\n }>\r\n tilestats?: MartinTileStats\r\n minzoom?: number\r\n maxzoom?: number\r\n}\r\n\r\ntype MartinIndexResponse =\r\n | MartinCatalog\r\n | MartinTileJson[]\r\n | { tiles: Record<string, MartinTileJson> }\r\n | { tilesets: MartinTileJson[] }\r\n\r\ninterface NormalizedMartinTile {\r\n tileName: string\r\n tileUrl: string\r\n description?: string\r\n vectorLayerId: string\r\n tilestats?: MartinTileStats\r\n minzoom?: number\r\n}\r\n\r\nconst ORGANIZATION_FIELD = 'organization'\r\n\r\nfunction normalizeMartinBaseUrl(apiUrl: string) {\r\n return apiUrl.replace(/\\/+$/, '')\r\n}\r\n\r\nfunction resolveMartinUrls(apiUrl: string) {\r\n const trimmed = normalizeMartinBaseUrl(apiUrl)\r\n\r\n if (trimmed.endsWith('/tiles/index.json')) {\r\n const tileBaseUrl = trimmed.replace(/\\/tiles\\/index\\.json$/, '')\r\n return {\r\n indexUrl: trimmed,\r\n tileBaseUrl,\r\n fallbackCatalogUrl: `${tileBaseUrl}/catalog`,\r\n }\r\n }\r\n\r\n if (trimmed.endsWith('/catalog')) {\r\n const tileBaseUrl = trimmed.replace(/\\/catalog$/, '')\r\n return {\r\n indexUrl: `${tileBaseUrl}/tiles/index.json`,\r\n tileBaseUrl,\r\n fallbackCatalogUrl: trimmed,\r\n }\r\n }\r\n\r\n return {\r\n indexUrl: `${trimmed}/tiles/index.json`,\r\n tileBaseUrl: trimmed,\r\n fallbackCatalogUrl: `${trimmed}/catalog`,\r\n }\r\n}\r\n\r\nfunction ensureAbsoluteTileUrl(tileUrl: string, tileBaseUrl: string) {\r\n if (/^https?:\\/\\//i.test(tileUrl)) {\r\n return tileUrl\r\n }\r\n\r\n const cleanedBase = tileBaseUrl.replace(/\\/+$/, '')\r\n const cleanedPath = tileUrl.replace(/^\\/+/, '')\r\n return `${cleanedBase}/${cleanedPath}`\r\n}\r\n\r\nfunction normalizeTileInfo(tileInfo: MartinTileJson, fallbackName: string | null, tileBaseUrl: string): NormalizedMartinTile | null {\r\n const tileName = tileInfo.id || tileInfo.name || fallbackName\r\n if (!tileName) return null\r\n\r\n const vectorLayerId = tileInfo.vector_layers?.[0]?.id || tileName\r\n const tileUrlFromInfo = Array.isArray(tileInfo.tiles) && tileInfo.tiles.length > 0\r\n ? tileInfo.tiles[0]\r\n : `${tileBaseUrl}/${tileName}/{z}/{x}/{y}`\r\n\r\n return {\r\n tileName,\r\n tileUrl: ensureAbsoluteTileUrl(tileUrlFromInfo, tileBaseUrl),\r\n description: tileInfo.description || tileInfo.vector_layers?.[0]?.description,\r\n vectorLayerId,\r\n tilestats: tileInfo.tilestats,\r\n minzoom: tileInfo.minzoom || tileInfo.vector_layers?.[0]?.minzoom,\r\n }\r\n}\r\n\r\nfunction normalizeMartinCatalog(response: MartinIndexResponse, tileBaseUrl: string): NormalizedMartinTile[] {\r\n if (Array.isArray(response)) {\r\n return response\r\n .map(tile => normalizeTileInfo(tile, null, tileBaseUrl))\r\n .filter((t): t is NormalizedMartinTile => Boolean(t))\r\n }\r\n\r\n if ('tilesets' in response && Array.isArray(response.tilesets)) {\r\n return response.tilesets\r\n .map(tile => normalizeTileInfo(tile, null, tileBaseUrl))\r\n .filter((t): t is NormalizedMartinTile => Boolean(t))\r\n }\r\n\r\n if ('tiles' in response && response.tiles) {\r\n return Object.entries(response.tiles)\r\n .map(([tileName, tileInfo]) => normalizeTileInfo(tileInfo as MartinTileJson, tileName, tileBaseUrl))\r\n .filter((t): t is NormalizedMartinTile => Boolean(t))\r\n }\r\n\r\n return []\r\n}\r\n\r\nfunction parseOrganizationValue(value: unknown): number | undefined {\r\n if (value == null) return undefined\r\n if (typeof value === 'number' && Number.isFinite(value)) return value\r\n\r\n const parsed = Number.parseInt(String(value), 10)\r\n return Number.isFinite(parsed) ? parsed : undefined\r\n}\r\n\r\nfunction extractOrganizationFromTilestats(tilestats?: MartinTileStats): number | undefined {\r\n if (!tilestats?.layers) return undefined\r\n\r\n for (const layer of tilestats.layers) {\r\n const orgAttribute = layer.attributes?.find(attr =>\r\n attr.attribute?.toLowerCase() === ORGANIZATION_FIELD,\r\n )\r\n\r\n if (!orgAttribute) continue\r\n\r\n if (orgAttribute.values && orgAttribute.values.length > 0) {\r\n const value = parseOrganizationValue(orgAttribute.values[0])\r\n if (value !== undefined) return value\r\n }\r\n\r\n if (orgAttribute.min !== undefined && orgAttribute.max !== undefined) {\r\n const min = parseOrganizationValue(orgAttribute.min)\r\n const max = parseOrganizationValue(orgAttribute.max)\r\n if (min !== undefined && max !== undefined && min === max) {\r\n return min\r\n }\r\n }\r\n }\r\n\r\n return undefined\r\n}\r\n\r\nasync function fetchOrganizationFromTile(tileUrlTemplate: string, vectorLayerId: string, preferredZoom?: number) {\r\n try {\r\n const z = typeof preferredZoom === 'number' ? Math.max(0, Math.round(preferredZoom)) : 0\r\n const sampleUrl = tileUrlTemplate\r\n .replace('{z}', String(z))\r\n .replace('{x}', '0')\r\n .replace('{y}', '0')\r\n .replace('{Z}', String(z))\r\n .replace('{X}', '0')\r\n .replace('{Y}', '0')\r\n\r\n const response = await fetch(sampleUrl)\r\n if (!response.ok) return undefined\r\n\r\n const buffer = await response.arrayBuffer()\r\n const vectorTile = new VectorTile(new Pbf(buffer))\r\n const layer = vectorTile.layers[vectorLayerId] || Object.values(vectorTile.layers)[0]\r\n\r\n if (!layer || layer.length === 0) return undefined\r\n\r\n const feature = layer.feature(0)\r\n const { properties } = feature.toGeoJSON(0, 0, z)\r\n\r\n // Determine geometry type\r\n let geometryType: LayerGeometryType | undefined\r\n if (feature.type === 1) { // Point\r\n geometryType = 'circle'\r\n } else if (feature.type === 2) { // LineString\r\n geometryType = 'line'\r\n } else if (feature.type === 3) { // Polygon\r\n geometryType = 'fill'\r\n }\r\n\r\n return {\r\n organization: parseOrganizationValue(properties?.[ORGANIZATION_FIELD]),\r\n geometryType\r\n }\r\n } catch (error) {\r\n console.warn('Failed to read organization from tile', error)\r\n return undefined\r\n }\r\n}\r\n\r\nasync function resolveDatasetOrganization(tile: NormalizedMartinTile) {\r\n const fromTilestats = extractOrganizationFromTilestats(tile.tilestats)\r\n\r\n // Always fetch from tile to get geometry type, even if we have organization from tilestats\r\n const fromTile = await fetchOrganizationFromTile(tile.tileUrl, tile.vectorLayerId, tile.minzoom)\r\n\r\n return {\r\n organization: fromTilestats !== undefined ? fromTilestats : fromTile?.organization,\r\n geometryType: fromTile?.geometryType\r\n }\r\n}\r\n\r\nasync function fetchPublishedTileLabels(): Promise<Map<string, string>> {\r\n try {\r\n const res = await fetch('/api/files')\r\n if (!res.ok) return new Map()\r\n const body = await res.json()\r\n const rows: Array<{ name?: string | null, description?: string | null }> =\r\n Array.isArray(body?.files) ? body.files : []\r\n const map = new Map<string, string>()\r\n for (const row of rows) {\r\n if (!row?.description || !row?.name) continue\r\n try {\r\n const desc = JSON.parse(row.description) as { tiledTable?: unknown }\r\n if (typeof desc?.tiledTable === 'string') {\r\n map.set(desc.tiledTable, row.name.replace(/\\.geojson$/i, ''))\r\n }\r\n }\r\n catch { /* skip malformed */ }\r\n }\r\n return map\r\n }\r\n catch {\r\n return new Map()\r\n }\r\n}\r\n\r\nasync function fetchMartinServerDatasets(\r\n portal: OpenDataPortal,\r\n): Promise<Dataset[]> {\r\n const { countrySubdivision, municipality } = portal\r\n const martinServerUrl = portal.apiUrl\r\n\r\n if (!martinServerUrl) {\r\n console.warn('No Martin server URL configured for portal', portal.name)\r\n return []\r\n }\r\n\r\n try {\r\n console.log('Fetching Martin server catalog from:', martinServerUrl)\r\n\r\n const { indexUrl, tileBaseUrl, fallbackCatalogUrl } = resolveMartinUrls(martinServerUrl)\r\n\r\n const publishedLabels = await fetchPublishedTileLabels()\r\n\r\n let response = await fetch(indexUrl)\r\n if (!response.ok && fallbackCatalogUrl && fallbackCatalogUrl !== indexUrl) {\r\n console.warn(`Failed to fetch Martin index (${indexUrl}), falling back to catalog...`)\r\n response = await fetch(fallbackCatalogUrl)\r\n }\r\n\r\n if (!response.ok) {\r\n throw new Error(`Failed to fetch Martin catalog: ${response.status}`)\r\n }\r\n\r\n const catalog: MartinIndexResponse = await response.json()\r\n const tiles = normalizeMartinCatalog(catalog, tileBaseUrl)\r\n // Drop our published org tables (served via the cdt_tiles function + discovered\r\n // from File metadata) and the cdt_tiles function source itself (no ?source= → empty).\r\n .filter(t => !isPublishedOrgTable(t.tileName) && t.tileName !== 'cdt_tiles')\r\n\r\n console.log('Martin catalog received:', tiles.length, 'tiles')\r\n\r\n const datasets: Dataset[] = await Promise.all(tiles.map(async (tileInfo) => {\r\n const publishedLabel = publishedLabels.get(tileInfo.tileName)\r\n const cleanName = publishedLabel ?? formatName(\r\n tileInfo.tileName\r\n .replace(/_\\d{8}$/, '')\r\n .replace(/__\\d+_\\d+$/, ''),\r\n )\r\n\r\n const { organization, geometryType } = await resolveDatasetOrganization(tileInfo)\r\n\r\n const getFields = async () => {\r\n return []\r\n }\r\n\r\n const getFeatures = async (): Promise<AllGeoJSON> => {\r\n return {\r\n type: 'FeatureCollection',\r\n features: [],\r\n } as AllGeoJSON\r\n }\r\n\r\n const getFeaturesData = async () => {\r\n return {\r\n id: tileInfo.tileName,\r\n name: cleanName,\r\n type: 'MVT',\r\n visible: true,\r\n clickable: true,\r\n fields: [],\r\n source: {\r\n url: tileInfo.tileUrl,\r\n description: tileInfo.description,\r\n publisher: 'Martin Server',\r\n },\r\n serviceInfo: {\r\n tileName: tileInfo.tileName,\r\n sourceLayer: tileInfo.vectorLayerId,\r\n type: 'Martin',\r\n tileUrl: tileInfo.tileUrl,\r\n },\r\n }\r\n }\r\n\r\n const dataset: Dataset = {\r\n id: tileInfo.tileName,\r\n name: cleanName,\r\n organization,\r\n publisher: 'Martin Server',\r\n dataManagementSystem: 'other',\r\n license: 'Unknown',\r\n contact: 'Unknown',\r\n keywords: [],\r\n description: tileInfo.description || `Vector tile layer from Martin server: ${tileInfo.tileName}`,\r\n dateReleased: '',\r\n dateUpdated: '',\r\n information: tileInfo.tileUrl,\r\n url: tileInfo.tileUrl,\r\n countrySubdivision: countrySubdivision,\r\n municipality: municipality,\r\n type: 'MVT',\r\n datasetType: 'MVT' as any,\r\n portal,\r\n getFields,\r\n getFeatures,\r\n getFeaturesData,\r\n group: DatasetGroup.Organizational,\r\n layerColor: layerColorByName(cleanName),\r\n layerType: geometryType,\r\n }\r\n\r\n return dataset\r\n }))\r\n\r\n console.log(`Transformed ${datasets.length} Martin datasets`)\r\n\r\n let publishedDatasets: Dataset[] = []\r\n try {\r\n const fileRes = await fetch('/api/files')\r\n if (fileRes.ok) {\r\n const fileBody = await fileRes.json()\r\n const fileRows: PublishedFileRow[] = Array.isArray(fileBody?.files) ? fileBody.files : []\r\n publishedDatasets = buildPublishedTileDatasets(fileRows, tileBaseUrl, portal)\r\n }\r\n }\r\n catch (err) {\r\n console.warn('Failed to build published-tile datasets from /api/files', err)\r\n }\r\n\r\n return [...datasets, ...publishedDatasets]\r\n } catch (error) {\r\n console.error('Error fetching Martin server datasets:', error)\r\n return []\r\n }\r\n}\r\n\r\n// Fetch Local datasets from localDatasetsJson array and transform to Dataset array\r\nexport async function fetchLocalDatasets(\r\n portal: OpenDataPortal,\r\n): Promise<Dataset[]> {\r\n const { countrySubdivision, municipality } = portal\r\n const apiUrl = portal.apiUrl || ''\r\n const trimmedApiUrl = apiUrl.replace(/\\/+$/, '')\r\n\r\n if (!apiUrl) {\r\n console.warn('No apiUrl provided for portal', portal.name)\r\n return []\r\n }\r\n\r\n // Skip legacy portals with non-absolute URLs (e.g. ./localDatasets/index.json)\r\n if (!apiUrl.startsWith('http://') && !apiUrl.startsWith('https://')) {\r\n return []\r\n }\r\n\r\n if (trimmedApiUrl.includes('/catalog') || trimmedApiUrl.includes('/tiles/index')) {\r\n return fetchMartinServerDatasets(portal)\r\n }\r\n\r\n try {\r\n // Fetch the localDatasets.json file\r\n const response = await fetch(apiUrl)\r\n if (!response.ok) {\r\n const shouldTryMartinFallback =\r\n !trimmedApiUrl.endsWith('.json')\r\n && !trimmedApiUrl.includes('/catalog')\r\n && !trimmedApiUrl.includes('/tiles/index')\r\n\r\n if (response.status === 404 && shouldTryMartinFallback) {\r\n console.warn(\r\n `Local dataset URL returned 404 (${apiUrl}); retrying as a Martin server base URL`,\r\n )\r\n return fetchMartinServerDatasets({\r\n ...portal,\r\n apiUrl: trimmedApiUrl,\r\n })\r\n }\r\n\r\n throw new Error(`Failed to fetch local datasets from ${apiUrl}: ${response.status}`)\r\n }\r\n\r\n const localDatasetsJson: LocalDatasetItem[] = await response.json()\r\n\r\n const transformedDatasets: Dataset[] = localDatasetsJson.map((datasetItem: LocalDatasetItem) => {\r\n // Simple getFields function that returns fields from layer properties\r\n const getFields = async () => {\r\n if (datasetItem.layer?.properties) {\r\n return Object.entries(datasetItem.layer.properties).map(([name, type]) => ({\r\n name,\r\n label: formatName(name),\r\n type: type as string,\r\n description: `${formatName(name)} field`,\r\n }))\r\n }\r\n return []\r\n }\r\n\r\n // Fetch GeoJSON data from the featuresUrl\r\n const getFeatures = async (): Promise<AllGeoJSON> => {\r\n // Create a cache key based on the dataset name and features URL\r\n const featuresKey = `features:local:${datasetItem.name}:${datasetItem.featuresUrl}`\r\n\r\n // Check cache first\r\n const cachedFeatures = getCache<AllGeoJSON>(featuresKey)\r\n if (cachedFeatures) {\r\n return cachedFeatures\r\n }\r\n\r\n try {\r\n // Use the featuresUrl from the dataset item\r\n let geojsonUrl: string\r\n if (datasetItem.featuresUrl.startsWith('http://') || datasetItem.featuresUrl.startsWith('https://')) {\r\n geojsonUrl = datasetItem.featuresUrl\r\n } else {\r\n const baseUrl = apiUrl.endsWith('.json')\r\n ? apiUrl.substring(0, apiUrl.lastIndexOf('/'))\r\n : apiUrl\r\n geojsonUrl = `${baseUrl}/${datasetItem.featuresUrl}`\r\n }\r\n\r\n const response = await fetch(geojsonUrl)\r\n\r\n if (!response.ok) {\r\n throw new Error(`Failed to fetch GeoJSON: ${response.status}`)\r\n }\r\n\r\n const geojsonData = await response.json() as AllGeoJSON\r\n\r\n // Cache for 1 hour\r\n setCache(featuresKey, geojsonData, 60 * 60 * 1000)\r\n\r\n return geojsonData\r\n } catch (error) {\r\n console.error(`Error loading GeoJSON for ${datasetItem.name}:`, error)\r\n return {\r\n type: 'FeatureCollection',\r\n features: [],\r\n } as AllGeoJSON\r\n }\r\n }\r\n\r\n const name = formatName(datasetItem.name)\r\n\r\n const getFeaturesData = async () => {\r\n try {\r\n return {\r\n // Basic layer information\r\n id: datasetItem.tileName || datasetItem.name.toLowerCase().replace(/\\s+/g, '-'),\r\n name: datasetItem.name,\r\n type: datasetItem.layer?.type || 'GeoJSON',\r\n\r\n // Layer configuration\r\n visible: datasetItem.visible,\r\n clickable: datasetItem.clickable,\r\n\r\n // Field information (similar to ArcGIS fields structure)\r\n fields: datasetItem.layer?.properties\r\n ? Object.entries(datasetItem.layer.properties).map(([name, type]) => ({\r\n name,\r\n type: type as FieldType,\r\n alias: formatName(name),\r\n description: `${formatName(name)} field`,\r\n }))\r\n : [],\r\n\r\n // Source information\r\n source: {\r\n url: datasetItem.url,\r\n description: datasetItem.description,\r\n publisher: datasetItem.publisher,\r\n featuresUrl: datasetItem.featuresUrl,\r\n },\r\n\r\n // Additional metadata that DatasetDetails.tsx might use\r\n editingInfo: {\r\n lastEditDate: new Date().toISOString(), // Current date as placeholder\r\n dataLastEditDate: new Date().toISOString(),\r\n },\r\n\r\n // Layer properties summary\r\n properties: datasetItem.layer?.properties || {},\r\n fieldCount: datasetItem.layer?.properties ? Object.keys(datasetItem.layer.properties).length : 0,\r\n\r\n // Geometry information\r\n geometryType: 'Unknown', // You could infer this from the actual GeoJSON if needed\r\n\r\n // Service information (for compatibility)\r\n serviceInfo: {\r\n tileName: datasetItem.tileName,\r\n sourceLayer: datasetItem.sourceLayer,\r\n type: 'Local',\r\n },\r\n }\r\n } catch (error) {\r\n console.error('Error getting features data for dataset:', datasetItem.name, error)\r\n return null\r\n }\r\n }\r\n\r\n return {\r\n id: datasetItem.tileName || datasetItem.name.toLowerCase().replace(/\\s+/g, '-'),\r\n name,\r\n organization: datasetItem.organization || 0,\r\n publisher: datasetItem.publisher || 'Unknown',\r\n dataManagementSystem: 'other',\r\n license: 'Unknown',\r\n contact: 'Unknown',\r\n keywords: [],\r\n description: datasetItem.description || 'No description available',\r\n dateReleased: '',\r\n dateUpdated: '',\r\n information: datasetItem.url || '',\r\n url: datasetItem.url || '#', // Ensure there's always a valid URL for the Link component\r\n countrySubdivision: datasetItem.countrySubdivision || countrySubdivision,\r\n municipality: datasetItem.municipality || municipality,\r\n type: datasetItem.layer?.type || 'GeoJSON',\r\n datasetType: 'GeoJSON' as const,\r\n portal,\r\n getFields,\r\n getFeatures,\r\n getFeaturesData,\r\n group: 'Organizational',\r\n layerColor: layerColorByName(name),\r\n }\r\n })\r\n\r\n return transformedDatasets\r\n } catch (error) {\r\n console.error('Error fetching local datasets:', error)\r\n return []\r\n }\r\n}\r\n"],"mappings":"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","names":["_a","name","response"]}
@@ -1 +1 @@
1
- {"version":3,"file":"minioDatasets.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/components/viewers/map/datasets/src/minioDatasets.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAA;AAiDhE,wBAAsB,gCAAgC,CACpD,cAAc,EAAE,MAAM,EACtB,uBAAuB,GAAE,WAAW,CAAC,MAAM,CAAa,EACxD,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,OAAO,EAAE,CAAC,CAmFpB"}
1
+ {"version":3,"file":"minioDatasets.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/components/viewers/map/datasets/src/minioDatasets.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAA;AA+ChE,wBAAsB,gCAAgC,CACpD,cAAc,EAAE,MAAM,EACtB,uBAAuB,GAAE,WAAW,CAAC,MAAM,CAAa,EACxD,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,OAAO,EAAE,CAAC,CAmFpB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/core/components/viewers/map/datasets/src/minioDatasets.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport type { Dataset } from '../../../../../types/datasetTypes'\r\nimport { DatasetGroup } from '../../../../../types/dbTypes'\r\nimport { layerColorByName } from '../../utils/stringToColour'\r\nimport type { AllGeoJSON } from '@turf/turf'\r\n\r\n/**\r\n * Hydrates uploaded GeoJSON datasets persisted via \"Add Dataset\". Looks up\r\n * File rows tagged `organizational-dataset`, reads the bucket from each row's\r\n * description JSON, and builds Dataset entries whose `getFeatures` lazy-loads\r\n * the GeoJSON from MinIO on first render.\r\n */\r\n\r\ninterface OrgDatasetDescription {\r\n bucket?: string\r\n geometryType?: 'points' | 'lines' | 'polygons'\r\n layerStyles?: Record<string, Record<string, string | number>>\r\n tiledTable?: string\r\n tiledAt?: string\r\n featuresIngested?: number\r\n featuresSkipped?: number\r\n}\r\n\r\ninterface RawFileRow {\r\n id: number\r\n type?: string | null\r\n tag?: string | null\r\n name?: string | null\r\n assetId?: string | null\r\n description?: string | null\r\n uploadedAt?: string | Date | null\r\n}\r\n\r\nconst TAG = 'organizational-dataset'\r\n\r\nfunction parseDescription(value: string | null | undefined): OrgDatasetDescription | null {\r\n if (!value) return null\r\n try {\r\n const parsed = JSON.parse(value)\r\n return typeof parsed === 'object' && parsed !== null ? parsed as OrgDatasetDescription : null\r\n }\r\n catch {\r\n return null\r\n }\r\n}\r\n\r\nfunction buildMinioUrl(base: string, bucket: string, organizationId: number, assetId: string): string {\r\n return `${base.replace(/\\/+$/, '')}/${bucket}/${organizationId}/${assetId}`\r\n}\r\n\r\nexport async function fetchOrganizationalMinioDatasets(\r\n organizationId: number,\r\n publishedTilesInCatalog: ReadonlySet<string> = new Set(),\r\n minioUrl?: string,\r\n): Promise<Dataset[]> {\r\n let rows: RawFileRow[] = []\r\n try {\r\n const res = await fetch('/api/files')\r\n if (!res.ok) {\r\n console.warn(`fetchOrganizationalMinioDatasets: /api/files returned ${res.status}`)\r\n return []\r\n }\r\n const body = await res.json()\r\n rows = Array.isArray(body?.files) ? body.files : []\r\n }\r\n catch (err) {\r\n console.warn('fetchOrganizationalMinioDatasets: /api/files request failed', err)\r\n return []\r\n }\r\n\r\n const datasets: Dataset[] = []\r\n for (const row of rows) {\r\n if (row.type !== 'map-file') continue\r\n if (row.tag !== TAG) continue\r\n if (!row.assetId) continue\r\n\r\n const meta = parseDescription(row.description)\r\n // Suppress the MinIO entry only once Martin actually serves the published\r\n // table — otherwise the file appears to vanish during the publish→restart\r\n // gap. Un-publish drops the table immediately, so the MinIO row reappears\r\n // on next reload with no extra plumbing.\r\n if (meta?.tiledTable && publishedTilesInCatalog.has(meta.tiledTable)) continue\r\n const bucket = meta?.bucket\r\n if (!bucket) continue\r\n\r\n const sourceUrl = minioUrl ? buildMinioUrl(minioUrl, bucket, organizationId, row.assetId) : null\r\n if (!sourceUrl) continue\r\n\r\n const name = row.name?.replace(/\\.geojson$/i, '') || `Dataset ${row.id}`\r\n const id = `org-minio-${row.id}`\r\n let cached: AllGeoJSON | null = null\r\n\r\n const getFeatures = async (): Promise<AllGeoJSON> => {\r\n if (cached) return cached\r\n const response = await fetch(sourceUrl)\r\n if (!response.ok) {\r\n throw new Error(`Failed to fetch GeoJSON from ${sourceUrl}: ${response.status}`)\r\n }\r\n cached = await response.json() as AllGeoJSON\r\n return cached\r\n }\r\n\r\n const getFields = async () => []\r\n\r\n datasets.push({\r\n id,\r\n name,\r\n type: 'Organizational',\r\n publisher: 'Organizational',\r\n license: 'Unknown',\r\n contact: 'Unknown',\r\n description: `Uploaded ${row.uploadedAt ?? ''}`.trim(),\r\n dateReleased: typeof row.uploadedAt === 'string' ? row.uploadedAt : '',\r\n dateUpdated: typeof row.uploadedAt === 'string' ? row.uploadedAt : '',\r\n countrySubdivision: '',\r\n municipality: '',\r\n sourceUrl,\r\n url: sourceUrl,\r\n clickable: true,\r\n properties: {},\r\n getFeatures,\r\n getFields,\r\n dataManagementSystem: 'other',\r\n datasetType: 'GeoJSON',\r\n group: DatasetGroup.Organizational,\r\n layerColor: layerColorByName(id),\r\n layerType: meta?.geometryType === 'lines'\r\n ? 'line'\r\n : meta?.geometryType === 'points'\r\n ? 'circle'\r\n : meta?.geometryType === 'polygons'\r\n ? 'fill'\r\n : undefined,\r\n })\r\n }\r\n\r\n return datasets\r\n}\r\n"],"mappings":"AAIA,SAAS,oBAAoB;AAC7B,SAAS,wBAAwB;AA8BjC,MAAM,MAAM;AAEZ,SAAS,iBAAiB,OAAgE;AACxF,MAAI,CAAC,MAAO,QAAO;AACnB,MAAI;AACF,UAAM,SAAS,KAAK,MAAM,KAAK;AAC/B,WAAO,OAAO,WAAW,YAAY,WAAW,OAAO,SAAkC;AAAA,EAC3F,SACM;AACJ,WAAO;AAAA,EACT;AACF;AAEA,SAAS,cAAc,MAAc,QAAgB,gBAAwB,SAAyB;AACpG,SAAO,GAAG,KAAK,QAAQ,QAAQ,EAAE,CAAC,IAAI,MAAM,IAAI,cAAc,IAAI,OAAO;AAC3E;AAEA,eAAsB,iCACpB,gBACA,0BAA+C,oBAAI,IAAI,GACvD,UACoB;AAxDtB;AAyDE,MAAI,OAAqB,CAAC;AAC1B,MAAI;AACF,UAAM,MAAM,MAAM,MAAM,YAAY;AACpC,QAAI,CAAC,IAAI,IAAI;AACX,cAAQ,KAAK,yDAAyD,IAAI,MAAM,EAAE;AAClF,aAAO,CAAC;AAAA,IACV;AACA,UAAM,OAAO,MAAM,IAAI,KAAK;AAC5B,WAAO,MAAM,QAAQ,6BAAM,KAAK,IAAI,KAAK,QAAQ,CAAC;AAAA,EACpD,SACO,KAAK;AACV,YAAQ,KAAK,+DAA+D,GAAG;AAC/E,WAAO,CAAC;AAAA,EACV;AAEA,QAAM,WAAsB,CAAC;AAC7B,aAAW,OAAO,MAAM;AACtB,QAAI,IAAI,SAAS,WAAY;AAC7B,QAAI,IAAI,QAAQ,IAAK;AACrB,QAAI,CAAC,IAAI,QAAS;AAElB,UAAM,OAAO,iBAAiB,IAAI,WAAW;AAK7C,SAAI,6BAAM,eAAc,wBAAwB,IAAI,KAAK,UAAU,EAAG;AACtE,UAAM,SAAS,6BAAM;AACrB,QAAI,CAAC,OAAQ;AAEb,UAAM,YAAY,WAAW,cAAc,UAAU,QAAQ,gBAAgB,IAAI,OAAO,IAAI;AAC5F,QAAI,CAAC,UAAW;AAEhB,UAAM,SAAO,SAAI,SAAJ,mBAAU,QAAQ,eAAe,QAAO,WAAW,IAAI,EAAE;AACtE,UAAM,KAAK,aAAa,IAAI,EAAE;AAC9B,QAAI,SAA4B;AAEhC,UAAM,cAAc,YAAiC;AACnD,UAAI,OAAQ,QAAO;AACnB,YAAM,WAAW,MAAM,MAAM,SAAS;AACtC,UAAI,CAAC,SAAS,IAAI;AAChB,cAAM,IAAI,MAAM,gCAAgC,SAAS,KAAK,SAAS,MAAM,EAAE;AAAA,MACjF;AACA,eAAS,MAAM,SAAS,KAAK;AAC7B,aAAO;AAAA,IACT;AAEA,UAAM,YAAY,YAAY,CAAC;AAE/B,aAAS,KAAK;AAAA,MACZ;AAAA,MACA;AAAA,MACA,MAAM;AAAA,MACN,WAAW;AAAA,MACX,SAAS;AAAA,MACT,SAAS;AAAA,MACT,aAAa,aAAY,SAAI,eAAJ,YAAkB,EAAE,GAAG,KAAK;AAAA,MACrD,cAAc,OAAO,IAAI,eAAe,WAAW,IAAI,aAAa;AAAA,MACpE,aAAa,OAAO,IAAI,eAAe,WAAW,IAAI,aAAa;AAAA,MACnE,oBAAoB;AAAA,MACpB,cAAc;AAAA,MACd;AAAA,MACA,KAAK;AAAA,MACL,WAAW;AAAA,MACX,YAAY,CAAC;AAAA,MACb;AAAA,MACA;AAAA,MACA,sBAAsB;AAAA,MACtB,aAAa;AAAA,MACb,OAAO,aAAa;AAAA,MACpB,YAAY,iBAAiB,EAAE;AAAA,MAC/B,YAAW,6BAAM,kBAAiB,UAC9B,UACA,6BAAM,kBAAiB,WACrB,YACA,6BAAM,kBAAiB,aACrB,SACA;AAAA,IACV,CAAC;AAAA,EACH;AAEA,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../../../../../src/core/components/viewers/map/datasets/src/minioDatasets.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport { DatasetGroup } from '../../../../../types/dbTypes'\r\nimport { layerColorByName } from '../../utils/stringToColour'\r\n\r\nimport type { Dataset } from '../../../../../types/datasetTypes'\r\nimport type { AllGeoJSON } from '@turf/turf'\r\n\r\n/**\r\n * Hydrates uploaded GeoJSON datasets persisted via \"Add Dataset\". Looks up\r\n * File rows tagged `organizational-dataset`, reads the bucket from each row's\r\n * description JSON, and builds Dataset entries whose `getFeatures` lazy-loads\r\n * the GeoJSON from MinIO on first render.\r\n */\r\n\r\ninterface OrgDatasetDescription {\r\n bucket?: string\r\n geometryType?: 'points' | 'lines' | 'polygons'\r\n layerStyles?: Record<string, Record<string, string | number>>\r\n tiledTable?: string\r\n tiledAt?: string\r\n featuresIngested?: number\r\n featuresSkipped?: number\r\n}\r\n\r\ninterface RawFileRow {\r\n id: number\r\n type?: string | null\r\n tag?: string | null\r\n name?: string | null\r\n assetId?: string | null\r\n description?: string | null\r\n uploadedAt?: string | Date | null\r\n}\r\n\r\nconst TAG = 'organizational-dataset'\r\n\r\nfunction parseDescription(value: string | null | undefined): OrgDatasetDescription | null {\r\n if (!value) return null\r\n try {\r\n const parsed = JSON.parse(value)\r\n return typeof parsed === 'object' && parsed !== null ? parsed as OrgDatasetDescription : null\r\n }\r\n catch {\r\n return null\r\n }\r\n}\r\n\r\nfunction buildMinioUrl(base: string, bucket: string, organizationId: number, assetId: string): string {\r\n return `${base.replace(/\\/+$/, '')}/${bucket}/${organizationId}/${assetId}`\r\n}\r\n\r\nexport async function fetchOrganizationalMinioDatasets(\r\n organizationId: number,\r\n publishedTilesInCatalog: ReadonlySet<string> = new Set(),\r\n minioUrl?: string,\r\n): Promise<Dataset[]> {\r\n let rows: RawFileRow[] = []\r\n try {\r\n const res = await fetch('/api/files')\r\n if (!res.ok) {\r\n console.warn(`fetchOrganizationalMinioDatasets: /api/files returned ${res.status}`)\r\n return []\r\n }\r\n const body = await res.json()\r\n rows = Array.isArray(body?.files) ? body.files : []\r\n }\r\n catch (err) {\r\n console.warn('fetchOrganizationalMinioDatasets: /api/files request failed', err)\r\n return []\r\n }\r\n\r\n const datasets: Dataset[] = []\r\n for (const row of rows) {\r\n if (row.type !== 'map-file') continue\r\n if (row.tag !== TAG) continue\r\n if (!row.assetId) continue\r\n\r\n const meta = parseDescription(row.description)\r\n // Suppress the MinIO entry only once Martin actually serves the published\r\n // table — otherwise the file appears to vanish during the publish→restart\r\n // gap. Un-publish drops the table immediately, so the MinIO row reappears\r\n // on next reload with no extra plumbing.\r\n if (meta?.tiledTable && publishedTilesInCatalog.has(meta.tiledTable)) continue\r\n const bucket = meta?.bucket\r\n if (!bucket) continue\r\n\r\n const sourceUrl = minioUrl ? buildMinioUrl(minioUrl, bucket, organizationId, row.assetId) : null\r\n if (!sourceUrl) continue\r\n\r\n const name = row.name?.replace(/\\.geojson$/i, '') || `Dataset ${row.id}`\r\n const id = `org-minio-${row.id}`\r\n let cached: AllGeoJSON | null = null\r\n\r\n const getFeatures = async (): Promise<AllGeoJSON> => {\r\n if (cached) return cached\r\n const response = await fetch(sourceUrl)\r\n if (!response.ok) {\r\n throw new Error(`Failed to fetch GeoJSON from ${sourceUrl}: ${response.status}`)\r\n }\r\n cached = await response.json() as AllGeoJSON\r\n return cached\r\n }\r\n\r\n const getFields = async () => []\r\n\r\n datasets.push({\r\n id,\r\n name,\r\n type: 'Organizational',\r\n publisher: 'Organizational',\r\n license: 'Unknown',\r\n contact: 'Unknown',\r\n description: `Uploaded ${row.uploadedAt ?? ''}`.trim(),\r\n dateReleased: typeof row.uploadedAt === 'string' ? row.uploadedAt : '',\r\n dateUpdated: typeof row.uploadedAt === 'string' ? row.uploadedAt : '',\r\n countrySubdivision: '',\r\n municipality: '',\r\n sourceUrl,\r\n url: sourceUrl,\r\n clickable: true,\r\n properties: {},\r\n getFeatures,\r\n getFields,\r\n dataManagementSystem: 'other',\r\n datasetType: 'GeoJSON',\r\n group: DatasetGroup.Organizational,\r\n layerColor: layerColorByName(id),\r\n layerType: meta?.geometryType === 'lines'\r\n ? 'line'\r\n : meta?.geometryType === 'points'\r\n ? 'circle'\r\n : meta?.geometryType === 'polygons'\r\n ? 'fill'\r\n : undefined,\r\n })\r\n }\r\n\r\n return datasets\r\n}\r\n"],"mappings":"AAGA,SAAS,oBAAoB;AAC7B,SAAS,wBAAwB;AAgCjC,MAAM,MAAM;AAEZ,SAAS,iBAAiB,OAAgE;AACxF,MAAI,CAAC,MAAO,QAAO;AACnB,MAAI;AACF,UAAM,SAAS,KAAK,MAAM,KAAK;AAC/B,WAAO,OAAO,WAAW,YAAY,WAAW,OAAO,SAAkC;AAAA,EAC3F,SACM;AACJ,WAAO;AAAA,EACT;AACF;AAEA,SAAS,cAAc,MAAc,QAAgB,gBAAwB,SAAyB;AACpG,SAAO,GAAG,KAAK,QAAQ,QAAQ,EAAE,CAAC,IAAI,MAAM,IAAI,cAAc,IAAI,OAAO;AAC3E;AAEA,eAAsB,iCACpB,gBACA,0BAA+C,oBAAI,IAAI,GACvD,UACoB;AAzDtB;AA0DE,MAAI,OAAqB,CAAC;AAC1B,MAAI;AACF,UAAM,MAAM,MAAM,MAAM,YAAY;AACpC,QAAI,CAAC,IAAI,IAAI;AACX,cAAQ,KAAK,yDAAyD,IAAI,MAAM,EAAE;AAClF,aAAO,CAAC;AAAA,IACV;AACA,UAAM,OAAO,MAAM,IAAI,KAAK;AAC5B,WAAO,MAAM,QAAQ,6BAAM,KAAK,IAAI,KAAK,QAAQ,CAAC;AAAA,EACpD,SACO,KAAK;AACV,YAAQ,KAAK,+DAA+D,GAAG;AAC/E,WAAO,CAAC;AAAA,EACV;AAEA,QAAM,WAAsB,CAAC;AAC7B,aAAW,OAAO,MAAM;AACtB,QAAI,IAAI,SAAS,WAAY;AAC7B,QAAI,IAAI,QAAQ,IAAK;AACrB,QAAI,CAAC,IAAI,QAAS;AAElB,UAAM,OAAO,iBAAiB,IAAI,WAAW;AAK7C,SAAI,6BAAM,eAAc,wBAAwB,IAAI,KAAK,UAAU,EAAG;AACtE,UAAM,SAAS,6BAAM;AACrB,QAAI,CAAC,OAAQ;AAEb,UAAM,YAAY,WAAW,cAAc,UAAU,QAAQ,gBAAgB,IAAI,OAAO,IAAI;AAC5F,QAAI,CAAC,UAAW;AAEhB,UAAM,SAAO,SAAI,SAAJ,mBAAU,QAAQ,eAAe,QAAO,WAAW,IAAI,EAAE;AACtE,UAAM,KAAK,aAAa,IAAI,EAAE;AAC9B,QAAI,SAA4B;AAEhC,UAAM,cAAc,YAAiC;AACnD,UAAI,OAAQ,QAAO;AACnB,YAAM,WAAW,MAAM,MAAM,SAAS;AACtC,UAAI,CAAC,SAAS,IAAI;AAChB,cAAM,IAAI,MAAM,gCAAgC,SAAS,KAAK,SAAS,MAAM,EAAE;AAAA,MACjF;AACA,eAAS,MAAM,SAAS,KAAK;AAC7B,aAAO;AAAA,IACT;AAEA,UAAM,YAAY,YAAY,CAAC;AAE/B,aAAS,KAAK;AAAA,MACZ;AAAA,MACA;AAAA,MACA,MAAM;AAAA,MACN,WAAW;AAAA,MACX,SAAS;AAAA,MACT,SAAS;AAAA,MACT,aAAa,aAAY,SAAI,eAAJ,YAAkB,EAAE,GAAG,KAAK;AAAA,MACrD,cAAc,OAAO,IAAI,eAAe,WAAW,IAAI,aAAa;AAAA,MACpE,aAAa,OAAO,IAAI,eAAe,WAAW,IAAI,aAAa;AAAA,MACnE,oBAAoB;AAAA,MACpB,cAAc;AAAA,MACd;AAAA,MACA,KAAK;AAAA,MACL,WAAW;AAAA,MACX,YAAY,CAAC;AAAA,MACb;AAAA,MACA;AAAA,MACA,sBAAsB;AAAA,MACtB,aAAa;AAAA,MACb,OAAO,aAAa;AAAA,MACpB,YAAY,iBAAiB,EAAE;AAAA,MAC/B,YAAW,6BAAM,kBAAiB,UAC9B,UACA,6BAAM,kBAAiB,WACrB,YACA,6BAAM,kBAAiB,aACrB,SACA;AAAA,IACV,CAAC;AAAA,EACH;AAEA,SAAO;AACT;","names":[]}
@@ -1,4 +1,4 @@
1
1
  import type { Dataset } from '../../../../../types/datasetTypes';
2
- import { OpenDataPortal } from '../../../../../types/dbTypes';
2
+ import type { OpenDataPortal } from '../../../../../types/dbTypes';
3
3
  export declare function fetchOpenDataSoftDatasets(portal: OpenDataPortal): Promise<Dataset[]>;
4
4
  //# sourceMappingURL=opendatasoftDatasets.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"opendatasoftDatasets.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/components/viewers/map/datasets/src/opendatasoftDatasets.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAA;AAMhE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAG7D,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,OAAO,EAAE,CAAC,CAsSpB"}
1
+ {"version":3,"file":"opendatasoftDatasets.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/components/viewers/map/datasets/src/opendatasoftDatasets.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAA;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAIlE,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,OAAO,EAAE,CAAC,CAsSpB"}
@@ -14,9 +14,9 @@ var __spreadValues = (a, b) => {
14
14
  }
15
15
  return a;
16
16
  };
17
+ import { layerColorByName } from "../../utils/stringToColour";
17
18
  import { formatDate, formatName, stripHtml } from "../utils";
18
19
  import { buildValidationKey, getCache, setCache, withCache } from "./cache";
19
- import { layerColorByName } from "../../utils/stringToColour";
20
20
  async function fetchOpenDataSoftDatasets(portal) {
21
21
  const { apiUrl, countrySubdivision, municipality, group } = portal;
22
22
  const baseUrl = apiUrl.replace(/\/$/, "");
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/core/components/viewers/map/datasets/src/opendatasoftDatasets.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport type { Dataset } from '../../../../../types/datasetTypes'\r\nimport { formatDate, formatName, stripHtml } from '../utils'\r\n\r\nimport type { AllGeoJSON } from '@turf/turf'\r\nimport { buildValidationKey, getCache, setCache, withCache } from './cache'\r\nimport { layerColorByName } from '../../utils/stringToColour'\r\nimport { OpenDataPortal } from '../../../../../types/dbTypes'\r\n\r\n// Fetch OpenDataSoft datasets and transform to Dataset array\r\nexport async function fetchOpenDataSoftDatasets(\r\n portal: OpenDataPortal,\r\n): Promise<Dataset[]> {\r\n const { apiUrl, countrySubdivision, municipality, group } = portal\r\n const baseUrl = apiUrl.replace(/\\/$/, '')\r\n const catalogBase = `${baseUrl}/catalog`\r\n const isServer = typeof window === 'undefined'\r\n\r\n const buildUrl = (target: string) => {\r\n if (isServer) {\r\n return target\r\n }\r\n return `/api/opendatasoftProxy?url=${encodeURIComponent(target)}`\r\n }\r\n\r\n try {\r\n let allDatasets: any[] = []\r\n let offset = 0\r\n let totalCount = 0\r\n\r\n do {\r\n const catalogUrl = `${catalogBase}/datasets?limit=100&offset=${offset}`\r\n const response = await fetch(buildUrl(catalogUrl))\r\n\r\n if (!response.ok) {\r\n console.error(`OpenDataSoft API error for ${portal.name}:`, response.status, response.statusText)\r\n throw new Error(`HTTP error! status: ${response.status}`)\r\n }\r\n\r\n const data = await response.json()\r\n\r\n // More flexible response structure handling\r\n if (!data) {\r\n throw new Error('Empty response from OpenDataSoft API')\r\n }\r\n\r\n // Handle different possible response structures\r\n let results: any[] = []\r\n let total = 0\r\n\r\n if (data.results && Array.isArray(data.results)) {\r\n // Standard OpenDataSoft v2 API response\r\n results = data.results\r\n total = data.total_count || data.nhits || 0\r\n }\r\n else if (data.datasets && Array.isArray(data.datasets)) {\r\n // Alternative response structure\r\n results = data.datasets\r\n total = data.total || data.count || 0\r\n }\r\n else if (Array.isArray(data)) {\r\n // Direct array response\r\n results = data\r\n total = data.length\r\n }\r\n else {\r\n // Log the actual structure for debugging\r\n console.error('Unexpected response structure:', Object.keys(data))\r\n throw new Error(\r\n `Invalid OpenDataSoft response structure. Expected 'results' array, got: ${Object.keys(\r\n data,\r\n ).join(', ')}`,\r\n )\r\n }\r\n allDatasets = allDatasets.concat(results)\r\n totalCount = total\r\n offset += 100\r\n\r\n // Safety check to prevent infinite loops\r\n if (results.length === 0) {\r\n break\r\n }\r\n } while (offset < totalCount)\r\n\r\n const transformedDatasets: Dataset[] = (await Promise.all(allDatasets.map(async (dataset: any) => {\r\n const metas = dataset.metas?.default || {}\r\n const custom = dataset.metas?.custom || {}\r\n const datasetId = dataset.dataset_id || dataset.id || ''\r\n const datasetModified = metas.modified || dataset.modified || undefined\r\n\r\n const datasetBaseUrl = `${catalogBase}/datasets/${datasetId}`\r\n const recordsBaseUrl = `${datasetBaseUrl}/records`\r\n\r\n const validKey = buildValidationKey('opendatasoft', datasetId, datasetModified)\r\n const isValid = await withCache<boolean>(validKey, 24 * 60 * 60 * 1000, async () => {\r\n try {\r\n const sampleUrl = `${recordsBaseUrl}?limit=1`\r\n const sampleRes = await fetch(buildUrl(sampleUrl))\r\n if (sampleRes.ok) {\r\n const sample = await sampleRes.json()\r\n if (sample?.error) {\r\n const code = sample.error.code\r\n const msg = `${sample.error.message || ''}`\r\n console.warn(`⚠️ OpenDataSoft validation: Dataset \"${datasetId}\" returned error:`, { code, msg })\r\n if ([401, 403, 499, 504].includes(code) || /unauthorized|forbidden|token required|timed out/i.test(msg)) return false\r\n // Even if there's an error, allow the dataset through - getFeatures will handle it\r\n return true\r\n }\r\n // If response is OK, check if it has geometry\r\n const recs = sample.records || sample.results || [];\r\n const hasGeom = Array.isArray(recs)\r\n ? recs.some((r: any) => !!r?.geometry || !!r?.geom || !!r?.geo_shape || !!r?.geo_point_2d)\r\n : false\r\n console.log(`ℹ️ OpenDataSoft validation: Dataset \"${datasetId}\" has geometry: ${hasGeom}, records: ${recs.length}`)\r\n // Allow through even if no geometry - user might want to see the dataset\r\n return true\r\n }\r\n else if ([401, 403, 504].includes(sampleRes.status)) {\r\n console.error(`❌ OpenDataSoft validation: Dataset \"${datasetId}\" auth/timeout error: ${sampleRes.status}`)\r\n return false\r\n }\r\n else {\r\n console.warn(`⚠️ OpenDataSoft validation: Dataset \"${datasetId}\" validation request failed: ${sampleRes.status}`)\r\n // Allow through on other errors\r\n return true\r\n }\r\n }\r\n catch (error) {\r\n console.error(`❌ OpenDataSoft validation: Dataset \"${datasetId}\" validation failed:`, error)\r\n // Allow through on network errors - getFeatures will handle it\r\n return true\r\n }\r\n })\r\n\r\n if (!isValid) {\r\n console.log(`🗑️ OpenDataSoft: Filtering out dataset \"${datasetId}\" - validation failed`)\r\n return null\r\n }\r\n\r\n // Self-contained getFields\r\n const getFields = async () => {\r\n const fieldsKey = `fields:opendatasoft:${datasetId}:${datasetModified ?? ''}`\r\n const cached = getCache<any[]>(fieldsKey)\r\n if (cached) return cached\r\n const fieldsUrl = `${datasetBaseUrl}`\r\n const response = await fetch(buildUrl(fieldsUrl))\r\n if (!response.ok) return []\r\n const data = await response.json()\r\n const fields = (data.metas?.default?.fields || data.fields || []).map((field: any) => ({\r\n name: field.name,\r\n label: field.label || field.name,\r\n type: field.type,\r\n description: field.description || '',\r\n }))\r\n setCache(fieldsKey, fields, 24 * 60 * 60 * 1000)\r\n return fields\r\n }\r\n\r\n // Self-contained getFeatures with caching\r\n const getFeatures = async (): Promise<AllGeoJSON> => {\r\n const featuresKey = `features:opendatasoft:${datasetId}:${datasetModified ?? ''}`\r\n const cached = getCache<AllGeoJSON>(featuresKey)\r\n if (cached) {\r\n const cachedCount = 'features' in cached ? cached.features?.length ?? 0 : 0\r\n console.log(`✅ OpenDataSoft getFeatures: Returning ${cachedCount} cached features for dataset \"${datasetId}\"`)\r\n return cached\r\n }\r\n\r\n try {\r\n const features: any[] = []\r\n let offset = 0\r\n let totalCount = 0\r\n const maxFeatures = 5_000\r\n\r\n console.log(`🔍 OpenDataSoft getFeatures: Starting fetch for dataset \"${datasetId}\"`)\r\n\r\n do {\r\n const recordsUrl = `${recordsBaseUrl}?limit=100&offset=${offset}`\r\n console.log(`📡 OpenDataSoft: Fetching ${recordsUrl}`)\r\n const response = await fetch(buildUrl(recordsUrl))\r\n if (!response.ok) {\r\n console.error(`❌ OpenDataSoft: Failed to fetch records - status ${response.status}`, {\r\n url: recordsUrl,\r\n statusText: response.statusText,\r\n })\r\n break\r\n }\r\n let data;\r\n try {\r\n data = await response.json()\r\n } catch (parseError) {\r\n console.error(`❌ OpenDataSoft: Failed to parse JSON response:`, parseError)\r\n break\r\n }\r\n console.log(`📦 OpenDataSoft: Received data, records count: ${data.records?.length || 0}, data keys:`, Object.keys(data || {}))\r\n\r\n if (offset === 0) {\r\n totalCount = Math.min(data.total_count || data.nhits || 0, maxFeatures)\r\n }\r\n\r\n const recArray: any[] = data.records || data.results || [];\r\n if (Array.isArray(recArray)) {\r\n recArray.forEach((record: any) => {\r\n if (features.length >= maxFeatures) return;\r\n\r\n // Extract geometry from possible fields\r\n let geom: any = null;\r\n if (record.geometry) {\r\n geom = record.geometry;\r\n } else if (record.geom) {\r\n geom = record.geom.type === 'Feature' && record.geom.geometry ? record.geom.geometry : record.geom;\r\n } else if (record.geo_shape) {\r\n geom = record.geo_shape;\r\n } else if (record.geo_point_2d && typeof record.geo_point_2d.lat === 'number' && typeof record.geo_point_2d.lon === 'number') {\r\n geom = { type: 'Point', coordinates: [record.geo_point_2d.lon, record.geo_point_2d.lat] };\r\n }\r\n\r\n if (geom) {\r\n const props: any = { ...record };\r\n delete props.geometry;\r\n delete props.geom;\r\n delete props.geo_shape;\r\n delete props.geo_point_2d;\r\n\r\n features.push({\r\n type: 'Feature',\r\n geometry: geom,\r\n properties: props,\r\n });\r\n }\r\n });\r\n }\r\n\r\n offset += 100\r\n const fetchedCount = recArray.length;\r\n if (fetchedCount === 0 || features.length >= maxFeatures) break\r\n } while (offset < totalCount)\r\n\r\n console.log(`✅ OpenDataSoft getFeatures: Returning ${features.length} features for dataset \"${datasetId}\"`)\r\n\r\n const result = {\r\n type: 'FeatureCollection',\r\n features,\r\n } as AllGeoJSON\r\n\r\n // Cache the result for 1 hour\r\n setCache(featuresKey, result, 60 * 60 * 1000)\r\n\r\n return result\r\n } catch (error) {\r\n console.error(`❌ OpenDataSoft getFeatures: Error fetching features for dataset \"${datasetId}\":`, error)\r\n // Return empty feature collection on error instead of throwing\r\n return {\r\n type: 'FeatureCollection',\r\n features: [],\r\n } as AllGeoJSON\r\n }\r\n }\r\n\r\n const name = formatName(metas.title || dataset.title || datasetId)\r\n\r\n return {\r\n id: datasetId,\r\n name,\r\n publisher:\r\n metas.publisher\r\n || custom['data-owner']?.[0]\r\n || dataset.publisher\r\n || 'Unknown',\r\n dataManagementSystem: 'Opendatasoft',\r\n license: metas.license || dataset.license || 'Unknown',\r\n contact: custom['data-team']?.[0] || dataset.contact || 'Unknown',\r\n keywords: metas.keyword || dataset.keywords || [],\r\n description: stripHtml(\r\n metas.description || dataset.description || 'No description available',\r\n ),\r\n dateReleased: metas.created\r\n ? formatDate(metas.created)\r\n : (dataset.created\r\n ? formatDate(dataset.created)\r\n : ''),\r\n dateUpdated: metas.modified\r\n ? formatDate(metas.modified)\r\n : (dataset.modified\r\n ? formatDate(dataset.modified)\r\n : ''),\r\n information: `${apiUrl}/explore/dataset/${datasetId}/`,\r\n countrySubdivision,\r\n municipality,\r\n type: portal.name,\r\n datasetType: dataset.type || 'GeoJSON',\r\n portal,\r\n getFields,\r\n getFeatures,\r\n group,\r\n layerColor: layerColorByName(name),\r\n }\r\n })))\r\n .filter(Boolean) as Dataset[]\r\n\r\n return transformedDatasets\r\n }\r\n catch (error) {\r\n console.error(`Error fetching OpenDataSoft datasets for ${portal.name}:`, error)\r\n return []\r\n }\r\n}\r\n"],"mappings":"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","names":["_a","_b","_c","offset","totalCount"]}
1
+ {"version":3,"sources":["../../../../../../../src/core/components/viewers/map/datasets/src/opendatasoftDatasets.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport { layerColorByName } from '../../utils/stringToColour'\r\nimport { formatDate, formatName, stripHtml } from '../utils'\r\n\r\nimport { buildValidationKey, getCache, setCache, withCache } from './cache'\r\n\r\nimport type { Dataset } from '../../../../../types/datasetTypes'\r\nimport type { OpenDataPortal } from '../../../../../types/dbTypes'\r\nimport type { AllGeoJSON } from '@turf/turf'\r\n\r\n// Fetch OpenDataSoft datasets and transform to Dataset array\r\nexport async function fetchOpenDataSoftDatasets(\r\n portal: OpenDataPortal,\r\n): Promise<Dataset[]> {\r\n const { apiUrl, countrySubdivision, municipality, group } = portal\r\n const baseUrl = apiUrl.replace(/\\/$/, '')\r\n const catalogBase = `${baseUrl}/catalog`\r\n const isServer = typeof window === 'undefined'\r\n\r\n const buildUrl = (target: string) => {\r\n if (isServer) {\r\n return target\r\n }\r\n return `/api/opendatasoftProxy?url=${encodeURIComponent(target)}`\r\n }\r\n\r\n try {\r\n let allDatasets: any[] = []\r\n let offset = 0\r\n let totalCount = 0\r\n\r\n do {\r\n const catalogUrl = `${catalogBase}/datasets?limit=100&offset=${offset}`\r\n const response = await fetch(buildUrl(catalogUrl))\r\n\r\n if (!response.ok) {\r\n console.error(`OpenDataSoft API error for ${portal.name}:`, response.status, response.statusText)\r\n throw new Error(`HTTP error! status: ${response.status}`)\r\n }\r\n\r\n const data = await response.json()\r\n\r\n // More flexible response structure handling\r\n if (!data) {\r\n throw new Error('Empty response from OpenDataSoft API')\r\n }\r\n\r\n // Handle different possible response structures\r\n let results: any[] = []\r\n let total = 0\r\n\r\n if (data.results && Array.isArray(data.results)) {\r\n // Standard OpenDataSoft v2 API response\r\n results = data.results\r\n total = data.total_count || data.nhits || 0\r\n }\r\n else if (data.datasets && Array.isArray(data.datasets)) {\r\n // Alternative response structure\r\n results = data.datasets\r\n total = data.total || data.count || 0\r\n }\r\n else if (Array.isArray(data)) {\r\n // Direct array response\r\n results = data\r\n total = data.length\r\n }\r\n else {\r\n // Log the actual structure for debugging\r\n console.error('Unexpected response structure:', Object.keys(data))\r\n throw new Error(\r\n `Invalid OpenDataSoft response structure. Expected 'results' array, got: ${Object.keys(\r\n data,\r\n ).join(', ')}`,\r\n )\r\n }\r\n allDatasets = allDatasets.concat(results)\r\n totalCount = total\r\n offset += 100\r\n\r\n // Safety check to prevent infinite loops\r\n if (results.length === 0) {\r\n break\r\n }\r\n } while (offset < totalCount)\r\n\r\n const transformedDatasets: Dataset[] = (await Promise.all(allDatasets.map(async (dataset: any) => {\r\n const metas = dataset.metas?.default || {}\r\n const custom = dataset.metas?.custom || {}\r\n const datasetId = dataset.dataset_id || dataset.id || ''\r\n const datasetModified = metas.modified || dataset.modified || undefined\r\n\r\n const datasetBaseUrl = `${catalogBase}/datasets/${datasetId}`\r\n const recordsBaseUrl = `${datasetBaseUrl}/records`\r\n\r\n const validKey = buildValidationKey('opendatasoft', datasetId, datasetModified)\r\n const isValid = await withCache<boolean>(validKey, 24 * 60 * 60 * 1000, async () => {\r\n try {\r\n const sampleUrl = `${recordsBaseUrl}?limit=1`\r\n const sampleRes = await fetch(buildUrl(sampleUrl))\r\n if (sampleRes.ok) {\r\n const sample = await sampleRes.json()\r\n if (sample?.error) {\r\n const code = sample.error.code\r\n const msg = `${sample.error.message || ''}`\r\n console.warn(`⚠️ OpenDataSoft validation: Dataset \"${datasetId}\" returned error:`, { code, msg })\r\n if ([401, 403, 499, 504].includes(code) || /unauthorized|forbidden|token required|timed out/i.test(msg)) return false\r\n // Even if there's an error, allow the dataset through - getFeatures will handle it\r\n return true\r\n }\r\n // If response is OK, check if it has geometry\r\n const recs = sample.records || sample.results || [];\r\n const hasGeom = Array.isArray(recs)\r\n ? recs.some((r: any) => !!r?.geometry || !!r?.geom || !!r?.geo_shape || !!r?.geo_point_2d)\r\n : false\r\n console.log(`ℹ️ OpenDataSoft validation: Dataset \"${datasetId}\" has geometry: ${hasGeom}, records: ${recs.length}`)\r\n // Allow through even if no geometry - user might want to see the dataset\r\n return true\r\n }\r\n else if ([401, 403, 504].includes(sampleRes.status)) {\r\n console.error(`❌ OpenDataSoft validation: Dataset \"${datasetId}\" auth/timeout error: ${sampleRes.status}`)\r\n return false\r\n }\r\n else {\r\n console.warn(`⚠️ OpenDataSoft validation: Dataset \"${datasetId}\" validation request failed: ${sampleRes.status}`)\r\n // Allow through on other errors\r\n return true\r\n }\r\n }\r\n catch (error) {\r\n console.error(`❌ OpenDataSoft validation: Dataset \"${datasetId}\" validation failed:`, error)\r\n // Allow through on network errors - getFeatures will handle it\r\n return true\r\n }\r\n })\r\n\r\n if (!isValid) {\r\n console.log(`🗑️ OpenDataSoft: Filtering out dataset \"${datasetId}\" - validation failed`)\r\n return null\r\n }\r\n\r\n // Self-contained getFields\r\n const getFields = async () => {\r\n const fieldsKey = `fields:opendatasoft:${datasetId}:${datasetModified ?? ''}`\r\n const cached = getCache<any[]>(fieldsKey)\r\n if (cached) return cached\r\n const fieldsUrl = `${datasetBaseUrl}`\r\n const response = await fetch(buildUrl(fieldsUrl))\r\n if (!response.ok) return []\r\n const data = await response.json()\r\n const fields = (data.metas?.default?.fields || data.fields || []).map((field: any) => ({\r\n name: field.name,\r\n label: field.label || field.name,\r\n type: field.type,\r\n description: field.description || '',\r\n }))\r\n setCache(fieldsKey, fields, 24 * 60 * 60 * 1000)\r\n return fields\r\n }\r\n\r\n // Self-contained getFeatures with caching\r\n const getFeatures = async (): Promise<AllGeoJSON> => {\r\n const featuresKey = `features:opendatasoft:${datasetId}:${datasetModified ?? ''}`\r\n const cached = getCache<AllGeoJSON>(featuresKey)\r\n if (cached) {\r\n const cachedCount = 'features' in cached ? cached.features?.length ?? 0 : 0\r\n console.log(`✅ OpenDataSoft getFeatures: Returning ${cachedCount} cached features for dataset \"${datasetId}\"`)\r\n return cached\r\n }\r\n\r\n try {\r\n const features: any[] = []\r\n let offset = 0\r\n let totalCount = 0\r\n const maxFeatures = 5_000\r\n\r\n console.log(`🔍 OpenDataSoft getFeatures: Starting fetch for dataset \"${datasetId}\"`)\r\n\r\n do {\r\n const recordsUrl = `${recordsBaseUrl}?limit=100&offset=${offset}`\r\n console.log(`📡 OpenDataSoft: Fetching ${recordsUrl}`)\r\n const response = await fetch(buildUrl(recordsUrl))\r\n if (!response.ok) {\r\n console.error(`❌ OpenDataSoft: Failed to fetch records - status ${response.status}`, {\r\n url: recordsUrl,\r\n statusText: response.statusText,\r\n })\r\n break\r\n }\r\n let data;\r\n try {\r\n data = await response.json()\r\n } catch (parseError) {\r\n console.error(`❌ OpenDataSoft: Failed to parse JSON response:`, parseError)\r\n break\r\n }\r\n console.log(`📦 OpenDataSoft: Received data, records count: ${data.records?.length || 0}, data keys:`, Object.keys(data || {}))\r\n\r\n if (offset === 0) {\r\n totalCount = Math.min(data.total_count || data.nhits || 0, maxFeatures)\r\n }\r\n\r\n const recArray: any[] = data.records || data.results || [];\r\n if (Array.isArray(recArray)) {\r\n recArray.forEach((record: any) => {\r\n if (features.length >= maxFeatures) return;\r\n\r\n // Extract geometry from possible fields\r\n let geom: any = null;\r\n if (record.geometry) {\r\n geom = record.geometry;\r\n } else if (record.geom) {\r\n geom = record.geom.type === 'Feature' && record.geom.geometry ? record.geom.geometry : record.geom;\r\n } else if (record.geo_shape) {\r\n geom = record.geo_shape;\r\n } else if (record.geo_point_2d && typeof record.geo_point_2d.lat === 'number' && typeof record.geo_point_2d.lon === 'number') {\r\n geom = { type: 'Point', coordinates: [record.geo_point_2d.lon, record.geo_point_2d.lat] };\r\n }\r\n\r\n if (geom) {\r\n const props: any = { ...record };\r\n delete props.geometry;\r\n delete props.geom;\r\n delete props.geo_shape;\r\n delete props.geo_point_2d;\r\n\r\n features.push({\r\n type: 'Feature',\r\n geometry: geom,\r\n properties: props,\r\n });\r\n }\r\n });\r\n }\r\n\r\n offset += 100\r\n const fetchedCount = recArray.length;\r\n if (fetchedCount === 0 || features.length >= maxFeatures) break\r\n } while (offset < totalCount)\r\n\r\n console.log(`✅ OpenDataSoft getFeatures: Returning ${features.length} features for dataset \"${datasetId}\"`)\r\n\r\n const result = {\r\n type: 'FeatureCollection',\r\n features,\r\n } as AllGeoJSON\r\n\r\n // Cache the result for 1 hour\r\n setCache(featuresKey, result, 60 * 60 * 1000)\r\n\r\n return result\r\n } catch (error) {\r\n console.error(`❌ OpenDataSoft getFeatures: Error fetching features for dataset \"${datasetId}\":`, error)\r\n // Return empty feature collection on error instead of throwing\r\n return {\r\n type: 'FeatureCollection',\r\n features: [],\r\n } as AllGeoJSON\r\n }\r\n }\r\n\r\n const name = formatName(metas.title || dataset.title || datasetId)\r\n\r\n return {\r\n id: datasetId,\r\n name,\r\n publisher:\r\n metas.publisher\r\n || custom['data-owner']?.[0]\r\n || dataset.publisher\r\n || 'Unknown',\r\n dataManagementSystem: 'Opendatasoft',\r\n license: metas.license || dataset.license || 'Unknown',\r\n contact: custom['data-team']?.[0] || dataset.contact || 'Unknown',\r\n keywords: metas.keyword || dataset.keywords || [],\r\n description: stripHtml(\r\n metas.description || dataset.description || 'No description available',\r\n ),\r\n dateReleased: metas.created\r\n ? formatDate(metas.created)\r\n : (dataset.created\r\n ? formatDate(dataset.created)\r\n : ''),\r\n dateUpdated: metas.modified\r\n ? formatDate(metas.modified)\r\n : (dataset.modified\r\n ? formatDate(dataset.modified)\r\n : ''),\r\n information: `${apiUrl}/explore/dataset/${datasetId}/`,\r\n countrySubdivision,\r\n municipality,\r\n type: portal.name,\r\n datasetType: dataset.type || 'GeoJSON',\r\n portal,\r\n getFields,\r\n getFeatures,\r\n group,\r\n layerColor: layerColorByName(name),\r\n }\r\n })))\r\n .filter(Boolean) as Dataset[]\r\n\r\n return transformedDatasets\r\n }\r\n catch (error) {\r\n console.error(`Error fetching OpenDataSoft datasets for ${portal.name}:`, error)\r\n return []\r\n }\r\n}\r\n"],"mappings":"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","names":["_a","_b","_c","offset","totalCount"]}
@@ -1,5 +1,5 @@
1
- import type { Dataset } from '../../../../../types/datasetTypes';
2
1
  import { type OpenDataPortal } from '../../../../../types/dbTypes';
2
+ import type { Dataset } from '../../../../../types/datasetTypes';
3
3
  /** Tables our publish pipeline creates; served via the cdt_tiles function source. */
4
4
  export declare function isPublishedOrgTable(name: string): boolean;
5
5
  /** What a published open-data dataset resolves to: its Martin table + backing File row. */
@@ -1 +1 @@
1
- {"version":3,"file":"publishedTiles.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/components/viewers/map/datasets/src/publishedTiles.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAqB,MAAM,mCAAmC,CAAA;AACnF,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAIhF,qFAAqF;AACrF,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,2FAA2F;AAC3F,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,UAAU,cAAc;IACtB,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC5B;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CA2BnG;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,GAAG,OAAO,EAAE,CAStG;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC5B;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,gBAAgB,EAAE,EACxB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,cAAc,GACrB,OAAO,EAAE,CAwCX"}
1
+ {"version":3,"file":"publishedTiles.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/components/viewers/map/datasets/src/publishedTiles.ts"],"names":[],"mappings":"AAGA,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAGhF,OAAO,KAAK,EAAE,OAAO,EAAqB,MAAM,mCAAmC,CAAA;AAInF,qFAAqF;AACrF,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,2FAA2F;AAC3F,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,UAAU,cAAc;IACtB,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC5B;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CA2BnG;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,GAAG,OAAO,EAAE,CAStG;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC5B;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,gBAAgB,EAAE,EACxB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,cAAc,GACrB,OAAO,EAAE,CAwCX"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../../src/core/components/viewers/map/datasets/src/publishedTiles.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport type { Dataset, LayerGeometryType } from '../../../../../types/datasetTypes'\r\nimport { DatasetGroup, type OpenDataPortal } from '../../../../../types/dbTypes'\r\nimport type { AllGeoJSON } from '@turf/turf'\r\nimport { layerColorByName } from '../../utils/stringToColour'\r\n\r\n/** Tables our publish pipeline creates; served via the cdt_tiles function source. */\r\nexport function isPublishedOrgTable(name: string): boolean {\r\n return /^org_\\d+_file_\\d+$/.test(name)\r\n}\r\n\r\n/** What a published open-data dataset resolves to: its Martin table + backing File row. */\r\nexport interface PublishedCatalogEntry {\r\n fileId: number\r\n table: string\r\n geometryType?: string\r\n}\r\n\r\ninterface CatalogFileRow {\r\n id?: number | null\r\n assetId?: string | null\r\n description?: string | null\r\n}\r\n\r\n/**\r\n * Build a lookup from `/api/files` of open-data datasets that have already been\r\n * published to Martin tiles, keyed by `\"{portalId}:{datasetId}\"` — the identity\r\n * of the *original* portal dataset.\r\n *\r\n * Catalog publishes mint a File whose `assetId` is `odp:{portalId}:{datasetId}`\r\n * and whose description carries `portalId`/`datasetId` + `tiledTable`. The\r\n * original portal entry (shown on the National/Applied/All tabs) keeps its own\r\n * id, so without this map those tabs cannot tell the dataset is already tiled.\r\n */\r\nexport function buildPublishedCatalogMap(rows: CatalogFileRow[]): Map<string, PublishedCatalogEntry> {\r\n const map = new Map<string, PublishedCatalogEntry>()\r\n for (const row of rows) {\r\n if (typeof row?.id !== 'number' || !row.description) continue\r\n let desc: { source?: unknown, portalId?: unknown, datasetId?: unknown, tiledTable?: unknown, geometryType?: unknown }\r\n try { desc = JSON.parse(row.description) }\r\n catch { continue }\r\n if (desc.source !== 'open-data-portal') continue\r\n const table = typeof desc.tiledTable === 'string' ? desc.tiledTable : null\r\n if (!table) continue\r\n\r\n // Prefer the structured fields; fall back to parsing the synthetic assetId.\r\n let portalId = typeof desc.portalId === 'number' ? String(desc.portalId) : null\r\n let datasetId = typeof desc.datasetId === 'string' ? desc.datasetId : null\r\n if ((!portalId || !datasetId) && typeof row.assetId === 'string') {\r\n const m = /^odp:([^:]+):(.+)$/.exec(row.assetId)\r\n if (m) { portalId = portalId ?? m[1]; datasetId = datasetId ?? m[2] }\r\n }\r\n if (!portalId || !datasetId) continue\r\n\r\n map.set(`${portalId}:${datasetId}`, {\r\n fileId: row.id,\r\n table,\r\n geometryType: typeof desc.geometryType === 'string' ? desc.geometryType : undefined,\r\n })\r\n }\r\n return map\r\n}\r\n\r\n/**\r\n * Tag any dataset whose `portal.id:id` is in the published-catalog map with the\r\n * `publishedTable`/`publishedFileId` it resolves to, so RowActions renders it as\r\n * converted (and can un-publish it) wherever it appears — not only on the\r\n * organizational tab, which is the one place that holds the tiled representation.\r\n * Datasets that aren't published, or have no portal/id, are returned unchanged.\r\n */\r\nexport function stampPublished(datasets: Dataset[], map: Map<string, PublishedCatalogEntry>): Dataset[] {\r\n if (map.size === 0) return datasets\r\n return datasets.map((d) => {\r\n const portalId = d.portal?.id\r\n if (portalId == null || d.id == null) return d\r\n const entry = map.get(`${portalId}:${d.id}`)\r\n if (!entry) return d\r\n return { ...d, publishedTable: entry.table, publishedFileId: entry.fileId }\r\n })\r\n}\r\n\r\nexport interface PublishedFileRow {\r\n name?: string | null\r\n description?: string | null\r\n}\r\n\r\n/**\r\n * Build MVT Dataset entries for published tiles from File-row metadata (/api/files),\r\n * pointing each at the cdt_tiles function source. The renderer derives source-layer from\r\n * dataset.id (= the table name = the MVT layer name the function emits), so no serviceInfo\r\n * is needed. layerType comes from the geometryType stamped at publish time.\r\n */\r\nexport function buildPublishedTileDatasets(\r\n rows: PublishedFileRow[],\r\n tileBaseUrl: string,\r\n portal: OpenDataPortal,\r\n): Dataset[] {\r\n const base = tileBaseUrl.replace(/\\/+$/, '')\r\n const out: Dataset[] = []\r\n for (const row of rows) {\r\n if (!row?.description) continue\r\n let desc: { tiledTable?: unknown, geometryType?: unknown }\r\n try { desc = JSON.parse(row.description) }\r\n catch { continue }\r\n const table = typeof desc.tiledTable === 'string' ? desc.tiledTable : null\r\n if (!table) continue\r\n\r\n const name = (row.name ?? table).replace(/\\.geojson$/i, '')\r\n const layerType = (typeof desc.geometryType === 'string' ? desc.geometryType : undefined) as LayerGeometryType | undefined\r\n const tileUrl = `${base}/cdt_tiles/{z}/{x}/{y}?source=${table}`\r\n\r\n const getFields = async () => []\r\n const getFeatures = async (): Promise<AllGeoJSON> =>\r\n ({ type: 'FeatureCollection', features: [] } as AllGeoJSON)\r\n\r\n out.push({\r\n id: table,\r\n name,\r\n publisher: 'Martin Server',\r\n dataManagementSystem: 'other',\r\n description: `Published vector tile layer: ${table}`,\r\n countrySubdivision: portal.countrySubdivision ?? '',\r\n municipality: portal.municipality ?? '',\r\n type: 'MVT',\r\n datasetType: 'MVT',\r\n url: tileUrl,\r\n information: tileUrl,\r\n portal,\r\n group: DatasetGroup.Organizational,\r\n layerColor: layerColorByName(name),\r\n layerType,\r\n getFields,\r\n getFeatures,\r\n } as Dataset)\r\n }\r\n return out\r\n}\r\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../../../../../src/core/components/viewers/map/datasets/src/publishedTiles.ts"],"sourcesContent":["// SPDX-License-Identifier: AGPL-3.0-or-later\r\n// Copyright (C) 2025 Collab Digital Twins\r\n\r\nimport { DatasetGroup, type OpenDataPortal } from '../../../../../types/dbTypes'\r\nimport { layerColorByName } from '../../utils/stringToColour'\r\n\r\nimport type { Dataset, LayerGeometryType } from '../../../../../types/datasetTypes'\r\nimport type { AllGeoJSON } from '@turf/turf'\r\n\r\n\r\n/** Tables our publish pipeline creates; served via the cdt_tiles function source. */\r\nexport function isPublishedOrgTable(name: string): boolean {\r\n return /^org_\\d+_file_\\d+$/.test(name)\r\n}\r\n\r\n/** What a published open-data dataset resolves to: its Martin table + backing File row. */\r\nexport interface PublishedCatalogEntry {\r\n fileId: number\r\n table: string\r\n geometryType?: string\r\n}\r\n\r\ninterface CatalogFileRow {\r\n id?: number | null\r\n assetId?: string | null\r\n description?: string | null\r\n}\r\n\r\n/**\r\n * Build a lookup from `/api/files` of open-data datasets that have already been\r\n * published to Martin tiles, keyed by `\"{portalId}:{datasetId}\"` — the identity\r\n * of the *original* portal dataset.\r\n *\r\n * Catalog publishes mint a File whose `assetId` is `odp:{portalId}:{datasetId}`\r\n * and whose description carries `portalId`/`datasetId` + `tiledTable`. The\r\n * original portal entry (shown on the National/Applied/All tabs) keeps its own\r\n * id, so without this map those tabs cannot tell the dataset is already tiled.\r\n */\r\nexport function buildPublishedCatalogMap(rows: CatalogFileRow[]): Map<string, PublishedCatalogEntry> {\r\n const map = new Map<string, PublishedCatalogEntry>()\r\n for (const row of rows) {\r\n if (typeof row?.id !== 'number' || !row.description) continue\r\n let desc: { source?: unknown, portalId?: unknown, datasetId?: unknown, tiledTable?: unknown, geometryType?: unknown }\r\n try { desc = JSON.parse(row.description) }\r\n catch { continue }\r\n if (desc.source !== 'open-data-portal') continue\r\n const table = typeof desc.tiledTable === 'string' ? desc.tiledTable : null\r\n if (!table) continue\r\n\r\n // Prefer the structured fields; fall back to parsing the synthetic assetId.\r\n let portalId = typeof desc.portalId === 'number' ? String(desc.portalId) : null\r\n let datasetId = typeof desc.datasetId === 'string' ? desc.datasetId : null\r\n if ((!portalId || !datasetId) && typeof row.assetId === 'string') {\r\n const m = /^odp:([^:]+):(.+)$/.exec(row.assetId)\r\n if (m) { portalId = portalId ?? m[1]; datasetId = datasetId ?? m[2] }\r\n }\r\n if (!portalId || !datasetId) continue\r\n\r\n map.set(`${portalId}:${datasetId}`, {\r\n fileId: row.id,\r\n table,\r\n geometryType: typeof desc.geometryType === 'string' ? desc.geometryType : undefined,\r\n })\r\n }\r\n return map\r\n}\r\n\r\n/**\r\n * Tag any dataset whose `portal.id:id` is in the published-catalog map with the\r\n * `publishedTable`/`publishedFileId` it resolves to, so RowActions renders it as\r\n * converted (and can un-publish it) wherever it appears — not only on the\r\n * organizational tab, which is the one place that holds the tiled representation.\r\n * Datasets that aren't published, or have no portal/id, are returned unchanged.\r\n */\r\nexport function stampPublished(datasets: Dataset[], map: Map<string, PublishedCatalogEntry>): Dataset[] {\r\n if (map.size === 0) return datasets\r\n return datasets.map((d) => {\r\n const portalId = d.portal?.id\r\n if (portalId == null || d.id == null) return d\r\n const entry = map.get(`${portalId}:${d.id}`)\r\n if (!entry) return d\r\n return { ...d, publishedTable: entry.table, publishedFileId: entry.fileId }\r\n })\r\n}\r\n\r\nexport interface PublishedFileRow {\r\n name?: string | null\r\n description?: string | null\r\n}\r\n\r\n/**\r\n * Build MVT Dataset entries for published tiles from File-row metadata (/api/files),\r\n * pointing each at the cdt_tiles function source. The renderer derives source-layer from\r\n * dataset.id (= the table name = the MVT layer name the function emits), so no serviceInfo\r\n * is needed. layerType comes from the geometryType stamped at publish time.\r\n */\r\nexport function buildPublishedTileDatasets(\r\n rows: PublishedFileRow[],\r\n tileBaseUrl: string,\r\n portal: OpenDataPortal,\r\n): Dataset[] {\r\n const base = tileBaseUrl.replace(/\\/+$/, '')\r\n const out: Dataset[] = []\r\n for (const row of rows) {\r\n if (!row?.description) continue\r\n let desc: { tiledTable?: unknown, geometryType?: unknown }\r\n try { desc = JSON.parse(row.description) }\r\n catch { continue }\r\n const table = typeof desc.tiledTable === 'string' ? desc.tiledTable : null\r\n if (!table) continue\r\n\r\n const name = (row.name ?? table).replace(/\\.geojson$/i, '')\r\n const layerType = (typeof desc.geometryType === 'string' ? desc.geometryType : undefined) as LayerGeometryType | undefined\r\n const tileUrl = `${base}/cdt_tiles/{z}/{x}/{y}?source=${table}`\r\n\r\n const getFields = async () => []\r\n const getFeatures = async (): Promise<AllGeoJSON> =>\r\n ({ type: 'FeatureCollection', features: [] } as AllGeoJSON)\r\n\r\n out.push({\r\n id: table,\r\n name,\r\n publisher: 'Martin Server',\r\n dataManagementSystem: 'other',\r\n description: `Published vector tile layer: ${table}`,\r\n countrySubdivision: portal.countrySubdivision ?? '',\r\n municipality: portal.municipality ?? '',\r\n type: 'MVT',\r\n datasetType: 'MVT',\r\n url: tileUrl,\r\n information: tileUrl,\r\n portal,\r\n group: DatasetGroup.Organizational,\r\n layerColor: layerColorByName(name),\r\n layerType,\r\n getFields,\r\n getFeatures,\r\n } as Dataset)\r\n }\r\n return out\r\n}\r\n"],"mappings":"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","names":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"socrataDatasets.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/components/viewers/map/datasets/src/socrataDatasets.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAa,MAAM,mCAAmC,CAAA;AAC3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AA0YlE,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,OAAO,EAAE,CAAC,CAkSpB"}
1
+ {"version":3,"file":"socrataDatasets.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/components/viewers/map/datasets/src/socrataDatasets.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,OAAO,EAAa,MAAM,mCAAmC,CAAA;AAC3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAA;AAwYlE,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,OAAO,EAAE,CAAC,CAkSpB"}
@@ -1,7 +1,7 @@
1
1
  import { DataManagementSystem } from "../../../../../types/dbTypes";
2
+ import { layerColorByName } from "../../utils/stringToColour";
2
3
  import { formatDate, formatName, stripHtml } from "../utils";
3
4
  import { buildValidationKey, getCache, setCache, withCache } from "./cache";
4
- import { layerColorByName } from "../../utils/stringToColour";
5
5
  const DISCOVERY_PAGE_SIZE = 100;
6
6
  const MAX_DISCOVERED_DATASETS = 400;
7
7
  const FEATURE_PAGE_SIZE = 500;