@honua/sdk-esri-compat 0.1.13 → 0.1.15

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/core/odata.js CHANGED
@@ -15,6 +15,7 @@
15
15
  * @module
16
16
  */
17
17
  import { createHonuaCacheState, honuaCacheValidatorFromHeaders, honuaMetadataRequestHeaders, isHonuaCacheEntryFresh, normalizeHonuaMetadataRequestOptions, withHonuaCacheState, withoutHonuaCacheState, } from "./cache-state.js";
18
+ import { HonuaHttpError } from "./errors.js";
18
19
  import { encodeOdataKeyPredicatePath } from "./odata-key-path.js";
19
20
  import { trimTrailingSlashes } from "./path-utils.js";
20
21
  const MAX_ODATA_METADATA_CHARACTERS = 4 * 1024 * 1024;
@@ -157,6 +158,7 @@ export class HonuaOdataEntitySet {
157
158
  let totalCount;
158
159
  let next;
159
160
  let firstPageParams = params;
161
+ const seenLinks = new Set();
160
162
  while (true) {
161
163
  const page = next
162
164
  ? await this.followNextLink(next, params.signal)
@@ -176,6 +178,7 @@ export class HonuaOdataEntitySet {
176
178
  break;
177
179
  if (!page.nextLink)
178
180
  break;
181
+ this.checkNextLink(page.nextLink, seenLinks);
179
182
  next = page.nextLink;
180
183
  }
181
184
  return totalCount === undefined ? { rows: collected } : { rows: collected, totalCount };
@@ -184,7 +187,9 @@ export class HonuaOdataEntitySet {
184
187
  async *queryStream(params = {}) {
185
188
  let page = await this.query(params);
186
189
  yield page;
190
+ const seenLinks = new Set();
187
191
  while (page.nextLink) {
192
+ this.checkNextLink(page.nextLink, seenLinks);
188
193
  page = await this.followNextLink(page.nextLink, params.signal);
189
194
  yield page;
190
195
  }
@@ -281,7 +286,9 @@ export class HonuaOdataEntitySet {
281
286
  ...(page.nextLink ? { nextLink: page.nextLink } : {}),
282
287
  ...(page.deltaLink ? { deltaLink: page.deltaLink } : {}),
283
288
  };
289
+ const seenLinks = new Set();
284
290
  while (page.nextLink) {
291
+ this.checkNextLink(page.nextLink, seenLinks);
285
292
  page = await this.followNextLink(page.nextLink, options.signal);
286
293
  yield {
287
294
  rows: page.rows,
@@ -338,6 +345,14 @@ export class HonuaOdataEntitySet {
338
345
  ...(sourceUpdatedAt ? { sourceUpdatedAt } : {}),
339
346
  };
340
347
  }
348
+ checkNextLink(nextLink, seen) {
349
+ const { path, query } = parseNextLink(nextLink, this.client.serverBaseUrl, this.basePath);
350
+ const normalized = JSON.stringify([path, Object.entries(query ?? {}).sort(([a], [b]) => a.localeCompare(b))]);
351
+ if (seen.has(normalized)) {
352
+ throw new HonuaHttpError(200, "OData paging returned a repeated nextLink.", { reason: "repeated-next-link" });
353
+ }
354
+ seen.add(normalized);
355
+ }
341
356
  async followNextLink(nextLink, signal) {
342
357
  // OData servers may emit either an absolute URL or a relative one.
343
358
  // Normalize through the same fetch path used by `query()` so retry,
@@ -457,7 +472,11 @@ function parseNextLink(link, serverBaseUrl, basePath) {
457
472
  const absolute = link.startsWith("http://") || link.startsWith("https://")
458
473
  ? new URL(link)
459
474
  : new URL(link, `${ensureTrailingSlash(serverBaseUrl)}${stripLeadingSlash(basePath)}/`);
460
- const path = absolute.pathname;
475
+ const serverBase = new URL(serverBaseUrl);
476
+ const serverPath = trimTrailingSlashes(serverBase.pathname);
477
+ const path = serverPath && absolute.pathname.startsWith(`${serverPath}/`)
478
+ ? absolute.pathname.slice(serverPath.length)
479
+ : absolute.pathname;
461
480
  const query = {};
462
481
  for (const [key, value] of absolute.searchParams)
463
482
  query[key] = value;
@@ -1233,18 +1252,72 @@ export function geometryToWkt(geometry, geometryType) {
1233
1252
  if (!Array.isArray(rings) || rings.length === 0) {
1234
1253
  throw new Error("odata: polygon spatialFilter has no rings");
1235
1254
  }
1236
- const inner = rings
1255
+ const parts = groupEsriPolygonRings(rings).map((part) => `(${part
1237
1256
  .map((ring) => `(${ring.map((pt) => wktPoint(pt, "polygon.ring")).join(", ")})`)
1238
- .join(", ");
1239
- return `POLYGON(${inner})`;
1257
+ .join(", ")})`);
1258
+ return parts.length === 1 ? `POLYGON${parts[0]}` : `MULTIPOLYGON(${parts.join(", ")})`;
1240
1259
  }
1241
1260
  if (geometryType === "esriGeometryPolyline") {
1242
1261
  const paths = geometry.paths;
1243
1262
  if (!Array.isArray(paths) || paths.length === 0) {
1244
1263
  throw new Error("odata: polyline spatialFilter has no paths");
1245
1264
  }
1246
- const path = paths[0];
1247
- return `LINESTRING(${path.map((pt) => wktPoint(pt, "polyline.path")).join(", ")})`;
1265
+ const serialized = paths.map((path) => `(${path.map((pt) => wktPoint(pt, "polyline.path")).join(", ")})`);
1266
+ return serialized.length === 1 ? `LINESTRING${serialized[0]}` : `MULTILINESTRING(${serialized.join(", ")})`;
1248
1267
  }
1249
1268
  throw new Error(`odata: spatialFilter.geometryType "${geometryType}" is not supported.`);
1250
1269
  }
1270
+ /** Group clockwise Esri exteriors and assign counter-clockwise holes by containment, independent of order. */
1271
+ export function groupEsriPolygonRings(rings) {
1272
+ const parts = [];
1273
+ const outerAreas = [];
1274
+ const holes = [];
1275
+ for (const ring of rings) {
1276
+ const area = ring.reduce((sum, point, index) => {
1277
+ const next = ring[(index + 1) % ring.length];
1278
+ if (!Array.isArray(point) || !Array.isArray(next))
1279
+ return sum;
1280
+ return sum + Number(point[0]) * Number(next[1]) - Number(next[0]) * Number(point[1]);
1281
+ }, 0);
1282
+ if (area < 0) {
1283
+ parts.push([ring]);
1284
+ outerAreas.push(Math.abs(area));
1285
+ }
1286
+ else
1287
+ holes.push({ ring, area: Math.abs(area) });
1288
+ }
1289
+ for (const { ring: hole, area } of holes) {
1290
+ let containing = -1;
1291
+ let smallestArea = Number.POSITIVE_INFINITY;
1292
+ for (let index = 0; index < parts.length; index++) {
1293
+ if (outerAreas[index] < smallestArea && ringContainsPoint(parts[index][0], hole[0])) {
1294
+ containing = index;
1295
+ smallestArea = outerAreas[index];
1296
+ }
1297
+ }
1298
+ if (containing >= 0)
1299
+ parts[containing].push(hole);
1300
+ // Preserve standalone rings with non-Esri winding, as the GeoJSON converter does.
1301
+ else {
1302
+ parts.push([hole]);
1303
+ outerAreas.push(area);
1304
+ }
1305
+ }
1306
+ return parts;
1307
+ }
1308
+ function ringContainsPoint(ring, point) {
1309
+ if (!point)
1310
+ return false;
1311
+ const x = Number(point[0]);
1312
+ const y = Number(point[1]);
1313
+ let inside = false;
1314
+ for (let index = 0, previous = ring.length - 1; index < ring.length; previous = index++) {
1315
+ const xi = Number(ring[index][0]);
1316
+ const yi = Number(ring[index][1]);
1317
+ const xj = Number(ring[previous][0]);
1318
+ const yj = Number(ring[previous][1]);
1319
+ if (yi > y !== yj > y && x < ((xj - xi) * (y - yi)) / (yj - yi) + xi)
1320
+ inside = !inside;
1321
+ }
1322
+ return inside;
1323
+ }
@@ -1,4 +1,5 @@
1
1
  import type { IJobRun } from "../contract/jobs.js";
2
+ import type { ErrorDetail } from "../gen/geospatial/v1/execution_types_pb.js";
2
3
  import type { HonuaOgcProcesses } from "./ogc-processes.js";
3
4
  import type { HonuaGeoprocessingService } from "./surfaces.js";
4
5
  import type { OgcProcessExecuteRequest } from "./types.js";
@@ -101,7 +102,7 @@ export interface GeospatialGrpcJobProgress {
101
102
  readonly updated_at?: number | bigint | string;
102
103
  readonly state?: unknown;
103
104
  }
104
- export interface GeospatialGrpcErrorDetail {
105
+ export interface GeospatialGrpcErrorDetail extends Partial<Pick<ErrorDetail, "code" | "message" | "details">> {
105
106
  readonly errorCode?: string;
106
107
  readonly error_code?: string;
107
108
  readonly message?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"process-runner.d.ts","sourceRoot":"","sources":["../../../src/core/process-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"process-runner.d.ts","sourceRoot":"","sources":["../../../src/core/process-runner.ts"],"names":[],"mappings":"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"}
@@ -218,7 +218,9 @@ function geospatialGrpcError(response) {
218
218
  if (!candidate)
219
219
  return undefined;
220
220
  return {
221
- code: candidate.errorCode ?? candidate.error_code ?? "GeospatialGrpcProcessError",
221
+ code: candidate.code !== undefined
222
+ ? String(candidate.code)
223
+ : (candidate.errorCode ?? candidate.error_code ?? "GeospatialGrpcProcessError"),
222
224
  message: candidate.message ?? "geospatial-grpc process execution failed.",
223
225
  details: candidate.details,
224
226
  };
@@ -14,7 +14,9 @@ export type HonuaServiceRequest = Omit<HonuaRawRequest, "path"> & {
14
14
  };
15
15
  export type HonuaFeatureLayerQueryRequest = Omit<QueryFeaturesRequest, "serviceId" | "layerId">;
16
16
  export type HonuaFeatureLayerQueryAllRequest = HonuaFeatureLayerQueryRequest & {
17
+ /** Per-page budget, replacing resultRecordCount while draining or streaming. Defaults to 2000. */
17
18
  pageSize?: number;
19
+ /** Maximum number of pages to request. Defaults to 100. */
18
20
  maxPages?: number;
19
21
  };
20
22
  export type HonuaFeatureLayerQueryCountRequest = Pick<QueryFeaturesRequest, "where" | "method"> & {
@@ -1 +1 @@
1
- {"version":3,"file":"surfaces.d.ts","sourceRoot":"","sources":["../../../src/core/surfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"surfaces.d.ts","sourceRoot":"","sources":["../../../src/core/surfaces.ts"],"names":[],"mappings":"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"}
package/core/surfaces.js CHANGED
@@ -165,39 +165,30 @@ export class HonuaFeatureLayer {
165
165
  ? Math.max(1, Math.trunc(request.maxPages))
166
166
  : 100;
167
167
  const startingOffset = normalizeOffset(request.resultOffset);
168
- // Use server streaming RPC when gRPC-Web transport is active
169
- if (this.client.isGrpcWeb) {
170
- const { pageSize: _pageSize, maxPages: _maxPages, ...queryRequest } = request;
171
- let pageCount = 0;
172
- const stream = this.client.queryFeaturesStream({
173
- serviceId: this.serviceId,
174
- layerId: this.layerId,
175
- ...queryRequest,
176
- resultRecordCount: queryRequest.resultRecordCount ?? pageSize,
177
- });
178
- for await (const page of stream) {
179
- yield page;
180
- pageCount += 1;
181
- if (pageCount >= maxPages) {
182
- break;
183
- }
184
- }
185
- return;
186
- }
168
+ // Native QueryFeaturesStream can apply a server-wide default total limit.
169
+ // Page the unary RPC so pageSize remains a batch budget on every transport.
170
+ let previousPageSignature;
187
171
  let offset = startingOffset;
188
172
  for (let page = 0; page < maxPages; page += 1) {
189
173
  const response = await this.queryFeatures({
190
174
  ...request,
191
- extraParams: {
192
- ...(request.extraParams ?? {}),
193
- resultOffset: offset,
194
- resultRecordCount: pageSize,
195
- },
175
+ extraParams: withoutPagingExtraParams(request.extraParams),
176
+ resultOffset: offset,
177
+ resultRecordCount: pageSize,
196
178
  });
197
179
  const pageFeatures = response.features ?? [];
198
180
  if (pageFeatures.length === 0) {
199
181
  break;
200
182
  }
183
+ if (this.client.isGrpcWeb) {
184
+ const signature = grpcPageOffsetSignature(response, pageFeatures);
185
+ if (previousPageSignature !== undefined && signature === previousPageSignature) {
186
+ throw new HonuaCapabilityNotSupportedError("stream", "grpc", `${this.serviceId}/${this.layerId}`, {
187
+ context: { reason: "gRPC transport repeated a page after resultOffset advanced.", resultOffset: offset },
188
+ });
189
+ }
190
+ previousPageSignature = signature;
191
+ }
201
192
  yield pageFeatures;
202
193
  offset += pageFeatures.length;
203
194
  if (!responseExceededTransferLimit(response) && pageFeatures.length < pageSize) {
@@ -211,7 +202,6 @@ export class HonuaFeatureLayer {
211
202
  layerId: this.layerId,
212
203
  where: request.where ?? "1=1",
213
204
  returnGeometry: false,
214
- outFields: "OBJECTID",
215
205
  method: request.method,
216
206
  extraParams: {
217
207
  returnCountOnly: true,
@@ -233,7 +223,6 @@ export class HonuaFeatureLayer {
233
223
  layerId: this.layerId,
234
224
  where: request.where ?? "1=1",
235
225
  returnGeometry: false,
236
- outFields: request.outFields ?? "OBJECTID",
237
226
  extraParams: {
238
227
  returnIdsOnly: true,
239
228
  ...request.extraParams,
@@ -1 +1 @@
1
- {"version":3,"file":"wfs-filter.d.ts","sourceRoot":"","sources":["../../../src/core/wfs-filter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wfs-filter.d.ts","sourceRoot":"","sources":["../../../src/core/wfs-filter.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,7 @@
20
20
  *
21
21
  * @module
22
22
  */
23
+ import { groupEsriPolygonRings } from "./odata.js";
23
24
  import { requireWfsAxisOrder } from "./wfs-axis-order.js";
24
25
  /**
25
26
  * Sentinel used by the `where` compiler when the input contains a construct
@@ -268,38 +269,45 @@ function geometryToGml(geometry, geometryType, srsName) {
268
269
  const paths = geometry.paths;
269
270
  if (!Array.isArray(paths) || paths.length === 0)
270
271
  return undefined;
271
- // Honua emits a single line; downstream curves are out of scope.
272
- const path = paths[0];
273
- if (!Array.isArray(path))
274
- return undefined;
275
- const coords = path
276
- .map((p) => (Array.isArray(p) ? formatCoord(p[0], p[1], axisOrder) : ""))
277
- .filter(Boolean)
278
- .join(" ");
279
- if (!coords)
272
+ const lines = paths.map((path) => {
273
+ if (!Array.isArray(path))
274
+ return undefined;
275
+ const coords = path
276
+ .map((p) => (Array.isArray(p) ? formatCoord(p[0], p[1], axisOrder) : ""))
277
+ .filter(Boolean)
278
+ .join(" ");
279
+ return coords ? `<gml:LineString${srsAttr}><gml:posList>${coords}</gml:posList></gml:LineString>` : undefined;
280
+ });
281
+ if (lines.some((line) => line === undefined))
280
282
  return undefined;
281
- return `<gml:LineString${srsAttr}><gml:posList>${coords}</gml:posList></gml:LineString>`;
283
+ return lines.length === 1
284
+ ? lines[0]
285
+ : `<gml:MultiCurve${srsAttr}>${lines.map((line) => `<gml:curveMember>${line}</gml:curveMember>`).join("")}</gml:MultiCurve>`;
282
286
  }
283
287
  case "esriGeometryPolygon": {
284
288
  const rings = geometry.rings;
285
289
  if (!Array.isArray(rings) || rings.length === 0)
286
290
  return undefined;
287
- const exterior = ringToPosList(rings[0], axisOrder);
288
- if (!exterior)
291
+ const polygons = groupEsriPolygonRings(rings).map((part) => polygonPartToGml(part, srsAttr, axisOrder));
292
+ if (polygons.some((polygon) => polygon === undefined))
289
293
  return undefined;
290
- const interiors = [];
291
- for (let i = 1; i < rings.length; i += 1) {
292
- const inner = ringToPosList(rings[i], axisOrder);
293
- if (!inner)
294
- return undefined;
295
- interiors.push(`<gml:interior><gml:LinearRing><gml:posList>${inner}</gml:posList></gml:LinearRing></gml:interior>`);
296
- }
297
- return `<gml:Polygon${srsAttr}><gml:exterior><gml:LinearRing><gml:posList>${exterior}</gml:posList></gml:LinearRing></gml:exterior>${interiors.join("")}</gml:Polygon>`;
294
+ return polygons.length === 1
295
+ ? polygons[0]
296
+ : `<gml:MultiSurface${srsAttr}>${polygons.map((polygon) => `<gml:surfaceMember>${polygon}</gml:surfaceMember>`).join("")}</gml:MultiSurface>`;
298
297
  }
299
298
  default:
300
299
  return undefined;
301
300
  }
302
301
  }
302
+ function polygonPartToGml(rings, srsAttr, axisOrder) {
303
+ const exterior = ringToPosList(rings[0], axisOrder);
304
+ if (!exterior)
305
+ return undefined;
306
+ const interiors = rings.slice(1).map((ring) => ringToPosList(ring, axisOrder));
307
+ if (interiors.some((ring) => ring === undefined))
308
+ return undefined;
309
+ return `<gml:Polygon${srsAttr}><gml:exterior><gml:LinearRing><gml:posList>${exterior}</gml:posList></gml:LinearRing></gml:exterior>${interiors.map((ring) => `<gml:interior><gml:LinearRing><gml:posList>${ring}</gml:posList></gml:LinearRing></gml:interior>`).join("")}</gml:Polygon>`;
310
+ }
303
311
  function ringToPosList(ring, axisOrder) {
304
312
  if (!Array.isArray(ring) || ring.length < 3)
305
313
  return undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@honua/sdk-esri-compat",
3
- "version": "0.1.13",
3
+ "version": "0.1.15",
4
4
  "description": "ArcGIS JS API compatibility layer for ArcGIS migration from Esri apps to the open Honua + MapLibre stack",
5
5
  "keywords": [
6
6
  "gis",
@@ -46,7 +46,7 @@
46
46
  "proj4": "^2.20.9"
47
47
  },
48
48
  "peerDependencies": {
49
- "@honua/sdk": "0.1.13",
49
+ "@honua/sdk": "0.1.15",
50
50
  "@bufbuild/protobuf": "^2.0.0",
51
51
  "@connectrpc/connect": "^2.0.0",
52
52
  "@connectrpc/connect-web": "^2.0.0",
@@ -1 +1 @@
1
- {"version":3,"file":"odata-v1.d.ts","sourceRoot":"","sources":["../../../src/query-planner/odata-v1.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,+BAA+B,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAIpH,OAAO,KAAK,EACV,cAAc,EACd,oBAAoB,EACpB,4BAA4B,EAC5B,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAGpB,iFAAiF;AACjF,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,qBAAqB,EAAE,KAAK,EAAE,cAAc,GAAG,oBAAoB,CAqH5G;AAED;;;;GAIG;AACH,eAAO,MAAM,0BAA0B;;mBAEtB,+BAA+B,CAAC,qBAAqB,EAAE,cAAc,CAAC,GAAG,4BAA4B;EAGpH,CAAC;AAEH,kFAAkF;AAClF,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,oBAAoB,EAC9B,SAAS,EAAE,4BAA4B,GACtC,4BAA4B,CAsB9B"}
1
+ {"version":3,"file":"odata-v1.d.ts","sourceRoot":"","sources":["../../../src/query-planner/odata-v1.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,+BAA+B,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAIpH,OAAO,KAAK,EACV,cAAc,EACd,oBAAoB,EACpB,4BAA4B,EAC5B,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAGpB,iFAAiF;AACjF,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,qBAAqB,EAAE,KAAK,EAAE,cAAc,GAAG,oBAAoB,CAuH5G;AAED;;;;GAIG;AACH,eAAO,MAAM,0BAA0B;;mBAEtB,+BAA+B,CAAC,qBAAqB,EAAE,cAAc,CAAC,GAAG,4BAA4B;EAGpH,CAAC;AAEH,kFAAkF;AAClF,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,oBAAoB,EAC9B,SAAS,EAAE,4BAA4B,GACtC,4BAA4B,CAsB9B"}
@@ -77,7 +77,9 @@ export function compileOdataQuery(source, query) {
77
77
  return {
78
78
  compiler: "odata-v4-query-v1",
79
79
  entitySet: source.entitySet,
80
- ...(filterParts.length > 0 ? { filter: filterParts.join(" and ") } : {}),
80
+ ...(filterParts.length > 0
81
+ ? { filter: filterParts.length === 1 ? filterParts[0] : filterParts.map((part) => `(${part})`).join(" and ") }
82
+ : {}),
81
83
  ...(projection && projection.select.length > 0 ? { select: projection.select } : {}),
82
84
  ...(projection && projection.expand.length > 0 ? { expand: projection.expand } : {}),
83
85
  ...(query.orderBy && query.orderBy.length > 0