@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.
- package/.build/opengeodeweb_front_schemas.js +175 -0
- package/.build/server/utils/app_config.js +57 -0
- package/.build/server/utils/cleanup.js +135 -0
- package/.build/server/utils/cloud.js +156 -0
- package/.build/server/utils/microservices.js +153 -0
- package/.build/server/utils/path.js +108 -0
- package/.build/server/utils/scripts.js +134 -0
- package/.build/server/utils/server.js +44 -0
- package/.build/server/utils/server_config.js +51 -0
- package/.build/server/utils/stream.js +6 -0
- package/.build/server/utils/ws_client.js +100 -0
- package/.build/shared/app_mode.js +8 -0
- package/.build/shared/scripts.js +49 -0
- package/.build/shared/utils/call_raw.js +31 -0
- package/.build/shared/utils/call_schema.js +28 -0
- package/.build/shared/utils/fetch_raw.js +52 -0
- package/.build/shared/utils/fetch_schema.js +32 -0
- package/.build/shared/utils/file.js +14 -0
- package/.build/shared/utils/parse_boolean.js +23 -0
- package/.build/shared/utils/response_handlers/load.js +50 -0
- package/.build/shared/utils/types.js +1 -0
- package/.build/shared/utils/validate_schema.js +17 -0
- package/README.md +8 -0
- package/app/assets/{geode_objects.js → geode_objects.ts} +8 -1
- package/app/components/ActionButton.vue +28 -12
- package/app/components/Basic/Slider.vue +2 -2
- package/app/components/Basic/Switch.vue +2 -2
- package/app/components/CameraManager/List.vue +11 -11
- package/app/components/CameraManager/Saver.vue +8 -4
- package/app/components/CameraManager.vue +24 -12
- package/app/components/CameraOrientation.vue +31 -17
- package/app/components/ClippingPlaneCard.vue +13 -12
- package/app/components/ClippingPlanes.vue +31 -21
- package/app/components/CrsSelector.vue +26 -18
- package/app/components/DeleteDialog.vue +18 -16
- package/app/components/DragAndDrop.vue +55 -37
- package/app/components/DragAndDropInternal/DragAndDropInline.vue +31 -16
- package/app/components/DragAndDropInternal/DragAndDropOverlay.vue +32 -19
- package/app/components/ExtensionSelector.vue +34 -18
- package/app/components/FeedBack/ErrorBanner.vue +4 -3
- package/app/components/FeedBack/Snackers.vue +6 -5
- package/app/components/FetchingData.vue +8 -12
- package/app/components/FileSelector.vue +27 -17
- package/app/components/FileUploader.vue +51 -30
- package/app/components/GlassCard.vue +17 -13
- package/app/components/HybridRenderingView.vue +25 -12
- package/app/components/HybridViewerTooltip.vue +28 -26
- package/app/components/InfraConnected.vue +1 -1
- package/app/components/Launcher.vue +12 -10
- package/app/components/Loading/EcoMessages.vue +24 -13
- package/app/components/Loading/Header.vue +6 -7
- package/app/components/Loading/Progress.vue +6 -7
- package/app/components/Loading.vue +10 -14
- package/app/components/MissingFilesSelector.vue +35 -19
- package/app/components/ObjectSelector.vue +37 -21
- package/app/components/PackagesVersions.vue +16 -8
- package/app/components/Recaptcha.vue +17 -23
- package/app/components/RemoteRenderingView.vue +21 -15
- package/app/components/Ruler.vue +11 -9
- package/app/components/Screenshot.vue +25 -19
- package/app/components/SearchBar.vue +12 -6
- package/app/components/ShrinkFilter.vue +19 -14
- package/app/components/Step.vue +32 -12
- package/app/components/Stepper.vue +19 -7
- package/app/components/ToolPanel.vue +29 -13
- package/app/components/ViewToolbar.vue +53 -44
- package/app/components/Viewer/ContextMenu/CenterButton.vue +16 -9
- package/app/components/Viewer/ContextMenu/CircularItems.vue +13 -10
- package/app/components/Viewer/ContextMenu/ContextMenu.vue +40 -32
- package/app/components/Viewer/ContextMenu/ContextMenuItem.vue +31 -17
- package/app/components/Viewer/ContextMenu/InfoCard.vue +38 -22
- package/app/components/Viewer/EdgedCurve/PointsOptions.vue +8 -5
- package/app/components/Viewer/EdgedCurve/SpecificEdgesOptions.vue +67 -48
- package/app/components/Viewer/Generic/Mesh/CellsOptions.vue +74 -50
- package/app/components/Viewer/Generic/Mesh/EdgesOptions.vue +69 -50
- package/app/components/Viewer/Generic/Mesh/PointsOptions.vue +47 -35
- package/app/components/Viewer/Generic/Mesh/PolygonsOptions.vue +91 -51
- package/app/components/Viewer/Generic/Mesh/PolyhedraOptions.vue +74 -49
- package/app/components/Viewer/Generic/Model/BlocksOptions.vue +115 -53
- package/app/components/Viewer/Generic/Model/CornersOptions.vue +75 -37
- package/app/components/Viewer/Generic/Model/EdgesOptions.vue +13 -9
- package/app/components/Viewer/Generic/Model/LinesOptions.vue +110 -61
- package/app/components/Viewer/Generic/Model/ModelStyleCard.vue +32 -21
- package/app/components/Viewer/Generic/Model/ModelStyleOptions.vue +9 -5
- package/app/components/Viewer/Generic/Model/PointsOptions.vue +19 -13
- package/app/components/Viewer/Generic/Model/SurfacesOptions.vue +119 -49
- package/app/components/Viewer/Grid/2D/CellsOptions.vue +8 -5
- package/app/components/Viewer/Grid/2D/EdgesOptions.vue +8 -5
- package/app/components/Viewer/Grid/2D/PointsOptions.vue +8 -5
- package/app/components/Viewer/Grid/3D/CellsOptions.vue +8 -5
- package/app/components/Viewer/Grid/3D/EdgesOptions.vue +8 -5
- package/app/components/Viewer/Grid/3D/FacetsOptions.vue +8 -5
- package/app/components/Viewer/Grid/3D/PointsOptions.vue +8 -5
- package/app/components/Viewer/ObjectTree/Base/CommonTreeView.vue +120 -76
- package/app/components/Viewer/ObjectTree/Base/Controls.vue +25 -10
- package/app/components/Viewer/ObjectTree/Base/ItemLabel.vue +42 -17
- package/app/components/Viewer/ObjectTree/Base/StickyHeader.vue +22 -9
- package/app/components/Viewer/ObjectTree/Base/TreeRow.vue +29 -14
- package/app/components/Viewer/ObjectTree/Box.vue +32 -15
- package/app/components/Viewer/ObjectTree/Layout.vue +55 -35
- package/app/components/Viewer/ObjectTree/Views/GlobalObjects.vue +63 -34
- package/app/components/Viewer/ObjectTree/Views/{ModelCollections.vue → ModelTree.vue} +101 -39
- package/app/components/Viewer/Options/AttributeColorBar.vue +14 -6
- package/app/components/Viewer/Options/AttributeRangeSelector.vue +8 -4
- package/app/components/Viewer/Options/AttributeSelector.vue +64 -33
- package/app/components/Viewer/Options/ColorMapList.vue +52 -24
- package/app/components/Viewer/Options/ColorMapPicker.vue +15 -11
- package/app/components/Viewer/Options/ColorPicker.vue +239 -50
- package/app/components/Viewer/Options/ColoringTypeSelector.vue +87 -67
- package/app/components/Viewer/Options/ColormapQuickPicker.vue +16 -12
- package/app/components/Viewer/Options/OptionsSection.vue +7 -5
- package/app/components/Viewer/Options/Sliders/Size.vue +3 -3
- package/app/components/Viewer/Options/Sliders/Slider.vue +9 -6
- package/app/components/Viewer/Options/Sliders/Width.vue +3 -3
- package/app/components/Viewer/Options/TextureItem.vue +29 -22
- package/app/components/Viewer/Options/TexturesSelector.vue +23 -12
- package/app/components/Viewer/Options/VisibilitySwitch.vue +3 -3
- package/app/components/Viewer/OverlappingObjectsPicker.vue +27 -12
- package/app/components/Viewer/PointSet/SpecificPointsOptions.vue +38 -26
- package/app/components/Viewer/Solid/EdgesOptions.vue +8 -5
- package/app/components/Viewer/Solid/PointsOptions.vue +8 -5
- package/app/components/Viewer/Solid/PolygonsOptions.vue +8 -5
- package/app/components/Viewer/Solid/SpecificPolyhedraOptions.vue +73 -48
- package/app/components/Viewer/Surface/EdgesOptions.vue +8 -5
- package/app/components/Viewer/Surface/PointsOptions.vue +8 -5
- package/app/components/Viewer/Surface/PolygonsOptions.vue +79 -49
- package/app/components/Viewer/Surface/Triangulated/TrianglesOptions.vue +8 -5
- package/app/components/Viewer/TetrahedralSolid/TetrahedraOptions.vue +8 -5
- package/app/components/Viewer/TetrahedralSolid/TrianglesOptions.vue +8 -5
- package/app/components/Viewer/Ui.vue +19 -14
- package/app/components/Wrapper.vue +16 -10
- package/app/components/ZScaling.vue +18 -10
- package/app/components/csv-preview/CsvPreviewer.vue +72 -50
- package/app/components/csv-preview/CsvSettings.vue +30 -50
- package/app/components/csv-preview/CsvTable.vue +34 -14
- package/app/composables/{batch_style.js → batch_style.ts} +9 -7
- package/app/composables/clipping_planes_widget.ts +204 -0
- package/app/composables/clipping_planes_widget_entries.ts +189 -0
- package/app/composables/copy_to_clipboard.ts +7 -0
- package/app/composables/global_attribute_style.ts +303 -0
- package/app/composables/hover_highlight.ts +127 -0
- package/app/composables/{model_collections.js → model_collections.ts} +28 -9
- package/app/composables/{model_components.js → model_components.ts} +28 -9
- package/app/composables/{project_manager.js → project_manager.ts} +77 -20
- package/app/composables/responsive_middle_truncate.ts +48 -0
- package/app/composables/{run_function_when_microservices_connected.js → run_function_when_microservices_connected.ts} +1 -1
- package/app/composables/stepper_tree.ts +79 -0
- package/app/composables/tree_filter.ts +194 -0
- package/app/composables/{tree_keyboard_nav.js → tree_keyboard_nav.ts} +62 -20
- package/app/composables/{tree_scroll.js → tree_scroll.ts} +61 -12
- package/app/composables/use_adaptive_styles.ts +186 -0
- package/app/composables/use_overlapping_picker.ts +263 -0
- package/app/composables/use_quick_colormap.ts +55 -0
- package/app/composables/virtual_tree.ts +271 -0
- package/app/composables/vtk_implicit_plane_widget.d.ts +2 -0
- package/app/plugins/{auto_store_register.js → auto_store_register.ts} +3 -5
- package/app/plugins/click_outside_ignore_snackbars.client.ts +36 -0
- package/app/stores/app.ts +252 -0
- package/app/stores/app_helpers/extension.ts +179 -0
- package/app/stores/{back.js → back.ts} +54 -28
- package/app/stores/camera_manager.ts +80 -0
- package/app/stores/{cloud.js → cloud.ts} +18 -13
- package/app/stores/data.ts +392 -0
- package/app/stores/data_helpers/collections.ts +138 -0
- package/app/stores/data_helpers/mesh.ts +169 -0
- package/app/stores/data_style.ts +167 -0
- package/app/stores/{feedback.js → feedback.ts} +19 -8
- package/app/stores/{hybrid_viewer.js → hybrid_viewer.ts} +49 -45
- package/app/stores/infra.ts +106 -0
- package/app/stores/{menu.js → menu.ts} +67 -36
- package/app/stores/treeview.ts +383 -0
- package/app/stores/{viewer.js → viewer.ts} +75 -42
- package/app/utils/attributes.ts +40 -0
- package/app/utils/clipping_planes.ts +222 -0
- package/app/utils/color_picker.js +54 -0
- package/app/utils/colormap.ts +102 -0
- package/app/utils/default_styles/{constants.js → constants.ts} +25 -12
- package/app/utils/default_styles/{index.js → index.ts} +4 -3
- package/app/utils/default_styles/meshes.ts +264 -0
- package/app/utils/default_styles/{models.js → models.ts} +106 -52
- package/app/utils/{extension.js → extension.ts} +63 -19
- package/app/utils/{import_workflow.js → import_workflow.ts} +39 -22
- package/app/utils/{log.js → log.ts} +12 -2
- package/app/utils/{name_cleaner.js → name_cleaner.ts} +6 -6
- package/app/utils/status.ts +19 -0
- package/app/utils/{stores.js → stores.ts} +5 -5
- package/app/utils/{string.js → string.ts} +6 -6
- package/app/utils/{treeview.js → treeview.ts} +4 -1
- package/internal/database/{base_database.js → base_database.ts} +7 -3
- package/internal/database/database.ts +102 -0
- package/internal/database/{extended_database.js → extended_database.ts} +5 -1
- package/internal/database/tables/camera_positions.ts +6 -0
- package/internal/database/tables/{data.js → data.ts} +3 -1
- package/internal/database/tables/data_style.ts +6 -0
- package/internal/database/tables/model_component_datastyle.ts +6 -0
- package/internal/database/tables/model_component_type_datastyle.ts +6 -0
- package/internal/database/tables/model_components.ts +6 -0
- package/internal/database/tables/model_components_relation.ts +6 -0
- package/internal/database/tables/table_definition.ts +5 -0
- package/internal/stores/data_style/mesh/cells/cell.ts +279 -0
- package/internal/stores/data_style/mesh/cells/{color.js → color.ts} +13 -7
- package/internal/stores/data_style/mesh/cells/common.ts +50 -0
- package/internal/stores/data_style/mesh/cells/index.ts +161 -0
- package/internal/stores/data_style/mesh/cells/{textures.js → textures.ts} +14 -8
- package/internal/stores/data_style/mesh/cells/vertex.ts +285 -0
- package/internal/stores/data_style/mesh/cells/visibility.ts +46 -0
- package/internal/stores/data_style/mesh/edges/{color.js → color.ts} +13 -7
- package/internal/stores/data_style/mesh/edges/common.ts +41 -0
- package/internal/stores/data_style/mesh/edges/edge.ts +279 -0
- package/internal/stores/data_style/mesh/edges/index.ts +155 -0
- package/internal/stores/data_style/mesh/edges/vertex.ts +285 -0
- package/internal/stores/data_style/mesh/edges/visibility.ts +45 -0
- package/internal/stores/data_style/mesh/edges/width.ts +42 -0
- package/internal/stores/data_style/mesh/{index.js → index.ts} +34 -14
- package/internal/stores/data_style/mesh/points/{color.js → color.ts} +13 -7
- package/internal/stores/data_style/mesh/points/common.ts +51 -0
- package/internal/stores/data_style/mesh/points/index.ts +133 -0
- package/internal/stores/data_style/mesh/points/size.ts +43 -0
- package/internal/stores/data_style/mesh/points/vertex.ts +285 -0
- package/internal/stores/data_style/mesh/points/visibility.ts +49 -0
- package/internal/stores/data_style/mesh/polygons/{color.js → color.ts} +13 -7
- package/internal/stores/data_style/mesh/polygons/common.ts +50 -0
- package/internal/stores/data_style/mesh/polygons/index.ts +167 -0
- package/internal/stores/data_style/mesh/polygons/polygon.ts +282 -0
- package/internal/stores/data_style/mesh/polygons/{textures.js → textures.ts} +14 -8
- package/internal/stores/data_style/mesh/polygons/vertex.ts +288 -0
- package/internal/stores/data_style/mesh/polygons/visibility.ts +48 -0
- package/internal/stores/data_style/mesh/polyhedra/{color.js → color.ts} +13 -7
- package/internal/stores/data_style/mesh/polyhedra/common.ts +41 -0
- package/internal/stores/data_style/mesh/polyhedra/index.ts +157 -0
- package/internal/stores/data_style/mesh/polyhedra/polyhedron.ts +294 -0
- package/internal/stores/data_style/mesh/polyhedra/vertex.ts +288 -0
- package/internal/stores/data_style/mesh/polyhedra/visibility.ts +48 -0
- package/internal/stores/data_style/model/blocks/{color.js → color.ts} +50 -13
- package/internal/stores/data_style/model/blocks/common.ts +67 -0
- package/internal/stores/data_style/model/blocks/{index.js → index.ts} +111 -66
- package/internal/stores/data_style/model/blocks/polyhedron.ts +363 -0
- package/internal/stores/data_style/model/blocks/vertex.ts +349 -0
- package/internal/stores/data_style/model/blocks/visibility.ts +37 -0
- package/internal/stores/data_style/model/color.ts +348 -0
- package/internal/stores/data_style/model/common.ts +262 -0
- package/internal/stores/data_style/model/corners/{color.js → color.ts} +49 -10
- package/internal/stores/data_style/model/corners/common.ts +71 -0
- package/internal/stores/data_style/model/corners/{index.js → index.ts} +86 -47
- package/internal/stores/data_style/model/corners/vertex.ts +315 -0
- package/internal/stores/data_style/model/corners/visibility.ts +39 -0
- package/internal/stores/data_style/model/edges/common.ts +29 -0
- package/internal/stores/data_style/model/edges/{index.js → index.ts} +2 -7
- package/internal/stores/data_style/model/edges/visibility.ts +55 -0
- package/internal/stores/data_style/model/{index.js → index.ts} +24 -11
- package/internal/stores/data_style/model/lines/{color.js → color.ts} +47 -10
- package/internal/stores/data_style/model/lines/common.ts +63 -0
- package/internal/stores/data_style/model/lines/edge.ts +343 -0
- package/internal/stores/data_style/model/lines/{index.js → index.ts} +108 -66
- package/internal/stores/data_style/model/lines/vertex.ts +344 -0
- package/internal/stores/data_style/model/lines/visibility.ts +37 -0
- package/internal/stores/data_style/model/points/common.ts +25 -0
- package/internal/stores/data_style/model/points/index.ts +35 -0
- package/internal/stores/data_style/model/points/size.ts +44 -0
- package/internal/stores/data_style/model/points/visibility.ts +46 -0
- package/internal/stores/data_style/model/selection.ts +138 -0
- package/internal/stores/data_style/model/surfaces/{color.js → color.ts} +47 -10
- package/internal/stores/data_style/model/surfaces/common.ts +69 -0
- package/internal/stores/data_style/model/surfaces/{index.js → index.ts} +113 -66
- package/internal/stores/data_style/model/surfaces/polygon.ts +347 -0
- package/internal/stores/data_style/model/surfaces/vertex.ts +351 -0
- package/internal/stores/data_style/model/surfaces/visibility.ts +37 -0
- package/internal/stores/data_style/model/{visibility.js → visibility.ts} +112 -32
- package/internal/stores/data_style/state.ts +281 -0
- package/internal/stores/data_style/types.ts +30 -0
- package/internal/stores/hybrid_viewer/brightness.ts +124 -0
- package/internal/stores/hybrid_viewer/camera.ts +326 -0
- package/internal/stores/hybrid_viewer/{camera_animation.js → camera_animation.ts} +30 -12
- package/internal/stores/hybrid_viewer/{constants.js → constants.ts} +2 -2
- package/internal/stores/hybrid_viewer/core.ts +64 -0
- package/internal/stores/hybrid_viewer/{filters.js → filters.ts} +10 -13
- package/internal/stores/hybrid_viewer/highlight.ts +183 -0
- package/internal/stores/hybrid_viewer/{ruler.js → ruler.ts} +50 -22
- package/internal/stores/hybrid_viewer/scene.ts +125 -0
- package/internal/stores/hybrid_viewer/viewport.ts +177 -0
- package/internal/stores/hybrid_viewer/vtk_types.ts +58 -0
- package/internal/utils/api_fetch.ts +133 -0
- package/internal/utils/upload_file.ts +115 -0
- package/internal/utils/viewer_call.ts +99 -0
- package/internal/utils/ws_client.ts +54 -0
- package/nuxt.config.ts +168 -0
- package/opengeodeweb_front_schemas.json +2 -2
- package/package.json +49 -13
- package/server/api/cloud/extensions/{run.post.js → run.post.ts} +16 -12
- package/server/api/local/app/project_folder_path.post.ts +33 -0
- package/server/api/local/app/run_back.post.ts +39 -0
- package/server/api/local/app/run_viewer.post.ts +39 -0
- package/server/api/local/extensions/{kill.post.js → kill.post.ts} +15 -8
- package/server/api/local/extensions/{run.post.js → run.post.ts} +17 -12
- package/server/api/local/extensions/upload.put.ts +71 -0
- package/server/api/microservice/app/{get_is_app_ready.get.js → get_is_app_ready.get.ts} +5 -5
- package/server/api/microservice/app/schemas/get_is_app_ready.json +1 -1
- package/server/api/microservice/app/set_app_base_url.post.ts +29 -0
- package/server/api/microservice/app/set_back_base_url.post.ts +26 -0
- package/server/api/microservice/app/set_is_app_ready.post.ts +29 -0
- package/server/api/microservice/app/set_viewer_base_url.post.ts +26 -0
- package/server/api/microservice/extensions/{download.post.js → download.post.ts} +13 -6
- package/server/api/serverless/run_cloud.post.ts +92 -0
- package/server/utils/{app_config.js → app_config.ts} +40 -18
- package/server/utils/{cleanup.js → cleanup.ts} +76 -29
- package/server/utils/{cloud.js → cloud.ts} +33 -17
- package/server/utils/{extension.js → extension.ts} +31 -4
- package/server/utils/{microservices.js → microservices.ts} +68 -27
- package/server/utils/{path.js → path.ts} +36 -17
- package/server/utils/{scripts.js → scripts.ts} +49 -33
- package/server/utils/{server.js → server.ts} +13 -6
- package/server/utils/server_config.ts +74 -0
- package/server/utils/stream.ts +6 -0
- package/server/utils/ws_client.ts +165 -0
- package/shared/{scripts.js → scripts.ts} +15 -10
- package/shared/utils/call_raw.ts +73 -0
- package/shared/utils/{call_schema.js → call_schema.ts} +15 -6
- package/shared/utils/fetch_raw.ts +125 -0
- package/shared/utils/{fetch_schema.js → fetch_schema.ts} +16 -7
- package/shared/utils/file.ts +22 -0
- package/shared/utils/{parse_boolean.js → parse_boolean.ts} +1 -1
- package/shared/utils/response_handlers/load.ts +109 -0
- package/shared/utils/types.ts +27 -0
- package/shared/utils/{validate_schema.js → validate_schema.ts} +3 -1
- package/.github/workflows/config.json +0 -5
- package/.github/workflows/deploy.yml +0 -15
- package/.github/workflows/manual_release.yml +0 -11
- package/.github/workflows/merge_request.yml +0 -9
- package/.github/workflows/pr_update.yml +0 -11
- package/.github/workflows/prepare_deploy.yml +0 -9
- package/.github/workflows/schedule.yml +0 -18
- package/.github/workflows/test.yml +0 -14
- package/.github/workflows/test_pr.yml +0 -12
- package/.oxlintrc.json +0 -150
- package/.releaserc +0 -11
- package/app/components/Viewer/ObjectTree/Views/ModelComponents.vue +0 -224
- package/app/composables/clipping_planes_widget.js +0 -249
- package/app/composables/global_attribute_style.js +0 -181
- package/app/composables/hover_highlight.js +0 -91
- package/app/composables/responsive_middle_truncate.js +0 -34
- package/app/composables/stepper_tree.js +0 -56
- package/app/composables/tree_filter.js +0 -138
- package/app/composables/use_adaptive_styles.js +0 -120
- package/app/composables/use_overlapping_picker.js +0 -169
- package/app/composables/use_quick_colormap.js +0 -32
- package/app/composables/virtual_tree.js +0 -191
- package/app/stores/app.js +0 -326
- package/app/stores/camera_manager.js +0 -57
- package/app/stores/data.js +0 -278
- package/app/stores/data_helpers/collections.js +0 -96
- package/app/stores/data_helpers/mesh.js +0 -122
- package/app/stores/data_style.js +0 -116
- package/app/stores/infra.js +0 -95
- package/app/stores/treeview.js +0 -290
- package/app/utils/attributes.js +0 -23
- package/app/utils/clipping_planes.js +0 -110
- package/app/utils/colormap.js +0 -64
- package/app/utils/default_styles/meshes.js +0 -191
- package/app/utils/status.js +0 -10
- package/commitlint.config.js +0 -20
- package/internal/database/database.js +0 -80
- package/internal/database/tables/camera_positions.js +0 -4
- package/internal/database/tables/data_style.js +0 -4
- package/internal/database/tables/model_component_datastyle.js +0 -4
- package/internal/database/tables/model_component_type_datastyle.js +0 -4
- package/internal/database/tables/model_components.js +0 -4
- package/internal/database/tables/model_components_relation.js +0 -4
- package/internal/stores/data_style/mesh/cells/cell.js +0 -196
- package/internal/stores/data_style/mesh/cells/common.js +0 -39
- package/internal/stores/data_style/mesh/cells/index.js +0 -81
- package/internal/stores/data_style/mesh/cells/vertex.js +0 -193
- package/internal/stores/data_style/mesh/cells/visibility.js +0 -35
- package/internal/stores/data_style/mesh/edges/common.js +0 -32
- package/internal/stores/data_style/mesh/edges/edge.js +0 -195
- package/internal/stores/data_style/mesh/edges/index.js +0 -81
- package/internal/stores/data_style/mesh/edges/vertex.js +0 -196
- package/internal/stores/data_style/mesh/edges/visibility.js +0 -34
- package/internal/stores/data_style/mesh/edges/width.js +0 -34
- package/internal/stores/data_style/mesh/points/common.js +0 -37
- package/internal/stores/data_style/mesh/points/index.js +0 -82
- package/internal/stores/data_style/mesh/points/size.js +0 -35
- package/internal/stores/data_style/mesh/points/vertex.js +0 -193
- package/internal/stores/data_style/mesh/points/visibility.js +0 -37
- package/internal/stores/data_style/mesh/polygons/common.js +0 -32
- package/internal/stores/data_style/mesh/polygons/index.js +0 -107
- package/internal/stores/data_style/mesh/polygons/polygon.js +0 -196
- package/internal/stores/data_style/mesh/polygons/vertex.js +0 -196
- package/internal/stores/data_style/mesh/polygons/visibility.js +0 -38
- package/internal/stores/data_style/mesh/polyhedra/common.js +0 -32
- package/internal/stores/data_style/mesh/polyhedra/index.js +0 -98
- package/internal/stores/data_style/mesh/polyhedra/polyhedron.js +0 -196
- package/internal/stores/data_style/mesh/polyhedra/vertex.js +0 -196
- package/internal/stores/data_style/mesh/polyhedra/visibility.js +0 -38
- package/internal/stores/data_style/model/blocks/common.js +0 -51
- package/internal/stores/data_style/model/blocks/polyhedron.js +0 -215
- package/internal/stores/data_style/model/blocks/vertex.js +0 -204
- package/internal/stores/data_style/model/blocks/visibility.js +0 -20
- package/internal/stores/data_style/model/color.js +0 -218
- package/internal/stores/data_style/model/common.js +0 -141
- package/internal/stores/data_style/model/corners/common.js +0 -51
- package/internal/stores/data_style/model/corners/vertex.js +0 -204
- package/internal/stores/data_style/model/corners/visibility.js +0 -20
- package/internal/stores/data_style/model/edges/common.js +0 -20
- package/internal/stores/data_style/model/edges/visibility.js +0 -38
- package/internal/stores/data_style/model/lines/common.js +0 -51
- package/internal/stores/data_style/model/lines/edge.js +0 -203
- package/internal/stores/data_style/model/lines/vertex.js +0 -204
- package/internal/stores/data_style/model/lines/visibility.js +0 -20
- package/internal/stores/data_style/model/points/common.js +0 -20
- package/internal/stores/data_style/model/points/index.js +0 -25
- package/internal/stores/data_style/model/points/size.js +0 -36
- package/internal/stores/data_style/model/points/visibility.js +0 -36
- package/internal/stores/data_style/model/selection.js +0 -89
- package/internal/stores/data_style/model/surfaces/common.js +0 -51
- package/internal/stores/data_style/model/surfaces/polygon.js +0 -215
- package/internal/stores/data_style/model/surfaces/vertex.js +0 -215
- package/internal/stores/data_style/model/surfaces/visibility.js +0 -20
- package/internal/stores/data_style/state.js +0 -197
- package/internal/stores/hybrid_viewer/brightness.js +0 -82
- package/internal/stores/hybrid_viewer/camera.js +0 -274
- package/internal/stores/hybrid_viewer/highlight.js +0 -170
- package/internal/stores/hybrid_viewer/scene.js +0 -136
- package/internal/stores/hybrid_viewer/viewport.js +0 -140
- package/internal/utils/api_fetch.js +0 -52
- package/internal/utils/upload_file.js +0 -57
- package/internal/utils/viewer_call.js +0 -49
- package/internal/utils/ws_client.js +0 -29
- package/nuxt.config.js +0 -106
- package/scripts/generate_geode_objects.js +0 -24
- package/server/api/local/app/project_folder_path.post.js +0 -29
- package/server/api/local/app/run_back.post.js +0 -33
- package/server/api/local/app/run_viewer.post.js +0 -33
- package/server/api/local/extensions/upload.put.js +0 -72
- package/server/api/microservice/app/set_app_base_url.post.js +0 -25
- package/server/api/microservice/app/set_back_base_url.post.js +0 -22
- package/server/api/microservice/app/set_is_app_ready.post.js +0 -25
- package/server/api/microservice/app/set_viewer_base_url.post.js +0 -22
- package/server/api/serverless/run_cloud.post.js +0 -44
- package/server/utils/server_config.js +0 -58
- package/server/utils/ws_client.js +0 -112
- package/shared/utils/call_raw.js +0 -46
- package/shared/utils/fetch_raw.js +0 -61
- package/shared/utils/file.js +0 -16
- package/shared/utils/response_handlers/load.js +0 -74
- package/tests/integration/data/uploads/test.og_brep +0 -0
- package/tests/integration/data/uploads/test.og_edc2d +0 -0
- package/tests/integration/data/uploads/test.og_edc3d +0 -0
- package/tests/integration/data/uploads/test.og_psf3d +0 -0
- package/tests/integration/data/uploads/test.og_rgd2d +0 -0
- package/tests/integration/data/uploads/test.og_rgd3d +0 -0
- package/tests/integration/data/uploads/test.vtu +0 -22
- package/tests/integration/setup.js +0 -92
- package/tests/integration/stores/data_style/mesh/cells.nuxt.test.js +0 -343
- package/tests/integration/stores/data_style/mesh/edges.nuxt.test.js +0 -254
- package/tests/integration/stores/data_style/mesh/index.nuxt.test.js +0 -62
- package/tests/integration/stores/data_style/mesh/points.nuxt.test.js +0 -201
- package/tests/integration/stores/data_style/mesh/polygons.nuxt.test.js +0 -260
- package/tests/integration/stores/data_style/mesh/polyhedra.nuxt.test.js +0 -267
- package/tests/integration/stores/data_style/model/blocks.nuxt.test.js +0 -397
- package/tests/integration/stores/data_style/model/corners.nuxt.test.js +0 -264
- package/tests/integration/stores/data_style/model/edges.nuxt.test.js +0 -71
- package/tests/integration/stores/data_style/model/index.nuxt.test.js +0 -92
- package/tests/integration/stores/data_style/model/lines.nuxt.test.js +0 -379
- package/tests/integration/stores/data_style/model/points.nuxt.test.js +0 -95
- package/tests/integration/stores/data_style/model/surfaces.nuxt.test.js +0 -574
- package/tests/integration/stores/viewer.nuxt.test.js +0 -69
- package/tests/setup_indexeddb.js +0 -4
- package/tests/unit/components/CrsSelector.nuxt.test.js +0 -55
- package/tests/unit/components/DragAndDrop.nuxt.test.js +0 -89
- package/tests/unit/components/ExtensionSelector.nuxt.test.js +0 -65
- package/tests/unit/components/FeedBack/ErrorsBanner.nuxt.test.js +0 -41
- package/tests/unit/components/FeedBack/Snackers.nuxt.test.js +0 -49
- package/tests/unit/components/FileSelector.nuxt.test.js +0 -124
- package/tests/unit/components/FileUploader.nuxt.test.js +0 -69
- package/tests/unit/components/MissingFilesSelector.nuxt.test.js +0 -77
- package/tests/unit/components/ObjectSelector.nuxt.test.js +0 -118
- package/tests/unit/components/PackagesVersions.nuxt.test.js +0 -42
- package/tests/unit/components/Step.nuxt.test.js +0 -51
- package/tests/unit/components/Stepper.nuxt.test.js +0 -41
- package/tests/unit/components/ToolPanel.nuxt.test.js +0 -66
- package/tests/unit/composables/api_fetch.nuxt.test.js +0 -75
- package/tests/unit/composables/project_manager.nuxt.test.js +0 -299
- package/tests/unit/composables/run_function_when_microservices_connected.nuxt.test.js +0 -57
- package/tests/unit/composables/upload_file.nuxt.test.js +0 -45
- package/tests/unit/composables/virtual_tree.nuxt.test.js +0 -63
- package/tests/unit/plugins/project_load.nuxt.test.js +0 -98
- package/tests/unit/stores/app.nuxt.test.js +0 -189
- package/tests/unit/stores/back.nuxt.test.js +0 -147
- package/tests/unit/stores/cloud.nuxt.test.js +0 -90
- package/tests/unit/stores/data.nuxt.test.js +0 -162
- package/tests/unit/stores/feedback.nuxt.test.js +0 -90
- package/tests/unit/stores/infra.nuxt.test.js +0 -313
- package/tests/unit/stores/treeview.nuxt.test.js +0 -63
- package/tests/unit/stores/viewer.nuxt.test.js +0 -161
- package/tests/unit/utils/validate_schema.nuxt.test.js +0 -38
- package/tests/utils.js +0 -20
- package/tests/vitest.config.js +0 -67
- /package/server/api/local/app/{kill.post.js → kill.post.ts} +0 -0
- /package/shared/{app_mode.js → app_mode.ts} +0 -0
|
@@ -1,80 +0,0 @@
|
|
|
1
|
-
import { BaseDatabase } from "./base_database";
|
|
2
|
-
import { Dexie } from "dexie";
|
|
3
|
-
import { ExtendedDatabase } from "./extended_database";
|
|
4
|
-
|
|
5
|
-
const databaseContainer = { instance: undefined };
|
|
6
|
-
|
|
7
|
-
class Database extends BaseDatabase {
|
|
8
|
-
constructor() {
|
|
9
|
-
super("Database");
|
|
10
|
-
|
|
11
|
-
this.version(3).stores(BaseDatabase.initialStores);
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
static async addTable(tableName, schemaDefinition) {
|
|
15
|
-
await this.addTables({ [tableName]: schemaDefinition });
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
static async addTables(newTables) {
|
|
19
|
-
let currentVersion = 1;
|
|
20
|
-
let currentStores = { ...BaseDatabase.initialStores };
|
|
21
|
-
|
|
22
|
-
if (await Dexie.exists("Database")) {
|
|
23
|
-
const tempDb = new Dexie("Database");
|
|
24
|
-
await tempDb.open();
|
|
25
|
-
|
|
26
|
-
currentVersion = tempDb.verno;
|
|
27
|
-
currentStores = { ...BaseDatabase.initialStores };
|
|
28
|
-
|
|
29
|
-
for (const table of tempDb.tables) {
|
|
30
|
-
const keyPath = table.schema.primKey.src;
|
|
31
|
-
const indexes = table.schema.indexes.map((index) => index.src);
|
|
32
|
-
const parts = keyPath ? [keyPath, ...indexes] : indexes;
|
|
33
|
-
currentStores[table.name] = parts.join(",");
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
tempDb.close();
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
const allExisting = Object.keys(newTables).every((tableName) => currentStores[tableName]);
|
|
40
|
-
|
|
41
|
-
databaseContainer.instance.close();
|
|
42
|
-
|
|
43
|
-
if (allExisting) {
|
|
44
|
-
const existingDb = new Dexie("Database");
|
|
45
|
-
for (let version = 1; version <= currentVersion; version += 1) {
|
|
46
|
-
if (version === 1) {
|
|
47
|
-
existingDb.version(1).stores(BaseDatabase.initialStores);
|
|
48
|
-
} else {
|
|
49
|
-
existingDb.version(version).stores(currentStores);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
await existingDb.open();
|
|
53
|
-
databaseContainer.instance = existingDb;
|
|
54
|
-
} else {
|
|
55
|
-
const newDb = new ExtendedDatabase(currentVersion, currentStores, newTables);
|
|
56
|
-
await newDb.open();
|
|
57
|
-
databaseContainer.instance = newDb;
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
// oxlint-disable-next-line no-top-level-await
|
|
63
|
-
await Dexie.delete("Database");
|
|
64
|
-
databaseContainer.instance = new Database();
|
|
65
|
-
databaseContainer.instance.clear();
|
|
66
|
-
|
|
67
|
-
const database = new Proxy(
|
|
68
|
-
{},
|
|
69
|
-
{
|
|
70
|
-
get(target, prop) {
|
|
71
|
-
const value = databaseContainer.instance[prop];
|
|
72
|
-
if (typeof value === "function") {
|
|
73
|
-
return value.bind(databaseContainer.instance);
|
|
74
|
-
}
|
|
75
|
-
return value;
|
|
76
|
-
},
|
|
77
|
-
},
|
|
78
|
-
);
|
|
79
|
-
|
|
80
|
-
export { Database, database };
|
|
@@ -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 { useMeshCellsCommonStyle } from "./common";
|
|
8
|
-
import { useViewerStore } from "@ogw_front/stores/viewer";
|
|
9
|
-
|
|
10
|
-
// Local constants
|
|
11
|
-
const meshCellsCellAttributeSchemas = viewer_schemas.opengeodeweb_viewer.mesh.cells.attribute.cell;
|
|
12
|
-
function isMeshCellsCellAttributeValid({ name, item, minimum, maximum, colorMap }) {
|
|
13
|
-
return (
|
|
14
|
-
name !== undefined &&
|
|
15
|
-
item !== undefined &&
|
|
16
|
-
minimum !== undefined &&
|
|
17
|
-
maximum !== undefined &&
|
|
18
|
-
colorMap !== undefined
|
|
19
|
-
);
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
// oxlint-disable-next-line max-lines-per-function
|
|
23
|
-
function useMeshCellsCellAttributeStyle() {
|
|
24
|
-
const viewerStore = useViewerStore();
|
|
25
|
-
const meshCellsCommonStyle = useMeshCellsCommonStyle();
|
|
26
|
-
function meshCellsCellAttribute(id) {
|
|
27
|
-
return meshCellsCommonStyle.meshCellsColoring(id).cell;
|
|
28
|
-
}
|
|
29
|
-
function meshCellsCellAttributeStoredConfig(id, name, item) {
|
|
30
|
-
const { storedConfigs } = meshCellsCellAttribute(id);
|
|
31
|
-
if (storedConfigs && name in storedConfigs && item in storedConfigs[name]) {
|
|
32
|
-
return storedConfigs[name][item];
|
|
33
|
-
}
|
|
34
|
-
return {
|
|
35
|
-
minimum: undefined,
|
|
36
|
-
maximum: undefined,
|
|
37
|
-
colorMap: undefined,
|
|
38
|
-
no_data_color: DEFAULT_NO_DATA_COLOR,
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
function mutateMeshCellsCellStyle(id, values) {
|
|
42
|
-
return meshCellsCommonStyle.mutateMeshCellsStyle(id, {
|
|
43
|
-
coloring: {
|
|
44
|
-
cell: values,
|
|
45
|
-
},
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
function setMeshCellsCellAttributeStoredConfig(id, name, item, config) {
|
|
49
|
-
return mutateMeshCellsCellStyle(id, {
|
|
50
|
-
storedConfigs: {
|
|
51
|
-
[name]: {
|
|
52
|
-
lastItem: item,
|
|
53
|
-
[item]: config,
|
|
54
|
-
},
|
|
55
|
-
},
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
function meshCellsCellAttributeName(id) {
|
|
59
|
-
return meshCellsCellAttribute(id).name;
|
|
60
|
-
}
|
|
61
|
-
function meshCellsCellAttributeLastItem(id, name) {
|
|
62
|
-
const { storedConfigs } = meshCellsCellAttribute(id);
|
|
63
|
-
if (storedConfigs && name in storedConfigs) {
|
|
64
|
-
return storedConfigs[name].lastItem;
|
|
65
|
-
}
|
|
66
|
-
return 0;
|
|
67
|
-
}
|
|
68
|
-
function meshCellsCellAttributeItem(id) {
|
|
69
|
-
const { item, name } = meshCellsCellAttribute(id);
|
|
70
|
-
return item ?? meshCellsCellAttributeLastItem(id, name);
|
|
71
|
-
}
|
|
72
|
-
function setMeshCellsCellAttribute(
|
|
73
|
-
id,
|
|
74
|
-
{ name, item, minimum, maximum, colorMap, no_data_color = DEFAULT_NO_DATA_COLOR },
|
|
75
|
-
) {
|
|
76
|
-
mutateMeshCellsCellStyle(id, {
|
|
77
|
-
name,
|
|
78
|
-
item,
|
|
79
|
-
});
|
|
80
|
-
setMeshCellsCellAttributeStoredConfig(id, name, item, {
|
|
81
|
-
minimum,
|
|
82
|
-
maximum,
|
|
83
|
-
colorMap,
|
|
84
|
-
no_data_color,
|
|
85
|
-
});
|
|
86
|
-
const points = getRGBPointsFromPreset(colorMap);
|
|
87
|
-
const schema = meshCellsCellAttributeSchemas.attribute;
|
|
88
|
-
const params = {
|
|
89
|
-
id,
|
|
90
|
-
name,
|
|
91
|
-
item,
|
|
92
|
-
points,
|
|
93
|
-
minimum,
|
|
94
|
-
maximum,
|
|
95
|
-
no_data_color,
|
|
96
|
-
};
|
|
97
|
-
return viewerStore.request({
|
|
98
|
-
schema,
|
|
99
|
-
params,
|
|
100
|
-
});
|
|
101
|
-
}
|
|
102
|
-
function applyCellAttribute(id) {
|
|
103
|
-
const name = meshCellsCellAttributeName(id);
|
|
104
|
-
const item = meshCellsCellAttributeItem(id);
|
|
105
|
-
const storedConfig = meshCellsCellAttributeStoredConfig(id, name, item);
|
|
106
|
-
const attribute = {
|
|
107
|
-
name,
|
|
108
|
-
item,
|
|
109
|
-
minimum: storedConfig.minimum,
|
|
110
|
-
maximum: storedConfig.maximum,
|
|
111
|
-
colorMap: storedConfig.colorMap,
|
|
112
|
-
no_data_color: storedConfig.no_data_color,
|
|
113
|
-
};
|
|
114
|
-
if (isMeshCellsCellAttributeValid(attribute)) {
|
|
115
|
-
return setMeshCellsCellAttribute(id, attribute);
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
async function setMeshCellsCellAttributeName(id, name) {
|
|
119
|
-
const item = meshCellsCellAttributeLastItem(id, name);
|
|
120
|
-
await mutateMeshCellsCellStyle(id, {
|
|
121
|
-
name,
|
|
122
|
-
item,
|
|
123
|
-
});
|
|
124
|
-
return applyCellAttribute(id);
|
|
125
|
-
}
|
|
126
|
-
async function setMeshCellsCellAttributeItem(id, item) {
|
|
127
|
-
await mutateMeshCellsCellStyle(id, {
|
|
128
|
-
item,
|
|
129
|
-
});
|
|
130
|
-
return applyCellAttribute(id);
|
|
131
|
-
}
|
|
132
|
-
function meshCellsCellAttributeRange(id) {
|
|
133
|
-
const name = meshCellsCellAttributeName(id);
|
|
134
|
-
const item = meshCellsCellAttributeItem(id);
|
|
135
|
-
const storedConfig = meshCellsCellAttributeStoredConfig(id, name, item);
|
|
136
|
-
return [storedConfig.minimum, storedConfig.maximum];
|
|
137
|
-
}
|
|
138
|
-
async function setMeshCellsCellAttributeRange(id, minimum, maximum) {
|
|
139
|
-
const name = meshCellsCellAttributeName(id);
|
|
140
|
-
const item = meshCellsCellAttributeItem(id);
|
|
141
|
-
const storedConfig = meshCellsCellAttributeStoredConfig(id, name, item);
|
|
142
|
-
await setMeshCellsCellAttributeStoredConfig(id, name, item, {
|
|
143
|
-
...storedConfig,
|
|
144
|
-
minimum,
|
|
145
|
-
maximum,
|
|
146
|
-
});
|
|
147
|
-
return applyCellAttribute(id);
|
|
148
|
-
}
|
|
149
|
-
function meshCellsCellAttributeColorMap(id) {
|
|
150
|
-
const name = meshCellsCellAttributeName(id);
|
|
151
|
-
const item = meshCellsCellAttributeItem(id);
|
|
152
|
-
const storedConfig = meshCellsCellAttributeStoredConfig(id, name, item);
|
|
153
|
-
return storedConfig.colorMap;
|
|
154
|
-
}
|
|
155
|
-
async function setMeshCellsCellAttributeColorMap(id, colorMap) {
|
|
156
|
-
const name = meshCellsCellAttributeName(id);
|
|
157
|
-
const item = meshCellsCellAttributeItem(id);
|
|
158
|
-
const storedConfig = meshCellsCellAttributeStoredConfig(id, name, item);
|
|
159
|
-
await setMeshCellsCellAttributeStoredConfig(id, name, item, {
|
|
160
|
-
...storedConfig,
|
|
161
|
-
colorMap,
|
|
162
|
-
});
|
|
163
|
-
return applyCellAttribute(id);
|
|
164
|
-
}
|
|
165
|
-
function meshCellsCellAttributeNoDataColor(id) {
|
|
166
|
-
const name = meshCellsCellAttributeName(id);
|
|
167
|
-
const item = meshCellsCellAttributeItem(id);
|
|
168
|
-
const storedConfig = meshCellsCellAttributeStoredConfig(id, name, item);
|
|
169
|
-
return storedConfig.no_data_color;
|
|
170
|
-
}
|
|
171
|
-
async function setMeshCellsCellAttributeNoDataColor(id, no_data_color) {
|
|
172
|
-
const name = meshCellsCellAttributeName(id);
|
|
173
|
-
const item = meshCellsCellAttributeItem(id);
|
|
174
|
-
const storedConfig = meshCellsCellAttributeStoredConfig(id, name, item);
|
|
175
|
-
await setMeshCellsCellAttributeStoredConfig(id, name, item, {
|
|
176
|
-
...storedConfig,
|
|
177
|
-
no_data_color,
|
|
178
|
-
});
|
|
179
|
-
return applyCellAttribute(id);
|
|
180
|
-
}
|
|
181
|
-
return {
|
|
182
|
-
meshCellsCellAttributeName,
|
|
183
|
-
meshCellsCellAttributeItem,
|
|
184
|
-
meshCellsCellAttributeRange,
|
|
185
|
-
meshCellsCellAttributeColorMap,
|
|
186
|
-
meshCellsCellAttributeStoredConfig,
|
|
187
|
-
setMeshCellsCellAttribute,
|
|
188
|
-
setMeshCellsCellAttributeName,
|
|
189
|
-
setMeshCellsCellAttributeItem,
|
|
190
|
-
setMeshCellsCellAttributeRange,
|
|
191
|
-
setMeshCellsCellAttributeColorMap,
|
|
192
|
-
meshCellsCellAttributeNoDataColor,
|
|
193
|
-
setMeshCellsCellAttributeNoDataColor,
|
|
194
|
-
};
|
|
195
|
-
}
|
|
196
|
-
export { isMeshCellsCellAttributeValid, useMeshCellsCellAttributeStyle };
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { useDataStyleState } from "@ogw_internal/stores/data_style/state";
|
|
2
|
-
|
|
3
|
-
export function useMeshCellsCommonStyle() {
|
|
4
|
-
const dataStyleState = useDataStyleState();
|
|
5
|
-
|
|
6
|
-
function mutateMeshCellsStyle(id, values) {
|
|
7
|
-
return dataStyleState.mutateStyle(id, {
|
|
8
|
-
cells: values,
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
function meshCellsStyle(id) {
|
|
13
|
-
return dataStyleState.getStyle(id).cells;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
function meshCellsColoring(id) {
|
|
17
|
-
return meshCellsStyle(id).coloring;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
function mutateMeshCellsColoring(id, values) {
|
|
21
|
-
return mutateMeshCellsStyle(id, {
|
|
22
|
-
coloring: values,
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
function mutateMeshCellsCellStyle(id, values) {
|
|
27
|
-
return mutateMeshCellsColoring(id, {
|
|
28
|
-
cell: values,
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
return {
|
|
33
|
-
meshCellsStyle,
|
|
34
|
-
meshCellsColoring,
|
|
35
|
-
mutateMeshCellsStyle,
|
|
36
|
-
mutateMeshCellsColoring,
|
|
37
|
-
mutateMeshCellsCellStyle,
|
|
38
|
-
};
|
|
39
|
-
}
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
// Third party imports
|
|
2
|
-
|
|
3
|
-
// Local imports
|
|
4
|
-
import { isMeshCellsCellAttributeValid, useMeshCellsCellAttributeStyle } from "./cell";
|
|
5
|
-
import { isMeshCellsVertexAttributeValid, useMeshCellsVertexAttributeStyle } from "./vertex";
|
|
6
|
-
import { useMeshCellsColorStyle } from "./color";
|
|
7
|
-
import { useMeshCellsCommonStyle } from "./common";
|
|
8
|
-
import { useMeshCellsTexturesStyle } from "./textures";
|
|
9
|
-
import { useMeshCellsVisibilityStyle } from "./visibility";
|
|
10
|
-
|
|
11
|
-
// Local constants
|
|
12
|
-
|
|
13
|
-
export function useMeshCellsStyle() {
|
|
14
|
-
const meshCellsCommonStyle = useMeshCellsCommonStyle();
|
|
15
|
-
const meshCellsVisibility = useMeshCellsVisibilityStyle();
|
|
16
|
-
const meshCellsColorStyle = useMeshCellsColorStyle();
|
|
17
|
-
const meshCellsTexturesStore = useMeshCellsTexturesStyle();
|
|
18
|
-
|
|
19
|
-
function meshCellsColoring(id) {
|
|
20
|
-
return meshCellsCommonStyle.meshCellsColoring(id);
|
|
21
|
-
}
|
|
22
|
-
const meshCellsVertexAttributeStyle = useMeshCellsVertexAttributeStyle();
|
|
23
|
-
const meshCellsCellAttributeStyle = useMeshCellsCellAttributeStyle();
|
|
24
|
-
|
|
25
|
-
function meshCellsActiveColoring(id) {
|
|
26
|
-
return meshCellsColoring(id).active;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
async function setMeshCellsActiveColoring(id, type) {
|
|
30
|
-
await meshCellsCommonStyle.mutateMeshCellsStyle(id, {
|
|
31
|
-
coloring: { active: type },
|
|
32
|
-
});
|
|
33
|
-
if (type === "constant") {
|
|
34
|
-
return meshCellsColorStyle.setMeshCellsColor(id, meshCellsColorStyle.meshCellsColor(id));
|
|
35
|
-
} else if (type === "textures") {
|
|
36
|
-
const textures = meshCellsTexturesStore.meshCellsTextures(id);
|
|
37
|
-
return meshCellsTexturesStore.setMeshCellsTextures(id, textures);
|
|
38
|
-
} else if (type === "vertex") {
|
|
39
|
-
const name = meshCellsVertexAttributeStyle.meshCellsVertexAttributeName(id);
|
|
40
|
-
const item = meshCellsVertexAttributeStyle.meshCellsVertexAttributeItem(id);
|
|
41
|
-
const [minimum, maximum] = meshCellsVertexAttributeStyle.meshCellsVertexAttributeRange(id);
|
|
42
|
-
const colorMap = meshCellsVertexAttributeStyle.meshCellsVertexAttributeColorMap(id);
|
|
43
|
-
const vertex_attribute = { name, item, minimum, maximum, colorMap };
|
|
44
|
-
if (!isMeshCellsVertexAttributeValid(vertex_attribute)) {
|
|
45
|
-
return;
|
|
46
|
-
}
|
|
47
|
-
return meshCellsVertexAttributeStyle.setMeshCellsVertexAttribute(id, vertex_attribute);
|
|
48
|
-
} else if (type === "cell") {
|
|
49
|
-
const name = meshCellsCellAttributeStyle.meshCellsCellAttributeName(id);
|
|
50
|
-
const item = meshCellsCellAttributeStyle.meshCellsCellAttributeItem(id);
|
|
51
|
-
const [minimum, maximum] = meshCellsCellAttributeStyle.meshCellsCellAttributeRange(id);
|
|
52
|
-
const colorMap = meshCellsCellAttributeStyle.meshCellsCellAttributeColorMap(id);
|
|
53
|
-
const cell_attribute = { name, item, minimum, maximum, colorMap };
|
|
54
|
-
if (!isMeshCellsCellAttributeValid(cell_attribute)) {
|
|
55
|
-
return;
|
|
56
|
-
}
|
|
57
|
-
return meshCellsCellAttributeStyle.setMeshCellsCellAttribute(id, cell_attribute);
|
|
58
|
-
}
|
|
59
|
-
throw new Error(`Unknown mesh cells coloring type: ${type}`);
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
function applyMeshCellsStyle(id) {
|
|
63
|
-
return Promise.all([
|
|
64
|
-
meshCellsVisibility.setMeshCellsVisibility(id, meshCellsVisibility.meshCellsVisibility(id)),
|
|
65
|
-
setMeshCellsActiveColoring(id, meshCellsActiveColoring(id)),
|
|
66
|
-
]);
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
return {
|
|
70
|
-
...meshCellsCommonStyle,
|
|
71
|
-
meshCellsColoring,
|
|
72
|
-
meshCellsActiveColoring,
|
|
73
|
-
setMeshCellsActiveColoring,
|
|
74
|
-
applyMeshCellsStyle,
|
|
75
|
-
...meshCellsVisibility,
|
|
76
|
-
...meshCellsColorStyle,
|
|
77
|
-
...meshCellsTexturesStore,
|
|
78
|
-
...meshCellsVertexAttributeStyle,
|
|
79
|
-
...meshCellsCellAttributeStyle,
|
|
80
|
-
};
|
|
81
|
-
}
|
|
@@ -1,193 +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 { useMeshCellsCommonStyle } from "./common";
|
|
8
|
-
import { useViewerStore } from "@ogw_front/stores/viewer";
|
|
9
|
-
|
|
10
|
-
// Local constants
|
|
11
|
-
const meshCellsVertexAttributeSchemas =
|
|
12
|
-
viewer_schemas.opengeodeweb_viewer.mesh.cells.attribute.vertex;
|
|
13
|
-
function isMeshCellsVertexAttributeValid({ 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 useMeshCellsVertexAttributeStyle() {
|
|
25
|
-
const viewerStore = useViewerStore();
|
|
26
|
-
const meshCellsCommonStyle = useMeshCellsCommonStyle();
|
|
27
|
-
function meshCellsVertexAttribute(id) {
|
|
28
|
-
return meshCellsCommonStyle.meshCellsColoring(id).vertex;
|
|
29
|
-
}
|
|
30
|
-
function meshCellsVertexAttributeStoredConfig(id, name, item) {
|
|
31
|
-
const { storedConfigs } = meshCellsVertexAttribute(id);
|
|
32
|
-
if (storedConfigs && name in storedConfigs && item in storedConfigs[name]) {
|
|
33
|
-
return storedConfigs[name][item];
|
|
34
|
-
}
|
|
35
|
-
return {
|
|
36
|
-
minimum: undefined,
|
|
37
|
-
maximum: undefined,
|
|
38
|
-
colorMap: undefined,
|
|
39
|
-
no_data_color: DEFAULT_NO_DATA_COLOR,
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
function mutateMeshCellsVertexStyle(id, values) {
|
|
43
|
-
return meshCellsCommonStyle.mutateMeshCellsStyle(id, {
|
|
44
|
-
coloring: {
|
|
45
|
-
vertex: values,
|
|
46
|
-
},
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
function setMeshCellsVertexAttributeStoredConfig(id, name, item, config) {
|
|
50
|
-
return mutateMeshCellsVertexStyle(id, {
|
|
51
|
-
storedConfigs: {
|
|
52
|
-
[name]: {
|
|
53
|
-
lastItem: item,
|
|
54
|
-
[item]: config,
|
|
55
|
-
},
|
|
56
|
-
},
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
function meshCellsVertexAttributeName(id) {
|
|
60
|
-
return meshCellsVertexAttribute(id).name;
|
|
61
|
-
}
|
|
62
|
-
function meshCellsVertexAttributeLastItem(id, name) {
|
|
63
|
-
const { storedConfigs } = meshCellsVertexAttribute(id);
|
|
64
|
-
if (storedConfigs && name in storedConfigs) {
|
|
65
|
-
return storedConfigs[name].lastItem;
|
|
66
|
-
}
|
|
67
|
-
return 0;
|
|
68
|
-
}
|
|
69
|
-
function meshCellsVertexAttributeItem(id) {
|
|
70
|
-
const { item, name } = meshCellsVertexAttribute(id);
|
|
71
|
-
return item ?? meshCellsVertexAttributeLastItem(id, name);
|
|
72
|
-
}
|
|
73
|
-
function setMeshCellsVertexAttribute(
|
|
74
|
-
id,
|
|
75
|
-
{ name, item, minimum, maximum, colorMap, no_data_color = DEFAULT_NO_DATA_COLOR },
|
|
76
|
-
) {
|
|
77
|
-
mutateMeshCellsVertexStyle(id, {
|
|
78
|
-
name,
|
|
79
|
-
item,
|
|
80
|
-
});
|
|
81
|
-
setMeshCellsVertexAttributeStoredConfig(id, name, item, {
|
|
82
|
-
minimum,
|
|
83
|
-
maximum,
|
|
84
|
-
colorMap,
|
|
85
|
-
no_data_color,
|
|
86
|
-
});
|
|
87
|
-
const points = getRGBPointsFromPreset(colorMap);
|
|
88
|
-
const schema = meshCellsVertexAttributeSchemas.attribute;
|
|
89
|
-
const params = {
|
|
90
|
-
id,
|
|
91
|
-
name,
|
|
92
|
-
item,
|
|
93
|
-
points,
|
|
94
|
-
minimum,
|
|
95
|
-
maximum,
|
|
96
|
-
no_data_color,
|
|
97
|
-
};
|
|
98
|
-
return viewerStore.request({
|
|
99
|
-
schema,
|
|
100
|
-
params,
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
function applyVertexAttribute(id) {
|
|
104
|
-
const name = meshCellsVertexAttributeName(id);
|
|
105
|
-
const item = meshCellsVertexAttributeItem(id);
|
|
106
|
-
const storedConfig = meshCellsVertexAttributeStoredConfig(id, name, item);
|
|
107
|
-
const attribute = {
|
|
108
|
-
name,
|
|
109
|
-
item,
|
|
110
|
-
minimum: storedConfig.minimum,
|
|
111
|
-
maximum: storedConfig.maximum,
|
|
112
|
-
colorMap: storedConfig.colorMap,
|
|
113
|
-
no_data_color: storedConfig.no_data_color,
|
|
114
|
-
};
|
|
115
|
-
if (isMeshCellsVertexAttributeValid(attribute)) {
|
|
116
|
-
return setMeshCellsVertexAttribute(id, attribute);
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
function setMeshCellsVertexAttributeName(id, name) {
|
|
120
|
-
const item = meshCellsVertexAttributeLastItem(id, name);
|
|
121
|
-
mutateMeshCellsVertexStyle(id, {
|
|
122
|
-
name,
|
|
123
|
-
item,
|
|
124
|
-
});
|
|
125
|
-
return applyVertexAttribute(id);
|
|
126
|
-
}
|
|
127
|
-
function setMeshCellsVertexAttributeItem(id, item) {
|
|
128
|
-
mutateMeshCellsVertexStyle(id, {
|
|
129
|
-
item,
|
|
130
|
-
});
|
|
131
|
-
return applyVertexAttribute(id);
|
|
132
|
-
}
|
|
133
|
-
function meshCellsVertexAttributeRange(id) {
|
|
134
|
-
const name = meshCellsVertexAttributeName(id);
|
|
135
|
-
const item = meshCellsVertexAttributeItem(id);
|
|
136
|
-
const storedConfig = meshCellsVertexAttributeStoredConfig(id, name, item);
|
|
137
|
-
return [storedConfig.minimum, storedConfig.maximum];
|
|
138
|
-
}
|
|
139
|
-
function setMeshCellsVertexAttributeRange(id, minimum, maximum) {
|
|
140
|
-
const name = meshCellsVertexAttributeName(id);
|
|
141
|
-
const item = meshCellsVertexAttributeItem(id);
|
|
142
|
-
setMeshCellsVertexAttributeStoredConfig(id, name, item, {
|
|
143
|
-
minimum,
|
|
144
|
-
maximum,
|
|
145
|
-
});
|
|
146
|
-
return applyVertexAttribute(id);
|
|
147
|
-
}
|
|
148
|
-
function meshCellsVertexAttributeColorMap(id) {
|
|
149
|
-
const name = meshCellsVertexAttributeName(id);
|
|
150
|
-
const item = meshCellsVertexAttributeItem(id);
|
|
151
|
-
const storedConfig = meshCellsVertexAttributeStoredConfig(id, name, item);
|
|
152
|
-
return storedConfig.colorMap;
|
|
153
|
-
}
|
|
154
|
-
function setMeshCellsVertexAttributeColorMap(id, colorMap) {
|
|
155
|
-
const name = meshCellsVertexAttributeName(id);
|
|
156
|
-
const item = meshCellsVertexAttributeItem(id);
|
|
157
|
-
setMeshCellsVertexAttributeStoredConfig(id, name, item, {
|
|
158
|
-
colorMap,
|
|
159
|
-
});
|
|
160
|
-
return applyVertexAttribute(id);
|
|
161
|
-
}
|
|
162
|
-
function meshCellsVertexAttributeNoDataColor(id) {
|
|
163
|
-
const name = meshCellsVertexAttributeName(id);
|
|
164
|
-
const item = meshCellsVertexAttributeItem(id);
|
|
165
|
-
const storedConfig = meshCellsVertexAttributeStoredConfig(id, name, item);
|
|
166
|
-
return storedConfig.no_data_color;
|
|
167
|
-
}
|
|
168
|
-
async function setMeshCellsVertexAttributeNoDataColor(id, no_data_color) {
|
|
169
|
-
const name = meshCellsVertexAttributeName(id);
|
|
170
|
-
const item = meshCellsVertexAttributeItem(id);
|
|
171
|
-
const storedConfig = meshCellsVertexAttributeStoredConfig(id, name, item);
|
|
172
|
-
await setMeshCellsVertexAttributeStoredConfig(id, name, item, {
|
|
173
|
-
...storedConfig,
|
|
174
|
-
no_data_color,
|
|
175
|
-
});
|
|
176
|
-
return applyVertexAttribute(id);
|
|
177
|
-
}
|
|
178
|
-
return {
|
|
179
|
-
meshCellsVertexAttributeName,
|
|
180
|
-
meshCellsVertexAttributeItem,
|
|
181
|
-
meshCellsVertexAttributeRange,
|
|
182
|
-
meshCellsVertexAttributeColorMap,
|
|
183
|
-
meshCellsVertexAttributeStoredConfig,
|
|
184
|
-
setMeshCellsVertexAttribute,
|
|
185
|
-
setMeshCellsVertexAttributeName,
|
|
186
|
-
setMeshCellsVertexAttributeItem,
|
|
187
|
-
setMeshCellsVertexAttributeRange,
|
|
188
|
-
setMeshCellsVertexAttributeColorMap,
|
|
189
|
-
meshCellsVertexAttributeNoDataColor,
|
|
190
|
-
setMeshCellsVertexAttributeNoDataColor,
|
|
191
|
-
};
|
|
192
|
-
}
|
|
193
|
-
export { isMeshCellsVertexAttributeValid, useMeshCellsVertexAttributeStyle };
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
// Third party imports
|
|
2
|
-
import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json";
|
|
3
|
-
|
|
4
|
-
// Local imports
|
|
5
|
-
import { useMeshCellsCommonStyle } from "./common";
|
|
6
|
-
import { useViewerStore } from "@ogw_front/stores/viewer";
|
|
7
|
-
|
|
8
|
-
// Local constants
|
|
9
|
-
const schema = viewer_schemas.opengeodeweb_viewer.mesh.cells.visibility;
|
|
10
|
-
|
|
11
|
-
export function useMeshCellsVisibilityStyle() {
|
|
12
|
-
const viewerStore = useViewerStore();
|
|
13
|
-
const meshCellsCommonStyle = useMeshCellsCommonStyle();
|
|
14
|
-
|
|
15
|
-
function meshCellsVisibility(id) {
|
|
16
|
-
return meshCellsCommonStyle.meshCellsStyle(id).visibility;
|
|
17
|
-
}
|
|
18
|
-
function setMeshCellsVisibility(id, visibility) {
|
|
19
|
-
const params = { id, visibility };
|
|
20
|
-
return viewerStore.request(
|
|
21
|
-
{
|
|
22
|
-
schema,
|
|
23
|
-
params,
|
|
24
|
-
},
|
|
25
|
-
{
|
|
26
|
-
response_function: () => meshCellsCommonStyle.mutateMeshCellsStyle(id, { visibility }),
|
|
27
|
-
},
|
|
28
|
-
);
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
return {
|
|
32
|
-
meshCellsVisibility,
|
|
33
|
-
setMeshCellsVisibility,
|
|
34
|
-
};
|
|
35
|
-
}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { useDataStyleState } from "@ogw_internal/stores/data_style/state";
|
|
2
|
-
|
|
3
|
-
export function useMeshEdgesCommonStyle() {
|
|
4
|
-
const dataStyleState = useDataStyleState();
|
|
5
|
-
|
|
6
|
-
function mutateMeshEdgesStyle(id, values) {
|
|
7
|
-
return dataStyleState.mutateStyle(id, {
|
|
8
|
-
edges: values,
|
|
9
|
-
});
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
function meshEdgesStyle(id) {
|
|
13
|
-
return dataStyleState.getStyle(id).edges;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
function meshEdgesColoring(id) {
|
|
17
|
-
return meshEdgesStyle(id).coloring;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
function mutateMeshEdgesColoring(id, values) {
|
|
21
|
-
return mutateMeshEdgesStyle(id, {
|
|
22
|
-
coloring: values,
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
return {
|
|
27
|
-
meshEdgesStyle,
|
|
28
|
-
meshEdgesColoring,
|
|
29
|
-
mutateMeshEdgesStyle,
|
|
30
|
-
mutateMeshEdgesColoring,
|
|
31
|
-
};
|
|
32
|
-
}
|