@geode/opengeodeweb-front 10.3.0 → 10.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (178) hide show
  1. package/.eslintrc.cjs +1 -0
  2. package/app/assets/geode_objects.js +1 -3
  3. package/app/components/Carousel.vue +7 -4
  4. package/app/components/CrsSelector.vue +5 -6
  5. package/app/components/DragAndDrop.vue +18 -8
  6. package/app/components/ExtensionSelector.vue +9 -17
  7. package/app/components/FeedBack/ErrorBanner.vue +1 -1
  8. package/app/components/FeedBack/Snackers.vue +4 -1
  9. package/app/components/FileSelector.vue +21 -10
  10. package/app/components/FileUploader.vue +15 -32
  11. package/app/components/HybridRenderingView.vue +5 -3
  12. package/app/components/Inspector/InspectionButton.vue +2 -2
  13. package/app/components/Inspector/ResultPanel.vue +4 -4
  14. package/app/components/Launcher.vue +1 -1
  15. package/app/components/Loading.vue +6 -6
  16. package/app/components/MissingFilesSelector.vue +23 -29
  17. package/app/components/ObjectSelector.vue +11 -10
  18. package/app/components/OptionCard.vue +1 -1
  19. package/app/components/PackagesVersions.vue +5 -3
  20. package/app/components/Recaptcha.vue +6 -4
  21. package/app/components/RemoteRenderingView.vue +4 -3
  22. package/app/components/Screenshot.vue +4 -4
  23. package/app/components/Step.vue +7 -7
  24. package/app/components/VeaseViewToolbar.vue +3 -3
  25. package/app/components/Viewer/BreadCrumb.vue +2 -4
  26. package/app/components/Viewer/ContextMenu.vue +77 -45
  27. package/app/components/Viewer/ContextMenuItem.vue +42 -33
  28. package/app/components/Viewer/EdgedCurve/PointsOptions.vue +3 -3
  29. package/app/components/Viewer/EdgedCurve/SpecificEdgesOptions.vue +5 -5
  30. package/app/components/Viewer/Generic/Mesh/CellsOptions.vue +6 -6
  31. package/app/components/Viewer/Generic/Mesh/EdgesOptions.vue +5 -5
  32. package/app/components/Viewer/Generic/Mesh/PointsOptions.vue +5 -5
  33. package/app/components/Viewer/Generic/Mesh/PolygonsOptions.vue +6 -7
  34. package/app/components/Viewer/Generic/Mesh/PolyhedraOptions.vue +6 -6
  35. package/app/components/Viewer/Generic/Model/EdgesOptions.vue +3 -3
  36. package/app/components/Viewer/Generic/Model/PointsOptions.vue +4 -4
  37. package/app/components/Viewer/Grid/2D/CellsOptions.vue +3 -3
  38. package/app/components/Viewer/Grid/2D/EdgesOptions.vue +3 -3
  39. package/app/components/Viewer/Grid/2D/PointsOptions.vue +3 -3
  40. package/app/components/Viewer/Grid/3D/CellsOptions.vue +3 -3
  41. package/app/components/Viewer/Grid/3D/EdgesOptions.vue +3 -3
  42. package/app/components/Viewer/Grid/3D/FacetsOptions.vue +3 -3
  43. package/app/components/Viewer/Grid/3D/PointsOptions.vue +3 -3
  44. package/app/components/Viewer/HybridSolid/EdgesOptions.vue +3 -3
  45. package/app/components/Viewer/HybridSolid/PointsOptions.vue +3 -3
  46. package/app/components/Viewer/HybridSolid/PolygonsOptions.vue +3 -3
  47. package/app/components/Viewer/HybridSolid/PolyhedraOptions.vue +3 -3
  48. package/app/components/Viewer/Options/CellAttributeSelector.vue +23 -20
  49. package/app/components/Viewer/Options/ColorMapList.vue +75 -50
  50. package/app/components/Viewer/Options/ColorMapPicker.vue +38 -32
  51. package/app/components/Viewer/Options/ColorPicker.vue +3 -3
  52. package/app/components/Viewer/Options/ColoringTypeSelector.vue +29 -21
  53. package/app/components/Viewer/Options/EdgeAttributeSelector.vue +7 -7
  54. package/app/components/Viewer/Options/PolygonAttributeSelector.vue +7 -7
  55. package/app/components/Viewer/Options/PolyhedronAttributeSelector.vue +7 -7
  56. package/app/components/Viewer/Options/TextureItem.vue +5 -5
  57. package/app/components/Viewer/Options/TexturesSelector.vue +5 -5
  58. package/app/components/Viewer/Options/VertexAttributeSelector.vue +7 -7
  59. package/app/components/Viewer/PointSet/SpecificPointsOptions.vue +5 -5
  60. package/app/components/Viewer/PolygonalSurface/EdgesOptions.vue +3 -3
  61. package/app/components/Viewer/PolygonalSurface/PointsOptions.vue +3 -3
  62. package/app/components/Viewer/PolygonalSurface/SpecificPolygonsOptions.vue +6 -6
  63. package/app/components/Viewer/Solid/EdgesOptions.vue +3 -3
  64. package/app/components/Viewer/Solid/PointsOptions.vue +3 -3
  65. package/app/components/Viewer/Solid/PolygonsOptions.vue +3 -3
  66. package/app/components/Viewer/Solid/SpecificPolyhedraOptions.vue +6 -6
  67. package/app/components/Viewer/TetrahedralSolid/TetrahedraOptions.vue +3 -3
  68. package/app/components/Viewer/TetrahedralSolid/TrianglesOptions.vue +3 -3
  69. package/app/components/Viewer/Tree/ObjectTree.vue +7 -9
  70. package/app/components/Viewer/TreeComponent.vue +9 -13
  71. package/app/components/Viewer/TreeObject.vue +8 -9
  72. package/app/components/Viewer/TriangulatedSurface/EdgesOptions.vue +3 -3
  73. package/app/components/Viewer/TriangulatedSurface/PointsOptions.vue +3 -3
  74. package/app/components/Viewer/TriangulatedSurface/TrianglesOptions.vue +3 -3
  75. package/app/components/Wrapper.vue +1 -2
  76. package/app/components/ZScaling.vue +1 -1
  77. package/app/composables/project_manager.js +6 -6
  78. package/app/plugins/auto_store_register.js +1 -1
  79. package/app/stores/app.js +45 -41
  80. package/app/stores/data.js +52 -51
  81. package/app/stores/data_style.js +12 -11
  82. package/app/stores/feedback.js +5 -1
  83. package/app/stores/geode.js +16 -13
  84. package/app/stores/hybrid_viewer.js +72 -44
  85. package/app/stores/infra.js +18 -16
  86. package/app/stores/lambda.js +1 -9
  87. package/app/stores/menu.js +13 -13
  88. package/app/stores/treeview.js +15 -13
  89. package/app/stores/viewer.js +39 -33
  90. package/app/utils/app_mode.js +4 -3
  91. package/app/utils/default_styles.js +55 -47
  92. package/app/utils/file_import_workflow.js +4 -17
  93. package/app/utils/local.js +195 -184
  94. package/app/utils/upload_file.js +1 -2
  95. package/eslint.config.js +2 -2
  96. package/internal/database/database.js +17 -32
  97. package/internal/database/extended_database.js +25 -0
  98. package/internal/stores/data_style/mesh/cells/cell.js +3 -3
  99. package/internal/stores/data_style/mesh/cells/color.js +1 -1
  100. package/internal/stores/data_style/mesh/cells/index.js +7 -7
  101. package/internal/stores/data_style/mesh/cells/textures.js +1 -1
  102. package/internal/stores/data_style/mesh/cells/vertex.js +3 -3
  103. package/internal/stores/data_style/mesh/cells/visibility.js +1 -1
  104. package/internal/stores/data_style/mesh/edges/color.js +1 -1
  105. package/internal/stores/data_style/mesh/edges/edge.js +22 -22
  106. package/internal/stores/data_style/mesh/edges/index.js +7 -7
  107. package/internal/stores/data_style/mesh/edges/vertex.js +3 -3
  108. package/internal/stores/data_style/mesh/edges/visibility.js +1 -1
  109. package/internal/stores/data_style/mesh/edges/width.js +1 -1
  110. package/internal/stores/data_style/mesh/index.js +4 -5
  111. package/internal/stores/data_style/mesh/points/color.js +1 -1
  112. package/internal/stores/data_style/mesh/points/index.js +6 -6
  113. package/internal/stores/data_style/mesh/points/size.js +1 -1
  114. package/internal/stores/data_style/mesh/points/vertex.js +3 -3
  115. package/internal/stores/data_style/mesh/points/visibility.js +1 -1
  116. package/internal/stores/data_style/mesh/polygons/color.js +1 -1
  117. package/internal/stores/data_style/mesh/polygons/index.js +7 -7
  118. package/internal/stores/data_style/mesh/polygons/polygon.js +3 -3
  119. package/internal/stores/data_style/mesh/polygons/textures.js +1 -1
  120. package/internal/stores/data_style/mesh/polygons/vertex.js +3 -3
  121. package/internal/stores/data_style/mesh/polygons/visibility.js +1 -1
  122. package/internal/stores/data_style/mesh/polyhedra/color.js +1 -1
  123. package/internal/stores/data_style/mesh/polyhedra/index.js +6 -6
  124. package/internal/stores/data_style/mesh/polyhedra/polyhedron.js +3 -3
  125. package/internal/stores/data_style/mesh/polyhedra/vertex.js +3 -3
  126. package/internal/stores/data_style/mesh/polyhedra/visibility.js +1 -1
  127. package/internal/stores/data_style/model/edges.js +1 -1
  128. package/internal/stores/data_style/model/index.js +32 -22
  129. package/internal/utils/api_fetch.js +8 -5
  130. package/internal/utils/viewer_call.js +42 -46
  131. package/nuxt.config.js +3 -3
  132. package/package.json +1 -1
  133. package/scripts/generate_geode_objects.js +8 -7
  134. package/tests/integration/setup.js +28 -21
  135. package/tests/integration/stores/data_style/mesh/cells.nuxt.test.js +18 -10
  136. package/tests/integration/stores/data_style/mesh/edges.nuxt.test.js +18 -10
  137. package/tests/integration/stores/data_style/mesh/index.nuxt.test.js +9 -5
  138. package/tests/integration/stores/data_style/mesh/points.nuxt.test.js +17 -10
  139. package/tests/integration/stores/data_style/mesh/polygons.nuxt.test.js +18 -10
  140. package/tests/integration/stores/data_style/mesh/polyhedra.nuxt.test.js +18 -10
  141. package/tests/integration/stores/data_style/model/blocks.nuxt.test.js +10 -6
  142. package/tests/integration/stores/data_style/model/corners.nuxt.test.js +10 -6
  143. package/tests/integration/stores/data_style/model/edges.nuxt.test.js +9 -5
  144. package/tests/integration/stores/data_style/model/index.nuxt.test.js +9 -5
  145. package/tests/integration/stores/data_style/model/lines.nuxt.test.js +10 -6
  146. package/tests/integration/stores/data_style/model/points.nuxt.test.js +9 -5
  147. package/tests/integration/stores/data_style/model/surfaces.nuxt.test.js +10 -6
  148. package/tests/integration/stores/viewer.nuxt.test.js +55 -39
  149. package/tests/setup_indexeddb.js +1 -0
  150. package/tests/unit/components/CrsSelector.nuxt.test.js +18 -19
  151. package/tests/unit/components/ExtensionSelector.nuxt.test.js +24 -19
  152. package/tests/unit/components/FeedBack/ErrorsBanner.nuxt.test.js +23 -36
  153. package/tests/unit/components/FeedBack/Snackers.nuxt.test.js +20 -25
  154. package/tests/unit/components/FileSelector.nuxt.test.js +27 -27
  155. package/tests/unit/components/FileUploader.nuxt.test.js +18 -17
  156. package/tests/unit/components/Inspector/InspectionButton.nuxt.test.js +9 -16
  157. package/tests/unit/components/Inspector/ResultPanel.nuxt.test.js +8 -6
  158. package/tests/unit/components/Launcher.nuxt.test.js +12 -17
  159. package/tests/unit/components/MissingFilesSelector.nuxt.test.js +16 -19
  160. package/tests/unit/components/ObjectSelector.nuxt.test.js +30 -34
  161. package/tests/unit/components/PackagesVersions.nuxt.test.js +8 -11
  162. package/tests/unit/components/Step.nuxt.test.js +8 -7
  163. package/tests/unit/components/Stepper.nuxt.test.js +14 -12
  164. package/tests/unit/composables/ProjectManager.nuxt.test.js +142 -100
  165. package/tests/unit/composables/api_fetch.nuxt.test.js +12 -39
  166. package/tests/unit/composables/run_function_when_microservices_connected.nuxt.test.js +36 -61
  167. package/tests/unit/composables/upload_file.nuxt.test.js +21 -25
  168. package/tests/unit/plugins/project_load.nuxt.test.js +22 -21
  169. package/tests/unit/stores/App.nuxt.test.js +45 -43
  170. package/tests/unit/stores/Feedback.nuxt.test.js +16 -18
  171. package/tests/unit/stores/Geode.nuxt.test.js +135 -137
  172. package/tests/unit/stores/Infra.nuxt.test.js +20 -26
  173. package/tests/unit/stores/Lambda.nuxt.test.js +30 -31
  174. package/tests/unit/stores/Treeview.nuxt.test.js +53 -55
  175. package/tests/unit/stores/Viewer.nuxt.test.js +16 -23
  176. package/tests/unit/utils/validate_schema.nuxt.test.js +18 -18
  177. package/tests/utils.js +15 -2
  178. package/tests/vitest.config.js +6 -2
@@ -1,7 +1,7 @@
1
1
  <script setup>
2
2
  import ViewerContextMenuItem from "@ogw_front/components/Viewer/ContextMenuItem"
3
- import ViewerOptionsVisibilitySwitch from "@ogw_front/components/Viewer/Options/VisibilitySwitch"
4
3
  import ViewerOptionsColoringTypeSelector from "@ogw_front/components/Viewer/Options/ColoringTypeSelector"
4
+ import ViewerOptionsVisibilitySwitch from "@ogw_front/components/Viewer/Options/VisibilitySwitch"
5
5
 
6
6
  import { useDataStyleStore } from "@ogw_front/stores/data_style"
7
7
  import { useHybridViewerStore } from "@ogw_front/stores/hybrid_viewer"
@@ -9,12 +9,12 @@
9
9
  const dataStyleStore = useDataStyleStore()
10
10
  const hybridViewerStore = useHybridViewerStore()
11
11
 
12
- const props = defineProps({
12
+ const { itemProps, btn_image } = defineProps({
13
13
  itemProps: { type: Object, required: true },
14
14
  btn_image: { type: String, required: true },
15
15
  })
16
16
 
17
- const id = toRef(() => props.itemProps.id)
17
+ const id = toRef(() => itemProps.id)
18
18
 
19
19
  const visibility = computed({
20
20
  get: () => dataStyleStore.meshEdgesVisibility(id.value),
@@ -48,9 +48,9 @@
48
48
 
49
49
  <template>
50
50
  <ViewerContextMenuItem
51
- :itemProps="props.itemProps"
51
+ :itemProps="itemProps"
52
52
  tooltip="Edges options"
53
- :btn_image="props.btn_image"
53
+ :btn_image="btn_image"
54
54
  >
55
55
  <template #options>
56
56
  <ViewerOptionsVisibilitySwitch v-model="visibility" />
@@ -1,7 +1,7 @@
1
1
  <script setup>
2
2
  import ViewerContextMenuItem from "@ogw_front/components/Viewer/ContextMenuItem"
3
- import ViewerOptionsVisibilitySwitch from "@ogw_front/components/Viewer/Options/VisibilitySwitch"
4
3
  import ViewerOptionsColoringTypeSelector from "@ogw_front/components/Viewer/Options/ColoringTypeSelector"
4
+ import ViewerOptionsVisibilitySwitch from "@ogw_front/components/Viewer/Options/VisibilitySwitch"
5
5
 
6
6
  import { useDataStyleStore } from "@ogw_front/stores/data_style"
7
7
  import { useHybridViewerStore } from "@ogw_front/stores/hybrid_viewer"
@@ -9,12 +9,12 @@
9
9
  const dataStyleStore = useDataStyleStore()
10
10
  const hybridViewerStore = useHybridViewerStore()
11
11
 
12
- const props = defineProps({
12
+ const { itemProps, btn_image } = defineProps({
13
13
  itemProps: { type: Object, required: true },
14
14
  btn_image: { type: String, required: true },
15
15
  })
16
16
 
17
- const id = toRef(() => props.itemProps.id)
17
+ const id = toRef(() => itemProps.id)
18
18
 
19
19
  const visibility = computed({
20
20
  get: () => dataStyleStore.meshPointsVisibility(id.value),
@@ -48,9 +48,9 @@
48
48
 
49
49
  <template>
50
50
  <ViewerContextMenuItem
51
- :itemProps="props.itemProps"
51
+ :itemProps="itemProps"
52
52
  tooltip="Points options"
53
- :btn_image="props.btn_image"
53
+ :btn_image="btn_image"
54
54
  >
55
55
  <template #options>
56
56
  <ViewerOptionsVisibilitySwitch v-model="visibility" />
@@ -1,7 +1,7 @@
1
1
  <script setup>
2
2
  import ViewerContextMenuItem from "@ogw_front/components/Viewer/ContextMenuItem"
3
- import ViewerOptionsVisibilitySwitch from "@ogw_front/components/Viewer/Options/VisibilitySwitch"
4
3
  import ViewerOptionsColoringTypeSelector from "@ogw_front/components/Viewer/Options/ColoringTypeSelector"
4
+ import ViewerOptionsVisibilitySwitch from "@ogw_front/components/Viewer/Options/VisibilitySwitch"
5
5
 
6
6
  import { useDataStyleStore } from "@ogw_front/stores/data_style"
7
7
  import { useHybridViewerStore } from "@ogw_front/stores/hybrid_viewer"
@@ -9,14 +9,13 @@
9
9
  const dataStyleStore = useDataStyleStore()
10
10
  const hybridViewerStore = useHybridViewerStore()
11
11
 
12
- const props = defineProps({
12
+ const { itemProps, btn_image, tooltip } = defineProps({
13
13
  itemProps: { type: Object, required: true },
14
14
  btn_image: { type: String, required: true },
15
-
16
15
  tooltip: { type: String, required: false, default: "Polygons options" },
17
16
  })
18
17
 
19
- const id = toRef(() => props.itemProps.id)
18
+ const id = toRef(() => itemProps.id)
20
19
 
21
20
  const visibility = computed({
22
21
  get: () => dataStyleStore.meshPolygonsVisibility(id.value),
@@ -50,9 +49,9 @@
50
49
 
51
50
  <template>
52
51
  <ViewerContextMenuItem
53
- :itemProps="props.itemProps"
54
- :tooltip="props.tooltip"
55
- :btn_image="props.btn_image"
52
+ :itemProps="itemProps"
53
+ :tooltip="tooltip"
54
+ :btn_image="btn_image"
56
55
  >
57
56
  <template #options>
58
57
  <ViewerOptionsVisibilitySwitch v-model="visibility" />
@@ -1,7 +1,7 @@
1
1
  <script setup>
2
2
  import ViewerContextMenuItem from "@ogw_front/components/Viewer/ContextMenuItem"
3
- import ViewerOptionsVisibilitySwitch from "@ogw_front/components/Viewer/Options/VisibilitySwitch"
4
3
  import ViewerOptionsColoringTypeSelector from "@ogw_front/components/Viewer/Options/ColoringTypeSelector"
4
+ import ViewerOptionsVisibilitySwitch from "@ogw_front/components/Viewer/Options/VisibilitySwitch"
5
5
 
6
6
  import { useDataStyleStore } from "@ogw_front/stores/data_style"
7
7
  import { useHybridViewerStore } from "@ogw_front/stores/hybrid_viewer"
@@ -9,13 +9,13 @@
9
9
  const dataStyleStore = useDataStyleStore()
10
10
  const hybridViewerStore = useHybridViewerStore()
11
11
 
12
- const props = defineProps({
12
+ const { itemProps, btn_image, tooltip } = defineProps({
13
13
  itemProps: { type: Object, required: true },
14
14
  btn_image: { type: String, required: true },
15
15
  tooltip: { type: String, required: false, default: "Polyhedra options" },
16
16
  })
17
17
 
18
- const id = toRef(() => props.itemProps.id)
18
+ const id = toRef(() => itemProps.id)
19
19
 
20
20
  const visibility = computed({
21
21
  get: () => dataStyleStore.meshPolyhedraVisibility(id.value),
@@ -42,9 +42,9 @@
42
42
 
43
43
  <template>
44
44
  <ViewerContextMenuItem
45
- :itemProps="props.itemProps"
46
- :tooltip="props.tooltip"
47
- :btn_image="props.btn_image"
45
+ :itemProps="itemProps"
46
+ :tooltip="tooltip"
47
+ :btn_image="btn_image"
48
48
  >
49
49
  <template #options>
50
50
  <ViewerOptionsVisibilitySwitch v-model="visibility" />
@@ -1,7 +1,7 @@
1
1
  <script setup>
2
+ import SurfaceEdges from "@ogw_front/assets/viewer_svgs/surface_edges.svg"
2
3
  import ViewerContextMenuItem from "@ogw_front/components/Viewer/ContextMenuItem"
3
4
  import ViewerOptionsVisibilitySwitch from "@ogw_front/components/Viewer/Options/VisibilitySwitch"
4
- import SurfaceEdges from "@ogw_front/assets/viewer_svgs/surface_edges.svg"
5
5
 
6
6
  import { useDataStyleStore } from "@ogw_front/stores/data_style"
7
7
  import { useHybridViewerStore } from "@ogw_front/stores/hybrid_viewer"
@@ -9,11 +9,11 @@
9
9
  const dataStyleStore = useDataStyleStore()
10
10
  const hybridViewerStore = useHybridViewerStore()
11
11
 
12
- const props = defineProps({
12
+ const { itemProps } = defineProps({
13
13
  itemProps: { type: Object, required: true },
14
14
  })
15
15
 
16
- const id = toRef(() => props.itemProps.id)
16
+ const id = toRef(() => itemProps.id)
17
17
 
18
18
  const visibility = computed({
19
19
  get: () => dataStyleStore.modelEdgesVisibility(id.value),
@@ -1,7 +1,7 @@
1
1
  <script setup>
2
+ import SurfacePoints from "@ogw_front/assets/viewer_svgs/surface_points.svg"
2
3
  import ViewerContextMenuItem from "@ogw_front/components/Viewer/ContextMenuItem"
3
4
  import ViewerOptionsVisibilitySwitch from "@ogw_front/components/Viewer/Options/VisibilitySwitch"
4
- import SurfacePoints from "@ogw_front/assets/viewer_svgs/surface_points.svg"
5
5
 
6
6
  import { useDataStyleStore } from "@ogw_front/stores/data_style"
7
7
  import { useHybridViewerStore } from "@ogw_front/stores/hybrid_viewer"
@@ -9,11 +9,11 @@
9
9
  const dataStyleStore = useDataStyleStore()
10
10
  const hybridViewerStore = useHybridViewerStore()
11
11
 
12
- const props = defineProps({
12
+ const { itemProps } = defineProps({
13
13
  itemProps: { type: Object, required: true },
14
14
  })
15
15
 
16
- const id = toRef(() => props.itemProps.id)
16
+ const id = toRef(() => itemProps.id)
17
17
 
18
18
  const visibility = computed({
19
19
  get: () => dataStyleStore.modelPointsVisibility(id.value),
@@ -33,7 +33,7 @@
33
33
 
34
34
  <template>
35
35
  <ViewerContextMenuItem
36
- :itemProps="props.itemProps"
36
+ :itemProps="itemProps"
37
37
  tooltip="Points options"
38
38
  :btn_image="SurfacePoints"
39
39
  >
@@ -1,15 +1,15 @@
1
1
  <script setup>
2
- import ViewerGenericMeshCellsOptions from "@ogw_front/components/Viewer/Generic/Mesh/CellsOptions"
3
2
  import Grid2D_Cells from "@ogw_front/assets/viewer_svgs/grid_2d_cells.svg"
3
+ import ViewerGenericMeshCellsOptions from "@ogw_front/components/Viewer/Generic/Mesh/CellsOptions"
4
4
 
5
- const props = defineProps({
5
+ const { itemProps } = defineProps({
6
6
  itemProps: { type: Object, required: true },
7
7
  })
8
8
  </script>
9
9
 
10
10
  <template>
11
11
  <ViewerGenericMeshCellsOptions
12
- :itemProps="props.itemProps"
12
+ :itemProps="itemProps"
13
13
  :btn_image="Grid2D_Cells"
14
14
  tooltip="Cells options"
15
15
  />
@@ -1,15 +1,15 @@
1
1
  <script setup>
2
- import ViewerGenericMeshEdgesOptions from "@ogw_front/components/Viewer/Generic/Mesh/EdgesOptions"
3
2
  import Grid2D_Edges from "@ogw_front/assets/viewer_svgs/grid_2d_edges.svg"
3
+ import ViewerGenericMeshEdgesOptions from "@ogw_front/components/Viewer/Generic/Mesh/EdgesOptions"
4
4
 
5
- const props = defineProps({
5
+ const { itemProps } = defineProps({
6
6
  itemProps: { type: Object, required: true },
7
7
  })
8
8
  </script>
9
9
 
10
10
  <template>
11
11
  <ViewerGenericMeshEdgesOptions
12
- :itemProps="props.itemProps"
12
+ :itemProps="itemProps"
13
13
  :btn_image="Grid2D_Edges"
14
14
  />
15
15
  </template>
@@ -1,15 +1,15 @@
1
1
  <script setup>
2
- import ViewerGenericMeshPointsOptions from "@ogw_front/components/Viewer/Generic/Mesh/PointsOptions"
3
2
  import Grid2D_Points from "@ogw_front/assets/viewer_svgs/grid_2d_points.svg"
3
+ import ViewerGenericMeshPointsOptions from "@ogw_front/components/Viewer/Generic/Mesh/PointsOptions"
4
4
 
5
- const props = defineProps({
5
+ const { itemProps } = defineProps({
6
6
  itemProps: { type: Object, required: true },
7
7
  })
8
8
  </script>
9
9
 
10
10
  <template>
11
11
  <ViewerGenericMeshPointsOptions
12
- :itemProps="props.itemProps"
12
+ :itemProps="itemProps"
13
13
  :btn_image="Grid2D_Points"
14
14
  />
15
15
  </template>
@@ -1,15 +1,15 @@
1
1
  <script setup>
2
- import ViewerGenericMeshCellsOptions from "@ogw_front/components/Viewer/Generic/Mesh/CellsOptions"
3
2
  import Grid3DCells from "@ogw_front/assets/viewer_svgs/grid_3d_cells.svg"
3
+ import ViewerGenericMeshCellsOptions from "@ogw_front/components/Viewer/Generic/Mesh/CellsOptions"
4
4
 
5
- const props = defineProps({
5
+ const { itemProps } = defineProps({
6
6
  itemProps: { type: Object, required: true },
7
7
  })
8
8
  </script>
9
9
 
10
10
  <template>
11
11
  <ViewerGenericMeshCellsOptions
12
- :itemProps="props.itemProps"
12
+ :itemProps="itemProps"
13
13
  :btn_image="Grid3DCells"
14
14
  tooltip="Cells options"
15
15
  />
@@ -1,15 +1,15 @@
1
1
  <script setup>
2
- import ViewerGenericMeshEdgesOptions from "@ogw_front/components/Viewer/Generic/Mesh/EdgesOptions"
3
2
  import Grid3D_Edges from "@ogw_front/assets/viewer_svgs/grid_3d_edges.svg"
3
+ import ViewerGenericMeshEdgesOptions from "@ogw_front/components/Viewer/Generic/Mesh/EdgesOptions"
4
4
 
5
- const props = defineProps({
5
+ const { itemProps } = defineProps({
6
6
  itemProps: { type: Object, required: true },
7
7
  })
8
8
  </script>
9
9
 
10
10
  <template>
11
11
  <ViewerGenericMeshEdgesOptions
12
- :itemProps="props.itemProps"
12
+ :itemProps="itemProps"
13
13
  :btn_image="Grid3D_Edges"
14
14
  />
15
15
  </template>
@@ -1,15 +1,15 @@
1
1
  <script setup>
2
- import ViewerGenericMeshPolygonsOptions from "@ogw_front/components/Viewer/Generic/Mesh/PolygonsOptions"
3
2
  import Grid3D_Facets from "@ogw_front/assets/viewer_svgs/grid_3d_facets.svg"
3
+ import ViewerGenericMeshPolygonsOptions from "@ogw_front/components/Viewer/Generic/Mesh/PolygonsOptions"
4
4
 
5
- const props = defineProps({
5
+ const { itemProps } = defineProps({
6
6
  itemProps: { type: Object, required: true },
7
7
  })
8
8
  </script>
9
9
 
10
10
  <template>
11
11
  <ViewerGenericMeshPolygonsOptions
12
- :itemProps="props.itemProps"
12
+ :itemProps="itemProps"
13
13
  :btn_image="Grid3D_Facets"
14
14
  tooltip="Facets options"
15
15
  />
@@ -1,15 +1,15 @@
1
1
  <script setup>
2
- import ViewerGenericMeshPointsOptions from "@ogw_front/components/Viewer/Generic/Mesh/PointsOptions"
3
2
  import Grid3D_Points from "@ogw_front/assets/viewer_svgs/grid_3d_points.svg"
3
+ import ViewerGenericMeshPointsOptions from "@ogw_front/components/Viewer/Generic/Mesh/PointsOptions"
4
4
 
5
- const props = defineProps({
5
+ const { itemProps } = defineProps({
6
6
  itemProps: { type: Object, required: true },
7
7
  })
8
8
  </script>
9
9
 
10
10
  <template>
11
11
  <ViewerGenericMeshPointsOptions
12
- :itemProps="props.itemProps"
12
+ :itemProps="itemProps"
13
13
  :btn_image="Grid3D_Points"
14
14
  />
15
15
  </template>
@@ -1,15 +1,15 @@
1
1
  <script setup>
2
- import ViewerGenericMeshEdgesOptions from "@ogw_front/components/Viewer/Generic/Mesh/EdgesOptions"
3
2
  import HybridSolidEdges from "@ogw_front/assets/viewer_svgs/solid_edges.svg"
3
+ import ViewerGenericMeshEdgesOptions from "@ogw_front/components/Viewer/Generic/Mesh/EdgesOptions"
4
4
 
5
- const props = defineProps({
5
+ const { itemProps } = defineProps({
6
6
  itemProps: { type: Object, required: true },
7
7
  })
8
8
  </script>
9
9
 
10
10
  <template>
11
11
  <ViewerGenericMeshEdgesOptions
12
- :itemProps="props.itemProps"
12
+ :itemProps="itemProps"
13
13
  :btn_image="HybridSolidEdges"
14
14
  />
15
15
  </template>
@@ -1,15 +1,15 @@
1
1
  <script setup>
2
- import ViewerGenericMeshPointsOptions from "@ogw_front/components/Viewer/Generic/Mesh/PointsOptions"
3
2
  import HybridSolidPoints from "@ogw_front/assets/viewer_svgs/solid_points.svg"
3
+ import ViewerGenericMeshPointsOptions from "@ogw_front/components/Viewer/Generic/Mesh/PointsOptions"
4
4
 
5
- const props = defineProps({
5
+ const { itemProps } = defineProps({
6
6
  itemProps: { type: Object, required: true },
7
7
  })
8
8
  </script>
9
9
 
10
10
  <template>
11
11
  <ViewerGenericMeshPointsOptions
12
- :itemProps="props.itemProps"
12
+ :itemProps="itemProps"
13
13
  :btn_image="HybridSolidPoints"
14
14
  />
15
15
  </template>
@@ -1,15 +1,15 @@
1
1
  <script setup>
2
- import ViewerGenericMeshPolygonsOptions from "@ogw_front/components/Viewer/Generic/Mesh/PolygonsOptions"
3
2
  import HybridSolidPolygons from "@ogw_front/assets/viewer_svgs/solid_facets.svg"
3
+ import ViewerGenericMeshPolygonsOptions from "@ogw_front/components/Viewer/Generic/Mesh/PolygonsOptions"
4
4
 
5
- const props = defineProps({
5
+ const { itemProps } = defineProps({
6
6
  itemProps: { type: Object, required: true },
7
7
  })
8
8
  </script>
9
9
 
10
10
  <template>
11
11
  <ViewerGenericMeshPolygonsOptions
12
- :itemProps="props.itemProps"
12
+ :itemProps="itemProps"
13
13
  :btn_image="HybridSolidPolygons"
14
14
  />
15
15
  </template>
@@ -1,15 +1,15 @@
1
1
  <script setup>
2
- import ViewerGenericMeshPolyhedraOptions from "@ogw_front/components/Viewer/Generic/Mesh/PolyhedraOptions"
3
2
  import HybridSolidPolyhedra from "@ogw_front/assets/viewer_svgs/solid_polyhedra.svg"
3
+ import ViewerGenericMeshPolyhedraOptions from "@ogw_front/components/Viewer/Generic/Mesh/PolyhedraOptions"
4
4
 
5
- const props = defineProps({
5
+ const { itemProps } = defineProps({
6
6
  itemProps: { type: Object, required: true },
7
7
  })
8
8
  </script>
9
9
 
10
10
  <template>
11
11
  <ViewerGenericMeshPolyhedraOptions
12
- :itemProps="props.itemProps"
12
+ :itemProps="itemProps"
13
13
  :btn_image="HybridSolidPolyhedra"
14
14
  />
15
15
  </template>
@@ -1,7 +1,7 @@
1
1
  <script setup>
2
+ import ViewerOptionsAttributeColorBar from "@ogw_front/components/Viewer/Options/AttributeColorBar"
2
3
  import back_schemas from "@geode/opengeodeweb-back/opengeodeweb_back_schemas.json"
3
4
  import { useGeodeStore } from "@ogw_front/stores/geode"
4
- import ViewerOptionsAttributeColorBar from "@ogw_front/components/Viewer/Options/AttributeColorBar"
5
5
 
6
6
  const geodeStore = useGeodeStore()
7
7
 
@@ -16,21 +16,23 @@
16
16
  })
17
17
  const cell_attributes = ref([])
18
18
 
19
- const props = defineProps({
19
+ const { id } = defineProps({
20
20
  id: { type: String, required: true },
21
21
  })
22
22
 
23
- const rangeMin = computed({
24
- get: () => cell_attribute_range.value[0],
25
- set: (val) => {
26
- cell_attribute_range.value = [val, cell_attribute_range.value[1]]
27
- },
23
+ const model = defineModel()
24
+ const cell_attribute_names = ref([])
25
+ const cell_attribute = reactive({ name: cell_attribute_name.value })
26
+
27
+ onMounted(() => {
28
+ if (model.value !== undefined) {
29
+ cell_attribute_name.value = model.value.name
30
+ }
28
31
  })
29
- const rangeMax = computed({
30
- get: () => cell_attribute_range.value[1],
31
- set: (val) => {
32
- cell_attribute_range.value = [cell_attribute_range.value[0], val]
33
- },
32
+
33
+ watch(cell_attribute_name, (value) => {
34
+ cell_attribute.name = value
35
+ model.value = cell_attribute
34
36
  })
35
37
 
36
38
  onMounted(() => {
@@ -40,20 +42,21 @@
40
42
  function getCellAttributes() {
41
43
  geodeStore.request(
42
44
  back_schemas.opengeodeweb_back.cell_attribute_names,
43
- { id: props.id },
44
45
  {
45
- response_function: (response) => {
46
- cell_attributes.value = response.attributes
47
- },
46
+ id,
47
+ },
48
+ {
49
+ response_function: (response) =>
50
+ (cell_attributes.value = response.attributes),
48
51
  },
49
52
  )
50
53
  }
51
54
 
52
- const currentAttribute = computed(() => {
53
- return cell_attributes.value.find(
55
+ const currentAttribute = computed(() =>
56
+ cell_attributes.value.find(
54
57
  (attr) => attr.attribute_name === cell_attribute_name.value,
55
- )
56
- })
58
+ ),
59
+ )
57
60
 
58
61
  function resetRange() {
59
62
  if (currentAttribute.value) {