@geode/opengeodeweb-front 10.14.1 → 10.14.2-rc.2

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 (68) hide show
  1. package/.oxlintrc.json +12 -2
  2. package/app/components/Basic/Slider.vue +7 -0
  3. package/app/components/Basic/Switch.vue +7 -0
  4. package/app/components/HybridRenderingView.vue +1 -1
  5. package/app/components/SearchBar.vue +1 -1
  6. package/app/components/Viewer/ContextMenu.vue +1 -3
  7. package/app/components/Viewer/ContextMenuItem.vue +2 -2
  8. package/app/components/Viewer/EdgedCurve/SpecificEdgesOptions.vue +5 -9
  9. package/app/components/Viewer/Generic/Mesh/CellsOptions.vue +7 -2
  10. package/app/components/Viewer/Generic/Mesh/EdgesOptions.vue +11 -9
  11. package/app/components/Viewer/Generic/Mesh/PointsOptions.vue +14 -9
  12. package/app/components/Viewer/Generic/Mesh/PolygonsOptions.vue +10 -2
  13. package/app/components/Viewer/Generic/Mesh/PolyhedraOptions.vue +10 -2
  14. package/app/components/Viewer/Generic/Model/PointsOptions.vue +2 -14
  15. package/app/components/Viewer/ObjectTree/Base/CommonTreeView.vue +189 -0
  16. package/app/components/Viewer/ObjectTree/Base/Controls.vue +124 -38
  17. package/app/components/Viewer/ObjectTree/Base/ItemLabel.vue +43 -18
  18. package/app/components/Viewer/ObjectTree/Base/StickyHeader.vue +46 -0
  19. package/app/components/Viewer/ObjectTree/Base/TreeRow.vue +77 -0
  20. package/app/components/Viewer/ObjectTree/Box.vue +106 -15
  21. package/app/components/Viewer/ObjectTree/Layout.vue +14 -12
  22. package/app/components/Viewer/ObjectTree/Views/GlobalObjects.vue +48 -33
  23. package/app/components/Viewer/ObjectTree/Views/ModelComponents.vue +102 -66
  24. package/app/components/Viewer/Options/Sliders/Size.vue +8 -0
  25. package/app/components/Viewer/Options/Sliders/Slider.vue +17 -0
  26. package/app/components/Viewer/Options/Sliders/Width.vue +8 -0
  27. package/app/components/Viewer/Options/VisibilitySwitch.vue +3 -1
  28. package/app/components/Viewer/PointSet/SpecificPointsOptions.vue +1 -5
  29. package/app/components/Viewer/Surface/Triangulated/TrianglesOptions.vue +11 -0
  30. package/app/composables/hover_highlight.js +85 -0
  31. package/app/composables/model_components.js +68 -0
  32. package/app/composables/{use_tree_filter.js → tree_filter.js} +49 -31
  33. package/app/composables/tree_keyboard_nav.js +81 -0
  34. package/app/composables/tree_scroll.js +91 -0
  35. package/app/composables/virtual_tree.js +164 -0
  36. package/app/stores/data.js +41 -1
  37. package/app/stores/hybrid_viewer.js +30 -38
  38. package/app/stores/menu.js +8 -14
  39. package/app/utils/hybrid_viewer.js +101 -0
  40. package/package.json +3 -3
  41. package/tests/integration/setup.js +2 -1
  42. package/tests/integration/stores/data_style/mesh/cells.nuxt.test.js +2 -3
  43. package/tests/integration/stores/data_style/mesh/edges.nuxt.test.js +2 -3
  44. package/tests/integration/stores/data_style/mesh/index.nuxt.test.js +2 -3
  45. package/tests/integration/stores/data_style/mesh/points.nuxt.test.js +2 -3
  46. package/tests/integration/stores/data_style/mesh/polygons.nuxt.test.js +2 -3
  47. package/tests/integration/stores/data_style/mesh/polyhedra.nuxt.test.js +2 -3
  48. package/tests/integration/stores/data_style/model/blocks.nuxt.test.js +2 -3
  49. package/tests/integration/stores/data_style/model/corners.nuxt.test.js +2 -3
  50. package/tests/integration/stores/data_style/model/edges.nuxt.test.js +2 -3
  51. package/tests/integration/stores/data_style/model/index.nuxt.test.js +2 -3
  52. package/tests/integration/stores/data_style/model/lines.nuxt.test.js +2 -3
  53. package/tests/integration/stores/data_style/model/points.nuxt.test.js +2 -3
  54. package/tests/integration/stores/data_style/model/surfaces.nuxt.test.js +2 -3
  55. package/tests/integration/stores/viewer.nuxt.test.js +2 -2
  56. package/app/components/Viewer/HybridSolid/EdgesOptions.vue +0 -12
  57. package/app/components/Viewer/HybridSolid/PointsOptions.vue +0 -12
  58. package/app/components/Viewer/HybridSolid/PolygonsOptions.vue +0 -12
  59. package/app/components/Viewer/HybridSolid/PolyhedraOptions.vue +0 -12
  60. package/app/components/Viewer/PolygonalSurface/EdgesOptions.vue +0 -12
  61. package/app/components/Viewer/PolygonalSurface/PointsOptions.vue +0 -12
  62. package/app/components/Viewer/TriangulatedSurface/TrianglesOptions.vue +0 -16
  63. package/app/composables/use_hover_highlight.js +0 -48
  64. package/tests/integration/microservices/back/requirements.txt +0 -7
  65. package/tests/integration/microservices/viewer/requirements.txt +0 -7
  66. /package/app/components/Viewer/{TriangulatedSurface → Surface}/EdgesOptions.vue +0 -0
  67. /package/app/components/Viewer/{TriangulatedSurface → Surface}/PointsOptions.vue +0 -0
  68. /package/app/components/Viewer/{PolygonalSurface/SpecificPolygonsOptions.vue → Surface/PolygonsOptions.vue} +0 -0
@@ -5,15 +5,13 @@ import PointSetPointsOptions from "@ogw_front/components/Viewer/PointSet/Specifi
5
5
  import EdgedCurveEdgesOptions from "@ogw_front/components/Viewer/EdgedCurve/SpecificEdgesOptions";
6
6
  import EdgedCurvePointsOptions from "@ogw_front/components/Viewer/EdgedCurve/PointsOptions";
7
7
 
8
- // PolygonalSurface components
9
- import PolygonalSurfaceEdgesOptions from "@ogw_front/components/Viewer/PolygonalSurface/EdgesOptions";
10
- import PolygonalSurfacePointsOptions from "@ogw_front/components/Viewer/PolygonalSurface/PointsOptions";
11
- import PolygonalSurfacePolygonsOptions from "@ogw_front/components/Viewer/PolygonalSurface/SpecificPolygonsOptions";
8
+ // Surface components
9
+ import SurfaceEdgesOptions from "@ogw_front/components/Viewer/Surface/EdgesOptions";
10
+ import SurfacePointsOptions from "@ogw_front/components/Viewer/Surface/PointsOptions";
11
+ import SurfacePolygonsOptions from "@ogw_front/components/Viewer/Surface/PolygonsOptions";
12
12
 
13
13
  // TriangulatedSurface components
14
- import TriangulatedSurfaceEdgesOptions from "@ogw_front/components/Viewer/TriangulatedSurface/EdgesOptions";
15
- import TriangulatedSurfacePointsOptions from "@ogw_front/components/Viewer/TriangulatedSurface/PointsOptions";
16
- import TriangulatedSurfaceTrianglesOptions from "@ogw_front/components/Viewer/TriangulatedSurface/TrianglesOptions";
14
+ import TriangulatedSurfaceTrianglesOptions from "@ogw_front/components/Viewer/Surface/Triangulated/TrianglesOptions";
17
15
 
18
16
  // Grid 2D components
19
17
  import Grid2DCellsOptions from "@ogw_front/components/Viewer/Grid/2D/CellsOptions";
@@ -44,15 +42,11 @@ const PointSet_menu = [PointSetPointsOptions];
44
42
 
45
43
  const EdgedCurve_menu = [EdgedCurvePointsOptions, EdgedCurveEdgesOptions];
46
44
 
47
- const PolygonalSurface_menu = [
48
- PolygonalSurfacePointsOptions,
49
- PolygonalSurfaceEdgesOptions,
50
- PolygonalSurfacePolygonsOptions,
51
- ];
45
+ const PolygonalSurface_menu = [SurfacePointsOptions, SurfaceEdgesOptions, SurfacePolygonsOptions];
52
46
 
53
47
  const TriangulatedSurface_menu = [
54
- TriangulatedSurfacePointsOptions,
55
- TriangulatedSurfaceEdgesOptions,
48
+ SurfacePointsOptions,
49
+ SurfaceEdgesOptions,
56
50
  TriangulatedSurfaceTrianglesOptions,
57
51
  ];
58
52
 
@@ -0,0 +1,101 @@
1
+ const RGB_MAX = 255;
2
+ const BACKGROUND_GREY_VALUE = 180;
3
+ const SAMPLE_SIZE = 10;
4
+ const TOTAL_CHANNELS = 400;
5
+ const RGBA_CHANNELS = 4;
6
+
7
+ function getCameraOptions(camera) {
8
+ if (!camera) {
9
+ return undefined;
10
+ }
11
+
12
+ if (typeof camera.getFocalPoint !== "function") {
13
+ return { ...camera };
14
+ }
15
+ return {
16
+ focal_point: [...camera.getFocalPoint()],
17
+ view_up: [...camera.getViewUp()],
18
+ position: [...camera.getPosition()],
19
+ view_angle: camera.getViewAngle(),
20
+ clipping_range: [...camera.getClippingRange()],
21
+ distance: camera.getDistance(),
22
+ };
23
+ }
24
+
25
+ function applyCameraOptions(camera, options) {
26
+ if (!camera || !options) {
27
+ return;
28
+ }
29
+ if (options.focal_point) {
30
+ camera.setFocalPoint(...options.focal_point);
31
+ }
32
+ if (options.view_up) {
33
+ camera.setViewUp(...options.view_up);
34
+ }
35
+ if (options.position) {
36
+ camera.setPosition(...options.position);
37
+ }
38
+ if (options.view_angle) {
39
+ camera.setViewAngle(options.view_angle);
40
+ }
41
+ if (options.clipping_range) {
42
+ camera.setClippingRange(...options.clipping_range);
43
+ }
44
+ }
45
+
46
+ function mapRect(rect, latestImage, canvasRect) {
47
+ const scaleX = latestImage.width / canvasRect.width;
48
+ const scaleY = latestImage.height / canvasRect.height;
49
+ return {
50
+ relX: (rect.x - canvasRect.left) * scaleX,
51
+ relY: (rect.y - canvasRect.top) * scaleY,
52
+ relW: rect.width * scaleX,
53
+ relH: rect.height * scaleY,
54
+ };
55
+ }
56
+
57
+ function computeAverageBrightness(rect, options) {
58
+ const { latestImage, offscreenCtx, offscreenCanvas, genericRenderWindow } = options;
59
+ if (!latestImage || !offscreenCtx || !offscreenCanvas || !genericRenderWindow) {
60
+ return BACKGROUND_GREY_VALUE / RGB_MAX;
61
+ }
62
+
63
+ const canvas = genericRenderWindow.getApiSpecificRenderWindow().getCanvas();
64
+ if (!canvas) {
65
+ return BACKGROUND_GREY_VALUE / RGB_MAX;
66
+ }
67
+
68
+ const { relX, relY, relW, relH } = mapRect(rect, latestImage, canvas.getBoundingClientRect());
69
+
70
+ offscreenCanvas.width = SAMPLE_SIZE;
71
+ offscreenCanvas.height = SAMPLE_SIZE;
72
+
73
+ try {
74
+ offscreenCtx.drawImage(
75
+ latestImage,
76
+ Math.max(0, relX),
77
+ Math.max(0, relY),
78
+ Math.min(latestImage.width, relW),
79
+ Math.min(latestImage.height, relH),
80
+ 0,
81
+ 0,
82
+ SAMPLE_SIZE,
83
+ SAMPLE_SIZE,
84
+ );
85
+ const { data } = offscreenCtx.getImageData(0, 0, SAMPLE_SIZE, SAMPLE_SIZE);
86
+
87
+ let minBrightness = 1;
88
+ for (let i = 0; i < TOTAL_CHANNELS; i += RGBA_CHANNELS) {
89
+ const brightness = (data[i] + data[i + 1] + data[i + 2]) / (3 * RGB_MAX);
90
+ if (brightness < minBrightness) {
91
+ minBrightness = brightness;
92
+ }
93
+ }
94
+
95
+ return minBrightness;
96
+ } catch {
97
+ return BACKGROUND_GREY_VALUE / RGB_MAX;
98
+ }
99
+ }
100
+
101
+ export { applyCameraOptions, computeAverageBrightness, getCameraOptions };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@geode/opengeodeweb-front",
3
- "version": "10.14.1",
3
+ "version": "10.14.2-rc.2",
4
4
  "description": "OpenSource Vue/Nuxt/Pinia/Vuetify framework for web applications",
5
5
  "homepage": "https://github.com/Geode-solutions/OpenGeodeWeb-Front",
6
6
  "bugs": {
@@ -34,8 +34,8 @@
34
34
  "build": ""
35
35
  },
36
36
  "dependencies": {
37
- "@geode/opengeodeweb-back": "latest",
38
- "@geode/opengeodeweb-viewer": "latest",
37
+ "@geode/opengeodeweb-back": "next",
38
+ "@geode/opengeodeweb-viewer": "next",
39
39
  "@google-cloud/run": "3.2.0",
40
40
  "@kitware/vtk.js": "33.3.0",
41
41
  "@mdi/font": "7.4.47",
@@ -19,6 +19,7 @@ import { useInfraStore } from "@ogw_front/stores/infra";
19
19
  import { useViewerStore } from "@ogw_front/stores/viewer";
20
20
 
21
21
  // Local constants
22
+ const beforeAllTimeout = 40_000;
22
23
  const data_folder = path.join("tests", "integration", "data", "uploads");
23
24
 
24
25
  async function runMicroservices() {
@@ -88,4 +89,4 @@ afterAll(() => {
88
89
  delete globalThis.WebSocket;
89
90
  });
90
91
 
91
- export { runMicroservices, setupIntegrationTests };
92
+ export { beforeAllTimeout, runMicroservices, setupIntegrationTests };
@@ -3,14 +3,13 @@ import { afterAll, beforeAll, describe, expect, test, vi } from "vitest";
3
3
  import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json" with { type: "json" };
4
4
 
5
5
  // Local imports
6
+ import { beforeAllTimeout, setupIntegrationTests } from "@ogw_tests/integration/setup";
6
7
  import { Status } from "@ogw_front/utils/status";
7
8
  import { cleanupBackend } from "@ogw_front/utils/local/cleanup";
8
- import { setupIntegrationTests } from "@ogw_tests/integration/setup";
9
9
  import { useDataStyleStore } from "@ogw_front/stores/data_style";
10
10
  import { useViewerStore } from "@ogw_front/stores/viewer";
11
11
 
12
12
  // Local constants
13
- const INTERVAL_TIMEOUT = 60_000;
14
13
  const mesh_cells_schemas = viewer_schemas.opengeodeweb_viewer.mesh.cells;
15
14
  const file_name = "test.og_rgd2d";
16
15
  const geode_object = "RegularGrid2D";
@@ -25,7 +24,7 @@ describe("mesh cells", () => {
25
24
  id = "";
26
25
  projectFolderPath = "";
27
26
  ({ id, projectFolderPath } = await setupIntegrationTests(file_name, geode_object));
28
- }, INTERVAL_TIMEOUT);
27
+ }, beforeAllTimeout);
29
28
 
30
29
  afterAll(async () => {
31
30
  console.log("afterAll mesh cells kill", projectFolderPath);
@@ -3,14 +3,13 @@ import { afterAll, beforeAll, describe, expect, test, vi } from "vitest";
3
3
  import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json" with { type: "json" };
4
4
 
5
5
  // Local imports
6
+ import { beforeAllTimeout, setupIntegrationTests } from "@ogw_tests/integration/setup";
6
7
  import { Status } from "@ogw_front/utils/status";
7
8
  import { cleanupBackend } from "@ogw_front/utils/local/cleanup";
8
- import { setupIntegrationTests } from "@ogw_tests/integration/setup";
9
9
  import { useDataStyleStore } from "@ogw_front/stores/data_style";
10
10
  import { useViewerStore } from "@ogw_front/stores/viewer";
11
11
 
12
12
  // Local constants
13
- const INTERVAL_TIMEOUT = 25_000;
14
13
  const mesh_edges_schemas = viewer_schemas.opengeodeweb_viewer.mesh.edges;
15
14
  const file_name = "test.og_edc3d";
16
15
  const geode_object = "EdgedCurve3D";
@@ -23,7 +22,7 @@ let id = "",
23
22
  describe("mesh edges", () => {
24
23
  beforeAll(async () => {
25
24
  ({ id, projectFolderPath } = await setupIntegrationTests(file_name, geode_object));
26
- }, INTERVAL_TIMEOUT);
25
+ }, beforeAllTimeout);
27
26
 
28
27
  afterAll(async () => {
29
28
  console.log("afterAll mesh edges kill", projectFolderPath);
@@ -3,14 +3,13 @@ import { afterAll, beforeAll, describe, expect, test, vi } from "vitest";
3
3
  import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json" with { type: "json" };
4
4
 
5
5
  // Local imports
6
+ import { beforeAllTimeout, setupIntegrationTests } from "@ogw_tests/integration/setup";
6
7
  import { Status } from "@ogw_front/utils/status";
7
8
  import { cleanupBackend } from "@ogw_front/utils/local/cleanup";
8
- import { setupIntegrationTests } from "@ogw_tests/integration/setup";
9
9
  import { useDataStyleStore } from "@ogw_front/stores/data_style";
10
10
  import { useViewerStore } from "@ogw_front/stores/viewer";
11
11
 
12
12
  // Local constants
13
- const INTERVAL_TIMEOUT = 20_000;
14
13
  const mesh_schemas = viewer_schemas.opengeodeweb_viewer.mesh;
15
14
  const file_name = "test.og_rgd3d";
16
15
  const geode_object = "RegularGrid3D";
@@ -21,7 +20,7 @@ let id = "",
21
20
  describe("mesh", () => {
22
21
  beforeAll(async () => {
23
22
  ({ id, projectFolderPath } = await setupIntegrationTests(file_name, geode_object));
24
- }, INTERVAL_TIMEOUT);
23
+ }, beforeAllTimeout);
25
24
 
26
25
  afterAll(async () => {
27
26
  console.log("afterAll mesh index kill", projectFolderPath);
@@ -3,14 +3,13 @@ import { afterAll, beforeAll, describe, expect, test, vi } from "vitest";
3
3
  import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json" with { type: "json" };
4
4
 
5
5
  // Local imports
6
+ import { beforeAllTimeout, setupIntegrationTests } from "@ogw_tests/integration/setup";
6
7
  import { Status } from "@ogw_front/utils/status";
7
8
  import { cleanupBackend } from "@ogw_front/utils/local/cleanup";
8
- import { setupIntegrationTests } from "@ogw_tests/integration/setup";
9
9
  import { useDataStyleStore } from "@ogw_front/stores/data_style";
10
10
  import { useViewerStore } from "@ogw_front/stores/viewer";
11
11
 
12
12
  // Local constants
13
- const INTERVAL_TIMEOUT = 20_000;
14
13
  const mesh_points_schemas = viewer_schemas.opengeodeweb_viewer.mesh.points;
15
14
  const file_name = "test.og_edc2d";
16
15
  const geode_object = "EdgedCurve2D";
@@ -22,7 +21,7 @@ let id = "",
22
21
  describe("mesh points", () => {
23
22
  beforeAll(async () => {
24
23
  ({ id, projectFolderPath } = await setupIntegrationTests(file_name, geode_object));
25
- }, INTERVAL_TIMEOUT);
24
+ }, beforeAllTimeout);
26
25
 
27
26
  afterAll(async () => {
28
27
  console.log("afterAll mesh points kill", projectFolderPath);
@@ -3,14 +3,13 @@ import { afterAll, beforeAll, describe, expect, test, vi } from "vitest";
3
3
  import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json" with { type: "json" };
4
4
 
5
5
  // Local imports
6
+ import { beforeAllTimeout, setupIntegrationTests } from "@ogw_tests/integration/setup";
6
7
  import { Status } from "@ogw_front/utils/status";
7
8
  import { cleanupBackend } from "@ogw_front/utils/local/cleanup";
8
- import { setupIntegrationTests } from "@ogw_tests/integration/setup";
9
9
  import { useDataStyleStore } from "@ogw_front/stores/data_style";
10
10
  import { useViewerStore } from "@ogw_front/stores/viewer";
11
11
 
12
12
  // Local constants
13
- const INTERVAL_TIMEOUT = 20_000;
14
13
  const mesh_polygons_schemas = viewer_schemas.opengeodeweb_viewer.mesh.polygons;
15
14
  const file_name = "test.og_psf3d";
16
15
  const geode_object = "PolygonalSurface3D";
@@ -23,7 +22,7 @@ let id = "",
23
22
  describe("mesh polygons", () => {
24
23
  beforeAll(async () => {
25
24
  ({ id, projectFolderPath } = await setupIntegrationTests(file_name, geode_object));
26
- }, INTERVAL_TIMEOUT);
25
+ }, beforeAllTimeout);
27
26
 
28
27
  afterAll(async () => {
29
28
  console.log("afterAll mesh polygons kill", projectFolderPath);
@@ -3,14 +3,13 @@ import { afterAll, beforeAll, describe, expect, test, vi } from "vitest";
3
3
  import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json" with { type: "json" };
4
4
 
5
5
  // Local imports
6
+ import { beforeAllTimeout, setupIntegrationTests } from "@ogw_tests/integration/setup";
6
7
  import { Status } from "@ogw_front/utils/status";
7
8
  import { cleanupBackend } from "@ogw_front/utils/local/cleanup";
8
- import { setupIntegrationTests } from "@ogw_tests/integration/setup";
9
9
  import { useDataStyleStore } from "@ogw_front/stores/data_style";
10
10
  import { useViewerStore } from "@ogw_front/stores/viewer";
11
11
 
12
12
  // Local constants
13
- const INTERVAL_TIMEOUT = 20_000;
14
13
  const mesh_polyhedra_schemas = viewer_schemas.opengeodeweb_viewer.mesh.polyhedra;
15
14
  const file_name = "test.vtu";
16
15
  const geode_object = "HybridSolid3D";
@@ -23,7 +22,7 @@ let id = "",
23
22
  describe("mesh polyhedra", () => {
24
23
  beforeAll(async () => {
25
24
  ({ id, projectFolderPath } = await setupIntegrationTests(file_name, geode_object));
26
- }, INTERVAL_TIMEOUT);
25
+ }, beforeAllTimeout);
27
26
 
28
27
  afterAll(async () => {
29
28
  console.log("afterAll mesh cells kill", projectFolderPath);
@@ -3,15 +3,14 @@ import { afterAll, beforeAll, describe, expect, test, vi } from "vitest";
3
3
  import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json" with { type: "json" };
4
4
 
5
5
  // Local imports
6
+ import { beforeAllTimeout, setupIntegrationTests } from "@ogw_tests/integration/setup";
6
7
  import { Status } from "@ogw_front/utils/status";
7
8
  import { cleanupBackend } from "@ogw_front/utils/local/cleanup";
8
- import { setupIntegrationTests } from "@ogw_tests/integration/setup";
9
9
  import { useDataStore } from "@ogw_front/stores/data";
10
10
  import { useDataStyleStore } from "@ogw_front/stores/data_style";
11
11
  import { useViewerStore } from "@ogw_front/stores/viewer";
12
12
 
13
13
  // Local constants
14
- const INTERVAL_TIMEOUT = 20_000;
15
14
  const model_blocks_schemas = viewer_schemas.opengeodeweb_viewer.model.blocks;
16
15
  const file_name = "test.og_brep";
17
16
  const geode_object = "BRep";
@@ -30,7 +29,7 @@ let id = "",
30
29
  describe("model blocks", () => {
31
30
  beforeAll(async () => {
32
31
  ({ id, projectFolderPath } = await setupIntegrationTests(file_name, geode_object));
33
- }, INTERVAL_TIMEOUT);
32
+ }, beforeAllTimeout);
34
33
 
35
34
  afterAll(async () => {
36
35
  console.log("afterAll model blocks kill", projectFolderPath);
@@ -3,15 +3,14 @@ import { afterAll, beforeAll, describe, expect, test, vi } from "vitest";
3
3
  import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json" with { type: "json" };
4
4
 
5
5
  // Local imports
6
+ import { beforeAllTimeout, setupIntegrationTests } from "@ogw_tests/integration/setup";
6
7
  import { Status } from "@ogw_front/utils/status";
7
8
  import { cleanupBackend } from "@ogw_front/utils/local/cleanup";
8
- import { setupIntegrationTests } from "@ogw_tests/integration/setup";
9
9
  import { useDataStore } from "@ogw_front/stores/data";
10
10
  import { useDataStyleStore } from "@ogw_front/stores/data_style";
11
11
  import { useViewerStore } from "@ogw_front/stores/viewer";
12
12
 
13
13
  // Local constants
14
- const INTERVAL_TIMEOUT = 20_000;
15
14
  const model_corners_schemas = viewer_schemas.opengeodeweb_viewer.model.corners;
16
15
  const file_name = "test.og_brep";
17
16
  const geode_object = "BRep";
@@ -30,7 +29,7 @@ let id = "",
30
29
  describe("model corners", () => {
31
30
  beforeAll(async () => {
32
31
  ({ id, projectFolderPath } = await setupIntegrationTests(file_name, geode_object));
33
- }, INTERVAL_TIMEOUT);
32
+ }, beforeAllTimeout);
34
33
 
35
34
  afterAll(async () => {
36
35
  console.log("afterAll model corners kill", projectFolderPath);
@@ -3,14 +3,13 @@ import { afterAll, beforeAll, describe, expect, test, vi } from "vitest";
3
3
  import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json" with { type: "json" };
4
4
 
5
5
  // Local imports
6
+ import { beforeAllTimeout, setupIntegrationTests } from "@ogw_tests/integration/setup";
6
7
  import { Status } from "@ogw_front/utils/status";
7
8
  import { cleanupBackend } from "@ogw_front/utils/local/cleanup";
8
- import { setupIntegrationTests } from "@ogw_tests/integration/setup";
9
9
  import { useDataStyleStore } from "@ogw_front/stores/data_style";
10
10
  import { useViewerStore } from "@ogw_front/stores/viewer";
11
11
 
12
12
  // Local constants
13
- const INTERVAL_TIMEOUT = 25_000;
14
13
  const model_edges_schemas = viewer_schemas.opengeodeweb_viewer.model.edges;
15
14
  const file_name = "test.og_brep";
16
15
  const geode_object = "BRep";
@@ -29,7 +28,7 @@ let id = "",
29
28
  describe("model edges", () => {
30
29
  beforeAll(async () => {
31
30
  ({ id, projectFolderPath } = await setupIntegrationTests(file_name, geode_object));
32
- }, INTERVAL_TIMEOUT);
31
+ }, beforeAllTimeout);
33
32
 
34
33
  afterAll(async () => {
35
34
  console.log("afterAll model edges kill", projectFolderPath);
@@ -3,14 +3,13 @@ import { afterAll, beforeAll, describe, expect, test, vi } from "vitest";
3
3
  import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json" with { type: "json" };
4
4
 
5
5
  // Local imports
6
+ import { beforeAllTimeout, setupIntegrationTests } from "@ogw_tests/integration/setup";
6
7
  import { Status } from "@ogw_front/utils/status";
7
8
  import { cleanupBackend } from "@ogw_front/utils/local/cleanup";
8
- import { setupIntegrationTests } from "@ogw_tests/integration/setup";
9
9
  import { useDataStyleStore } from "@ogw_front/stores/data_style";
10
10
  import { useViewerStore } from "@ogw_front/stores/viewer";
11
11
 
12
12
  // Local constants
13
- const INTERVAL_TIMEOUT = 20_000;
14
13
  const model_schemas = viewer_schemas.opengeodeweb_viewer.model;
15
14
  const file_name = "test.og_brep";
16
15
  const geode_object = "BRep";
@@ -29,7 +28,7 @@ let id = "",
29
28
  describe("model", () => {
30
29
  beforeAll(async () => {
31
30
  ({ id, projectFolderPath } = await setupIntegrationTests(file_name, geode_object));
32
- }, INTERVAL_TIMEOUT);
31
+ }, beforeAllTimeout);
33
32
 
34
33
  afterAll(async () => {
35
34
  console.log("afterAll model kill", projectFolderPath);
@@ -3,15 +3,14 @@ import { afterAll, beforeAll, describe, expect, test, vi } from "vitest";
3
3
  import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json" with { type: "json" };
4
4
 
5
5
  // Local imports
6
+ import { beforeAllTimeout, setupIntegrationTests } from "@ogw_tests/integration/setup";
6
7
  import { Status } from "@ogw_front/utils/status";
7
8
  import { cleanupBackend } from "@ogw_front/utils/local/cleanup";
8
- import { setupIntegrationTests } from "@ogw_tests/integration/setup";
9
9
  import { useDataStore } from "@ogw_front/stores/data";
10
10
  import { useDataStyleStore } from "@ogw_front/stores/data_style";
11
11
  import { useViewerStore } from "@ogw_front/stores/viewer";
12
12
 
13
13
  // Local constants
14
- const INTERVAL_TIMEOUT = 20_000;
15
14
  const model_lines_schemas = viewer_schemas.opengeodeweb_viewer.model.lines;
16
15
  const file_name = "test.og_brep";
17
16
  const geode_object = "BRep";
@@ -30,7 +29,7 @@ let id = "",
30
29
  describe("model lines", () => {
31
30
  beforeAll(async () => {
32
31
  ({ id, projectFolderPath } = await setupIntegrationTests(file_name, geode_object));
33
- }, INTERVAL_TIMEOUT);
32
+ }, beforeAllTimeout);
34
33
 
35
34
  afterAll(async () => {
36
35
  console.log("afterAll model lines kill", projectFolderPath);
@@ -3,14 +3,13 @@ import { afterAll, beforeAll, describe, expect, test, vi } from "vitest";
3
3
  import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json" with { type: "json" };
4
4
 
5
5
  // Local imports
6
+ import { beforeAllTimeout, setupIntegrationTests } from "@ogw_tests/integration/setup";
6
7
  import { Status } from "@ogw_front/utils/status";
7
8
  import { cleanupBackend } from "@ogw_front/utils/local/cleanup";
8
- import { setupIntegrationTests } from "@ogw_tests/integration/setup";
9
9
  import { useDataStyleStore } from "@ogw_front/stores/data_style";
10
10
  import { useViewerStore } from "@ogw_front/stores/viewer";
11
11
 
12
12
  // Local constants
13
- const INTERVAL_TIMEOUT = 20_000;
14
13
  const model_points_schemas = viewer_schemas.opengeodeweb_viewer.model.points;
15
14
  const file_name = "test.og_brep";
16
15
  const geode_object = "BRep";
@@ -29,7 +28,7 @@ let id = "",
29
28
  describe("model points", () => {
30
29
  beforeAll(async () => {
31
30
  ({ id, projectFolderPath } = await setupIntegrationTests(file_name, geode_object));
32
- }, INTERVAL_TIMEOUT);
31
+ }, beforeAllTimeout);
33
32
 
34
33
  afterAll(async () => {
35
34
  console.log("afterAll model points kill", projectFolderPath);
@@ -3,15 +3,14 @@ import { afterAll, beforeAll, describe, expect, test, vi } from "vitest";
3
3
  import viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json" with { type: "json" };
4
4
 
5
5
  // Local imports
6
+ import { beforeAllTimeout, setupIntegrationTests } from "@ogw_tests/integration/setup";
6
7
  import { Status } from "@ogw_front/utils/status";
7
8
  import { cleanupBackend } from "@ogw_front/utils/local/cleanup";
8
- import { setupIntegrationTests } from "@ogw_tests/integration/setup";
9
9
  import { useDataStore } from "@ogw_front/stores/data";
10
10
  import { useDataStyleStore } from "@ogw_front/stores/data_style";
11
11
  import { useViewerStore } from "@ogw_front/stores/viewer";
12
12
 
13
13
  // Local constants
14
- const INTERVAL_TIMEOUT = 20_000;
15
14
  const model_surfaces_schemas = viewer_schemas.opengeodeweb_viewer.model.surfaces;
16
15
  const file_name = "test.og_brep";
17
16
  const geode_object = "BRep";
@@ -30,7 +29,7 @@ let id = "",
30
29
  describe("model surfaces", () => {
31
30
  beforeAll(async () => {
32
31
  ({ id, projectFolderPath } = await setupIntegrationTests(file_name, geode_object));
33
- }, INTERVAL_TIMEOUT);
32
+ }, beforeAllTimeout);
34
33
 
35
34
  afterAll(async () => {
36
35
  console.log("afterAll model surfaces kill", projectFolderPath);
@@ -5,9 +5,9 @@ import { afterAll, beforeAll, describe, expect, test } from "vitest";
5
5
  import opengeodeweb_viewer_schemas from "@geode/opengeodeweb-viewer/opengeodeweb_viewer_schemas.json";
6
6
 
7
7
  // Local imports
8
+ import { beforeAllTimeout, runMicroservices } from "@ogw_tests/integration/setup";
8
9
  import { Status } from "@ogw_front/utils/status";
9
10
  import { cleanupBackend } from "@ogw_front/utils/local/cleanup";
10
- import { runMicroservices } from "@ogw_tests/integration/setup";
11
11
  import { setupActivePinia } from "@ogw_tests/utils";
12
12
  import { useViewerStore } from "@ogw_front/stores/viewer";
13
13
 
@@ -19,7 +19,7 @@ describe("viewer Store", () => {
19
19
  beforeAll(async () => {
20
20
  setupActivePinia();
21
21
  ({ projectFolderPath } = await runMicroservices());
22
- });
22
+ }, beforeAllTimeout);
23
23
 
24
24
  afterAll(async () => {
25
25
  await cleanupBackend(projectFolderPath);
@@ -1,12 +0,0 @@
1
- <script setup>
2
- import HybridSolidEdges from "@ogw_front/assets/viewer_svgs/solid_edges.svg";
3
- import ViewerGenericMeshEdgesOptions from "@ogw_front/components/Viewer/Generic/Mesh/EdgesOptions";
4
-
5
- const { itemProps } = defineProps({
6
- itemProps: { type: Object, required: true },
7
- });
8
- </script>
9
-
10
- <template>
11
- <ViewerGenericMeshEdgesOptions :itemProps="itemProps" :btn_image="HybridSolidEdges" />
12
- </template>
@@ -1,12 +0,0 @@
1
- <script setup>
2
- import HybridSolidPoints from "@ogw_front/assets/viewer_svgs/solid_points.svg";
3
- import ViewerGenericMeshPointsOptions from "@ogw_front/components/Viewer/Generic/Mesh/PointsOptions";
4
-
5
- const { itemProps } = defineProps({
6
- itemProps: { type: Object, required: true },
7
- });
8
- </script>
9
-
10
- <template>
11
- <ViewerGenericMeshPointsOptions :itemProps="itemProps" :btn_image="HybridSolidPoints" />
12
- </template>
@@ -1,12 +0,0 @@
1
- <script setup>
2
- import HybridSolidPolygons from "@ogw_front/assets/viewer_svgs/solid_facets.svg";
3
- import ViewerGenericMeshPolygonsOptions from "@ogw_front/components/Viewer/Generic/Mesh/PolygonsOptions";
4
-
5
- const { itemProps } = defineProps({
6
- itemProps: { type: Object, required: true },
7
- });
8
- </script>
9
-
10
- <template>
11
- <ViewerGenericMeshPolygonsOptions :itemProps="itemProps" :btn_image="HybridSolidPolygons" />
12
- </template>
@@ -1,12 +0,0 @@
1
- <script setup>
2
- import HybridSolidPolyhedra from "@ogw_front/assets/viewer_svgs/solid_polyhedra.svg";
3
- import ViewerGenericMeshPolyhedraOptions from "@ogw_front/components/Viewer/Generic/Mesh/PolyhedraOptions";
4
-
5
- const { itemProps } = defineProps({
6
- itemProps: { type: Object, required: true },
7
- });
8
- </script>
9
-
10
- <template>
11
- <ViewerGenericMeshPolyhedraOptions :itemProps="itemProps" :btn_image="HybridSolidPolyhedra" />
12
- </template>
@@ -1,12 +0,0 @@
1
- <script setup>
2
- import PolygonalSurfaceEdges from "@ogw_front/assets/viewer_svgs/surface_edges.svg";
3
- import ViewerGenericMeshEdgesOptions from "@ogw_front/components/Viewer/Generic/Mesh/EdgesOptions";
4
-
5
- const { itemProps } = defineProps({
6
- itemProps: { type: Object, required: true },
7
- });
8
- </script>
9
-
10
- <template>
11
- <ViewerGenericMeshEdgesOptions :itemProps="itemProps" :btn_image="PolygonalSurfaceEdges" />
12
- </template>
@@ -1,12 +0,0 @@
1
- <script setup>
2
- import PolygonalSurfacePoints from "@ogw_front/assets/viewer_svgs/surface_points.svg";
3
- import ViewerGenericMeshPointsOptions from "@ogw_front/components/Viewer/Generic/Mesh/PointsOptions";
4
-
5
- const { itemProps } = defineProps({
6
- itemProps: { type: Object, required: true },
7
- });
8
- </script>
9
-
10
- <template>
11
- <ViewerGenericMeshPointsOptions :itemProps="itemProps" :btn_image="PolygonalSurfacePoints" />
12
- </template>
@@ -1,16 +0,0 @@
1
- <script setup>
2
- import TriangulatedSurfaceTriangles from "@ogw_front/assets/viewer_svgs/surface_triangles.svg";
3
- import ViewerSpecificPolygonsOptions from "@ogw_front/components/Viewer/PolygonalSurface/SpecificPolygonsOptions";
4
-
5
- const { itemProps } = defineProps({
6
- itemProps: { type: Object, required: true },
7
- });
8
- </script>
9
-
10
- <template>
11
- <ViewerSpecificPolygonsOptions
12
- :itemProps="itemProps"
13
- :btn_image="TriangulatedSurfaceTriangles"
14
- tooltip="Triangles options"
15
- />
16
- </template>