@arcgis/core 4.27.0-next.20230317 → 4.27.0-next.20230321
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/TimeExtent.js +1 -1
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/05e47e78e258dd5ab6ea.js +1 -0
- package/assets/esri/core/workers/chunks/{b661d2c785333429aad3.js → 0b005e3502dd97562701.js} +1 -1
- package/assets/esri/core/workers/chunks/{8812629e07e5bf46caa7.js → 1d2271a36641f6834401.js} +1 -1
- package/assets/esri/core/workers/chunks/1d65a2bc91774fdbd690.js +1 -0
- package/assets/esri/core/workers/chunks/273a894ab44b76ee4488.js +1 -0
- package/assets/esri/core/workers/chunks/29ee4f14602caf6967e4.js +1 -0
- package/assets/esri/core/workers/chunks/{56ddde83f40cda0a8a5c.js → 2c0775541cfec9d43acb.js} +1 -1
- package/assets/esri/core/workers/chunks/{48a1b8be3c2a59c4c925.js → 32f9b488915a4a8864e5.js} +1 -1
- package/assets/esri/core/workers/chunks/{790d62ea3c90ca076095.js → 403c18eaa30673b096fe.js} +1 -1
- package/assets/esri/core/workers/chunks/41bbf58417f4085657f4.js +1 -0
- package/assets/esri/core/workers/chunks/{c36efbdd0a84fe851bbb.js → 433686dfda9e2ff1f98b.js} +1 -1
- package/assets/esri/core/workers/chunks/4be7647605300e07e843.js +1 -0
- package/assets/esri/core/workers/chunks/5cc99e9e974fec32b597.js +1 -0
- package/assets/esri/core/workers/chunks/6062bc79ebd5047a473a.js +1 -0
- package/assets/esri/core/workers/chunks/{57aa75a10fb8bb3fa517.js → 622139ef8f7181e48cd0.js} +1 -1
- package/assets/esri/core/workers/chunks/6b14673a4afd6ef81487.js +1 -0
- package/assets/esri/core/workers/chunks/70ea44365021b665c213.js +1 -0
- package/assets/esri/core/workers/chunks/{7727e6a4338c831f272f.js → 7570ec6a64a88ddc0fdd.js} +1 -1
- package/assets/esri/core/workers/chunks/81a6f4b43e047c3395c0.js +1 -0
- package/assets/esri/core/workers/chunks/87edeb09a948122fa030.js +1 -0
- package/assets/esri/core/workers/chunks/8daa0523d49653cc5861.js +1 -0
- package/assets/esri/core/workers/chunks/{3ff3d67f1bc6e2b2f48e.js → 90e12cff7672f3d92ced.js} +1 -1
- package/assets/esri/core/workers/chunks/{f150bd21c3b9e098da57.js → 92951b85676df776961f.js} +56 -56
- package/assets/esri/core/workers/chunks/983b26414cc46d9c3105.js +1 -0
- package/assets/esri/core/workers/chunks/{19355af765993931a7c0.js → 9b196a726c6d175ca60f.js} +1 -1
- package/assets/esri/core/workers/chunks/a27951dbe83c63f9d01a.js +1 -0
- package/assets/esri/core/workers/chunks/bc002e4dff8859571a7a.js +1 -0
- package/assets/esri/core/workers/chunks/bfc2b40f1892970281c6.js +1 -0
- package/assets/esri/core/workers/chunks/c162d1e27e779732d494.js +1 -0
- package/assets/esri/core/workers/chunks/c5d872adce711ec61ede.js +1 -0
- package/assets/esri/core/workers/chunks/c5dd23d11fa91b0f318e.js +1 -0
- package/assets/esri/core/workers/chunks/{e97c4beb3a6cf1d91310.js → c6c2f771bca0e303b5c0.js} +1 -1
- package/assets/esri/core/workers/chunks/c8f019d13f6b22481f2e.js +1 -0
- package/assets/esri/core/workers/chunks/d34dbb49508a95588423.js +1 -0
- package/assets/esri/core/workers/chunks/e637e47000f4dc48054d.js +1 -0
- package/assets/esri/core/workers/chunks/e7093d27a31345953dca.js +1 -0
- package/assets/esri/core/workers/chunks/f1ab86dbbd5b04e2a96c.js +1 -0
- package/assets/esri/core/workers/chunks/f85a01429959e60a8713.js +1 -0
- package/assets/esri/core/workers/chunks/ff9efa829497557ec26a.js +1 -0
- package/assets/esri/themes/base/widgets/_Bookmarks.scss +3 -0
- package/assets/esri/themes/base/widgets/_Editor.scss +18 -0
- package/assets/esri/themes/base/widgets/_ItemList.scss +13 -33
- package/assets/esri/themes/dark/main.css +1 -1
- package/assets/esri/themes/light/main.css +1 -1
- package/assets/esri/themes/light/view.css +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_en.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_ar.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_bg.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_bs.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_ca.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_cs.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_da.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_de.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_el.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_es.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_et.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_fi.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_fr.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_he.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_hr.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_hu.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_id.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_it.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_ja.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_ko.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_lt.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_lv.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_nb.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_nl.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_pl.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_pt-BR.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_pt-PT.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_ro.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_ru.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_sk.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_sl.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_sr.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_sv.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_th.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_tr.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_uk.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_vi.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_zh-CN.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_zh-HK.json +1 -1
- package/assets/esri/widgets/Slice/t9n/Slice_zh-TW.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ar.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_bg.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_bs.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ca.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_cs.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_da.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_de.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_el.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_es.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_et.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_fi.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_fr.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_he.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_hr.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_hu.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_id.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_it.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ja.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ko.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_lt.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_lv.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_nb.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_nl.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_pl.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_pt-BR.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_pt-PT.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ro.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ru.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sk.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sl.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sr.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sv.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_th.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_tr.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_uk.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_vi.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_zh-CN.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_zh-HK.json +1 -1
- package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_zh-TW.json +1 -1
- package/chunks/ColorMaterial.glsl.js +16 -14
- package/core/domUtils.js +1 -1
- package/core/maybe.js +1 -1
- package/core/urlUtils.js +1 -1
- package/geohash/GeohashTree.js +1 -1
- package/interfaces.d.ts +12 -214
- package/layers/SceneLayer.js +1 -1
- package/layers/graphics/controllers/FeatureTileController3D.js +1 -1
- package/layers/support/FieldsIndex.js +1 -1
- package/layers/support/fieldType.js +1 -1
- package/layers/support/fieldUtils.js +1 -1
- package/layers/support/rasterFunctionConstants.js +1 -1
- package/layers/support/rasterFunctions/BaseRasterFunction.js +1 -1
- package/layers/support/rasterFunctions/CurvatureFunction.js +5 -0
- package/layers/support/rasterFunctions/CurvatureFunctionArguments.js +5 -0
- package/layers/support/rasterFunctions/SlopeFunction.js +1 -1
- package/layers/support/rasterFunctions/rasterFunctionHelper.js +1 -1
- package/layers/support/rasterFunctions/surfaceUtils.js +1 -1
- package/package.json +1 -1
- package/portal/schemas/definitions.js +1 -1
- package/rest/query/operations/pbfFeatureServiceParser.js +1 -1
- package/support/revision.js +1 -1
- package/views/2d/engine/imagery/processor/curvatureProcessor.js +5 -0
- package/views/2d/engine/imagery/processor/rasterProcessor.js +1 -1
- package/views/2d/engine/webgl/AttributeStoreView.js +1 -1
- package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
- package/views/2d/layers/features/support/BinStore.js +1 -1
- package/views/2d/layers/features/support/ClusterStore.js +1 -1
- package/views/2d/layers/features/support/FeatureSetReader.js +1 -1
- package/views/2d/layers/features/support/FeatureSetReaderJSON.js +1 -1
- package/views/2d/layers/features/support/FeatureSetReaderPBF.js +1 -1
- package/views/2d/layers/features/support/FeatureSetReaderPBFHeader.js +1 -1
- package/views/2d/layers/features/support/FeatureSetReaderPBFIndirect.js +1 -1
- package/views/3d/analysis/Slice/SliceTool.js +1 -1
- package/views/3d/analysis/Slice/sliceToolUtils.js +1 -1
- package/views/3d/environment/CloudsData.js +1 -1
- package/views/3d/environment/CloudsGenerator.js +1 -1
- package/views/3d/environment/SceneViewEnvironmentManager.js +1 -1
- package/views/3d/interactive/editingTools/transformGraphic/GraphicScaleRotateTransform.js +1 -1
- package/views/3d/interactive/editingTools/transformGraphic/GraphicTransformTool.js +1 -1
- package/views/3d/interactive/editingTools/transformGraphic/ScaleRotateMeshAdapter.js +1 -1
- package/views/3d/interactive/editingTools/transformGraphic/ScaleRotateObjectSymbol3DAdapter.js +1 -1
- package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
- package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DFeatureProcessor.js +1 -1
- package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DLineSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DObjectSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPathSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DSymbol.js +1 -1
- package/views/3d/layers/graphics/Graphics3DSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DWebStyleSymbol.js +1 -1
- package/views/3d/layers/graphics/interfaces.js +1 -1
- package/views/3d/layers/graphics/polygonUtils.js +1 -1
- package/views/3d/layers/support/FastSymbolUpdates.js +1 -1
- package/views/3d/support/buffer/InterleavedLayout.js +1 -1
- package/views/3d/support/buffer/glUtil.js +1 -1
- package/views/3d/support/buffer/workerHelper.js +1 -1
- package/views/3d/support/engineContent/line.js +1 -1
- package/views/3d/terrain/PatchRenderData.js +1 -1
- package/views/3d/terrain/TerrainSurface.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/util/CloudsParallaxShading.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js +1 -1
- package/views/3d/webgl-engine/lib/DefaultVertexAttributeLocations.js +1 -1
- package/views/3d/webgl-engine/lib/TextRenderParameters.js +1 -1
- package/views/3d/webgl-engine/materials/ColorMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/PatternMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js +1 -1
- package/views/3d/webgl-engine/shaders/ColorMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/ColorMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ColorMaterialTechniqueConfiguration.js +1 -1
- package/views/interactive/snapping/featureSources/FeatureServiceSnappingSource.js +1 -1
- package/views/interactive/tooltip/TransformTooltipInfos.js +1 -1
- package/views/interactive/tooltip/content/TooltipContentTransformRotate.js +1 -1
- package/views/interactive/tooltip/content/TooltipContentTransformScale.js +1 -1
- package/widgets/Bookmarks/css.js +1 -1
- package/widgets/Bookmarks.js +1 -1
- package/widgets/Editor/CreateFeaturesWorkflow.js +1 -1
- package/widgets/Editor/CreateFeaturesWorkflowData.js +1 -1
- package/widgets/Editor/EditorViewModel.js +1 -1
- package/widgets/Editor/Upload.js +5 -0
- package/widgets/Editor/UploadState.js +4 -0
- package/widgets/Editor/workflowUtils.js +1 -1
- package/widgets/Editor.js +1 -1
- package/widgets/FeatureForm/FeatureFormViewModel.js +1 -1
- package/widgets/FeatureForm/{InputField.js → FieldInput.js} +1 -1
- package/widgets/FeatureForm/FormExpressionsManager.js +1 -1
- package/widgets/FeatureForm/GroupInput.js +5 -0
- package/widgets/FeatureForm/css.js +1 -1
- package/widgets/FeatureForm/featureFormUtils.js +1 -1
- package/widgets/FeatureForm.js +1 -1
- package/widgets/FeatureTable/FieldColumn.js +1 -1
- package/widgets/FeatureTemplates/ItemList.js +1 -1
- package/widgets/FeatureTemplates/TemplateItem.js +1 -1
- package/widgets/FeatureTemplates.js +1 -1
- package/widgets/Fullscreen/FullscreenViewModel.js +1 -1
- package/widgets/LayerList/LayerListViewModel.js +1 -1
- package/widgets/LayerList.js +1 -1
- package/widgets/ScaleBar/ScaleBarViewModel.js +1 -1
- package/widgets/ShadowCast/ShadowCastViewModel.js +1 -1
- package/assets/esri/core/workers/chunks/009348f65fab440f7752.js +0 -1
- package/assets/esri/core/workers/chunks/075ecd53fb229dfee53c.js +0 -1
- package/assets/esri/core/workers/chunks/1c77b92063ee36421914.js +0 -1
- package/assets/esri/core/workers/chunks/1ee774c3f29d8074da12.js +0 -1
- package/assets/esri/core/workers/chunks/262b6de5a29c713b4010.js +0 -1
- package/assets/esri/core/workers/chunks/281c0f936b5645a673ab.js +0 -1
- package/assets/esri/core/workers/chunks/2883a59fc1fc9e4d71af.js +0 -1
- package/assets/esri/core/workers/chunks/2e032a58ac6717313227.js +0 -1
- package/assets/esri/core/workers/chunks/4d4cbfe72835c0460b09.js +0 -1
- package/assets/esri/core/workers/chunks/5504dff4113dd74d2fa7.js +0 -1
- package/assets/esri/core/workers/chunks/5bded2588008117d0c35.js +0 -1
- package/assets/esri/core/workers/chunks/6caf8a0b49bd01906f32.js +0 -1
- package/assets/esri/core/workers/chunks/9cab04c71d8bccf0156d.js +0 -1
- package/assets/esri/core/workers/chunks/9f02a0670ad73718d8f9.js +0 -1
- package/assets/esri/core/workers/chunks/a265e454461edb306e2d.js +0 -1
- package/assets/esri/core/workers/chunks/a50ca44a62434bf18664.js +0 -1
- package/assets/esri/core/workers/chunks/bd090f9ec6cfe08e19a3.js +0 -1
- package/assets/esri/core/workers/chunks/c3338bdce8368731c4e9.js +0 -1
- package/assets/esri/core/workers/chunks/c54df59b2b3f73828a44.js +0 -1
- package/assets/esri/core/workers/chunks/ddebf3b5a131a6da5419.js +0 -1
- package/assets/esri/core/workers/chunks/de461c30aa24ec8bb212.js +0 -1
- package/assets/esri/core/workers/chunks/e23f56bee694a38da5b9.js +0 -1
- package/assets/esri/core/workers/chunks/ec73d16ef169adfc34fb.js +0 -1
- package/assets/esri/core/workers/chunks/ef884e2833868234c13c.js +0 -1
- package/assets/esri/core/workers/chunks/f3c99525fb1b0f719fe0.js +0 -1
- package/assets/esri/core/workers/chunks/fe314feede84dd688010.js +0 -1
- package/assets/esri/core/workers/chunks/ff15557dc7b74162ed75.js +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_ar.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_bg.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_bs.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_ca.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_cs.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_da.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_de.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_el.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_en.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_es.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_et.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_fi.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_fr.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_he.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_hr.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_hu.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_id.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_it.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_ja.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_ko.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_lt.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_lv.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_nb.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_nl.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_pl.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_pt-BR.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_pt-PT.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_ro.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_ru.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_sk.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_sl.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_sr.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_sv.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_th.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_tr.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_uk.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_vi.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_zh-CN.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_zh-HK.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_zh-TW.json +0 -1
- package/widgets/FeatureForm/InputField.d.ts +0 -4
- package/widgets/FeatureForm/InputFieldGroup.d.ts +0 -4
- package/widgets/FeatureForm/InputFieldGroup.js +0 -5
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ko.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"연관 보기","enableConnectivity":"연결성 연관","enableStructuralAttachment":"구조 첨부 파일 연관","maxAllowableAssociations":"연관 최대 허용 수","maxAllowableAssociationsExceededWarning":"더 작은 영역으로 확대하거나 '연관 최대 허용 수' 옵션 값 변경","noAssociationsFoundWarning":"현재 범위에 연관이 없음","
|
|
1
|
+
{"enableAssociations":"연관 보기","enableConnectivity":"연결성 연관","enableStructuralAttachment":"구조 첨부 파일 연관","maxAllowableAssociations":"연관 최대 허용 수","maxAllowableAssociationsExceededWarning":"더 작은 영역으로 확대하거나 '연관 최대 허용 수' 옵션 값 변경","noAssociationsFoundWarning":"현재 범위에 연관이 없음","refreshAssociations":"연관 새로 고침","widgetLabel":"연관"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_lt.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"Peržiūrėti asociacijas","enableConnectivity":"Ryšio asociacijos","enableStructuralAttachment":"Konstrukcinių priedų asociacijos","maxAllowableAssociations":"Didžiausias leidžiamas asociacijų skaičius","maxAllowableAssociationsExceededWarning":"Priartinkite iki mažesnės srities arba pakeiskite parinkties „Didžiausias leidžiamas asociacijų skaičius“ reikšmę","noAssociationsFoundWarning":"Šiame tekste nėra asociacijų","
|
|
1
|
+
{"enableAssociations":"Peržiūrėti asociacijas","enableConnectivity":"Ryšio asociacijos","enableStructuralAttachment":"Konstrukcinių priedų asociacijos","maxAllowableAssociations":"Didžiausias leidžiamas asociacijų skaičius","maxAllowableAssociationsExceededWarning":"Priartinkite iki mažesnės srities arba pakeiskite parinkties „Didžiausias leidžiamas asociacijų skaičius“ reikšmę","noAssociationsFoundWarning":"Šiame tekste nėra asociacijų","refreshAssociations":"Atnaujinti asociacijas","widgetLabel":"Asociacijos"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_lv.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"Skatīt saistības","enableConnectivity":"Savienojamības saistības","enableStructuralAttachment":"Strukturāla pielikuma saistības","maxAllowableAssociations":"Maksimāli pieļaujamās saistības","maxAllowableAssociationsExceededWarning":"Tuviniet līdz mazākam apgabalam vai mainiet opcijas 'Maksimāli pieļaujamās saistības' vērtību","noAssociationsFoundWarning":"Pašreizējā pārklājumā nav saistību","
|
|
1
|
+
{"enableAssociations":"Skatīt saistības","enableConnectivity":"Savienojamības saistības","enableStructuralAttachment":"Strukturāla pielikuma saistības","maxAllowableAssociations":"Maksimāli pieļaujamās saistības","maxAllowableAssociationsExceededWarning":"Tuviniet līdz mazākam apgabalam vai mainiet opcijas 'Maksimāli pieļaujamās saistības' vērtību","noAssociationsFoundWarning":"Pašreizējā pārklājumā nav saistību","refreshAssociations":"Atsvaidzināt saistības","widgetLabel":"Saistības"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_nb.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"Vis forbindelser","enableConnectivity":"Tilkoblingsforbindelser","enableStructuralAttachment":"Strukturelle tilknytningsforbindelser","maxAllowableAssociations":"Høyeste antall tillatte forbindelser","maxAllowableAssociationsExceededWarning":"Zoom inn på et mindre område, eller endre verdien for alternativet Høyest antall tillatte forbindelser.","noAssociationsFoundWarning":"Det er ingen forbindelser i gjeldende utstrekning","
|
|
1
|
+
{"enableAssociations":"Vis forbindelser","enableConnectivity":"Tilkoblingsforbindelser","enableStructuralAttachment":"Strukturelle tilknytningsforbindelser","maxAllowableAssociations":"Høyeste antall tillatte forbindelser","maxAllowableAssociationsExceededWarning":"Zoom inn på et mindre område, eller endre verdien for alternativet Høyest antall tillatte forbindelser.","noAssociationsFoundWarning":"Det er ingen forbindelser i gjeldende utstrekning","refreshAssociations":"Oppdater forbindelser","widgetLabel":"Forbindelser"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_nl.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"Associaties weergeven","enableConnectivity":"Connectiviteit associaties","enableStructuralAttachment":"Structuurbijlage associaties","maxAllowableAssociations":"Maximaal toegestane associaties","maxAllowableAssociationsExceededWarning":"Zoom in op een kleiner gebied of wijzig de waarde van de optie \"Maximaal toegestane associaties\"","noAssociationsFoundWarning":"Er zijn geen associaties in de huidige extent","
|
|
1
|
+
{"enableAssociations":"Associaties weergeven","enableConnectivity":"Connectiviteit associaties","enableStructuralAttachment":"Structuurbijlage associaties","maxAllowableAssociations":"Maximaal toegestane associaties","maxAllowableAssociationsExceededWarning":"Zoom in op een kleiner gebied of wijzig de waarde van de optie \"Maximaal toegestane associaties\"","noAssociationsFoundWarning":"Er zijn geen associaties in de huidige extent","refreshAssociations":"Associaties vernieuwen","widgetLabel":"Associaties"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_pl.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"Wyświetl powiązania","enableConnectivity":"Powiązania łączności","enableStructuralAttachment":"Powiązania załączników strukturalnych","maxAllowableAssociations":"Maksymalna dopuszczalna liczba powiązań","maxAllowableAssociationsExceededWarning":"Przybliż mniejszy obszar lub zmień wartość opcji Maksymalna dopuszczalna liczba powiązań","noAssociationsFoundWarning":"Brak powiązań w bieżącym zasięgu","
|
|
1
|
+
{"enableAssociations":"Wyświetl powiązania","enableConnectivity":"Powiązania łączności","enableStructuralAttachment":"Powiązania załączników strukturalnych","maxAllowableAssociations":"Maksymalna dopuszczalna liczba powiązań","maxAllowableAssociationsExceededWarning":"Przybliż mniejszy obszar lub zmień wartość opcji Maksymalna dopuszczalna liczba powiązań","noAssociationsFoundWarning":"Brak powiązań w bieżącym zasięgu","refreshAssociations":"Odśwież powiązania","widgetLabel":"Powiązania"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_pt-BR.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"Visualizar associações","enableConnectivity":"Associações de conectividade","enableStructuralAttachment":"Associações de anexo estruturais","maxAllowableAssociations":"Máximo de associações permitidas","maxAllowableAssociationsExceededWarning":"Amplie para uma área menor ou altere o valor da opção 'Máximo de associações permitidas'","noAssociationsFoundWarning":"Não há associações na extensão atual","
|
|
1
|
+
{"enableAssociations":"Visualizar associações","enableConnectivity":"Associações de conectividade","enableStructuralAttachment":"Associações de anexo estruturais","maxAllowableAssociations":"Máximo de associações permitidas","maxAllowableAssociationsExceededWarning":"Amplie para uma área menor ou altere o valor da opção 'Máximo de associações permitidas'","noAssociationsFoundWarning":"Não há associações na extensão atual","refreshAssociations":"Atualizar associações","widgetLabel":"Associações"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_pt-PT.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"Ver associações","enableConnectivity":"Associações de conectividade","enableStructuralAttachment":"Associações de anexos estruturais","maxAllowableAssociations":"Associações máximas permitidas","maxAllowableAssociationsExceededWarning":"Amplie para uma área menor ou altere o valor da opção \"Associações máximas permitidas\"","noAssociationsFoundWarning":"Não existem associações na medida atual","
|
|
1
|
+
{"enableAssociations":"Ver associações","enableConnectivity":"Associações de conectividade","enableStructuralAttachment":"Associações de anexos estruturais","maxAllowableAssociations":"Associações máximas permitidas","maxAllowableAssociationsExceededWarning":"Amplie para uma área menor ou altere o valor da opção \"Associações máximas permitidas\"","noAssociationsFoundWarning":"Não existem associações na medida atual","refreshAssociations":"Atualizar associações","widgetLabel":"Associações"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ro.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"Vizualizare asocieri","enableConnectivity":"Asocieri conectivitate","enableStructuralAttachment":"Asociații de atașare structurală","maxAllowableAssociations":"Asocieri permisibile maxime","maxAllowableAssociationsExceededWarning":"Măriți la o zonă la mică sau schimbați valoarea opțiunii „Asocieri permisibile maxime”","noAssociationsFoundWarning":"Nu există asocieri în extinderea curentă","
|
|
1
|
+
{"enableAssociations":"Vizualizare asocieri","enableConnectivity":"Asocieri conectivitate","enableStructuralAttachment":"Asociații de atașare structurală","maxAllowableAssociations":"Asocieri permisibile maxime","maxAllowableAssociationsExceededWarning":"Măriți la o zonă la mică sau schimbați valoarea opțiunii „Asocieri permisibile maxime”","noAssociationsFoundWarning":"Nu există asocieri în extinderea curentă","refreshAssociations":"Reîmprospătare asocieri","widgetLabel":"Asocieri"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_ru.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"Просмотр связей","enableConnectivity":"Сопоставления связности","enableStructuralAttachment":"Связи прикрепления к структуре","maxAllowableAssociations":"Максимальное количество связей","maxAllowableAssociationsExceededWarning":"Приблизьтесь к небольшой области или измените значение параметра 'Максимальное количество связей'.","noAssociationsFoundWarning":"В текущем экстенте нет связей","
|
|
1
|
+
{"enableAssociations":"Просмотр связей","enableConnectivity":"Сопоставления связности","enableStructuralAttachment":"Связи прикрепления к структуре","maxAllowableAssociations":"Максимальное количество связей","maxAllowableAssociationsExceededWarning":"Приблизьтесь к небольшой области или измените значение параметра 'Максимальное количество связей'.","noAssociationsFoundWarning":"В текущем экстенте нет связей","refreshAssociations":"Обновить связи","widgetLabel":"Связи"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sk.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"Zobraziť asociácie","enableConnectivity":"Asociácie konektivity","enableStructuralAttachment":"Asociácie štrukturálnych príloh","maxAllowableAssociations":"Maximálny počet povolených asociácií","maxAllowableAssociationsExceededWarning":"Priblížte sa k menšej oblasti alebo zmeňte hodnotu možnosti 'Maximálny počet povolených asociácií'","noAssociationsFoundWarning":"V súčasnom rozsahu neexistujú žiadne asociácie","
|
|
1
|
+
{"enableAssociations":"Zobraziť asociácie","enableConnectivity":"Asociácie konektivity","enableStructuralAttachment":"Asociácie štrukturálnych príloh","maxAllowableAssociations":"Maximálny počet povolených asociácií","maxAllowableAssociationsExceededWarning":"Priblížte sa k menšej oblasti alebo zmeňte hodnotu možnosti 'Maximálny počet povolených asociácií'","noAssociationsFoundWarning":"V súčasnom rozsahu neexistujú žiadne asociácie","refreshAssociations":"Obnoviť asociácie","widgetLabel":"Asociácie"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sl.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"Oglej si asociacije","enableConnectivity":"Asociacije povezljivosti","enableStructuralAttachment":"Asociacije strukturne priloge","maxAllowableAssociations":"Največje število dovoljenih asociacij","maxAllowableAssociationsExceededWarning":"Povečajte na manjše območje ali spremenite vrednost možnosti »Največje število dovoljenih asociacij«.","noAssociationsFoundWarning":"V trenutnem obsegu ni nobenih asociacij","
|
|
1
|
+
{"enableAssociations":"Oglej si asociacije","enableConnectivity":"Asociacije povezljivosti","enableStructuralAttachment":"Asociacije strukturne priloge","maxAllowableAssociations":"Največje število dovoljenih asociacij","maxAllowableAssociationsExceededWarning":"Povečajte na manjše območje ali spremenite vrednost možnosti »Največje število dovoljenih asociacij«.","noAssociationsFoundWarning":"V trenutnem obsegu ni nobenih asociacij","refreshAssociations":"Osveži asociacije","widgetLabel":"Asociacije"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sr.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"Prikaži povezivanja","enableConnectivity":"Veze za povezivanje","enableStructuralAttachment":"Povezivanja strukturalnih priloga","maxAllowableAssociations":"Maksimalno dozvoljen broj povezivanja","maxAllowableAssociationsExceededWarning":"Zumirajte na manju oblast ili promenite vrednost opcije 'Maksimalno dozvoljen broj povezivanja'","noAssociationsFoundWarning":"Nema povezivanja u trenutnom obuhvatu","
|
|
1
|
+
{"enableAssociations":"Prikaži povezivanja","enableConnectivity":"Veze za povezivanje","enableStructuralAttachment":"Povezivanja strukturalnih priloga","maxAllowableAssociations":"Maksimalno dozvoljen broj povezivanja","maxAllowableAssociationsExceededWarning":"Zumirajte na manju oblast ili promenite vrednost opcije 'Maksimalno dozvoljen broj povezivanja'","noAssociationsFoundWarning":"Nema povezivanja u trenutnom obuhvatu","refreshAssociations":"Osveži povezivanja","widgetLabel":"Povezivanja"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_sv.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"Visa associationer","enableConnectivity":"Anslutningsassociationer","enableStructuralAttachment":"Associationer för strukturbilagor","maxAllowableAssociations":"Maximalt antal tillåtna associationer","maxAllowableAssociationsExceededWarning":"Zooma in till ett mindre område eller ändra värdet för alternativet \"Maximalt antal tillåtna associationer\"","noAssociationsFoundWarning":"Det finns inga associationer i aktuell utbredning","
|
|
1
|
+
{"enableAssociations":"Visa associationer","enableConnectivity":"Anslutningsassociationer","enableStructuralAttachment":"Associationer för strukturbilagor","maxAllowableAssociations":"Maximalt antal tillåtna associationer","maxAllowableAssociationsExceededWarning":"Zooma in till ett mindre område eller ändra värdet för alternativet \"Maximalt antal tillåtna associationer\"","noAssociationsFoundWarning":"Det finns inga associationer i aktuell utbredning","refreshAssociations":"Uppdatera associationer","widgetLabel":"Associationer"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_th.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"ดูการเชื่อมโยง","enableConnectivity":"การเชื่อมโยงการเชื่อมต่อ","enableStructuralAttachment":"การเชื่อมโยงไฟล์แนบเชิงโครงสร้าง","maxAllowableAssociations":"การเชื่อมโยงสูงสุดที่อนุญาต","maxAllowableAssociationsExceededWarning":"ซูมเข้าไปยังพื้นที่ขนาดเล็กลง หรือเปลี่ยนแปลงค่าของตัวเลือก 'การเชื่อมโยงสูงสุดที่อนุญาต'","noAssociationsFoundWarning":"ไม่มีการเชื่อมโยงในขอบเขตปัจจุบัน","
|
|
1
|
+
{"enableAssociations":"ดูการเชื่อมโยง","enableConnectivity":"การเชื่อมโยงการเชื่อมต่อ","enableStructuralAttachment":"การเชื่อมโยงไฟล์แนบเชิงโครงสร้าง","maxAllowableAssociations":"การเชื่อมโยงสูงสุดที่อนุญาต","maxAllowableAssociationsExceededWarning":"ซูมเข้าไปยังพื้นที่ขนาดเล็กลง หรือเปลี่ยนแปลงค่าของตัวเลือก 'การเชื่อมโยงสูงสุดที่อนุญาต'","noAssociationsFoundWarning":"ไม่มีการเชื่อมโยงในขอบเขตปัจจุบัน","refreshAssociations":"รีเฟรชการเชื่อมโยง","widgetLabel":"การเชื่อมโยง"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_tr.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"İlişkilendirmeleri görüntüle","enableConnectivity":"Bağlanırlık ilişkilendirmeleri","enableStructuralAttachment":"Yapısal ek ilişkilendirmeleri","maxAllowableAssociations":"İzin verilen maksimum ilişkilendirme","maxAllowableAssociationsExceededWarning":"Daha küçük bir alana yakınlaştırın veya \"İzin verilen maksimum ilişkilendirme\" seçeneğinin değerini değiştirin","noAssociationsFoundWarning":"Geçerli yayılımda herhangi bir ilişkilendirme yok","
|
|
1
|
+
{"enableAssociations":"İlişkilendirmeleri görüntüle","enableConnectivity":"Bağlanırlık ilişkilendirmeleri","enableStructuralAttachment":"Yapısal ek ilişkilendirmeleri","maxAllowableAssociations":"İzin verilen maksimum ilişkilendirme","maxAllowableAssociationsExceededWarning":"Daha küçük bir alana yakınlaştırın veya \"İzin verilen maksimum ilişkilendirme\" seçeneğinin değerini değiştirin","noAssociationsFoundWarning":"Geçerli yayılımda herhangi bir ilişkilendirme yok","refreshAssociations":"İlişkilendirmeleri yenile","widgetLabel":"İlişkilendirmeler"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_uk.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"Перегляд зв'язків","enableConnectivity":"Зв'язки зв'язності","enableStructuralAttachment":"Зв'язки прикріплень до структури","maxAllowableAssociations":"Максимальна кількість допустимих зв'язків","maxAllowableAssociationsExceededWarning":"Збільште масштаб до меншої області або змініть значення параметра «Максимальна кількість допустимих зв'язків».","noAssociationsFoundWarning":"У поточному екстенті немає зв'язків","
|
|
1
|
+
{"enableAssociations":"Перегляд зв'язків","enableConnectivity":"Зв'язки зв'язності","enableStructuralAttachment":"Зв'язки прикріплень до структури","maxAllowableAssociations":"Максимальна кількість допустимих зв'язків","maxAllowableAssociationsExceededWarning":"Збільште масштаб до меншої області або змініть значення параметра «Максимальна кількість допустимих зв'язків».","noAssociationsFoundWarning":"У поточному екстенті немає зв'язків","refreshAssociations":"Оновити зв'язки","widgetLabel":"Зв'язки"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_vi.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"Xem liên kết","enableConnectivity":"Liên kết về khả năng kết nối","enableStructuralAttachment":"Liên kết đính kèm có kết cấu","maxAllowableAssociations":"Số lượng liên kết tối đa cho phép","maxAllowableAssociationsExceededWarning":"Phóng to một diện tích nhỏ hơn hoặc thay đổi giá trị tuỳ chọn 'Số lượng liên kết tối đa cho phép'.","noAssociationsFoundWarning":"Không có liên kết nào trong phạm vi hiện tại","
|
|
1
|
+
{"enableAssociations":"Xem liên kết","enableConnectivity":"Liên kết về khả năng kết nối","enableStructuralAttachment":"Liên kết đính kèm có kết cấu","maxAllowableAssociations":"Số lượng liên kết tối đa cho phép","maxAllowableAssociationsExceededWarning":"Phóng to một diện tích nhỏ hơn hoặc thay đổi giá trị tuỳ chọn 'Số lượng liên kết tối đa cho phép'.","noAssociationsFoundWarning":"Không có liên kết nào trong phạm vi hiện tại","refreshAssociations":"Làm mới liên kết","widgetLabel":"Liên kết"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_zh-CN.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"查看关联","enableConnectivity":"连通性关联","enableStructuralAttachment":"结构附件关联","maxAllowableAssociations":"最大允许关联","maxAllowableAssociationsExceededWarning":"放大到较小的区域或更改“最大允许关联”选项的值","noAssociationsFoundWarning":"当前范围内没有关联","
|
|
1
|
+
{"enableAssociations":"查看关联","enableConnectivity":"连通性关联","enableStructuralAttachment":"结构附件关联","maxAllowableAssociations":"最大允许关联","maxAllowableAssociationsExceededWarning":"放大到较小的区域或更改“最大允许关联”选项的值","noAssociationsFoundWarning":"当前范围内没有关联","refreshAssociations":"刷新关联","widgetLabel":"关联"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_zh-HK.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"檢視關聯","enableConnectivity":"連線關聯","enableStructuralAttachment":"結構附件關聯","maxAllowableAssociations":"允許的最大關聯數","maxAllowableAssociationsExceededWarning":"放大到更小的區域或變更「允許的最大關聯數」選項的值","noAssociationsFoundWarning":"目前範圍中沒有關聯","
|
|
1
|
+
{"enableAssociations":"檢視關聯","enableConnectivity":"連線關聯","enableStructuralAttachment":"結構附件關聯","maxAllowableAssociations":"允許的最大關聯數","maxAllowableAssociationsExceededWarning":"放大到更小的區域或變更「允許的最大關聯數」選項的值","noAssociationsFoundWarning":"目前範圍中沒有關聯","refreshAssociations":"重新整理關聯","widgetLabel":"關聯"}
|
package/assets/esri/widgets/UtilityNetworkAssociations/t9n/UtilityNetworkAssociations_zh-TW.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"enableAssociations":"檢視關聯","enableConnectivity":"連線關聯","enableStructuralAttachment":"結構附件關聯","maxAllowableAssociations":"允許的最大關聯數","maxAllowableAssociationsExceededWarning":"放大到更小的區域或變更「允許的最大關聯數」選項的值","noAssociationsFoundWarning":"目前範圍中沒有關聯","
|
|
1
|
+
{"enableAssociations":"檢視關聯","enableConnectivity":"連線關聯","enableStructuralAttachment":"結構附件關聯","maxAllowableAssociations":"允許的最大關聯數","maxAllowableAssociationsExceededWarning":"放大到更小的區域或變更「允許的最大關聯數」選項的值","noAssociationsFoundWarning":"目前範圍中沒有關聯","refreshAssociations":"重新整理關聯","widgetLabel":"關聯"}
|
|
@@ -2,31 +2,33 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.27/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{addNearFar as e,addLinearDepth as r}from"../views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js";import{ShaderOutput as o}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutput.js";import{SliceDraw as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as t}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{ObjectAndLayerIdColor as
|
|
5
|
+
import{addNearFar as e,addLinearDepth as r}from"../views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js";import{ShaderOutput as o}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutput.js";import{SliceDraw as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as t}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{ObjectAndLayerIdColor as l}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/ObjectAndLayerIdColor.glsl.js";import{VertexColor as s}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js";import{OutputDepth as a}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js";import{OutputHighlight as d}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{multipassTerrainTest as n}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import{VisualVariables as p}from"../views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js";import{symbolAlphaCutoff as g}from"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaCutoff.js";import{ColorConversion as u}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{addProjViewLocalOrigin as c}from"../views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js";import{Float4PassUniform as v}from"../views/3d/webgl-engine/core/shaderModules/Float4PassUniform.js";import{glsl as b}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as h}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{TransparencyPassType as m}from"../views/3d/webgl-engine/lib/TransparencyPassType.js";import{VertexAttribute as f}from"../views/3d/webgl-engine/lib/VertexAttribute.js";function w(w){const C=new h,{vertex:j,fragment:y,attributes:L,varyings:O}=C;c(j,w),C.include(t,w),C.include(s,w),C.include(p,w),C.include(l,w),L.add(f.POSITION,"vec3"),w.vvColor&&L.add(f.COLORFEATUREATTRIBUTE,"float"),O.add("vColor","vec4"),O.add("vpos","vec3");const T=w.hasMultipassTerrain&&(w.output===o.Color||w.output===o.Alpha);T&&O.add("depth","float"),j.uniforms.add(new v("eColor",(e=>e.color)));const A=w.output===o.Depth;A&&(C.include(a,w),e(C),r(C)),j.code.add(b`
|
|
6
6
|
void main(void) {
|
|
7
7
|
vpos = position;
|
|
8
8
|
forwardNormalizedVertexColor();
|
|
9
9
|
forwardObjectAndLayerIdColor();
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
|
|
11
|
+
${w.hasVertexColors?"vColor *= eColor;":w.vvColor?"vColor = eColor * interpolateVVColor(colorFeatureAttribute);":"vColor = eColor;"}
|
|
12
|
+
${T?"depth = (view * vec4(vpos, 1.0)).z;":""}
|
|
13
|
+
gl_Position = ${A?b`transformPositionWithDepth(proj, view, vpos, nearFar, linearDepth);`:b`transformPosition(proj, view, vpos);`}
|
|
12
14
|
}
|
|
13
|
-
`),
|
|
15
|
+
`),C.include(i,w),T&&C.include(n,w),y.include(u);const $=w.output===o.Highlight;return $&&C.include(d,w),y.code.add(b`
|
|
14
16
|
void main() {
|
|
15
17
|
discardBySlice(vpos);
|
|
16
|
-
${
|
|
17
|
-
vec4 fColor =
|
|
18
|
+
${T?"terrainDepthTest(gl_FragCoord, depth);":""}
|
|
19
|
+
vec4 fColor = vColor;
|
|
18
20
|
|
|
19
|
-
${w.output===o.ObjectAndLayerIdColor?
|
|
21
|
+
${w.output===o.ObjectAndLayerIdColor?b`fColor.a = 1.0;`:""}
|
|
20
22
|
|
|
21
|
-
if (fColor.a < ${
|
|
23
|
+
if (fColor.a < ${b.float(g)}) {
|
|
22
24
|
discard;
|
|
23
25
|
}
|
|
24
26
|
|
|
25
|
-
${w.output===o.Alpha?
|
|
27
|
+
${w.output===o.Alpha?b`fragColor = vec4(fColor.a);`:""}
|
|
26
28
|
|
|
27
|
-
${w.output===o.Color?
|
|
28
|
-
${$?
|
|
29
|
-
${w.output===o.Depth?
|
|
30
|
-
${w.output===o.ObjectAndLayerIdColor?
|
|
29
|
+
${w.output===o.Color?b`fragColor = highlightSlice(fColor, vpos); ${w.transparencyPassType===m.Color?"fragColor = premultiplyAlpha(fragColor);":""}`:""}
|
|
30
|
+
${$?b`outputHighlight();`:""};
|
|
31
|
+
${w.output===o.Depth?b`outputDepth(linearDepth);`:""};
|
|
32
|
+
${w.output===o.ObjectAndLayerIdColor?b`outputObjectAndLayerIdColor();`:""}
|
|
31
33
|
}
|
|
32
|
-
`),
|
|
34
|
+
`),C}const C=Object.freeze(Object.defineProperty({__proto__:null,build:w},Symbol.toStringTag,{value:"Module"}));export{C,w as b};
|
package/core/domUtils.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.27/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
function e(e){return"string"==typeof e?document.getElementById(e):e??null}function
|
|
5
|
+
function e(e){return"string"==typeof e?document.getElementById(e):e??null}function n(e){for(;e.hasChildNodes();)e.removeChild(e.firstChild)}function t(e,n){const t=n.parentNode;t&&(t.lastChild===n?t.appendChild(e):t.insertBefore(e,n.nextSibling))}function o(e,n){const t=n.parentNode;t&&t.insertBefore(e,n)}function i(e,n){for(;;){const t=e.firstChild;if(!t)break;n.appendChild(t)}}function r(e){e.parentNode&&e.parentNode.removeChild(e)}const l="function"==typeof Element.prototype.closest?(e,n)=>e.closest(n):(e,n)=>{let t=e;do{if(t.matches(n))return t;t=t.parentElement}while(null!==t&&1===t.nodeType);return null};export{e as byId,l as closest,n as empty,t as insertAfter,o as insertBefore,r as remove,i as reparent};
|
package/core/maybe.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.27/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
function n(n){return null!=n}function u(n,u){return null!=n?u(n):null}function r(n,u){return t(n,u),n}function t(n,u){if(null==n)throw new Error(u??"value is None")}function l(n){return n?.destroy(),null}function o(n){return n?.dispose(),null}function e(n){return n?.remove(),null}function f(n){return n?.abort(),null}function
|
|
5
|
+
function n(n){return null!=n}function u(n,u){return null!=n?u(n):null}function r(n,u){return t(n,u),n}function t(n,u){if(null==n)throw new Error(u??"value is None")}function l(n){return n?.destroy(),null}function o(n){return n?.dispose(),null}function e(n){return n?.remove(),null}function f(n){return n?.abort(),null}function c(n){return n?.release(),null}function i(n,u,r){return null!=n&&null!=u?null!=r?r(n,u):n.equals(u):n===u}function s(n){return null}function a(n,u){const r=new Array;for(const t of n)r.push(null!=t?u(t):null);return r}function h(n,r){for(const t of n)u(t,r)}function p(n,...u){let r=n;for(let t=0;t<u.length&&r;++t)r=r[u[t]];return r}function w(n){return n}export{f as abortMaybe,u as applySome,t as assertIsSome,w as assumeNonNull,l as destroyMaybe,o as disposeMaybe,i as equalsMaybe,h as forEachSome,p as get,n as isSome,a as mapMany,s as nullifyNonNullableForDispose,c as releaseMaybe,e as removeMaybe,r as unwrapOrThrow};
|
package/core/urlUtils.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.27/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import t from"../config.js";import n from"./Error.js";import e from"./Logger.js";import{assumeNonNull as r,isSome as o}from"./maybe.js";import{parseKnownArcGISOnlineDomain as i}from"../portal/support/urlUtils.js";const u=e.getLogger("esri.core.urlUtils"),s=t.request,l="esri/config: esriConfig.request.proxyUrl is not set.",c=/^\s*[a-z][a-z0-9-+.]*:(?![0-9])/i,f=/^\s*http:/i,a=/^\s*https:/i,p=/^\s*file:/i,h=/:\d+$/,d=/^https?:\/\/[^/]+\.arcgis.com\/sharing(\/|$)/i,m=new RegExp("^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?$"),g=new RegExp("^((([^\\[:]+):)?([^@]+)@)?(\\[([^\\]]+)\\]|([^\\[:]*))(:([0-9]+))?$");class y{constructor(t=""){this.uri=t,this.scheme=null,this.authority=null,this.path=null,this.query=null,this.fragment=null,this.user=null,this.password=null,this.host=null,this.port=null;let n=r(this.uri.match(m));this.scheme=n[2]||(n[1]?"":null),this.authority=n[4]||(n[3]?"":null),this.path=n[5],this.query=n[7]||(n[6]?"":null),this.fragment=n[9]||(n[8]?"":null),null!=this.authority&&(n=r(this.authority.match(g)),this.user=n[3]||null,this.password=n[4]||null,this.host=n[6]||n[7],this.port=n[9]||null)}toString(){return this.uri}}const $={},x=new y(t.applicationUrl);let w=x;const O=R();let U=O;const C=()=>w,b=()=>U;function R(){const t=r(w.path),n=t.substring(0,t.lastIndexOf(t.split("/")[t.split("/").length-1]));return`${`${w.scheme}://${w.host}${null!=w.port?`:${w.port}`:""}`}${n}`}const q={setAppUrl:t=>w=t,setAppBaseUrl:t=>U=t,restoreUrls:()=>{w=x,U=O}};function j(t){if(!t)return null;const n={path:null,query:null},e=new y(t),r=t.indexOf("?");return null===e.query?n.path=t:(n.path=t.substring(0,r),n.query=L(e.query)),e.fragment&&(n.hash=e.fragment,null===e.query&&(n.path=n.path.substring(0,n.path.length-(e.fragment.length+1)))),n}function L(t){const n=t.split("&"),e={};for(const r of n){if(!r)continue;const t=r.indexOf("=");let n,o;t<0?(n=decodeURIComponent(r),o=""):(n=decodeURIComponent(r.slice(0,t)),o=decodeURIComponent(r.slice(t+1)));let i=e[n];"string"==typeof i&&(i=e[n]=[i]),Array.isArray(i)?i.push(o):e[n]=o}return e}function I(t){return t&&"object"==typeof t&&"toJSON"in t&&"function"==typeof t.toJSON}function v(t,n){return t?n&&"function"==typeof n?Object.keys(t).map((e=>encodeURIComponent(e)+"="+encodeURIComponent(n(e,t[e])))).join("&"):Object.keys(t).map((e=>{const r=t[e];if(null==r)return"";const o=encodeURIComponent(e)+"=",i=n&&n[e];return i?o+encodeURIComponent(i(r)):Array.isArray(r)?r.map((t=>I(t)?o+encodeURIComponent(JSON.stringify(t)):o+encodeURIComponent(t))).join("&"):I(r)?o+encodeURIComponent(JSON.stringify(r)):o+encodeURIComponent(r)})).filter((t=>t)).join("&"):""}function A(t=!1){let e,r=s.proxyUrl;if("string"==typeof t){e=dt(t);const n=H(t);n&&(r=n.proxyUrl)}else e=!!t;if(!r)throw u.warn(l),new n("urlutils:proxy-not-set",l);e&&wt()&&(r=$t(r));return j(r)}function S(t){const n=H(t);let e,r;if(n){const t=k(n.proxyUrl);e=t.path,r=t.query?L(t.query):null}if(e){const n=j(t);t=e+"?"+n.path;const o=v({...r,...n.query});o&&(t=`${t}?${o}`)}return t}const P={path:"",query:""};function k(t){const n=t.indexOf("?");return-1!==n?(P.path=t.slice(0,n),P.query=t.slice(n+1)):(P.path=t,P.query=null),P}function B(t){return t=(t=Ot(t=Rt(t=k(t).path),!0)).toLowerCase()}function E(t){const n={proxyUrl:t.proxyUrl,urlPrefix:B(t.urlPrefix)},e=s.proxyRules,r=n.urlPrefix;let o=e.length;for(let i=0;i<e.length;i++){const t=e[i].urlPrefix;if(0===r.indexOf(t)){if(r.length===t.length)return-1;o=i;break}0===t.indexOf(r)&&(o=i+1)}return e.splice(o,0,n),o}function H(t){const n=s.proxyRules,e=B(t);for(let r=0;r<n.length;r++)if(0===e.indexOf(n[r].urlPrefix))return n[r]}function J(t,n){if(!t||!n)return!1;t=W(t),n=W(n);const e=i(t),r=i(n);return null!=e&&null!=r?e.portalHostname===r.portalHostname:null==e&&null==r&&D(t,n,!0)}function N(t,n){if(!t||!n)return!1;t=W(t),n=W(n);const e=i(t),r=i(n);return null!=e&&null!=r&&e.portalHostname===r.portalHostname}function T(t,n){return t=W(t),n=W(n),Ot(t)===Ot(n)}function W(t){const n=(t=G(t)).indexOf("/sharing");return n>0?t.substring(0,n):t.replace(/\/+$/,"")}function z(t){const n=n=>null==n||n instanceof RegExp&&n.test(t)||"string"==typeof n&&t.startsWith(n),e=s.interceptors;if(e)for(const r of e)if(Array.isArray(r.urls)){if(r.urls.some(n))return r}else if(n(r.urls))return r;return null}function D(t,n,e=!1){if(!t||!n)return!1;const r=At(t),o=At(n);return!(!e&&r.scheme!==o.scheme)&&(null!=r.host&&null!=o.host&&(r.host.toLowerCase()===o.host.toLowerCase()&&r.port===o.port))}function F(t){if("string"==typeof t){if(!X(t))return!0;t=At(t)}if(D(t,w))return!0;const n=s.trustedServers||[];for(let e=0;e<n.length;e++){const r=M(n[e]);for(let n=0;n<r.length;n++)if(D(t,r[n]))return!0}return!1}function M(t){return $[t]||(ht(t)||pt(t)?$[t]=[new y(Q(t))]:$[t]=[new y(`http://${t}`),new y(`https://${t}`)]),$[t]}function Q(t,n=U,e){return pt(t)?e&&e.preserveProtocolRelative?t:"http"===w.scheme&&w.authority===V(t).slice(2)?`http:${t}`:`https:${t}`:ht(t)?t:r(K("/"===t[0]?Ut(n):n,t))}function _(t,n=U,e){if(null==t||!X(t))return t;const r=G(t),o=r.toLowerCase(),i=G(n).toLowerCase().replace(/\/+$/,""),u=e?G(e).toLowerCase().replace(/\/+$/,""):null;if(u&&0!==i.indexOf(u))return t;const s=(t,n,e)=>-1===(e=t.indexOf(n,e))?t.length:e;let l=s(o,"/",o.indexOf("//")+2),c=-1;for(;o.slice(0,l+1)===i.slice(0,l)+"/"&&(c=l+1,l!==o.length);)l=s(o,"/",l+1);if(-1===c)return t;if(u&&c<u.length)return t;t=r.slice(c);const f=i.slice(c-1).replace(/[^/]+/g,"").length;if(f>0)for(let a=0;a<f;a++)t=`../${t}`;else t=`./${t}`;return t}function G(t){return t=It(t=Lt(t=jt(t=Q(t=t.trim()))))}function K(...t){const n=t.filter(o);if(!n||!n.length)return;const e=[];if(X(n[0])){const t=n[0],r=t.indexOf("//");-1!==r&&(e.push(t.slice(0,r+1)),gt(n[0])&&(e[0]+="/"),n[0]=t.slice(r+2))}else"/"===n[0][0]&&e.push("");const r=n.reduce(((t,n)=>n?t.concat(n.split("/")):t),[]);for(let o=0;o<r.length;o++){const t=r[o];".."===t&&e.length>0&&".."!==e[e.length-1]?e.pop():(!t&&o===r.length-1||t&&("."!==t||0===e.length))&&e.push(t)}return e.join("/")}function V(t,n=!1){if(null==t||Y(t)||Z(t))return null;let e=t.indexOf("://");if(-1===e&&pt(t))e=2;else{if(-1===e)return null;e+=3}const r=t.indexOf("/",e);return-1!==r&&(t=t.slice(0,r)),n&&(t=Ot(t,!0)),t}function X(t){return pt(t)||ht(t)}function Y(t){return null!=t&&"blob:"===t.slice(0,5)}function Z(t){return null!=t&&"data:"===t.slice(0,5)}function tt(t){const n=rt(t);if(!n||!n.isBase64)return null;const e=atob(n.data),r=new Uint8Array(e.length);for(let o=0;o<e.length;o++)r[o]=e.charCodeAt(o);return r.buffer}function nt(t){return btoa(String.fromCharCode.apply(null,t)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}const et=/^data:(.*?)(;base64)?,(.*)$/;function rt(t){const n=t.match(et);if(!n)return null;const[,e,r,o]=n;return{mediaType:e,isBase64:!!r,data:o}}function ot(t){return t.isBase64?`data:${t.mediaType};base64,${t.data}`:`data:${t.mediaType},${t.data}`}function it(t){const n=tt(t);if(!n)return null;const e=rt(t);return new Blob([n],{type:e.mediaType})}function ut(t,n){lt(t,n)||ft(t,n)}function st(t,n){ct(t,n)||at(t,n)}function lt(t,n){const e=it(t);return!!e&&ct(e,n)}function ct(t,n){if(!t)return!1;const e=document.createElement("a");if(!("download"in e))return!1;const r=URL.createObjectURL(t);return e.download=n,e.href=r,e.style.display="none",document.body.appendChild(e),e.click(),document.body.removeChild(e),URL.revokeObjectURL(r),!0}function ft(t,n){const e=it(t);return!!e&&at(e,n)}function at(t,n){const e=window.navigator;return e.msSaveOrOpenBlob?.(t,n)??!1}function pt(t){return null!=t&&"/"===t[0]&&"/"===t[1]}function ht(t){return null!=t&&c.test(t)}function dt(t){return null!=t&&a.test(t)||"https"===w.scheme&&pt(t)}function mt(t){return null!=t&&f.test(t)||"http"===w.scheme&&pt(t)}function gt(t){return null!=t&&p.test(t)}function yt(t){return pt(t)?`http:${t}`:t.replace(a,"http:")}function $t(t){return pt(t)?`https:${t}`:t.replace(f,"https:")}function xt(){return"http"===w.scheme}function wt(){return"https"===w.scheme}function Ot(t,n=!1){return pt(t)?t.slice(2):(t=t.replace(c,""),n&&t.length>1&&"/"===t[0]&&"/"===t[1]&&(t=t.slice(2)),t)}function Ut(t){const n=t.indexOf("//"),e=t.indexOf("/",n+2);return-1===e?t:t.slice(0,e)}function Ct(t){let n=0;if(X(t)){const e=t.indexOf("//");-1!==e&&(n=e+2)}const e=t.lastIndexOf("/");return e<n?t:t.slice(0,e+1)}function bt(t,n){if(!t)return"";const e=j(t).path.replace(/\/+$/,""),r=e.substring(e.lastIndexOf("/")+1);if(!n?.length)return r;const o=new RegExp(`.(${n.join("|")})$`,"ig");return r.replace(o,"")}function Rt(t){return t&&"/"===t[t.length-1]?t:`${t}/`}function qt(t){return t.replace(/\/+$/,"")}function jt(t){if(/^https?:\/\//i.test(t)){const n=k(t);t=(t=n.path.replace(/\/{2,}/g,"/")).replace("/","//"),n.query&&(t+=`?${n.query}`)}return t}function Lt(t){return t.replace(/^(https?:\/\/)(arcgis\.com)/i,"$1www.$2")}function It(t){const n=s.httpsDomains;if(!mt(t))return t;const e=t.indexOf("/",7);let r;if(r=-1===e?t:t.slice(0,e),r=r.toLowerCase().slice(7),h.test(r)){if(!r.endsWith(":80"))return t;r=r.slice(0,-3),t=t.replace(":80","")}return xt()&&r===w.authority&&!d.test(t)||(wt()&&r===w.authority||n&&n.some((t=>r===t||r.endsWith(`.${t}`)))||wt()&&!H(t))&&(t=$t(t)),t}function vt(t,n,e){if(!(n&&e&&t&&X(t)))return t;const r=t.indexOf("//"),o=t.indexOf("/",r+2),i=t.indexOf(":",r+2),u=Math.min(o<0?t.length:o,i<0?t.length:i);if(t.slice(r+2,u).toLowerCase()!==n.toLowerCase())return t;return`${t.slice(0,r+2)}${e}${t.slice(u)}`}function At(t){return"string"==typeof t?new y(Q(t)):(t.scheme||(t.scheme=w.scheme),t)}function St(t){return Wt.test(t)}function Pt(t,n){const e=j(t),r=Object.keys(e.query||{});return r.length>0&&n&&n.warn("removeQueryParameters()",`Url query parameters are not supported, the following parameters have been removed: ${r.join(", ")}.`),e.path}function kt(t,n,e){const r=j(t),o=r.query||{};return o[n]=String(e),`${r.path}?${v(o)}`}function Bt(t,n){const e=j(t),r=e.query||{};for(const i in n)r[i]=n[i];const o=v(r);return o?`${e.path}?${o}`:e.path}function Et(t,n){const{path:e,query:r}=j(t);if(!r)return t;delete r[n];const o=v(r);return o?`${e}?${o}`:e}function Ht(t){if(null==t)return null;const n=t.match(Tt);return n?n[2]:null}function Jt(t){if(null==t)return null;const n=t.match(Tt);return n?{path:n[1],extension:n[2]}:{path:t,extension:null}}async function Nt(t){if("string"==typeof t){return rt(t)??{data:t}}return new Promise(((n,e)=>{const r=new FileReader;r.readAsDataURL(t),r.onload=()=>n(rt(r.result)),r.onerror=t=>e(t)}))}const Tt=/([^.]*)\.([^\/]*)$/,Wt=/(^data:image\/svg|\.svg$)/i;export{y as Url,S as addProxy,E as addProxyRule,kt as addQueryParameter,Bt as addQueryParameters,nt as base64UrlEncode,vt as changeDomain,rt as dataComponents,tt as dataToArrayBuffer,it as dataToBlob,st as downloadBlobAsFile,ut as downloadDataAsFile,b as getAppBaseUrl,C as getAppUrl,bt as getFilename,z as getInterceptor,V as getOrigin,Ht as getPathExtension,H as getProxyRule,A as getProxyUrl,ht as hasProtocol,N as hasSameCanonicalArcGISOnlinePortal,J as hasSameCanonicalPortal,D as hasSameOrigin,T as hasSamePortal,X as isAbsolute,wt as isAppHTTPS,Y as isBlobProtocol,Z as isDataProtocol,dt as isHTTPSProtocol,pt as isProtocolRelative,St as isSVG,F as isTrustedServer,K as join,Q as makeAbsolute,ot as makeData,_ as makeRelative,G as normalize,v as objectToQuery,Nt as parseData,L as queryToObject,Ct as removeFile,Et as removeQueryParameter,Pt as removeQueryParameters,qt as removeTrailingSlash,Jt as splitPathExtension,q as test,yt as toHTTP,$t as toHTTPS,$ as trustedServersUrlCache,j as urlToObject};
|
|
5
|
+
import t from"../config.js";import n from"./Error.js";import e from"./Logger.js";import{assumeNonNull as r,isSome as o}from"./maybe.js";import{parseKnownArcGISOnlineDomain as i}from"../portal/support/urlUtils.js";const u=e.getLogger("esri.core.urlUtils"),s=t.request,l="esri/config: esriConfig.request.proxyUrl is not set.",c=/^\s*[a-z][a-z0-9-+.]*:(?![0-9])/i,f=/^\s*http:/i,a=/^\s*https:/i,p=/^\s*file:/i,h=/:\d+$/,d=/^https?:\/\/[^/]+\.arcgis.com\/sharing(\/|$)/i,m=new RegExp("^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\\?([^#]*))?(#(.*))?$"),g=new RegExp("^((([^\\[:]+):)?([^@]+)@)?(\\[([^\\]]+)\\]|([^\\[:]*))(:([0-9]+))?$");class y{constructor(t=""){this.uri=t,this.scheme=null,this.authority=null,this.path=null,this.query=null,this.fragment=null,this.user=null,this.password=null,this.host=null,this.port=null;let n=r(this.uri.match(m));this.scheme=n[2]||(n[1]?"":null),this.authority=n[4]||(n[3]?"":null),this.path=n[5],this.query=n[7]||(n[6]?"":null),this.fragment=n[9]||(n[8]?"":null),null!=this.authority&&(n=r(this.authority.match(g)),this.user=n[3]||null,this.password=n[4]||null,this.host=n[6]||n[7],this.port=n[9]||null)}toString(){return this.uri}}const $={},x=new y(t.applicationUrl);let w=x;const O=R();let U=O;const C=()=>w,b=()=>U;function R(){const t=r(w.path),n=t.substring(0,t.lastIndexOf(t.split("/")[t.split("/").length-1]));return`${`${w.scheme}://${w.host}${null!=w.port?`:${w.port}`:""}`}${n}`}const q={setAppUrl:t=>w=t,setAppBaseUrl:t=>U=t,restoreUrls:()=>{w=x,U=O}};function j(t){if(!t)return null;const n={path:null,query:null},e=new y(t),r=t.indexOf("?");return null===e.query?n.path=t:(n.path=t.substring(0,r),n.query=L(e.query)),e.fragment&&(n.hash=e.fragment,null===e.query&&(n.path=n.path.substring(0,n.path.length-(e.fragment.length+1)))),n}function L(t){const n=t.split("&"),e={};for(const r of n){if(!r)continue;const t=r.indexOf("=");let n,o;t<0?(n=decodeURIComponent(r),o=""):(n=decodeURIComponent(r.slice(0,t)),o=decodeURIComponent(r.slice(t+1)));let i=e[n];"string"==typeof i&&(i=e[n]=[i]),Array.isArray(i)?i.push(o):e[n]=o}return e}function I(t){return t&&"object"==typeof t&&"toJSON"in t&&"function"==typeof t.toJSON}function A(t,n){return t?n&&"function"==typeof n?Object.keys(t).map((e=>encodeURIComponent(e)+"="+encodeURIComponent(n(e,t[e])))).join("&"):Object.keys(t).map((e=>{const r=t[e];if(null==r)return"";const o=encodeURIComponent(e)+"=",i=n&&n[e];return i?o+encodeURIComponent(i(r)):Array.isArray(r)?r.map((t=>I(t)?o+encodeURIComponent(JSON.stringify(t)):o+encodeURIComponent(t))).join("&"):I(r)?o+encodeURIComponent(JSON.stringify(r)):o+encodeURIComponent(r)})).filter((t=>t)).join("&"):""}function v(t=!1){let e,r=s.proxyUrl;if("string"==typeof t){e=pt(t);const n=H(t);n&&(r=n.proxyUrl)}else e=!!t;if(!r)throw u.warn(l),new n("urlutils:proxy-not-set",l);e&&$t()&&(r=gt(r));return j(r)}function P(t){const n=H(t);let e,r;if(n){const t=k(n.proxyUrl);e=t.path,r=t.query?L(t.query):null}if(e){const n=j(t);t=e+"?"+n.path;const o=A({...r,...n.query});o&&(t=`${t}?${o}`)}return t}const S={path:"",query:""};function k(t){const n=t.indexOf("?");return-1!==n?(S.path=t.slice(0,n),S.query=t.slice(n+1)):(S.path=t,S.query=null),S}function E(t){return t=(t=xt(t=Ct(t=k(t).path),!0)).toLowerCase()}function B(t){const n={proxyUrl:t.proxyUrl,urlPrefix:E(t.urlPrefix)},e=s.proxyRules,r=n.urlPrefix;let o=e.length;for(let i=0;i<e.length;i++){const t=e[i].urlPrefix;if(0===r.indexOf(t)){if(r.length===t.length)return-1;o=i;break}0===t.indexOf(r)&&(o=i+1)}return e.splice(o,0,n),o}function H(t){const n=s.proxyRules,e=E(t);for(let r=0;r<n.length;r++)if(0===e.indexOf(n[r].urlPrefix))return n[r]}function J(t,n){if(!t||!n)return!1;t=W(t),n=W(n);const e=i(t),r=i(n);return null!=e&&null!=r?e.portalHostname===r.portalHostname:null==e&&null==r&&D(t,n,!0)}function N(t,n){if(!t||!n)return!1;t=W(t),n=W(n);const e=i(t),r=i(n);return null!=e&&null!=r&&e.portalHostname===r.portalHostname}function T(t,n){return t=W(t),n=W(n),xt(t)===xt(n)}function W(t){const n=(t=G(t)).indexOf("/sharing");return n>0?t.substring(0,n):t.replace(/\/+$/,"")}function z(t){const n=n=>null==n||n instanceof RegExp&&n.test(t)||"string"==typeof n&&t.startsWith(n),e=s.interceptors;if(e)for(const r of e)if(Array.isArray(r.urls)){if(r.urls.some(n))return r}else if(n(r.urls))return r;return null}function D(t,n,e=!1){if(!t||!n)return!1;const r=It(t),o=It(n);return!(!e&&r.scheme!==o.scheme)&&(null!=r.host&&null!=o.host&&(r.host.toLowerCase()===o.host.toLowerCase()&&r.port===o.port))}function F(t){if("string"==typeof t){if(!X(t))return!0;t=It(t)}if(D(t,w))return!0;const n=s.trustedServers||[];for(let e=0;e<n.length;e++){const r=M(n[e]);for(let n=0;n<r.length;n++)if(D(t,r[n]))return!0}return!1}function M(t){return $[t]||(at(t)||ft(t)?$[t]=[new y(Q(t))]:$[t]=[new y(`http://${t}`),new y(`https://${t}`)]),$[t]}function Q(t,n=U,e){return ft(t)?e&&e.preserveProtocolRelative?t:"http"===w.scheme&&w.authority===V(t).slice(2)?`http:${t}`:`https:${t}`:at(t)?t:r(K("/"===t[0]?wt(n):n,t))}function _(t,n=U,e){if(null==t||!X(t))return t;const r=G(t),o=r.toLowerCase(),i=G(n).toLowerCase().replace(/\/+$/,""),u=e?G(e).toLowerCase().replace(/\/+$/,""):null;if(u&&0!==i.indexOf(u))return t;const s=(t,n,e)=>-1===(e=t.indexOf(n,e))?t.length:e;let l=s(o,"/",o.indexOf("//")+2),c=-1;for(;o.slice(0,l+1)===i.slice(0,l)+"/"&&(c=l+1,l!==o.length);)l=s(o,"/",l+1);if(-1===c)return t;if(u&&c<u.length)return t;t=r.slice(c);const f=i.slice(c-1).replace(/[^/]+/g,"").length;if(f>0)for(let a=0;a<f;a++)t=`../${t}`;else t=`./${t}`;return t}function G(t){return t=jt(t=qt(t=Rt(t=Q(t=t.trim()))))}function K(...t){const n=t.filter(o);if(!n||!n.length)return;const e=[];if(X(n[0])){const t=n[0],r=t.indexOf("//");-1!==r&&(e.push(t.slice(0,r+1)),dt(n[0])&&(e[0]+="/"),n[0]=t.slice(r+2))}else"/"===n[0][0]&&e.push("");const r=n.reduce(((t,n)=>n?t.concat(n.split("/")):t),[]);for(let o=0;o<r.length;o++){const t=r[o];".."===t&&e.length>0&&".."!==e[e.length-1]?e.pop():(!t&&o===r.length-1||t&&("."!==t||0===e.length))&&e.push(t)}return e.join("/")}function V(t,n=!1){if(null==t||Y(t)||Z(t))return null;let e=t.indexOf("://");if(-1===e&&ft(t))e=2;else{if(-1===e)return null;e+=3}const r=t.indexOf("/",e);return-1!==r&&(t=t.slice(0,r)),n&&(t=xt(t,!0)),t}function X(t){return ft(t)||at(t)}function Y(t){return null!=t&&"blob:"===t.slice(0,5)}function Z(t){return null!=t&&"data:"===t.slice(0,5)}function tt(t){const n=rt(t);if(!n||!n.isBase64)return null;const e=atob(n.data),r=new Uint8Array(e.length);for(let o=0;o<e.length;o++)r[o]=e.charCodeAt(o);return r.buffer}function nt(t){return btoa(String.fromCharCode.apply(null,t)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"")}const et=/^data:(.*?)(;base64)?,(.*)$/;function rt(t){const n=t.match(et);if(!n)return null;const[,e,r,o]=n;return{mediaType:e,isBase64:!!r,data:o}}function ot(t){return t.isBase64?`data:${t.mediaType};base64,${t.data}`:`data:${t.mediaType},${t.data}`}function it(t){const n=tt(t);if(!n)return null;const e=rt(t);return new Blob([n],{type:e.mediaType})}function ut(t,n){lt(t,n)}function st(t,n){ct(t,n)}function lt(t,n){const e=it(t);return!!e&&ct(e,n)}function ct(t,n){if(!t)return!1;const e=document.createElement("a");if(!("download"in e))return!1;const r=URL.createObjectURL(t);return e.download=n,e.href=r,e.style.display="none",document.body.appendChild(e),e.click(),document.body.removeChild(e),URL.revokeObjectURL(r),!0}function ft(t){return null!=t&&"/"===t[0]&&"/"===t[1]}function at(t){return null!=t&&c.test(t)}function pt(t){return null!=t&&a.test(t)||"https"===w.scheme&&ft(t)}function ht(t){return null!=t&&f.test(t)||"http"===w.scheme&&ft(t)}function dt(t){return null!=t&&p.test(t)}function mt(t){return ft(t)?`http:${t}`:t.replace(a,"http:")}function gt(t){return ft(t)?`https:${t}`:t.replace(f,"https:")}function yt(){return"http"===w.scheme}function $t(){return"https"===w.scheme}function xt(t,n=!1){return ft(t)?t.slice(2):(t=t.replace(c,""),n&&t.length>1&&"/"===t[0]&&"/"===t[1]&&(t=t.slice(2)),t)}function wt(t){const n=t.indexOf("//"),e=t.indexOf("/",n+2);return-1===e?t:t.slice(0,e)}function Ot(t){let n=0;if(X(t)){const e=t.indexOf("//");-1!==e&&(n=e+2)}const e=t.lastIndexOf("/");return e<n?t:t.slice(0,e+1)}function Ut(t,n){if(!t)return"";const e=j(t).path.replace(/\/+$/,""),r=e.substring(e.lastIndexOf("/")+1);if(!n?.length)return r;const o=new RegExp(`.(${n.join("|")})$`,"ig");return r.replace(o,"")}function Ct(t){return t&&"/"===t[t.length-1]?t:`${t}/`}function bt(t){return t.replace(/\/+$/,"")}function Rt(t){if(/^https?:\/\//i.test(t)){const n=k(t);t=(t=n.path.replace(/\/{2,}/g,"/")).replace("/","//"),n.query&&(t+=`?${n.query}`)}return t}function qt(t){return t.replace(/^(https?:\/\/)(arcgis\.com)/i,"$1www.$2")}function jt(t){const n=s.httpsDomains;if(!ht(t))return t;const e=t.indexOf("/",7);let r;if(r=-1===e?t:t.slice(0,e),r=r.toLowerCase().slice(7),h.test(r)){if(!r.endsWith(":80"))return t;r=r.slice(0,-3),t=t.replace(":80","")}return yt()&&r===w.authority&&!d.test(t)||($t()&&r===w.authority||n&&n.some((t=>r===t||r.endsWith(`.${t}`)))||$t()&&!H(t))&&(t=gt(t)),t}function Lt(t,n,e){if(!(n&&e&&t&&X(t)))return t;const r=t.indexOf("//"),o=t.indexOf("/",r+2),i=t.indexOf(":",r+2),u=Math.min(o<0?t.length:o,i<0?t.length:i);if(t.slice(r+2,u).toLowerCase()!==n.toLowerCase())return t;return`${t.slice(0,r+2)}${e}${t.slice(u)}`}function It(t){return"string"==typeof t?new y(Q(t)):(t.scheme||(t.scheme=w.scheme),t)}function At(t){return Nt.test(t)}function vt(t,n){const e=j(t),r=Object.keys(e.query||{});return r.length>0&&n&&n.warn("removeQueryParameters()",`Url query parameters are not supported, the following parameters have been removed: ${r.join(", ")}.`),e.path}function Pt(t,n,e){const r=j(t),o=r.query||{};return o[n]=String(e),`${r.path}?${A(o)}`}function St(t,n){const e=j(t),r=e.query||{};for(const i in n)r[i]=n[i];const o=A(r);return o?`${e.path}?${o}`:e.path}function kt(t,n){const{path:e,query:r}=j(t);if(!r)return t;delete r[n];const o=A(r);return o?`${e}?${o}`:e}function Et(t){if(null==t)return null;const n=t.match(Jt);return n?n[2]:null}function Bt(t){if(null==t)return null;const n=t.match(Jt);return n?{path:n[1],extension:n[2]}:{path:t,extension:null}}async function Ht(t){if("string"==typeof t){return rt(t)??{data:t}}return new Promise(((n,e)=>{const r=new FileReader;r.readAsDataURL(t),r.onload=()=>n(rt(r.result)),r.onerror=t=>e(t)}))}const Jt=/([^.]*)\.([^\/]*)$/,Nt=/(^data:image\/svg|\.svg$)/i;export{y as Url,P as addProxy,B as addProxyRule,Pt as addQueryParameter,St as addQueryParameters,nt as base64UrlEncode,Lt as changeDomain,rt as dataComponents,tt as dataToArrayBuffer,it as dataToBlob,st as downloadBlobAsFile,ut as downloadDataAsFile,b as getAppBaseUrl,C as getAppUrl,Ut as getFilename,z as getInterceptor,V as getOrigin,Et as getPathExtension,H as getProxyRule,v as getProxyUrl,at as hasProtocol,N as hasSameCanonicalArcGISOnlinePortal,J as hasSameCanonicalPortal,D as hasSameOrigin,T as hasSamePortal,X as isAbsolute,$t as isAppHTTPS,Y as isBlobProtocol,Z as isDataProtocol,pt as isHTTPSProtocol,ft as isProtocolRelative,At as isSVG,F as isTrustedServer,K as join,Q as makeAbsolute,ot as makeData,_ as makeRelative,G as normalize,A as objectToQuery,Ht as parseData,L as queryToObject,Ot as removeFile,kt as removeQueryParameter,vt as removeQueryParameters,bt as removeTrailingSlash,Bt as splitPathExtension,q as test,mt as toHTTP,gt as toHTTPS,$ as trustedServersUrlCache,j as urlToObject};
|
package/geohash/GeohashTree.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.27/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import t from"../core/CircularArray.js";import{mapOr as e}from"../core/maybe.js";import{decodeGeohashXY as s}from"./geohashUtils.js";import i from"../geometry/SpatialReference.js";import{convertFromPolygon as n,quantizeOptimizedGeometry as o,convertFromPoint as a}from"../layers/graphics/featureConversionUtils.js";import r from"../layers/graphics/OptimizedGeometry.js";import{project as l}from"../layers/graphics/data/projectionSupport.js";import{FeatureSetReaderJSON as h}from"../views/2d/layers/features/support/FeatureSetReaderJSON.js";class c{constructor(e=[],s,i=8096){this.onRelease=t=>{},this._nodes=0,this._root=new u(this,0,0,0),this._statisticFields=e,this._pool=i?new t(8096):null,this._serviceInfo=s}destroy(){this.clear()}_acquire(t,e,s){this._nodes++;let i=null;return null!=this._pool&&(i=this._pool.dequeue()),null!=i?i.realloc(t,e,s):i=new u(this,t,e,s),i}_release(t){this.onRelease(t),this._nodes--,null!=this._pool&&this._pool.enqueue(t)}get count(){return this._root.count}get size(){return this._nodes}get poolSize(){return e(this._pool,0,(t=>t.size))}get depth(){let t=0;return this.forEach((e=>t=Math.max(t,e.depth))),t}dropLevels(t){this.forEach((e=>{if(e.depth>=t)for(let t=0;t<e.children.length;t++){const s=e.children[t];s&&this._release(s)}})),this.forEach((e=>{if(e.depth>=t)for(let t=0;t<e.children.length;t++)e.children[t]=null}))}clear(){this.forEach((t=>this._release(t))),this._root=new u(this,0,0,0)}insert(t,e,s=0){const i=h.fromOptimizedFeatures([t],this._serviceInfo).getCursor();i.next();const n=i.readGeometry();if(!n)return;const[o,a]=n.coords,r=t.geohashX,l=t.geohashY;this.insertCursor(i,t.displayId,o,a,r,l,e,s)}insertCursor(t,e,s,i,n,o,a,r=0){let l=this._root,h=0,c=0,u=0;for(;null!==l;){if(l.depth>=r&&(l.count+=1,l.xTotal+=s,l.yTotal+=i,l.xGeohashTotal+=n,l.yGeohashTotal+=o,l.referenceId=e,this._updateStatisticsCursor(t,l,1)),h>=a)return void l.add(e);const d=Math.ceil((h+1)/2),f=Math.floor((h+1)/2),x=1-h%2,m=30-(3*d+2*f),g=30-(2*d+3*f),y=(n&7*x+3*(1-x)<<m)>>m,p=(o&3*x+7*(1-x)<<g)>>g,_=y+p*(8*x+4*(1-x));c=c<<3*x+2*(1-x)|y,u=u<<2*x+3*(1-x)|p,null==l.children[_]&&(l.children[_]=this._acquire(c,u,h+1)),h+=1,l=l.children[_]}}remove(t,e){const s=h.fromOptimizedFeatures([t],this._serviceInfo).getCursor();s.next();const i=s.readGeometry();if(!i)return;const[n,o]=i.coords,a=t.geohashX,r=t.geohashY;this.removeCursor(s,n,o,a,r,e)}removeCursor(t,e,s,i,n,o){let a=this._root,r=0;for(;null!==a;){if(a.count-=1,a.xTotal-=e,a.yTotal-=s,a.xGeohashTotal-=i,a.yGeohashTotal-=n,this._updateStatisticsCursor(t,a,-1),r>=o)return void a.remove(t.getDisplayId());const l=Math.ceil((r+1)/2),h=Math.floor((r+1)/2),c=1-r%2,u=30-(3*l+2*h),d=30-(2*l+3*h),f=((i&7*c+3*(1-c)<<u)>>u)+((n&3*c+7*(1-c)<<d)>>d)*(8*c+4*(1-c)),x=a.children[f];1===x?.count&&(this._release(x),a.children[f]=null),r+=1,a=x}}forEach(t){let e=this._root;for(;null!==e;){const s=this._linkChildren(e)||e.next;t(e),e=s}}find(t,e,s){return this._root.find(t,e,s,0,0,0)}findIf(t){let e=null;return this.forEach((s=>{t(s)&&(e=s)})),e}findAllIf(t){const e=[];return this.forEach((s=>{t(s)&&e.push(s)})),e}findSingleOccupancyNode(t,e,s,i,n){let o=this._root;for(;null!==o;){const a=o.depth,r=o.xNode,l=o.yNode,h=1-a%2,c=o.xGeohashTotal/o.count,u=o.yGeohashTotal/o.count;if(1===o.count&&t<c&&c<=s&&e<u&&u<=i)return o;if(a>=n){o=o.next;continue}const d=Math.ceil((a+1)/2),f=Math.floor((a+1)/2),x=30-(3*d+2*f),m=30-(2*d+3*f),g=~((1<<x)-1),y=~((1<<m)-1),p=(t&g)>>x,_=(e&y)>>m,v=(s&g)>>x,M=(i&y)>>m,T=r<<3*h+2*(1-h),b=l<<2*h+3*(1-h),k=T+8*h+4*(1-h),N=b+4*h+8*(1-h),I=Math.max(T,p),C=Math.max(b,_),G=Math.min(k,v),L=Math.min(N,M);let S=null,w=null;for(let t=C;t<=L;t++)for(let e=I;e<=G;e++){const s=e-T+(t-b)*(8*h+4*(1-h)),i=o.children[s];i&&(S||(S=i,S.next=o.next),w&&(w.next=i),w=i,i.next=o.next)}o=S||o.next}return null}getRegionDisplayIds(t){let e=this._root;const{bounds:s,geohashBounds:i,level:n}=t,[o,a,r,l]=s,h=[];for(;null!==e;){const t=e.depth,s=e.xNode,c=e.yNode;if(t>=n){const t=e.xTotal/e.count,s=e.yTotal/e.count;t>=o&&t<=r&&s>=a&&s<=l&&e.displayIds.forEach((t=>h.push(t))),e=e.next;continue}const u=Math.ceil((t+1)/2),d=Math.floor((t+1)/2),f=1-t%2,x=30-(3*u+2*d),m=30-(2*u+3*d),g=~((1<<x)-1),y=~((1<<m)-1),p=(i.xLL&g)>>x,_=(i.yLL&y)>>m,v=(i.xTR&g)>>x,M=(i.yTR&y)>>m,T=s<<3*f+2*(1-f),b=c<<2*f+3*(1-f),k=T+8*f+4*(1-f),N=b+4*f+8*(1-f),I=Math.max(T,p),C=Math.max(b,_),G=Math.min(k,v),L=Math.min(N,M);let S=null,w=null;for(let i=C;i<=L;i++)for(let t=I;t<=G;t++){const s=t-T+(i-b)*(8*f+4*(1-f)),n=e.children[s];n&&(S||(S=n,S.next=e.next),w&&(w.next=n),w=n,n.next=e.next)}e=S||e.next}return h}getRegionStatistics(t){let e=this._root,s=0,i=0,n=0;const o={},{bounds:a,geohashBounds:r,level:l}=t,[h,c,u,d]=a;let f=0;for(;null!==e;){const t=e.depth,a=e.xNode,x=e.yNode;if(t>=l){const t=e.xTotal/e.count,a=e.yTotal/e.count;t>h&&t<=u&&a>c&&a<=d&&(s+=e.count,i+=e.xTotal,n+=e.yTotal,1===e.count&&(f=e.referenceId),this._aggregateStatistics(o,e.statistics)),e=e.next;continue}const m=Math.ceil((t+1)/2),g=Math.floor((t+1)/2),y=1-t%2,p=30-(3*m+2*g),_=30-(2*m+3*g),v=~((1<<p)-1),M=~((1<<_)-1),T=(r.xLL&v)>>p,b=(r.yLL&M)>>_,k=(r.xTR&v)>>p,N=(r.yTR&M)>>_,I=a<<3*y+2*(1-y),C=x<<2*y+3*(1-y),G=I+8*y+4*(1-y),L=C+4*y+8*(1-y),S=Math.max(I,T),w=Math.max(C,b),R=Math.min(G,k),F=Math.min(L,N);let j=null,z=null;for(let r=w;r<=F;r++)for(let t=S;t<=R;t++){const a=t-I+(r-C)*(8*y+4*(1-y)),l=e.children[a];if(l){if(r!==w&&r!==F&&t!==S&&t!==R){const t=l.xTotal/l.count,e=l.yTotal/l.count;t>h&&t<=u&&e>c&&e<=d&&(s+=l.count,i+=l.xTotal,n+=l.yTotal,1===l.count&&(f=l.referenceId),this._aggregateStatistics(o,l.statistics));continue}j||(j=l,j.next=e.next),z&&(z.next=l),z=l,l.next=e.next}}e=j||e.next}return{count:s,attributes:this.normalizeStatistics(o,s),xTotal:i,yTotal:n,referenceId:f}}getBins(t){const e=[],{geohashBounds:s,level:i}=t;let n=this._root;for(;null!==n;){const t=n.depth,o=n.xNode,a=n.yNode;if(t>=i){e.push(n),n=n.next;continue}const r=Math.ceil((t+1)/2),l=Math.floor((t+1)/2),h=1-t%2,c=30-(3*r+2*l),u=30-(2*r+3*l),d=~((1<<c)-1),f=~((1<<u)-1),x=(s.xLL&d)>>c,m=(s.yLL&f)>>u,g=(s.xTR&d)>>c,y=(s.yTR&f)>>u,p=o<<3*h+2*(1-h),_=a<<2*h+3*(1-h),v=p+8*h+4*(1-h),M=_+4*h+8*(1-h),T=Math.max(p,x),b=Math.max(_,m),k=Math.min(v,g),N=Math.min(M,y);let I=null,C=null;for(let e=b;e<=N;e++)for(let t=T;t<=k;t++){const s=t-p+(e-_)*(8*h+4*(1-h)),i=n.children[s];i&&(I||(I=i,I.next=n.next),C&&(C.next=i),C=i,i.next=n.next)}n=I||n.next}return e}_linkChildren(t){let e=null,s=null;for(let i=0;i<=t.children.length;i++){const n=t.children[i];n&&(e||(e=n,e.next=t.next),s&&(s.next=n),s=n,n.next=t.next)}return e}_updateStatisticsCursor(t,e,s){for(const i of this._statisticFields){const n=i.name,o=i.inField?t.readAttribute(i.inField):t.getComputedNumericAtIndex(i.inFieldIndex);switch(i.statisticType){case"min":{if(isNaN(o))break;if(!e.statistics[n]){e.statistics[n]={value:o};break}const t=e.statistics[n].value;e.statistics[n].value=Math.min(t,o);break}case"max":{if(isNaN(o))break;if(!e.statistics[n]){e.statistics[n]={value:o};break}const t=e.statistics[n].value;e.statistics[n].value=Math.max(t,o);break}case"count":break;case"sum":case"avg":{e.statistics[n]||(e.statistics[n]={value:0,nanCount:0});const t=e.statistics[n].value,i=e.statistics[n].nanCount??0;null==o||isNaN(o)?e.statistics[n].nanCount=i+s:e.statistics[n].value=t+s*o;break}case"avg_angle":{e.statistics[n]||(e.statistics[n]={x:0,y:0,nanCount:0});const t=e.statistics[n].x,i=e.statistics[n].y,a=e.statistics[n].nanCount??0,r=Math.PI/180;null==o||isNaN(o)?e.statistics[n].nanCount=a+s:(e.statistics[n].x=t+s*Math.cos(o*r),e.statistics[n].y=i+s*Math.sin(o*r));break}case"mode":{e.statistics[n]||(e.statistics[n]={});const t=e.statistics[n][o]||0;e.statistics[n][o]=t+s;break}}}}_aggregateStatistics(t,e){for(const s of this._statisticFields){const i=s.name;switch(s.statisticType){case"min":{if(!t[i]){t[i]={value:e[i].value};break}const s=t[i].value;t[i].value=Math.min(s,e[i].value);break}case"max":{if(!t[i]){t[i]={value:e[i].value};break}const s=t[i].value;t[i].value=Math.max(s,e[i].value);break}case"count":break;case"sum":case"avg":case"avg_angle":case"mode":t[i]||(t[i]={});for(const s in e[i]){const n=t[i][s]||0;t[i][s]=n+e[i][s]}}}}normalizeStatistics(t,e){const s={};for(const i of this._statisticFields){const n=i.name;switch(i.statisticType){case"min":case"max":{const i=t[n];if(!e||!i)break;s[n]=i.value;break}case"count":if(!e)break;s[n]=e;break;case"sum":{if(!e)break;const{value:i,nanCount:o}=t[n];if(!(e-o))break;s[n]=i;break}case"avg":{if(!e)break;const{value:i,nanCount:o}=t[n];if(!(e-o))break;s[n]=i/(e-o);break}case"avg_angle":{if(!e)break;const{x:i,y:o,nanCount:a}=t[n];if(!(e-a))break;const r=i/(e-a),l=o/(e-a),h=180/Math.PI,c=Math.atan2(l,r)*h;s[n]=c;break}case"mode":{const e=t[n];let i=0,o=0,a=null;for(const t in e){const s=e[t];s===i?o+=1:s>i&&(i=s,o=1,a=t)}s[n]="null"===a||o>1?null:a;break}}}return s}}class u{constructor(t,e,s,i){this.count=0,this.xTotal=0,this.yTotal=0,this.statistics={},this.displayId=0,this.referenceId=0,this.displayIds=new Set,this.next=null,this.depth=0,this.xNode=0,this.yNode=0,this.xGeohashTotal=0,this.yGeohashTotal=0,this._tree=t,this.children=new Array(32);for(let n=0;n<this.children.length;n++)this.children[n]=null;this.xNode=e,this.yNode=s,this.depth=i}realloc(t,e,s){for(let i=0;i<this.children.length;i++)this.children[i]=null;return this.xNode=t,this.yNode=e,this.depth=s,this.next=null,this.xGeohashTotal=0,this.yGeohashTotal=0,this.displayId=0,this.referenceId=0,this.xTotal=0,this.yTotal=0,this.count=0,this.statistics={},this.displayIds.clear(),this}get id(){return`${this.xNode}.${this.yNode}`}add(t){this.displayIds.add(t)}remove(t){this.displayIds.delete(t)}getAttributes(){const t=this._tree.normalizeStatistics(this.statistics,this.count);return t.referenceId=null,t.aggregateId=this.id,t.aggregateCount=this.count,t}getGeometry(t,e){const s=this.getLngLatBounds(),[a,h,c,u]=s,d=l({rings:[[[a,h],[a,u],[c,u],[c,h],[a,h]]]},i.WGS84,t),f=n(new r,d,!1,!1);if(null!=e){return o(new r,f,!1,!1,"esriGeometryPolygon",e,!1,!1)}return f}getGeometryCentroid(t,e){const s=this.getLngLatBounds(),[n,h,c,u]=s,d=l({x:(n+c)/2,y:(h+u)/2},i.WGS84,t),f=a(new r,d);if(null!=e){return o(new r,f,!1,!1,"esriGeometryPoint",e,!1,!1)}return f}getLngLatBounds(){const t=this.depth,e=Math.ceil(t/2),i=Math.floor(t/2),n=30-(3*e+2*i),o=30-(2*e+3*i),a=this.xNode<<n,r=this.yNode<<o;return s({geohashX:a,geohashY:r},this.depth)}find(t,e,s,i,n,o){if(i>=s)return this;const a=1-i%2,r=3*a+2*(1-a),l=2*a+3*(1-a),h=30-n-r,c=30-o-l,u=((t&7*a+3*(1-a)<<h)>>h)+((e&3*a+7*(1-a)<<c)>>c)*(8*a+4*(1-a)),d=this.children[u];return null==d?null:d.find(t,e,s,i+1,n+r,o+l)}}export{u as GeohashNode,c as GeohashTree};
|
|
5
|
+
import t from"../core/CircularArray.js";import{decodeGeohashXY as e}from"./geohashUtils.js";import s from"../geometry/SpatialReference.js";import{convertFromPolygon as i,quantizeOptimizedGeometry as n,convertFromPoint as o}from"../layers/graphics/featureConversionUtils.js";import a from"../layers/graphics/OptimizedGeometry.js";import{project as r}from"../layers/graphics/data/projectionSupport.js";import{FeatureSetReaderJSON as l}from"../views/2d/layers/features/support/FeatureSetReaderJSON.js";class h{constructor(e=[],s,i=8096){this.onRelease=t=>{},this._nodes=0,this._root=new c(this,0,0,0),this._statisticFields=e,this._pool=i?new t(8096):null,this._serviceInfo=s}destroy(){this.clear()}_acquire(t,e,s){this._nodes++;let i=null;return null!=this._pool&&(i=this._pool.dequeue()),null!=i?i.realloc(t,e,s):i=new c(this,t,e,s),i}_release(t){this.onRelease(t),this._nodes--,null!=this._pool&&this._pool.enqueue(t)}get count(){return this._root.count}get size(){return this._nodes}get poolSize(){return this._pool?.size??0}get depth(){let t=0;return this.forEach((e=>t=Math.max(t,e.depth))),t}dropLevels(t){this.forEach((e=>{if(e.depth>=t)for(let t=0;t<e.children.length;t++){const s=e.children[t];s&&this._release(s)}})),this.forEach((e=>{if(e.depth>=t)for(let t=0;t<e.children.length;t++)e.children[t]=null}))}clear(){this.forEach((t=>this._release(t))),this._root=new c(this,0,0,0)}insert(t,e,s=0){const i=l.fromOptimizedFeatures([t],this._serviceInfo).getCursor();i.next();const n=i.readGeometry();if(!n)return;const[o,a]=n.coords,r=t.geohashX,h=t.geohashY;this.insertCursor(i,t.displayId,o,a,r,h,e,s)}insertCursor(t,e,s,i,n,o,a,r=0){let l=this._root,h=0,c=0,u=0;for(;null!==l;){if(l.depth>=r&&(l.count+=1,l.xTotal+=s,l.yTotal+=i,l.xGeohashTotal+=n,l.yGeohashTotal+=o,l.referenceId=e,this._updateStatisticsCursor(t,l,1)),h>=a)return void l.add(e);const d=Math.ceil((h+1)/2),f=Math.floor((h+1)/2),x=1-h%2,m=30-(3*d+2*f),g=30-(2*d+3*f),y=(n&7*x+3*(1-x)<<m)>>m,p=(o&3*x+7*(1-x)<<g)>>g,_=y+p*(8*x+4*(1-x));c=c<<3*x+2*(1-x)|y,u=u<<2*x+3*(1-x)|p,null==l.children[_]&&(l.children[_]=this._acquire(c,u,h+1)),h+=1,l=l.children[_]}}remove(t,e){const s=l.fromOptimizedFeatures([t],this._serviceInfo).getCursor();s.next();const i=s.readGeometry();if(!i)return;const[n,o]=i.coords,a=t.geohashX,r=t.geohashY;this.removeCursor(s,n,o,a,r,e)}removeCursor(t,e,s,i,n,o){let a=this._root,r=0;for(;null!==a;){if(a.count-=1,a.xTotal-=e,a.yTotal-=s,a.xGeohashTotal-=i,a.yGeohashTotal-=n,this._updateStatisticsCursor(t,a,-1),r>=o)return void a.remove(t.getDisplayId());const l=Math.ceil((r+1)/2),h=Math.floor((r+1)/2),c=1-r%2,u=30-(3*l+2*h),d=30-(2*l+3*h),f=((i&7*c+3*(1-c)<<u)>>u)+((n&3*c+7*(1-c)<<d)>>d)*(8*c+4*(1-c)),x=a.children[f];1===x?.count&&(this._release(x),a.children[f]=null),r+=1,a=x}}forEach(t){let e=this._root;for(;null!==e;){const s=this._linkChildren(e)||e.next;t(e),e=s}}find(t,e,s){return this._root.find(t,e,s,0,0,0)}findIf(t){let e=null;return this.forEach((s=>{t(s)&&(e=s)})),e}findAllIf(t){const e=[];return this.forEach((s=>{t(s)&&e.push(s)})),e}findSingleOccupancyNode(t,e,s,i,n){let o=this._root;for(;null!==o;){const a=o.depth,r=o.xNode,l=o.yNode,h=1-a%2,c=o.xGeohashTotal/o.count,u=o.yGeohashTotal/o.count;if(1===o.count&&t<c&&c<=s&&e<u&&u<=i)return o;if(a>=n){o=o.next;continue}const d=Math.ceil((a+1)/2),f=Math.floor((a+1)/2),x=30-(3*d+2*f),m=30-(2*d+3*f),g=~((1<<x)-1),y=~((1<<m)-1),p=(t&g)>>x,_=(e&y)>>m,v=(s&g)>>x,M=(i&y)>>m,T=r<<3*h+2*(1-h),b=l<<2*h+3*(1-h),k=T+8*h+4*(1-h),N=b+4*h+8*(1-h),I=Math.max(T,p),C=Math.max(b,_),G=Math.min(k,v),L=Math.min(N,M);let S=null,w=null;for(let t=C;t<=L;t++)for(let e=I;e<=G;e++){const s=e-T+(t-b)*(8*h+4*(1-h)),i=o.children[s];i&&(S||(S=i,S.next=o.next),w&&(w.next=i),w=i,i.next=o.next)}o=S||o.next}return null}getRegionDisplayIds(t){let e=this._root;const{bounds:s,geohashBounds:i,level:n}=t,[o,a,r,l]=s,h=[];for(;null!==e;){const t=e.depth,s=e.xNode,c=e.yNode;if(t>=n){const t=e.xTotal/e.count,s=e.yTotal/e.count;t>=o&&t<=r&&s>=a&&s<=l&&e.displayIds.forEach((t=>h.push(t))),e=e.next;continue}const u=Math.ceil((t+1)/2),d=Math.floor((t+1)/2),f=1-t%2,x=30-(3*u+2*d),m=30-(2*u+3*d),g=~((1<<x)-1),y=~((1<<m)-1),p=(i.xLL&g)>>x,_=(i.yLL&y)>>m,v=(i.xTR&g)>>x,M=(i.yTR&y)>>m,T=s<<3*f+2*(1-f),b=c<<2*f+3*(1-f),k=T+8*f+4*(1-f),N=b+4*f+8*(1-f),I=Math.max(T,p),C=Math.max(b,_),G=Math.min(k,v),L=Math.min(N,M);let S=null,w=null;for(let i=C;i<=L;i++)for(let t=I;t<=G;t++){const s=t-T+(i-b)*(8*f+4*(1-f)),n=e.children[s];n&&(S||(S=n,S.next=e.next),w&&(w.next=n),w=n,n.next=e.next)}e=S||e.next}return h}getRegionStatistics(t){let e=this._root,s=0,i=0,n=0;const o={},{bounds:a,geohashBounds:r,level:l}=t,[h,c,u,d]=a;let f=0;for(;null!==e;){const t=e.depth,a=e.xNode,x=e.yNode;if(t>=l){const t=e.xTotal/e.count,a=e.yTotal/e.count;t>h&&t<=u&&a>c&&a<=d&&(s+=e.count,i+=e.xTotal,n+=e.yTotal,1===e.count&&(f=e.referenceId),this._aggregateStatistics(o,e.statistics)),e=e.next;continue}const m=Math.ceil((t+1)/2),g=Math.floor((t+1)/2),y=1-t%2,p=30-(3*m+2*g),_=30-(2*m+3*g),v=~((1<<p)-1),M=~((1<<_)-1),T=(r.xLL&v)>>p,b=(r.yLL&M)>>_,k=(r.xTR&v)>>p,N=(r.yTR&M)>>_,I=a<<3*y+2*(1-y),C=x<<2*y+3*(1-y),G=I+8*y+4*(1-y),L=C+4*y+8*(1-y),S=Math.max(I,T),w=Math.max(C,b),R=Math.min(G,k),F=Math.min(L,N);let z=null,j=null;for(let r=w;r<=F;r++)for(let t=S;t<=R;t++){const a=t-I+(r-C)*(8*y+4*(1-y)),l=e.children[a];if(l){if(r!==w&&r!==F&&t!==S&&t!==R){const t=l.xTotal/l.count,e=l.yTotal/l.count;t>h&&t<=u&&e>c&&e<=d&&(s+=l.count,i+=l.xTotal,n+=l.yTotal,1===l.count&&(f=l.referenceId),this._aggregateStatistics(o,l.statistics));continue}z||(z=l,z.next=e.next),j&&(j.next=l),j=l,l.next=e.next}}e=z||e.next}return{count:s,attributes:this.normalizeStatistics(o,s),xTotal:i,yTotal:n,referenceId:f}}getBins(t){const e=[],{geohashBounds:s,level:i}=t;let n=this._root;for(;null!==n;){const t=n.depth,o=n.xNode,a=n.yNode;if(t>=i){e.push(n),n=n.next;continue}const r=Math.ceil((t+1)/2),l=Math.floor((t+1)/2),h=1-t%2,c=30-(3*r+2*l),u=30-(2*r+3*l),d=~((1<<c)-1),f=~((1<<u)-1),x=(s.xLL&d)>>c,m=(s.yLL&f)>>u,g=(s.xTR&d)>>c,y=(s.yTR&f)>>u,p=o<<3*h+2*(1-h),_=a<<2*h+3*(1-h),v=p+8*h+4*(1-h),M=_+4*h+8*(1-h),T=Math.max(p,x),b=Math.max(_,m),k=Math.min(v,g),N=Math.min(M,y);let I=null,C=null;for(let e=b;e<=N;e++)for(let t=T;t<=k;t++){const s=t-p+(e-_)*(8*h+4*(1-h)),i=n.children[s];i&&(I||(I=i,I.next=n.next),C&&(C.next=i),C=i,i.next=n.next)}n=I||n.next}return e}_linkChildren(t){let e=null,s=null;for(let i=0;i<=t.children.length;i++){const n=t.children[i];n&&(e||(e=n,e.next=t.next),s&&(s.next=n),s=n,n.next=t.next)}return e}_updateStatisticsCursor(t,e,s){for(const i of this._statisticFields){const n=i.name,o=i.inField?t.readAttribute(i.inField):t.getComputedNumericAtIndex(i.inFieldIndex);switch(i.statisticType){case"min":{if(isNaN(o))break;if(!e.statistics[n]){e.statistics[n]={value:o};break}const t=e.statistics[n].value;e.statistics[n].value=Math.min(t,o);break}case"max":{if(isNaN(o))break;if(!e.statistics[n]){e.statistics[n]={value:o};break}const t=e.statistics[n].value;e.statistics[n].value=Math.max(t,o);break}case"count":break;case"sum":case"avg":{e.statistics[n]||(e.statistics[n]={value:0,nanCount:0});const t=e.statistics[n].value,i=e.statistics[n].nanCount??0;null==o||isNaN(o)?e.statistics[n].nanCount=i+s:e.statistics[n].value=t+s*o;break}case"avg_angle":{e.statistics[n]||(e.statistics[n]={x:0,y:0,nanCount:0});const t=e.statistics[n].x,i=e.statistics[n].y,a=e.statistics[n].nanCount??0,r=Math.PI/180;null==o||isNaN(o)?e.statistics[n].nanCount=a+s:(e.statistics[n].x=t+s*Math.cos(o*r),e.statistics[n].y=i+s*Math.sin(o*r));break}case"mode":{e.statistics[n]||(e.statistics[n]={});const t=e.statistics[n][o]||0;e.statistics[n][o]=t+s;break}}}}_aggregateStatistics(t,e){for(const s of this._statisticFields){const i=s.name;switch(s.statisticType){case"min":{if(!t[i]){t[i]={value:e[i].value};break}const s=t[i].value;t[i].value=Math.min(s,e[i].value);break}case"max":{if(!t[i]){t[i]={value:e[i].value};break}const s=t[i].value;t[i].value=Math.max(s,e[i].value);break}case"count":break;case"sum":case"avg":case"avg_angle":case"mode":t[i]||(t[i]={});for(const s in e[i]){const n=t[i][s]||0;t[i][s]=n+e[i][s]}}}}normalizeStatistics(t,e){const s={};for(const i of this._statisticFields){const n=i.name;switch(i.statisticType){case"min":case"max":{const i=t[n];if(!e||!i)break;s[n]=i.value;break}case"count":if(!e)break;s[n]=e;break;case"sum":{if(!e)break;const{value:i,nanCount:o}=t[n];if(!(e-o))break;s[n]=i;break}case"avg":{if(!e)break;const{value:i,nanCount:o}=t[n];if(!(e-o))break;s[n]=i/(e-o);break}case"avg_angle":{if(!e)break;const{x:i,y:o,nanCount:a}=t[n];if(!(e-a))break;const r=i/(e-a),l=o/(e-a),h=180/Math.PI,c=Math.atan2(l,r)*h;s[n]=c;break}case"mode":{const e=t[n];let i=0,o=0,a=null;for(const t in e){const s=e[t];s===i?o+=1:s>i&&(i=s,o=1,a=t)}s[n]="null"===a||o>1?null:a;break}}}return s}}class c{constructor(t,e,s,i){this.count=0,this.xTotal=0,this.yTotal=0,this.statistics={},this.displayId=0,this.referenceId=0,this.displayIds=new Set,this.next=null,this.depth=0,this.xNode=0,this.yNode=0,this.xGeohashTotal=0,this.yGeohashTotal=0,this._tree=t,this.children=new Array(32);for(let n=0;n<this.children.length;n++)this.children[n]=null;this.xNode=e,this.yNode=s,this.depth=i}realloc(t,e,s){for(let i=0;i<this.children.length;i++)this.children[i]=null;return this.xNode=t,this.yNode=e,this.depth=s,this.next=null,this.xGeohashTotal=0,this.yGeohashTotal=0,this.displayId=0,this.referenceId=0,this.xTotal=0,this.yTotal=0,this.count=0,this.statistics={},this.displayIds.clear(),this}get id(){return`${this.xNode}.${this.yNode}`}add(t){this.displayIds.add(t)}remove(t){this.displayIds.delete(t)}getAttributes(){const t=this._tree.normalizeStatistics(this.statistics,this.count);return t.referenceId=null,t.aggregateId=this.id,t.aggregateCount=this.count,t}getGeometry(t,e){const o=this.getLngLatBounds(),[l,h,c,u]=o,d=r({rings:[[[l,h],[l,u],[c,u],[c,h],[l,h]]]},s.WGS84,t),f=i(new a,d,!1,!1);if(null!=e){return n(new a,f,!1,!1,"esriGeometryPolygon",e,!1,!1)}return f}getGeometryCentroid(t,e){const i=this.getLngLatBounds(),[l,h,c,u]=i,d=r({x:(l+c)/2,y:(h+u)/2},s.WGS84,t),f=o(new a,d);if(null!=e){return n(new a,f,!1,!1,"esriGeometryPoint",e,!1,!1)}return f}getLngLatBounds(){const t=this.depth,s=Math.ceil(t/2),i=Math.floor(t/2),n=30-(3*s+2*i),o=30-(2*s+3*i),a=this.xNode<<n,r=this.yNode<<o;return e({geohashX:a,geohashY:r},this.depth)}find(t,e,s,i,n,o){if(i>=s)return this;const a=1-i%2,r=3*a+2*(1-a),l=2*a+3*(1-a),h=30-n-r,c=30-o-l,u=((t&7*a+3*(1-a)<<h)>>h)+((e&3*a+7*(1-a)<<c)>>c)*(8*a+4*(1-a)),d=this.children[u];return null==d?null:d.find(t,e,s,i+1,n+r,o+l)}}export{c as GeohashNode,h as GeohashTree};
|