@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 { useMeshPolygonsCommonStyle } from "./common";
8
- import { useViewerStore } from "@ogw_front/stores/viewer";
9
-
10
- // Local constants
11
- const meshPolygonsVertexAttributeSchemas =
12
- viewer_schemas.opengeodeweb_viewer.mesh.polygons.attribute.vertex;
13
- function isMeshPolygonsVertexAttributeValid({ 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 useMeshPolygonsVertexAttributeStyle() {
25
- const viewerStore = useViewerStore();
26
- const meshPolygonsCommonStyle = useMeshPolygonsCommonStyle();
27
- function meshPolygonsColoring(id) {
28
- return meshPolygonsCommonStyle.meshPolygonsStyle(id).coloring;
29
- }
30
- function meshPolygonsVertexAttribute(id) {
31
- return meshPolygonsColoring(id).vertex;
32
- }
33
- function meshPolygonsVertexAttributeStoredConfig(id, name, item) {
34
- const { storedConfigs } = meshPolygonsVertexAttribute(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 mutateMeshPolygonsVertexStyle(id, values) {
46
- return meshPolygonsCommonStyle.mutateMeshPolygonsStyle(id, {
47
- coloring: {
48
- vertex: values,
49
- },
50
- });
51
- }
52
- function setMeshPolygonsVertexAttributeStoredConfig(id, name, item, config) {
53
- return mutateMeshPolygonsVertexStyle(id, {
54
- storedConfigs: {
55
- [name]: {
56
- lastItem: item,
57
- [item]: config,
58
- },
59
- },
60
- });
61
- }
62
- function meshPolygonsVertexAttributeName(id) {
63
- return meshPolygonsVertexAttribute(id).name;
64
- }
65
- function meshPolygonsVertexAttributeLastItem(id, name) {
66
- const { storedConfigs } = meshPolygonsVertexAttribute(id);
67
- if (storedConfigs && name in storedConfigs) {
68
- return storedConfigs[name].lastItem;
69
- }
70
- return 0;
71
- }
72
- function meshPolygonsVertexAttributeItem(id) {
73
- const { item, name } = meshPolygonsVertexAttribute(id);
74
- return item ?? meshPolygonsVertexAttributeLastItem(id, name);
75
- }
76
- function setMeshPolygonsVertexAttribute(
77
- id,
78
- { name, item, minimum, maximum, colorMap, no_data_color = DEFAULT_NO_DATA_COLOR },
79
- ) {
80
- mutateMeshPolygonsVertexStyle(id, {
81
- name,
82
- item,
83
- });
84
- setMeshPolygonsVertexAttributeStoredConfig(id, name, item, {
85
- minimum,
86
- maximum,
87
- colorMap,
88
- no_data_color,
89
- });
90
- const points = getRGBPointsFromPreset(colorMap);
91
- const schema = meshPolygonsVertexAttributeSchemas.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 = meshPolygonsVertexAttributeName(id);
108
- const item = meshPolygonsVertexAttributeItem(id);
109
- const storedConfig = meshPolygonsVertexAttributeStoredConfig(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 (isMeshPolygonsVertexAttributeValid(attribute)) {
119
- return setMeshPolygonsVertexAttribute(id, attribute);
120
- }
121
- }
122
- function setMeshPolygonsVertexAttributeName(id, name) {
123
- const item = meshPolygonsVertexAttributeLastItem(id, name);
124
- mutateMeshPolygonsVertexStyle(id, {
125
- name,
126
- item,
127
- });
128
- return applyVertexAttribute(id);
129
- }
130
- function setMeshPolygonsVertexAttributeItem(id, item) {
131
- mutateMeshPolygonsVertexStyle(id, {
132
- item,
133
- });
134
- return applyVertexAttribute(id);
135
- }
136
- function meshPolygonsVertexAttributeRange(id) {
137
- const name = meshPolygonsVertexAttributeName(id);
138
- const item = meshPolygonsVertexAttributeItem(id);
139
- const storedConfig = meshPolygonsVertexAttributeStoredConfig(id, name, item);
140
- return [storedConfig.minimum, storedConfig.maximum];
141
- }
142
- function setMeshPolygonsVertexAttributeRange(id, minimum, maximum) {
143
- const name = meshPolygonsVertexAttributeName(id);
144
- const item = meshPolygonsVertexAttributeItem(id);
145
- setMeshPolygonsVertexAttributeStoredConfig(id, name, item, {
146
- minimum,
147
- maximum,
148
- });
149
- return applyVertexAttribute(id);
150
- }
151
- function meshPolygonsVertexAttributeColorMap(id) {
152
- const name = meshPolygonsVertexAttributeName(id);
153
- const item = meshPolygonsVertexAttributeItem(id);
154
- const storedConfig = meshPolygonsVertexAttributeStoredConfig(id, name, item);
155
- return storedConfig.colorMap;
156
- }
157
- function setMeshPolygonsVertexAttributeColorMap(id, colorMap) {
158
- const name = meshPolygonsVertexAttributeName(id);
159
- const item = meshPolygonsVertexAttributeItem(id);
160
- setMeshPolygonsVertexAttributeStoredConfig(id, name, item, {
161
- colorMap,
162
- });
163
- return applyVertexAttribute(id);
164
- }
165
- function meshPolygonsVertexAttributeNoDataColor(id) {
166
- const name = meshPolygonsVertexAttributeName(id);
167
- const item = meshPolygonsVertexAttributeItem(id);
168
- const storedConfig = meshPolygonsVertexAttributeStoredConfig(id, name, item);
169
- return storedConfig.no_data_color;
170
- }
171
- async function setMeshPolygonsVertexAttributeNoDataColor(id, no_data_color) {
172
- const name = meshPolygonsVertexAttributeName(id);
173
- const item = meshPolygonsVertexAttributeItem(id);
174
- const storedConfig = meshPolygonsVertexAttributeStoredConfig(id, name, item);
175
- await setMeshPolygonsVertexAttributeStoredConfig(id, name, item, {
176
- ...storedConfig,
177
- no_data_color,
178
- });
179
- return applyVertexAttribute(id);
180
- }
181
- return {
182
- meshPolygonsVertexAttributeName,
183
- meshPolygonsVertexAttributeItem,
184
- meshPolygonsVertexAttributeRange,
185
- meshPolygonsVertexAttributeColorMap,
186
- meshPolygonsVertexAttributeStoredConfig,
187
- setMeshPolygonsVertexAttribute,
188
- setMeshPolygonsVertexAttributeName,
189
- setMeshPolygonsVertexAttributeItem,
190
- setMeshPolygonsVertexAttributeRange,
191
- setMeshPolygonsVertexAttributeColorMap,
192
- meshPolygonsVertexAttributeNoDataColor,
193
- setMeshPolygonsVertexAttributeNoDataColor,
194
- };
195
- }
196
- export { isMeshPolygonsVertexAttributeValid, useMeshPolygonsVertexAttributeStyle };
@@ -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 { useMeshPolygonsCommonStyle } from "./common";
6
- import { useViewerStore } from "@ogw_front/stores/viewer";
7
-
8
- // Local constants
9
- const schema = viewer_schemas.opengeodeweb_viewer.mesh.polygons.visibility;
10
-
11
- export function useMeshPolygonsVisibilityStyle() {
12
- const viewerStore = useViewerStore();
13
- const meshPolygonsCommonStyle = useMeshPolygonsCommonStyle();
14
-
15
- function meshPolygonsVisibility(id) {
16
- return meshPolygonsCommonStyle.meshPolygonsStyle(id).visibility;
17
- }
18
- function setMeshPolygonsVisibility(id, visibility) {
19
- const params = { id, visibility };
20
- return viewerStore.request(
21
- {
22
- schema,
23
- params,
24
- },
25
- {
26
- response_function: () =>
27
- meshPolygonsCommonStyle.mutateMeshPolygonsStyle(id, {
28
- visibility,
29
- }),
30
- },
31
- );
32
- }
33
-
34
- return {
35
- meshPolygonsVisibility,
36
- setMeshPolygonsVisibility,
37
- };
38
- }
@@ -1,32 +0,0 @@
1
- import { useDataStyleState } from "@ogw_internal/stores/data_style/state";
2
-
3
- export function useMeshPolyhedraCommonStyle() {
4
- const dataStyleState = useDataStyleState();
5
-
6
- function mutateMeshPolyhedraStyle(id, values) {
7
- return dataStyleState.mutateStyle(id, {
8
- polyhedra: values,
9
- });
10
- }
11
-
12
- function meshPolyhedraStyle(id) {
13
- return dataStyleState.getStyle(id).polyhedra;
14
- }
15
-
16
- function meshPolyhedraColoring(id) {
17
- return meshPolyhedraStyle(id).coloring;
18
- }
19
-
20
- function mutateMeshPolyhedraColoring(id, values) {
21
- return mutateMeshPolyhedraStyle(id, {
22
- coloring: values,
23
- });
24
- }
25
-
26
- return {
27
- meshPolyhedraStyle,
28
- meshPolyhedraColoring,
29
- mutateMeshPolyhedraStyle,
30
- mutateMeshPolyhedraColoring,
31
- };
32
- }
@@ -1,98 +0,0 @@
1
- // Third party imports
2
-
3
- // Local imports
4
- import {
5
- isMeshPolyhedraPolyhedronAttributeValid,
6
- useMeshPolyhedraPolyhedronAttributeStyle,
7
- } from "./polyhedron";
8
- import {
9
- isMeshPolyhedraVertexAttributeValid,
10
- useMeshPolyhedraVertexAttributeStyle,
11
- } from "./vertex";
12
- import { useMeshPolyhedraColorStyle } from "./color";
13
- import { useMeshPolyhedraCommonStyle } from "./common";
14
- import { useMeshPolyhedraVisibilityStyle } from "./visibility";
15
-
16
- // Local constants
17
-
18
- export function useMeshPolyhedraStyle() {
19
- const meshPolyhedraCommonStyle = useMeshPolyhedraCommonStyle();
20
- const meshPolyhedraVisibility = useMeshPolyhedraVisibilityStyle();
21
- const meshPolyhedraColorStyle = useMeshPolyhedraColorStyle();
22
-
23
- function meshPolyhedraColoring(id) {
24
- return meshPolyhedraCommonStyle.meshPolyhedraColoring(id);
25
- }
26
- const meshPolyhedraVertexAttributeStyle = useMeshPolyhedraVertexAttributeStyle();
27
- const meshPolyhedraPolyhedronAttributeStyle = useMeshPolyhedraPolyhedronAttributeStyle();
28
-
29
- function meshPolyhedraActiveColoring(id) {
30
- return meshPolyhedraColoring(id).active;
31
- }
32
-
33
- async function setMeshPolyhedraActiveColoring(id, type) {
34
- await meshPolyhedraCommonStyle.mutateMeshPolyhedraStyle(id, {
35
- coloring: { active: type },
36
- });
37
- if (type === "constant") {
38
- return meshPolyhedraColorStyle.setMeshPolyhedraColor(
39
- id,
40
- meshPolyhedraColorStyle.meshPolyhedraColor(id),
41
- );
42
- }
43
- if (type === "vertex") {
44
- const name = meshPolyhedraVertexAttributeStyle.meshPolyhedraVertexAttributeName(id);
45
- const item = meshPolyhedraVertexAttributeStyle.meshPolyhedraVertexAttributeItem(id);
46
- const [minimum, maximum] =
47
- meshPolyhedraVertexAttributeStyle.meshPolyhedraVertexAttributeRange(id);
48
- const colorMap = meshPolyhedraVertexAttributeStyle.meshPolyhedraVertexAttributeColorMap(id);
49
- const vertex_attribute = { name, item, minimum, maximum, colorMap };
50
- if (!isMeshPolyhedraVertexAttributeValid(vertex_attribute)) {
51
- return;
52
- }
53
- return meshPolyhedraVertexAttributeStyle.setMeshPolyhedraVertexAttribute(
54
- id,
55
- vertex_attribute,
56
- );
57
- }
58
- if (type === "polyhedron") {
59
- const name = meshPolyhedraPolyhedronAttributeStyle.meshPolyhedraPolyhedronAttributeName(id);
60
- const item = meshPolyhedraPolyhedronAttributeStyle.meshPolyhedraPolyhedronAttributeItem(id);
61
- const [minimum, maximum] =
62
- meshPolyhedraPolyhedronAttributeStyle.meshPolyhedraPolyhedronAttributeRange(id);
63
- const colorMap =
64
- meshPolyhedraPolyhedronAttributeStyle.meshPolyhedraPolyhedronAttributeColorMap(id);
65
- const polyhedron_attribute = { name, item, minimum, maximum, colorMap };
66
- if (!isMeshPolyhedraPolyhedronAttributeValid(polyhedron_attribute)) {
67
- return;
68
- }
69
- return meshPolyhedraPolyhedronAttributeStyle.setMeshPolyhedraPolyhedronAttribute(
70
- id,
71
- polyhedron_attribute,
72
- );
73
- }
74
- throw new Error(`Unknown mesh polyhedra coloring type: ${type}`);
75
- }
76
-
77
- function applyMeshPolyhedraStyle(id) {
78
- return Promise.all([
79
- meshPolyhedraVisibility.setMeshPolyhedraVisibility(
80
- id,
81
- meshPolyhedraVisibility.meshPolyhedraVisibility(id),
82
- ),
83
- setMeshPolyhedraActiveColoring(id, meshPolyhedraActiveColoring(id)),
84
- ]);
85
- }
86
-
87
- return {
88
- ...meshPolyhedraCommonStyle,
89
- meshPolyhedraColoring,
90
- meshPolyhedraActiveColoring,
91
- setMeshPolyhedraActiveColoring,
92
- applyMeshPolyhedraStyle,
93
- ...meshPolyhedraVisibility,
94
- ...meshPolyhedraColorStyle,
95
- ...meshPolyhedraVertexAttributeStyle,
96
- ...meshPolyhedraPolyhedronAttributeStyle,
97
- };
98
- }
@@ -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 meshPolyhedraPolyhedronAttributeSchemas =
12
- viewer_schemas.opengeodeweb_viewer.mesh.polyhedra.attribute.polyhedron;
13
- function isMeshPolyhedraPolyhedronAttributeValid({ 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 useMeshPolyhedraPolyhedronAttributeStyle() {
25
- const viewerStore = useViewerStore();
26
- const meshPolyhedraCommonStyle = useMeshPolyhedraCommonStyle();
27
- function meshPolyhedraColoring(id) {
28
- return meshPolyhedraCommonStyle.meshPolyhedraStyle(id).coloring;
29
- }
30
- function meshPolyhedraPolyhedronAttribute(id) {
31
- return meshPolyhedraColoring(id).polyhedron;
32
- }
33
- function meshPolyhedraPolyhedronAttributeStoredConfig(id, name, item) {
34
- const { storedConfigs } = meshPolyhedraPolyhedronAttribute(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 mutateMeshPolyhedraPolyhedronStyle(id, values) {
46
- return meshPolyhedraCommonStyle.mutateMeshPolyhedraStyle(id, {
47
- coloring: {
48
- polyhedron: values,
49
- },
50
- });
51
- }
52
- function setMeshPolyhedraPolyhedronAttributeStoredConfig(id, name, item, config) {
53
- return mutateMeshPolyhedraPolyhedronStyle(id, {
54
- storedConfigs: {
55
- [name]: {
56
- lastItem: item,
57
- [item]: config,
58
- },
59
- },
60
- });
61
- }
62
- function meshPolyhedraPolyhedronAttributeName(id) {
63
- return meshPolyhedraPolyhedronAttribute(id).name;
64
- }
65
- function meshPolyhedraPolyhedronAttributeLastItem(id, name) {
66
- const { storedConfigs } = meshPolyhedraPolyhedronAttribute(id);
67
- if (storedConfigs && name in storedConfigs) {
68
- return storedConfigs[name].lastItem;
69
- }
70
- return 0;
71
- }
72
- function meshPolyhedraPolyhedronAttributeItem(id) {
73
- const { item, name } = meshPolyhedraPolyhedronAttribute(id);
74
- return item ?? meshPolyhedraPolyhedronAttributeLastItem(id, name);
75
- }
76
- function setMeshPolyhedraPolyhedronAttribute(
77
- id,
78
- { name, item, minimum, maximum, colorMap, no_data_color = DEFAULT_NO_DATA_COLOR },
79
- ) {
80
- mutateMeshPolyhedraPolyhedronStyle(id, {
81
- name,
82
- item,
83
- });
84
- setMeshPolyhedraPolyhedronAttributeStoredConfig(id, name, item, {
85
- minimum,
86
- maximum,
87
- colorMap,
88
- no_data_color,
89
- });
90
- const points = getRGBPointsFromPreset(colorMap);
91
- const schema = meshPolyhedraPolyhedronAttributeSchemas.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 applyPolyhedronAttribute(id) {
107
- const name = meshPolyhedraPolyhedronAttributeName(id);
108
- const item = meshPolyhedraPolyhedronAttributeItem(id);
109
- const storedConfig = meshPolyhedraPolyhedronAttributeStoredConfig(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 (isMeshPolyhedraPolyhedronAttributeValid(attribute)) {
119
- return setMeshPolyhedraPolyhedronAttribute(id, attribute);
120
- }
121
- }
122
- function setMeshPolyhedraPolyhedronAttributeName(id, name) {
123
- const item = meshPolyhedraPolyhedronAttributeLastItem(id, name);
124
- mutateMeshPolyhedraPolyhedronStyle(id, {
125
- name,
126
- item,
127
- });
128
- return applyPolyhedronAttribute(id);
129
- }
130
- function setMeshPolyhedraPolyhedronAttributeItem(id, item) {
131
- mutateMeshPolyhedraPolyhedronStyle(id, {
132
- item,
133
- });
134
- return applyPolyhedronAttribute(id);
135
- }
136
- function meshPolyhedraPolyhedronAttributeRange(id) {
137
- const name = meshPolyhedraPolyhedronAttributeName(id);
138
- const item = meshPolyhedraPolyhedronAttributeItem(id);
139
- const storedConfig = meshPolyhedraPolyhedronAttributeStoredConfig(id, name, item);
140
- return [storedConfig.minimum, storedConfig.maximum];
141
- }
142
- function setMeshPolyhedraPolyhedronAttributeRange(id, minimum, maximum) {
143
- const name = meshPolyhedraPolyhedronAttributeName(id);
144
- const item = meshPolyhedraPolyhedronAttributeItem(id);
145
- setMeshPolyhedraPolyhedronAttributeStoredConfig(id, name, item, {
146
- minimum,
147
- maximum,
148
- });
149
- return applyPolyhedronAttribute(id);
150
- }
151
- function meshPolyhedraPolyhedronAttributeColorMap(id) {
152
- const name = meshPolyhedraPolyhedronAttributeName(id);
153
- const item = meshPolyhedraPolyhedronAttributeItem(id);
154
- const storedConfig = meshPolyhedraPolyhedronAttributeStoredConfig(id, name, item);
155
- return storedConfig.colorMap;
156
- }
157
- function setMeshPolyhedraPolyhedronAttributeColorMap(id, colorMap) {
158
- const name = meshPolyhedraPolyhedronAttributeName(id);
159
- const item = meshPolyhedraPolyhedronAttributeItem(id);
160
- setMeshPolyhedraPolyhedronAttributeStoredConfig(id, name, item, {
161
- colorMap,
162
- });
163
- return applyPolyhedronAttribute(id);
164
- }
165
- function meshPolyhedraPolyhedronAttributeNoDataColor(id) {
166
- const name = meshPolyhedraPolyhedronAttributeName(id);
167
- const item = meshPolyhedraPolyhedronAttributeItem(id);
168
- const storedConfig = meshPolyhedraPolyhedronAttributeStoredConfig(id, name, item);
169
- return storedConfig.no_data_color;
170
- }
171
- async function setMeshPolyhedraPolyhedronAttributeNoDataColor(id, no_data_color) {
172
- const name = meshPolyhedraPolyhedronAttributeName(id);
173
- const item = meshPolyhedraPolyhedronAttributeItem(id);
174
- const storedConfig = meshPolyhedraPolyhedronAttributeStoredConfig(id, name, item);
175
- await setMeshPolyhedraPolyhedronAttributeStoredConfig(id, name, item, {
176
- ...storedConfig,
177
- no_data_color,
178
- });
179
- return applyPolyhedronAttribute(id);
180
- }
181
- return {
182
- meshPolyhedraPolyhedronAttributeName,
183
- meshPolyhedraPolyhedronAttributeItem,
184
- meshPolyhedraPolyhedronAttributeRange,
185
- meshPolyhedraPolyhedronAttributeColorMap,
186
- meshPolyhedraPolyhedronAttributeStoredConfig,
187
- setMeshPolyhedraPolyhedronAttribute,
188
- setMeshPolyhedraPolyhedronAttributeName,
189
- setMeshPolyhedraPolyhedronAttributeItem,
190
- setMeshPolyhedraPolyhedronAttributeRange,
191
- setMeshPolyhedraPolyhedronAttributeColorMap,
192
- meshPolyhedraPolyhedronAttributeNoDataColor,
193
- setMeshPolyhedraPolyhedronAttributeNoDataColor,
194
- };
195
- }
196
- export { isMeshPolyhedraPolyhedronAttributeValid, useMeshPolyhedraPolyhedronAttributeStyle };