@golemio/mvt-maps 0.0.1-dev.1848286726 → 0.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.
- package/dist/output-gateway/controllers/V2MvtController.js +1 -2
- package/dist/output-gateway/controllers/V2MvtController.js.map +1 -1
- package/dist/output-gateway/routers/V2MvtRouter.js +0 -1
- package/dist/output-gateway/routers/V2MvtRouter.js.map +1 -1
- package/dist/output-gateway/routers/interfaces/IMvtParams.d.ts +0 -1
- package/dist/output-gateway/services/MvtClusterService.d.ts +4 -6
- package/dist/output-gateway/services/MvtClusterService.js +19 -46
- package/dist/output-gateway/services/MvtClusterService.js.map +1 -1
- package/docs/openapi-output.yaml +2 -10
- package/package.json +1 -1
|
@@ -32,7 +32,7 @@ let V2MvtController = exports.V2MvtController = class V2MvtController {
|
|
|
32
32
|
this.getAll = (req, res, next) => __awaiter(this, void 0, void 0, function* () {
|
|
33
33
|
try {
|
|
34
34
|
const params = this.parseParams(req);
|
|
35
|
-
const result = yield this.service.getTile(params.table, params.geometry, params.x, params.y, params.z, params.maxZoom, params.attributes, params.radius
|
|
35
|
+
const result = yield this.service.getTile(params.table, params.geometry, params.x, params.y, params.z, params.maxZoom, params.attributes, params.radius);
|
|
36
36
|
res.setHeader("Content-Type", "application/vnd.mapbox-vector-tile");
|
|
37
37
|
res.status(200).send(result);
|
|
38
38
|
}
|
|
@@ -54,7 +54,6 @@ let V2MvtController = exports.V2MvtController = class V2MvtController {
|
|
|
54
54
|
: [req.query.attributes],
|
|
55
55
|
radius: req.query.radius ? parseInt(req.query.radius) : undefined,
|
|
56
56
|
maxZoom: parseInt(req.query.maxZoom),
|
|
57
|
-
clusterPoint: req.query.clusterPoint ? req.query.clusterPoint : undefined,
|
|
58
57
|
};
|
|
59
58
|
}
|
|
60
59
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"V2MvtController.js","sourceRoot":"","sources":["../../../src/output-gateway/controllers/V2MvtController.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AACA,6EAAwE;AACxE,iEAAwE;AAExE,sEAAoE;AACpE,qEAAmE;AAG5D,IAAM,eAAe,6BAArB,MAAM,eAAe;IACxB,YAA4D,OAAkC;QAA1B,YAAO,GAAP,OAAO,CAAmB;QAEvF,WAAM,GAAG,CAAO,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;YACtE,IAAI;gBACA,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CACrC,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,CAAC,EACR,MAAM,CAAC,CAAC,EACR,MAAM,CAAC,CAAC,EACR,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"V2MvtController.js","sourceRoot":"","sources":["../../../src/output-gateway/controllers/V2MvtController.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AACA,6EAAwE;AACxE,iEAAwE;AAExE,sEAAoE;AACpE,qEAAmE;AAG5D,IAAM,eAAe,6BAArB,MAAM,eAAe;IACxB,YAA4D,OAAkC;QAA1B,YAAO,GAAP,OAAO,CAAmB;QAEvF,WAAM,GAAG,CAAO,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;YACtE,IAAI;gBACA,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CACrC,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,CAAC,EACR,MAAM,CAAC,CAAC,EACR,MAAM,CAAC,CAAC,EACR,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,MAAM,CAChB,CAAC;gBAEF,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,oCAAoC,CAAC,CAAC;gBACpE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAChC;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,GAAG,CAAC,CAAC;aACb;QACL,CAAC,CAAA,CAAC;IArB+F,CAAC;IAuB1F,WAAW,CAAC,GAAY;QAC5B,IAAI;YACA,OAAO;gBACH,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAW,CAAC;gBACnC,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAW,CAAC;gBACnC,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAW,CAAC;gBACnC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,KAAe;gBAChC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,QAAkB;gBACtC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC;oBAC3C,CAAC,CAAE,GAAG,CAAC,KAAK,CAAC,UAAuB;oBACpC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAoB,CAAC;gBACtC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,MAAgB,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC3E,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,OAAiB,CAAC;aACjD,CAAC;SACL;QAAC,OAAO,GAAG,EAAE;YACV,MAAM,IAAI,6BAAY,CAAC,qBAAqB,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;SAClF;IACL,CAAC;CACJ,CAAA;0BA1CY,eAAe;IAD3B,IAAA,qBAAU,GAAE;IAEI,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,iBAAiB,CAAC,CAAA;qCAAkB,qCAAiB;GADrF,eAAe,CA0C3B"}
|
|
@@ -26,7 +26,6 @@ class V2MvtRouter extends AbstractRouter_1.AbstractRouter {
|
|
|
26
26
|
(0, express_validator_1.query)("attributes.*").exists().isString().not().isArray(),
|
|
27
27
|
(0, express_validator_1.query)("maxZoom").exists().isInt(),
|
|
28
28
|
(0, express_validator_1.query)("radius").optional().isInt(),
|
|
29
|
-
(0, express_validator_1.query)("clusterPoint").optional().isString().not().isArray(),
|
|
30
29
|
], Validation_1.checkErrors, this.cacheHeaderMiddleware.getMiddleware(5 * 60, 60), this.controller.getAll);
|
|
31
30
|
}
|
|
32
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"V2MvtRouter.js","sourceRoot":"","sources":["../../../src/output-gateway/routers/V2MvtRouter.ts"],"names":[],"mappings":";;;AAAA,kCAA0C;AAC1C,sEAAoE;AACpE,sFAAmF;AAEnF,+DAAuE;AACvE,6EAA2E;AAC3E,mFAA2E;AAC3E,2CAA2C;AAG3C,MAAM,WAAY,SAAQ,+BAAc;IAIpC;QACI,KAAK,CAAC,wBAAY,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAE9B,IAAI,CAAC,UAAU,GAAG,iBAAY,CAAC,OAAO,CAAC,2CAAoB,CAAC,eAAe,CAAC,CAAC;QAC7E,IAAI,CAAC,qBAAqB,GAAG,iBAAY,CAAC,OAAO,CAAwB,oBAAc,CAAC,qBAAqB,CAAC,CAAC;QAC/G,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;IAES,UAAU;QAChB,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,WAAW,EACX;YACI,IAAA,yBAAK,EAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YAC3C,IAAA,yBAAK,EAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YAC3C,IAAA,yBAAK,EAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YAC3C,IAAA,yBAAK,EAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YAClD,IAAA,yBAAK,EAAC,UAAU,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YACrD,IAAA,yBAAK,EAAC,YAAY,CAAC,CAAC,MAAM,EAAE;YAC5B,IAAA,yBAAK,EAAC,cAAc,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YACzD,IAAA,yBAAK,EAAC,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE;YACjC,IAAA,yBAAK,EAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"V2MvtRouter.js","sourceRoot":"","sources":["../../../src/output-gateway/routers/V2MvtRouter.ts"],"names":[],"mappings":";;;AAAA,kCAA0C;AAC1C,sEAAoE;AACpE,sFAAmF;AAEnF,+DAAuE;AACvE,6EAA2E;AAC3E,mFAA2E;AAC3E,2CAA2C;AAG3C,MAAM,WAAY,SAAQ,+BAAc;IAIpC;QACI,KAAK,CAAC,wBAAY,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAE9B,IAAI,CAAC,UAAU,GAAG,iBAAY,CAAC,OAAO,CAAC,2CAAoB,CAAC,eAAe,CAAC,CAAC;QAC7E,IAAI,CAAC,qBAAqB,GAAG,iBAAY,CAAC,OAAO,CAAwB,oBAAc,CAAC,qBAAqB,CAAC,CAAC;QAC/G,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;IAES,UAAU;QAChB,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,WAAW,EACX;YACI,IAAA,yBAAK,EAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YAC3C,IAAA,yBAAK,EAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YAC3C,IAAA,yBAAK,EAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YAC3C,IAAA,yBAAK,EAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YAClD,IAAA,yBAAK,EAAC,UAAU,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YACrD,IAAA,yBAAK,EAAC,YAAY,CAAC,CAAC,MAAM,EAAE;YAC5B,IAAA,yBAAK,EAAC,cAAc,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YACzD,IAAA,yBAAK,EAAC,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE;YACjC,IAAA,yBAAK,EAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE;SACrC,EACD,wBAAW,EACX,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,EACpD,IAAI,CAAC,UAAU,CAAC,MAAM,CACzB,CAAC;IACN,CAAC;CACJ;AAED,MAAM,WAAW,GAAmB,IAAI,WAAW,EAAE,CAAC;AAE7C,kCAAW"}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
|
-
import { ILogger } from "@golemio/core/dist/helpers";
|
|
2
1
|
import { IDatabaseConnector } from "@golemio/core/dist/helpers/data-access/postgres/IDatabaseConnector";
|
|
2
|
+
import { ILogger } from "@golemio/core/dist/helpers";
|
|
3
3
|
export declare class MvtClusterService {
|
|
4
4
|
private connector;
|
|
5
5
|
private logger;
|
|
6
6
|
constructor(connector: IDatabaseConnector, logger: ILogger);
|
|
7
|
-
getTile(table: string, geometry: string, x: number, y: number, z: number, zoomLevel: number, attributes: string[], radius?: number
|
|
8
|
-
private
|
|
9
|
-
private
|
|
10
|
-
private getLevelGroupQuery;
|
|
11
|
-
private getTileQuery;
|
|
7
|
+
getTile(table: string, geometry: string, x: number, y: number, z: number, zoomLevel: number, attributes: string[], radius?: number): Promise<Uint8Array>;
|
|
8
|
+
private defaultGetBaseQuery;
|
|
9
|
+
private defaultGetTileQuery;
|
|
12
10
|
}
|
|
@@ -22,66 +22,37 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
22
22
|
};
|
|
23
23
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
24
|
exports.MvtClusterService = void 0;
|
|
25
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
25
26
|
const clusterbuster_1 = require("@golemio/clusterbuster");
|
|
26
27
|
const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
|
|
27
|
-
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
28
28
|
const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
|
|
29
|
-
const
|
|
29
|
+
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
30
30
|
let MvtClusterService = exports.MvtClusterService = class MvtClusterService {
|
|
31
31
|
constructor(connector, logger) {
|
|
32
32
|
this.connector = connector;
|
|
33
33
|
this.logger = logger;
|
|
34
|
-
this.
|
|
35
|
-
|
|
36
|
-
${
|
|
37
|
-
${geometry} as zoomGeom,
|
|
34
|
+
this.defaultGetBaseQuery = ({ x, y, z, table, geometry, maxZoomLevel, attributes, query, }) => `
|
|
35
|
+
SELECT
|
|
36
|
+
${geometry} AS center,
|
|
38
37
|
1 AS size,
|
|
39
38
|
0 AS clusterNo,
|
|
40
39
|
${maxZoomLevel + 1} AS expansionZoom${attributes}
|
|
41
40
|
FROM ${table}
|
|
42
41
|
WHERE
|
|
43
42
|
ST_Intersects(TileBBox(${z}, ${x}, ${y}, 4326), ${geometry})
|
|
44
|
-
${query.length > 0 ? `AND ${query.join(" AND ")}` : ""}
|
|
45
|
-
|
|
46
|
-
this.
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
zoomGeom,
|
|
50
|
-
expansionZoom,
|
|
51
|
-
clusterNo AS previousClusterNo,
|
|
52
|
-
size,
|
|
53
|
-
ST_ClusterDBSCAN(center, ${zoomToDistance(zoomLevel, radius)}, 1) over () as clusters${attributes}
|
|
54
|
-
FROM ${parentTable}`;
|
|
55
|
-
};
|
|
56
|
-
this.getLevelGroupQuery = ({ zoomLevel, attributes }) => {
|
|
57
|
-
return `SELECT
|
|
58
|
-
SUM(size) as size,
|
|
59
|
-
clusters AS clusterNo,
|
|
60
|
-
(
|
|
61
|
-
CASE COUNT(previousClusterNo)
|
|
62
|
-
WHEN 1 THEN FIRST(expansionZoom)
|
|
63
|
-
ELSE ${zoomLevel + 1} END
|
|
64
|
-
) AS expansionZoom, ${attributes}
|
|
65
|
-
ST_Centroid(ST_Collect(center)) as center,
|
|
66
|
-
FIRST(zoomGeom) as zoomGeom
|
|
67
|
-
FROM clustered_${zoomLevel}
|
|
68
|
-
GROUP BY clusters`;
|
|
69
|
-
};
|
|
70
|
-
this.getTileQuery = ({ x, y, z, table, geometry, extent, bufferSize, attributes }) => {
|
|
71
|
-
return `SELECT
|
|
72
|
-
case size
|
|
73
|
-
WHEN 1 THEN
|
|
74
|
-
ST_AsMVTGeom(ST_Transform(zoomGeom, 3857), TileBBox(${z}, ${x}, ${y}, 3857), ${extent}, ${bufferSize}, false)
|
|
75
|
-
ELSE ST_AsMVTGeom(ST_Transform(${geometry}, 3857), TileBBox(${z}, ${x}, ${y}, 3857), ${extent}, ${bufferSize}, false)
|
|
76
|
-
end AS geom,
|
|
43
|
+
${query.length > 0 ? `AND ${query.join(" AND ")}` : ""}
|
|
44
|
+
`;
|
|
45
|
+
this.defaultGetTileQuery = ({ x, y, z, table, geometry, extent, bufferSize, attributes }) => `
|
|
46
|
+
SELECT
|
|
47
|
+
ST_AsMVTGeom(${geometry}, TileBBox(${z}, ${x}, ${y}, 4326), ${extent}, ${bufferSize}, false) AS geom,
|
|
77
48
|
jsonb_build_object(
|
|
78
49
|
'count', size,
|
|
79
50
|
'expansionZoom', expansionZoom${attributes}
|
|
80
51
|
) AS attributes
|
|
81
|
-
FROM ${table}
|
|
82
|
-
|
|
52
|
+
FROM ${table}
|
|
53
|
+
`;
|
|
83
54
|
}
|
|
84
|
-
getTile(table, geometry, x, y, z, zoomLevel, attributes, radius = 15
|
|
55
|
+
getTile(table, geometry, x, y, z, zoomLevel, attributes, radius = 15) {
|
|
85
56
|
return __awaiter(this, void 0, void 0, function* () {
|
|
86
57
|
const defaultConfig = {
|
|
87
58
|
sourceLayer: "points",
|
|
@@ -89,13 +60,15 @@ let MvtClusterService = exports.MvtClusterService = class MvtClusterService {
|
|
|
89
60
|
bufferSize: 256,
|
|
90
61
|
debug: false,
|
|
91
62
|
query: [],
|
|
92
|
-
getBaseQuery: this.
|
|
93
|
-
getTileQuery: this.
|
|
63
|
+
getBaseQuery: this.defaultGetBaseQuery,
|
|
64
|
+
getTileQuery: this.defaultGetTileQuery,
|
|
94
65
|
};
|
|
95
66
|
const query = (0, clusterbuster_1.createQueryForTile)(Object.assign(Object.assign({}, defaultConfig), { z,
|
|
96
67
|
x,
|
|
97
|
-
y, maxZoomLevel: zoomLevel, table,
|
|
98
|
-
|
|
68
|
+
y, maxZoomLevel: zoomLevel, table,
|
|
69
|
+
geometry,
|
|
70
|
+
radius,
|
|
71
|
+
attributes }));
|
|
99
72
|
try {
|
|
100
73
|
const result = yield this.connector.getConnection().query(query, {
|
|
101
74
|
type: sequelize_1.QueryTypes.SELECT,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MvtClusterService.js","sourceRoot":"","sources":["../../../src/output-gateway/services/MvtClusterService.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"MvtClusterService.js","sourceRoot":"","sources":["../../../src/output-gateway/services/MvtClusterService.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,iEAAwE;AACxE,0DAAqH;AACrH,wEAAqE;AAErE,mEAAiE;AACjE,6EAAwE;AAIjE,IAAM,iBAAiB,+BAAvB,MAAM,iBAAiB;IAC1B,YACyC,SAAqC,EAChD,MAAuB;QADJ,cAAS,GAAT,SAAS,CAAoB;QACxC,WAAM,GAAN,MAAM,CAAS;QA8C7C,wBAAmB,GAAiB,CAAC,EACzC,CAAC,EACD,CAAC,EACD,CAAC,EACD,KAAK,EACL,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,KAAK,GACS,EAAE,EAAE,CAAC;;YAEf,QAAQ;;;YAGR,YAAY,GAAG,CAAC,oBAAoB,UAAU;eAC3C,KAAK;;qCAEiB,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,QAAQ;cACxD,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;KAC7D,CAAC;QAEM,wBAAmB,GAAiB,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAc,EAAE,EAAE,CAAC;;yBAErG,QAAQ,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,MAAM,KAAK,UAAU;;;4CAGjD,UAAU;;eAEvC,KAAK;KACf,CAAC;IA1EC,CAAC;IAES,OAAO,CAChB,KAAa,EACb,QAAgB,EAChB,CAAS,EACT,CAAS,EACT,CAAS,EACT,SAAiB,EACjB,UAAoB,EACpB,MAAM,GAAG,EAAE;;YAEX,MAAM,aAAa,GAAG;gBAClB,WAAW,EAAE,QAAQ;gBACrB,MAAM,EAAE,IAAI;gBACZ,UAAU,EAAE,GAAG;gBACf,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,EAAE;gBACT,YAAY,EAAE,IAAI,CAAC,mBAAmB;gBACtC,YAAY,EAAE,IAAI,CAAC,mBAAmB;aACzC,CAAC;YAEF,MAAM,KAAK,GAAG,IAAA,kCAAkB,kCACzB,aAAa,KAChB,CAAC;gBACD,CAAC;gBACD,CAAC,EACD,YAAY,EAAE,SAAS,EACvB,KAAK;gBACL,QAAQ;gBACR,MAAM;gBACN,UAAU,IACZ,CAAC;YAEH,IAAI;gBACA,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,KAAK,CAAsB,KAAK,EAAE;oBAClF,IAAI,EAAE,sBAAU,CAAC,MAAM;iBAC1B,CAAC,CAAC;gBACH,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;aACxB;YAAC,OAAO,KAAK,EAAE;gBACZ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,6BAA6B,KAAK,EAAE,CAAC,CAAC;gBAC/D,MAAM,IAAI,6BAAY,CAAC,0BAA0B,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;aACpF;QACL,CAAC;KAAA;CAgCJ,CAAA;4BA/EY,iBAAiB;IAD7B,IAAA,qBAAU,GAAE;IAGJ,WAAA,IAAA,iBAAM,EAAC,qBAAS,CAAC,iBAAiB,CAAC,CAAA;IACnC,WAAA,IAAA,iBAAM,EAAC,qBAAS,CAAC,MAAM,CAAC,CAAA;;GAHpB,iBAAiB,CA+E7B"}
|
package/docs/openapi-output.yaml
CHANGED
|
@@ -66,7 +66,7 @@ paths:
|
|
|
66
66
|
required: true
|
|
67
67
|
schema:
|
|
68
68
|
type: string
|
|
69
|
-
example:
|
|
69
|
+
example: point
|
|
70
70
|
- name: attributes
|
|
71
71
|
in: query
|
|
72
72
|
description: List of attribute columns to include in the tile features.
|
|
@@ -79,7 +79,7 @@ paths:
|
|
|
79
79
|
- name: maxZoom
|
|
80
80
|
in: query
|
|
81
81
|
description: Maximum zoom level at which data from this table should be rendered.
|
|
82
|
-
required:
|
|
82
|
+
required: false
|
|
83
83
|
schema:
|
|
84
84
|
type: number
|
|
85
85
|
example: 12
|
|
@@ -89,15 +89,7 @@ paths:
|
|
|
89
89
|
required: false
|
|
90
90
|
schema:
|
|
91
91
|
type: number
|
|
92
|
-
default: 15
|
|
93
92
|
example: 15
|
|
94
|
-
- name: clusterPoint
|
|
95
|
-
in: query
|
|
96
|
-
description: Name of the column that will be used for clustering, use only if it differs from geometry. (e.g. calculating clustering for polygons can take longer and result in bigger clusters.)
|
|
97
|
-
required: false
|
|
98
|
-
schema:
|
|
99
|
-
type: string
|
|
100
|
-
example: point
|
|
101
93
|
responses:
|
|
102
94
|
200:
|
|
103
95
|
description: OK
|