@geolibre/core 3.5.0 → 3.5.2
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.d.mts +62 -152
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +156 -114
- package/dist/index.mjs.map +1 -1
- package/dist/{project-diff-CyR4d8Sl.d.mts → project-diff-BJDslj2U.d.mts} +32 -32
- package/dist/project-diff-BJDslj2U.d.mts.map +1 -0
- package/dist/{project-diff-CPb5ZXb_.mjs → project-diff-CSG1AgSK.mjs} +64 -66
- package/dist/project-diff-CSG1AgSK.mjs.map +1 -0
- package/dist/worker-safe.d.mts +1 -1
- package/dist/worker-safe.mjs +1 -1
- package/package.json +3 -3
- package/dist/project-diff-CPb5ZXb_.mjs.map +0 -1
- package/dist/project-diff-CyR4d8Sl.d.mts.map +0 -1
package/dist/index.mjs
CHANGED
|
@@ -1,11 +1,62 @@
|
|
|
1
|
-
import { $ as GEOCODING_PROVIDERS, $i as
|
|
1
|
+
import { $ as GEOCODING_PROVIDERS, $i as getPlanetaryBasemapById, $n as groupMemberIndices, $r as getBuildEnvironment, $t as CESIUM_BING_AERIAL_ASSET_ID, A as normalizeSecondaryMapViews, Aa as styleValue, Ai as sameCesiumImagery, An as createStyleLibraryEntryId, Ar as isValidMetadataDate, At as selectedGeocodingLocator, B as storyMapHasContent, Bi as ELLIPSOIDS, Bn as normalizePrintLayoutConfig, Br as evaluateMapExpression, Bt as PROJECT_CREDENTIAL_FIELDS, C as normalizeModelGraph, Ca as OPENFREEMAP_BASEMAPS, Ci as parseMapCrsEpsgCode, Cn as isGeoArrowBatch, Cr as reapplyLayerJoins, Ct as normalizeArcGISLocatorUrl, D as normalizeProcessingHistory, Da as detectNonGeographicCoordinates, Di as availableCesiumBasemap, Dn as STYLE_LIBRARY_BUNDLE_TYPE, Dr as STAC_PROCESSING_EXTENSION, Dt as parseArcGISSuggestions, E as normalizePrimaryRenderer, Ea as SQL_QUERY_SOURCE_KIND, Ei as CESIUM_BASEMAPS, En as RAMP_STYLE_KEYS, Er as stripVirtualFieldColumns, Et as parseArcGISLocatorInfo, F as projectFromStore, Fi as getRegionalBasemapById, Fn as sanitizeLayerStylePatch, Fr as parseMetadataKeywords, Ft as DEFAULT_STORY_CHAPTER_DURATION_SECONDS, G as DEFAULT_REVERSE_GEOCODE_ENDPOINT, Gi as bodyLengthToEarth, Gn as scrubCommentsForRemovedLayers, Gr as removeTrailingJsonCommas, Gt as redactCredentials, H as CARTOCIUDAD_PUBLIC_HOST, Hi as PLANETARY_BASEMAP_GROUPS, Hn as scrubPrintLayoutForLayers, Hr as inferFieldTypes, Ht as isCredentialFieldName, I as resolveMapGrid, Ii as getRegionalBasemapByStyleUrl, In as serializeStyleLibrary, Ir as stacAssetMediaType, It as MAX_STORY_CHAPTER_DURATION_SECONDS, J as GEOCODE_LAT_KEY, Ji as getActiveBodyRadiusRatio, Jn as DEFAULT_LAYER_GROUP_OPACITY, Jr as SELECTION_MODES, Jt as setRegistryPublishableSettings, K as GEOCODE_ATTRIBUTE_PREFIX, Ki as earthAreaToBody, Kn as scrubLegendForRemovedLayers, Kr as substituteExpressionVariables, Kt as redactProjectCredentials, L as serializeProject, Li as isRegionalBasemapSentinel, Ln as DEFAULT_PRINT_LAYOUT, Lr as validateLayerDescriptiveMetadata, Lt as MIN_STORY_CHAPTER_DURATION_SECONDS, M as normalizeWidgets, Mi as REGIONAL_BASEMAPS, Mn as isStyleLibraryTargetLayer, Mr as isValidMetadataUrl, Mt as setGeocodingTokenProvider, N as parseProject, Ni as REGIONAL_BASEMAP_GROUPS, Nn as normalizeStyleLibraryEntries, Nr as metadataDateToRfc3339, Nt as shouldThrottle, O as normalizeProjectComments, Oa as isDuckDBQueryLayer, Oi as basemapToCesiumImagery, On as STYLE_LIBRARY_BUNDLE_VERSION, Or as STAC_VERSION, Ot as resolveGeocoderConfig, P as portableWmsTileUrl, Pi as REGIONAL_BASEMAP_SENTINEL_PREFIX, Pn as parseStyleLibrary, Pr as normalizeLayerDescriptiveMetadata, Pt as unmatchedGeocodeFeature, Q as GEOCODE_STATUS_KEY, Qi as getEllipsoid, Qn as effectiveLayerRenderState, Qr as getArcgisApiKey, Qt as resolveHeaderReferences, R as serializeProjectWithLayerCache, Ri as DEFAULT_ELLIPSOID_ID, Rn as createDefaultPrintLayout, Rr as EXPRESSION_FUNCTION_CATEGORIES, Rt as normalizeStoryChapterDurationSeconds, S as normalizeMapViewState, Sa as NETCDF_IMAGE_SOURCE_KIND, Si as normalizeMapCrs, Sn as geoArrowToFeatureCollection, Sr as layerJoinKey, St as nominatimReverseResultToDisplay, T as normalizeObiaWorkbench, Ta as PROTOMAPS_BASEMAPS, Ti as normalizeArcgisWkid, Tn as BUILT_IN_STYLE_PRESETS, Tr as applyLayerVirtualFields, Tt as normalizeGeocodingProviderId, U as DEFAULT_FORWARD_GEOCODE_ENDPOINT, Ui as PLANETARY_BASEMAP_SENTINEL_PREFIX, Un as scrubPrintLayoutForRemovedLayers, Ur as isStyleSpecColor, Ut as isCredentialUrlParam, V as CARTOCIUDAD_MIN_INTERVAL_MS, Vi as PLANETARY_BASEMAPS, Vn as printLayoutConfigsEqual, Vr as formatExpressionPreviewValue, Vt as PUBLISHABLE_PLUGIN_SETTINGS, W as DEFAULT_GEOCODING_PROVIDER_ID, Wi as PLANET_SWITCHER_OPTIONS, Wn as removedLayerIdSet, Wr as matchFeaturesByExpression, Wt as redactConfigurationCredentials, X as GEOCODE_PROVIDER_KEY, Xi as getActiveMeanRadiusMeters, Xn as buildLayerPanelUnits, Xr as featureSelectionId, Xt as hasHeaderReferences, Y as GEOCODE_LON_KEY, Yi as getActiveEllipsoid, Yn as applyGroupEffects, Yr as applySelectionMode, Yt as allowsCredentialHeaders, Z as GEOCODE_SCORE_KEY, Zi as getActiveSemiMajorAxisMeters, Zn as buildLayerTree, Zr as invertSelection, Zt as isHeaderReferenceOnly, _ as normalizeBookmarkGroups, _a as LAYER_TYPES, _i as MAP_CRS_CHANGE_EVENT, _n as czmlSource, _r as resolveRolePrivileges, _t as geocoderSupportsSuggest, a as DEFAULT_PROJECT_NAME, aa as DEFAULT_BASEMAP, ai as getRuntimeEnvironment, an as cesiumIonAssetKind, ar as reorderLayerGroupInPanel, at as arcgisLocatorInputField, b as normalizeLegendConfig, ba as MAX_PROCESSING_HISTORY, bi as deriveTileMatrixSet, bn as computeGeoArrowBBox, br as cascadeLayerJoinRefresh, bt as nextDelayMs, c as createDefaultMapView, ca as DEFAULT_LAYER_STYLE, ci as decodePolyline, cn as isCesiumOnlyLayer, cr as ROLE_PRIVILEGES, ct as csvRowsToGeocodeRequests, d as createProjectTemplate, da as DEFAULT_PRIMARY_RENDERER, di as geoJSONToPolylineStr, dn as cesiumKmlSource, dr as hasAppPrivilege, dt as geocodeMatchToFeature, ea as getPlanetaryBasemapByStyleUrl, ei as getCesiumIonToken, en as CESIUM_GOOGLE_PHOTOREALISTIC_ASSET_ID, er as layerGroupDepth, et as GeocoderServiceError, f as detachProjectCopy, fa as DEFAULT_PROJECT_PREFERENCES, fi as polylineStrToGeoJSON, fn as createCesiumKmlLayer, fr as inferLayerCapabilities, ft as geocodeReverse, g as normalizeBlankBackgroundColor, ga as LARGE_VECTOR_FEATURE_THRESHOLD, gi as transformGeojsonElevation, gn as createCzmlLayer, gr as resolveLayerCapabilities, gt as geocoderSupportsReverse, h as isSessionOnlyLayer, ha as DUCKDB_VECTOR_ROUTE_BYTES, hi as horizontalBbox, hn as CZML_SOURCE_KIND, hr as normalizeLayerCapabilities, ht as geocoderNeedsApiKey, i as previewValue, ia as BLEND_MODES, ii as getProtomapsStyleUrl, in as cesiumIonAssetId, ir as normalizeGroupContiguity, it as PUBLIC_GEOCODE_ROW_CAP, j as normalizeStoryMap, ji as CHINA_BASEMAPS, jn as extractStyleLibraryStyle, jr as isValidMetadataEmail, jt as setGeocodingFetch, k as normalizeProjectInteraction, ka as shouldUseTiledRendering, ki as normalizeCesiumBasemap, kn as SYMBOL_STYLE_KEYS, kr as buildLayerStacItem, kt as rowCap, l as createEmptyProject, la as DEFAULT_LEGEND_CONFIG, li as decodePolylineDetailed, ln as parseCesiumIonAssetId, lr as appPrivilegeReason, lt as fetchArcGISLocatorInfo, m as isAllowedPluginManifestUrl, ma as DUCKDB_VECTOR_FEATURE_WARN_COUNT, mi as geojsonHasZCoordinates, mn as CZML_QUICK_PICKS, mr as normalizeAppPrivileges, mt as geocoderMinIntervalMs, n as diffProjects, na as setActiveEllipsoidId, ni as getMapboxAccessToken, nn as CESIUM_ION_SOURCE_KIND, nr as layerGroupSortability, nt as NOMINATIM_MIN_INTERVAL_MS, o as MAX_PROJECT_BOOKMARKS, oa as DEFAULT_BLEND_MODE, oi as getSpatialExtensionPath, on as createCesiumIonLayer, or as sortLayerGroupInPanel, ot as buildForwardGeocodeUrl, p as hydrateProjectLayer, pa as DEFAULT_STORY_MAP, pi as unescapePolyline, pn as isCesiumKmlLayer, pr as intersectPrivileges, pt as geocodeSuggest, q as GEOCODE_DISPLAY_NAME_KEY, qi as earthLengthToBody, qn as scrubWidgetsForRemovedLayers, qr as validateMapExpression, qt as redactUrlCredentials, r as jsonValuesEqual, ra as BLANK_BASEMAP, ri as getProtomapsApiKey, rn as CESIUM_OSM_BUILDINGS_ASSET_ID, rr as layerPanelGroupHeaders, rt as NOMINATIM_PUBLIC_HOST, s as applyProjectToStore, sa as DEFAULT_DASHBOARD_COLUMNS, si as batchDecodePolylines, sn as isCesiumIonLayer, sr as ALL_APP_PRIVILEGES, st as buildReverseGeocodeUrl, t as diffFeatureCollections, ta as meanRadiusMeters, ti as getGoogleMapsApiKey, tn as CESIUM_ION_QUICK_PICKS, tr as layerGroupMoveability, tt as GeocoderUnsupportedError, u as createProjectLayerSerializationCache, ua as DEFAULT_MAP_GRID_LAYOUT, ui as encodePolyline, un as CESIUM_KML_SOURCE_KIND, ur as createDefaultAppCapabilities, ut as geocodeForward, v as normalizeBookmarks, va as MAX_DASHBOARD_COLUMNS, vi as MAP_CRS_PRESETS, vn as isCzmlLayer, vr as applyJoinsToLayer, vt as getGeocoderConfig, w as normalizeModels, wa as PROJECT_VERSION, wi as ARCGIS_PROJECTION_PRESETS, wn as withRasterSourceDefaults, wr as stripJoinFields, wt as normalizeGeocodingLocator, x as normalizeMapLayout, xa as MIN_DASHBOARD_COLUMNS, xi as getMapCrsPreset, xn as featureCollectionToGeoArrow, xr as collectTransitiveJoinSourceIds, xt as nominatimResultToFeature, y as normalizeDashboardColumns, ya as MAX_MAP_GRID_DIM, yi as adaptBboxTemplateToCrs, yn as parseCzml, yr as applyLayerJoins, yt as getGeocodingProvider, z as serializeProjectWithLayerCacheAsync, zi as EARTH_MEAN_RADIUS_METERS, zn as isDefaultPrintLayout, zr as compileFeatureExpression, zt as MAX_REDACT_DEPTH } from "./project-diff-CSG1AgSK.mjs";
|
|
2
2
|
import { Color, featureFilter, latest, normalizePropertyExpression } from "@maplibre/maplibre-gl-style-spec";
|
|
3
3
|
import { create } from "zustand";
|
|
4
4
|
import { temporal } from "zundo";
|
|
5
5
|
import { v4 } from "uuid";
|
|
6
6
|
import { shallow } from "zustand/shallow";
|
|
7
7
|
import { useShallow } from "zustand/react/shallow";
|
|
8
|
-
|
|
8
|
+
// src/tile-address.ts
|
|
9
|
+
/** `"tms"` is the only scheme that flips a row. Anything else is XYZ. */
|
|
10
|
+
function asTileScheme(scheme) {
|
|
11
|
+
return scheme === "tms" ? "tms" : "xyz";
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Express a `{-y}` row flip in the form MapLibre understands.
|
|
15
|
+
*
|
|
16
|
+
* `{-y}` flips the row. It does not select TMS. `scheme: "tms"` is its own
|
|
17
|
+
* flip, so a template that has both is requested with an XYZ row. The stored
|
|
18
|
+
* template and scheme stay as the user wrote them; callers apply this when
|
|
19
|
+
* they build a render source. A template may use `{y}` or `{-y}`, not both,
|
|
20
|
+
* and every template in one list must use the same row token. One shared
|
|
21
|
+
* scheme applies to the whole list, so a plain `{y}` template cannot sit
|
|
22
|
+
* beside a `{-y}` template.
|
|
23
|
+
*/
|
|
24
|
+
function resolveTileAddress(tiles, scheme = "xyz") {
|
|
25
|
+
let flipped = false;
|
|
26
|
+
let plain = false;
|
|
27
|
+
const next = tiles.map((tile) => {
|
|
28
|
+
const flipY = tile.includes("{-y}");
|
|
29
|
+
const plainY = tile.includes("{y}");
|
|
30
|
+
if (flipY && plainY) throw new Error("A tile template can use {y} or {-y}, not both.");
|
|
31
|
+
if (flipY) flipped = true;
|
|
32
|
+
if (plainY) plain = true;
|
|
33
|
+
return flipY ? tile.replaceAll("{-y}", "{y}") : tile;
|
|
34
|
+
});
|
|
35
|
+
if (flipped && plain) throw new Error("A tile list can use {y} or {-y}, not both.");
|
|
36
|
+
return {
|
|
37
|
+
tiles: next,
|
|
38
|
+
scheme: flipped ? scheme === "tms" ? "xyz" : "tms" : scheme
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* The row a layer's templates should request.
|
|
43
|
+
*
|
|
44
|
+
* XYZ layers run through {@link resolveTileAddress}. Every other layer keeps
|
|
45
|
+
* its templates and only normalizes `scheme`.
|
|
46
|
+
*/
|
|
47
|
+
function resolveLayerTileAddress(layer, tiles) {
|
|
48
|
+
const scheme = asTileScheme(layer.source?.scheme);
|
|
49
|
+
if (layer.type !== "xyz") return {
|
|
50
|
+
tiles: [...tiles],
|
|
51
|
+
scheme
|
|
52
|
+
};
|
|
53
|
+
return resolveTileAddress(tiles, scheme);
|
|
54
|
+
}
|
|
55
|
+
/** True when {@link resolveTileAddress} rejected a mixed `{y}` / `{-y}` template. */
|
|
56
|
+
function isTileAddressError(error) {
|
|
57
|
+
return error instanceof Error && error.message.includes("{y} or {-y}");
|
|
58
|
+
}
|
|
59
|
+
// src/diagram.ts
|
|
9
60
|
/**
|
|
10
61
|
* Hard cap on how many features get a diagram. Each diagram is rasterized into
|
|
11
62
|
* an icon atlas, so an unbounded layer (e.g. a million-point parquet) would
|
|
@@ -210,8 +261,7 @@ function diagramPixelSize(datum, style, maxSizeValue) {
|
|
|
210
261
|
if (maxSizeValue <= 0 || datum.sizeValue <= 0) return 8;
|
|
211
262
|
return Math.max(8, size * Math.sqrt(datum.sizeValue / maxSizeValue));
|
|
212
263
|
}
|
|
213
|
-
|
|
214
|
-
//#region src/marker-shape.ts
|
|
264
|
+
// src/marker-shape.ts
|
|
215
265
|
/**
|
|
216
266
|
* Trace the outline of a built-in marker {@link MarkerShape} onto a 2D canvas
|
|
217
267
|
* path, centered in a `size`×`size` box. The caller supplies the fill/stroke;
|
|
@@ -372,8 +422,7 @@ function resolveSvgSource(markup) {
|
|
|
372
422
|
if (trimmed.startsWith("data:")) return trimmed;
|
|
373
423
|
return null;
|
|
374
424
|
}
|
|
375
|
-
|
|
376
|
-
//#region src/hyperlink.ts
|
|
425
|
+
// src/hyperlink.ts
|
|
377
426
|
/**
|
|
378
427
|
* Return a whole-value HTTP(S) URL that is safe to expose as an attribute link.
|
|
379
428
|
*
|
|
@@ -394,8 +443,7 @@ function attributeLinkUrl(value) {
|
|
|
394
443
|
return null;
|
|
395
444
|
}
|
|
396
445
|
}
|
|
397
|
-
|
|
398
|
-
//#region src/photo.ts
|
|
446
|
+
// src/photo.ts
|
|
399
447
|
/**
|
|
400
448
|
* Feature-property keys for inline photo images, shared by the app and the map
|
|
401
449
|
* package so neither hardcodes a second copy that could drift. These keys are
|
|
@@ -413,8 +461,7 @@ const PHOTO_PROPERTY = "photo";
|
|
|
413
461
|
* format a browser cannot display at native size (TIFF/HEIC).
|
|
414
462
|
*/
|
|
415
463
|
const PHOTO_FULL_PROPERTY = "photo_full";
|
|
416
|
-
|
|
417
|
-
//#region src/color-ramp.ts
|
|
464
|
+
// src/color-ramp.ts
|
|
418
465
|
/** The built-in color ramps offered by the style panels. */
|
|
419
466
|
const VECTOR_COLOR_RAMPS = [
|
|
420
467
|
{
|
|
@@ -942,8 +989,7 @@ function naturalClassBreaks(values, count) {
|
|
|
942
989
|
breaks[0] = sorted[0];
|
|
943
990
|
return breaks;
|
|
944
991
|
}
|
|
945
|
-
|
|
946
|
-
//#region src/paths.ts
|
|
992
|
+
// src/paths.ts
|
|
947
993
|
const PATH_TRAVERSAL = /(?:^|[/\\])\.\.(?:[/\\]|$)/;
|
|
948
994
|
/**
|
|
949
995
|
* Whether a path contains a `..` directory-traversal segment. Used to reject a
|
|
@@ -975,8 +1021,7 @@ function hasPathTraversal(path) {
|
|
|
975
1021
|
function isAbsoluteFilesystemPath(path) {
|
|
976
1022
|
return path.startsWith("/") || /^[a-z]:[\\/]/i.test(path);
|
|
977
1023
|
}
|
|
978
|
-
|
|
979
|
-
//#region src/routing.ts
|
|
1024
|
+
// src/routing.ts
|
|
980
1025
|
/**
|
|
981
1026
|
* Routing / network-analysis client and pure helpers backing the Processing →
|
|
982
1027
|
* Network tools (isochrones / service areas, OD cost matrices).
|
|
@@ -1300,8 +1345,7 @@ function requestRoute(endpoint, body, signal) {
|
|
|
1300
1345
|
function requestNavigationRoute(endpoint, body, signal) {
|
|
1301
1346
|
return postJson(`${stripTrailingSlash(endpoint)}/route`, body, signal);
|
|
1302
1347
|
}
|
|
1303
|
-
|
|
1304
|
-
//#region src/vector-color.ts
|
|
1348
|
+
// src/vector-color.ts
|
|
1305
1349
|
/** Whether a color value is a data-driven expression rather than a flat color. */
|
|
1306
1350
|
function isVectorColorExpression(value) {
|
|
1307
1351
|
return Array.isArray(value);
|
|
@@ -2082,8 +2126,7 @@ function extrusionColorValue(style) {
|
|
|
2082
2126
|
if (vectorExpression !== flat) return vectorExpression;
|
|
2083
2127
|
return parseJsonExpression(styleValue(style, "extrusionAdvancedStyleEnabled") ? styleValue(style, "extrusionColorExpression") : "") ?? flat;
|
|
2084
2128
|
}
|
|
2085
|
-
|
|
2086
|
-
//#region src/style-layer-evaluator.ts
|
|
2129
|
+
// src/style-layer-evaluator.ts
|
|
2087
2130
|
const GEOMETRY_TYPE = {
|
|
2088
2131
|
Point: 1,
|
|
2089
2132
|
LineString: 2,
|
|
@@ -2162,8 +2205,7 @@ function createStyleLayerEvaluator(layer) {
|
|
|
2162
2205
|
}
|
|
2163
2206
|
};
|
|
2164
2207
|
}
|
|
2165
|
-
|
|
2166
|
-
//#region src/document-locale.ts
|
|
2208
|
+
// src/document-locale.ts
|
|
2167
2209
|
/**
|
|
2168
2210
|
* The document language, so formatted numbers and dates follow the UI locale.
|
|
2169
2211
|
*
|
|
@@ -2175,8 +2217,7 @@ function createStyleLayerEvaluator(layer) {
|
|
|
2175
2217
|
function documentLocale() {
|
|
2176
2218
|
return (typeof document !== "undefined" ? document.documentElement.lang.trim() : "") || void 0;
|
|
2177
2219
|
}
|
|
2178
|
-
|
|
2179
|
-
//#region src/label-number-format.ts
|
|
2220
|
+
// src/label-number-format.ts
|
|
2180
2221
|
/**
|
|
2181
2222
|
* Locale-aware number formatting for map labels (issue #2336).
|
|
2182
2223
|
*
|
|
@@ -2392,8 +2433,7 @@ function labelFieldTextField(labels, fallbackLocale) {
|
|
|
2392
2433
|
function formatLabelNumberSample(locale, decimals) {
|
|
2393
2434
|
return labelNumberFormatter(resolveLabelNumberLocale(locale), decimals).format(LABEL_NUMBER_SAMPLE);
|
|
2394
2435
|
}
|
|
2395
|
-
|
|
2396
|
-
//#region src/external-native-paint.ts
|
|
2436
|
+
// src/external-native-paint.ts
|
|
2397
2437
|
/**
|
|
2398
2438
|
* Whether a layer is drawn by a **custom render layer** its control created — a
|
|
2399
2439
|
* deck.gl overlay, 3D Tiles, or Add Vector Layer's own MapLibre layers — rather
|
|
@@ -2476,8 +2516,7 @@ function rendererAppliesOpacity(layer, renderer) {
|
|
|
2476
2516
|
function isAdoptedVectorAwaitingFeatures(layer) {
|
|
2477
2517
|
return layer.metadata.sourceKind === "maplibre-gl-vector-adopted" && !layer.geojson;
|
|
2478
2518
|
}
|
|
2479
|
-
|
|
2480
|
-
//#region src/attribute-form.ts
|
|
2519
|
+
// src/attribute-form.ts
|
|
2481
2520
|
/** Look up the configuration for a field, if any. */
|
|
2482
2521
|
function getAttributeFormField(form, field) {
|
|
2483
2522
|
return form?.fields.find((entry) => entry.field === field);
|
|
@@ -2711,8 +2750,50 @@ function featureForEvaluation(properties, feature) {
|
|
|
2711
2750
|
properties
|
|
2712
2751
|
};
|
|
2713
2752
|
}
|
|
2714
|
-
|
|
2715
|
-
|
|
2753
|
+
// src/map-click-claims.ts
|
|
2754
|
+
/**
|
|
2755
|
+
* Map tools that own the map's clicks while they draw (the Measure control
|
|
2756
|
+
* placing points, the Geo Editor sketching a shape) register a claim here, and
|
|
2757
|
+
* the Identify click handlers stand down while any claim holds. Without it a
|
|
2758
|
+
* click meant as a measure vertex also opens an Identify popup over the layer
|
|
2759
|
+
* underneath (issue #3237).
|
|
2760
|
+
*
|
|
2761
|
+
* A claim is a predicate read at click time rather than a flag the tool sets,
|
|
2762
|
+
* so a tool whose drawing state changes without an event (Measure stops
|
|
2763
|
+
* drawing silently when its panel collapses) never leaves a stale claim.
|
|
2764
|
+
*/
|
|
2765
|
+
const claims = /* @__PURE__ */ new Set();
|
|
2766
|
+
/**
|
|
2767
|
+
* Register a tool whose drawing state claims the map's clicks.
|
|
2768
|
+
*
|
|
2769
|
+
* Args:
|
|
2770
|
+
* isClaiming: Returns true while the tool is drawing and owns map clicks.
|
|
2771
|
+
*
|
|
2772
|
+
* Returns:
|
|
2773
|
+
* A function that removes the claim.
|
|
2774
|
+
*/
|
|
2775
|
+
function registerMapClickClaim(isClaiming) {
|
|
2776
|
+
const entry = () => isClaiming();
|
|
2777
|
+
claims.add(entry);
|
|
2778
|
+
return () => {
|
|
2779
|
+
claims.delete(entry);
|
|
2780
|
+
};
|
|
2781
|
+
}
|
|
2782
|
+
/**
|
|
2783
|
+
* Whether a registered map tool currently owns the map's clicks.
|
|
2784
|
+
*
|
|
2785
|
+
* Returns:
|
|
2786
|
+
* True when any registered claim reports that its tool is drawing.
|
|
2787
|
+
*/
|
|
2788
|
+
function isMapClickClaimed() {
|
|
2789
|
+
for (const isClaiming of claims) try {
|
|
2790
|
+
if (isClaiming()) return true;
|
|
2791
|
+
} catch (error) {
|
|
2792
|
+
console.warn("[GeoLibre] A map click claim could not be read", error);
|
|
2793
|
+
}
|
|
2794
|
+
return false;
|
|
2795
|
+
}
|
|
2796
|
+
// src/popup.ts
|
|
2716
2797
|
/** Match an inline base64 raster image (excludes SVG, which can carry scripts). */
|
|
2717
2798
|
const INLINE_IMAGE_DATA_URL = /^data:image\/(?!svg)[\w.+-]+;base64,/i;
|
|
2718
2799
|
/**
|
|
@@ -3055,8 +3136,7 @@ function isSafePopupUrl(value, allowDataImage = false) {
|
|
|
3055
3136
|
if (/^https?:\/\//i.test(trimmed)) return true;
|
|
3056
3137
|
return allowDataImage && INLINE_IMAGE_DATA_URL.test(trimmed);
|
|
3057
3138
|
}
|
|
3058
|
-
|
|
3059
|
-
//#region src/quick-filters.ts
|
|
3139
|
+
// src/quick-filters.ts
|
|
3060
3140
|
/**
|
|
3061
3141
|
* Quick filters (issue #2114): per-layer, data-driven filter controls that
|
|
3062
3142
|
* compile down to the MapLibre filter a layer already supports.
|
|
@@ -3295,8 +3375,7 @@ function clearQuickFilterValues(filters) {
|
|
|
3295
3375
|
text: filter.kind === "text" ? "" : filter.text
|
|
3296
3376
|
}));
|
|
3297
3377
|
}
|
|
3298
|
-
|
|
3299
|
-
//#region src/layer-filters.ts
|
|
3378
|
+
// src/layer-filters.ts
|
|
3300
3379
|
/**
|
|
3301
3380
|
* Return a layer's persisted expression filter when it has a usable array
|
|
3302
3381
|
* shape, otherwise return null.
|
|
@@ -3331,8 +3410,7 @@ function compileLayerFilters(layer) {
|
|
|
3331
3410
|
function hasActiveLayerFilter(layer) {
|
|
3332
3411
|
return compileLayerFilters(layer) !== null;
|
|
3333
3412
|
}
|
|
3334
|
-
|
|
3335
|
-
//#region src/deployment-capabilities.ts
|
|
3413
|
+
// src/deployment-capabilities.ts
|
|
3336
3414
|
/** Every capability, in a stable order for docs and tests. */
|
|
3337
3415
|
const DEPLOYMENT_CAPABILITIES = [
|
|
3338
3416
|
"project:edit",
|
|
@@ -3385,8 +3463,7 @@ function parseDeploymentCapabilities(raw) {
|
|
|
3385
3463
|
}
|
|
3386
3464
|
return granted;
|
|
3387
3465
|
}
|
|
3388
|
-
|
|
3389
|
-
//#region src/store/capabilities-slice.ts
|
|
3466
|
+
// src/store/capabilities-slice.ts
|
|
3390
3467
|
/**
|
|
3391
3468
|
* What this deployment and this session may do: deployment capabilities
|
|
3392
3469
|
* (issue #1673) and the application role / privilege model (issue #1672).
|
|
@@ -3442,8 +3519,7 @@ const createCapabilitiesSlice = (set, get) => ({
|
|
|
3442
3519
|
return hasAppPrivilege(get().capabilities, privilege);
|
|
3443
3520
|
}
|
|
3444
3521
|
});
|
|
3445
|
-
|
|
3446
|
-
//#region src/store/collaboration-slice.ts
|
|
3522
|
+
// src/store/collaboration-slice.ts
|
|
3447
3523
|
/**
|
|
3448
3524
|
* A fresh, inactive collaboration slice (no live session). Frozen (like
|
|
3449
3525
|
* DEFAULT_LEGEND_CONFIG) to guard against accidental in-place mutation; store
|
|
@@ -3501,8 +3577,7 @@ const createCollaborationSlice = (set) => ({
|
|
|
3501
3577
|
}
|
|
3502
3578
|
}))
|
|
3503
3579
|
});
|
|
3504
|
-
|
|
3505
|
-
//#region src/store/session-slice.ts
|
|
3580
|
+
// src/store/session-slice.ts
|
|
3506
3581
|
/** Reserved Identify target for querying every visible queryable layer at once. */
|
|
3507
3582
|
const IDENTIFY_ALL_LAYERS_ID = "__geolibre_identify_all_layers__";
|
|
3508
3583
|
/**
|
|
@@ -3631,8 +3706,7 @@ const createSessionSlice = (set) => ({
|
|
|
3631
3706
|
}),
|
|
3632
3707
|
setAttributeFilter: (filter) => set({ attributeFilter: filter })
|
|
3633
3708
|
});
|
|
3634
|
-
|
|
3635
|
-
//#region src/store/layer-removal.ts
|
|
3709
|
+
// src/store/layer-removal.ts
|
|
3636
3710
|
/**
|
|
3637
3711
|
* Reference scrubbing shared by the actions that delete layers (`removeLayer`
|
|
3638
3712
|
* and `removeLayerGroup` with `removeChildren`), so a deleted layer never
|
|
@@ -3697,8 +3771,7 @@ function cascadeJoinRefreshForRemoved(layers, layerIds) {
|
|
|
3697
3771
|
for (const id of removedLayerIdSet(layerIds)) current = cascadeLayerJoinRefresh(current, id);
|
|
3698
3772
|
return current;
|
|
3699
3773
|
}
|
|
3700
|
-
|
|
3701
|
-
//#region src/store/layer-groups-slice.ts
|
|
3774
|
+
// src/store/layer-groups-slice.ts
|
|
3702
3775
|
/**
|
|
3703
3776
|
* Layer-panel folders: create, rename, nest, reorder, sort and delete groups,
|
|
3704
3777
|
* and move layers between them. `layerGroups` is tracked by undo history
|
|
@@ -3889,8 +3962,7 @@ const createLayerGroupsSlice = (set, get) => ({
|
|
|
3889
3962
|
};
|
|
3890
3963
|
})
|
|
3891
3964
|
});
|
|
3892
|
-
|
|
3893
|
-
//#region src/file-name.ts
|
|
3965
|
+
// src/file-name.ts
|
|
3894
3966
|
/**
|
|
3895
3967
|
* A bare Android SAF document ID, as the browser `File.name` carries after a
|
|
3896
3968
|
* native import: a known volume prefix (`primary:`, `home:`, `raw:`, `msf:`, or a
|
|
@@ -3928,8 +4000,7 @@ function uniqueImportedLayerName(name, names) {
|
|
|
3928
4000
|
while (existing.has(candidate)) candidate = `${name}_${suffix++}`;
|
|
3929
4001
|
return candidate;
|
|
3930
4002
|
}
|
|
3931
|
-
|
|
3932
|
-
//#region src/layer-defaults.ts
|
|
4003
|
+
// src/layer-defaults.ts
|
|
3933
4004
|
/**
|
|
3934
4005
|
* Initial styling for a newly added vector layer (issue #1519).
|
|
3935
4006
|
*
|
|
@@ -4118,8 +4189,7 @@ function isInitialLayerStyle(style, geojson) {
|
|
|
4118
4189
|
};
|
|
4119
4190
|
return style.fillOpacity === expected.fillOpacity && style.strokeWidth === expected.strokeWidth && style.circleRadius === expected.circleRadius;
|
|
4120
4191
|
}
|
|
4121
|
-
|
|
4122
|
-
//#region src/layer-style-clipboard.ts
|
|
4192
|
+
// src/layer-style-clipboard.ts
|
|
4123
4193
|
/**
|
|
4124
4194
|
* `metadata.sourceKind` marking a deck.gl COG raster managed by the
|
|
4125
4195
|
* maplibre-gl-raster control. Mirrors `RASTER_SOURCE_KIND` in
|
|
@@ -4230,8 +4300,7 @@ function rescaleEntryCount(state) {
|
|
|
4230
4300
|
if (state.mode === "rgb") return Array.isArray(state.bands) ? state.bands.length : 3;
|
|
4231
4301
|
return 1;
|
|
4232
4302
|
}
|
|
4233
|
-
|
|
4234
|
-
//#region src/layer-style-file.ts
|
|
4303
|
+
// src/layer-style-file.ts
|
|
4235
4304
|
/** `type` tag identifying a layer styles file. */
|
|
4236
4305
|
const LAYER_STYLES_FILE_TYPE = "geolibre-layer-styles";
|
|
4237
4306
|
/** Format version written by {@link serializeLayerStylesFile}. */
|
|
@@ -4426,8 +4495,7 @@ function matchLayerStyleEntry(layer, entries) {
|
|
|
4426
4495
|
patch
|
|
4427
4496
|
} : null;
|
|
4428
4497
|
}
|
|
4429
|
-
|
|
4430
|
-
//#region src/store/layers-slice.ts
|
|
4498
|
+
// src/store/layers-slice.ts
|
|
4431
4499
|
/**
|
|
4432
4500
|
* The layer types {@link AppState.addTileLayer} accepts. Each renders through
|
|
4433
4501
|
* the raster tile path, which is why the layer's `source.type` is always
|
|
@@ -4692,6 +4760,10 @@ const createLayersSlice = (set, get) => ({
|
|
|
4692
4760
|
const id = v4();
|
|
4693
4761
|
const tiles = options.tiles.filter((tile) => typeof tile === "string").map((tile) => tile.trim()).filter((tile) => tile !== "");
|
|
4694
4762
|
if (tiles.length === 0) throw new Error("addTileLayer requires at least one non-empty tile URL template.");
|
|
4763
|
+
resolveLayerTileAddress({
|
|
4764
|
+
type,
|
|
4765
|
+
source: { scheme: options.scheme }
|
|
4766
|
+
}, tiles);
|
|
4695
4767
|
if (options.minzoom !== void 0 && options.maxzoom !== void 0 && options.minzoom > options.maxzoom) throw new Error(`addTileLayer: minzoom (${options.minzoom}) must be <= maxzoom (${options.maxzoom}).`);
|
|
4696
4768
|
const layer = {
|
|
4697
4769
|
id,
|
|
@@ -4718,8 +4790,7 @@ const createLayersSlice = (set, get) => ({
|
|
|
4718
4790
|
return id;
|
|
4719
4791
|
}
|
|
4720
4792
|
});
|
|
4721
|
-
|
|
4722
|
-
//#region src/layer-library.ts
|
|
4793
|
+
// src/layer-library.ts
|
|
4723
4794
|
/** `type` discriminator of an exported Layer Library bundle file. */
|
|
4724
4795
|
const LAYER_LIBRARY_BUNDLE_TYPE = "geolibre-layer-library";
|
|
4725
4796
|
/** Current bundle format version, for forward-compatible readers. */
|
|
@@ -5379,8 +5450,7 @@ function createLayerLibraryEntryId() {
|
|
|
5379
5450
|
if (typeof crypto !== "undefined" && "randomUUID" in crypto) return crypto.randomUUID();
|
|
5380
5451
|
return `layer-lib-${Date.now().toString(36)}-${Math.random().toString(36).slice(2, 10)}`;
|
|
5381
5452
|
}
|
|
5382
|
-
|
|
5383
|
-
//#region src/store/libraries-slice.ts
|
|
5453
|
+
// src/store/libraries-slice.ts
|
|
5384
5454
|
/**
|
|
5385
5455
|
* The Style Manager, Layer Library and Template Library. The app-level lists
|
|
5386
5456
|
* live outside the project lifecycle (persisted by the desktop app); only the
|
|
@@ -5423,8 +5493,7 @@ const createLibrariesSlice = (set) => ({
|
|
|
5423
5493
|
saveTemplateEntry: (entry) => set((s) => ({ templateLibrary: s.templateLibrary.some((t) => t.id === entry.id) ? s.templateLibrary.map((t) => t.id === entry.id ? entry : t) : [...s.templateLibrary, entry] })),
|
|
5424
5494
|
deleteTemplateEntry: (id) => set((s) => ({ templateLibrary: s.templateLibrary.filter((t) => t.id !== id) }))
|
|
5425
5495
|
});
|
|
5426
|
-
|
|
5427
|
-
//#region src/store/map-view-slice.ts
|
|
5496
|
+
// src/store/map-view-slice.ts
|
|
5428
5497
|
/**
|
|
5429
5498
|
* The map workspace: the primary camera, the basemap, project preferences, the
|
|
5430
5499
|
* multi-map grid and its secondary panes, and which engine draws the primary
|
|
@@ -5672,8 +5741,7 @@ const createMapViewSlice = (set) => ({
|
|
|
5672
5741
|
isDirty: true
|
|
5673
5742
|
})
|
|
5674
5743
|
});
|
|
5675
|
-
|
|
5676
|
-
//#region src/store/processing-slice.ts
|
|
5744
|
+
// src/store/processing-slice.ts
|
|
5677
5745
|
/**
|
|
5678
5746
|
* Saved processing models (issue #344) and the Processing History log
|
|
5679
5747
|
* (issue #1292). Both are saved with the project.
|
|
@@ -5719,8 +5787,7 @@ const createProcessingSlice = (set) => ({
|
|
|
5719
5787
|
isDirty: true
|
|
5720
5788
|
} : { obiaWorkbench })
|
|
5721
5789
|
});
|
|
5722
|
-
|
|
5723
|
-
//#region src/store/project-content-slice.ts
|
|
5790
|
+
// src/store/project-content-slice.ts
|
|
5724
5791
|
/**
|
|
5725
5792
|
* Project content that sits beside the layers: review comments (issue #1518),
|
|
5726
5793
|
* Dashboard widgets (issue #401) and the story map. All of it is saved with the
|
|
@@ -5896,8 +5963,7 @@ const createProjectContentSlice = (set) => ({
|
|
|
5896
5963
|
};
|
|
5897
5964
|
})
|
|
5898
5965
|
});
|
|
5899
|
-
|
|
5900
|
-
//#region src/history.ts
|
|
5966
|
+
// src/history.ts
|
|
5901
5967
|
/**
|
|
5902
5968
|
* Runtime-settable window (ms) used to coalesce rapid history-producing changes
|
|
5903
5969
|
* (e.g. a continuous opacity/style slider drag) into a single undo entry. Tests
|
|
@@ -6025,8 +6091,7 @@ function leadingDebounce(fn, getWait) {
|
|
|
6025
6091
|
};
|
|
6026
6092
|
return wrapped;
|
|
6027
6093
|
}
|
|
6028
|
-
|
|
6029
|
-
//#region src/store/undo-history.ts
|
|
6094
|
+
// src/store/undo-history.ts
|
|
6030
6095
|
/**
|
|
6031
6096
|
* Undo/redo for the app store. zundo's `temporal` middleware tracks only the
|
|
6032
6097
|
* project-data fields that {@link partializeHistory} lists (layers, groups,
|
|
@@ -6285,8 +6350,7 @@ function clearHistory() {
|
|
|
6285
6350
|
notifyProjectRestoreHistory();
|
|
6286
6351
|
}
|
|
6287
6352
|
}
|
|
6288
|
-
|
|
6289
|
-
//#region src/store/project-slice.ts
|
|
6353
|
+
// src/store/project-slice.ts
|
|
6290
6354
|
/**
|
|
6291
6355
|
* Project identity and lifecycle: name, path, dirty flag, recent projects, and
|
|
6292
6356
|
* the project-level settings that have no richer home (plugins, legend, print
|
|
@@ -6435,8 +6499,7 @@ const createProjectSlice = (set, get) => ({
|
|
|
6435
6499
|
});
|
|
6436
6500
|
}
|
|
6437
6501
|
});
|
|
6438
|
-
|
|
6439
|
-
//#region src/store/ui-slice.ts
|
|
6502
|
+
// src/store/ui-slice.ts
|
|
6440
6503
|
const createUiSlice = (set) => ({
|
|
6441
6504
|
ui: {
|
|
6442
6505
|
processingOpen: false,
|
|
@@ -6632,8 +6695,7 @@ const createUiSlice = (set) => ({
|
|
|
6632
6695
|
styleManagerOpen: open
|
|
6633
6696
|
} }))
|
|
6634
6697
|
});
|
|
6635
|
-
|
|
6636
|
-
//#region src/store.ts
|
|
6698
|
+
// src/store.ts
|
|
6637
6699
|
/**
|
|
6638
6700
|
* The app store: one Zustand store wrapped in zundo's undo history, composed
|
|
6639
6701
|
* from the slices under `./store/` (zustand's slices pattern). The split is
|
|
@@ -6691,8 +6753,7 @@ function useAppCapability(privilege) {
|
|
|
6691
6753
|
reason: appPrivilegeReason(capabilities, privilege)
|
|
6692
6754
|
};
|
|
6693
6755
|
}
|
|
6694
|
-
|
|
6695
|
-
//#region src/selection-actions.ts
|
|
6756
|
+
// src/selection-actions.ts
|
|
6696
6757
|
/**
|
|
6697
6758
|
* Store-touching selection helpers. Kept out of `selection.ts` so that module
|
|
6698
6759
|
* stays a pure, directly testable set of functions over id arrays.
|
|
@@ -6720,8 +6781,7 @@ function applyMatchedSelection(targetLayerId, matchedIds, mode) {
|
|
|
6720
6781
|
store.selectFeatures(next);
|
|
6721
6782
|
return next.length;
|
|
6722
6783
|
}
|
|
6723
|
-
|
|
6724
|
-
//#region src/scale-units.ts
|
|
6784
|
+
// src/scale-units.ts
|
|
6725
6785
|
/** Conversion constants shared by every scale-bar denomination. */
|
|
6726
6786
|
const FEET_PER_METER = 3.2808398950131235;
|
|
6727
6787
|
const METERS_PER_FOOT = .3048;
|
|
@@ -6785,8 +6845,7 @@ function scaleSpan(maxMeters, unit) {
|
|
|
6785
6845
|
label
|
|
6786
6846
|
};
|
|
6787
6847
|
}
|
|
6788
|
-
|
|
6789
|
-
//#region src/elevation.ts
|
|
6848
|
+
// src/elevation.ts
|
|
6790
6849
|
/** Open-Meteo accepts at most 100 coordinates per elevation request. */
|
|
6791
6850
|
const MAX_POINTS_PER_REQUEST = 100;
|
|
6792
6851
|
/** Abort an elevation request that has not responded within this window. */
|
|
@@ -6984,8 +7043,7 @@ function createPointerElevationResolver(options) {
|
|
|
6984
7043
|
dispose: invalidate
|
|
6985
7044
|
};
|
|
6986
7045
|
}
|
|
6987
|
-
|
|
6988
|
-
//#region src/camera-altitude.ts
|
|
7046
|
+
// src/camera-altitude.ts
|
|
6989
7047
|
/**
|
|
6990
7048
|
* Camera altitude ("Eye alt") for the status bar — issue #1816.
|
|
6991
7049
|
*
|
|
@@ -7032,8 +7090,7 @@ function formatCameraAltitude(meters, unit) {
|
|
|
7032
7090
|
maximumFractionDigits: digits
|
|
7033
7091
|
})} ${label}`;
|
|
7034
7092
|
}
|
|
7035
|
-
|
|
7036
|
-
//#region src/layers-file.ts
|
|
7093
|
+
// src/layers-file.ts
|
|
7037
7094
|
/** `type` tag identifying a layers file. */
|
|
7038
7095
|
const LAYERS_FILE_TYPE = "geolibre-layers";
|
|
7039
7096
|
/** Format version written by {@link serializeLayersFile}. */
|
|
@@ -7239,8 +7296,7 @@ function addLayersToProject(project, content) {
|
|
|
7239
7296
|
layerGroups: [...groups, ...structuredClone(layerGroups)]
|
|
7240
7297
|
};
|
|
7241
7298
|
}
|
|
7242
|
-
|
|
7243
|
-
//#region src/pixel-format.ts
|
|
7299
|
+
// src/pixel-format.ts
|
|
7244
7300
|
/**
|
|
7245
7301
|
* Trim a float sample to something readable. A 32-bit raster value decoded to a
|
|
7246
7302
|
* JS double prints all 17 digits of its binary representation
|
|
@@ -7256,8 +7312,7 @@ function formatPixelValue(value) {
|
|
|
7256
7312
|
if (Number.isInteger(value)) return String(value);
|
|
7257
7313
|
return String(Number(value.toPrecision(6)));
|
|
7258
7314
|
}
|
|
7259
|
-
|
|
7260
|
-
//#region src/s3.ts
|
|
7315
|
+
// src/s3.ts
|
|
7261
7316
|
/** SigV4 allows a presigned URL to live at most seven days. */
|
|
7262
7317
|
const S3_MAX_PRESIGN_SECONDS = 604800;
|
|
7263
7318
|
const S3_SCHEME = /^s3a?:\/\//i;
|
|
@@ -7658,8 +7713,7 @@ async function explainS3ReadError(url, error, translate) {
|
|
|
7658
7713
|
origin
|
|
7659
7714
|
}) : fallback, location.bucket, origin, error);
|
|
7660
7715
|
}
|
|
7661
|
-
|
|
7662
|
-
//#region src/storymap-sample.ts
|
|
7716
|
+
// src/storymap-sample.ts
|
|
7663
7717
|
const SAMPLE_ASSET_BASE = "https://opengeos.org/maplibre-gl-storymaps/assets";
|
|
7664
7718
|
/**
|
|
7665
7719
|
* Build a ready-to-play sample story map.
|
|
@@ -7778,8 +7832,7 @@ function createSampleStoryMap() {
|
|
|
7778
7832
|
]
|
|
7779
7833
|
};
|
|
7780
7834
|
}
|
|
7781
|
-
|
|
7782
|
-
//#region src/storymap-playback.ts
|
|
7835
|
+
// src/storymap-playback.ts
|
|
7783
7836
|
/** The clamped opacity recorded for a layer, or undefined when untouched. */
|
|
7784
7837
|
function recordedStoryOpacity(opacities, layerId) {
|
|
7785
7838
|
const value = opacities?.[layerId];
|
|
@@ -7865,8 +7918,7 @@ function storyLocationView(location, current) {
|
|
|
7865
7918
|
bearing: location.bearing ?? current.bearing
|
|
7866
7919
|
};
|
|
7867
7920
|
}
|
|
7868
|
-
|
|
7869
|
-
//#region src/storymap-io.ts
|
|
7921
|
+
// src/storymap-io.ts
|
|
7870
7922
|
/**
|
|
7871
7923
|
* Serialize a story map to pretty-printed JSON for export.
|
|
7872
7924
|
*
|
|
@@ -8044,8 +8096,7 @@ function parseCsvRows(text) {
|
|
|
8044
8096
|
}
|
|
8045
8097
|
return rows;
|
|
8046
8098
|
}
|
|
8047
|
-
|
|
8048
|
-
//#region src/layer-selectors.ts
|
|
8099
|
+
// src/layer-selectors.ts
|
|
8049
8100
|
/**
|
|
8050
8101
|
* Narrow subscriptions to the store's `layers` array.
|
|
8051
8102
|
*
|
|
@@ -8186,8 +8237,7 @@ function useLayerSummaries() {
|
|
|
8186
8237
|
function useLayersWhen(active) {
|
|
8187
8238
|
return useAppStore(selectLayersWhen(active));
|
|
8188
8239
|
}
|
|
8189
|
-
|
|
8190
|
-
//#region src/platform.ts
|
|
8240
|
+
// src/platform.ts
|
|
8191
8241
|
/**
|
|
8192
8242
|
* Platform detection shared across the workspace. Carries no React/MapLibre
|
|
8193
8243
|
* dependency so callers stay unit-testable.
|
|
@@ -8213,8 +8263,7 @@ function useLayersWhen(active) {
|
|
|
8213
8263
|
function isIpadDesktopUserAgent(userAgent, maxTouchPoints) {
|
|
8214
8264
|
return /Macintosh/.test(userAgent) && (maxTouchPoints ?? 0) > 1;
|
|
8215
8265
|
}
|
|
8216
|
-
|
|
8217
|
-
//#region src/three-d-tiles.ts
|
|
8266
|
+
// src/three-d-tiles.ts
|
|
8218
8267
|
/** Google Photorealistic 3D Tiles root host + path. */
|
|
8219
8268
|
const GOOGLE_PHOTOREALISTIC_TILES_HOST = "tile.googleapis.com";
|
|
8220
8269
|
const GOOGLE_PHOTOREALISTIC_TILES_PATH = "/v1/3dtiles/root.json";
|
|
@@ -8281,8 +8330,7 @@ function persistedThreeDTilesRequestHeaders(url, headers) {
|
|
|
8281
8330
|
if (!isGooglePhotorealisticTilesetUrl(url)) return headers;
|
|
8282
8331
|
return nonEmptyRecord(stripGoogleMapsApiKeyHeader(headers));
|
|
8283
8332
|
}
|
|
8284
|
-
|
|
8285
|
-
//#region src/project-credential-refs.ts
|
|
8333
|
+
// src/project-credential-refs.ts
|
|
8286
8334
|
/**
|
|
8287
8335
|
* Credentials a project refers to by name rather than carrying inline.
|
|
8288
8336
|
*
|
|
@@ -8459,8 +8507,7 @@ function resolveProjectHeaderReferences(headers) {
|
|
|
8459
8507
|
}
|
|
8460
8508
|
return resolveHeaderReferences(headers, values);
|
|
8461
8509
|
}
|
|
8462
|
-
|
|
8463
|
-
//#region src/visibility.ts
|
|
8510
|
+
// src/visibility.ts
|
|
8464
8511
|
/**
|
|
8465
8512
|
* Returns a new FeatureCollection with properties marked as "excluded" removed.
|
|
8466
8513
|
*/
|
|
@@ -8519,8 +8566,7 @@ function excludeHiddenFieldsFromProject(project) {
|
|
|
8519
8566
|
layers
|
|
8520
8567
|
} : project;
|
|
8521
8568
|
}
|
|
8522
|
-
|
|
8523
|
-
//#region src/editor-tracking.ts
|
|
8569
|
+
// src/editor-tracking.ts
|
|
8524
8570
|
/** Default field names for maintained editor tracking columns. */
|
|
8525
8571
|
const DEFAULT_EDITOR_TRACKING_CONFIG = {
|
|
8526
8572
|
enabled: false,
|
|
@@ -8690,8 +8736,7 @@ function stampFeatureCollectionEditorTracking(collection, action, options) {
|
|
|
8690
8736
|
features: collection.features.map((feat) => stampFeatureEditorTracking(feat, action, opts))
|
|
8691
8737
|
};
|
|
8692
8738
|
}
|
|
8693
|
-
|
|
8694
|
-
//#region src/editor-identity.ts
|
|
8739
|
+
// src/editor-identity.ts
|
|
8695
8740
|
/**
|
|
8696
8741
|
* Runtime resolution of "who is editing", for the editor tracking stamps.
|
|
8697
8742
|
*
|
|
@@ -8739,8 +8784,7 @@ function currentEditorIdentity() {
|
|
|
8739
8784
|
const { isActive, selfName } = useAppStore.getState().collaboration;
|
|
8740
8785
|
return pickEditorIdentity(isActive ? selfName : void 0, readStoredAuthorName());
|
|
8741
8786
|
}
|
|
8742
|
-
|
|
8743
|
-
//#region src/datum-shift.ts
|
|
8787
|
+
// src/datum-shift.ts
|
|
8744
8788
|
/** Inclusive ranges of codes, as a list. */
|
|
8745
8789
|
const range = (from, to) => Array.from({ length: to - from + 1 }, (_, i) => from + i);
|
|
8746
8790
|
const SHIFTS = [
|
|
@@ -8890,8 +8934,7 @@ function withGeoKeysDatumShift(definition, geoKeys) {
|
|
|
8890
8934
|
function installCogTilerDatumShift(module) {
|
|
8891
8935
|
module.setSourceCrsResolver?.((def, geoKeys) => def.trimStart().startsWith("+") ? withGeoKeysDatumShift(def, geoKeys) : def);
|
|
8892
8936
|
}
|
|
8893
|
-
|
|
8894
|
-
//#region src/cog-jpeg-tables.ts
|
|
8937
|
+
// src/cog-jpeg-tables.ts
|
|
8895
8938
|
const DEFAULT_COEFFICIENTS = [
|
|
8896
8939
|
.299,
|
|
8897
8940
|
.587,
|
|
@@ -9021,7 +9064,6 @@ function withJpegTablesPatch(module) {
|
|
|
9021
9064
|
openCog: (async (input) => patchJpegCogSource(await module.openCog(input)))
|
|
9022
9065
|
};
|
|
9023
9066
|
}
|
|
9024
|
-
//#endregion
|
|
9025
|
-
export { ALL_APP_PRIVILEGES, ALL_DEPLOYMENT_CAPABILITIES, ARCGIS_PROJECTION_PRESETS, BLANK_BASEMAP, BLEND_MODES, BUILT_IN_STYLE_PRESETS, CARTOCIUDAD_MIN_INTERVAL_MS, CARTOCIUDAD_PUBLIC_HOST, CESIUM_BASEMAPS, CESIUM_BING_AERIAL_ASSET_ID, CESIUM_GOOGLE_PHOTOREALISTIC_ASSET_ID, CESIUM_ION_QUICK_PICKS, CESIUM_ION_SOURCE_KIND, CESIUM_KML_SOURCE_KIND, CESIUM_OSM_BUILDINGS_ASSET_ID, CHINA_BASEMAPS, CZML_QUICK_PICKS, CZML_SOURCE_KIND, DEFAULT_BASEMAP, DEFAULT_BLEND_MODE, DEFAULT_COLLABORATION_STATE, DEFAULT_DASHBOARD_COLUMNS, DEFAULT_EDITOR_IDENTITY, DEFAULT_EDITOR_TRACKING_CONFIG, DEFAULT_ELLIPSOID_ID, DEFAULT_FORWARD_GEOCODE_ENDPOINT, DEFAULT_GEOCODING_PROVIDER_ID, DEFAULT_LAYER_GROUP_OPACITY, DEFAULT_LAYER_STYLE, DEFAULT_LEGEND_CONFIG, DEFAULT_MAP_GRID_LAYOUT, DEFAULT_PRIMARY_RENDERER, DEFAULT_PRINT_LAYOUT, DEFAULT_PROJECT_NAME, DEFAULT_PROJECT_PREFERENCES, DEFAULT_REVERSE_GEOCODE_ENDPOINT, DEFAULT_ROUTING_ENDPOINT, DEFAULT_STORY_CHAPTER_DURATION_SECONDS, DEFAULT_STORY_MAP, DEPLOYMENT_CAPABILITIES, DUCKDB_VECTOR_FEATURE_WARN_COUNT, DUCKDB_VECTOR_ROUTE_BYTES, EARTH_MEAN_RADIUS_METERS, EDITOR_IDENTITY_STORAGE_KEY, ELEVATION_REQUEST_TIMEOUT_MS, ELLIPSOIDS, EXPRESSION_FUNCTION_CATEGORIES, ElevationFetchError, FEET_PER_METER, FEET_PER_MILE, GEOCODE_ATTRIBUTE_PREFIX, GEOCODE_DISPLAY_NAME_KEY, GEOCODE_LAT_KEY, GEOCODE_LON_KEY, GEOCODE_PROVIDER_KEY, GEOCODE_SCORE_KEY, GEOCODE_STATUS_KEY, GEOCODING_PROVIDERS, GOOGLE_MAPS_API_KEY_HEADER, GeocoderServiceError, GeocoderUnsupportedError, IDENTIFY_ALL_LAYERS_ID, LABEL_NUMBER_LOCALES, LABEL_NUMBER_SAMPLE, LARGE_VECTOR_FEATURE_THRESHOLD, LAYERS_FILE_TYPE, LAYERS_FILE_VERSION, LAYER_LIBRARY_BUNDLE_TYPE, LAYER_LIBRARY_BUNDLE_VERSION, LAYER_PALETTE, LAYER_STYLES_FILE_TYPE, LAYER_STYLES_FILE_VERSION, LAYER_TYPES, MAP_CRS_PRESETS, MAX_DASHBOARD_COLUMNS, MAX_DIAGRAM_FEATURES, MAX_DIAGRAM_SCAN_FEATURES, MAX_LAYERS_FILE_BYTES, MAX_LAYER_LIBRARY_ENTRIES, MAX_LAYER_LIBRARY_ENTRY_BYTES, MAX_MAP_GRID_DIM, MAX_POINTS_PER_REQUEST, MAX_PROCESSING_HISTORY, MAX_PROJECT_BOOKMARKS, MAX_REDACT_DEPTH, MAX_STORY_CHAPTER_DURATION_SECONDS, MERCATOR_METERS_PER_PIXEL_AT_ZOOM_0, METERS_PER_FOOT, METERS_PER_MILE, METERS_PER_NAUTICAL_MILE, MIN_DASHBOARD_COLUMNS, MIN_DIAGRAM_SIZE, MIN_STORY_CHAPTER_DURATION_SECONDS, NETCDF_IMAGE_SOURCE_KIND, NOMINATIM_MIN_INTERVAL_MS, NOMINATIM_PUBLIC_HOST, NO_DEPLOYMENT_CAPABILITIES, NO_LAYERS, OPENFREEMAP_BASEMAPS, PHOTO_FULL_PROPERTY, PHOTO_PROPERTY, PLANETARY_BASEMAPS, PLANETARY_BASEMAP_GROUPS, PLANETARY_BASEMAP_SENTINEL_PREFIX, PLANET_SWITCHER_OPTIONS, POINTER_ELEVATION_CACHE_LIMIT, POINTER_ELEVATION_DEBOUNCE_MS, POPUP_IMAGE_HEIGHT_RANGE, POPUP_MAX_WIDTH_RANGE, PROJECT_CREDENTIAL_FIELDS, PROJECT_VERSION, PROTOMAPS_BASEMAPS, PUBLIC_GEOCODE_ROW_CAP, PUBLISHABLE_PLUGIN_SETTINGS, RAMP_STYLE_KEYS, RASTER_APPEARANCE_STATE_KEYS, REGIONAL_BASEMAPS, REGIONAL_BASEMAP_GROUPS, REGIONAL_BASEMAP_SENTINEL_PREFIX, ROLE_PRIVILEGES, RoutingRequestError, S3CorsError, S3_MAX_PRESIGN_SECONDS, SELECTION_MODES, SQL_QUERY_SOURCE_KIND, STAC_PROCESSING_EXTENSION, STAC_VERSION, STYLE_LIBRARY_BUNDLE_TYPE, STYLE_LIBRARY_BUNDLE_VERSION, SYMBOL_STYLE_KEYS, VECTOR_COLOR_RAMPS, activeLayerFilterExpression, activeQuickFilters, adaptBboxTemplateToCrs, addLayersToProject, allowsCredentialHeaders, appPrivilegeReason, applyCopiedLayerStyle, applyGroupEffects, applyJoinsToLayer, applyLayerJoins, applyLayerVirtualFields, applyMatchedSelection, applyProjectToStore, applySelectionMode, applyStoryLayerOpacity, arcgisLocatorInputField, attributeFormFieldLabel, attributeLinkUrl, availableCesiumBasemap, basemapToCesiumImagery, batchDecodePolylines, bodyLengthToEarth, buildForwardGeocodeUrl, buildIsochroneRequest, buildLayerPanelUnits, buildLayerStacItem, buildLayerTree, buildMatrixRequest, buildReverseGeocodeUrl, buildRouteRequest, canRedoProjectRestore, canSaveLayerToLibrary, canUndoProjectRestore, captureLayerLibraryEntry, cascadeLayerJoinRefresh, cesiumIonAssetId, cesiumIonAssetKind, cesiumKmlSource, changedPreferenceCredentials, circleRadiusValue, clampLabelDecimals, clampLatitude, clearExternalNativePaintBridge, clearHistory, clearQuickFilterValues, coerceAttributeFormValue, collectDiagramData, collectTransitiveJoinSourceIds, compareSequenceValues, compileFeatureExpression, compileLayerFilters, compileQuickFilter, compileQuickFilters, computeGeoArrowBBox, controlRendersLayer, convertTiffYCbCrToRgb, copyableLayerStyleKind, createCesiumIonLayer, createCesiumKmlLayer, createCzmlLayer, createDefaultAppCapabilities, createDefaultMapView, createDefaultPrintLayout, createEmptyProject, createEqualIntervalBreaks, createGraduatedClassBreaks, createLayerLibraryEntryId, createPointerElevationResolver, createProjectLayerSerializationCache, createProjectTemplate, createQuantileBreaks, createSampleStoryMap, createStyleLayerEvaluator, createStyleLibraryEntryId, csvRowsToGeocodeRequests, currentEditorIdentity, czmlSource, darkenHex, datumShiftFor, decodePolyline, decodePolylineDetailed, deriveTileMatrixSet, detachProjectCopy, detectNonGeographicCoordinates, diagramAnchor, diagramPixelSize, diagramsSuppressedByPointRenderer, diffFeatureCollections, diffProjects, documentLocale, dominantGeometry, drawMarkerPath, earthAreaToBody, earthLengthToBody, editorTrackingFieldNames, effectiveLayerRenderState, effectiveVectorRules, encodePolyline, encodeS3Key, ensureEditorTrackingFields, environmentVariableAccount, evaluateMapExpression, excludeHiddenFieldsFromGeojson, excludeHiddenFieldsFromProject, explainS3ReadError, extractCopiedLayerStyle, extractLayerStyleEntries, extractLayersFileContent, extractStyleLibraryStyle, extrusionColorValue, extrusionHeightValue, featureCollectionToGeoArrow, featureSelectionId, fetchArcGISLocatorInfo, fetchElevations, findLayerStyleEntryIndex, formatCameraAltitude, formatExpressionPreviewValue, formatLabelNumber, formatLabelNumberSample, formatPixelValue, formatPopupValue, formatRoundNum, formatS3Uri, generatorCircleRadiusValue, generatorSizeRange, geoArrowToFeatureCollection, geoJSONToPolylineStr, geocodeForward, geocodeMatchToFeature, geocodeReverse, geocodeSuggest, geocoderMinIntervalMs, geocoderNeedsApiKey, geocoderSupportsReverse, geocoderSupportsSuggest, geocodingApiKeyAccount, geojsonHasZCoordinates, getActiveBodyRadiusRatio, getActiveEllipsoid, getActiveMeanRadiusMeters, getActiveSemiMajorAxisMeters, getArcgisApiKey, getAttributeFormField, getBuildEnvironment, getCesiumIonToken, getEllipsoid, getExternalNativePaintBridge, getGeocoderConfig, getGeocodingProvider, getGoogleMapsApiKey, getHistoryCoalesceMs, getMapCrsPreset, getMapboxAccessToken, getMaxHistoryFeatureCount, getPlanetaryBasemapById, getPlanetaryBasemapByStyleUrl, getProtomapsApiKey, getProtomapsStyleUrl, getRegionalBasemapById, getRegionalBasemapByStyleUrl, getRoundNum, getRoutingConfig, getRuntimeEnvironment, getS3UrlSigner, getSpatialExtensionPath, getVectorColorRamp, googleMapsApiKeyHeaderValue, groupMemberIndices, hasActiveLayerFilter, hasActiveQuickFilter, hasAppPrivilege, hasHeaderReferences, hasPathTraversal, hasRestorableLayerSource, hasSimpleStyleProperties, heatmapRampColors, horizontalBbox, hydrateProjectLayer, identifyAllIncludes, identifyStateWithoutLayers, inferFieldTypes, inferLayerCapabilities, initialLayerStyle, installCogTilerDatumShift, interpolateColors, interpolateHexColor, interpolateRampColors, intersectPrivileges, invertSelection, isAbbreviatedJpegCompression, isAbsoluteFilesystemPath, isAdoptedVectorAwaitingFeatures, isAllowedPluginManifestUrl, isAttributeFormFieldVisible, isCesiumIonLayer, isCesiumKmlLayer, isCesiumOnlyLayer, isCredentialFieldName, isCredentialUrlParam, isCredentialedS3Url, isCzmlLayer, isDefaultPrintLayout, isDeploymentCapability, isDiagramStyleEnabled, isDuckDBQueryLayer, isExternalNativeLayerRecord, isGeoArrowBatch, isGooglePhotorealisticTilesetUrl, isHeaderReferenceOnly, isHexColor, isInitialLayerStyle, isInlineImageValue, isInternalPopupField, isIpadDesktopUserAgent, isMaintainedEditorTrackingField, isPopupClickEnabled, isPopupHoverEnabled, isRasterMarkerSource, isReferencedLayer, isRegionalBasemapSentinel, isS3Uri, isSafePopupUrl, isSecretEnvironmentVariable, isSessionOnlyLayer, isStoryHiddenLayer, isStyleLibraryTargetLayer, isStyleSpecColor, isSvgMarkerResponse, isValidMetadataDate, isValidMetadataEmail, isValidMetadataUrl, isVectorColorExpression, isochroneResponseToFeatures, jsonValuesEqual, labelFieldTextField, layerGroupDepth, layerGroupMoveability, layerGroupSortability, layerJoinKey, layerLibraryConfigPatch, layerLibraryEntryNeedsLocalFile, layerLocalPath, layerPanelGroupHeaders, lineWidthValue, localFileName, lookupProjectCredential, mapZoomStepOutputs, matchFeaturesByExpression, matchLayerStyleEntry, matrixResponseToFeatures, meanRadiusMeters, mercatorMetersPerPixelAtZoom0, mergeAttributeFormConfigs, metadataDateToRfc3339, metersWidthExpression, nextDelayMs, nextLayerPaletteColor, nominatimResultToFeature, nominatimReverseResultToDisplay, nonEmptyRecord, normalizeAppPrivileges, normalizeArcGISLocatorUrl, normalizeArcgisWkid, normalizeBlankBackgroundColor, normalizeBookmarkGroups, normalizeBookmarks, normalizeCesiumBasemap, normalizeDashboardColumns, normalizeGeocodingLocator, normalizeGeocodingProviderId, normalizeGroupContiguity, normalizeHexColor, normalizeLayerCapabilities, normalizeLayerDescriptiveMetadata, normalizeLayerLibraryEntries, normalizeLayerStyleEntries, normalizeLayersFileContent, normalizeLegendConfig, normalizeLongitude, normalizeMapCrs, normalizeMapLayout, normalizeMapViewState, normalizeModelGraph, normalizeModels, normalizeObiaWorkbench, normalizePrimaryRenderer, normalizePrintLayoutConfig, normalizeProcessingHistory, normalizeProjectComments, normalizeProjectInteraction, normalizeSecondaryMapViews, normalizeStoryChapterDurationSeconds, normalizeStoryMap, normalizeStyleLibraryEntries, normalizeWidgets, overlayStoredEnvironmentVariables, overlayStoredGeocodingApiKeys, overlayStoredPreferenceCredentials, parseArcGISLocatorInfo, parseArcGISSuggestions, parseCesiumIonAssetId, parseContours, parseCzml, parseDeploymentCapabilities, parseHexColor, parseHexColorList, parseJsonExpression, parseLayerLibrary, parseLayerStylesFile, parseLayersFile, parseMapCrsEpsgCode, parseMetadataKeywords, parseProject, parseS3BucketList, parseS3Error, parseS3ListObjects, parseS3Url, parseStoryMapCsv, parseStoryMapJson, parseStyleLibrary, parseValueMapText, patchJpegCogSource, persistedThreeDTilesRequestHeaders, pickEditorIdentity, planLayerLibraryAdd, pluginOwnsPaint, polylineStrToGeoJSON, popupFieldLabel, portableWmsTileUrl, presignS3Url, previewValue, printLayoutConfigsEqual, projectFromStore, projectPathLabel, proportionalRadiusExpression, proportionalSizeRange, readStoredAuthorName, reapplyLayerJoins, redactConfigurationCredentials, redactCredentials, redactProjectCredentials, redactUrlCredentials, redo, registerProjectRestoreHistory, registerS3UrlSigner, removeTrailingJsonCommas, rendererAppliesOpacity, reorderLayerGroupInPanel, requestIsochrone, requestMatrix, requestNavigationRoute, requestRoute, resolveConfiguredPopupTitle, resolveEditorTrackingConfig, resolveGeocoderConfig, resolveHeaderReferences, resolveIdentifyTarget, resolveLabelNumberLocale, resolveLayerCapabilities, resolveMapGrid, resolvePopupBody, resolvePopupImageHeight, resolvePopupMaxWidth, resolvePopupRows, resolvePopupTitle, resolveProjectHeaderReferences, resolveReadableUrl, resolveRolePrivileges, resolveSvgSource, resolveThreeDTilesRequestHeaders, rgbToHex, routeResponseToFeatures, rowCap, ruleBasedColorExpression, ruleBasedVisibilityFilter, s3ObjectHttpsUrl, sameCesiumImagery, sampleMapTerrain, sampleMapTerrainPoint, sampleRemoteElevations, sanitizeLayerStylePatch, scaleAltitudeToActiveBody, scaleDenomination, scaleSpan, scrubCommentsForRemovedLayers, scrubLegendForRemovedLayers, scrubPrintLayoutForLayers, scrubPrintLayoutForRemovedLayers, scrubWidgetsForRemovedLayers, selectLayerById, selectLayerIds, selectLayerSummaries, selectLayersWhen, selectedGeocodingLocator, serializeLayerLibrary, serializeLayerStylesFile, serializeLayersFile, serializeProject, serializeProjectWithLayerCache, serializeProjectWithLayerCacheAsync, serializeStoryMapCsv, serializeStoryMapJson, serializeStyleLibrary, setActiveEllipsoidId, setExternalNativePaintBridge, setGeocodingFetch, setGeocodingTokenProvider, setHistoryCoalesceMs, setMaxHistoryFeatureCount, setProjectCredentialLookup, setRegistryPublishableSettings, setStoredAuthorName, shouldThrottle, shouldUseTiledRendering, shouldZoomToNewLayers, simpleStyleNumberValue, sortLayerGroupInPanel, splitProjectCredentials, stacAssetMediaType, stampFeatureCollectionEditorTracking, stampFeatureEditorTracking, stampFeaturePropertiesEditorTracking, storyLayerOpacityFactor, storyLocationView, storyMapHasContent, storyVisibleLayers, stringifyPopupValue, stripGoogleMapsApiKeyHeader, stripJoinFields, stripVirtualFieldColumns, styleValue, subscribeProjectRestoreHistory, substituteExpressionVariables, supportsBridgedOpacity, transformGeojsonElevation, trimHistoryBySize, undo, unescapePolyline, uniqueImportedLayerName, unmatchedGeocodeFeature, unresolvedLayerLibraryJoins, unsignedSourceUrl, useAppCapability, useAppStore, useLayer, useLayerIds, useLayerSummaries, useLayersWhen, validateAttributeFormField, validateAttributeFormValues, validateLayerDescriptiveMetadata, validateMapExpression, valueMapLabelFor, valueMapToText, vectorCircleColorValue, vectorColorExpression, vectorFillColorValue, vectorFillOpacityValue, vectorLineColorValue, vectorOutlineColorValue, vectorStrokeWidthValue, visiblePopupFields, visiblePopupProperties, withDatumShift, withGeoKeysDatumShift, withJpegTablesPatch, withoutHistory };
|
|
9067
|
+
export { ALL_APP_PRIVILEGES, ALL_DEPLOYMENT_CAPABILITIES, ARCGIS_PROJECTION_PRESETS, BLANK_BASEMAP, BLEND_MODES, BUILT_IN_STYLE_PRESETS, CARTOCIUDAD_MIN_INTERVAL_MS, CARTOCIUDAD_PUBLIC_HOST, CESIUM_BASEMAPS, CESIUM_BING_AERIAL_ASSET_ID, CESIUM_GOOGLE_PHOTOREALISTIC_ASSET_ID, CESIUM_ION_QUICK_PICKS, CESIUM_ION_SOURCE_KIND, CESIUM_KML_SOURCE_KIND, CESIUM_OSM_BUILDINGS_ASSET_ID, CHINA_BASEMAPS, CZML_QUICK_PICKS, CZML_SOURCE_KIND, DEFAULT_BASEMAP, DEFAULT_BLEND_MODE, DEFAULT_COLLABORATION_STATE, DEFAULT_DASHBOARD_COLUMNS, DEFAULT_EDITOR_IDENTITY, DEFAULT_EDITOR_TRACKING_CONFIG, DEFAULT_ELLIPSOID_ID, DEFAULT_FORWARD_GEOCODE_ENDPOINT, DEFAULT_GEOCODING_PROVIDER_ID, DEFAULT_LAYER_GROUP_OPACITY, DEFAULT_LAYER_STYLE, DEFAULT_LEGEND_CONFIG, DEFAULT_MAP_GRID_LAYOUT, DEFAULT_PRIMARY_RENDERER, DEFAULT_PRINT_LAYOUT, DEFAULT_PROJECT_NAME, DEFAULT_PROJECT_PREFERENCES, DEFAULT_REVERSE_GEOCODE_ENDPOINT, DEFAULT_ROUTING_ENDPOINT, DEFAULT_STORY_CHAPTER_DURATION_SECONDS, DEFAULT_STORY_MAP, DEPLOYMENT_CAPABILITIES, DUCKDB_VECTOR_FEATURE_WARN_COUNT, DUCKDB_VECTOR_ROUTE_BYTES, EARTH_MEAN_RADIUS_METERS, EDITOR_IDENTITY_STORAGE_KEY, ELEVATION_REQUEST_TIMEOUT_MS, ELLIPSOIDS, EXPRESSION_FUNCTION_CATEGORIES, ElevationFetchError, FEET_PER_METER, FEET_PER_MILE, GEOCODE_ATTRIBUTE_PREFIX, GEOCODE_DISPLAY_NAME_KEY, GEOCODE_LAT_KEY, GEOCODE_LON_KEY, GEOCODE_PROVIDER_KEY, GEOCODE_SCORE_KEY, GEOCODE_STATUS_KEY, GEOCODING_PROVIDERS, GOOGLE_MAPS_API_KEY_HEADER, GeocoderServiceError, GeocoderUnsupportedError, IDENTIFY_ALL_LAYERS_ID, LABEL_NUMBER_LOCALES, LABEL_NUMBER_SAMPLE, LARGE_VECTOR_FEATURE_THRESHOLD, LAYERS_FILE_TYPE, LAYERS_FILE_VERSION, LAYER_LIBRARY_BUNDLE_TYPE, LAYER_LIBRARY_BUNDLE_VERSION, LAYER_PALETTE, LAYER_STYLES_FILE_TYPE, LAYER_STYLES_FILE_VERSION, LAYER_TYPES, MAP_CRS_CHANGE_EVENT, MAP_CRS_PRESETS, MAX_DASHBOARD_COLUMNS, MAX_DIAGRAM_FEATURES, MAX_DIAGRAM_SCAN_FEATURES, MAX_LAYERS_FILE_BYTES, MAX_LAYER_LIBRARY_ENTRIES, MAX_LAYER_LIBRARY_ENTRY_BYTES, MAX_MAP_GRID_DIM, MAX_POINTS_PER_REQUEST, MAX_PROCESSING_HISTORY, MAX_PROJECT_BOOKMARKS, MAX_REDACT_DEPTH, MAX_STORY_CHAPTER_DURATION_SECONDS, MERCATOR_METERS_PER_PIXEL_AT_ZOOM_0, METERS_PER_FOOT, METERS_PER_MILE, METERS_PER_NAUTICAL_MILE, MIN_DASHBOARD_COLUMNS, MIN_DIAGRAM_SIZE, MIN_STORY_CHAPTER_DURATION_SECONDS, NETCDF_IMAGE_SOURCE_KIND, NOMINATIM_MIN_INTERVAL_MS, NOMINATIM_PUBLIC_HOST, NO_DEPLOYMENT_CAPABILITIES, NO_LAYERS, OPENFREEMAP_BASEMAPS, PHOTO_FULL_PROPERTY, PHOTO_PROPERTY, PLANETARY_BASEMAPS, PLANETARY_BASEMAP_GROUPS, PLANETARY_BASEMAP_SENTINEL_PREFIX, PLANET_SWITCHER_OPTIONS, POINTER_ELEVATION_CACHE_LIMIT, POINTER_ELEVATION_DEBOUNCE_MS, POPUP_IMAGE_HEIGHT_RANGE, POPUP_MAX_WIDTH_RANGE, PROJECT_CREDENTIAL_FIELDS, PROJECT_VERSION, PROTOMAPS_BASEMAPS, PUBLIC_GEOCODE_ROW_CAP, PUBLISHABLE_PLUGIN_SETTINGS, RAMP_STYLE_KEYS, RASTER_APPEARANCE_STATE_KEYS, REGIONAL_BASEMAPS, REGIONAL_BASEMAP_GROUPS, REGIONAL_BASEMAP_SENTINEL_PREFIX, ROLE_PRIVILEGES, RoutingRequestError, S3CorsError, S3_MAX_PRESIGN_SECONDS, SELECTION_MODES, SQL_QUERY_SOURCE_KIND, STAC_PROCESSING_EXTENSION, STAC_VERSION, STYLE_LIBRARY_BUNDLE_TYPE, STYLE_LIBRARY_BUNDLE_VERSION, SYMBOL_STYLE_KEYS, VECTOR_COLOR_RAMPS, activeLayerFilterExpression, activeQuickFilters, adaptBboxTemplateToCrs, addLayersToProject, allowsCredentialHeaders, appPrivilegeReason, applyCopiedLayerStyle, applyGroupEffects, applyJoinsToLayer, applyLayerJoins, applyLayerVirtualFields, applyMatchedSelection, applyProjectToStore, applySelectionMode, applyStoryLayerOpacity, arcgisLocatorInputField, asTileScheme, attributeFormFieldLabel, attributeLinkUrl, availableCesiumBasemap, basemapToCesiumImagery, batchDecodePolylines, bodyLengthToEarth, buildForwardGeocodeUrl, buildIsochroneRequest, buildLayerPanelUnits, buildLayerStacItem, buildLayerTree, buildMatrixRequest, buildReverseGeocodeUrl, buildRouteRequest, canRedoProjectRestore, canSaveLayerToLibrary, canUndoProjectRestore, captureLayerLibraryEntry, cascadeLayerJoinRefresh, cesiumIonAssetId, cesiumIonAssetKind, cesiumKmlSource, changedPreferenceCredentials, circleRadiusValue, clampLabelDecimals, clampLatitude, clearExternalNativePaintBridge, clearHistory, clearQuickFilterValues, coerceAttributeFormValue, collectDiagramData, collectTransitiveJoinSourceIds, compareSequenceValues, compileFeatureExpression, compileLayerFilters, compileQuickFilter, compileQuickFilters, computeGeoArrowBBox, controlRendersLayer, convertTiffYCbCrToRgb, copyableLayerStyleKind, createCesiumIonLayer, createCesiumKmlLayer, createCzmlLayer, createDefaultAppCapabilities, createDefaultMapView, createDefaultPrintLayout, createEmptyProject, createEqualIntervalBreaks, createGraduatedClassBreaks, createLayerLibraryEntryId, createPointerElevationResolver, createProjectLayerSerializationCache, createProjectTemplate, createQuantileBreaks, createSampleStoryMap, createStyleLayerEvaluator, createStyleLibraryEntryId, csvRowsToGeocodeRequests, currentEditorIdentity, czmlSource, darkenHex, datumShiftFor, decodePolyline, decodePolylineDetailed, deriveTileMatrixSet, detachProjectCopy, detectNonGeographicCoordinates, diagramAnchor, diagramPixelSize, diagramsSuppressedByPointRenderer, diffFeatureCollections, diffProjects, documentLocale, dominantGeometry, drawMarkerPath, earthAreaToBody, earthLengthToBody, editorTrackingFieldNames, effectiveLayerRenderState, effectiveVectorRules, encodePolyline, encodeS3Key, ensureEditorTrackingFields, environmentVariableAccount, evaluateMapExpression, excludeHiddenFieldsFromGeojson, excludeHiddenFieldsFromProject, explainS3ReadError, extractCopiedLayerStyle, extractLayerStyleEntries, extractLayersFileContent, extractStyleLibraryStyle, extrusionColorValue, extrusionHeightValue, featureCollectionToGeoArrow, featureSelectionId, fetchArcGISLocatorInfo, fetchElevations, findLayerStyleEntryIndex, formatCameraAltitude, formatExpressionPreviewValue, formatLabelNumber, formatLabelNumberSample, formatPixelValue, formatPopupValue, formatRoundNum, formatS3Uri, generatorCircleRadiusValue, generatorSizeRange, geoArrowToFeatureCollection, geoJSONToPolylineStr, geocodeForward, geocodeMatchToFeature, geocodeReverse, geocodeSuggest, geocoderMinIntervalMs, geocoderNeedsApiKey, geocoderSupportsReverse, geocoderSupportsSuggest, geocodingApiKeyAccount, geojsonHasZCoordinates, getActiveBodyRadiusRatio, getActiveEllipsoid, getActiveMeanRadiusMeters, getActiveSemiMajorAxisMeters, getArcgisApiKey, getAttributeFormField, getBuildEnvironment, getCesiumIonToken, getEllipsoid, getExternalNativePaintBridge, getGeocoderConfig, getGeocodingProvider, getGoogleMapsApiKey, getHistoryCoalesceMs, getMapCrsPreset, getMapboxAccessToken, getMaxHistoryFeatureCount, getPlanetaryBasemapById, getPlanetaryBasemapByStyleUrl, getProtomapsApiKey, getProtomapsStyleUrl, getRegionalBasemapById, getRegionalBasemapByStyleUrl, getRoundNum, getRoutingConfig, getRuntimeEnvironment, getS3UrlSigner, getSpatialExtensionPath, getVectorColorRamp, googleMapsApiKeyHeaderValue, groupMemberIndices, hasActiveLayerFilter, hasActiveQuickFilter, hasAppPrivilege, hasHeaderReferences, hasPathTraversal, hasRestorableLayerSource, hasSimpleStyleProperties, heatmapRampColors, horizontalBbox, hydrateProjectLayer, identifyAllIncludes, identifyStateWithoutLayers, inferFieldTypes, inferLayerCapabilities, initialLayerStyle, installCogTilerDatumShift, interpolateColors, interpolateHexColor, interpolateRampColors, intersectPrivileges, invertSelection, isAbbreviatedJpegCompression, isAbsoluteFilesystemPath, isAdoptedVectorAwaitingFeatures, isAllowedPluginManifestUrl, isAttributeFormFieldVisible, isCesiumIonLayer, isCesiumKmlLayer, isCesiumOnlyLayer, isCredentialFieldName, isCredentialUrlParam, isCredentialedS3Url, isCzmlLayer, isDefaultPrintLayout, isDeploymentCapability, isDiagramStyleEnabled, isDuckDBQueryLayer, isExternalNativeLayerRecord, isGeoArrowBatch, isGooglePhotorealisticTilesetUrl, isHeaderReferenceOnly, isHexColor, isInitialLayerStyle, isInlineImageValue, isInternalPopupField, isIpadDesktopUserAgent, isMaintainedEditorTrackingField, isMapClickClaimed, isPopupClickEnabled, isPopupHoverEnabled, isRasterMarkerSource, isReferencedLayer, isRegionalBasemapSentinel, isS3Uri, isSafePopupUrl, isSecretEnvironmentVariable, isSessionOnlyLayer, isStoryHiddenLayer, isStyleLibraryTargetLayer, isStyleSpecColor, isSvgMarkerResponse, isTileAddressError, isValidMetadataDate, isValidMetadataEmail, isValidMetadataUrl, isVectorColorExpression, isochroneResponseToFeatures, jsonValuesEqual, labelFieldTextField, layerGroupDepth, layerGroupMoveability, layerGroupSortability, layerJoinKey, layerLibraryConfigPatch, layerLibraryEntryNeedsLocalFile, layerLocalPath, layerPanelGroupHeaders, lineWidthValue, localFileName, lookupProjectCredential, mapZoomStepOutputs, matchFeaturesByExpression, matchLayerStyleEntry, matrixResponseToFeatures, meanRadiusMeters, mercatorMetersPerPixelAtZoom0, mergeAttributeFormConfigs, metadataDateToRfc3339, metersWidthExpression, nextDelayMs, nextLayerPaletteColor, nominatimResultToFeature, nominatimReverseResultToDisplay, nonEmptyRecord, normalizeAppPrivileges, normalizeArcGISLocatorUrl, normalizeArcgisWkid, normalizeBlankBackgroundColor, normalizeBookmarkGroups, normalizeBookmarks, normalizeCesiumBasemap, normalizeDashboardColumns, normalizeGeocodingLocator, normalizeGeocodingProviderId, normalizeGroupContiguity, normalizeHexColor, normalizeLayerCapabilities, normalizeLayerDescriptiveMetadata, normalizeLayerLibraryEntries, normalizeLayerStyleEntries, normalizeLayersFileContent, normalizeLegendConfig, normalizeLongitude, normalizeMapCrs, normalizeMapLayout, normalizeMapViewState, normalizeModelGraph, normalizeModels, normalizeObiaWorkbench, normalizePrimaryRenderer, normalizePrintLayoutConfig, normalizeProcessingHistory, normalizeProjectComments, normalizeProjectInteraction, normalizeSecondaryMapViews, normalizeStoryChapterDurationSeconds, normalizeStoryMap, normalizeStyleLibraryEntries, normalizeWidgets, overlayStoredEnvironmentVariables, overlayStoredGeocodingApiKeys, overlayStoredPreferenceCredentials, parseArcGISLocatorInfo, parseArcGISSuggestions, parseCesiumIonAssetId, parseContours, parseCzml, parseDeploymentCapabilities, parseHexColor, parseHexColorList, parseJsonExpression, parseLayerLibrary, parseLayerStylesFile, parseLayersFile, parseMapCrsEpsgCode, parseMetadataKeywords, parseProject, parseS3BucketList, parseS3Error, parseS3ListObjects, parseS3Url, parseStoryMapCsv, parseStoryMapJson, parseStyleLibrary, parseValueMapText, patchJpegCogSource, persistedThreeDTilesRequestHeaders, pickEditorIdentity, planLayerLibraryAdd, pluginOwnsPaint, polylineStrToGeoJSON, popupFieldLabel, portableWmsTileUrl, presignS3Url, previewValue, printLayoutConfigsEqual, projectFromStore, projectPathLabel, proportionalRadiusExpression, proportionalSizeRange, readStoredAuthorName, reapplyLayerJoins, redactConfigurationCredentials, redactCredentials, redactProjectCredentials, redactUrlCredentials, redo, registerMapClickClaim, registerProjectRestoreHistory, registerS3UrlSigner, removeTrailingJsonCommas, rendererAppliesOpacity, reorderLayerGroupInPanel, requestIsochrone, requestMatrix, requestNavigationRoute, requestRoute, resolveConfiguredPopupTitle, resolveEditorTrackingConfig, resolveGeocoderConfig, resolveHeaderReferences, resolveIdentifyTarget, resolveLabelNumberLocale, resolveLayerCapabilities, resolveLayerTileAddress, resolveMapGrid, resolvePopupBody, resolvePopupImageHeight, resolvePopupMaxWidth, resolvePopupRows, resolvePopupTitle, resolveProjectHeaderReferences, resolveReadableUrl, resolveRolePrivileges, resolveSvgSource, resolveThreeDTilesRequestHeaders, resolveTileAddress, rgbToHex, routeResponseToFeatures, rowCap, ruleBasedColorExpression, ruleBasedVisibilityFilter, s3ObjectHttpsUrl, sameCesiumImagery, sampleMapTerrain, sampleMapTerrainPoint, sampleRemoteElevations, sanitizeLayerStylePatch, scaleAltitudeToActiveBody, scaleDenomination, scaleSpan, scrubCommentsForRemovedLayers, scrubLegendForRemovedLayers, scrubPrintLayoutForLayers, scrubPrintLayoutForRemovedLayers, scrubWidgetsForRemovedLayers, selectLayerById, selectLayerIds, selectLayerSummaries, selectLayersWhen, selectedGeocodingLocator, serializeLayerLibrary, serializeLayerStylesFile, serializeLayersFile, serializeProject, serializeProjectWithLayerCache, serializeProjectWithLayerCacheAsync, serializeStoryMapCsv, serializeStoryMapJson, serializeStyleLibrary, setActiveEllipsoidId, setExternalNativePaintBridge, setGeocodingFetch, setGeocodingTokenProvider, setHistoryCoalesceMs, setMaxHistoryFeatureCount, setProjectCredentialLookup, setRegistryPublishableSettings, setStoredAuthorName, shouldThrottle, shouldUseTiledRendering, shouldZoomToNewLayers, simpleStyleNumberValue, sortLayerGroupInPanel, splitProjectCredentials, stacAssetMediaType, stampFeatureCollectionEditorTracking, stampFeatureEditorTracking, stampFeaturePropertiesEditorTracking, storyLayerOpacityFactor, storyLocationView, storyMapHasContent, storyVisibleLayers, stringifyPopupValue, stripGoogleMapsApiKeyHeader, stripJoinFields, stripVirtualFieldColumns, styleValue, subscribeProjectRestoreHistory, substituteExpressionVariables, supportsBridgedOpacity, transformGeojsonElevation, trimHistoryBySize, undo, unescapePolyline, uniqueImportedLayerName, unmatchedGeocodeFeature, unresolvedLayerLibraryJoins, unsignedSourceUrl, useAppCapability, useAppStore, useLayer, useLayerIds, useLayerSummaries, useLayersWhen, validateAttributeFormField, validateAttributeFormValues, validateLayerDescriptiveMetadata, validateMapExpression, valueMapLabelFor, valueMapToText, vectorCircleColorValue, vectorColorExpression, vectorFillColorValue, vectorFillOpacityValue, vectorLineColorValue, vectorOutlineColorValue, vectorStrokeWidthValue, visiblePopupFields, visiblePopupProperties, withDatumShift, withGeoKeysDatumShift, withJpegTablesPatch, withoutHistory };
|
|
9026
9068
|
|
|
9027
9069
|
//# sourceMappingURL=index.mjs.map
|