ebta-workflow-prod 1.1.3 → 4.0.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 (60) hide show
  1. package/.eslintrc.js +7 -0
  2. package/.vscode/extensions.json +3 -0
  3. package/.vscode/settings.json +3 -0
  4. package/README.md +26 -0
  5. package/build/2983859c0d77824ec8db.svg +1 -0
  6. package/build/4168d659d55fd94368bc.svg +1 -0
  7. package/build/641b2c17e92b0e885b9f.svg +1 -0
  8. package/build/882445a26a4f3964786f.svg +1 -0
  9. package/build/activitypack.json +1 -1
  10. package/build/b280e967312a55101032.svg +1 -0
  11. package/build/main.js +2 -2
  12. package/build/main.js.LICENSE.txt +99 -0
  13. package/certs/localhost+2-key.pem +28 -0
  14. package/certs/localhost+2.pem +26 -0
  15. package/index.html +58 -0
  16. package/package.json +43 -7
  17. package/public/img/background.svg +3 -3
  18. package/public/img/compass.svg +3 -3
  19. package/public/img/grab.svg +3 -3
  20. package/public/img/grabbing.svg +3 -3
  21. package/public/img/sprites.svg +14 -14
  22. package/src/activities/AppendObjects.ts +40 -0
  23. package/src/activities/Base64ToFile.ts +56 -0
  24. package/src/activities/CreateGraphicLayer.ts +85 -0
  25. package/src/activities/DrapGeometry.ts +99 -0
  26. package/src/activities/GetElementByDataLayoutID.ts +58 -0
  27. package/src/activities/GetSesionStorage.ts +36 -0
  28. package/src/activities/GetTaskStatus.ts +56 -0
  29. package/src/activities/GetUserToken.ts +102 -0
  30. package/src/activities/GetvGISDetails copy.ts +110 -0
  31. package/src/activities/GetvGISDetails.ts +110 -0
  32. package/src/activities/HTMLextractor.ts +188 -0
  33. package/src/activities/LegendCreator.ts +155 -0
  34. package/src/activities/MergeObjects.ts +61 -0
  35. package/src/activities/PDFMapGenerator.ts +729 -0
  36. package/src/activities/RequestChecker.ts +94 -0
  37. package/src/activities/Sample.ts +41 -0
  38. package/src/activities/SetSessionStorage.ts +57 -0
  39. package/src/activities/SliceLine.ts +61 -0
  40. package/src/elements/AttributeFilter.tsx +1867 -0
  41. package/src/elements/CircularSlider.tsx +67 -0
  42. package/src/elements/CsColorPicker.tsx +140 -0
  43. package/src/elements/DropDownMenu.tsx +282 -0
  44. package/src/elements/HeaderwithHelp.tsx +178 -0
  45. package/src/elements/ItemSearcher.tsx +1035 -0
  46. package/src/elements/ItemSearcher_v2.tsx +1071 -0
  47. package/src/elements/LineChartMui.tsx +50 -0
  48. package/src/elements/MenueBar.tsx +118 -0
  49. package/src/elements/MultipleAutoCompleteCS.tsx +145 -0
  50. package/src/elements/SingleAutoCompleteCS.tsx +133 -0
  51. package/src/elements/TableRadioGoup.tsx +163 -0
  52. package/src/elements/Timeline.tsx +104 -0
  53. package/src/elements/ToggleButtonGroup.tsx +129 -0
  54. package/src/elements/Viewer360.tsx +71 -0
  55. package/src/elements/modules/AttributeFilterEasyComp.tsx +253 -0
  56. package/src/index.ts +41 -0
  57. package/src/main.ts +15 -0
  58. package/src/styles/imageSlider.css +34 -0
  59. package/tsconfig.json +12 -0
  60. package/uuid.js +7 -0
@@ -0,0 +1,99 @@
1
+ /*
2
+ object-assign
3
+ (c) Sindre Sorhus
4
+ @license MIT
5
+ */
6
+
7
+ /*!
8
+ * Programatically add the following
9
+ */
10
+
11
+ /*!
12
+ * html2canvas 1.4.1 <https://html2canvas.hertzen.com>
13
+ * Copyright (c) 2022 Niklas von Hertzen <https://hertzen.com>
14
+ * Released under MIT License
15
+ */
16
+
17
+ /*! *****************************************************************************
18
+ Copyright (c) Microsoft Corporation.
19
+
20
+ Permission to use, copy, modify, and/or distribute this software for any
21
+ purpose with or without fee is hereby granted.
22
+
23
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
24
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
25
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
26
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
27
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
28
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
29
+ PERFORMANCE OF THIS SOFTWARE.
30
+ ***************************************************************************** */
31
+
32
+ /*! *****************************************************************************
33
+ Copyright (c) Microsoft Corporation. All rights reserved.
34
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
35
+ this file except in compliance with the License. You may obtain a copy of the
36
+ License at http://www.apache.org/licenses/LICENSE-2.0
37
+
38
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
39
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
40
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
41
+ MERCHANTABLITY OR NON-INFRINGEMENT.
42
+
43
+ See the Apache Version 2.0 License for specific language governing permissions
44
+ and limitations under the License.
45
+ ***************************************************************************** */
46
+
47
+ /*! @name @videojs/http-streaming @version 2.13.1 @license Apache-2.0 */
48
+
49
+ /*! @name aes-decrypter @version 3.1.2 @license Apache-2.0 */
50
+
51
+ /*! @name m3u8-parser @version 4.7.0 @license Apache-2.0 */
52
+
53
+ /*! @name pkcs7 @version 1.0.4 @license Apache-2.0 */
54
+
55
+ /**
56
+ * splaytree v3.1.2
57
+ * Fast Splay tree for Node and browser
58
+ *
59
+ * @author Alexander Milevski <info@w8r.name>
60
+ * @license MIT
61
+ * @preserve
62
+ */
63
+
64
+ /**
65
+ * @license
66
+ * slighly modified parse-headers 2.0.2 <https://github.com/kesla/parse-headers/>
67
+ * Copyright (c) 2014 David Björklund
68
+ * Available under the MIT license
69
+ * <https://github.com/kesla/parse-headers/blob/master/LICENCE>
70
+ */
71
+
72
+ /**
73
+ * @license React
74
+ * react-is.production.js
75
+ *
76
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
77
+ *
78
+ * This source code is licensed under the MIT license found in the
79
+ * LICENSE file in the root directory of this source tree.
80
+ */
81
+
82
+ /**
83
+ * @license React
84
+ * react-jsx-runtime.production.min.js
85
+ *
86
+ * Copyright (c) Facebook, Inc. and its affiliates.
87
+ *
88
+ * This source code is licensed under the MIT license found in the
89
+ * LICENSE file in the root directory of this source tree.
90
+ */
91
+
92
+ /** @license React v16.13.1
93
+ * react-is.production.min.js
94
+ *
95
+ * Copyright (c) Facebook, Inc. and its affiliates.
96
+ *
97
+ * This source code is licensed under the MIT license found in the
98
+ * LICENSE file in the root directory of this source tree.
99
+ */
@@ -0,0 +1,28 @@
1
+ -----BEGIN PRIVATE KEY-----
2
+ MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDCbbd3oHZ0q3TG
3
+ qDld8Py+NF5meCu6vUX62Gq9kyzZTup11krZAJO0qeEedG3COEkzXLYYDhCxVU60
4
+ JrTe/bLnlfuzP4yDFDlL3j0FyU0FuF9QnQdHbtP25oTduVGnIeakDmTkcZ8R/1SH
5
+ jW+V7447V6J6hvYcY+9HY5xSCi3/nC70oxoO/gbEYmYmkNMbpTBYCVcLpgV3I/EZ
6
+ jAcJ8ll3HAjp8SkrNJcIhyeuR3gFvk8MLuwi/ascqC1i5Tj5onIfvqL9phtVPXAU
7
+ 3OJOSTVpRgJ8LWNy5oSuCVCUIoqxILFTyivzea4S8i4nGq91XgFJQeLXW/IggIkm
8
+ pBVfiR3rAgMBAAECggEBAJj1A88C1+31LQtUML1s5wkj3dgzVgO0/6bWNzMo47GZ
9
+ 2e4WRg/t2kXZF5eD9Q1EhqH3n/HQruUzvZUQll6Pq/1xCvD7X6mHcYP0NIGm2gdU
10
+ AvhCcQWLdQnaVFCyiEA59V6/TDREBuZ7vp5dcJm+OmEJEnPeVSQEoqvA+6u3AnUB
11
+ o2s4o5DwXlVYW3z4sal5/u6qwRrIuX7vAfwjCcey0gFxMnxLUdh8bo/WA363OlXW
12
+ uuHuLUZL12sbe/760qrajHZPfy1UnkjOUq4gO9yPOQ5dfHc3KgbMdPt6lhPue1/c
13
+ XxI/40q6XLLawFj3aRLU4ONnmuTYpZ+ThHI3grMd8XECgYEAyo0sqtMV9e6C9GTQ
14
+ k7aiiyqQ+X1HovEXpCp/eh4TuUuD8r7ZZAMo5pm7WKhpj8fN8Lo8UjxyfWOONGU+
15
+ 0QhdT2GxNTBTmfswXu8xvmZA913j8jSL7802RdMKz40eDM+6qipwExBOn5ekoujn
16
+ 6DAfUWnHlx3pywOaYvqvwgK2K0cCgYEA9bvSjnKnbmwolrjDTZgsnqPYE83bCrWX
17
+ 1I9LH5ULMgyJBbS7PxMuH4jcanjrMvG8hv4PFgKpVtIpZjRxW9Qq323DmQQH4QaS
18
+ W4jmbQBWOp7W3N2kwyveKmECXoQhQ5YbNNvg/IC1V68IsHlbHbwVi8s3h/iMB41t
19
+ L08jeziDwj0CgYB4OREhF4c6YOZDjy8p7cZOmeZQ32ZMtZMVss/VONL2MXdQ9qxr
20
+ q2B0dxz3A4ccezimQLQbD5vZBuVZ/hop0jAoNNEMw/FrPOe6AXliDKlU6dqpYT0K
21
+ CaDEEv6gsJ78dbPS2ruI5S31lfl3ZIx5iU6dcQ6xiGTDRhE13JvDqP5dcwKBgQDx
22
+ UB73cDRnxaMeUBbKzlOS/kclO5SNMcMGJCmbvBugbJrqlY8D4+v5X8dEb7ZY8vc2
23
+ gauC694runqZOYrQqMvpWbspOsIaAwAbD5dpF1mWe4F4p9gzKZMkftt6wbqAypmx
24
+ EPQiQqrSjrqzwpjt3FQ0Ub4YssWgbQv513d6fAc36QKBgEwvadoQSDAt4na+FpRR
25
+ uJAAQpz6+BCob+F1JjgjBlOs3C8bfubZKrZHYbPDou1ERbla1+XRfvY0AEp/zG4A
26
+ RqSVQxHKmi3yIhMBv4FEdpHyuND5Ril9dqHmCzSrHN4bInz4va250hAldJYUJAfR
27
+ /A15eWyst7QhtSKSHPILE0Hi
28
+ -----END PRIVATE KEY-----
@@ -0,0 +1,26 @@
1
+ -----BEGIN CERTIFICATE-----
2
+ MIIEbjCCAtagAwIBAgIRAI4vlLFuNrjZj0a3EWMZkFwwDQYJKoZIhvcNAQELBQAw
3
+ gY8xHjAcBgNVBAoTFW1rY2VydCBkZXZlbG9wbWVudCBDQTEyMDAGA1UECwwpT1JP
4
+ VVJLRVxka2F6ZW1pQFBXMDNBRlM3IChLYXplbWksIERhdm9vZCkxOTA3BgNVBAMM
5
+ MG1rY2VydCBPUk9VUktFXGRrYXplbWlAUFcwM0FGUzcgKEthemVtaSwgRGF2b29k
6
+ KTAeFw0yNDA4MTUwMzU2MTBaFw0yNjExMTUwMjU2MTBaMF0xJzAlBgNVBAoTHm1r
7
+ Y2VydCBkZXZlbG9wbWVudCBjZXJ0aWZpY2F0ZTEyMDAGA1UECwwpT1JPVVJLRVxk
8
+ a2F6ZW1pQFBXMDNBRlM3IChLYXplbWksIERhdm9vZCkwggEiMA0GCSqGSIb3DQEB
9
+ AQUAA4IBDwAwggEKAoIBAQDCbbd3oHZ0q3TGqDld8Py+NF5meCu6vUX62Gq9kyzZ
10
+ Tup11krZAJO0qeEedG3COEkzXLYYDhCxVU60JrTe/bLnlfuzP4yDFDlL3j0FyU0F
11
+ uF9QnQdHbtP25oTduVGnIeakDmTkcZ8R/1SHjW+V7447V6J6hvYcY+9HY5xSCi3/
12
+ nC70oxoO/gbEYmYmkNMbpTBYCVcLpgV3I/EZjAcJ8ll3HAjp8SkrNJcIhyeuR3gF
13
+ vk8MLuwi/ascqC1i5Tj5onIfvqL9phtVPXAU3OJOSTVpRgJ8LWNy5oSuCVCUIoqx
14
+ ILFTyivzea4S8i4nGq91XgFJQeLXW/IggIkmpBVfiR3rAgMBAAGjdjB0MA4GA1Ud
15
+ DwEB/wQEAwIFoDATBgNVHSUEDDAKBggrBgEFBQcDATAfBgNVHSMEGDAWgBRk7og+
16
+ gf9a6pRPjY5omWbdjPZQXTAsBgNVHREEJTAjgglsb2NhbGhvc3SHBH8AAAGHEAAA
17
+ AAAAAAAAAAAAAAAAAAEwDQYJKoZIhvcNAQELBQADggGBAHfN6Igzaclk7ZEWKHyt
18
+ jndN8FVoYWpqFGFBL8SRkGGFCIkyq/Y7klzt0i8a3C05McFwGTU6UEDmWxcUGZgk
19
+ Y0ekQRLeszwQ+EOgmprxc/3W0Cr9DzuO6DeMGyILfL6A4UtnIIuWajaUi0jTuM5g
20
+ Xx3NoLaSWOiOKVERyY42+u2RvruLPrk2Wvop+0pKBHxoyfUCYnUtYVtSXen2WIXA
21
+ GrCVtrz+VsodycH2dGWNQC0GGIcDqN2ezkDFOto4eRgCpuTovFb1S5bTOg23ydMG
22
+ Frq6mhG+U6hsAS85W3Tn2YIpZD8nD2xk9hyWSZHGiTqeVRQ4/0Lub2mP5QHfC1SA
23
+ LCG9nDIv3vXePG/Dyb2ooPUbfMQA12GpP5zsHNT3iXB6XyPA/tUFHlKGdkBYpZMB
24
+ vphssRzaiqELWM2p2xwM+WEt+XVY+Iq9ER3umzi3w51U/h8wfY5CumZeK/vSgXAs
25
+ aZs1gZXBVsyFR9yxDHq623imtM6J8JmJz/LTeeW1gNfzYw==
26
+ -----END CERTIFICATE-----
package/index.html ADDED
@@ -0,0 +1,58 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Sample HTML Page</title>
7
+ <style>
8
+ body {
9
+ font-family: Arial, sans-serif;
10
+ margin: 20px;
11
+ }
12
+ h1 {
13
+ color: #333;
14
+ }
15
+ p {
16
+ color: #555;
17
+ }
18
+ a {
19
+ color: #0066cc;
20
+ text-decoration: none;
21
+ }
22
+ a:hover {
23
+ text-decoration: underline;
24
+ }
25
+ img {
26
+ max-width: 100%;
27
+ height: auto;
28
+ }
29
+ form {
30
+ margin-top: 20px;
31
+ }
32
+ </style>
33
+ </head>
34
+ <body>
35
+ <h1>Welcome to My Sample HTML Page</h1>
36
+ <p>This is a paragraph of text to show basic HTML structure. You can add more content here as needed.</p>
37
+
38
+ <h2>Links</h2>
39
+ <p>Visit <a href="https://www.example.com" target="_blank">Example.com</a> for more information.</p>
40
+
41
+ <h2>Images</h2>
42
+ <img src="https://via.placeholder.com/600x400" alt="Placeholder Image">
43
+
44
+ <h2>Form</h2>
45
+ <form action="/submit-form" method="post">
46
+ <label for="name">Name:</label><br>
47
+ <input type="text" id="name" name="name" required><br><br>
48
+
49
+ <label for="email">Email:</label><br>
50
+ <input type="email" id="email" name="email" required><br><br>
51
+
52
+ <label for="message">Message:</label><br>
53
+ <textarea id="message" name="message" rows="4" cols="50" required></textarea><br><br>
54
+
55
+ <input type="submit" value="Submit">
56
+ </form>
57
+ </body>
58
+ </html>
package/package.json CHANGED
@@ -1,11 +1,47 @@
1
1
  {
2
2
  "name": "ebta-workflow-prod",
3
- "version": "1.1.3",
4
- "main": "index.js",
3
+ "private": false,
4
+ "version": "4.0.1",
5
+ "description": "",
6
+ "license": "UNLICENSED",
7
+ "author": "",
5
8
  "scripts": {
6
- "test": "echo \"Error: no test specified\" && exit 1"
9
+ "build": "vertigis-workflow-sdk build",
10
+ "generate": "vertigis-workflow-sdk generate",
11
+ "start": "vertigis-workflow-sdk start"
7
12
  },
8
- "author": "",
9
- "license": "ISC",
10
- "description": ""
11
- }
13
+ "devDependencies": {
14
+ "@vertigis/workflow": "^5.44.0",
15
+ "@vertigis/workflow-sdk": "^4.1.0",
16
+ "typescript": "^5.7.3"
17
+ },
18
+ "browserslist": [
19
+ "last 2 chrome versions",
20
+ "last 2 edge versions",
21
+ "last 2 firefox versions",
22
+ "last 2 safari versions",
23
+ "ie 11"
24
+ ],
25
+ "dependencies": {
26
+ "@arcgis/core": "^4.29.10",
27
+ "@fseehawer/react-circular-slider": "^3.2.7",
28
+ "@mantine/core": "^7.16.0",
29
+ "@mui/icons-material": "^5.17.1",
30
+ "@mui/material": "^5.17.1",
31
+ "@mui/x-charts": "^7.6.2",
32
+ "@turf/turf": "^6.5.0",
33
+ "@types/arcgis-js-api": "^4.28.0",
34
+ "@vertigis/web": "^5.34.0",
35
+ "@xmldom/xmldom": "^0.8.10",
36
+ "arcgis-js-api": "^4.30.8",
37
+ "axios": "^1.7.7",
38
+ "html2canvas": "^1.4.1",
39
+ "pannellum-react-update": "^1.0.0",
40
+ "pdf-lib": "^1.17.1",
41
+ "qrcode": "^1.5.4",
42
+ "react-color": "^2.19.3",
43
+ "react-color-palette": "^7.3.0",
44
+ "react-simple-image-slider": "^2.4.1",
45
+ "react-slideshow-image": "^4.3.1"
46
+ }
47
+ }
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="67" height="100" viewBox="0 0 67 100">
2
- <path stroke="#ccc" fill="none" d="M33.5,50,0,63,33.5,75,67,63,33.5,50m-33.5-50,67,25m-0.5,0,0,75m-66.5-75,67-25m-33.5,75,0,25m0-100,0,50"/>
3
- </svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="67" height="100" viewBox="0 0 67 100">
2
+ <path stroke="#ccc" fill="none" d="M33.5,50,0,63,33.5,75,67,63,33.5,50m-33.5-50,67,25m-0.5,0,0,75m-66.5-75,67-25m-33.5,75,0,25m0-100,0,50"/>
3
+ </svg>
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" height="50" width="50">
2
- <path d="m24.5078 6-3.2578 18h7.5l-3.25781-18h-0.984376zm-3.2578 20 3.2578 18h0.9844l3.2578-18h-7.5zm1.19531 0.9941h5.10938l-2.5547 14.1075-2.5547-14.1075z"/>
3
- </svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" height="50" width="50">
2
+ <path d="m24.5078 6-3.2578 18h7.5l-3.25781-18h-0.984376zm-3.2578 20 3.2578 18h0.9844l3.2578-18h-7.5zm1.19531 0.9941h5.10938l-2.5547 14.1075-2.5547-14.1075z"/>
3
+ </svg>
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" height="26" width="26">
2
- <path stroke="#000" stroke-width="1px" fill="#fff" d="m15.3 20.5s6.38-6.73 4.64-8.24-3.47 1.01-3.47 1.01 3.61-5.72 1.41-6.49c-2.2-0.769-3.33 4.36-3.33 4.36s0.873-5.76-1.06-5.76-1.58 5.39-1.58 5.39-0.574-4.59-2.18-4.12c-1.61 0.468-0.572 5.51-0.572 5.51s-1.58-4.89-2.93-3.79c-1.35 1.11 0.258 5.25 0.572 6.62 0.836 2.43 2.03 2.94 2.17 5.55"/>
3
- </svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" height="26" width="26">
2
+ <path stroke="#000" stroke-width="1px" fill="#fff" d="m15.3 20.5s6.38-6.73 4.64-8.24-3.47 1.01-3.47 1.01 3.61-5.72 1.41-6.49c-2.2-0.769-3.33 4.36-3.33 4.36s0.873-5.76-1.06-5.76-1.58 5.39-1.58 5.39-0.574-4.59-2.18-4.12c-1.61 0.468-0.572 5.51-0.572 5.51s-1.58-4.89-2.93-3.79c-1.35 1.11 0.258 5.25 0.572 6.62 0.836 2.43 2.03 2.94 2.17 5.55"/>
3
+ </svg>
@@ -1,3 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" height="26" width="26">
2
- <path stroke="#000" stroke-width="1px" fill="#fff" d="m15.3 20.5s5.07-5.29 3.77-6.74c-1.31-1.45-2.53 0.14-2.53 0.14s2.74-3.29 0.535-4.06c-2.2-0.769-2.52 1.3-2.52 1.3s0.81-2.13-1.12-2.13-1.52 1.77-1.52 1.77-0.261-1.59-1.87-1.12c-1.61 0.468-0.874 2.17-0.874 2.17s-0.651-1.55-2-0.445c-1.35 1.11-0.68 2.25-0.365 3.62 0.836 2.43 2.03 2.94 2.17 5.55"/>
3
- </svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" height="26" width="26">
2
+ <path stroke="#000" stroke-width="1px" fill="#fff" d="m15.3 20.5s5.07-5.29 3.77-6.74c-1.31-1.45-2.53 0.14-2.53 0.14s2.74-3.29 0.535-4.06c-2.2-0.769-2.52 1.3-2.52 1.3s0.81-2.13-1.12-2.13-1.52 1.77-1.52 1.77-0.261-1.59-1.87-1.12c-1.61 0.468-0.874 2.17-0.874 2.17s-0.651-1.55-2-0.445c-1.35 1.11-0.68 2.25-0.365 3.62 0.836 2.43 2.03 2.94 2.17 5.55"/>
3
+ </svg>
@@ -1,14 +1,14 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="26" height="208">
2
- <circle fill-opacity=".78" cy="117" cx="13" r="11" fill="#fff"/>
3
- <circle fill-opacity=".78" cy="143" cx="13" r="11" fill="#fff"/>
4
- <circle cy="169" cx="13" r="7" fill="none" stroke="#000" stroke-width="2"/>
5
- <circle cy="195" cx="13" r="7" fill="none" stroke="#000" stroke-width="2"/>
6
- <circle cx="13" cy="195" r="2.5"/>
7
- <path d="m5 83v6h2v-4h4v-2zm10 0v2h4v4h2v-6zm-5 5v6h6v-6zm-5 5v6h6v-2h-4v-4zm14 0v4h-4v2h6v-6z"/>
8
- <path d="m13 110a7 7 0 0 0 -7 7 7 7 0 0 0 7 7 7 7 0 0 0 7 -7 7 7 0 0 0 -7 -7zm-1 3h2v2h-2zm0 3h2v5h-2z"/>
9
- <path d="m5 57v6h2v-4h4v-2zm10 0v2h4v4h2v-6zm-10 10v6h6v-2h-4v-4zm14 0v4h-4v2h6v-6z"/>
10
- <path d="m17 38v2h-8v-2z"/>
11
- <path d="m12 9v3h-3v2h3v3h2v-3h3v-2h-3v-3z"/>
12
- <path d="m13 136-6.125 6.125h4.375v7.875h3.5v-7.875h4.375z"/>
13
- <path d="m10.428 173.33v-5.77l5-2.89v5.77zm1-1.73 3-1.73-3.001-1.74z"/>
14
- </svg>
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="26" height="208">
2
+ <circle fill-opacity=".78" cy="117" cx="13" r="11" fill="#fff"/>
3
+ <circle fill-opacity=".78" cy="143" cx="13" r="11" fill="#fff"/>
4
+ <circle cy="169" cx="13" r="7" fill="none" stroke="#000" stroke-width="2"/>
5
+ <circle cy="195" cx="13" r="7" fill="none" stroke="#000" stroke-width="2"/>
6
+ <circle cx="13" cy="195" r="2.5"/>
7
+ <path d="m5 83v6h2v-4h4v-2zm10 0v2h4v4h2v-6zm-5 5v6h6v-6zm-5 5v6h6v-2h-4v-4zm14 0v4h-4v2h6v-6z"/>
8
+ <path d="m13 110a7 7 0 0 0 -7 7 7 7 0 0 0 7 7 7 7 0 0 0 7 -7 7 7 0 0 0 -7 -7zm-1 3h2v2h-2zm0 3h2v5h-2z"/>
9
+ <path d="m5 57v6h2v-4h4v-2zm10 0v2h4v4h2v-6zm-10 10v6h6v-2h-4v-4zm14 0v4h-4v2h6v-6z"/>
10
+ <path d="m17 38v2h-8v-2z"/>
11
+ <path d="m12 9v3h-3v2h3v3h2v-3h3v-2h-3v-3z"/>
12
+ <path d="m13 136-6.125 6.125h4.375v7.875h3.5v-7.875h4.375z"/>
13
+ <path d="m10.428 173.33v-5.77l5-2.89v5.77zm1-1.73 3-1.73-3.001-1.74z"/>
14
+ </svg>
@@ -0,0 +1,40 @@
1
+ import type { IActivityHandler } from "@vertigis/workflow";
2
+
3
+ /** An interface that defines the inputs of the activity. */
4
+ interface AppendObjectsInputs {
5
+ /**
6
+ * @displayName Input 1
7
+ * @description The first input to the activity.
8
+ * @required
9
+ */
10
+ input1: object;
11
+
12
+ /**
13
+ * @displayName Input 2
14
+ * @description The second input to the activity.
15
+ */
16
+ input2?: object;
17
+ }
18
+
19
+ /** An interface that defines the outputs of the activity. */
20
+ interface AppendObjectsOutputs {
21
+ /**
22
+ * @description The result of the activity.
23
+ */
24
+ result: object;
25
+ }
26
+
27
+ /**
28
+ * @displayName Append Objects
29
+ * @category Geocortex
30
+ * @description Appends two Objects together
31
+ */
32
+ export default class AppendObjectsActivity implements IActivityHandler {
33
+ /** Perform the execution logic of the activity. */
34
+ execute(inputs: AppendObjectsInputs): AppendObjectsOutputs {
35
+ const result = { ...inputs.input1, ...inputs.input2 };
36
+ return {
37
+ result: result,
38
+ };
39
+ }
40
+ }
@@ -0,0 +1,56 @@
1
+ import type { IActivityHandler } from "@vertigis/workflow";
2
+
3
+ /** An interface that defines the inputs of the activity. */
4
+ interface Base64ToFileInputs {
5
+ /**
6
+ * @displayName base64
7
+ * @description Base4 string content.
8
+ * @required
9
+ */
10
+ base64: string;
11
+ }
12
+
13
+ /** An interface that defines the outputs of the activity. */
14
+ interface Base64ToFileOutputs {
15
+ /**
16
+ * @description the result Blob
17
+ */
18
+ blob: Blob;
19
+ }
20
+
21
+
22
+ function base64toFile(base64String: string) {
23
+ const binaryData = atob(base64String.replace(/-/g, "+").replace(/_/g, "/"));
24
+
25
+ // Create a new array buffer to hold the binary data
26
+ const arrayBuffer = new ArrayBuffer(binaryData.length);
27
+
28
+ // Create a new unit8 array to view the array buffer
29
+ const uint8Array = new Uint8Array(arrayBuffer);
30
+
31
+ // Fill the uint8 array with the binary data
32
+ for (let i = 0; i < binaryData.length; i++) {
33
+ uint8Array[i] = binaryData.charCodeAt(i);
34
+ }
35
+
36
+ // Create a Blob object from the array buffer
37
+ const blob = new Blob([uint8Array], { type: 'application/octet-stream' });
38
+
39
+
40
+ return blob
41
+ }
42
+
43
+
44
+ /**
45
+ * @displayName Base64 To File
46
+ * @category EBTA Utilities
47
+ * @description Convert Base64 To File Ver02
48
+ */
49
+ export default class Base64ToFileActivity implements IActivityHandler {
50
+ /** Perform the execution logic of the activity. */
51
+ execute(inputs: Base64ToFileInputs): Base64ToFileOutputs {
52
+ return {
53
+ blob: base64toFile(inputs.base64)
54
+ };
55
+ }
56
+ }
@@ -0,0 +1,85 @@
1
+ import Graphic from "@arcgis/core/Graphic";
2
+ import GraphicsLayer from "@arcgis/core/layers/GraphicsLayer";
3
+ import Point from "@arcgis/core/geometry/Point";
4
+ import SimpleMarkerSymbol from "@arcgis/core/symbols/SimpleMarkerSymbol";
5
+ import PopupTemplate from "@arcgis/core/PopupTemplate";
6
+ import { IActivityHandler } from "@vertigis/workflow";
7
+
8
+ /** An interface that defines the inputs of the activity. */
9
+ interface CreateGraphicLayerInputs {
10
+ /**
11
+ * @displayName Graphic
12
+ * @description the graphic of the point data includeing geometry and attributes and symbol.
13
+ * @required
14
+ */
15
+ graphics: {
16
+ geometry: { x: number; y: number; z?: number };
17
+ attributes: any;
18
+ symbol?: SimpleMarkerSymbol;
19
+ }[];
20
+
21
+ /**
22
+ * @displayName Popup Template
23
+ * @description The popup template for the graphics.
24
+ */
25
+ popupTemplate?: PopupTemplate;
26
+
27
+ /**
28
+ * @displayName Spatial Reference WKID
29
+ * @description The Well-Known ID (WKID) of the spatial reference system.
30
+ */
31
+ spatialReferenceWKID: number;
32
+ }
33
+
34
+ /** An interface that defines the outputs of the activity. */
35
+ interface CreateGraphicLayerOutputs {
36
+ /**
37
+ * @description The result of the activity.
38
+ */
39
+ result: GraphicsLayer;
40
+ }
41
+
42
+
43
+ function createGraphicsLayer(inputs: CreateGraphicLayerInputs): GraphicsLayer {
44
+ const { graphics, popupTemplate, spatialReferenceWKID } = inputs;
45
+
46
+ // Create a graphics layer
47
+ const graphicsLayer = new GraphicsLayer();
48
+
49
+ // Add graphics based on the provided geometry, symbol, attributes, and popup template
50
+ graphics.forEach((gr) => {
51
+ const graphic = new Graphic({
52
+ geometry: new Point({
53
+ x: gr.geometry.x,
54
+ y: gr.geometry.y,
55
+ z: gr.geometry.z,
56
+ spatialReference: { wkid: spatialReferenceWKID },
57
+ }),
58
+ symbol: gr.symbol !== null ? gr.symbol : undefined,
59
+ attributes: gr.attributes,
60
+ popupTemplate: popupTemplate
61
+ ? new PopupTemplate(popupTemplate)
62
+ : undefined,
63
+ });
64
+ graphicsLayer.add(graphic);
65
+ });
66
+
67
+ return graphicsLayer;
68
+ }
69
+
70
+
71
+ /**
72
+ * @displayName Create Graphic Layer
73
+ * @category Geocortex
74
+ * @description Create Graphic Point Layer v1.1
75
+ */
76
+ export default class CreateGraphicLayerActivity implements IActivityHandler {
77
+ /** Perform the execution logic of the activity. */
78
+ execute(inputs: CreateGraphicLayerInputs): CreateGraphicLayerOutputs {
79
+ const graphicsLayer = createGraphicsLayer(inputs);
80
+
81
+ return {
82
+ result: graphicsLayer,
83
+ };
84
+ }
85
+ }
@@ -0,0 +1,99 @@
1
+ import type { IActivityHandler } from "@vertigis/workflow";
2
+ import Point from "@arcgis/core/geometry/Point";
3
+ import Multipoint from "@arcgis/core/geometry/Multipoint";
4
+ import Polyline from "@arcgis/core/geometry/Polyline";
5
+ import Polygon from "@arcgis/core/geometry/Polygon";
6
+ import ElevationLayer from "@arcgis/core/layers/ElevationLayer";
7
+ import { Geometry } from "@arcgis/core/geometry";
8
+ import { SpatialReference } from "esri/geometry";
9
+
10
+
11
+ /** An interface that defines the inputs of the activity. */
12
+ interface DrapGeometryInputs {
13
+ /**
14
+ * @displayName Input Geometry
15
+ * @description The 2D geometry to be converted to 3D.
16
+ * @required
17
+ */
18
+ inputGeometry: Point | Multipoint | Polyline | Polygon;
19
+
20
+ /**
21
+ * @displayName Elevation Service URL
22
+ * @description The URL of the elevation service to be used for draping.
23
+ * @required
24
+ */
25
+ elevationServiceUrl: string;
26
+ }
27
+
28
+ /** An interface that defines the outputs of the activity. */
29
+ interface DrapGeometryOutputs {
30
+ /**
31
+ * @description The 3D geometry result.
32
+ */
33
+ result: Point | Multipoint | Polyline | Polygon;
34
+ }
35
+
36
+ /**
37
+ * @displayName Drap Geometry
38
+ * @category Geocortex
39
+ * @description Convert 2D Geometry to 3D using an elevation service. V3
40
+ */
41
+ export default class DrapGeometryActivity implements IActivityHandler {
42
+ /** Perform the execution logic of the activity. */
43
+ async execute(inputs: DrapGeometryInputs): Promise<DrapGeometryOutputs> {
44
+
45
+
46
+ // Create an ElevationLayer using the provided URL
47
+ const elevationLayer = new ElevationLayer({
48
+ url: inputs.elevationServiceUrl
49
+ });
50
+
51
+ // Function to process Polyline and Polygon geometries
52
+ const processPolyline = async (polyline: Polyline, sp : SpatialReference): Promise<Polyline> => {
53
+ const polylineClone = polyline.clone();
54
+ polylineClone.hasZ = false;
55
+ polylineClone.spatialReference = sp
56
+ const result = await elevationLayer.queryElevation(polylineClone);
57
+ return result.geometry as Polyline;
58
+ };
59
+
60
+ let geometry3D: Geometry;
61
+
62
+ // Handle different types of geometry
63
+ if (inputs.inputGeometry instanceof Point) {
64
+ const pointClone = inputs.inputGeometry.clone();
65
+ pointClone.hasZ = false;
66
+ pointClone.spatialReference = inputs.inputGeometry.spatialReference
67
+ console.log('Point is :', elevationLayer)
68
+ const result = await elevationLayer.queryElevation(pointClone);
69
+
70
+ geometry3D = result.geometry;
71
+ } else if (inputs.inputGeometry instanceof Multipoint) {
72
+ const multipointClone = inputs.inputGeometry.clone();
73
+ multipointClone.hasZ = false;
74
+ multipointClone.spatialReference = inputs.inputGeometry.spatialReference
75
+ const result = await elevationLayer.queryElevation(multipointClone);
76
+ geometry3D = result.geometry;
77
+ } else if (inputs.inputGeometry instanceof Polyline) {
78
+ geometry3D = await processPolyline(inputs.inputGeometry,inputs.inputGeometry.spatialReference);
79
+ } else if (inputs.inputGeometry instanceof Polygon) {
80
+ // Process each ring of the Polygon
81
+ const rings = inputs.inputGeometry.rings;
82
+ const lines = rings.map(ring => new Polyline({ paths: [ring], spatialReference: inputs.inputGeometry.spatialReference }));
83
+
84
+
85
+ const processedLines = await Promise.all(lines.map(line => processPolyline(line, inputs.inputGeometry.spatialReference)));
86
+
87
+ // Reconstruct the Polygon with the elevated lines
88
+ const elevatedRings = processedLines.map(line => line.paths[0]);
89
+ geometry3D = new Polygon({ rings: elevatedRings, spatialReference:inputs.inputGeometry.spatialReference });
90
+ } else {
91
+ throw new Error("Unsupported geometry type. The input geometry must be a Point, Multipoint, Polyline, or Polygon.");
92
+ }
93
+
94
+ // Return the 3D geometry result
95
+ return {
96
+ result: geometry3D
97
+ };
98
+ }
99
+ }