@opengis/gis 0.2.149 → 0.2.151

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 (197) hide show
  1. package/README.md +181 -181
  2. package/dist/{CardIcon-11RvDfW4.js → CardIcon-COYvGn3y.js} +1 -1
  3. package/dist/{EntityTablePage-B-wimv6F.js → EntityTablePage-n5jN3Vg8.js} +2 -2
  4. package/dist/{ExtentOutlineLayer.vue_vue_type_script_setup_true_lang-DGiN_RPt.js → ExtentOutlineLayer.vue_vue_type_script_setup_true_lang-_bbOMBQM.js} +1 -1
  5. package/dist/{HeaderActions.vue_vue_type_script_setup_true_lang-DZ3cP16e.js → HeaderActions.vue_vue_type_script_setup_true_lang-X8W5T9FU.js} +1 -1
  6. package/dist/{MapSettings-JXL74IDE.js → MapSettings-DFpaiasG.js} +2 -2
  7. package/dist/{RastersTablePage-QSQJdqkO.js → RastersTablePage-BDPlRImd.js} +2 -2
  8. package/dist/{cartocss-CWUn7IKN.js → cartocss-DAww4B8T.js} +5 -5
  9. package/dist/{import-utils-BuynvlOJ.js → import-utils-BD6m47wz.js} +1 -1
  10. package/dist/{index--Pl3grbr.js → index-DgSwtpZG.js} +4055 -3924
  11. package/dist/index.css +1 -1
  12. package/dist/index.js +1 -1
  13. package/dist/index.umd.cjs +25 -25
  14. package/dist/{raster-BJQ-q3A1.js → raster-Dj4pagIY.js} +3 -3
  15. package/dist/{register-aGPpV2QU.js → register-lve1-eW0.js} +3 -3
  16. package/dist/{service-DS03XfOu.js → service-DfMY6QRr.js} +6 -6
  17. package/dist/{vs-datatable-Bbo_JjMV.js → vs-datatable-CMGb14xz.js} +2 -2
  18. package/module/cls.json +6 -6
  19. package/module/gis/card/gis.metadata.table/index.yml +22 -22
  20. package/module/gis/card/gis.metadata.table/main_info.hbs +20 -20
  21. package/module/gis/card/gis.metadata.table/metadata_info.hbs +27 -27
  22. package/module/gis/card/gis.metadata.table/other.hbs +25 -25
  23. package/module/gis/card/gis.rasters.table/index.yml +11 -11
  24. package/module/gis/card/gis.rasters.table/main_info.hbs +27 -27
  25. package/module/gis/card/gis.registers.table/cls.hbs +36 -36
  26. package/module/gis/card/gis.registers.table/columns.hbs +89 -89
  27. package/module/gis/card/gis.registers.table/filters.hbs +80 -80
  28. package/module/gis/card/gis.registers.table/index.yml +23 -23
  29. package/module/gis/card/gis.registers.table/main_info.hbs +35 -35
  30. package/module/gis/card/gis.registers.table/source.hbs +45 -45
  31. package/module/gis/card/gis.services.table/attributes.hbs +91 -91
  32. package/module/gis/card/gis.services.table/filters.hbs +83 -83
  33. package/module/gis/card/gis.services.table/index.yml +25 -25
  34. package/module/gis/card/gis.services.table/main_info.hbs +27 -27
  35. package/module/gis/card/gis.services.table/source.hbs +25 -25
  36. package/module/gis/cls/bool.yes_no.json +12 -12
  37. package/module/gis/cls/encoding.json +14 -14
  38. package/module/gis/cls/geom_type.json +14 -14
  39. package/module/gis/cls/gis.column_type.json +34 -34
  40. package/module/gis/cls/gis.column_view_type.json +26 -26
  41. package/module/gis/cls/gis.filter_type.json +22 -22
  42. package/module/gis/cls/language.json +10 -10
  43. package/module/gis/cls/meta.service_type.json +42 -42
  44. package/module/gis/cls/ogc.service.json +21 -21
  45. package/module/gis/cls/service_type.json +42 -42
  46. package/module/gis/cls/source_type.json +10 -10
  47. package/module/gis/cls/standarts.json +6 -6
  48. package/module/gis/cls/topic_category.json +106 -106
  49. package/module/gis/cls/update_frequency.json +29 -29
  50. package/module/gis/cls/view.json +21 -21
  51. package/module/gis/form/feedback.answer.form.json +10 -10
  52. package/module/gis/form/gis.cartocss.form.json +64 -64
  53. package/module/gis/form/gis.group_list.form.json +17 -17
  54. package/module/gis/form/gis.maps.form.json +61 -61
  55. package/module/gis/form/gis.metadata.form.json +240 -240
  56. package/module/gis/form/gis.metadata_new.form.json +195 -195
  57. package/module/gis/form/gis.ogc_service.form.json +51 -51
  58. package/module/gis/form/gis.rasters.form.json +76 -76
  59. package/module/gis/form/gis.registers.form.json +124 -124
  60. package/module/gis/form/gis.registers_column.form.json +84 -84
  61. package/module/gis/form/gis.registers_filter.form.json +65 -65
  62. package/module/gis/form/gis.services.form.json +111 -111
  63. package/module/gis/form/gis.services_attributes.form.json +75 -75
  64. package/module/gis/form/gis.services_filter.form.json +65 -65
  65. package/module/gis/menu.json +43 -43
  66. package/module/gis/select/admin.cls.name.sql +9 -9
  67. package/module/gis/select/layer_list.sql +7 -7
  68. package/module/gis/select/layer_list_text.sql +7 -7
  69. package/module/gis/select/pg.column_name.geometry.sql +12 -12
  70. package/module/gis/select/pg.columns.parent.sql +6 -6
  71. package/module/gis/select/pg.table_name.sql +17 -17
  72. package/module/gis/select/service_id.sql +1 -1
  73. package/module/gis/table/gis.cartocss.table.json +74 -74
  74. package/module/gis/table/gis.group_list.table.json +58 -58
  75. package/module/gis/table/gis.maps.table.json +110 -110
  76. package/module/gis/table/gis.metadata.table.json +70 -70
  77. package/module/gis/table/gis.metadata_new.table.json +137 -137
  78. package/module/gis/table/gis.ogc_service.table.json +100 -100
  79. package/module/gis/table/gis.rasters.table.json +113 -113
  80. package/module/gis/table/gis.registers.table.json +143 -143
  81. package/module/gis/table/gis.services.table.json +120 -120
  82. package/module/gis/table/site.gis.registers.table.json +88 -88
  83. package/module/gis/table/site.gis.services.table.json +106 -106
  84. package/module/gis/templates/ISO19136_2017_gml_template.xml +330 -330
  85. package/module/gis/tokens.yml +5 -5
  86. package/module/permissions/form/permissions.users.form.json +151 -151
  87. package/module/permissions/table/gis.permissions.table.json +97 -97
  88. package/module/test/cls/bp_build_type.json +37 -37
  89. package/module/test/cls/doc_status.json +31 -31
  90. package/module/test/cls/ts.temp_status.json +18 -18
  91. package/module/test/cls/ts.temp_structure.ts_class.json +49 -49
  92. package/module/test/cls/ts.temp_type.json +9 -9
  93. package/module/test/layer/bp.json +59 -59
  94. package/module/test/layer/bp1.yml +33 -33
  95. package/module/test/layer/individual.yml +53 -53
  96. package/module/test/layer/ts.linking_passport.yml +55 -55
  97. package/module/test/layer/ts.temp_structure.yml +50 -50
  98. package/module/test/map/addr.yml +21 -21
  99. package/module/test/map/bp_myo.json +43 -43
  100. package/module/test/map/bpf.json +43 -43
  101. package/module/test/map/main.json +37 -37
  102. package/module/test/map/mbd.json +92 -92
  103. package/module/test/map/ts.json +53 -53
  104. package/module/test/select/address_id.json +2 -2
  105. package/module/test/select/address_id.sql +7 -7
  106. package/module/test/select/core.user_uid.sql +1 -1
  107. package/module/test/table/data_address.street.table.json +69 -69
  108. package/module/test/table/data_bp_myo.bp.table.json +122 -122
  109. package/package.json +75 -75
  110. package/plugin.js +55 -55
  111. package/server/migrations/array_intersect.sql +13 -13
  112. package/server/migrations/cartocss.sql +27 -27
  113. package/server/migrations/group_list.sql +74 -74
  114. package/server/migrations/maps.sql +30 -30
  115. package/server/migrations/metadata.sql +415 -415
  116. package/server/migrations/ogc.sql +106 -106
  117. package/server/migrations/rasters.sql +265 -265
  118. package/server/migrations/services.sql +247 -247
  119. package/server/migrations/services_users_rel.sql +22 -22
  120. package/server/migrations/widgets.sql +20 -20
  121. package/server/plugins/crons.js +21 -21
  122. package/server/plugins/mapnik/funcs/checkRasterFile.js +109 -109
  123. package/server/plugins/mapnik/funcs/mapnik.js +151 -151
  124. package/server/plugins/mapnik/funcs/rootFolder.mjs +8 -8
  125. package/server/plugins/mapnik/map.proto +230 -230
  126. package/server/plugins/vite.js +74 -74
  127. package/server/routes/gis/cartocss/add.cartocss.js +42 -42
  128. package/server/routes/gis/cartocss/get.cartocss.js +59 -59
  129. package/server/routes/gis/checkXML.js +117 -117
  130. package/server/routes/gis/dashboard.js +29 -29
  131. package/server/routes/gis/index.mjs +87 -87
  132. package/server/routes/gis/metadata/editMetadata.js +34 -34
  133. package/server/routes/gis/metadata/metadataXML.js +13 -13
  134. package/server/routes/gis/ogc/map.info.point.js +124 -124
  135. package/server/routes/gis/registers/add.registry.js +35 -35
  136. package/server/routes/gis/registers/del.registry.js +14 -14
  137. package/server/routes/gis/registers/funcs/classifiers.js +100 -100
  138. package/server/routes/gis/registers/funcs/columns.js +3 -3
  139. package/server/routes/gis/registers/funcs/content.type.js +9 -9
  140. package/server/routes/gis/registers/funcs/get.info.js +89 -89
  141. package/server/routes/gis/registers/funcs/handleRegistryRequest.js +146 -146
  142. package/server/routes/gis/registers/gis.export.js +153 -153
  143. package/server/routes/gis/registers/gis.registry.js +64 -64
  144. package/server/routes/gis/registers/gis.registry.list.js +59 -59
  145. package/server/routes/gis/registers/insert.columns.js +107 -107
  146. package/server/routes/gis/registers/insert.filters.js +110 -110
  147. package/server/routes/gis/registers/map.registry.js +79 -79
  148. package/server/routes/gis/services/add.service.js +64 -64
  149. package/server/routes/gis/services/del.service.js +12 -12
  150. package/server/routes/gis/services/get.layer.geom.js +27 -27
  151. package/server/routes/gis/services/get.services.col.js +33 -33
  152. package/server/routes/gis/services/get.services.js +84 -84
  153. package/server/routes/gis/services/legend.auto.js +77 -77
  154. package/server/routes/map/controllers/clearTiles.js +34 -34
  155. package/server/routes/map/controllers/geojson.js +187 -187
  156. package/server/routes/map/controllers/jsonData.js +205 -205
  157. package/server/routes/map/controllers/layerList.js +102 -102
  158. package/server/routes/map/controllers/map.js +123 -123
  159. package/server/routes/map/controllers/mapCatalog.js +72 -72
  160. package/server/routes/map/controllers/mapCatalogAttribute.js +55 -55
  161. package/server/routes/map/controllers/mapFeatures.js +128 -128
  162. package/server/routes/map/controllers/mapFormat.js +234 -234
  163. package/server/routes/map/controllers/mapTiles.js +152 -152
  164. package/server/routes/map/controllers/maps.js +15 -15
  165. package/server/routes/map/controllers/marker_icon.js +43 -43
  166. package/server/routes/map/controllers/vtile.js +172 -172
  167. package/server/routes/map/index.mjs +169 -169
  168. package/server/routes/map/maps/add.map.js +43 -43
  169. package/server/routes/map/maps/del.map.js +18 -18
  170. package/server/routes/map/maps/get.map.js +118 -118
  171. package/server/routes/map/vtile1.js +179 -179
  172. package/server/routes/map/widgets/add.widget.js +38 -38
  173. package/server/routes/map/widgets/del.widget.js +22 -22
  174. package/server/routes/map/widgets/get.widget.js +40 -40
  175. package/server/routes/mapnik/controllers/clearTiles.js +106 -106
  176. package/server/routes/mapnik/controllers/createXml.js +67 -67
  177. package/server/routes/mapnik/controllers/createXmlMulti.js +76 -76
  178. package/server/routes/mapnik/controllers/fileSearch.js +38 -38
  179. package/server/routes/mapnik/controllers/fileStat.js +28 -28
  180. package/server/routes/mapnik/controllers/mapnikLogger.js +29 -29
  181. package/server/routes/mapnik/controllers/mapnikStat.js +19 -19
  182. package/server/routes/mapnik/controllers/pretile.js +144 -144
  183. package/server/routes/mapnik/controllers/rasterInfo.js +57 -57
  184. package/server/routes/mapnik/controllers/readDir.js +22 -22
  185. package/server/routes/mapnik/controllers/rtile.js +150 -150
  186. package/server/routes/mapnik/controllers/uploadRaster.js +157 -157
  187. package/server/routes/mapnik/functions/cartoBounds.js +32 -32
  188. package/server/routes/mapnik/functions/convertBoundToTile.js +27 -27
  189. package/server/routes/mapnik/functions/uploadXML.js +113 -113
  190. package/server/routes/mapnik/index.js +40 -40
  191. package/server/routes/permissions/controllers/catalog.permissions.edit.js +22 -22
  192. package/server/routes/permissions/controllers/catalog.permissions.js +7 -7
  193. package/server/routes/permissions/controllers/gis.catalog.js +80 -80
  194. package/server/routes/permissions/controllers/utils/get.permissions.js +59 -59
  195. package/server/routes/permissions/index.mjs +18 -18
  196. package/server/routes/root.mjs +3 -3
  197. package/utils.js +13 -13
package/README.md CHANGED
@@ -1,181 +1,181 @@
1
- <!-- ![alt text](https://cdn.softpro.ua/data/npm/admin/opengis-admin.png) -->
2
-
3
- # @opengis/gis
4
-
5
- [![NPM version](https://img.shields.io/npm/v/@opengis/gis?style=plain)](https://www.npmjs.com/package/@opengis/gis)
6
- [![NPM last update](https://img.shields.io/npm/last-update/@opengis/gis?style=plain)]()
7
- [![NPM downloads](https://img.shields.io/npm/dw/@opengis/gis?style=plain)]()
8
- [![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=plain)](http://standardjs.com/)
9
-
10
- Tools for mapping, geodata management, and integration into modern web services.
11
-
12
- ## Features
13
-
14
- **Core Platform Capabilities:**
15
-
16
- - **Web-based GIS Platform** – Access and manage geospatial data through a cloud-based environment.
17
- - **User & Admin Management** – Control access and permissions.
18
- - **No-Code Map Builder** – Create and configure web maps without programming skills.
19
- - **Configurable User Interface** – Customize map layout and widgets based on user needs.
20
- - **Admin Panel** – Centrally manage system settings, users, and datasets.
21
-
22
- **Visualization & Mapping:**
23
-
24
- - **Interactive Web Maps** – View and explore geographic data online.
25
- - **Map Catalog** – Access and manage a collection of thematic maps.
26
- - **Layer Management** – Control visibility and organization of map layers.
27
- - **Advanced Filtering** – Query and filter data based on attributes.
28
- - **Search Functionality** – Find objects by address, ID, or attributes.
29
- - **CartoCSS Styling** – Customize map appearance with flexible styling rules.
30
-
31
- **Raster Management:**
32
-
33
- - **Single Raster Support** – Upload, store, and visualize individual raster datasets.
34
- - **Multi-Raster VRT Builder** – Combine multiple raster files into a single virtual raster (VRT).
35
- - **Recursive Raster Processing** – Automatically build VRTs from nested folder structures.
36
- - **Raster Data Visualization** – Display raster layers alongside vector data on maps.
37
- - **Raster Layer Management** – Control visibility and ordering of raster datasets.
38
- - **Scalable Raster Handling** – Efficient processing of large raster collections.
39
-
40
- **Data Management:**
41
-
42
- - **Dataset View** – Explore spatial data in a synchronized tabular format.
43
- - **Data Import & Storage** – Upload and store spatial and tabular data.
44
- - **Large Dataset Support** – Efficiently handle datasets with 100,000+ features.
45
- - **Dataset Management** – Upload and manage spatial data (Shapefile, GeoJSON, CSV, etc.).
46
- - **Registers Management** – Create and maintain structured geospatial datasets.
47
-
48
- **Integration & Distribution:**
49
-
50
- - **API & OGC Standards Support** – Supports WMS, WFS, WMTS services.
51
- - **API Integration** – Connect with external systems and services.
52
- - **Geoportal Access** – Centralized platform for all maps and datasets.
53
- - **Data Export** – Export geospatial data in standard formats.
54
- - **Map Publishing** – Publish and share maps quickly online.
55
-
56
- ## Install
57
-
58
- ```bash
59
- npm i @opengis/gis
60
- ```
61
-
62
- ## Usage Portal
63
-
64
- ```vue
65
- <template>
66
- <!--$route.params.id-->
67
- <MapWidget :id="'home'" />
68
- </template>
69
-
70
- <script setup lang="ts">
71
- const MapWidget = defineAsyncComponent(() =>
72
- import("@opengis/gis").then((m) => m.MapWidget),
73
- );
74
- </script>
75
- ```
76
-
77
- ## Usage Admin
78
-
79
- ```js
80
- // router.config
81
- export default [
82
- {
83
- path: "/gis.registers/:id?",
84
- component: () => import("@opengis/gis").then((m) => m.Register),
85
- },
86
- {
87
- path: "/gis.services/:id?",
88
- component: () => import("@opengis/gis").then((m) => m.Service),
89
- },
90
- {
91
- path: "/gis.rasters/:id?",
92
- component: () => import("@opengis/gis").then((m) => m.Raster),
93
- },
94
- {
95
- path: "/gis.cartocss/:id?",
96
- component: () => import("@opengis/gis").then((m) => m.CartoCSS),
97
- },
98
- {
99
- path: "/gis.maps/:id?",
100
- component: () => import("@opengis/gis").then((m) => m.MapSettings),
101
- },
102
- ];
103
- ```
104
-
105
- ## Config
106
-
107
- ```js
108
- // main.ts
109
- app.config.globalProperties.$settings = {
110
- map: {
111
- center: [34.71, 48.51],
112
- zoom: 14,
113
- basemaps: [
114
- {
115
- name: "Оглядова карта",
116
- url: "https://data.gki.com.ua/api-user/rtile/voyager/ua/{z}/{x}/{y}.png",
117
- },
118
- {
119
- name: "Ортофото 1:10K",
120
- url: "https://data.gki.com.ua/api-user/rtile/orto10/ua/{z}/{x}/{y}.png",
121
- },
122
- {
123
- name: "Open Street Maps",
124
- url: "https://tile.openstreetmap.org.ua/styles/osm-bright/{z}/{x}/{y}.png",
125
- },
126
- {
127
- name: "Топографічна карта 1:2000",
128
- url: "/api/gis-rtile/3830082297432900636/{z}/{x}/{y}.png",
129
- preview: "/api/gis-rtile/3830082297432900636/17/78138/45286.png",
130
- },
131
- ],
132
- },
133
- };
134
- ```
135
-
136
- ## Documentation
137
-
138
- For a detailed understanding of `cms`, its features, and how to use them, refer to our [Documentation](https://gis.opengis.info/).
139
-
140
- ## Technology stack
141
-
142
- <a href="https://fastify.dev/" target="_blank">
143
- <img src="https://img.shields.io/badge/Fastify-323330?style=for-the-badge&logo=fastify" /></a>
144
-
145
- <a href="https://vuejs.org/" target="_blank">
146
- <img src="https://img.shields.io/badge/Vue%20js-323330?style=for-the-badge&logo=vuedotjs&logoColor=4FC08D" /></a>
147
-
148
- <a href="https://vite.dev/" target="_blank">
149
- <img src="https://img.shields.io/badge/Vite-323330?style=for-the-badge&logo=vite" /></a>
150
-
151
- <a href="https://www.postgresql.org/" target="_blank">
152
- <img src="https://img.shields.io/badge/PostgreSQL-323330?style=for-the-badge&logo=postgresql&logoColor=white" /></a>
153
-
154
- <a href="https://redis.io/" target="_blank">
155
- <img src="https://img.shields.io/badge/redis-323330.svg?&style=for-the-badge&logo=redis&logoColor=%23DD0031" /></a>
156
-
157
- <a href="https://nodejs.org/" target="_blank">
158
- <img src="https://img.shields.io/badge/Node.js-323330?style=for-the-badge&logo=node.js&logoColor=white" /></a>
159
-
160
- ## Contribute
161
-
162
- Feel free to contact us through our website [SOFTPRO.UA](https://softpro.ua) or email <info@softpro.ua>
163
-
164
- - Report bugs
165
- - Share your ideas
166
- - Ask questions
167
-
168
- ## Follow Us
169
-
170
- [Official site](https://softpro.ua)
171
-
172
- <p>
173
- <a href="https://www.instagram.com/gissoftpro/" target="_blank"><img src="https://cdn.softpro.ua/data/npm/instagram.png" alt="Softpro Instagram" title="oftpro Instagram"></a>&nbsp;&nbsp;
174
- <a href="https://www.facebook.com/gissoftpro" target="_blank"><img src="https://cdn.softpro.ua/data/npm/facebook.png" alt="Softpro Facebook" title="Softpro Facebook"></a>&nbsp;&nbsp;
175
- <a href="https://t.me/softprogis" target="_blank"><img src="https://cdn.softpro.ua/data/npm/telegram.png" alt="Softpro Telegram" title="Softpro Telegram"></a>&nbsp;&nbsp;
176
- <a href="https://www.linkedin.com/in/softpro-ukraine-a8876b282/recent-activity/all/" target="_blank"><img src="https://cdn.softpro.ua/data/npm/social/linkedin.png" alt="Softpro Linkedin" title="Softpro LinkedIn"></a>&nbsp;&nbsp;
177
- </p>
178
-
179
- ## License
180
-
181
- Copyright © SOFTPRO. All rights reserved.
1
+ <!-- ![alt text](https://cdn.softpro.ua/data/npm/admin/opengis-admin.png) -->
2
+
3
+ # @opengis/gis
4
+
5
+ [![NPM version](https://img.shields.io/npm/v/@opengis/gis?style=plain)](https://www.npmjs.com/package/@opengis/gis)
6
+ [![NPM last update](https://img.shields.io/npm/last-update/@opengis/gis?style=plain)]()
7
+ [![NPM downloads](https://img.shields.io/npm/dw/@opengis/gis?style=plain)]()
8
+ [![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=plain)](http://standardjs.com/)
9
+
10
+ Tools for mapping, geodata management, and integration into modern web services.
11
+
12
+ ## Features
13
+
14
+ **Core Platform Capabilities:**
15
+
16
+ - **Web-based GIS Platform** – Access and manage geospatial data through a cloud-based environment.
17
+ - **User & Admin Management** – Control access and permissions.
18
+ - **No-Code Map Builder** – Create and configure web maps without programming skills.
19
+ - **Configurable User Interface** – Customize map layout and widgets based on user needs.
20
+ - **Admin Panel** – Centrally manage system settings, users, and datasets.
21
+
22
+ **Visualization & Mapping:**
23
+
24
+ - **Interactive Web Maps** – View and explore geographic data online.
25
+ - **Map Catalog** – Access and manage a collection of thematic maps.
26
+ - **Layer Management** – Control visibility and organization of map layers.
27
+ - **Advanced Filtering** – Query and filter data based on attributes.
28
+ - **Search Functionality** – Find objects by address, ID, or attributes.
29
+ - **CartoCSS Styling** – Customize map appearance with flexible styling rules.
30
+
31
+ **Raster Management:**
32
+
33
+ - **Single Raster Support** – Upload, store, and visualize individual raster datasets.
34
+ - **Multi-Raster VRT Builder** – Combine multiple raster files into a single virtual raster (VRT).
35
+ - **Recursive Raster Processing** – Automatically build VRTs from nested folder structures.
36
+ - **Raster Data Visualization** – Display raster layers alongside vector data on maps.
37
+ - **Raster Layer Management** – Control visibility and ordering of raster datasets.
38
+ - **Scalable Raster Handling** – Efficient processing of large raster collections.
39
+
40
+ **Data Management:**
41
+
42
+ - **Dataset View** – Explore spatial data in a synchronized tabular format.
43
+ - **Data Import & Storage** – Upload and store spatial and tabular data.
44
+ - **Large Dataset Support** – Efficiently handle datasets with 100,000+ features.
45
+ - **Dataset Management** – Upload and manage spatial data (Shapefile, GeoJSON, CSV, etc.).
46
+ - **Registers Management** – Create and maintain structured geospatial datasets.
47
+
48
+ **Integration & Distribution:**
49
+
50
+ - **API & OGC Standards Support** – Supports WMS, WFS, WMTS services.
51
+ - **API Integration** – Connect with external systems and services.
52
+ - **Geoportal Access** – Centralized platform for all maps and datasets.
53
+ - **Data Export** – Export geospatial data in standard formats.
54
+ - **Map Publishing** – Publish and share maps quickly online.
55
+
56
+ ## Install
57
+
58
+ ```bash
59
+ npm i @opengis/gis
60
+ ```
61
+
62
+ ## Usage Portal
63
+
64
+ ```vue
65
+ <template>
66
+ <!--$route.params.id-->
67
+ <MapWidget :id="'home'" />
68
+ </template>
69
+
70
+ <script setup lang="ts">
71
+ const MapWidget = defineAsyncComponent(() =>
72
+ import("@opengis/gis").then((m) => m.MapWidget),
73
+ );
74
+ </script>
75
+ ```
76
+
77
+ ## Usage Admin
78
+
79
+ ```js
80
+ // router.config
81
+ export default [
82
+ {
83
+ path: "/gis.registers/:id?",
84
+ component: () => import("@opengis/gis").then((m) => m.Register),
85
+ },
86
+ {
87
+ path: "/gis.services/:id?",
88
+ component: () => import("@opengis/gis").then((m) => m.Service),
89
+ },
90
+ {
91
+ path: "/gis.rasters/:id?",
92
+ component: () => import("@opengis/gis").then((m) => m.Raster),
93
+ },
94
+ {
95
+ path: "/gis.cartocss/:id?",
96
+ component: () => import("@opengis/gis").then((m) => m.CartoCSS),
97
+ },
98
+ {
99
+ path: "/gis.maps/:id?",
100
+ component: () => import("@opengis/gis").then((m) => m.MapSettings),
101
+ },
102
+ ];
103
+ ```
104
+
105
+ ## Config
106
+
107
+ ```js
108
+ // main.ts
109
+ app.config.globalProperties.$settings = {
110
+ map: {
111
+ center: [34.71, 48.51],
112
+ zoom: 14,
113
+ basemaps: [
114
+ {
115
+ name: "Оглядова карта",
116
+ url: "https://data.gki.com.ua/api-user/rtile/voyager/ua/{z}/{x}/{y}.png",
117
+ },
118
+ {
119
+ name: "Ортофото 1:10K",
120
+ url: "https://data.gki.com.ua/api-user/rtile/orto10/ua/{z}/{x}/{y}.png",
121
+ },
122
+ {
123
+ name: "Open Street Maps",
124
+ url: "https://tile.openstreetmap.org.ua/styles/osm-bright/{z}/{x}/{y}.png",
125
+ },
126
+ {
127
+ name: "Топографічна карта 1:2000",
128
+ url: "/api/gis-rtile/3830082297432900636/{z}/{x}/{y}.png",
129
+ preview: "/api/gis-rtile/3830082297432900636/17/78138/45286.png",
130
+ },
131
+ ],
132
+ },
133
+ };
134
+ ```
135
+
136
+ ## Documentation
137
+
138
+ For a detailed understanding of `cms`, its features, and how to use them, refer to our [Documentation](https://gis.opengis.info/).
139
+
140
+ ## Technology stack
141
+
142
+ <a href="https://fastify.dev/" target="_blank">
143
+ <img src="https://img.shields.io/badge/Fastify-323330?style=for-the-badge&logo=fastify" /></a>
144
+
145
+ <a href="https://vuejs.org/" target="_blank">
146
+ <img src="https://img.shields.io/badge/Vue%20js-323330?style=for-the-badge&logo=vuedotjs&logoColor=4FC08D" /></a>
147
+
148
+ <a href="https://vite.dev/" target="_blank">
149
+ <img src="https://img.shields.io/badge/Vite-323330?style=for-the-badge&logo=vite" /></a>
150
+
151
+ <a href="https://www.postgresql.org/" target="_blank">
152
+ <img src="https://img.shields.io/badge/PostgreSQL-323330?style=for-the-badge&logo=postgresql&logoColor=white" /></a>
153
+
154
+ <a href="https://redis.io/" target="_blank">
155
+ <img src="https://img.shields.io/badge/redis-323330.svg?&style=for-the-badge&logo=redis&logoColor=%23DD0031" /></a>
156
+
157
+ <a href="https://nodejs.org/" target="_blank">
158
+ <img src="https://img.shields.io/badge/Node.js-323330?style=for-the-badge&logo=node.js&logoColor=white" /></a>
159
+
160
+ ## Contribute
161
+
162
+ Feel free to contact us through our website [SOFTPRO.UA](https://softpro.ua) or email <info@softpro.ua>
163
+
164
+ - Report bugs
165
+ - Share your ideas
166
+ - Ask questions
167
+
168
+ ## Follow Us
169
+
170
+ [Official site](https://softpro.ua)
171
+
172
+ <p>
173
+ <a href="https://www.instagram.com/gissoftpro/" target="_blank"><img src="https://cdn.softpro.ua/data/npm/instagram.png" alt="Softpro Instagram" title="oftpro Instagram"></a>&nbsp;&nbsp;
174
+ <a href="https://www.facebook.com/gissoftpro" target="_blank"><img src="https://cdn.softpro.ua/data/npm/facebook.png" alt="Softpro Facebook" title="Softpro Facebook"></a>&nbsp;&nbsp;
175
+ <a href="https://t.me/softprogis" target="_blank"><img src="https://cdn.softpro.ua/data/npm/telegram.png" alt="Softpro Telegram" title="Softpro Telegram"></a>&nbsp;&nbsp;
176
+ <a href="https://www.linkedin.com/in/softpro-ukraine-a8876b282/recent-activity/all/" target="_blank"><img src="https://cdn.softpro.ua/data/npm/social/linkedin.png" alt="Softpro Linkedin" title="Softpro LinkedIn"></a>&nbsp;&nbsp;
177
+ </p>
178
+
179
+ ## License
180
+
181
+ Copyright © SOFTPRO. All rights reserved.
@@ -1,5 +1,5 @@
1
1
  import { openBlock as t, createElementBlock as n, createElementVNode as l } from "vue";
2
- import { _ as o } from "./index--Pl3grbr.js";
2
+ import { _ as o } from "./index-DgSwtpZG.js";
3
3
  const s = {}, a = {
4
4
  xmlns: "http://www.w3.org/2000/svg",
5
5
  width: "24",
@@ -3,7 +3,7 @@ import { RefreshCw as ie, Plus as ue } from "lucide-vue-next";
3
3
  import { useRoute as ce, useRouter as de } from "vue-router";
4
4
  import { VsPagination as fe, notify as Q } from "@opengis/core";
5
5
  import { FilterField as me, Filter as he } from "@opengis/filter";
6
- import { F as ge, _ as ve } from "./index--Pl3grbr.js";
6
+ import { F as ge, _ as ve } from "./index-DgSwtpZG.js";
7
7
  import { _ as pe } from "./TableFormHeader.vue_vue_type_script_setup_true_lang-Mci_tseM.js";
8
8
  const xe = { class: "flex-1 flex flex-col bg-gray-50 h-screen overflow-hidden p-0 m-0" }, be = {
9
9
  key: 0,
@@ -276,7 +276,7 @@ const xe = { class: "flex-1 flex flex-col bg-gray-50 h-screen overflow-hidden p-
276
276
  ])
277
277
  ]));
278
278
  }
279
- }), De = /* @__PURE__ */ ve(je, [["__scopeId", "data-v-821aeb35"]]);
279
+ }), De = /* @__PURE__ */ ve(je, [["__scopeId", "data-v-469c2953"]]);
280
280
  export {
281
281
  De as default
282
282
  };
@@ -1,5 +1,5 @@
1
1
  import { defineComponent as y, computed as f, watch as d, createCommentVNode as x } from "vue";
2
- import { f as C, u as b } from "./index--Pl3grbr.js";
2
+ import { f as C, u as b } from "./index-DgSwtpZG.js";
3
3
  const h = /* @__PURE__ */ y({
4
4
  __name: "ExtentOutlineLayer",
5
5
  props: {
@@ -1,5 +1,5 @@
1
1
  import { openBlock as c, createElementBlock as v, createElementVNode as n, defineComponent as ee, normalizeClass as oe, createVNode as U, createBlock as re, unref as M, defineAsyncComponent as K, ref as y, watch as de, computed as b, createTextVNode as pe, Fragment as se, renderList as be, toDisplayString as V, createCommentVNode as q, withCtx as Z, nextTick as ke, onMounted as Ve, onUnmounted as ze, withModifiers as Ce, Teleport as Ee, normalizeStyle as Me } from "vue";
2
- import { _ as Le } from "./index--Pl3grbr.js";
2
+ import { _ as Le } from "./index-DgSwtpZG.js";
3
3
  import { Settings as Se, BrushCleaning as ye, SquareCode as fe, Pencil as Te } from "lucide-vue-next";
4
4
  import { notify as H } from "@opengis/core";
5
5
  const $e = {}, Ie = {
@@ -5,7 +5,7 @@ import { confirm as H, notify as F } from "@opengis/core";
5
5
  import { _ as de } from "./TableFormHeader.vue_vue_type_script_setup_true_lang-Mci_tseM.js";
6
6
  import { _ as ue } from "./MapSettingsTabs.vue_vue_type_script_setup_true_lang-CKCK3NqY.js";
7
7
  import { VsInputArraySelect as ce } from "@opengis/form";
8
- import { r as me, _ as pe } from "./index--Pl3grbr.js";
8
+ import { r as me, _ as pe } from "./index-DgSwtpZG.js";
9
9
  import { _ as ye } from "./MonacoEditor.vue_vue_type_script_setup_true_lang-D3ZPeXMw.js";
10
10
  const fe = { class: "rounded-lg border border-gray-200 bg-[rgba(252,252,252,0.8)] p-6" }, ge = /* @__PURE__ */ I({
11
11
  __name: "GeneralSettings",
@@ -666,7 +666,7 @@ const fe = { class: "rounded-lg border border-gray-200 bg-[rgba(252,252,252,0.8)
666
666
  ]);
667
667
  };
668
668
  }
669
- }), yt = /* @__PURE__ */ pe(st, [["__scopeId", "data-v-df90fbac"]]);
669
+ }), yt = /* @__PURE__ */ pe(st, [["__scopeId", "data-v-49efd239"]]);
670
670
  export {
671
671
  yt as default
672
672
  };
@@ -3,7 +3,7 @@ import { useRoute as ne, useRouter as oe } from "vue-router";
3
3
  import { VsPagination as le, notify as B } from "@opengis/core";
4
4
  import { FilterField as re, Filter as ie } from "@opengis/filter";
5
5
  import { RefreshCw as ue, Plus as ce } from "lucide-vue-next";
6
- import { F as de, _ as ve } from "./index--Pl3grbr.js";
6
+ import { F as de, _ as ve } from "./index-DgSwtpZG.js";
7
7
  import { _ as fe } from "./TableFormHeader.vue_vue_type_script_setup_true_lang-Mci_tseM.js";
8
8
  const ge = { class: "flex-1 flex flex-col bg-gray-50 h-screen overflow-hidden p-0 m-0" }, me = {
9
9
  href: "/api/gis-create-xml",
@@ -241,7 +241,7 @@ const ge = { class: "flex-1 flex flex-col bg-gray-50 h-screen overflow-hidden p-
241
241
  ])
242
242
  ]));
243
243
  }
244
- }), Be = /* @__PURE__ */ ve(Re, [["__scopeId", "data-v-63309b89"]]);
244
+ }), Be = /* @__PURE__ */ ve(Re, [["__scopeId", "data-v-827c1663"]]);
245
245
  export {
246
246
  Be as default
247
247
  };
@@ -1,12 +1,12 @@
1
1
  import { openBlock as _, createElementBlock as z, createElementVNode as o, defineComponent as Y, computed as L, createTextVNode as Ee, createVNode as E, mergeModels as Xe, defineAsyncComponent as ye, useModel as Ze, ref as x, withCtx as J, toDisplayString as T, unref as ve, watch as I, onUnmounted as Ke, createCommentVNode as q, onBeforeUnmount as je, onMounted as et, withDirectives as tt, vModelText as at, createBlock as R, normalizeClass as $e, normalizeStyle as ot, Fragment as Le, renderList as nt, resolveDynamicComponent as st } from "vue";
2
2
  import { useRouter as lt, useRoute as rt } from "vue-router";
3
3
  import { notify as P } from "@opengis/core";
4
- import { _ as ut, f as Ae, o as it, p as ct, q as dt, M as ft, i as mt, j as Ve, m as pt } from "./index--Pl3grbr.js";
5
- import { S as yt, C as vt } from "./CardIcon-11RvDfW4.js";
6
- import { _ as ht, a as gt, b as bt, c as xt } from "./HeaderActions.vue_vue_type_script_setup_true_lang-DZ3cP16e.js";
4
+ import { _ as ut, f as Ae, o as it, p as ct, q as dt, M as ft, i as mt, j as Ve, m as pt } from "./index-DgSwtpZG.js";
5
+ import { S as yt, C as vt } from "./CardIcon-COYvGn3y.js";
6
+ import { _ as ht, a as gt, b as bt, c as xt } from "./HeaderActions.vue_vue_type_script_setup_true_lang-X8W5T9FU.js";
7
7
  import { _ as Ne } from "./MonacoEditor.vue_vue_type_script_setup_true_lang-D3ZPeXMw.js";
8
- import { V as wt } from "./vs-datatable-Bbo_JjMV.js";
9
- import { _ as Me } from "./ExtentOutlineLayer.vue_vue_type_script_setup_true_lang-DGiN_RPt.js";
8
+ import { V as wt } from "./vs-datatable-CMGb14xz.js";
9
+ import { _ as Me } from "./ExtentOutlineLayer.vue_vue_type_script_setup_true_lang-_bbOMBQM.js";
10
10
  const _t = {}, kt = {
11
11
  xmlns: "http://www.w3.org/2000/svg",
12
12
  width: "24",
@@ -1,5 +1,5 @@
1
1
  import { defineComponent as V, mergeModels as S, useModel as w, defineAsyncComponent as $, computed as h, openBlock as p, createBlock as A, unref as C, withCtx as T, createElementVNode as r, toDisplayString as y, createElementBlock as b, Fragment as D, renderList as E, normalizeClass as L, resolveDynamicComponent as N, createCommentVNode as f } from "vue";
2
- import { i as P, g as j } from "./vs-datatable-Bbo_JjMV.js";
2
+ import { i as P, g as j } from "./vs-datatable-CMGb14xz.js";
3
3
  const R = { class: "p-4 text-[13px]" }, U = { class: "grid grid-cols-2 gap-x-6 gap-y-2" }, q = ["id", "checked", "onChange"], G = { class: "ml-2 flex-1 min-w-0 flex items-center gap-2" }, H = { class: "font-medium text-gray-900 truncate" }, J = { class: "text-xs text-gray-500" }, O = {
4
4
  key: 0,
5
5
  class: "text-xs text-[#B2C9D6]"