@geode/opengeodeweb-front 10.34.0-rc.2 → 10.34.0-rc.21

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 (499) hide show
  1. package/.build/opengeodeweb_front_schemas.js +175 -0
  2. package/.build/server/utils/app_config.js +57 -0
  3. package/.build/server/utils/cleanup.js +135 -0
  4. package/.build/server/utils/cloud.js +156 -0
  5. package/.build/server/utils/microservices.js +153 -0
  6. package/.build/server/utils/path.js +108 -0
  7. package/.build/server/utils/scripts.js +134 -0
  8. package/.build/server/utils/server.js +44 -0
  9. package/.build/server/utils/server_config.js +51 -0
  10. package/.build/server/utils/stream.js +6 -0
  11. package/.build/server/utils/ws_client.js +100 -0
  12. package/.build/shared/app_mode.js +8 -0
  13. package/.build/shared/scripts.js +49 -0
  14. package/.build/shared/utils/call_raw.js +31 -0
  15. package/.build/shared/utils/call_schema.js +28 -0
  16. package/.build/shared/utils/fetch_raw.js +52 -0
  17. package/.build/shared/utils/fetch_schema.js +32 -0
  18. package/.build/shared/utils/file.js +14 -0
  19. package/.build/shared/utils/parse_boolean.js +23 -0
  20. package/.build/shared/utils/response_handlers/load.js +50 -0
  21. package/.build/shared/utils/types.js +1 -0
  22. package/.build/shared/utils/validate_schema.js +17 -0
  23. package/README.md +8 -0
  24. package/app/assets/{geode_objects.js → geode_objects.ts} +8 -1
  25. package/app/components/ActionButton.vue +28 -12
  26. package/app/components/Basic/Slider.vue +2 -2
  27. package/app/components/Basic/Switch.vue +2 -2
  28. package/app/components/CameraManager/List.vue +11 -11
  29. package/app/components/CameraManager/Saver.vue +8 -4
  30. package/app/components/CameraManager.vue +24 -12
  31. package/app/components/CameraOrientation.vue +31 -17
  32. package/app/components/ClippingPlaneCard.vue +13 -12
  33. package/app/components/ClippingPlanes.vue +31 -21
  34. package/app/components/CrsSelector.vue +26 -18
  35. package/app/components/DeleteDialog.vue +18 -16
  36. package/app/components/DragAndDrop.vue +55 -37
  37. package/app/components/DragAndDropInternal/DragAndDropInline.vue +31 -16
  38. package/app/components/DragAndDropInternal/DragAndDropOverlay.vue +32 -19
  39. package/app/components/ExtensionSelector.vue +34 -18
  40. package/app/components/FeedBack/ErrorBanner.vue +4 -3
  41. package/app/components/FeedBack/Snackers.vue +6 -5
  42. package/app/components/FetchingData.vue +8 -12
  43. package/app/components/FileSelector.vue +27 -17
  44. package/app/components/FileUploader.vue +51 -30
  45. package/app/components/GlassCard.vue +17 -13
  46. package/app/components/HybridRenderingView.vue +25 -12
  47. package/app/components/HybridViewerTooltip.vue +28 -26
  48. package/app/components/InfraConnected.vue +1 -1
  49. package/app/components/Launcher.vue +12 -10
  50. package/app/components/Loading/EcoMessages.vue +24 -13
  51. package/app/components/Loading/Header.vue +6 -7
  52. package/app/components/Loading/Progress.vue +6 -7
  53. package/app/components/Loading.vue +10 -14
  54. package/app/components/MissingFilesSelector.vue +35 -19
  55. package/app/components/ObjectSelector.vue +37 -21
  56. package/app/components/PackagesVersions.vue +16 -8
  57. package/app/components/Recaptcha.vue +17 -23
  58. package/app/components/RemoteRenderingView.vue +21 -15
  59. package/app/components/Ruler.vue +11 -9
  60. package/app/components/Screenshot.vue +25 -19
  61. package/app/components/SearchBar.vue +12 -6
  62. package/app/components/ShrinkFilter.vue +19 -14
  63. package/app/components/Step.vue +32 -12
  64. package/app/components/Stepper.vue +19 -7
  65. package/app/components/ToolPanel.vue +29 -13
  66. package/app/components/ViewToolbar.vue +53 -44
  67. package/app/components/Viewer/ContextMenu/CenterButton.vue +16 -9
  68. package/app/components/Viewer/ContextMenu/CircularItems.vue +13 -10
  69. package/app/components/Viewer/ContextMenu/ContextMenu.vue +40 -32
  70. package/app/components/Viewer/ContextMenu/ContextMenuItem.vue +31 -17
  71. package/app/components/Viewer/ContextMenu/InfoCard.vue +38 -22
  72. package/app/components/Viewer/EdgedCurve/PointsOptions.vue +8 -5
  73. package/app/components/Viewer/EdgedCurve/SpecificEdgesOptions.vue +67 -48
  74. package/app/components/Viewer/Generic/Mesh/CellsOptions.vue +74 -50
  75. package/app/components/Viewer/Generic/Mesh/EdgesOptions.vue +69 -50
  76. package/app/components/Viewer/Generic/Mesh/PointsOptions.vue +47 -35
  77. package/app/components/Viewer/Generic/Mesh/PolygonsOptions.vue +91 -51
  78. package/app/components/Viewer/Generic/Mesh/PolyhedraOptions.vue +74 -49
  79. package/app/components/Viewer/Generic/Model/BlocksOptions.vue +115 -53
  80. package/app/components/Viewer/Generic/Model/CornersOptions.vue +75 -37
  81. package/app/components/Viewer/Generic/Model/EdgesOptions.vue +13 -9
  82. package/app/components/Viewer/Generic/Model/LinesOptions.vue +110 -61
  83. package/app/components/Viewer/Generic/Model/ModelStyleCard.vue +32 -21
  84. package/app/components/Viewer/Generic/Model/ModelStyleOptions.vue +9 -5
  85. package/app/components/Viewer/Generic/Model/PointsOptions.vue +19 -13
  86. package/app/components/Viewer/Generic/Model/SurfacesOptions.vue +119 -49
  87. package/app/components/Viewer/Grid/2D/CellsOptions.vue +8 -5
  88. package/app/components/Viewer/Grid/2D/EdgesOptions.vue +8 -5
  89. package/app/components/Viewer/Grid/2D/PointsOptions.vue +8 -5
  90. package/app/components/Viewer/Grid/3D/CellsOptions.vue +8 -5
  91. package/app/components/Viewer/Grid/3D/EdgesOptions.vue +8 -5
  92. package/app/components/Viewer/Grid/3D/FacetsOptions.vue +8 -5
  93. package/app/components/Viewer/Grid/3D/PointsOptions.vue +8 -5
  94. package/app/components/Viewer/ObjectTree/Base/CommonTreeView.vue +120 -76
  95. package/app/components/Viewer/ObjectTree/Base/Controls.vue +25 -10
  96. package/app/components/Viewer/ObjectTree/Base/ItemLabel.vue +42 -17
  97. package/app/components/Viewer/ObjectTree/Base/StickyHeader.vue +22 -9
  98. package/app/components/Viewer/ObjectTree/Base/TreeRow.vue +29 -14
  99. package/app/components/Viewer/ObjectTree/Box.vue +32 -15
  100. package/app/components/Viewer/ObjectTree/Layout.vue +55 -35
  101. package/app/components/Viewer/ObjectTree/Views/GlobalObjects.vue +63 -34
  102. package/app/components/Viewer/ObjectTree/Views/{ModelCollections.vue → ModelTree.vue} +101 -39
  103. package/app/components/Viewer/Options/AttributeColorBar.vue +14 -6
  104. package/app/components/Viewer/Options/AttributeRangeSelector.vue +8 -4
  105. package/app/components/Viewer/Options/AttributeSelector.vue +64 -33
  106. package/app/components/Viewer/Options/ColorMapList.vue +52 -24
  107. package/app/components/Viewer/Options/ColorMapPicker.vue +15 -11
  108. package/app/components/Viewer/Options/ColorPicker.vue +239 -50
  109. package/app/components/Viewer/Options/ColoringTypeSelector.vue +87 -67
  110. package/app/components/Viewer/Options/ColormapQuickPicker.vue +16 -12
  111. package/app/components/Viewer/Options/OptionsSection.vue +7 -5
  112. package/app/components/Viewer/Options/Sliders/Size.vue +3 -3
  113. package/app/components/Viewer/Options/Sliders/Slider.vue +9 -6
  114. package/app/components/Viewer/Options/Sliders/Width.vue +3 -3
  115. package/app/components/Viewer/Options/TextureItem.vue +29 -22
  116. package/app/components/Viewer/Options/TexturesSelector.vue +23 -12
  117. package/app/components/Viewer/Options/VisibilitySwitch.vue +3 -3
  118. package/app/components/Viewer/OverlappingObjectsPicker.vue +27 -12
  119. package/app/components/Viewer/PointSet/SpecificPointsOptions.vue +38 -26
  120. package/app/components/Viewer/Solid/EdgesOptions.vue +8 -5
  121. package/app/components/Viewer/Solid/PointsOptions.vue +8 -5
  122. package/app/components/Viewer/Solid/PolygonsOptions.vue +8 -5
  123. package/app/components/Viewer/Solid/SpecificPolyhedraOptions.vue +73 -48
  124. package/app/components/Viewer/Surface/EdgesOptions.vue +8 -5
  125. package/app/components/Viewer/Surface/PointsOptions.vue +8 -5
  126. package/app/components/Viewer/Surface/PolygonsOptions.vue +79 -49
  127. package/app/components/Viewer/Surface/Triangulated/TrianglesOptions.vue +8 -5
  128. package/app/components/Viewer/TetrahedralSolid/TetrahedraOptions.vue +8 -5
  129. package/app/components/Viewer/TetrahedralSolid/TrianglesOptions.vue +8 -5
  130. package/app/components/Viewer/Ui.vue +19 -14
  131. package/app/components/Wrapper.vue +16 -10
  132. package/app/components/ZScaling.vue +18 -10
  133. package/app/components/csv-preview/CsvPreviewer.vue +72 -50
  134. package/app/components/csv-preview/CsvSettings.vue +30 -50
  135. package/app/components/csv-preview/CsvTable.vue +34 -14
  136. package/app/composables/{batch_style.js → batch_style.ts} +9 -7
  137. package/app/composables/clipping_planes_widget.ts +204 -0
  138. package/app/composables/clipping_planes_widget_entries.ts +189 -0
  139. package/app/composables/copy_to_clipboard.ts +7 -0
  140. package/app/composables/global_attribute_style.ts +303 -0
  141. package/app/composables/hover_highlight.ts +127 -0
  142. package/app/composables/{model_collections.js → model_collections.ts} +28 -9
  143. package/app/composables/{model_components.js → model_components.ts} +28 -9
  144. package/app/composables/{project_manager.js → project_manager.ts} +77 -20
  145. package/app/composables/responsive_middle_truncate.ts +48 -0
  146. package/app/composables/{run_function_when_microservices_connected.js → run_function_when_microservices_connected.ts} +1 -1
  147. package/app/composables/stepper_tree.ts +79 -0
  148. package/app/composables/tree_filter.ts +194 -0
  149. package/app/composables/{tree_keyboard_nav.js → tree_keyboard_nav.ts} +62 -20
  150. package/app/composables/{tree_scroll.js → tree_scroll.ts} +61 -12
  151. package/app/composables/use_adaptive_styles.ts +186 -0
  152. package/app/composables/use_overlapping_picker.ts +263 -0
  153. package/app/composables/use_quick_colormap.ts +55 -0
  154. package/app/composables/virtual_tree.ts +271 -0
  155. package/app/composables/vtk_implicit_plane_widget.d.ts +2 -0
  156. package/app/plugins/{auto_store_register.js → auto_store_register.ts} +3 -5
  157. package/app/plugins/click_outside_ignore_snackbars.client.ts +36 -0
  158. package/app/stores/app.ts +252 -0
  159. package/app/stores/app_helpers/extension.ts +179 -0
  160. package/app/stores/{back.js → back.ts} +54 -28
  161. package/app/stores/camera_manager.ts +80 -0
  162. package/app/stores/{cloud.js → cloud.ts} +18 -13
  163. package/app/stores/data.ts +392 -0
  164. package/app/stores/data_helpers/collections.ts +138 -0
  165. package/app/stores/data_helpers/mesh.ts +169 -0
  166. package/app/stores/data_style.ts +167 -0
  167. package/app/stores/{feedback.js → feedback.ts} +19 -8
  168. package/app/stores/{hybrid_viewer.js → hybrid_viewer.ts} +49 -45
  169. package/app/stores/infra.ts +106 -0
  170. package/app/stores/{menu.js → menu.ts} +67 -36
  171. package/app/stores/treeview.ts +383 -0
  172. package/app/stores/{viewer.js → viewer.ts} +75 -42
  173. package/app/utils/attributes.ts +40 -0
  174. package/app/utils/clipping_planes.ts +222 -0
  175. package/app/utils/color_picker.js +54 -0
  176. package/app/utils/colormap.ts +102 -0
  177. package/app/utils/default_styles/{constants.js → constants.ts} +25 -12
  178. package/app/utils/default_styles/{index.js → index.ts} +4 -3
  179. package/app/utils/default_styles/meshes.ts +264 -0
  180. package/app/utils/default_styles/{models.js → models.ts} +106 -52
  181. package/app/utils/{extension.js → extension.ts} +63 -19
  182. package/app/utils/{import_workflow.js → import_workflow.ts} +39 -22
  183. package/app/utils/{log.js → log.ts} +12 -2
  184. package/app/utils/{name_cleaner.js → name_cleaner.ts} +6 -6
  185. package/app/utils/status.ts +19 -0
  186. package/app/utils/{stores.js → stores.ts} +5 -5
  187. package/app/utils/{string.js → string.ts} +6 -6
  188. package/app/utils/{treeview.js → treeview.ts} +4 -1
  189. package/internal/database/{base_database.js → base_database.ts} +7 -3
  190. package/internal/database/database.ts +102 -0
  191. package/internal/database/{extended_database.js → extended_database.ts} +5 -1
  192. package/internal/database/tables/camera_positions.ts +6 -0
  193. package/internal/database/tables/{data.js → data.ts} +3 -1
  194. package/internal/database/tables/data_style.ts +6 -0
  195. package/internal/database/tables/model_component_datastyle.ts +6 -0
  196. package/internal/database/tables/model_component_type_datastyle.ts +6 -0
  197. package/internal/database/tables/model_components.ts +6 -0
  198. package/internal/database/tables/model_components_relation.ts +6 -0
  199. package/internal/database/tables/table_definition.ts +5 -0
  200. package/internal/stores/data_style/mesh/cells/cell.ts +279 -0
  201. package/internal/stores/data_style/mesh/cells/{color.js → color.ts} +13 -7
  202. package/internal/stores/data_style/mesh/cells/common.ts +50 -0
  203. package/internal/stores/data_style/mesh/cells/index.ts +161 -0
  204. package/internal/stores/data_style/mesh/cells/{textures.js → textures.ts} +14 -8
  205. package/internal/stores/data_style/mesh/cells/vertex.ts +285 -0
  206. package/internal/stores/data_style/mesh/cells/visibility.ts +46 -0
  207. package/internal/stores/data_style/mesh/edges/{color.js → color.ts} +13 -7
  208. package/internal/stores/data_style/mesh/edges/common.ts +41 -0
  209. package/internal/stores/data_style/mesh/edges/edge.ts +279 -0
  210. package/internal/stores/data_style/mesh/edges/index.ts +155 -0
  211. package/internal/stores/data_style/mesh/edges/vertex.ts +285 -0
  212. package/internal/stores/data_style/mesh/edges/visibility.ts +45 -0
  213. package/internal/stores/data_style/mesh/edges/width.ts +42 -0
  214. package/internal/stores/data_style/mesh/{index.js → index.ts} +34 -14
  215. package/internal/stores/data_style/mesh/points/{color.js → color.ts} +13 -7
  216. package/internal/stores/data_style/mesh/points/common.ts +51 -0
  217. package/internal/stores/data_style/mesh/points/index.ts +133 -0
  218. package/internal/stores/data_style/mesh/points/size.ts +43 -0
  219. package/internal/stores/data_style/mesh/points/vertex.ts +285 -0
  220. package/internal/stores/data_style/mesh/points/visibility.ts +49 -0
  221. package/internal/stores/data_style/mesh/polygons/{color.js → color.ts} +13 -7
  222. package/internal/stores/data_style/mesh/polygons/common.ts +50 -0
  223. package/internal/stores/data_style/mesh/polygons/index.ts +167 -0
  224. package/internal/stores/data_style/mesh/polygons/polygon.ts +282 -0
  225. package/internal/stores/data_style/mesh/polygons/{textures.js → textures.ts} +14 -8
  226. package/internal/stores/data_style/mesh/polygons/vertex.ts +288 -0
  227. package/internal/stores/data_style/mesh/polygons/visibility.ts +48 -0
  228. package/internal/stores/data_style/mesh/polyhedra/{color.js → color.ts} +13 -7
  229. package/internal/stores/data_style/mesh/polyhedra/common.ts +41 -0
  230. package/internal/stores/data_style/mesh/polyhedra/index.ts +157 -0
  231. package/internal/stores/data_style/mesh/polyhedra/polyhedron.ts +294 -0
  232. package/internal/stores/data_style/mesh/polyhedra/vertex.ts +288 -0
  233. package/internal/stores/data_style/mesh/polyhedra/visibility.ts +48 -0
  234. package/internal/stores/data_style/model/blocks/{color.js → color.ts} +50 -13
  235. package/internal/stores/data_style/model/blocks/common.ts +67 -0
  236. package/internal/stores/data_style/model/blocks/{index.js → index.ts} +111 -66
  237. package/internal/stores/data_style/model/blocks/polyhedron.ts +363 -0
  238. package/internal/stores/data_style/model/blocks/vertex.ts +349 -0
  239. package/internal/stores/data_style/model/blocks/visibility.ts +37 -0
  240. package/internal/stores/data_style/model/color.ts +348 -0
  241. package/internal/stores/data_style/model/common.ts +262 -0
  242. package/internal/stores/data_style/model/corners/{color.js → color.ts} +49 -10
  243. package/internal/stores/data_style/model/corners/common.ts +71 -0
  244. package/internal/stores/data_style/model/corners/{index.js → index.ts} +86 -47
  245. package/internal/stores/data_style/model/corners/vertex.ts +315 -0
  246. package/internal/stores/data_style/model/corners/visibility.ts +39 -0
  247. package/internal/stores/data_style/model/edges/common.ts +29 -0
  248. package/internal/stores/data_style/model/edges/{index.js → index.ts} +2 -7
  249. package/internal/stores/data_style/model/edges/visibility.ts +55 -0
  250. package/internal/stores/data_style/model/{index.js → index.ts} +24 -11
  251. package/internal/stores/data_style/model/lines/{color.js → color.ts} +47 -10
  252. package/internal/stores/data_style/model/lines/common.ts +63 -0
  253. package/internal/stores/data_style/model/lines/edge.ts +343 -0
  254. package/internal/stores/data_style/model/lines/{index.js → index.ts} +108 -66
  255. package/internal/stores/data_style/model/lines/vertex.ts +344 -0
  256. package/internal/stores/data_style/model/lines/visibility.ts +37 -0
  257. package/internal/stores/data_style/model/points/common.ts +25 -0
  258. package/internal/stores/data_style/model/points/index.ts +35 -0
  259. package/internal/stores/data_style/model/points/size.ts +44 -0
  260. package/internal/stores/data_style/model/points/visibility.ts +46 -0
  261. package/internal/stores/data_style/model/selection.ts +138 -0
  262. package/internal/stores/data_style/model/surfaces/{color.js → color.ts} +47 -10
  263. package/internal/stores/data_style/model/surfaces/common.ts +69 -0
  264. package/internal/stores/data_style/model/surfaces/{index.js → index.ts} +113 -66
  265. package/internal/stores/data_style/model/surfaces/polygon.ts +347 -0
  266. package/internal/stores/data_style/model/surfaces/vertex.ts +351 -0
  267. package/internal/stores/data_style/model/surfaces/visibility.ts +37 -0
  268. package/internal/stores/data_style/model/{visibility.js → visibility.ts} +112 -32
  269. package/internal/stores/data_style/state.ts +281 -0
  270. package/internal/stores/data_style/types.ts +30 -0
  271. package/internal/stores/hybrid_viewer/brightness.ts +124 -0
  272. package/internal/stores/hybrid_viewer/camera.ts +326 -0
  273. package/internal/stores/hybrid_viewer/{camera_animation.js → camera_animation.ts} +30 -12
  274. package/internal/stores/hybrid_viewer/{constants.js → constants.ts} +2 -2
  275. package/internal/stores/hybrid_viewer/core.ts +64 -0
  276. package/internal/stores/hybrid_viewer/{filters.js → filters.ts} +10 -13
  277. package/internal/stores/hybrid_viewer/highlight.ts +183 -0
  278. package/internal/stores/hybrid_viewer/{ruler.js → ruler.ts} +50 -22
  279. package/internal/stores/hybrid_viewer/scene.ts +125 -0
  280. package/internal/stores/hybrid_viewer/viewport.ts +177 -0
  281. package/internal/stores/hybrid_viewer/vtk_types.ts +58 -0
  282. package/internal/utils/api_fetch.ts +133 -0
  283. package/internal/utils/upload_file.ts +115 -0
  284. package/internal/utils/viewer_call.ts +99 -0
  285. package/internal/utils/ws_client.ts +54 -0
  286. package/nuxt.config.ts +168 -0
  287. package/opengeodeweb_front_schemas.json +2 -2
  288. package/package.json +49 -13
  289. package/server/api/cloud/extensions/{run.post.js → run.post.ts} +16 -12
  290. package/server/api/local/app/project_folder_path.post.ts +33 -0
  291. package/server/api/local/app/run_back.post.ts +39 -0
  292. package/server/api/local/app/run_viewer.post.ts +39 -0
  293. package/server/api/local/extensions/{kill.post.js → kill.post.ts} +15 -8
  294. package/server/api/local/extensions/{run.post.js → run.post.ts} +17 -12
  295. package/server/api/local/extensions/upload.put.ts +71 -0
  296. package/server/api/microservice/app/{get_is_app_ready.get.js → get_is_app_ready.get.ts} +5 -5
  297. package/server/api/microservice/app/schemas/get_is_app_ready.json +1 -1
  298. package/server/api/microservice/app/set_app_base_url.post.ts +29 -0
  299. package/server/api/microservice/app/set_back_base_url.post.ts +26 -0
  300. package/server/api/microservice/app/set_is_app_ready.post.ts +29 -0
  301. package/server/api/microservice/app/set_viewer_base_url.post.ts +26 -0
  302. package/server/api/microservice/extensions/{download.post.js → download.post.ts} +13 -6
  303. package/server/api/serverless/run_cloud.post.ts +92 -0
  304. package/server/utils/{app_config.js → app_config.ts} +40 -18
  305. package/server/utils/{cleanup.js → cleanup.ts} +76 -29
  306. package/server/utils/{cloud.js → cloud.ts} +33 -17
  307. package/server/utils/{extension.js → extension.ts} +31 -4
  308. package/server/utils/{microservices.js → microservices.ts} +68 -27
  309. package/server/utils/{path.js → path.ts} +36 -17
  310. package/server/utils/{scripts.js → scripts.ts} +49 -33
  311. package/server/utils/{server.js → server.ts} +13 -6
  312. package/server/utils/server_config.ts +74 -0
  313. package/server/utils/stream.ts +6 -0
  314. package/server/utils/ws_client.ts +165 -0
  315. package/shared/{scripts.js → scripts.ts} +15 -10
  316. package/shared/utils/call_raw.ts +73 -0
  317. package/shared/utils/{call_schema.js → call_schema.ts} +15 -6
  318. package/shared/utils/fetch_raw.ts +125 -0
  319. package/shared/utils/{fetch_schema.js → fetch_schema.ts} +16 -7
  320. package/shared/utils/file.ts +22 -0
  321. package/shared/utils/{parse_boolean.js → parse_boolean.ts} +1 -1
  322. package/shared/utils/response_handlers/load.ts +109 -0
  323. package/shared/utils/types.ts +27 -0
  324. package/shared/utils/{validate_schema.js → validate_schema.ts} +3 -1
  325. package/.github/workflows/config.json +0 -5
  326. package/.github/workflows/deploy.yml +0 -15
  327. package/.github/workflows/manual_release.yml +0 -11
  328. package/.github/workflows/merge_request.yml +0 -9
  329. package/.github/workflows/pr_update.yml +0 -11
  330. package/.github/workflows/prepare_deploy.yml +0 -9
  331. package/.github/workflows/schedule.yml +0 -18
  332. package/.github/workflows/test.yml +0 -14
  333. package/.github/workflows/test_pr.yml +0 -12
  334. package/.oxlintrc.json +0 -150
  335. package/.releaserc +0 -11
  336. package/app/components/Viewer/ObjectTree/Views/ModelComponents.vue +0 -224
  337. package/app/composables/clipping_planes_widget.js +0 -249
  338. package/app/composables/global_attribute_style.js +0 -181
  339. package/app/composables/hover_highlight.js +0 -91
  340. package/app/composables/responsive_middle_truncate.js +0 -34
  341. package/app/composables/stepper_tree.js +0 -56
  342. package/app/composables/tree_filter.js +0 -138
  343. package/app/composables/use_adaptive_styles.js +0 -120
  344. package/app/composables/use_overlapping_picker.js +0 -169
  345. package/app/composables/use_quick_colormap.js +0 -32
  346. package/app/composables/virtual_tree.js +0 -191
  347. package/app/stores/app.js +0 -326
  348. package/app/stores/camera_manager.js +0 -57
  349. package/app/stores/data.js +0 -278
  350. package/app/stores/data_helpers/collections.js +0 -96
  351. package/app/stores/data_helpers/mesh.js +0 -122
  352. package/app/stores/data_style.js +0 -116
  353. package/app/stores/infra.js +0 -95
  354. package/app/stores/treeview.js +0 -290
  355. package/app/utils/attributes.js +0 -23
  356. package/app/utils/clipping_planes.js +0 -110
  357. package/app/utils/colormap.js +0 -64
  358. package/app/utils/default_styles/meshes.js +0 -191
  359. package/app/utils/status.js +0 -10
  360. package/commitlint.config.js +0 -20
  361. package/internal/database/database.js +0 -80
  362. package/internal/database/tables/camera_positions.js +0 -4
  363. package/internal/database/tables/data_style.js +0 -4
  364. package/internal/database/tables/model_component_datastyle.js +0 -4
  365. package/internal/database/tables/model_component_type_datastyle.js +0 -4
  366. package/internal/database/tables/model_components.js +0 -4
  367. package/internal/database/tables/model_components_relation.js +0 -4
  368. package/internal/stores/data_style/mesh/cells/cell.js +0 -196
  369. package/internal/stores/data_style/mesh/cells/common.js +0 -39
  370. package/internal/stores/data_style/mesh/cells/index.js +0 -81
  371. package/internal/stores/data_style/mesh/cells/vertex.js +0 -193
  372. package/internal/stores/data_style/mesh/cells/visibility.js +0 -35
  373. package/internal/stores/data_style/mesh/edges/common.js +0 -32
  374. package/internal/stores/data_style/mesh/edges/edge.js +0 -195
  375. package/internal/stores/data_style/mesh/edges/index.js +0 -81
  376. package/internal/stores/data_style/mesh/edges/vertex.js +0 -196
  377. package/internal/stores/data_style/mesh/edges/visibility.js +0 -34
  378. package/internal/stores/data_style/mesh/edges/width.js +0 -34
  379. package/internal/stores/data_style/mesh/points/common.js +0 -37
  380. package/internal/stores/data_style/mesh/points/index.js +0 -82
  381. package/internal/stores/data_style/mesh/points/size.js +0 -35
  382. package/internal/stores/data_style/mesh/points/vertex.js +0 -193
  383. package/internal/stores/data_style/mesh/points/visibility.js +0 -37
  384. package/internal/stores/data_style/mesh/polygons/common.js +0 -32
  385. package/internal/stores/data_style/mesh/polygons/index.js +0 -107
  386. package/internal/stores/data_style/mesh/polygons/polygon.js +0 -196
  387. package/internal/stores/data_style/mesh/polygons/vertex.js +0 -196
  388. package/internal/stores/data_style/mesh/polygons/visibility.js +0 -38
  389. package/internal/stores/data_style/mesh/polyhedra/common.js +0 -32
  390. package/internal/stores/data_style/mesh/polyhedra/index.js +0 -98
  391. package/internal/stores/data_style/mesh/polyhedra/polyhedron.js +0 -196
  392. package/internal/stores/data_style/mesh/polyhedra/vertex.js +0 -196
  393. package/internal/stores/data_style/mesh/polyhedra/visibility.js +0 -38
  394. package/internal/stores/data_style/model/blocks/common.js +0 -51
  395. package/internal/stores/data_style/model/blocks/polyhedron.js +0 -215
  396. package/internal/stores/data_style/model/blocks/vertex.js +0 -204
  397. package/internal/stores/data_style/model/blocks/visibility.js +0 -20
  398. package/internal/stores/data_style/model/color.js +0 -218
  399. package/internal/stores/data_style/model/common.js +0 -141
  400. package/internal/stores/data_style/model/corners/common.js +0 -51
  401. package/internal/stores/data_style/model/corners/vertex.js +0 -204
  402. package/internal/stores/data_style/model/corners/visibility.js +0 -20
  403. package/internal/stores/data_style/model/edges/common.js +0 -20
  404. package/internal/stores/data_style/model/edges/visibility.js +0 -38
  405. package/internal/stores/data_style/model/lines/common.js +0 -51
  406. package/internal/stores/data_style/model/lines/edge.js +0 -203
  407. package/internal/stores/data_style/model/lines/vertex.js +0 -204
  408. package/internal/stores/data_style/model/lines/visibility.js +0 -20
  409. package/internal/stores/data_style/model/points/common.js +0 -20
  410. package/internal/stores/data_style/model/points/index.js +0 -25
  411. package/internal/stores/data_style/model/points/size.js +0 -36
  412. package/internal/stores/data_style/model/points/visibility.js +0 -36
  413. package/internal/stores/data_style/model/selection.js +0 -89
  414. package/internal/stores/data_style/model/surfaces/common.js +0 -51
  415. package/internal/stores/data_style/model/surfaces/polygon.js +0 -215
  416. package/internal/stores/data_style/model/surfaces/vertex.js +0 -215
  417. package/internal/stores/data_style/model/surfaces/visibility.js +0 -20
  418. package/internal/stores/data_style/state.js +0 -197
  419. package/internal/stores/hybrid_viewer/brightness.js +0 -82
  420. package/internal/stores/hybrid_viewer/camera.js +0 -274
  421. package/internal/stores/hybrid_viewer/highlight.js +0 -170
  422. package/internal/stores/hybrid_viewer/scene.js +0 -136
  423. package/internal/stores/hybrid_viewer/viewport.js +0 -140
  424. package/internal/utils/api_fetch.js +0 -52
  425. package/internal/utils/upload_file.js +0 -57
  426. package/internal/utils/viewer_call.js +0 -49
  427. package/internal/utils/ws_client.js +0 -29
  428. package/nuxt.config.js +0 -106
  429. package/scripts/generate_geode_objects.js +0 -24
  430. package/server/api/local/app/project_folder_path.post.js +0 -29
  431. package/server/api/local/app/run_back.post.js +0 -33
  432. package/server/api/local/app/run_viewer.post.js +0 -33
  433. package/server/api/local/extensions/upload.put.js +0 -72
  434. package/server/api/microservice/app/set_app_base_url.post.js +0 -25
  435. package/server/api/microservice/app/set_back_base_url.post.js +0 -22
  436. package/server/api/microservice/app/set_is_app_ready.post.js +0 -25
  437. package/server/api/microservice/app/set_viewer_base_url.post.js +0 -22
  438. package/server/api/serverless/run_cloud.post.js +0 -44
  439. package/server/utils/server_config.js +0 -58
  440. package/server/utils/ws_client.js +0 -112
  441. package/shared/utils/call_raw.js +0 -46
  442. package/shared/utils/fetch_raw.js +0 -61
  443. package/shared/utils/file.js +0 -16
  444. package/shared/utils/response_handlers/load.js +0 -74
  445. package/tests/integration/data/uploads/test.og_brep +0 -0
  446. package/tests/integration/data/uploads/test.og_edc2d +0 -0
  447. package/tests/integration/data/uploads/test.og_edc3d +0 -0
  448. package/tests/integration/data/uploads/test.og_psf3d +0 -0
  449. package/tests/integration/data/uploads/test.og_rgd2d +0 -0
  450. package/tests/integration/data/uploads/test.og_rgd3d +0 -0
  451. package/tests/integration/data/uploads/test.vtu +0 -22
  452. package/tests/integration/setup.js +0 -92
  453. package/tests/integration/stores/data_style/mesh/cells.nuxt.test.js +0 -343
  454. package/tests/integration/stores/data_style/mesh/edges.nuxt.test.js +0 -254
  455. package/tests/integration/stores/data_style/mesh/index.nuxt.test.js +0 -62
  456. package/tests/integration/stores/data_style/mesh/points.nuxt.test.js +0 -201
  457. package/tests/integration/stores/data_style/mesh/polygons.nuxt.test.js +0 -260
  458. package/tests/integration/stores/data_style/mesh/polyhedra.nuxt.test.js +0 -267
  459. package/tests/integration/stores/data_style/model/blocks.nuxt.test.js +0 -397
  460. package/tests/integration/stores/data_style/model/corners.nuxt.test.js +0 -264
  461. package/tests/integration/stores/data_style/model/edges.nuxt.test.js +0 -71
  462. package/tests/integration/stores/data_style/model/index.nuxt.test.js +0 -92
  463. package/tests/integration/stores/data_style/model/lines.nuxt.test.js +0 -379
  464. package/tests/integration/stores/data_style/model/points.nuxt.test.js +0 -95
  465. package/tests/integration/stores/data_style/model/surfaces.nuxt.test.js +0 -574
  466. package/tests/integration/stores/viewer.nuxt.test.js +0 -69
  467. package/tests/setup_indexeddb.js +0 -4
  468. package/tests/unit/components/CrsSelector.nuxt.test.js +0 -55
  469. package/tests/unit/components/DragAndDrop.nuxt.test.js +0 -89
  470. package/tests/unit/components/ExtensionSelector.nuxt.test.js +0 -65
  471. package/tests/unit/components/FeedBack/ErrorsBanner.nuxt.test.js +0 -41
  472. package/tests/unit/components/FeedBack/Snackers.nuxt.test.js +0 -49
  473. package/tests/unit/components/FileSelector.nuxt.test.js +0 -124
  474. package/tests/unit/components/FileUploader.nuxt.test.js +0 -69
  475. package/tests/unit/components/MissingFilesSelector.nuxt.test.js +0 -77
  476. package/tests/unit/components/ObjectSelector.nuxt.test.js +0 -118
  477. package/tests/unit/components/PackagesVersions.nuxt.test.js +0 -42
  478. package/tests/unit/components/Step.nuxt.test.js +0 -51
  479. package/tests/unit/components/Stepper.nuxt.test.js +0 -41
  480. package/tests/unit/components/ToolPanel.nuxt.test.js +0 -66
  481. package/tests/unit/composables/api_fetch.nuxt.test.js +0 -75
  482. package/tests/unit/composables/project_manager.nuxt.test.js +0 -299
  483. package/tests/unit/composables/run_function_when_microservices_connected.nuxt.test.js +0 -57
  484. package/tests/unit/composables/upload_file.nuxt.test.js +0 -45
  485. package/tests/unit/composables/virtual_tree.nuxt.test.js +0 -63
  486. package/tests/unit/plugins/project_load.nuxt.test.js +0 -98
  487. package/tests/unit/stores/app.nuxt.test.js +0 -189
  488. package/tests/unit/stores/back.nuxt.test.js +0 -147
  489. package/tests/unit/stores/cloud.nuxt.test.js +0 -90
  490. package/tests/unit/stores/data.nuxt.test.js +0 -162
  491. package/tests/unit/stores/feedback.nuxt.test.js +0 -90
  492. package/tests/unit/stores/infra.nuxt.test.js +0 -313
  493. package/tests/unit/stores/treeview.nuxt.test.js +0 -63
  494. package/tests/unit/stores/viewer.nuxt.test.js +0 -161
  495. package/tests/unit/utils/validate_schema.nuxt.test.js +0 -38
  496. package/tests/utils.js +0 -20
  497. package/tests/vitest.config.js +0 -67
  498. /package/server/api/local/app/{kill.post.js → kill.post.ts} +0 -0
  499. /package/shared/{app_mode.js → app_mode.ts} +0 -0
@@ -1,196 +0,0 @@
1
- import { DEFAULT_NO_DATA_COLOR } from "@ogw_front/utils/default_styles/constants";
2
- // Third party imports
3
- import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json";
4
-
5
- // Local imports
6
- import { getRGBPointsFromPreset } from "@ogw_front/utils/colormap";
7
- import { useMeshPolyhedraCommonStyle } from "./common";
8
- import { useViewerStore } from "@ogw_front/stores/viewer";
9
-
10
- // Local constants
11
- const meshPolyhedraVertexAttributeSchemas =
12
- viewer_schemas.opengeodeweb_viewer.mesh.polyhedra.attribute.vertex;
13
- function isMeshPolyhedraVertexAttributeValid({ name, item, minimum, maximum, colorMap }) {
14
- return (
15
- name !== undefined &&
16
- item !== undefined &&
17
- minimum !== undefined &&
18
- maximum !== undefined &&
19
- colorMap !== undefined
20
- );
21
- }
22
-
23
- // oxlint-disable-next-line max-lines-per-function
24
- function useMeshPolyhedraVertexAttributeStyle() {
25
- const viewerStore = useViewerStore();
26
- const meshPolyhedraCommonStyle = useMeshPolyhedraCommonStyle();
27
- function meshPolyhedraColoring(id) {
28
- return meshPolyhedraCommonStyle.meshPolyhedraStyle(id).coloring;
29
- }
30
- function meshPolyhedraVertexAttribute(id) {
31
- return meshPolyhedraColoring(id).vertex;
32
- }
33
- function meshPolyhedraVertexAttributeStoredConfig(id, name, item) {
34
- const { storedConfigs } = meshPolyhedraVertexAttribute(id);
35
- if (storedConfigs && name in storedConfigs && item in storedConfigs[name]) {
36
- return storedConfigs[name][item];
37
- }
38
- return {
39
- minimum: undefined,
40
- maximum: undefined,
41
- colorMap: undefined,
42
- no_data_color: DEFAULT_NO_DATA_COLOR,
43
- };
44
- }
45
- function mutateMeshPolyhedraVertexStyle(id, values) {
46
- return meshPolyhedraCommonStyle.mutateMeshPolyhedraStyle(id, {
47
- coloring: {
48
- vertex: values,
49
- },
50
- });
51
- }
52
- function setMeshPolyhedraVertexAttributeStoredConfig(id, name, item, config) {
53
- return mutateMeshPolyhedraVertexStyle(id, {
54
- storedConfigs: {
55
- [name]: {
56
- lastItem: item,
57
- [item]: config,
58
- },
59
- },
60
- });
61
- }
62
- function meshPolyhedraVertexAttributeName(id) {
63
- return meshPolyhedraVertexAttribute(id).name;
64
- }
65
- function meshPolyhedraVertexAttributeLastItem(id, name) {
66
- const { storedConfigs } = meshPolyhedraVertexAttribute(id);
67
- if (storedConfigs && name in storedConfigs) {
68
- return storedConfigs[name].lastItem;
69
- }
70
- return 0;
71
- }
72
- function meshPolyhedraVertexAttributeItem(id) {
73
- const { item, name } = meshPolyhedraVertexAttribute(id);
74
- return item ?? meshPolyhedraVertexAttributeLastItem(id, name);
75
- }
76
- function setMeshPolyhedraVertexAttribute(
77
- id,
78
- { name, item, minimum, maximum, colorMap, no_data_color = DEFAULT_NO_DATA_COLOR },
79
- ) {
80
- mutateMeshPolyhedraVertexStyle(id, {
81
- name,
82
- item,
83
- });
84
- setMeshPolyhedraVertexAttributeStoredConfig(id, name, item, {
85
- minimum,
86
- maximum,
87
- colorMap,
88
- no_data_color,
89
- });
90
- const points = getRGBPointsFromPreset(colorMap);
91
- const schema = meshPolyhedraVertexAttributeSchemas.attribute;
92
- const params = {
93
- id,
94
- name,
95
- item,
96
- points,
97
- minimum,
98
- maximum,
99
- no_data_color,
100
- };
101
- return viewerStore.request({
102
- schema,
103
- params,
104
- });
105
- }
106
- function applyVertexAttribute(id) {
107
- const name = meshPolyhedraVertexAttributeName(id);
108
- const item = meshPolyhedraVertexAttributeItem(id);
109
- const storedConfig = meshPolyhedraVertexAttributeStoredConfig(id, name, item);
110
- const attribute = {
111
- name,
112
- item,
113
- minimum: storedConfig.minimum,
114
- maximum: storedConfig.maximum,
115
- colorMap: storedConfig.colorMap,
116
- no_data_color: storedConfig.no_data_color,
117
- };
118
- if (isMeshPolyhedraVertexAttributeValid(attribute)) {
119
- return setMeshPolyhedraVertexAttribute(id, attribute);
120
- }
121
- }
122
- function setMeshPolyhedraVertexAttributeName(id, name) {
123
- const item = meshPolyhedraVertexAttributeLastItem(id, name);
124
- mutateMeshPolyhedraVertexStyle(id, {
125
- name,
126
- item,
127
- });
128
- return applyVertexAttribute(id);
129
- }
130
- function setMeshPolyhedraVertexAttributeItem(id, item) {
131
- mutateMeshPolyhedraVertexStyle(id, {
132
- item,
133
- });
134
- return applyVertexAttribute(id);
135
- }
136
- function meshPolyhedraVertexAttributeRange(id) {
137
- const name = meshPolyhedraVertexAttributeName(id);
138
- const item = meshPolyhedraVertexAttributeItem(id);
139
- const storedConfig = meshPolyhedraVertexAttributeStoredConfig(id, name, item);
140
- return [storedConfig.minimum, storedConfig.maximum];
141
- }
142
- function setMeshPolyhedraVertexAttributeRange(id, minimum, maximum) {
143
- const name = meshPolyhedraVertexAttributeName(id);
144
- const item = meshPolyhedraVertexAttributeItem(id);
145
- setMeshPolyhedraVertexAttributeStoredConfig(id, name, item, {
146
- minimum,
147
- maximum,
148
- });
149
- return applyVertexAttribute(id);
150
- }
151
- function meshPolyhedraVertexAttributeColorMap(id) {
152
- const name = meshPolyhedraVertexAttributeName(id);
153
- const item = meshPolyhedraVertexAttributeItem(id);
154
- const storedConfig = meshPolyhedraVertexAttributeStoredConfig(id, name, item);
155
- return storedConfig.colorMap;
156
- }
157
- function setMeshPolyhedraVertexAttributeColorMap(id, colorMap) {
158
- const name = meshPolyhedraVertexAttributeName(id);
159
- const item = meshPolyhedraVertexAttributeItem(id);
160
- setMeshPolyhedraVertexAttributeStoredConfig(id, name, item, {
161
- colorMap,
162
- });
163
- return applyVertexAttribute(id);
164
- }
165
- function meshPolyhedraVertexAttributeNoDataColor(id) {
166
- const name = meshPolyhedraVertexAttributeName(id);
167
- const item = meshPolyhedraVertexAttributeItem(id);
168
- const storedConfig = meshPolyhedraVertexAttributeStoredConfig(id, name, item);
169
- return storedConfig.no_data_color;
170
- }
171
- async function setMeshPolyhedraVertexAttributeNoDataColor(id, no_data_color) {
172
- const name = meshPolyhedraVertexAttributeName(id);
173
- const item = meshPolyhedraVertexAttributeItem(id);
174
- const storedConfig = meshPolyhedraVertexAttributeStoredConfig(id, name, item);
175
- await setMeshPolyhedraVertexAttributeStoredConfig(id, name, item, {
176
- ...storedConfig,
177
- no_data_color,
178
- });
179
- return applyVertexAttribute(id);
180
- }
181
- return {
182
- meshPolyhedraVertexAttributeName,
183
- meshPolyhedraVertexAttributeItem,
184
- meshPolyhedraVertexAttributeRange,
185
- meshPolyhedraVertexAttributeColorMap,
186
- meshPolyhedraVertexAttributeStoredConfig,
187
- setMeshPolyhedraVertexAttribute,
188
- setMeshPolyhedraVertexAttributeName,
189
- setMeshPolyhedraVertexAttributeItem,
190
- setMeshPolyhedraVertexAttributeRange,
191
- setMeshPolyhedraVertexAttributeColorMap,
192
- meshPolyhedraVertexAttributeNoDataColor,
193
- setMeshPolyhedraVertexAttributeNoDataColor,
194
- };
195
- }
196
- export { isMeshPolyhedraVertexAttributeValid, useMeshPolyhedraVertexAttributeStyle };
@@ -1,38 +0,0 @@
1
- // Third party imports
2
- import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json";
3
-
4
- // Local imports
5
- import { useMeshPolyhedraCommonStyle } from "./common";
6
- import { useViewerStore } from "@ogw_front/stores/viewer";
7
-
8
- // Local constants
9
- const schema = viewer_schemas.opengeodeweb_viewer.mesh.polyhedra.visibility;
10
-
11
- export function useMeshPolyhedraVisibilityStyle() {
12
- const viewerStore = useViewerStore();
13
- const meshPolyhedraCommonStyle = useMeshPolyhedraCommonStyle();
14
-
15
- function meshPolyhedraVisibility(id) {
16
- return meshPolyhedraCommonStyle.meshPolyhedraStyle(id).visibility;
17
- }
18
- function setMeshPolyhedraVisibility(id, visibility) {
19
- const params = { id, visibility };
20
- return viewerStore.request(
21
- {
22
- schema,
23
- params,
24
- },
25
- {
26
- response_function: () =>
27
- meshPolyhedraCommonStyle.mutateMeshPolyhedraStyle(id, {
28
- visibility,
29
- }),
30
- },
31
- );
32
- }
33
-
34
- return {
35
- meshPolyhedraVisibility,
36
- setMeshPolyhedraVisibility,
37
- };
38
- }
@@ -1,51 +0,0 @@
1
- import merge from "lodash/merge";
2
- import { useDataStyleState } from "@ogw_internal/stores/data_style/state";
3
- import { useModelCommonStyle } from "@ogw_internal/stores/data_style/model/common";
4
-
5
- export function useModelBlocksCommonStyle() {
6
- const dataStyleState = useDataStyleState();
7
- const modelCommonStyle = useModelCommonStyle();
8
-
9
- function modelBlocksStyle(id) {
10
- return dataStyleState.getStyle(id).blocks;
11
- }
12
-
13
- function modelComponentTypeBlocksStyle(id) {
14
- const defaultStyle = modelBlocksStyle(id);
15
- const typeStyle = dataStyleState.getModelComponentTypeStyle(id, "Block");
16
- return merge({}, defaultStyle, typeStyle);
17
- }
18
-
19
- function modelBlockStyle(id, block_id) {
20
- if (block_id === undefined) {
21
- return modelComponentTypeBlocksStyle(id);
22
- }
23
- const typeStyle = modelComponentTypeBlocksStyle(id);
24
- const individualStyle = dataStyleState.getComponentStyle(id, block_id);
25
- return merge({}, typeStyle, individualStyle);
26
- }
27
-
28
- function modelBlockColoring(id, block_id) {
29
- return modelBlockStyle(id, block_id).coloring;
30
- }
31
-
32
- function mutateModelBlocksColoring(id, blocks_ids, values) {
33
- return modelCommonStyle.mutateComponentStyles(id, blocks_ids, {
34
- coloring: values,
35
- });
36
- }
37
-
38
- function mutateModelBlocksTypeColoring(id, values) {
39
- return modelCommonStyle.mutateModelComponentTypeStyle(id, "Block", {
40
- coloring: values,
41
- });
42
- }
43
-
44
- return {
45
- modelBlocksStyle,
46
- modelBlockStyle,
47
- modelBlockColoring,
48
- mutateModelBlocksColoring,
49
- mutateModelBlocksTypeColoring,
50
- };
51
- }
@@ -1,215 +0,0 @@
1
- import { DEFAULT_NO_DATA_COLOR } from "@ogw_front/utils/default_styles/constants";
2
- // Third party imports
3
- import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json";
4
-
5
- // Local imports
6
- import { getRGBPointsFromPreset } from "@ogw_front/utils/colormap";
7
- import { useDataStore } from "@ogw_front/stores/data";
8
- import { useModelBlocksCommonStyle } from "./common";
9
- import { useViewerStore } from "@ogw_front/stores/viewer";
10
-
11
- // Local constants
12
- const modelBlockPolyhedronAttributeSchema =
13
- viewer_schemas.opengeodeweb_viewer.model.blocks.attribute.polyhedron.attribute;
14
- function isModelBlocksPolyhedronAttributeValid({ name, item, minimum, maximum, colorMap }) {
15
- return (
16
- name !== undefined &&
17
- item !== undefined &&
18
- minimum !== undefined &&
19
- maximum !== undefined &&
20
- colorMap !== undefined
21
- );
22
- }
23
-
24
- // oxlint-disable-next-line max-lines-per-function
25
- function useModelBlocksPolyhedronAttribute() {
26
- const dataStore = useDataStore();
27
- const modelBlocksCommonStyle = useModelBlocksCommonStyle();
28
- const viewerStore = useViewerStore();
29
- function modelBlocksPolyhedronAttribute(modelId, blockId) {
30
- return modelBlocksCommonStyle.modelBlockColoring(modelId, blockId).polyhedron;
31
- }
32
- function modelBlocksPolyhedronAttributeStoredConfig(modelId, blockId, name, item) {
33
- const { storedConfigs } = modelBlocksPolyhedronAttribute(modelId, blockId);
34
- if (storedConfigs && name in storedConfigs && item in storedConfigs[name]) {
35
- return storedConfigs[name][item];
36
- }
37
- return {
38
- minimum: undefined,
39
- maximum: undefined,
40
- colorMap: undefined,
41
- no_data_color: DEFAULT_NO_DATA_COLOR,
42
- };
43
- }
44
- function mutateModelBlocksPolyhedronStyle(modelId, blockIds, values) {
45
- if (blockIds.length > 1) {
46
- modelBlocksCommonStyle.mutateModelBlocksTypeColoring(modelId, {
47
- polyhedron: values,
48
- });
49
- }
50
- return modelBlocksCommonStyle.mutateModelBlocksColoring(modelId, blockIds, {
51
- polyhedron: values,
52
- });
53
- }
54
- function setModelBlocksPolyhedronAttributeStoredConfig(modelId, blockIds, name, item, config) {
55
- return mutateModelBlocksPolyhedronStyle(modelId, blockIds, {
56
- storedConfigs: {
57
- [name]: {
58
- lastItem: item,
59
- [item]: config,
60
- },
61
- },
62
- });
63
- }
64
- function modelBlocksPolyhedronAttributeName(modelId, blockId) {
65
- return modelBlocksPolyhedronAttribute(modelId, blockId).name;
66
- }
67
- function modelBlocksPolyhedronAttributeLastItem(modelId, blockId, name) {
68
- const { storedConfigs } = modelBlocksPolyhedronAttribute(modelId, blockId);
69
- if (!(name in storedConfigs)) {
70
- return 0;
71
- }
72
- return storedConfigs[name].lastItem;
73
- }
74
- function modelBlocksPolyhedronAttributeItem(modelId, blockId) {
75
- const polyhedronAttribute = modelBlocksPolyhedronAttribute(modelId, blockId);
76
- return (
77
- polyhedronAttribute.item ??
78
- modelBlocksPolyhedronAttributeLastItem(modelId, blockId, polyhedronAttribute.name)
79
- );
80
- }
81
- function modelBlocksPolyhedronAttributeRange(modelId, blockId) {
82
- const name = modelBlocksPolyhedronAttributeName(modelId, blockId);
83
- const item = modelBlocksPolyhedronAttributeItem(modelId, blockId);
84
- const storedConfig = modelBlocksPolyhedronAttributeStoredConfig(modelId, blockId, name, item);
85
- const { minimum, maximum } = storedConfig;
86
- return [minimum, maximum];
87
- }
88
- function modelBlocksPolyhedronAttributeColorMap(modelId, blockId) {
89
- const name = modelBlocksPolyhedronAttributeName(modelId, blockId);
90
- const item = modelBlocksPolyhedronAttributeItem(modelId, blockId);
91
- const storedConfig = modelBlocksPolyhedronAttributeStoredConfig(modelId, blockId, name, item);
92
- return storedConfig.colorMap;
93
- }
94
- async function setModelBlocksPolyhedronAttribute(
95
- modelId,
96
- blockIds,
97
- { name, item, minimum, maximum, colorMap, no_data_color = DEFAULT_NO_DATA_COLOR },
98
- ) {
99
- mutateModelBlocksPolyhedronStyle(modelId, blockIds, {
100
- name,
101
- item,
102
- });
103
- setModelBlocksPolyhedronAttributeStoredConfig(modelId, blockIds, name, item, {
104
- minimum,
105
- maximum,
106
- colorMap,
107
- no_data_color,
108
- });
109
- const points = getRGBPointsFromPreset(colorMap);
110
- const viewer_ids = await dataStore.getMeshComponentsViewerIds(modelId, blockIds);
111
- const params = {
112
- id: modelId,
113
- block_ids: viewer_ids,
114
- name,
115
- item,
116
- points,
117
- minimum,
118
- maximum,
119
- no_data_color,
120
- };
121
- return viewerStore.request({
122
- schema: modelBlockPolyhedronAttributeSchema,
123
- params,
124
- });
125
- }
126
- function applyPolyhedronAttribute(modelId, blockIds) {
127
- const name = modelBlocksPolyhedronAttributeName(modelId, blockIds[0]);
128
- const item = modelBlocksPolyhedronAttributeItem(modelId, blockIds[0]);
129
- const storedConfig = modelBlocksPolyhedronAttributeStoredConfig(
130
- modelId,
131
- blockIds[0],
132
- name,
133
- item,
134
- );
135
- const attribute = {
136
- name,
137
- item,
138
- minimum: storedConfig.minimum,
139
- maximum: storedConfig.maximum,
140
- colorMap: storedConfig.colorMap,
141
- no_data_color: storedConfig.no_data_color,
142
- };
143
- if (isModelBlocksPolyhedronAttributeValid(attribute)) {
144
- return setModelBlocksPolyhedronAttribute(modelId, blockIds, attribute);
145
- }
146
- return Promise.resolve();
147
- }
148
- function setModelBlocksPolyhedronAttributeName(modelId, blockIds, name) {
149
- const item = modelBlocksPolyhedronAttributeLastItem(modelId, blockIds[0], name);
150
- mutateModelBlocksPolyhedronStyle(modelId, blockIds, {
151
- name,
152
- item,
153
- });
154
- return applyPolyhedronAttribute(modelId, blockIds);
155
- }
156
- function setModelBlocksPolyhedronAttributeItem(modelId, blockIds, item) {
157
- mutateModelBlocksPolyhedronStyle(modelId, blockIds, {
158
- item,
159
- });
160
- return applyPolyhedronAttribute(modelId, blockIds);
161
- }
162
- function setModelBlocksPolyhedronAttributeRange(modelId, blockIds, minimum, maximum) {
163
- const name = modelBlocksPolyhedronAttributeName(modelId, blockIds[0]);
164
- const item = modelBlocksPolyhedronAttributeItem(modelId, blockIds[0]);
165
- setModelBlocksPolyhedronAttributeStoredConfig(modelId, blockIds, name, item, {
166
- minimum,
167
- maximum,
168
- });
169
- return applyPolyhedronAttribute(modelId, blockIds);
170
- }
171
- function setModelBlocksPolyhedronAttributeColorMap(modelId, blockIds, colorMap) {
172
- const name = modelBlocksPolyhedronAttributeName(modelId, blockIds[0]);
173
- const item = modelBlocksPolyhedronAttributeItem(modelId, blockIds[0]);
174
- setModelBlocksPolyhedronAttributeStoredConfig(modelId, blockIds, name, item, {
175
- colorMap,
176
- });
177
- return applyPolyhedronAttribute(modelId, blockIds);
178
- }
179
- function modelBlocksPolyhedronAttributeNoDataColor(modelId, blockId) {
180
- const name = modelBlocksPolyhedronAttributeName(modelId, blockId);
181
- const item = modelBlocksPolyhedronAttributeItem(modelId, blockId);
182
- const storedConfig = modelBlocksPolyhedronAttributeStoredConfig(modelId, blockId, name, item);
183
- return storedConfig.no_data_color;
184
- }
185
- async function setModelBlocksPolyhedronAttributeNoDataColor(modelId, blockIds, no_data_color) {
186
- const name = modelBlocksPolyhedronAttributeName(modelId, blockIds[0]);
187
- const item = modelBlocksPolyhedronAttributeItem(modelId, blockIds[0]);
188
- const storedConfig = modelBlocksPolyhedronAttributeStoredConfig(
189
- modelId,
190
- blockIds[0],
191
- name,
192
- item,
193
- );
194
- await setModelBlocksPolyhedronAttributeStoredConfig(modelId, blockIds, name, item, {
195
- ...storedConfig,
196
- no_data_color,
197
- });
198
- return applyPolyhedronAttribute(modelId, blockIds);
199
- }
200
- return {
201
- modelBlocksPolyhedronAttributeName,
202
- modelBlocksPolyhedronAttributeItem,
203
- modelBlocksPolyhedronAttributeRange,
204
- modelBlocksPolyhedronAttributeColorMap,
205
- modelBlocksPolyhedronAttributeStoredConfig,
206
- setModelBlocksPolyhedronAttribute,
207
- setModelBlocksPolyhedronAttributeName,
208
- setModelBlocksPolyhedronAttributeItem,
209
- setModelBlocksPolyhedronAttributeRange,
210
- setModelBlocksPolyhedronAttributeColorMap,
211
- modelBlocksPolyhedronAttributeNoDataColor,
212
- setModelBlocksPolyhedronAttributeNoDataColor,
213
- };
214
- }
215
- export { isModelBlocksPolyhedronAttributeValid, useModelBlocksPolyhedronAttribute };
@@ -1,204 +0,0 @@
1
- import { DEFAULT_NO_DATA_COLOR } from "@ogw_front/utils/default_styles/constants";
2
- // Third party imports
3
- import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json";
4
-
5
- // Local imports
6
- import { getRGBPointsFromPreset } from "@ogw_front/utils/colormap";
7
- import { useDataStore } from "@ogw_front/stores/data";
8
- import { useModelBlocksCommonStyle } from "./common";
9
- import { useViewerStore } from "@ogw_front/stores/viewer";
10
-
11
- // Local constants
12
- const attributeSchema = viewer_schemas.opengeodeweb_viewer.model.blocks.attribute.vertex.attribute;
13
- function isModelBlocksVertexAttributeValid({ name, item, minimum, maximum, colorMap }) {
14
- return (
15
- name !== undefined &&
16
- item !== undefined &&
17
- minimum !== undefined &&
18
- maximum !== undefined &&
19
- colorMap !== undefined
20
- );
21
- }
22
-
23
- // oxlint-disable-next-line max-lines-per-function
24
- function useModelBlocksVertexAttribute() {
25
- const dataStore = useDataStore();
26
- const modelBlocksCommonStyle = useModelBlocksCommonStyle();
27
- const viewerStore = useViewerStore();
28
- function modelBlocksVertexAttribute(modelId, blockId) {
29
- return modelBlocksCommonStyle.modelBlockColoring(modelId, blockId).vertex;
30
- }
31
- function modelBlocksVertexAttributeStoredConfig(modelId, blockId, name, item) {
32
- const { storedConfigs } = modelBlocksVertexAttribute(modelId, blockId);
33
- if (storedConfigs && name in storedConfigs && item in storedConfigs[name]) {
34
- return storedConfigs[name][item];
35
- }
36
- return {
37
- minimum: undefined,
38
- maximum: undefined,
39
- colorMap: undefined,
40
- no_data_color: DEFAULT_NO_DATA_COLOR,
41
- };
42
- }
43
- function mutateModelBlocksVertexStyle(modelId, blockIds, values) {
44
- if (blockIds.length > 1) {
45
- modelBlocksCommonStyle.mutateModelBlocksTypeColoring(modelId, {
46
- vertex: values,
47
- });
48
- }
49
- return modelBlocksCommonStyle.mutateModelBlocksColoring(modelId, blockIds, {
50
- vertex: values,
51
- });
52
- }
53
- function setModelBlocksVertexAttributeStoredConfig(modelId, blockIds, name, item, config) {
54
- return mutateModelBlocksVertexStyle(modelId, blockIds, {
55
- storedConfigs: {
56
- [name]: {
57
- lastItem: item,
58
- [item]: config,
59
- },
60
- },
61
- });
62
- }
63
- function modelBlocksVertexAttributeName(modelId, blockId) {
64
- return modelBlocksVertexAttribute(modelId, blockId).name;
65
- }
66
- function modelBlocksVertexAttributeLastItem(modelId, blockId, name) {
67
- const { storedConfigs } = modelBlocksVertexAttribute(modelId, blockId);
68
- if (!(name in storedConfigs)) {
69
- return 0;
70
- }
71
- return storedConfigs[name].lastItem;
72
- }
73
- function modelBlocksVertexAttributeItem(modelId, blockId) {
74
- const vertexAttribute = modelBlocksVertexAttribute(modelId, blockId);
75
- return (
76
- vertexAttribute.item ??
77
- modelBlocksVertexAttributeLastItem(modelId, blockId, vertexAttribute.name)
78
- );
79
- }
80
- function modelBlocksVertexAttributeRange(modelId, blockId) {
81
- const name = modelBlocksVertexAttributeName(modelId, blockId);
82
- const item = modelBlocksVertexAttributeItem(modelId, blockId);
83
- const storedConfig = modelBlocksVertexAttributeStoredConfig(modelId, blockId, name, item);
84
- const { minimum, maximum } = storedConfig;
85
- return [minimum, maximum];
86
- }
87
- function modelBlocksVertexAttributeColorMap(modelId, blockId) {
88
- const name = modelBlocksVertexAttributeName(modelId, blockId);
89
- const item = modelBlocksVertexAttributeItem(modelId, blockId);
90
- const storedConfig = modelBlocksVertexAttributeStoredConfig(modelId, blockId, name, item);
91
- return storedConfig.colorMap;
92
- }
93
- async function setModelBlocksVertexAttribute(
94
- modelId,
95
- blockIds,
96
- { name, item, minimum, maximum, colorMap, no_data_color = DEFAULT_NO_DATA_COLOR },
97
- ) {
98
- mutateModelBlocksVertexStyle(modelId, blockIds, {
99
- name,
100
- item,
101
- });
102
- setModelBlocksVertexAttributeStoredConfig(modelId, blockIds, name, item, {
103
- minimum,
104
- maximum,
105
- colorMap,
106
- no_data_color,
107
- });
108
- const points = getRGBPointsFromPreset(colorMap);
109
- const block_viewer_ids = await dataStore.getMeshComponentsViewerIds(modelId, blockIds);
110
- const params = {
111
- id: modelId,
112
- block_ids: block_viewer_ids,
113
- name,
114
- item,
115
- points,
116
- minimum,
117
- maximum,
118
- no_data_color,
119
- };
120
- return viewerStore.request({
121
- schema: attributeSchema,
122
- params,
123
- });
124
- }
125
- function applyVertexAttribute(modelId, blockIds) {
126
- const name = modelBlocksVertexAttributeName(modelId, blockIds[0]);
127
- const item = modelBlocksVertexAttributeItem(modelId, blockIds[0]);
128
- const storedConfig = modelBlocksVertexAttributeStoredConfig(modelId, blockIds[0], name, item);
129
- const attribute = {
130
- name,
131
- item,
132
- minimum: storedConfig.minimum,
133
- maximum: storedConfig.maximum,
134
- colorMap: storedConfig.colorMap,
135
- no_data_color: storedConfig.no_data_color,
136
- };
137
- if (isModelBlocksVertexAttributeValid(attribute)) {
138
- return setModelBlocksVertexAttribute(modelId, blockIds, attribute);
139
- }
140
- return Promise.resolve();
141
- }
142
- function setModelBlocksVertexAttributeName(modelId, blockIds, name) {
143
- const item = modelBlocksVertexAttributeLastItem(modelId, blockIds[0], name);
144
- mutateModelBlocksVertexStyle(modelId, blockIds, {
145
- name,
146
- item,
147
- });
148
- return applyVertexAttribute(modelId, blockIds);
149
- }
150
- function setModelBlocksVertexAttributeItem(modelId, blockIds, item) {
151
- mutateModelBlocksVertexStyle(modelId, blockIds, {
152
- item,
153
- });
154
- return applyVertexAttribute(modelId, blockIds);
155
- }
156
- function setModelBlocksVertexAttributeRange(modelId, blockIds, minimum, maximum) {
157
- const name = modelBlocksVertexAttributeName(modelId, blockIds[0]);
158
- const item = modelBlocksVertexAttributeItem(modelId, blockIds[0]);
159
- setModelBlocksVertexAttributeStoredConfig(modelId, blockIds, name, item, {
160
- minimum,
161
- maximum,
162
- });
163
- return applyVertexAttribute(modelId, blockIds);
164
- }
165
- function setModelBlocksVertexAttributeColorMap(modelId, blockIds, colorMap) {
166
- const name = modelBlocksVertexAttributeName(modelId, blockIds[0]);
167
- const item = modelBlocksVertexAttributeItem(modelId, blockIds[0]);
168
- setModelBlocksVertexAttributeStoredConfig(modelId, blockIds, name, item, {
169
- colorMap,
170
- });
171
- return applyVertexAttribute(modelId, blockIds);
172
- }
173
- function modelBlocksVertexAttributeNoDataColor(modelId, blockId) {
174
- const name = modelBlocksVertexAttributeName(modelId, blockId);
175
- const item = modelBlocksVertexAttributeItem(modelId, blockId);
176
- const storedConfig = modelBlocksVertexAttributeStoredConfig(modelId, blockId, name, item);
177
- return storedConfig.no_data_color;
178
- }
179
- async function setModelBlocksVertexAttributeNoDataColor(modelId, blockIds, no_data_color) {
180
- const name = modelBlocksVertexAttributeName(modelId, blockIds[0]);
181
- const item = modelBlocksVertexAttributeItem(modelId, blockIds[0]);
182
- const storedConfig = modelBlocksVertexAttributeStoredConfig(modelId, blockIds[0], name, item);
183
- await setModelBlocksVertexAttributeStoredConfig(modelId, blockIds, name, item, {
184
- ...storedConfig,
185
- no_data_color,
186
- });
187
- return applyVertexAttribute(modelId, blockIds);
188
- }
189
- return {
190
- modelBlocksVertexAttributeName,
191
- modelBlocksVertexAttributeItem,
192
- modelBlocksVertexAttributeRange,
193
- modelBlocksVertexAttributeColorMap,
194
- modelBlocksVertexAttributeStoredConfig,
195
- setModelBlocksVertexAttribute,
196
- setModelBlocksVertexAttributeName,
197
- setModelBlocksVertexAttributeItem,
198
- setModelBlocksVertexAttributeRange,
199
- setModelBlocksVertexAttributeColorMap,
200
- modelBlocksVertexAttributeNoDataColor,
201
- setModelBlocksVertexAttributeNoDataColor,
202
- };
203
- }
204
- export { isModelBlocksVertexAttributeValid, useModelBlocksVertexAttribute };