@opengis/gis 0.2.119 → 0.2.120
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +148 -148
- package/dist/{CardIcon-ODZgA2Pb.js → CardIcon-Dx_myDwM.js} +1 -1
- package/dist/{EntityCreatePage-Da8XgBKU.js → EntityCreatePage-Ch8NU_Yw.js} +14 -14
- package/dist/{EntityEditPage-QktKEAxz.js → EntityEditPage-CRRcW7FL.js} +27 -27
- package/dist/{EntityTablePage-UMttc2-F.js → EntityTablePage-DY9v1aWL.js} +32 -31
- package/dist/{ExtentOutlineLayer.vue_vue_type_script_setup_true_lang-DLAIOHJh.js → ExtentOutlineLayer.vue_vue_type_script_setup_true_lang-DgQHLSak.js} +1 -1
- package/dist/{HeaderActions.vue_vue_type_script_setup_true_lang-CTKkmXWD.js → HeaderActions.vue_vue_type_script_setup_true_lang-BQ32ioLC.js} +30 -30
- package/dist/{MapSettings-CbW0TfZl.js → MapSettings-CaGPr5uG.js} +33 -33
- package/dist/{RastersTablePage-CXqscX0i.js → RastersTablePage-CJyO2DoI.js} +41 -39
- package/dist/{cartocss-306ZE1Ha.js → cartocss-Bhat1m61.js} +296 -294
- package/dist/{import-utils-CHIDSKHz.js → import-utils-BxeYqcn7.js} +33 -33
- package/dist/index-Ba6SE4TN.js +10203 -0
- package/dist/index.css +1 -1
- package/dist/index.js +1 -1
- package/dist/index.umd.cjs +31 -31
- package/dist/{raster-Cn6l0xfZ.js → raster-Cbs1xR5Y.js} +120 -121
- package/dist/{register-4wblFcw2.js → register-D0AsH83v.js} +8 -8
- package/dist/{service-2uWyAfnR.js → service-C4nt_DBO.js} +10 -10
- package/dist/{vs-datatable-D_Xzh4qf.js → vs-datatable-QG5b0CCL.js} +28 -28
- package/module/cls.json +6 -6
- package/module/gis/card/gis.metadata.table/index.yml +22 -22
- package/module/gis/card/gis.metadata.table/main_info.hbs +20 -20
- package/module/gis/card/gis.metadata.table/metadata_info.hbs +27 -27
- package/module/gis/card/gis.metadata.table/other.hbs +25 -25
- package/module/gis/card/gis.rasters.table/index.yml +11 -11
- package/module/gis/card/gis.rasters.table/main_info.hbs +27 -27
- package/module/gis/card/gis.registers.table/cls.hbs +36 -36
- package/module/gis/card/gis.registers.table/columns.hbs +89 -89
- package/module/gis/card/gis.registers.table/filters.hbs +80 -80
- package/module/gis/card/gis.registers.table/index.yml +23 -23
- package/module/gis/card/gis.registers.table/main_info.hbs +35 -35
- package/module/gis/card/gis.registers.table/source.hbs +45 -45
- package/module/gis/card/gis.services.table/attributes.hbs +91 -91
- package/module/gis/card/gis.services.table/filters.hbs +83 -83
- package/module/gis/card/gis.services.table/index.yml +25 -25
- package/module/gis/card/gis.services.table/main_info.hbs +27 -27
- package/module/gis/card/gis.services.table/source.hbs +25 -25
- package/module/gis/cls/bool.yes_no.json +12 -12
- package/module/gis/cls/encoding.json +14 -14
- package/module/gis/cls/geom_type.json +14 -14
- package/module/gis/cls/gis.column_type.json +34 -34
- package/module/gis/cls/gis.column_view_type.json +26 -26
- package/module/gis/cls/gis.filter_type.json +22 -22
- package/module/gis/cls/language.json +10 -10
- package/module/gis/cls/meta.service_type.json +42 -42
- package/module/gis/cls/ogc.service.json +21 -21
- package/module/gis/cls/service_type.json +42 -42
- package/module/gis/cls/source_type.json +10 -10
- package/module/gis/cls/standarts.json +6 -6
- package/module/gis/cls/topic_category.json +106 -106
- package/module/gis/cls/update_frequency.json +29 -29
- package/module/gis/cls/view.json +21 -21
- package/module/gis/form/feedback.answer.form.json +10 -10
- package/module/gis/form/gis.cartocss.form.json +54 -54
- package/module/gis/form/gis.group_list.form.json +17 -17
- package/module/gis/form/gis.maps.form.json +61 -61
- package/module/gis/form/gis.metadata.form.json +240 -240
- package/module/gis/form/gis.metadata_new.form.json +195 -195
- package/module/gis/form/gis.ogc_service.form.json +51 -51
- package/module/gis/form/gis.rasters.form.json +76 -76
- package/module/gis/form/gis.registers.form.json +124 -124
- package/module/gis/form/gis.registers_column.form.json +84 -84
- package/module/gis/form/gis.registers_filter.form.json +65 -65
- package/module/gis/form/gis.services.form.json +111 -111
- package/module/gis/form/gis.services_attributes.form.json +75 -75
- package/module/gis/form/gis.services_filter.form.json +65 -65
- package/module/gis/menu.json +43 -43
- package/module/gis/select/admin.cls.name.sql +2 -2
- package/module/gis/select/layer_list.sql +7 -7
- package/module/gis/select/layer_list_text.sql +7 -7
- package/module/gis/select/pg.column_name.geometry.sql +12 -12
- package/module/gis/select/pg.columns.parent.sql +6 -6
- package/module/gis/select/pg.table_name.sql +17 -17
- package/module/gis/select/service_id.sql +1 -1
- package/module/gis/table/gis.cartocss.table.json +74 -74
- package/module/gis/table/gis.group_list.table.json +58 -58
- package/module/gis/table/gis.maps.table.json +110 -110
- package/module/gis/table/gis.metadata.table.json +70 -70
- package/module/gis/table/gis.metadata_new.table.json +137 -137
- package/module/gis/table/gis.ogc_service.table.json +100 -100
- package/module/gis/table/gis.rasters.table.json +101 -101
- package/module/gis/table/gis.registers.table.json +143 -143
- package/module/gis/table/gis.services.table.json +120 -120
- package/module/gis/table/site.gis.registers.table.json +88 -88
- package/module/gis/table/site.gis.services.table.json +106 -106
- package/module/gis/templates/ISO19136_2017_gml_template.xml +330 -330
- package/module/gis/tokens.yml +5 -5
- package/module/permissions/form/permissions.users.form.json +151 -151
- package/module/permissions/table/gis.permissions.table.json +97 -97
- package/module/test/cls/bp_build_type.json +37 -37
- package/module/test/cls/ts.temp_status.json +18 -18
- package/module/test/cls/ts.temp_structure.ts_class.json +49 -49
- package/module/test/cls/ts.temp_type.json +9 -9
- package/module/test/layer/bp.json +59 -59
- package/module/test/layer/bp1.yml +33 -33
- package/module/test/layer/individual.yml +53 -53
- package/module/test/layer/ts.linking_passport.yml +55 -55
- package/module/test/layer/ts.temp_structure.yml +50 -50
- package/module/test/map/addr.yml +21 -21
- package/module/test/map/bp_myo.json +43 -43
- package/module/test/map/bpf.json +43 -43
- package/module/test/map/main.json +37 -37
- package/module/test/map/mbd.json +92 -92
- package/module/test/map/ts.json +53 -53
- package/module/test/select/address_id.json +2 -2
- package/module/test/select/address_id.sql +7 -7
- package/module/test/table/data_address.street.table.json +69 -69
- package/module/test/table/data_bp_myo.bp.table.json +122 -122
- package/package.json +75 -75
- package/plugin.js +55 -55
- package/server/migrations/array_intersect.sql +13 -13
- package/server/migrations/cartocss.sql +27 -27
- package/server/migrations/group_list.sql +74 -74
- package/server/migrations/maps.sql +30 -30
- package/server/migrations/metadata.sql +415 -415
- package/server/migrations/ogc.sql +106 -106
- package/server/migrations/rasters.sql +265 -265
- package/server/migrations/services.sql +247 -247
- package/server/migrations/services_users_rel.sql +22 -22
- package/server/migrations/widgets.sql +20 -20
- package/server/plugins/crons.js +21 -21
- package/server/plugins/mapnik/funcs/checkRasterFile.js +109 -109
- package/server/plugins/mapnik/funcs/mapnik.js +146 -146
- package/server/plugins/mapnik/funcs/rootFolder.mjs +8 -8
- package/server/plugins/mapnik/map.proto +234 -234
- package/server/plugins/vite.js +74 -74
- package/server/routes/gis/cartocss/add.cartocss.js +42 -42
- package/server/routes/gis/cartocss/get.cartocss.js +50 -50
- package/server/routes/gis/checkXML.js +118 -118
- package/server/routes/gis/dashboard.js +29 -29
- package/server/routes/gis/index.mjs +87 -87
- package/server/routes/gis/metadata/editMetadata.js +34 -34
- package/server/routes/gis/metadata/metadataXML.js +13 -13
- package/server/routes/gis/ogc/map.info.point.js +124 -124
- package/server/routes/gis/registers/add.registry.js +35 -35
- package/server/routes/gis/registers/del.registry.js +14 -14
- package/server/routes/gis/registers/funcs/classifiers.js +100 -100
- package/server/routes/gis/registers/funcs/columns.js +4 -4
- package/server/routes/gis/registers/funcs/content.type.js +9 -9
- package/server/routes/gis/registers/funcs/get.info.js +89 -89
- package/server/routes/gis/registers/funcs/handleRegistryRequest.js +146 -146
- package/server/routes/gis/registers/gis.export.js +153 -153
- package/server/routes/gis/registers/gis.registry.js +64 -64
- package/server/routes/gis/registers/gis.registry.list.js +59 -59
- package/server/routes/gis/registers/insert.columns.js +107 -107
- package/server/routes/gis/registers/insert.filters.js +110 -110
- package/server/routes/gis/registers/map.registry.js +79 -79
- package/server/routes/gis/services/add.service.js +64 -64
- package/server/routes/gis/services/del.service.js +12 -12
- package/server/routes/gis/services/get.layer.geom.js +27 -27
- package/server/routes/gis/services/get.services.col.js +33 -33
- package/server/routes/gis/services/get.services.js +84 -84
- package/server/routes/gis/services/legend.auto.js +77 -77
- package/server/routes/map/controllers/clearTiles.js +34 -34
- package/server/routes/map/controllers/geojson.js +187 -187
- package/server/routes/map/controllers/jsonData.js +205 -205
- package/server/routes/map/controllers/layerList.js +102 -102
- package/server/routes/map/controllers/map.js +123 -123
- package/server/routes/map/controllers/mapCatalog.js +72 -72
- package/server/routes/map/controllers/mapCatalogAttribute.js +55 -55
- package/server/routes/map/controllers/mapFeatures.js +128 -128
- package/server/routes/map/controllers/mapFormat.js +222 -222
- package/server/routes/map/controllers/mapTiles.js +152 -152
- package/server/routes/map/controllers/maps.js +15 -15
- package/server/routes/map/controllers/marker_icon.js +43 -43
- package/server/routes/map/controllers/vtile.js +172 -172
- package/server/routes/map/index.mjs +169 -169
- package/server/routes/map/maps/add.map.js +43 -43
- package/server/routes/map/maps/del.map.js +18 -18
- package/server/routes/map/maps/get.map.js +112 -112
- package/server/routes/map/vtile1.js +179 -179
- package/server/routes/map/widgets/add.widget.js +38 -38
- package/server/routes/map/widgets/del.widget.js +22 -22
- package/server/routes/map/widgets/get.widget.js +40 -40
- package/server/routes/mapnik/controllers/clearTiles.js +106 -106
- package/server/routes/mapnik/controllers/createXml.js +67 -67
- package/server/routes/mapnik/controllers/createXmlMulti.js +76 -76
- package/server/routes/mapnik/controllers/fileSearch.js +38 -38
- package/server/routes/mapnik/controllers/fileStat.js +28 -28
- package/server/routes/mapnik/controllers/mapnikLogger.js +29 -29
- package/server/routes/mapnik/controllers/mapnikStat.js +20 -20
- package/server/routes/mapnik/controllers/rasterInfo.js +54 -54
- package/server/routes/mapnik/controllers/readDir.js +22 -22
- package/server/routes/mapnik/controllers/rtile.js +150 -150
- package/server/routes/mapnik/controllers/uploadRaster.js +157 -157
- package/server/routes/mapnik/functions/cartoBounds.js +28 -28
- package/server/routes/mapnik/functions/uploadXML.js +110 -110
- package/server/routes/mapnik/index.js +27 -27
- package/server/routes/permissions/controllers/catalog.permissions.edit.js +22 -22
- package/server/routes/permissions/controllers/catalog.permissions.js +7 -7
- package/server/routes/permissions/controllers/gis.catalog.js +80 -80
- package/server/routes/permissions/controllers/utils/get.permissions.js +59 -59
- package/server/routes/permissions/index.mjs +18 -18
- package/server/routes/root.mjs +3 -3
- package/utils.js +13 -13
- package/dist/FileEdit-GikPLv1T.js +0 -37
- package/dist/index-CbdZv1jy.js +0 -10123
|
@@ -1,234 +1,234 @@
|
|
|
1
|
-
syntax = "proto3";
|
|
2
|
-
|
|
3
|
-
import "google/protobuf/struct.proto"; // after syntax!
|
|
4
|
-
|
|
5
|
-
package map;
|
|
6
|
-
|
|
7
|
-
// ----------------------------
|
|
8
|
-
// Map Service
|
|
9
|
-
// ----------------------------
|
|
10
|
-
service MapService {
|
|
11
|
-
rpc RenderTile(RenderTileRequest) returns (RenderTileOut);
|
|
12
|
-
rpc ClearTile(ClearTileRequest) returns (ClearTileOut);
|
|
13
|
-
rpc ReadDir(ReadDirRequest) returns (ReadDirOut);
|
|
14
|
-
rpc FileStat(FileStatRequest) returns (FileStatOut);
|
|
15
|
-
rpc FileSearch(FileSearchRequest) returns (FileSearchOut);
|
|
16
|
-
rpc CreateXML(CreateXMLRequest) returns (stream JobProgress); // streaming XML creation
|
|
17
|
-
rpc UploadXML(UploadXMLRequest) returns (UploadXMLOut);
|
|
18
|
-
rpc UploadRaster(UploadRasterRequest) returns (UploadRasterOut);
|
|
19
|
-
rpc GetRasterStatus(GetRasterStatusRequest) returns (GetStatusOut);
|
|
20
|
-
rpc GetStat(GetStatRequest) returns (GetStatOut);
|
|
21
|
-
rpc GetRender(GetRenderRequest) returns (GetRenderOut);
|
|
22
|
-
rpc GetLogs(GetLogsRequest) returns (GetLogsOut);
|
|
23
|
-
rpc GetRasterInfo(GetRasterInfoRequest) returns (GetRasterInfoOut);
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
// ----------------------------
|
|
27
|
-
// Messages for MapService
|
|
28
|
-
// ----------------------------
|
|
29
|
-
message RenderTileRequest {
|
|
30
|
-
string name = 1;
|
|
31
|
-
string path = 2;
|
|
32
|
-
repeated double bbox = 3; // [minx, miny, maxx, maxy]
|
|
33
|
-
int32 width = 4;
|
|
34
|
-
string ttl = 5; // "5m", "1h", "1d" or "0"
|
|
35
|
-
string debug = 6;
|
|
36
|
-
optional bool skipSubdir = 7;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
message RenderTileOut {
|
|
40
|
-
string base64 = 1;
|
|
41
|
-
bool cache = 2;
|
|
42
|
-
string err = 3;
|
|
43
|
-
string xml_path = 4;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
message ClearTileRequest {
|
|
47
|
-
string name = 1;
|
|
48
|
-
string path = 2;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
message ClearTileOut {
|
|
52
|
-
string result = 1;
|
|
53
|
-
string err = 2;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
message FileStatRequest {
|
|
57
|
-
string path = 1;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
message FileStatOut {
|
|
61
|
-
bool exists = 1;
|
|
62
|
-
string name = 2;
|
|
63
|
-
int64 size = 3;
|
|
64
|
-
string adate = 4;
|
|
65
|
-
string cdate = 5;
|
|
66
|
-
string mdate = 6;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
message FileSearchRequest {
|
|
70
|
-
string path = 1;
|
|
71
|
-
string key = 2;
|
|
72
|
-
string period = 3;
|
|
73
|
-
int64 size = 4;
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
message FileSearchOut {
|
|
77
|
-
bool exists = 1;
|
|
78
|
-
int32 count = 2;
|
|
79
|
-
repeated FileInfo files = 3;
|
|
80
|
-
repeated DirInfo directories = 4;
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
message ReadDirRequest {
|
|
84
|
-
string path = 1;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
message FileInfo {
|
|
88
|
-
string name = 1;
|
|
89
|
-
int64 size = 2;
|
|
90
|
-
string date = 3;
|
|
91
|
-
string dir = 4;
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
message DirInfo {
|
|
95
|
-
string name = 1;
|
|
96
|
-
int64 size = 2;
|
|
97
|
-
string date = 3;
|
|
98
|
-
int64 children = 4;
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
message ReadDirOut {
|
|
102
|
-
bool exists = 1;
|
|
103
|
-
int32 count = 2;
|
|
104
|
-
repeated FileInfo files = 3;
|
|
105
|
-
repeated DirInfo directories = 4;
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
message CreateXMLRequest {
|
|
109
|
-
string path = 1;
|
|
110
|
-
int32 srid = 2;
|
|
111
|
-
int32 previewZoom = 3;
|
|
112
|
-
repeated string layers = 4;
|
|
113
|
-
bool vrt = 5;
|
|
114
|
-
string name = 6;
|
|
115
|
-
string debug = 7;
|
|
116
|
-
string nocache = 8;
|
|
117
|
-
string proj4 = 9;
|
|
118
|
-
bool skipSubdir = 10;
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
message UploadXMLRequest {
|
|
122
|
-
string name = 1;
|
|
123
|
-
string xml = 2;
|
|
124
|
-
string encoding = 3;
|
|
125
|
-
string path = 4;
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
message UploadXMLOut {
|
|
129
|
-
string status = 1;
|
|
130
|
-
string filepath = 2;
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
message UploadRasterRequest {
|
|
134
|
-
string path = 1;
|
|
135
|
-
bytes data = 2;
|
|
136
|
-
bool chunked = 3;
|
|
137
|
-
int64 filesize = 4;
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
message UploadRasterOut {
|
|
141
|
-
string status = 1;
|
|
142
|
-
int64 uploaded = 2;
|
|
143
|
-
bool finished = 3;
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
message GetRasterStatusRequest {
|
|
147
|
-
string path = 1;
|
|
148
|
-
bool md5 = 2;
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
message GetStatusOut {
|
|
152
|
-
bool exists = 1;
|
|
153
|
-
string size = 2;
|
|
154
|
-
bool finished = 3;
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
message GetStatRequest {
|
|
158
|
-
string period = 1; // "5m", "1h", "1d"
|
|
159
|
-
string ttl = 2; // "0"
|
|
160
|
-
}
|
|
161
|
-
|
|
162
|
-
message GetStatOut {
|
|
163
|
-
google.protobuf.Struct result = 1; // dynamic json structure, not bound by same value type like with map
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
message GetRenderRequest {
|
|
167
|
-
string name = 1;
|
|
168
|
-
string path = 2;
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
message GetRenderOut {
|
|
172
|
-
string result = 1; // serialized object or placeholder
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
message GetLogsRequest {
|
|
176
|
-
string path = 1; // "info", "info/2026-01-01.log" etc.
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
message GetLogsOut {
|
|
180
|
-
string data = 1;
|
|
181
|
-
string links = 2;
|
|
182
|
-
string err = 3;
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
message GetRasterInfoRequest {
|
|
186
|
-
string path = 1;
|
|
187
|
-
string ttl = 2;
|
|
188
|
-
int64 srid = 3;
|
|
189
|
-
string proj4 = 4;
|
|
190
|
-
bool skipSubdir = 5;
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
message FileItem {
|
|
194
|
-
string name = 1;
|
|
195
|
-
string size = 2;
|
|
196
|
-
}
|
|
197
|
-
|
|
198
|
-
message GetRasterInfoData {
|
|
199
|
-
string total_size = 1;
|
|
200
|
-
string extension = 2;
|
|
201
|
-
int64 srid = 3;
|
|
202
|
-
string proj4 = 4;
|
|
203
|
-
repeated float extent = 5;
|
|
204
|
-
repeated FileItem files = 6;
|
|
205
|
-
int64 width = 7;
|
|
206
|
-
int64 height = 8;
|
|
207
|
-
int64 bands_count = 9;
|
|
208
|
-
string resolution = 10;
|
|
209
|
-
repeated string bands = 11;
|
|
210
|
-
int64 color_depth = 12;
|
|
211
|
-
string compression = 13;
|
|
212
|
-
bool xml = 14;
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
message GetRasterInfoOut {
|
|
216
|
-
GetRasterInfoData data = 1;
|
|
217
|
-
bool cache = 2;
|
|
218
|
-
}
|
|
219
|
-
|
|
220
|
-
// ----------------------------
|
|
221
|
-
// Job Service Messages
|
|
222
|
-
// ----------------------------
|
|
223
|
-
message JobRequest {
|
|
224
|
-
string job_id = 1;
|
|
225
|
-
string xml_name = 2;
|
|
226
|
-
string xml_path = 3;
|
|
227
|
-
repeated string layers = 4;
|
|
228
|
-
}
|
|
229
|
-
|
|
230
|
-
message JobProgress {
|
|
231
|
-
string message = 1;
|
|
232
|
-
string error = 2;
|
|
233
|
-
bool done = 3;
|
|
234
|
-
}
|
|
1
|
+
syntax = "proto3";
|
|
2
|
+
|
|
3
|
+
import "google/protobuf/struct.proto"; // after syntax!
|
|
4
|
+
|
|
5
|
+
package map;
|
|
6
|
+
|
|
7
|
+
// ----------------------------
|
|
8
|
+
// Map Service
|
|
9
|
+
// ----------------------------
|
|
10
|
+
service MapService {
|
|
11
|
+
rpc RenderTile(RenderTileRequest) returns (RenderTileOut);
|
|
12
|
+
rpc ClearTile(ClearTileRequest) returns (ClearTileOut);
|
|
13
|
+
rpc ReadDir(ReadDirRequest) returns (ReadDirOut);
|
|
14
|
+
rpc FileStat(FileStatRequest) returns (FileStatOut);
|
|
15
|
+
rpc FileSearch(FileSearchRequest) returns (FileSearchOut);
|
|
16
|
+
rpc CreateXML(CreateXMLRequest) returns (stream JobProgress); // streaming XML creation
|
|
17
|
+
rpc UploadXML(UploadXMLRequest) returns (UploadXMLOut);
|
|
18
|
+
rpc UploadRaster(UploadRasterRequest) returns (UploadRasterOut);
|
|
19
|
+
rpc GetRasterStatus(GetRasterStatusRequest) returns (GetStatusOut);
|
|
20
|
+
rpc GetStat(GetStatRequest) returns (GetStatOut);
|
|
21
|
+
rpc GetRender(GetRenderRequest) returns (GetRenderOut);
|
|
22
|
+
rpc GetLogs(GetLogsRequest) returns (GetLogsOut);
|
|
23
|
+
rpc GetRasterInfo(GetRasterInfoRequest) returns (GetRasterInfoOut);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
// ----------------------------
|
|
27
|
+
// Messages for MapService
|
|
28
|
+
// ----------------------------
|
|
29
|
+
message RenderTileRequest {
|
|
30
|
+
string name = 1;
|
|
31
|
+
string path = 2;
|
|
32
|
+
repeated double bbox = 3; // [minx, miny, maxx, maxy]
|
|
33
|
+
int32 width = 4;
|
|
34
|
+
string ttl = 5; // "5m", "1h", "1d" or "0"
|
|
35
|
+
string debug = 6;
|
|
36
|
+
optional bool skipSubdir = 7;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
message RenderTileOut {
|
|
40
|
+
string base64 = 1;
|
|
41
|
+
bool cache = 2;
|
|
42
|
+
string err = 3;
|
|
43
|
+
string xml_path = 4;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
message ClearTileRequest {
|
|
47
|
+
string name = 1;
|
|
48
|
+
string path = 2;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
message ClearTileOut {
|
|
52
|
+
string result = 1;
|
|
53
|
+
string err = 2;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
message FileStatRequest {
|
|
57
|
+
string path = 1;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
message FileStatOut {
|
|
61
|
+
bool exists = 1;
|
|
62
|
+
string name = 2;
|
|
63
|
+
int64 size = 3;
|
|
64
|
+
string adate = 4;
|
|
65
|
+
string cdate = 5;
|
|
66
|
+
string mdate = 6;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
message FileSearchRequest {
|
|
70
|
+
string path = 1;
|
|
71
|
+
string key = 2;
|
|
72
|
+
string period = 3;
|
|
73
|
+
int64 size = 4;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
message FileSearchOut {
|
|
77
|
+
bool exists = 1;
|
|
78
|
+
int32 count = 2;
|
|
79
|
+
repeated FileInfo files = 3;
|
|
80
|
+
repeated DirInfo directories = 4;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
message ReadDirRequest {
|
|
84
|
+
string path = 1;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
message FileInfo {
|
|
88
|
+
string name = 1;
|
|
89
|
+
int64 size = 2;
|
|
90
|
+
string date = 3;
|
|
91
|
+
string dir = 4;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
message DirInfo {
|
|
95
|
+
string name = 1;
|
|
96
|
+
int64 size = 2;
|
|
97
|
+
string date = 3;
|
|
98
|
+
int64 children = 4;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
message ReadDirOut {
|
|
102
|
+
bool exists = 1;
|
|
103
|
+
int32 count = 2;
|
|
104
|
+
repeated FileInfo files = 3;
|
|
105
|
+
repeated DirInfo directories = 4;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
message CreateXMLRequest {
|
|
109
|
+
string path = 1;
|
|
110
|
+
int32 srid = 2;
|
|
111
|
+
int32 previewZoom = 3;
|
|
112
|
+
repeated string layers = 4;
|
|
113
|
+
bool vrt = 5;
|
|
114
|
+
string name = 6;
|
|
115
|
+
string debug = 7;
|
|
116
|
+
string nocache = 8;
|
|
117
|
+
string proj4 = 9;
|
|
118
|
+
bool skipSubdir = 10;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
message UploadXMLRequest {
|
|
122
|
+
string name = 1;
|
|
123
|
+
string xml = 2;
|
|
124
|
+
string encoding = 3;
|
|
125
|
+
string path = 4;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
message UploadXMLOut {
|
|
129
|
+
string status = 1;
|
|
130
|
+
string filepath = 2;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
message UploadRasterRequest {
|
|
134
|
+
string path = 1;
|
|
135
|
+
bytes data = 2;
|
|
136
|
+
bool chunked = 3;
|
|
137
|
+
int64 filesize = 4;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
message UploadRasterOut {
|
|
141
|
+
string status = 1;
|
|
142
|
+
int64 uploaded = 2;
|
|
143
|
+
bool finished = 3;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
message GetRasterStatusRequest {
|
|
147
|
+
string path = 1;
|
|
148
|
+
bool md5 = 2;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
message GetStatusOut {
|
|
152
|
+
bool exists = 1;
|
|
153
|
+
string size = 2;
|
|
154
|
+
bool finished = 3;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
message GetStatRequest {
|
|
158
|
+
string period = 1; // "5m", "1h", "1d"
|
|
159
|
+
string ttl = 2; // "0"
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
message GetStatOut {
|
|
163
|
+
google.protobuf.Struct result = 1; // dynamic json structure, not bound by same value type like with map
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
message GetRenderRequest {
|
|
167
|
+
string name = 1;
|
|
168
|
+
string path = 2;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
message GetRenderOut {
|
|
172
|
+
string result = 1; // serialized object or placeholder
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
message GetLogsRequest {
|
|
176
|
+
string path = 1; // "info", "info/2026-01-01.log" etc.
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
message GetLogsOut {
|
|
180
|
+
string data = 1;
|
|
181
|
+
string links = 2;
|
|
182
|
+
string err = 3;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
message GetRasterInfoRequest {
|
|
186
|
+
string path = 1;
|
|
187
|
+
string ttl = 2;
|
|
188
|
+
int64 srid = 3;
|
|
189
|
+
string proj4 = 4;
|
|
190
|
+
bool skipSubdir = 5;
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
message FileItem {
|
|
194
|
+
string name = 1;
|
|
195
|
+
string size = 2;
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
message GetRasterInfoData {
|
|
199
|
+
string total_size = 1;
|
|
200
|
+
string extension = 2;
|
|
201
|
+
int64 srid = 3;
|
|
202
|
+
string proj4 = 4;
|
|
203
|
+
repeated float extent = 5;
|
|
204
|
+
repeated FileItem files = 6;
|
|
205
|
+
int64 width = 7;
|
|
206
|
+
int64 height = 8;
|
|
207
|
+
int64 bands_count = 9;
|
|
208
|
+
string resolution = 10;
|
|
209
|
+
repeated string bands = 11;
|
|
210
|
+
int64 color_depth = 12;
|
|
211
|
+
string compression = 13;
|
|
212
|
+
bool xml = 14;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
message GetRasterInfoOut {
|
|
216
|
+
GetRasterInfoData data = 1;
|
|
217
|
+
bool cache = 2;
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
// ----------------------------
|
|
221
|
+
// Job Service Messages
|
|
222
|
+
// ----------------------------
|
|
223
|
+
message JobRequest {
|
|
224
|
+
string job_id = 1;
|
|
225
|
+
string xml_name = 2;
|
|
226
|
+
string xml_path = 3;
|
|
227
|
+
repeated string layers = 4;
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
message JobProgress {
|
|
231
|
+
string message = 1;
|
|
232
|
+
string error = 2;
|
|
233
|
+
bool done = 3;
|
|
234
|
+
}
|
package/server/plugins/vite.js
CHANGED
|
@@ -1,74 +1,74 @@
|
|
|
1
|
-
import fs from 'node:fs';
|
|
2
|
-
import path from 'node:path';
|
|
3
|
-
import { createServer } from 'vite';
|
|
4
|
-
|
|
5
|
-
// import { config } from '@opengis/fastify-table/utils.js';
|
|
6
|
-
|
|
7
|
-
const isProduction = process.env.NODE_ENV === 'production';
|
|
8
|
-
|
|
9
|
-
console.log({ isProduction });
|
|
10
|
-
|
|
11
|
-
async function plugin(fastify, opts) {
|
|
12
|
-
const viteServer = !isProduction ? await createServer({
|
|
13
|
-
root: 'admin',
|
|
14
|
-
server: {
|
|
15
|
-
middlewareMode: true,
|
|
16
|
-
},
|
|
17
|
-
}) : null;
|
|
18
|
-
|
|
19
|
-
if (!isProduction) {
|
|
20
|
-
const dir1 = process.cwd();
|
|
21
|
-
viteServer.watcher.add(dir1);
|
|
22
|
-
viteServer.watcher.on('all', (d, t) => {
|
|
23
|
-
if (!t.includes('module')) return;
|
|
24
|
-
console.log(d, t);
|
|
25
|
-
viteServer.ws.send({ type: 'full-reload' });
|
|
26
|
-
});
|
|
27
|
-
|
|
28
|
-
// this is middleware for vite's dev server
|
|
29
|
-
fastify.addHook('onRequest', async (req, reply) => {
|
|
30
|
-
const { user } = req.session?.passport || {};
|
|
31
|
-
// console.log(req.url);
|
|
32
|
-
|
|
33
|
-
const next = () => new Promise((resolve) => {
|
|
34
|
-
viteServer.middlewares(req.raw, reply.raw, () => resolve());
|
|
35
|
-
});
|
|
36
|
-
|
|
37
|
-
await next();
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
async function staticFile(req, reply) {
|
|
42
|
-
const assetsDir = 'admin/dist';
|
|
43
|
-
|
|
44
|
-
const filePathDist = path.join(assetsDir, req.url.replace('/public/', '/'));
|
|
45
|
-
const filePathAssets = path.join('assets', req.url.replace('/assets', ''));
|
|
46
|
-
|
|
47
|
-
const filePath = fs.existsSync(filePathDist) ? filePathDist : filePathAssets; // check dist or assets
|
|
48
|
-
const ext = path.extname(filePath);
|
|
49
|
-
|
|
50
|
-
if (!fs.existsSync(filePath)) return { status: 404, message: 'not found' };
|
|
51
|
-
const mime = {
|
|
52
|
-
'.js': 'text/javascript', '.css': 'text/css', '.woff2': 'application/font-woff', '.png': 'image/png', '.svg': 'image/svg+xml', '.jpg': 'image/jpg',
|
|
53
|
-
}[ext];
|
|
54
|
-
reply.headers({ 'Cache-control': 'max-age=3600, public', 'Content-Encoding': 'identity' });
|
|
55
|
-
|
|
56
|
-
const stream = fs.createReadStream(filePath);
|
|
57
|
-
return mime ? reply.type(mime).send(stream) : stream;
|
|
58
|
-
}
|
|
59
|
-
fastify.get('/assets/*', staticFile);
|
|
60
|
-
fastify.get('/public/*', staticFile);
|
|
61
|
-
|
|
62
|
-
fastify.get('*', async (req, reply) => {
|
|
63
|
-
const { user } = req.session?.passport || {};
|
|
64
|
-
|
|
65
|
-
if (!user && req.url.split('?')[0] !== '/login') {
|
|
66
|
-
return reply.redirect(`/login?redirect=${req.url}`);
|
|
67
|
-
}
|
|
68
|
-
if (!isProduction) return null; // admin vite
|
|
69
|
-
const stream = fs.createReadStream('admin/dist/index.html');
|
|
70
|
-
return reply.type('text/html').send(stream);
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
export default plugin;
|
|
1
|
+
import fs from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { createServer } from 'vite';
|
|
4
|
+
|
|
5
|
+
// import { config } from '@opengis/fastify-table/utils.js';
|
|
6
|
+
|
|
7
|
+
const isProduction = process.env.NODE_ENV === 'production';
|
|
8
|
+
|
|
9
|
+
console.log({ isProduction });
|
|
10
|
+
|
|
11
|
+
async function plugin(fastify, opts) {
|
|
12
|
+
const viteServer = !isProduction ? await createServer({
|
|
13
|
+
root: 'admin',
|
|
14
|
+
server: {
|
|
15
|
+
middlewareMode: true,
|
|
16
|
+
},
|
|
17
|
+
}) : null;
|
|
18
|
+
|
|
19
|
+
if (!isProduction) {
|
|
20
|
+
const dir1 = process.cwd();
|
|
21
|
+
viteServer.watcher.add(dir1);
|
|
22
|
+
viteServer.watcher.on('all', (d, t) => {
|
|
23
|
+
if (!t.includes('module')) return;
|
|
24
|
+
console.log(d, t);
|
|
25
|
+
viteServer.ws.send({ type: 'full-reload' });
|
|
26
|
+
});
|
|
27
|
+
|
|
28
|
+
// this is middleware for vite's dev server
|
|
29
|
+
fastify.addHook('onRequest', async (req, reply) => {
|
|
30
|
+
const { user } = req.session?.passport || {};
|
|
31
|
+
// console.log(req.url);
|
|
32
|
+
|
|
33
|
+
const next = () => new Promise((resolve) => {
|
|
34
|
+
viteServer.middlewares(req.raw, reply.raw, () => resolve());
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
await next();
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
async function staticFile(req, reply) {
|
|
42
|
+
const assetsDir = 'admin/dist';
|
|
43
|
+
|
|
44
|
+
const filePathDist = path.join(assetsDir, req.url.replace('/public/', '/'));
|
|
45
|
+
const filePathAssets = path.join('assets', req.url.replace('/assets', ''));
|
|
46
|
+
|
|
47
|
+
const filePath = fs.existsSync(filePathDist) ? filePathDist : filePathAssets; // check dist or assets
|
|
48
|
+
const ext = path.extname(filePath);
|
|
49
|
+
|
|
50
|
+
if (!fs.existsSync(filePath)) return { status: 404, message: 'not found' };
|
|
51
|
+
const mime = {
|
|
52
|
+
'.js': 'text/javascript', '.css': 'text/css', '.woff2': 'application/font-woff', '.png': 'image/png', '.svg': 'image/svg+xml', '.jpg': 'image/jpg',
|
|
53
|
+
}[ext];
|
|
54
|
+
reply.headers({ 'Cache-control': 'max-age=3600, public', 'Content-Encoding': 'identity' });
|
|
55
|
+
|
|
56
|
+
const stream = fs.createReadStream(filePath);
|
|
57
|
+
return mime ? reply.type(mime).send(stream) : stream;
|
|
58
|
+
}
|
|
59
|
+
fastify.get('/assets/*', staticFile);
|
|
60
|
+
fastify.get('/public/*', staticFile);
|
|
61
|
+
|
|
62
|
+
fastify.get('*', async (req, reply) => {
|
|
63
|
+
const { user } = req.session?.passport || {};
|
|
64
|
+
|
|
65
|
+
if (!user && req.url.split('?')[0] !== '/login') {
|
|
66
|
+
return reply.redirect(`/login?redirect=${req.url}`);
|
|
67
|
+
}
|
|
68
|
+
if (!isProduction) return null; // admin vite
|
|
69
|
+
const stream = fs.createReadStream('admin/dist/index.html');
|
|
70
|
+
return reply.type('text/html').send(stream);
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export default plugin;
|