@honua/react 0.1.12 → 0.1.14

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 (195) hide show
  1. package/columnar/apache-arrow.d.ts +17 -0
  2. package/columnar/apache-arrow.d.ts.map +1 -0
  3. package/columnar/apache-arrow.js +1036 -0
  4. package/columnar/batch-cache-conformance.d.ts +66 -0
  5. package/columnar/batch-cache-conformance.d.ts.map +1 -0
  6. package/columnar/batch-cache-conformance.js +317 -0
  7. package/columnar/batch-cache-indexeddb.d.ts +31 -0
  8. package/columnar/batch-cache-indexeddb.d.ts.map +1 -0
  9. package/columnar/batch-cache-indexeddb.js +148 -0
  10. package/columnar/batch-cache.d.ts +298 -0
  11. package/columnar/batch-cache.d.ts.map +1 -0
  12. package/columnar/batch-cache.js +757 -0
  13. package/columnar/geoarrow-aggregate.d.ts +178 -0
  14. package/columnar/geoarrow-aggregate.d.ts.map +1 -0
  15. package/columnar/geoarrow-aggregate.js +976 -0
  16. package/columnar/geoarrow-patch.d.ts +382 -0
  17. package/columnar/geoarrow-patch.d.ts.map +1 -0
  18. package/columnar/geoarrow-patch.js +1656 -0
  19. package/columnar/geoarrow-reproject.d.ts +22 -0
  20. package/columnar/geoarrow-reproject.d.ts.map +1 -0
  21. package/columnar/geoarrow-reproject.js +119 -0
  22. package/columnar/geoarrow-serialization.d.ts +68 -0
  23. package/columnar/geoarrow-serialization.d.ts.map +1 -0
  24. package/columnar/geoarrow-serialization.js +331 -0
  25. package/columnar/geoarrow-types.d.ts +271 -0
  26. package/columnar/geoarrow-types.d.ts.map +1 -0
  27. package/columnar/geoarrow-types.js +15 -0
  28. package/columnar/geoarrow.d.ts +52 -0
  29. package/columnar/geoarrow.d.ts.map +1 -0
  30. package/columnar/geoarrow.js +1469 -0
  31. package/columnar/index.d.ts +43 -0
  32. package/columnar/index.d.ts.map +1 -0
  33. package/columnar/index.js +29 -0
  34. package/columnar/operators.d.ts +70 -0
  35. package/columnar/operators.d.ts.map +1 -0
  36. package/columnar/operators.js +307 -0
  37. package/columnar/result.d.ts +369 -0
  38. package/columnar/result.d.ts.map +1 -0
  39. package/columnar/result.js +815 -0
  40. package/columnar/telemetry.d.ts +152 -0
  41. package/columnar/telemetry.d.ts.map +1 -0
  42. package/columnar/telemetry.js +265 -0
  43. package/columnar/transfer.d.ts +28 -0
  44. package/columnar/transfer.d.ts.map +1 -0
  45. package/columnar/transfer.js +669 -0
  46. package/columnar/types.d.ts +175 -0
  47. package/columnar/types.d.ts.map +1 -0
  48. package/columnar/types.js +22 -0
  49. package/columnar/worker.d.ts +157 -0
  50. package/columnar/worker.d.ts.map +1 -0
  51. package/columnar/worker.js +1059 -0
  52. package/connect-url-safety.d.ts +53 -0
  53. package/connect-url-safety.js +189 -0
  54. package/contract/pmtiles.d.ts +6 -5
  55. package/contract/pmtiles.d.ts.map +1 -1
  56. package/contract/pmtiles.js +30 -5
  57. package/contract/source.d.ts.map +1 -1
  58. package/contract/source.js +11 -8
  59. package/core/client.d.ts.map +1 -1
  60. package/core/client.js +87 -19
  61. package/core/deprecation-notice.d.ts +28 -0
  62. package/core/deprecation-notice.d.ts.map +1 -0
  63. package/core/deprecation-notice.js +22 -0
  64. package/core/esri-geojson.d.ts.map +1 -1
  65. package/core/esri-geojson.js +14 -8
  66. package/core/optional-grpc-peer.d.ts +15 -0
  67. package/core/optional-grpc-peer.d.ts.map +1 -0
  68. package/core/optional-grpc-peer.js +60 -0
  69. package/esri-compat/basemap-gallery.d.ts +2 -0
  70. package/esri-compat/basemap-gallery.d.ts.map +1 -1
  71. package/esri-compat/basemap-gallery.js +12 -0
  72. package/esri-compat/basemap.d.ts +4 -0
  73. package/esri-compat/basemap.d.ts.map +1 -1
  74. package/esri-compat/basemap.js +70 -0
  75. package/esri-compat/bookmarks.d.ts +2 -0
  76. package/esri-compat/bookmarks.d.ts.map +1 -1
  77. package/esri-compat/bookmarks.js +12 -0
  78. package/esri-compat/controls.d.ts +18 -0
  79. package/esri-compat/controls.d.ts.map +1 -1
  80. package/esri-compat/controls.js +120 -57
  81. package/esri-compat/directions.d.ts +4 -0
  82. package/esri-compat/directions.d.ts.map +1 -1
  83. package/esri-compat/directions.js +30 -20
  84. package/esri-compat/editor.d.ts +4 -0
  85. package/esri-compat/editor.d.ts.map +1 -1
  86. package/esri-compat/editor.js +16 -0
  87. package/esri-compat/esri-config.d.ts +2 -1
  88. package/esri-compat/esri-config.d.ts.map +1 -1
  89. package/esri-compat/feature-effect.d.ts +23 -0
  90. package/esri-compat/feature-effect.d.ts.map +1 -0
  91. package/esri-compat/feature-effect.js +12 -0
  92. package/esri-compat/feature-form.d.ts +6 -0
  93. package/esri-compat/feature-form.d.ts.map +1 -1
  94. package/esri-compat/feature-form.js +63 -0
  95. package/esri-compat/feature-layer.d.ts +21 -2
  96. package/esri-compat/feature-layer.d.ts.map +1 -1
  97. package/esri-compat/feature-layer.js +172 -1
  98. package/esri-compat/feature-table.d.ts +5 -0
  99. package/esri-compat/feature-table.d.ts.map +1 -1
  100. package/esri-compat/feature-table.js +23 -0
  101. package/esri-compat/identity-manager.d.ts +1 -1
  102. package/esri-compat/identity-manager.js +1 -1
  103. package/esri-compat/legend.d.ts +2 -0
  104. package/esri-compat/legend.d.ts.map +1 -1
  105. package/esri-compat/legend.js +98 -0
  106. package/esri-compat/locator.d.ts +1 -1
  107. package/esri-compat/locator.js +1 -1
  108. package/esri-compat/map-view-mount.d.ts +1 -0
  109. package/esri-compat/map-view-mount.d.ts.map +1 -1
  110. package/esri-compat/map-view-mount.js +46 -25
  111. package/esri-compat/map-view.d.ts +13 -0
  112. package/esri-compat/map-view.d.ts.map +1 -1
  113. package/esri-compat/map-view.js +94 -8
  114. package/esri-compat/map.d.ts +5 -1
  115. package/esri-compat/map.d.ts.map +1 -1
  116. package/esri-compat/map.js +10 -0
  117. package/esri-compat/measurement.d.ts +2 -0
  118. package/esri-compat/measurement.d.ts.map +1 -1
  119. package/esri-compat/measurement.js +14 -0
  120. package/esri-compat/point.d.ts +7 -0
  121. package/esri-compat/point.d.ts.map +1 -1
  122. package/esri-compat/point.js +33 -3
  123. package/esri-compat/popup.d.ts +2 -0
  124. package/esri-compat/popup.d.ts.map +1 -1
  125. package/esri-compat/popup.js +12 -0
  126. package/esri-compat/portal.d.ts +1 -1
  127. package/esri-compat/portal.js +1 -1
  128. package/esri-compat/print.d.ts +3 -0
  129. package/esri-compat/print.d.ts.map +1 -1
  130. package/esri-compat/print.js +15 -0
  131. package/esri-compat/search.d.ts +4 -0
  132. package/esri-compat/search.d.ts.map +1 -1
  133. package/esri-compat/search.js +25 -28
  134. package/esri-compat/sketch.d.ts +2 -0
  135. package/esri-compat/sketch.d.ts.map +1 -1
  136. package/esri-compat/sketch.js +12 -0
  137. package/esri-compat/widget-host.d.ts +46 -17
  138. package/esri-compat/widget-host.d.ts.map +1 -1
  139. package/esri-compat/widget-host.js +84 -20
  140. package/esri-compat/widget-shell-hosts.d.ts +61 -0
  141. package/esri-compat/widget-shell-hosts.d.ts.map +1 -0
  142. package/esri-compat/widget-shell-hosts.js +76 -0
  143. package/geocoding/index.d.ts +114 -0
  144. package/geocoding/index.d.ts.map +1 -0
  145. package/geocoding/index.js +293 -0
  146. package/geocoding/provider-http.d.ts +37 -0
  147. package/geocoding/provider-http.d.ts.map +1 -0
  148. package/geocoding/provider-http.js +93 -0
  149. package/geocoding/provider.d.ts +145 -0
  150. package/geocoding/provider.d.ts.map +1 -0
  151. package/geocoding/provider.js +41 -0
  152. package/geocoding/providers/honua.d.ts +28 -0
  153. package/geocoding/providers/honua.d.ts.map +1 -0
  154. package/geocoding/providers/honua.js +68 -0
  155. package/geocoding/providers/nominatim.d.ts +47 -0
  156. package/geocoding/providers/nominatim.d.ts.map +1 -0
  157. package/geocoding/providers/nominatim.js +105 -0
  158. package/geocoding/providers/pelias.d.ts +40 -0
  159. package/geocoding/providers/pelias.d.ts.map +1 -0
  160. package/geocoding/providers/pelias.js +115 -0
  161. package/geocoding/providers/photon.d.ts +39 -0
  162. package/geocoding/providers/photon.d.ts.map +1 -0
  163. package/geocoding/providers/photon.js +107 -0
  164. package/geometry/convert.d.ts +13 -0
  165. package/geometry/convert.d.ts.map +1 -0
  166. package/geometry/convert.js +12 -0
  167. package/geometry/index.d.ts +17 -0
  168. package/geometry/index.d.ts.map +1 -0
  169. package/geometry/index.js +15 -0
  170. package/geometry/internal.d.ts +25 -0
  171. package/geometry/internal.d.ts.map +1 -0
  172. package/geometry/internal.js +40 -0
  173. package/geometry/ops.d.ts +71 -0
  174. package/geometry/ops.d.ts.map +1 -0
  175. package/geometry/ops.js +147 -0
  176. package/geometry/project.d.ts +40 -0
  177. package/geometry/project.d.ts.map +1 -0
  178. package/geometry/project.js +88 -0
  179. package/geometry/types.d.ts +36 -0
  180. package/geometry/types.d.ts.map +1 -0
  181. package/geometry/types.js +12 -0
  182. package/kernel/renderer.d.ts +82 -0
  183. package/kernel/renderer.js +1 -0
  184. package/offline/digest.d.ts +15 -0
  185. package/offline/digest.js +58 -0
  186. package/offline/quota.d.ts +161 -0
  187. package/offline/quota.js +370 -0
  188. package/offline/types.d.ts +349 -0
  189. package/offline/types.js +75 -0
  190. package/package.json +14 -2
  191. package/realtime/odata-delta.d.ts +1 -1
  192. package/realtime/odata-delta.d.ts.map +1 -1
  193. package/realtime/odata-delta.js +38 -10
  194. package/widget-capabilities.d.ts +67 -0
  195. package/widget-capabilities.js +152 -0
@@ -1,4 +1,5 @@
1
1
  import { CompatEventBus, resolveCompatEventBus, safeInvokeCompatListener } from "./event-bus.js";
2
+ import { bindHonuaWidgetHost, pushWidgetHostState } from "./widget-host.js";
2
3
  export class FeatureTableHighlightIdsCompat {
3
4
  values;
4
5
  listeners;
@@ -151,12 +152,20 @@ export class FeatureTableCompat {
151
152
  watchListeners;
152
153
  refreshRevision;
153
154
  layerInternal;
155
+ widgetHost;
154
156
  get size() {
155
157
  return this.rows.length;
156
158
  }
157
159
  get layer() {
158
160
  return this.layerInternal;
159
161
  }
162
+ /** Field names the host pushes into `<honua-feature-table>`. */
163
+ get visibleFields() {
164
+ return (this.fieldConfigs ?? []).flatMap((config) => {
165
+ const name = config.name ?? config.field ?? config.fieldName;
166
+ return typeof name === "string" ? [name] : [];
167
+ });
168
+ }
160
169
  set layer(layer) {
161
170
  this.setLayer(layer);
162
171
  }
@@ -197,6 +206,8 @@ export class FeatureTableCompat {
197
206
  this.rows = [];
198
207
  this.watchListeners = new Map();
199
208
  this.refreshRevision = 0;
209
+ this.widgetHost = bindHonuaWidgetHost("honua-feature-table", this.container, this.eventBus);
210
+ this.pushWidgetHost();
200
211
  this.highlightIds.on("change", (event) => {
201
212
  this.notifyWatchers("highlightIds", this.highlightIds.toArray());
202
213
  this.eventBus.emit("feature-table.selection-changed", {
@@ -303,6 +314,12 @@ export class FeatureTableCompat {
303
314
  this.layerInternal = layer;
304
315
  this.notifyWatchers("layer", this.layerInternal);
305
316
  this.eventBus.emit("feature-table.layer-changed", { hasLayer: Boolean(layer) }, this);
317
+ this.pushWidgetHost();
318
+ }
319
+ setVisibleFields(fields) {
320
+ this.fieldConfigs = fields.map((name) => ({ name }));
321
+ this.notifyWatchers("fieldConfigs", this.fieldConfigs);
322
+ this.pushWidgetHost();
306
323
  }
307
324
  setWhere(where) {
308
325
  this.where = where;
@@ -395,6 +412,12 @@ export class FeatureTableCompat {
395
412
  extraParams: options.extraParams,
396
413
  });
397
414
  }
415
+ pushWidgetHost() {
416
+ pushWidgetHostState(this.widgetHost, {
417
+ layer: this.layer,
418
+ visibleFields: this.visibleFields,
419
+ });
420
+ }
398
421
  notifyWatchers(propertyName, value) {
399
422
  const listeners = this.watchListeners.get(propertyName);
400
423
  if (!listeners) {
@@ -44,7 +44,7 @@ declare class IdentityManagerCompatStore {
44
44
  * @example
45
45
  * ```ts
46
46
  * import { oauth2 } from "@honua/sdk-js/auth";
47
- * import { identityManager, OAuthInfoCompat } from "@honua/sdk-js/esri-compat";
47
+ * import { identityManager, OAuthInfoCompat } from "@honua/sdk-js/client-compat";
48
48
  *
49
49
  * const info = new OAuthInfoCompat({ appId: "app", portalUrl: "https://portal.example" });
50
50
  * identityManager.registerOAuthInfos([info]);
@@ -71,7 +71,7 @@ class IdentityManagerCompatStore {
71
71
  * @example
72
72
  * ```ts
73
73
  * import { oauth2 } from "@honua/sdk-js/auth";
74
- * import { identityManager, OAuthInfoCompat } from "@honua/sdk-js/esri-compat";
74
+ * import { identityManager, OAuthInfoCompat } from "@honua/sdk-js/client-compat";
75
75
  *
76
76
  * const info = new OAuthInfoCompat({ appId: "app", portalUrl: "https://portal.example" });
77
77
  * identityManager.registerOAuthInfos([info]);
@@ -16,6 +16,8 @@ export interface LegendItemCompat {
16
16
  contentType: string | undefined;
17
17
  width: number | undefined;
18
18
  height: number | undefined;
19
+ /** CSS color for a renderer swatch when the layer has no legend image. */
20
+ color?: string;
19
21
  }
20
22
  export interface LegendLayerGroupCompat {
21
23
  layer: unknown;
@@ -1 +1 @@
1
- {"version":3,"file":"legend.d.ts","sourceRoot":"","sources":["../../../src/esri-compat/legend.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EAIf,MAAM,gBAAgB,CAAC;AAGxB,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,SAAS,OAAO,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,gBAAgB,EAAE,CAAC;CAC7B;AAED,MAAM,MAAM,sBAAsB,GAAG,YAAY,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEzE,MAAM,WAAW,kBAAkB;IACjC,MAAM,IAAI,IAAI,CAAC;CAChB;AAED,qBAAa,YAAY;IACvB,SAAgB,IAAI,EAAE,OAAO,CAAC;IAC9B,SAAgB,GAAG,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IAC1B,SAAgB,QAAQ,EAAE,cAAc,CAAC;IACzC,SAAgB,aAAa,EAAE,OAAO,CAAC;IAChC,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,sBAAsB,CAAC;IACnC,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAEvC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiC;IAChE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAU;IACtC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6C;IAC5E,OAAO,CAAC,aAAa,CAA4B;IACjD,OAAO,CAAC,eAAe,CAAS;IAChC;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA8B;gBAEtC,OAAO,GAAE,mBAAwB;IAyCvC,IAAI,IAAI,OAAO,CAAC,YAAY,CAAC;IAiB7B,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC;IAQ5E,KAAK,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAAG,kBAAkB;IAe7E,OAAO,IAAI,OAAO,CAAC,SAAS,sBAAsB,EAAE,CAAC;IAqC3D,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAS3C,OAAO,IAAI,IAAI;IAQtB,4EAA4E;YAC9D,gBAAgB;IAe9B,OAAO,CAAC,mBAAmB;IAQ3B,OAAO,CAAC,mBAAmB;IAK3B,OAAO,CAAC,cAAc;CAUvB"}
1
+ {"version":3,"file":"legend.d.ts","sourceRoot":"","sources":["../../../src/esri-compat/legend.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EAIf,MAAM,gBAAgB,CAAC;AAGxB,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,SAAS,OAAO,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,0EAA0E;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,gBAAgB,EAAE,CAAC;CAC7B;AAED,MAAM,MAAM,sBAAsB,GAAG,YAAY,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEzE,MAAM,WAAW,kBAAkB;IACjC,MAAM,IAAI,IAAI,CAAC;CAChB;AAED,qBAAa,YAAY;IACvB,SAAgB,IAAI,EAAE,OAAO,CAAC;IAC9B,SAAgB,GAAG,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IAC1B,SAAgB,QAAQ,EAAE,cAAc,CAAC;IACzC,SAAgB,aAAa,EAAE,OAAO,CAAC;IAChC,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,sBAAsB,CAAC;IACnC,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAEvC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiC;IAChE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAU;IACtC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6C;IAC5E,OAAO,CAAC,aAAa,CAA4B;IACjD,OAAO,CAAC,eAAe,CAAS;IAChC;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA8B;gBAEtC,OAAO,GAAE,mBAAwB;IAyCvC,IAAI,IAAI,OAAO,CAAC,YAAY,CAAC;IAiB7B,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC;IAQ5E,KAAK,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAAG,kBAAkB;IAe7E,OAAO,IAAI,OAAO,CAAC,SAAS,sBAAsB,EAAE,CAAC;IAqC3D,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAS3C,OAAO,IAAI,IAAI;IAQtB,4EAA4E;YAC9D,gBAAgB;IAgB9B,OAAO,CAAC,mBAAmB;IAQ3B,OAAO,CAAC,mBAAmB;IAK3B,OAAO,CAAC,cAAc;CAUvB"}
@@ -152,6 +152,7 @@ export class LegendCompat {
152
152
  const items = this.items.flatMap((group, groupIndex) => group.entries.map((entry, entryIndex) => ({
153
153
  id: `${groupIndex}-${entryIndex}`,
154
154
  label: entry.label,
155
+ ...(entry.color ? { color: entry.color } : {}),
155
156
  ...(entry.imageData ? { iconUrl: `data:${entry.contentType ?? "image/png"};base64,${entry.imageData}` } : {}),
156
157
  })));
157
158
  await host.update((element) => {
@@ -180,6 +181,13 @@ export class LegendCompat {
180
181
  }
181
182
  async function extractLegendEntries(layer) {
182
183
  const response = await callLegendProvider(layer);
184
+ const provided = entriesFromLegendResponse(response);
185
+ if (provided.length > 0) {
186
+ return provided;
187
+ }
188
+ return entriesFromRenderer(layer);
189
+ }
190
+ function entriesFromLegendResponse(response) {
183
191
  if (!isRecord(response) || !Array.isArray(response.layers)) {
184
192
  return [];
185
193
  }
@@ -206,6 +214,96 @@ async function extractLegendEntries(layer) {
206
214
  }
207
215
  return entries;
208
216
  }
217
+ function entriesFromRenderer(layer) {
218
+ if (!isRecord(layer) || layer.legendEnabled === false || !isRecord(layer.renderer)) {
219
+ return [];
220
+ }
221
+ const layerName = toLayerTitle(layer, 0);
222
+ const renderer = layer.renderer;
223
+ const type = typeof renderer.type === "string" ? renderer.type : "";
224
+ if (type === "unique-value" && Array.isArray(renderer.uniqueValueInfos)) {
225
+ return swatchesFromInfos(renderer.uniqueValueInfos, layerName, "value");
226
+ }
227
+ if (type === "class-breaks" && Array.isArray(renderer.classBreakInfos)) {
228
+ return swatchesFromInfos(renderer.classBreakInfos, layerName, "class");
229
+ }
230
+ const color = colorFromSymbol(renderer.symbol);
231
+ if (!color) {
232
+ return [];
233
+ }
234
+ const label = typeof renderer.label === "string" && renderer.label.trim().length > 0 ? renderer.label : layerName;
235
+ return [swatch(layerName, label, color)];
236
+ }
237
+ function swatchesFromInfos(infos, layerName, labelKey) {
238
+ const entries = [];
239
+ for (const info of infos) {
240
+ if (!isRecord(info)) {
241
+ continue;
242
+ }
243
+ const color = colorFromSymbol(info.symbol);
244
+ if (!color) {
245
+ continue;
246
+ }
247
+ const label = typeof info.label === "string" && info.label.trim().length > 0
248
+ ? info.label
249
+ : labelKey === "value"
250
+ ? (textOf(info.value) ?? layerName)
251
+ : (rangeLabel(info.minValue, info.maxValue) ?? layerName);
252
+ entries.push(swatch(layerName, label, color));
253
+ }
254
+ return entries;
255
+ }
256
+ function swatch(layerName, label, color) {
257
+ return {
258
+ layerId: undefined,
259
+ layerName,
260
+ label,
261
+ imageData: undefined,
262
+ contentType: undefined,
263
+ width: 16,
264
+ height: 16,
265
+ color,
266
+ };
267
+ }
268
+ function colorFromSymbol(symbol) {
269
+ if (!isRecord(symbol)) {
270
+ return undefined;
271
+ }
272
+ return cssColor(symbol.color) ?? cssColor(isRecord(symbol.outline) ? symbol.outline.color : undefined);
273
+ }
274
+ function cssColor(value) {
275
+ if (typeof value === "string" && value.trim().length > 0) {
276
+ return value;
277
+ }
278
+ if (!Array.isArray(value) || value.length < 3) {
279
+ return undefined;
280
+ }
281
+ const [red, green, blue, alpha] = value;
282
+ if (typeof red !== "number" || typeof green !== "number" || typeof blue !== "number") {
283
+ return undefined;
284
+ }
285
+ if (typeof alpha === "number" && alpha < 255) {
286
+ return `rgba(${red}, ${green}, ${blue}, ${alpha / 255})`;
287
+ }
288
+ return `rgb(${red}, ${green}, ${blue})`;
289
+ }
290
+ function textOf(value) {
291
+ if (typeof value === "string" && value.length > 0) {
292
+ return value;
293
+ }
294
+ if (typeof value === "number" && Number.isFinite(value)) {
295
+ return String(value);
296
+ }
297
+ return undefined;
298
+ }
299
+ function rangeLabel(minValue, maxValue) {
300
+ const min = textOf(minValue);
301
+ const max = textOf(maxValue);
302
+ if (min && max) {
303
+ return `${min} – ${max}`;
304
+ }
305
+ return min ?? max;
306
+ }
209
307
  async function callLegendProvider(layer) {
210
308
  if (hasMethod(layer, "getLegend")) {
211
309
  return layer.getLegend();
@@ -182,7 +182,7 @@ export interface LocatorSearchSourceCompatOptions {
182
182
  *
183
183
  * @example
184
184
  * ```ts
185
- * import { LocatorCompat } from "@honua/sdk-js/esri-compat";
185
+ * import { LocatorCompat } from "@honua/sdk-js/client-compat";
186
186
  * import { photonGeocodingProvider } from "@honua/sdk-js/geocoding";
187
187
  *
188
188
  * const locator = new LocatorCompat({
@@ -35,7 +35,7 @@ const WEB_MERCATOR_HALF_CIRCUMFERENCE = 20037508.342789244;
35
35
  *
36
36
  * @example
37
37
  * ```ts
38
- * import { LocatorCompat } from "@honua/sdk-js/esri-compat";
38
+ * import { LocatorCompat } from "@honua/sdk-js/client-compat";
39
39
  * import { photonGeocodingProvider } from "@honua/sdk-js/geocoding";
40
40
  *
41
41
  * const locator = new LocatorCompat({
@@ -33,6 +33,7 @@ export interface CompatMapSurface {
33
33
  latitude: number;
34
34
  } | undefined;
35
35
  onClick(handler: (event: CompatMapClick) => void): void;
36
+ setBasemap(basemap: unknown): void;
36
37
  destroy(): void;
37
38
  }
38
39
  export declare function resolveViewContainer(container: unknown): HTMLElement | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"map-view-mount.d.ts","sourceRoot":"","sources":["../../../src/esri-compat/map-view-mount.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA6CH,MAAM,WAAW,cAAc;IAC7B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACtC;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IAC9E,WAAW,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI,CAAC;IAChD,WAAW,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI,CAAC;IAChD,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAAC;IACzC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;IACnF,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;IACrF,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,GAAG,IAAI,CAAC;IACxD,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,OAAO,GAAG,WAAW,GAAG,SAAS,CAShF;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAU/E;AAED,wBAAsB,cAAc,CAClC,SAAS,EAAE,WAAW,EACtB,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EACpC,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAkJvC;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAqB9E;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,GAAG,KAAK,CAAC;IAChE,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC,CAAC,CAuBD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAUvG"}
1
+ {"version":3,"file":"map-view-mount.d.ts","sourceRoot":"","sources":["../../../src/esri-compat/map-view-mount.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgDH,MAAM,WAAW,cAAc;IAC7B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACtC;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;IAC9E,WAAW,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI,CAAC;IAChD,WAAW,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI,CAAC;IAChD,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAAC;IACzC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;IACnF,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;IACrF,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,GAAG,IAAI,CAAC;IACxD,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACnC,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,OAAO,GAAG,WAAW,GAAG,SAAS,CAShF;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAY/E;AAED,wBAAsB,cAAc,CAClC,SAAS,EAAE,WAAW,EACtB,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,EACpC,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAsJvC;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAqB9E;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,GAAG,KAAK,CAAC;IAChE,IAAI,EAAE,SAAS,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC,CAAC,CAuBD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAUvG"}
@@ -17,6 +17,7 @@ const ESRI_BASEMAP_TILES = {
17
17
  "topo-vector": "https://services.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer/tile/{z}/{y}/{x}",
18
18
  gray: "https://services.arcgisonline.com/ArcGIS/rest/services/Canvas/World_Light_Gray_Base/MapServer/tile/{z}/{y}/{x}",
19
19
  "gray-vector": "https://services.arcgisonline.com/ArcGIS/rest/services/Canvas/World_Light_Gray_Base/MapServer/tile/{z}/{y}/{x}",
20
+ "dark-gray": "https://services.arcgisonline.com/ArcGIS/rest/services/Canvas/World_Dark_Gray_Base/MapServer/tile/{z}/{y}/{x}",
20
21
  oceans: "https://services.arcgisonline.com/ArcGIS/rest/services/Ocean/World_Ocean_Base/MapServer/tile/{z}/{y}/{x}",
21
22
  osm: OSM_TILES,
22
23
  };
@@ -31,15 +32,17 @@ export function resolveViewContainer(container) {
31
32
  return undefined;
32
33
  }
33
34
  export function rasterStyleForBasemap(basemap) {
34
- const tiles = tileTemplateForBasemap(basemap) ?? OSM_TILES;
35
- const attribution = tiles === OSM_TILES ? "© OpenStreetMap contributors" : "Esri, Maxar, Earthstar Geographics";
36
- return {
37
- version: 8,
38
- sources: {
39
- "honua-basemap": { type: "raster", tiles: [tiles], tileSize: 256, attribution },
40
- },
41
- layers: [{ id: "honua-basemap", type: "raster", source: "honua-basemap" }],
42
- };
35
+ const templates = tileTemplatesForBasemap(basemap);
36
+ const tiles = templates.length > 0 ? templates : [OSM_TILES];
37
+ const sources = {};
38
+ const layers = [];
39
+ for (const [index, template] of tiles.entries()) {
40
+ const id = index === 0 ? "honua-basemap" : `honua-basemap-${index}`;
41
+ const attribution = template === OSM_TILES ? "© OpenStreetMap contributors" : "Esri, Maxar, Earthstar Geographics";
42
+ sources[id] = { type: "raster", tiles: [template], tileSize: 256, attribution };
43
+ layers.push({ id, type: "raster", source: id });
44
+ }
45
+ return { version: 8, sources, layers };
43
46
  }
44
47
  export async function mountCompatMap(container, center, zoom, basemap) {
45
48
  let namespace;
@@ -161,6 +164,10 @@ export async function mountCompatMap(container, center, zoom, basemap) {
161
164
  }
162
165
  return { longitude: lngLat.lng, latitude: lngLat.lat };
163
166
  },
167
+ setBasemap(basemap) {
168
+ map.setStyle?.(rasterStyleForBasemap(basemap));
169
+ map.once?.("style.load", () => paint());
170
+ },
164
171
  onClick(handler) {
165
172
  map.on?.("click", (event) => {
166
173
  const x = event.point?.x;
@@ -232,33 +239,47 @@ export function coordinateToLonLat(pair, wkid) {
232
239
  }
233
240
  return [x, y];
234
241
  }
235
- function tileTemplateForBasemap(basemap) {
242
+ function tileTemplatesForBasemap(basemap) {
236
243
  if (typeof basemap === "string") {
237
- return ESRI_BASEMAP_TILES[basemap];
244
+ const known = ESRI_BASEMAP_TILES[basemap];
245
+ return known ? [known] : [];
238
246
  }
239
247
  if (!basemap || typeof basemap !== "object") {
240
- return undefined;
248
+ return [];
241
249
  }
242
250
  const record = basemap;
251
+ const fromLayers = tileTemplatesFromLayerLists(record.baseLayers, record.baseMapLayers, record.referenceLayers);
252
+ if (fromLayers.length > 0) {
253
+ return fromLayers;
254
+ }
255
+ // A portal item owns its tiles. The app id (WFRC uses "hybrid" as a URL key)
256
+ // must not select the well-known imagery template before that item loads.
257
+ if (record.portalItem !== undefined && record.portalItem !== null) {
258
+ return [];
259
+ }
243
260
  const id = typeof record.id === "string" ? record.id : typeof record.title === "string" ? record.title : undefined;
244
261
  if (id && ESRI_BASEMAP_TILES[id]) {
245
- return ESRI_BASEMAP_TILES[id];
246
- }
247
- const layers = Array.isArray(record.baseMapLayers)
248
- ? record.baseMapLayers
249
- : Array.isArray(record.baseLayers)
250
- ? record.baseLayers
251
- : [];
252
- for (const layer of layers) {
253
- if (!layer || typeof layer !== "object") {
262
+ return [ESRI_BASEMAP_TILES[id]];
263
+ }
264
+ return [];
265
+ }
266
+ function tileTemplatesFromLayerLists(...lists) {
267
+ const templates = [];
268
+ for (const list of lists) {
269
+ if (!Array.isArray(list)) {
254
270
  continue;
255
271
  }
256
- const url = layer.url;
257
- if (typeof url === "string" && /MapServer/i.test(url)) {
258
- return `${url.replace(/\/$/, "")}/tile/{z}/{y}/{x}`;
272
+ for (const layer of list) {
273
+ if (!layer || typeof layer !== "object") {
274
+ continue;
275
+ }
276
+ const url = layer.url;
277
+ if (typeof url === "string" && /MapServer/i.test(url)) {
278
+ templates.push(`${url.replace(/\/$/, "")}/tile/{z}/{y}/{x}`);
279
+ }
259
280
  }
260
281
  }
261
- return undefined;
282
+ return templates;
262
283
  }
263
284
  function geoJsonGeometry(geometry) {
264
285
  if (!geometry || typeof geometry !== "object") {
@@ -58,6 +58,16 @@ export interface MapViewCompatOptions {
58
58
  highlightOptions?: MapViewHighlightOptionsLike;
59
59
  spatialReference?: MapViewSpatialReferenceLike;
60
60
  popup?: unknown;
61
+ /** When false, a map click still emits `click` and does not open the popup. */
62
+ popupEnabled?: boolean;
63
+ /**
64
+ * Default UI widgets. Absent leaves the view chrome empty, because this
65
+ * compat view does not insert ArcGIS's built-in zoom until asked.
66
+ * `components` accepts `zoom`, `attribution`, and `compass`.
67
+ */
68
+ ui?: {
69
+ components?: readonly string[];
70
+ };
61
71
  eventBus?: CompatEventBus;
62
72
  }
63
73
  export interface MapViewGoToTarget {
@@ -262,6 +272,7 @@ export declare class MapViewCompat {
262
272
  spatialReference: MapViewSpatialReferenceLike | undefined;
263
273
  readonly eventBus: CompatEventBus;
264
274
  readonly popup: MapViewPopupCompat;
275
+ popupEnabled: boolean;
265
276
  readonly ui: MapViewUiCompat;
266
277
  /** Esri `MapView.graphics`, the overlay collection `view.graphics.add` writes. */
267
278
  readonly graphics: GraphicsLayerCompat;
@@ -292,6 +303,8 @@ export declare class MapViewCompat {
292
303
  private ensureLayerViews;
293
304
  private watchLayerPaint;
294
305
  private refreshOverlays;
306
+ private installDefaultUi;
307
+ private applyBasemap;
295
308
  private handleMapClick;
296
309
  private renderPopup;
297
310
  private placeUi;
@@ -1 +1 @@
1
- {"version":3,"file":"map-view.d.ts","sourceRoot":"","sources":["../../../src/esri-compat/map-view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"map-view.d.ts","sourceRoot":"","sources":["../../../src/esri-compat/map-view.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { AttributionCompat, CompassCompat, ZoomCompat } from "./controls.js";
1
2
  import { CompatEventBus, resolveCompatEventBus } from "./event-bus.js";
2
3
  import { FeatureFilterCompat } from "./feature-filter.js";
3
4
  import { GraphicsLayerCompat } from "./graphics-layer.js";
@@ -459,6 +460,7 @@ export class MapViewCompat {
459
460
  spatialReference;
460
461
  eventBus;
461
462
  popup;
463
+ popupEnabled;
462
464
  ui;
463
465
  /** Esri `MapView.graphics`, the overlay collection `view.graphics.add` writes. */
464
466
  graphics;
@@ -510,6 +512,7 @@ export class MapViewCompat {
510
512
  this.emit("popup-selection-change", selection);
511
513
  }
512
514
  }, extractPopupOptions(options.popup));
515
+ this.popupEnabled = options.popupEnabled ?? true;
513
516
  this.ui = new MapViewUiCompat(this.eventBus, (components) => {
514
517
  this.notifyWatchers("ui.components", components);
515
518
  this.placeUi(components);
@@ -535,6 +538,11 @@ export class MapViewCompat {
535
538
  }
536
539
  void this.refreshOverlays();
537
540
  });
541
+ mapBus?.on("map.basemap-changed", (event) => {
542
+ const basemap = event.payload?.basemap;
543
+ void this.applyBasemap(basemap);
544
+ });
545
+ this.installDefaultUi(options.ui);
538
546
  queueMicrotask(() => {
539
547
  if (this.mountRenderer && this.loadStatus === "not-loaded") {
540
548
  void this.load();
@@ -637,6 +645,14 @@ export class MapViewCompat {
637
645
  if (this.extentValue && this.centerValue === undefined) {
638
646
  surface.fitExtent(this.extentValue);
639
647
  }
648
+ // A portal item has no tiles until load(). String basemaps already painted
649
+ // in mountCompatMap, so only object basemaps take this second pass.
650
+ if (basemap && typeof basemap === "object") {
651
+ await this.applyBasemap(basemap);
652
+ }
653
+ // MapLibre replaces the container's children when the map is constructed,
654
+ // which removes default ui placed during the MapView constructor.
655
+ this.placeUi(this.ui.components);
640
656
  }
641
657
  applyWebMapViewpoint() {
642
658
  if (this.centerValue !== undefined || this.extentValue !== undefined) {
@@ -669,6 +685,7 @@ export class MapViewCompat {
669
685
  "graphics-layer.graphic-removed",
670
686
  "graphics-layer.graphics-cleared",
671
687
  "feature-layer.edits",
688
+ "feature-layer.feature-effect-changed",
672
689
  ]) {
673
690
  bus.on(type, () => {
674
691
  void this.refreshOverlays();
@@ -707,7 +724,7 @@ export class MapViewCompat {
707
724
  returnGeometry: true,
708
725
  extraParams: { resultRecordCount: 2000 },
709
726
  });
710
- drawn.push(...(result?.features ?? []));
727
+ drawn.push(...(result?.features ?? []).map((feature) => featureWithLayerSymbol(layer, feature)));
711
728
  }
712
729
  catch {
713
730
  // An unsupported where or a service error leaves that layer off the canvas.
@@ -716,6 +733,34 @@ export class MapViewCompat {
716
733
  this.painted = drawn;
717
734
  this.mapSurface.setOverlays(drawn);
718
735
  }
736
+ installDefaultUi(ui) {
737
+ const names = ui?.components;
738
+ if (!names) {
739
+ return;
740
+ }
741
+ for (const name of names) {
742
+ const widget = createDefaultUiWidget(name, this);
743
+ if (!widget) {
744
+ continue;
745
+ }
746
+ // ui.add's public parameter is a property bag. These constructors are class instances.
747
+ this.ui.add(widget, defaultUiPosition(name));
748
+ }
749
+ }
750
+ async applyBasemap(basemap) {
751
+ if (basemap && typeof basemap === "object" && typeof basemap.load === "function") {
752
+ try {
753
+ await basemap.load();
754
+ }
755
+ catch {
756
+ // load records the failure; still apply whatever layers are present
757
+ }
758
+ }
759
+ if (this.map?.basemap !== basemap) {
760
+ return;
761
+ }
762
+ this.mapSurface?.setBasemap(basemap);
763
+ }
719
764
  async handleMapClick(event) {
720
765
  const mapPoint = {
721
766
  x: event.longitude,
@@ -725,6 +770,9 @@ export class MapViewCompat {
725
770
  spatialReference: { wkid: 4326 },
726
771
  };
727
772
  this.emit("click", { ...event, mapPoint });
773
+ if (this.popupEnabled === false) {
774
+ return;
775
+ }
728
776
  const hit = await this.hitTest({ x: event.x, y: event.y, mapPoint });
729
777
  const graphic = hit.results[0]?.graphic;
730
778
  if (!graphic || typeof graphic !== "object") {
@@ -776,13 +824,14 @@ export class MapViewCompat {
776
824
  }
777
825
  const existing = container.querySelector(":scope > .honua-view-ui");
778
826
  const host = typeof HTMLElement !== "undefined" && existing instanceof HTMLElement ? existing : document.createElement("div");
779
- if (host.parentElement !== container) {
780
- host.className = "honua-view-ui";
781
- host.style.position = "absolute";
782
- host.style.inset = "0";
783
- host.style.pointerEvents = "none";
784
- container.append(host);
785
- }
827
+ host.className = "honua-view-ui";
828
+ host.style.position = "absolute";
829
+ host.style.inset = "0";
830
+ host.style.pointerEvents = "none";
831
+ host.style.zIndex = "2";
832
+ // MapLibre appends its canvas after widgets placed in the constructor.
833
+ // Appending again puts the overlay above that canvas.
834
+ container.append(host);
786
835
  host.replaceChildren();
787
836
  for (const record of components) {
788
837
  const slot = document.createElement("div");
@@ -1601,6 +1650,43 @@ function asRecord(value) {
1601
1650
  }
1602
1651
  return value;
1603
1652
  }
1653
+ const DEFAULT_UI_POSITIONS = {
1654
+ zoom: "top-left",
1655
+ compass: "top-left",
1656
+ attribution: "bottom-right",
1657
+ };
1658
+ function createDefaultUiWidget(name, view) {
1659
+ switch (name) {
1660
+ case "zoom":
1661
+ return new ZoomCompat({ view });
1662
+ case "compass":
1663
+ return new CompassCompat({ view });
1664
+ case "attribution":
1665
+ return new AttributionCompat({ view });
1666
+ default:
1667
+ return undefined;
1668
+ }
1669
+ }
1670
+ function defaultUiPosition(name) {
1671
+ return DEFAULT_UI_POSITIONS[name] ?? "manual";
1672
+ }
1673
+ function featureWithLayerSymbol(layer, feature) {
1674
+ if (!feature || typeof feature !== "object") {
1675
+ return feature;
1676
+ }
1677
+ if (feature.symbol) {
1678
+ return feature;
1679
+ }
1680
+ const provider = layer;
1681
+ if (typeof provider.symbolForFeature !== "function") {
1682
+ return feature;
1683
+ }
1684
+ const symbol = provider.symbolForFeature(feature);
1685
+ if (!symbol) {
1686
+ return feature;
1687
+ }
1688
+ return { ...feature, symbol };
1689
+ }
1604
1690
  function extractPopupOptions(popup) {
1605
1691
  if (!isRecord(popup)) {
1606
1692
  return {};