@opengis/gis 0.2.88 → 0.2.89
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/dist/index.css +1 -1
- package/dist/index.js +6784 -6334
- package/dist/index.umd.cjs +67 -65
- package/module/gis/table/gis.cartocss.table.json +7 -1
- package/module/gis/table/gis.maps.table.json +5 -1
- package/module/gis/table/gis.ogc_service.table.json +5 -2
- package/module/gis/table/gis.rasters.table.json +6 -5
- package/module/test/layer/bp1.yml +33 -33
- package/package.json +76 -76
- package/plugin.js +5 -2
- package/server/plugins/vite.js +6 -5
- package/server/routes/mapnik/controllers/mapnikLogger.js +3 -3
- package/server/routes/mapnik/controllers/rasterInfo.js +6 -1
- package/server/routes/mapnik/index.js +2 -3
|
@@ -13,15 +13,19 @@
|
|
|
13
13
|
"ua": "Назва",
|
|
14
14
|
"name": "name",
|
|
15
15
|
"format": "text",
|
|
16
|
+
"slot": "<div><p>{{data?.name}}</p></div><p class='text-xs text-gray-500'>{{data?.source_path}}</p>",
|
|
16
17
|
"link": "/gis.cartocss/{id}"
|
|
17
18
|
},
|
|
18
19
|
{
|
|
19
20
|
"ua": "Шлях",
|
|
20
21
|
"name": "source_path",
|
|
22
|
+
"width": 100,
|
|
23
|
+
"hidden": true,
|
|
21
24
|
"format": "text"
|
|
22
25
|
},
|
|
23
26
|
{
|
|
24
27
|
"ua": "Опис",
|
|
28
|
+
"hidden": true,
|
|
25
29
|
"name": "description",
|
|
26
30
|
"format": "text"
|
|
27
31
|
},
|
|
@@ -35,6 +39,7 @@
|
|
|
35
39
|
"ua": "Включений",
|
|
36
40
|
"name": "enabled",
|
|
37
41
|
"data": "yes_no",
|
|
42
|
+
"width": 100,
|
|
38
43
|
"format": "boolean",
|
|
39
44
|
"edit": true
|
|
40
45
|
},
|
|
@@ -42,6 +47,7 @@
|
|
|
42
47
|
"ua": "Публічний",
|
|
43
48
|
"name": "is_public",
|
|
44
49
|
"data": "yes_no",
|
|
50
|
+
"width": 100,
|
|
45
51
|
"format": "boolean",
|
|
46
52
|
"edit": true
|
|
47
53
|
}
|
|
@@ -66,4 +72,4 @@
|
|
|
66
72
|
"type": "Check"
|
|
67
73
|
}
|
|
68
74
|
]
|
|
69
|
-
}
|
|
75
|
+
}
|
|
@@ -37,12 +37,14 @@
|
|
|
37
37
|
"meta": "title",
|
|
38
38
|
"name": "name",
|
|
39
39
|
"format": "slot",
|
|
40
|
+
"max-w": 500,
|
|
40
41
|
"link": "/gis.maps/{id}",
|
|
41
42
|
"slot": "<div><p>{{data?.name}}</p></div><p class='text-xs text-gray-500'>{{data?.description}}</p>"
|
|
42
43
|
},
|
|
43
44
|
{
|
|
44
45
|
"ua": "Ключові слова",
|
|
45
46
|
"name": "keywords",
|
|
47
|
+
"hidden": true,
|
|
46
48
|
"format": "text"
|
|
47
49
|
},
|
|
48
50
|
{
|
|
@@ -54,6 +56,7 @@
|
|
|
54
56
|
{
|
|
55
57
|
"ua": "Набори даних",
|
|
56
58
|
"name": "services",
|
|
59
|
+
"hidden": true,
|
|
57
60
|
"format": "text"
|
|
58
61
|
},
|
|
59
62
|
{
|
|
@@ -82,6 +85,7 @@
|
|
|
82
85
|
"ua": "Карта",
|
|
83
86
|
"name": "map",
|
|
84
87
|
"format": "slot",
|
|
88
|
+
"width": 50,
|
|
85
89
|
"link": "/maps/{}id}",
|
|
86
90
|
"slot": "<div class='flex items-center gap-3'><svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' class='w-5 h-5 text-blue-600' fill='none' stroke='currentColor' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><path d='M14.106 5.553a2 2 0 0 0 1.788 0l3.659-1.83A1 1 0 0 1 21 4.619v12.764a1 1 0 0 1-.553.894l-4.553 2.277a2 2 0 0 1-1.788 0l-4.212-2.106a2 2 0 0 0-1.788 0l-3.659 1.83A1 1 0 0 1 3 19.381V6.618a1 1 0 0 1 .553-.894l4.553-2.277a2 2 0 0 1 1.788 0z'></path><path d='M15 5.764v15'></path><path d='M9 3.236v15'></path></svg></div>"
|
|
87
91
|
}
|
|
@@ -105,4 +109,4 @@
|
|
|
105
109
|
"type": "Check"
|
|
106
110
|
}
|
|
107
111
|
]
|
|
108
|
-
}
|
|
112
|
+
}
|
|
@@ -37,6 +37,7 @@
|
|
|
37
37
|
"ua": "Тип сервісу",
|
|
38
38
|
"name": "service",
|
|
39
39
|
"data": "ogc.service",
|
|
40
|
+
"hidden": true,
|
|
40
41
|
"format": "select"
|
|
41
42
|
},
|
|
42
43
|
{
|
|
@@ -48,7 +49,7 @@
|
|
|
48
49
|
{
|
|
49
50
|
"ua": "Шлях",
|
|
50
51
|
"name": "url",
|
|
51
|
-
"width":
|
|
52
|
+
"width": 200,
|
|
52
53
|
"edit": true,
|
|
53
54
|
"hidden": true,
|
|
54
55
|
"format": "text"
|
|
@@ -57,6 +58,7 @@
|
|
|
57
58
|
"ua": "Активний",
|
|
58
59
|
"name": "enabled",
|
|
59
60
|
"data": "yes_no",
|
|
61
|
+
"width": 100,
|
|
60
62
|
"edit": true,
|
|
61
63
|
"format": "boolean"
|
|
62
64
|
},
|
|
@@ -65,6 +67,7 @@
|
|
|
65
67
|
"name": "ispublic",
|
|
66
68
|
"data": "yes_no",
|
|
67
69
|
"edit": true,
|
|
70
|
+
"width": 100,
|
|
68
71
|
"format": "boolean"
|
|
69
72
|
}
|
|
70
73
|
],
|
|
@@ -95,4 +98,4 @@
|
|
|
95
98
|
"type": "Check"
|
|
96
99
|
}
|
|
97
100
|
]
|
|
98
|
-
}
|
|
101
|
+
}
|
|
@@ -23,13 +23,14 @@
|
|
|
23
23
|
"link": "/gis.rasters/{id}"
|
|
24
24
|
},
|
|
25
25
|
{
|
|
26
|
-
"ua": "
|
|
27
|
-
"name": "
|
|
26
|
+
"ua": "Шлях до растру",
|
|
27
|
+
"name": "source_path",
|
|
28
28
|
"format": "text"
|
|
29
29
|
},
|
|
30
30
|
{
|
|
31
|
-
"ua": "
|
|
32
|
-
"name": "
|
|
31
|
+
"ua": "Система координат",
|
|
32
|
+
"name": "srid",
|
|
33
|
+
"width": 100,
|
|
33
34
|
"format": "text"
|
|
34
35
|
},
|
|
35
36
|
{
|
|
@@ -98,4 +99,4 @@
|
|
|
98
99
|
"type": "Check"
|
|
99
100
|
}
|
|
100
101
|
]
|
|
101
|
-
}
|
|
102
|
+
}
|
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
source_path: data_bp_myo.bp
|
|
2
|
-
name: Будівельні паспорти Template
|
|
3
|
-
visible: true
|
|
4
|
-
style:
|
|
5
|
-
type: point
|
|
6
|
-
color: '#d970d5'
|
|
7
|
-
width: 2
|
|
8
|
-
radius: 10
|
|
9
|
-
border: 1
|
|
10
|
-
opacity: 0.4
|
|
11
|
-
popup:
|
|
12
|
-
- ua: Назва замовника
|
|
13
|
-
name: bp_customer_name
|
|
14
|
-
meta: title
|
|
15
|
-
- label: Реєстраційний номер БП
|
|
16
|
-
name: bp_code
|
|
17
|
-
format: badge
|
|
18
|
-
- label: Адреса
|
|
19
|
-
name: address
|
|
20
|
-
card:
|
|
21
|
-
- label: Реєстраційний номер БП
|
|
22
|
-
name: bp_code
|
|
23
|
-
- ua: Адреса
|
|
24
|
-
name: address
|
|
25
|
-
- ua: Вид будівництва
|
|
26
|
-
data: bp_build_type
|
|
27
|
-
name: bp_build_type
|
|
28
|
-
- ua: Назва замовника
|
|
29
|
-
name: bp_customer_name
|
|
30
|
-
- ua: Статус документа
|
|
31
|
-
data: doc_status
|
|
32
|
-
name: bp_doc_status
|
|
33
|
-
|
|
1
|
+
source_path: data_bp_myo.bp
|
|
2
|
+
name: Будівельні паспорти Template
|
|
3
|
+
visible: true
|
|
4
|
+
style:
|
|
5
|
+
type: point
|
|
6
|
+
color: '#d970d5'
|
|
7
|
+
width: 2
|
|
8
|
+
radius: 10
|
|
9
|
+
border: 1
|
|
10
|
+
opacity: 0.4
|
|
11
|
+
popup:
|
|
12
|
+
- ua: Назва замовника
|
|
13
|
+
name: bp_customer_name
|
|
14
|
+
meta: title
|
|
15
|
+
- label: Реєстраційний номер БП
|
|
16
|
+
name: bp_code
|
|
17
|
+
format: badge
|
|
18
|
+
- label: Адреса
|
|
19
|
+
name: address
|
|
20
|
+
card:
|
|
21
|
+
- label: Реєстраційний номер БП
|
|
22
|
+
name: bp_code
|
|
23
|
+
- ua: Адреса
|
|
24
|
+
name: address
|
|
25
|
+
- ua: Вид будівництва
|
|
26
|
+
data: bp_build_type
|
|
27
|
+
name: bp_build_type
|
|
28
|
+
- ua: Назва замовника
|
|
29
|
+
name: bp_customer_name
|
|
30
|
+
- ua: Статус документа
|
|
31
|
+
data: doc_status
|
|
32
|
+
name: bp_doc_status
|
|
33
|
+
|
package/package.json
CHANGED
|
@@ -1,76 +1,76 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@opengis/gis",
|
|
3
|
-
"version": "0.2.
|
|
4
|
-
"type": "module",
|
|
5
|
-
"author": "Softpro",
|
|
6
|
-
"main": "./dist/index.js",
|
|
7
|
-
"files": [
|
|
8
|
-
"dist/*",
|
|
9
|
-
"module/*",
|
|
10
|
-
"server/*",
|
|
11
|
-
"plugin.js",
|
|
12
|
-
"utils.js",
|
|
13
|
-
"config.js",
|
|
14
|
-
"README.md",
|
|
15
|
-
"LICENSE"
|
|
16
|
-
],
|
|
17
|
-
"scripts": {
|
|
18
|
-
"dump": "bun ./node_modules/@opengis/fastify-table/dist/script/dump.js",
|
|
19
|
-
"migrate": "MIGRATE=true bun ./node_modules/@opengis/fastify-table/dist/script/migrate.js",
|
|
20
|
-
"start": "bun server",
|
|
21
|
-
"start:kyiv-demo": "bun --env-file=.env.kyiv-demo server",
|
|
22
|
-
"kamyanske": "bun --env-file=.env.kamyanske server",
|
|
23
|
-
"start:kr": "bun --env-file=.env.kr server",
|
|
24
|
-
"poltava": "bun --env-file=.env.poltava --hot server",
|
|
25
|
-
"dev:kyiv-demo": "bun --env-file=.env.kyiv-demo --hot server",
|
|
26
|
-
"dev:kamyanske": "bun --env-file=.env.kamyanske --hot server",
|
|
27
|
-
"
|
|
28
|
-
"lint": "eslint src --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts",
|
|
29
|
-
"fix": "eslint src --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix",
|
|
30
|
-
"patch": "npm version patch && git push && npm publish",
|
|
31
|
-
"dev": "bun --hot server",
|
|
32
|
-
"front": "vite dev",
|
|
33
|
-
"build-lib": "vite build",
|
|
34
|
-
"build:admin": "vite build admin",
|
|
35
|
-
"build": "vite build",
|
|
36
|
-
"preview": "vite preview",
|
|
37
|
-
"prod": "NODE_ENV=production node server",
|
|
38
|
-
"docs:install": "npm install --prefix ./docs",
|
|
39
|
-
"docs:dev": "npm run --prefix ./docs docs:dev",
|
|
40
|
-
"docs:build": "npm run --prefix ./docs docs:build",
|
|
41
|
-
"docs:preview": "npm run --prefix ./docs docs:preview",
|
|
42
|
-
"prepublishOnly": "npm run build"
|
|
43
|
-
},
|
|
44
|
-
"dependencies": {
|
|
45
|
-
"@mapbox/sphericalmercator": "1.2.0",
|
|
46
|
-
"carto": "0.16.3"
|
|
47
|
-
},
|
|
48
|
-
"peerDependencies": {
|
|
49
|
-
"@opengis/fastify-table": "^2.0.32"
|
|
50
|
-
},
|
|
51
|
-
"resolutions": {
|
|
52
|
-
"rollup": "4.30.0"
|
|
53
|
-
},
|
|
54
|
-
"devDependencies": {
|
|
55
|
-
"@opengis/core": "^0.0.23",
|
|
56
|
-
"@opengis/fastify-table": "^2.0.135",
|
|
57
|
-
"@opengis/filter": "0.1.31",
|
|
58
|
-
"@opengis/form": "^0.0.103",
|
|
59
|
-
"@opengis/table": "^0.0.27",
|
|
60
|
-
"@vitejs/plugin-vue": "^5.2.4",
|
|
61
|
-
"axios": "^1.13.5",
|
|
62
|
-
"eslint": "^8.57.1",
|
|
63
|
-
"eslint-config-airbnb": "19.0.4",
|
|
64
|
-
"eslint-plugin-import": "^2.32.0",
|
|
65
|
-
"eslint-plugin-vue": "^9.33.0",
|
|
66
|
-
"@vue/eslint-config-typescript": "^12.0.0",
|
|
67
|
-
"vue-eslint-parser": "^10.4.0",
|
|
68
|
-
"lucide-vue-next": "^0.514.0",
|
|
69
|
-
"sass-embedded": "1.86.3",
|
|
70
|
-
"typescript": "^5.9.3",
|
|
71
|
-
"vite": "^6.4.1",
|
|
72
|
-
"vue": "^3.5.28",
|
|
73
|
-
"vue-router": "4.5.1",
|
|
74
|
-
"vuedraggable": "^4.1.0"
|
|
75
|
-
}
|
|
76
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@opengis/gis",
|
|
3
|
+
"version": "0.2.89",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"author": "Softpro",
|
|
6
|
+
"main": "./dist/index.js",
|
|
7
|
+
"files": [
|
|
8
|
+
"dist/*",
|
|
9
|
+
"module/*",
|
|
10
|
+
"server/*",
|
|
11
|
+
"plugin.js",
|
|
12
|
+
"utils.js",
|
|
13
|
+
"config.js",
|
|
14
|
+
"README.md",
|
|
15
|
+
"LICENSE"
|
|
16
|
+
],
|
|
17
|
+
"scripts": {
|
|
18
|
+
"dump": "bun ./node_modules/@opengis/fastify-table/dist/script/dump.js",
|
|
19
|
+
"migrate": "MIGRATE=true bun ./node_modules/@opengis/fastify-table/dist/script/migrate.js",
|
|
20
|
+
"start": "bun server",
|
|
21
|
+
"start:kyiv-demo": "bun --env-file=.env.kyiv-demo server",
|
|
22
|
+
"kamyanske": "bun --env-file=.env.kamyanske server",
|
|
23
|
+
"start:kr": "bun --env-file=.env.kr server",
|
|
24
|
+
"poltava": "bun --env-file=.env.poltava --hot server",
|
|
25
|
+
"dev:kyiv-demo": "bun --env-file=.env.kyiv-demo --hot server",
|
|
26
|
+
"dev:kamyanske": "bun --env-file=.env.kamyanske --hot server",
|
|
27
|
+
"kr": "bun --env-file=.env.kr --hot server",
|
|
28
|
+
"lint": "eslint src --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts",
|
|
29
|
+
"fix": "eslint src --ext .vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts --fix",
|
|
30
|
+
"patch": "npm version patch && git push && npm publish",
|
|
31
|
+
"dev": "bun --hot server",
|
|
32
|
+
"front": "vite dev",
|
|
33
|
+
"build-lib": "vite build",
|
|
34
|
+
"build:admin": "vite build admin",
|
|
35
|
+
"build": "vite build",
|
|
36
|
+
"preview": "vite preview",
|
|
37
|
+
"prod": "NODE_ENV=production node server",
|
|
38
|
+
"docs:install": "npm install --prefix ./docs",
|
|
39
|
+
"docs:dev": "npm run --prefix ./docs docs:dev",
|
|
40
|
+
"docs:build": "npm run --prefix ./docs docs:build",
|
|
41
|
+
"docs:preview": "npm run --prefix ./docs docs:preview",
|
|
42
|
+
"prepublishOnly": "npm run build"
|
|
43
|
+
},
|
|
44
|
+
"dependencies": {
|
|
45
|
+
"@mapbox/sphericalmercator": "1.2.0",
|
|
46
|
+
"carto": "0.16.3"
|
|
47
|
+
},
|
|
48
|
+
"peerDependencies": {
|
|
49
|
+
"@opengis/fastify-table": "^2.0.32"
|
|
50
|
+
},
|
|
51
|
+
"resolutions": {
|
|
52
|
+
"rollup": "4.30.0"
|
|
53
|
+
},
|
|
54
|
+
"devDependencies": {
|
|
55
|
+
"@opengis/core": "^0.0.23",
|
|
56
|
+
"@opengis/fastify-table": "^2.0.135",
|
|
57
|
+
"@opengis/filter": "0.1.31",
|
|
58
|
+
"@opengis/form": "^0.0.103",
|
|
59
|
+
"@opengis/table": "^0.0.27",
|
|
60
|
+
"@vitejs/plugin-vue": "^5.2.4",
|
|
61
|
+
"axios": "^1.13.5",
|
|
62
|
+
"eslint": "^8.57.1",
|
|
63
|
+
"eslint-config-airbnb": "19.0.4",
|
|
64
|
+
"eslint-plugin-import": "^2.32.0",
|
|
65
|
+
"eslint-plugin-vue": "^9.33.0",
|
|
66
|
+
"@vue/eslint-config-typescript": "^12.0.0",
|
|
67
|
+
"vue-eslint-parser": "^10.4.0",
|
|
68
|
+
"lucide-vue-next": "^0.514.0",
|
|
69
|
+
"sass-embedded": "1.86.3",
|
|
70
|
+
"typescript": "^5.9.3",
|
|
71
|
+
"vite": "^6.4.1",
|
|
72
|
+
"vue": "^3.5.28",
|
|
73
|
+
"vue-router": "4.5.1",
|
|
74
|
+
"vuedraggable": "^4.1.0"
|
|
75
|
+
}
|
|
76
|
+
}
|
package/plugin.js
CHANGED
|
@@ -5,9 +5,10 @@ import {
|
|
|
5
5
|
} from '@opengis/fastify-table/utils.js';
|
|
6
6
|
|
|
7
7
|
config.prefix = config.prefix || '/api';
|
|
8
|
-
|
|
9
8
|
import { join, dirname } from 'path';
|
|
10
9
|
import { fileURLToPath } from 'url';
|
|
10
|
+
import mapnikLogger from './server/routes/mapnik/controllers/mapnikLogger.js';
|
|
11
|
+
import mapnikStat from './server/routes/mapnik/controllers/mapnikStat.js';
|
|
11
12
|
|
|
12
13
|
const dir = dirname(fileURLToPath(import.meta.url));
|
|
13
14
|
|
|
@@ -22,13 +23,15 @@ const columnType = {
|
|
|
22
23
|
'timestamp without time zone': 'date',
|
|
23
24
|
'timestamp with time zone': 'date',
|
|
24
25
|
};
|
|
25
|
-
|
|
26
|
+
const adminParams = { config: { policy: 'L1', role: 'admin' }, package: 'gis' };
|
|
26
27
|
async function plugin(app, opts = config) {
|
|
27
28
|
// API
|
|
28
29
|
app.register(import('./server/routes/map/index.mjs'), opts);
|
|
29
30
|
app.register(import('./server/plugins/crons.js'), opts);
|
|
30
31
|
app.register(import('./server/routes/gis/index.mjs'), opts);
|
|
31
32
|
app.register(import('./server/routes/mapnik/index.js'), opts);
|
|
33
|
+
app.get('/logger-gis/stat', adminParams, mapnikStat);
|
|
34
|
+
app.get('/logger-gis/*', adminParams, mapnikLogger);
|
|
32
35
|
|
|
33
36
|
addHook('afterData', async ({
|
|
34
37
|
pg = pgClients.client, payload, id, template,
|
package/server/plugins/vite.js
CHANGED
|
@@ -2,9 +2,9 @@ import fs from 'node:fs';
|
|
|
2
2
|
import path from 'node:path';
|
|
3
3
|
import { createServer } from 'vite';
|
|
4
4
|
|
|
5
|
-
import { config } from '@opengis/fastify-table/utils.js';
|
|
5
|
+
// import { config } from '@opengis/fastify-table/utils.js';
|
|
6
6
|
|
|
7
|
-
const isProduction = process.env.NODE_ENV === 'production'
|
|
7
|
+
const isProduction = process.env.NODE_ENV === 'production';
|
|
8
8
|
|
|
9
9
|
console.log({ isProduction });
|
|
10
10
|
|
|
@@ -61,9 +61,10 @@ async function plugin(fastify, opts) {
|
|
|
61
61
|
|
|
62
62
|
fastify.get('*', async (req, reply) => {
|
|
63
63
|
const { user } = req.session?.passport || {};
|
|
64
|
-
|
|
65
|
-
if (!user && req.url !== '/login') {
|
|
66
|
-
|
|
64
|
+
|
|
65
|
+
if (!user && req.url.split('?')[0] !== '/login') {
|
|
66
|
+
console.log(req.url);
|
|
67
|
+
return reply.redirect(`/login?redirect=${req.url}`);
|
|
67
68
|
}
|
|
68
69
|
if (!isProduction) return null; // admin vite
|
|
69
70
|
const stream = fs.createReadStream('admin/dist/index.html');
|
|
@@ -5,14 +5,14 @@ import mapnik from '../../../plugins/mapnik/funcs/mapnik.js';
|
|
|
5
5
|
const { GetLogs } = mapnik();
|
|
6
6
|
|
|
7
7
|
export default async function mapnikLogger({
|
|
8
|
-
params,
|
|
8
|
+
params,
|
|
9
9
|
}, reply) {
|
|
10
10
|
if (!config.mapServerAddress) {
|
|
11
11
|
return reply.status(400).send({ error: 'mapnik server address needed', code: 400 });
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
const { data, links, err } = await GetLogs({ path: params['*'] });
|
|
15
|
-
|
|
15
|
+
console.log(links);
|
|
16
16
|
if (err) {
|
|
17
17
|
return reply.status(400).send(err);
|
|
18
18
|
}
|
|
@@ -22,7 +22,7 @@ export default async function mapnikLogger({
|
|
|
22
22
|
"Content-Type": "text/html; charset=UTF-8",
|
|
23
23
|
"Content-Security-Policy": "default-src 'none'",
|
|
24
24
|
"X-Content-Type-Options": "nosniff",
|
|
25
|
-
}).send(links);
|
|
25
|
+
}).send(links.replace(/\/api\/gis-logger/g, '/logger-gis'));
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
return reply.headers({ "Content-type": "text/plain; charset=UTF-8" }).send(data);
|
|
@@ -9,6 +9,7 @@ const { prefix = '/api' } = config;
|
|
|
9
9
|
export default async function rasterInfo({
|
|
10
10
|
pg = pgClients.client, params, query,
|
|
11
11
|
}, reply) {
|
|
12
|
+
const time = Date.now();
|
|
12
13
|
if (!config.mapServerAddress) {
|
|
13
14
|
return reply.status(400).send({ error: 'mapnik server address needed', code: 400 });
|
|
14
15
|
}
|
|
@@ -40,6 +41,10 @@ export default async function rasterInfo({
|
|
|
40
41
|
}
|
|
41
42
|
|
|
42
43
|
return {
|
|
43
|
-
|
|
44
|
+
time: Date.now() - time,
|
|
45
|
+
...data,
|
|
46
|
+
...raster,
|
|
47
|
+
cache,
|
|
48
|
+
url: `${prefix}/gis-rtile/${Buffer.from(raster.source_path).toString('base64url')}/{z}/{x}/{y}.png`,
|
|
44
49
|
};
|
|
45
50
|
}
|
|
@@ -3,7 +3,7 @@ import createXml from './controllers/createXml.js';
|
|
|
3
3
|
import rtile from './controllers/rtile.js';
|
|
4
4
|
import rasterInfo from './controllers/rasterInfo.js';
|
|
5
5
|
import mapnikStat from './controllers/mapnikStat.js';
|
|
6
|
-
|
|
6
|
+
|
|
7
7
|
import createXmlMulti from './controllers/createXmlMulti.js';
|
|
8
8
|
import readDir from './controllers/readDir.js';
|
|
9
9
|
import fileStat from './controllers/fileStat.js';
|
|
@@ -19,8 +19,7 @@ export default async function route(app) {
|
|
|
19
19
|
app.get('/gis-xml/:id', publicParams, createXml);
|
|
20
20
|
app.get('/gis-rtile/:id/:z/:y/:x', publicParams, rtile);
|
|
21
21
|
app.get('/gis-raster/:id', publicParams, rasterInfo);
|
|
22
|
-
|
|
23
|
-
app.get('/gis-logger/*', adminParams, mapnikLogger);
|
|
22
|
+
|
|
24
23
|
app.get('/gis-create-xml/:id?', adminParams, createXmlMulti);
|
|
25
24
|
app.get('/gis-files', adminParams, readDir);
|
|
26
25
|
app.get('/gis-file-info', adminParams, fileStat);
|