@arcgis/core 5.1.0-next.105 → 5.1.0-next.107
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/analysis/AreaMeasurementAnalysis.d.ts +5 -5
- package/analysis/DimensionAnalysis.d.ts +3 -3
- package/analysis/DimensionSimpleStyle.d.ts +2 -2
- package/analysis/DirectLineMeasurementAnalysis.d.ts +4 -4
- package/analysis/DistanceMeasurementAnalysis.d.ts +4 -4
- package/analysis/ElevationProfileAnalysis.d.ts +3 -3
- package/analysis/LengthDimension.d.ts +2 -2
- package/analysis/LineOfSightAnalysis.d.ts +4 -4
- package/analysis/ShadowCast/DiscreteOptions.d.ts +7 -3
- package/analysis/ShadowCast/MinDurationOptions.d.ts +5 -1
- package/analysis/ShadowCast/TotalDurationOptions.d.ts +7 -3
- package/analysis/ShadowCast/types.d.ts +1 -1
- package/analysis/ShadowCastAnalysis.d.ts +11 -6
- package/analysis/SliceAnalysis.d.ts +4 -4
- package/analysis/SlicePlane.d.ts +3 -3
- package/analysis/Viewshed.d.ts +2 -2
- package/analysis/ViewshedAnalysis.d.ts +3 -3
- package/analysis/VolumeMeasurement/VolumeMeasurementCutFillOptions.d.ts +1 -1
- package/analysis/VolumeMeasurementAnalysis.d.ts +3 -3
- package/applications/Components/imageryUtils.d.ts +24 -0
- package/applications/Components/layerUtils.d.ts +21 -0
- package/applications/Components/layerUtils.js +2 -0
- package/applications/Components/templateUtils.d.ts +11 -1
- package/applications/Components/templateUtils.js +1 -1
- package/arcgisGlobal.d.ts +6 -0
- package/assets/components/assets/icon/buttons16.json +1 -0
- package/assets/components/assets/icon/buttons24.json +1 -0
- package/assets/components/assets/icon/buttons32.json +1 -0
- package/assets/components/assets/icon/entityTypes16.json +1 -0
- package/assets/components/assets/icon/entityTypes24.json +1 -0
- package/assets/components/assets/icon/entityTypes32.json +1 -0
- package/assets/esri/core/t9n/Units_ar.json +1 -1
- package/assets/esri/core/t9n/Units_bg.json +1 -1
- package/assets/esri/core/t9n/Units_bs.json +1 -1
- package/assets/esri/core/t9n/Units_ca.json +1 -1
- package/assets/esri/core/t9n/Units_cs.json +1 -1
- package/assets/esri/core/t9n/Units_da.json +1 -1
- package/assets/esri/core/t9n/Units_de.json +1 -1
- package/assets/esri/core/t9n/Units_el.json +1 -1
- package/assets/esri/core/t9n/Units_es.json +1 -1
- package/assets/esri/core/t9n/Units_et.json +1 -1
- package/assets/esri/core/t9n/Units_fi.json +1 -1
- package/assets/esri/core/t9n/Units_fr.json +1 -1
- package/assets/esri/core/t9n/Units_he.json +1 -1
- package/assets/esri/core/t9n/Units_hr.json +1 -1
- package/assets/esri/core/t9n/Units_hu.json +1 -1
- package/assets/esri/core/t9n/Units_id.json +1 -1
- package/assets/esri/core/t9n/Units_it.json +1 -1
- package/assets/esri/core/t9n/Units_ja.json +1 -1
- package/assets/esri/core/t9n/Units_ko.json +1 -1
- package/assets/esri/core/t9n/Units_lt.json +1 -1
- package/assets/esri/core/t9n/Units_lv.json +1 -1
- package/assets/esri/core/t9n/Units_nl.json +1 -1
- package/assets/esri/core/t9n/Units_no.json +1 -1
- package/assets/esri/core/t9n/Units_pl.json +1 -1
- package/assets/esri/core/t9n/Units_pt-BR.json +1 -1
- package/assets/esri/core/t9n/Units_pt-PT.json +1 -1
- package/assets/esri/core/t9n/Units_ro.json +1 -1
- package/assets/esri/core/t9n/Units_ru.json +1 -1
- package/assets/esri/core/t9n/Units_sk.json +1 -1
- package/assets/esri/core/t9n/Units_sl.json +1 -1
- package/assets/esri/core/t9n/Units_sr.json +1 -1
- package/assets/esri/core/t9n/Units_sv.json +1 -1
- package/assets/esri/core/t9n/Units_th.json +1 -1
- package/assets/esri/core/t9n/Units_tr.json +1 -1
- package/assets/esri/core/t9n/Units_uk.json +1 -1
- package/assets/esri/core/t9n/Units_vi.json +1 -1
- package/assets/esri/core/t9n/Units_zh-CN.json +1 -1
- package/assets/esri/core/t9n/Units_zh-HK.json +1 -1
- package/assets/esri/core/t9n/Units_zh-TW.json +1 -1
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/{6854b28853f5dd195110.js → 01c70c27aa3a955e2928.js} +1 -1
- package/assets/esri/core/workers/chunks/{b7a81fd4994eabba1869.js → 0c8e6ccb5a8174718d62.js} +1 -1
- package/assets/esri/core/workers/chunks/{a943bd2e6fb7443c2b66.js → 17604cbd4d24158e2c16.js} +1 -1
- package/assets/esri/core/workers/chunks/179c9fe4ac83b42e5976.js +1 -0
- package/assets/esri/core/workers/chunks/1d1929f98d941179be29.js +2 -0
- package/assets/esri/core/workers/chunks/{24247ee93f43fff5e596.js.LICENSE.txt → 1d1929f98d941179be29.js.LICENSE.txt} +1 -3
- package/assets/esri/core/workers/chunks/1ebb613bbe09fcf274d8.js +1 -0
- package/assets/esri/core/workers/chunks/24b43fb12fc3009fdc30.js +1 -0
- package/assets/esri/core/workers/chunks/2b9661700743d1f9717e.js +1 -0
- package/assets/esri/core/workers/chunks/2f0a3b22fc46d832e240.js +1 -0
- package/assets/esri/core/workers/chunks/{2dced41ff2aa1bd86665.js → 33ec193e6d7a0cb9d8dd.js} +1 -1
- package/assets/esri/core/workers/chunks/340f2c996f62f7f5ceae.js +1 -0
- package/assets/esri/core/workers/chunks/37c63570c0b4981cd519.js +1 -0
- package/assets/esri/core/workers/chunks/{a0e72b107991ba38a9f0.js → 502c3da8c49bf885f51d.js} +1 -1
- package/assets/esri/core/workers/chunks/518046d2b95a7590a092.js +1 -0
- package/assets/esri/core/workers/chunks/547dc6ccb989bd962661.js +1 -0
- package/assets/esri/core/workers/chunks/549d348ca181d06aefb7.js +2 -0
- package/assets/esri/core/workers/chunks/{9b89cc85c1b5d561df7c.js → 55334ad3618899cdbf78.js} +2 -2
- package/assets/esri/core/workers/chunks/{7485d59d60d61737d662.js → 55b765c72d13b3b911f9.js} +1 -1
- package/assets/esri/core/workers/chunks/{1e8d5bfc5f8c2664190c.js → 56d9d3f108ff6e719dd4.js} +1 -1
- package/assets/esri/core/workers/chunks/5cdf87e7a59ace38df87.js +1 -0
- package/assets/esri/core/workers/chunks/622bdd1b9d5d292ec12b.js +1 -0
- package/assets/esri/core/workers/chunks/69c9eb93553b006b640d.js +2 -0
- package/assets/esri/core/workers/chunks/6d20d741b8ae1a45b422.js +1 -0
- package/assets/esri/core/workers/chunks/702a3ef9e1b3442cbee7.js +1 -0
- package/assets/esri/core/workers/chunks/75a7de23c05435ec7649.js +1 -0
- package/assets/esri/core/workers/chunks/762e23466308f22d7076.js +1 -0
- package/assets/esri/core/workers/chunks/{52219561c144e5cb4442.js → 770611659b38066a6228.js} +1 -1
- package/assets/esri/core/workers/chunks/{e90afd914f2ccd4f5374.js → 7ce60331f94ee0a5d674.js} +6 -6
- package/assets/esri/core/workers/chunks/825db2ea15308ee6e5dc.js +1 -0
- package/assets/esri/core/workers/chunks/8330302096d4312a4393.js +1 -0
- package/assets/esri/core/workers/chunks/{7617bd0f3a70dfe61637.js → 8557dd9ef336b23f768f.js} +1 -1
- package/assets/esri/core/workers/chunks/885eac78a76184efa1e5.js +1 -0
- package/assets/esri/core/workers/chunks/{79dc7045d9a2d43ba8df.js → 890b7a1153b7f65eba9a.js} +1 -1
- package/assets/esri/core/workers/chunks/9234a293d61e134f121f.js +1 -0
- package/assets/esri/core/workers/chunks/{44636ef119c6a576470b.js → 94eab215bab3e4e0e5b5.js} +1 -1
- package/assets/esri/core/workers/chunks/95dee5853c6e89f15ea9.js +1 -0
- package/assets/esri/core/workers/chunks/a5b9ae4c93f9af7589f2.js +1 -0
- package/assets/esri/core/workers/chunks/{fb415b01f0f1d644832d.js → ac408c62565e2c8b5975.js} +1 -1
- package/assets/esri/core/workers/chunks/b3e8ab68fc38306f13c6.js +1 -0
- package/assets/esri/core/workers/chunks/b69d1d528e271568cbd8.js +2 -0
- package/assets/esri/core/workers/chunks/{0cc74bc3772be51cabc1.js → bbaf8baa3ca6195467e4.js} +1 -1
- package/assets/esri/core/workers/chunks/{f7e386ece75afb6e4be5.js → bc249bb667f0564ad093.js} +1 -1
- package/assets/esri/core/workers/chunks/c4872cf3b71d00f450e1.js +1 -0
- package/assets/esri/core/workers/chunks/c5ab346a226df1894302.js +1 -0
- package/assets/esri/core/workers/chunks/{39a8e6c9d710d3faea3c.js → cdb48d198145493f76f3.js} +1 -1
- package/assets/esri/core/workers/chunks/{359dbfbfb9acfb18bc6e.js → d4014213c476bf8099af.js} +1 -1
- package/assets/esri/core/workers/chunks/da29cf0e64065631a470.js +1 -0
- package/assets/esri/core/workers/chunks/ddebc1dc10a2d207389f.js +1 -0
- package/assets/esri/core/workers/chunks/e393fd61deb2e7f22ee6.js +1 -0
- package/assets/esri/core/workers/chunks/ea2bf7c543cc536400b7.js +30 -0
- package/assets/esri/core/workers/chunks/ece30bfd5c49b8d99752.js +1 -0
- package/assets/esri/core/workers/chunks/ecf4d07917efc97eb991.js +1 -0
- package/assets/esri/core/workers/chunks/ee56290e600cbeb25a00.js +1 -0
- package/assets/esri/core/workers/chunks/f52c6efc5a2abf5ac845.js +1 -0
- package/assets/esri/core/workers/chunks/fc1fe1f58a65a1694c09.js +1 -0
- package/assets/esri/geometry/support/pe-wasm.wasm +0 -0
- package/assets/esri/libs/lyr3d/lyr3DMain.wasm +0 -0
- package/assets/esri/libs/lyr3d/lyr3DWorker.wasm +0 -0
- package/assets/esri/themes/base/widgets/_BatchAttributeForm.scss +84 -1
- package/assets/esri/themes/base/widgets/_Sketch.scss +1 -24
- 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/BatchAttributeForm/t9n/BatchAttributeForm.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ar.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_bg.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_bs.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ca.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_cs.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_da.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_de.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_el.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_en.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_es.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_et.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_fi.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_fr.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_he.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_hr.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_hu.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_id.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_it.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ja.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ko.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_lt.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_lv.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_nl.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_no.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_pl.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_pt-BR.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_pt-PT.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ro.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ru.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sk.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sl.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sr.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sv.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_th.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_tr.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_uk.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_vi.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_zh-CN.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_zh-HK.json +1 -1
- package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_zh-TW.json +1 -1
- package/assets/esri/widgets/FeatureTable/t9n/FeatureTable.json +1 -1
- package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_en.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ar.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_bg.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_bs.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ca.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_cs.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_da.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_de.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_el.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_es.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_et.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_fi.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_fr.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_he.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_hr.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_hu.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_id.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_it.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ja.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ko.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_lt.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_lv.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_nl.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_no.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pl.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pt-BR.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pt-PT.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ro.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ru.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sk.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sl.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sr.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sv.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_th.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_tr.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_uk.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_vi.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-CN.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-HK.json +1 -1
- package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-TW.json +1 -1
- package/assets/esri/widgets/Sketch/t9n/Sketch.json +1 -1
- package/assets/esri/widgets/Sketch/t9n/Sketch_en.json +1 -1
- package/chunks/ComponentShader.glsl.js +11 -15
- package/chunks/Fog.glsl.js +3 -3
- package/chunks/GlowComposition.glsl.js +38 -56
- package/chunks/OITDimOpaque.glsl.js +8 -3
- package/chunks/SimpleAtmosphere.glsl.js +3 -3
- package/chunks/lyr3DWorker.js +1 -1
- package/chunks/pe-wasm.js +1 -1
- package/config.js +1 -1
- package/core/generatorUtils.js +2 -0
- package/core/libs/gl-matrix-2/factories/vec2f64.js +1 -1
- package/core/libs/gl-matrix-2/math/vec2.js +1 -1
- package/core/mathUtils.js +1 -1
- package/core/typedArrayUtil.js +1 -1
- package/geometry/HeightModelInfo.js +1 -1
- package/geometry/geometryEngine.d.ts +2 -2
- package/geometry/support/WKIDUnitConversion.js +1 -1
- package/geometry/support/buffer/BufferView.js +1 -1
- package/geometry/support/vcsData.js +1 -1
- package/geometry/support/vcsLookup.js +1 -1
- package/identity/IdentityManagerBase.js +1 -1
- package/kernel.js +1 -1
- package/layers/DimensionLayer.d.ts +5 -5
- package/layers/FeatureLayer.d.ts +2 -2
- package/layers/GaussianSplatLayer.d.ts +3 -3
- package/layers/LineOfSightLayer.d.ts +5 -5
- package/layers/ParquetLayer.d.ts +6 -4
- package/layers/SubtypeGroupLayer.d.ts +2 -2
- package/layers/ViewshedLayer.d.ts +3 -3
- package/layers/graphics/sources/ParquetSource.js +1 -1
- package/layers/graphics/sources/parquet/FileProvider.js +2 -0
- package/layers/graphics/sources/parquet/PortalParquetFileProvider.js +2 -0
- package/layers/graphics/sources/parquet/PortalParquetLayerFileProvider.js +2 -0
- package/layers/graphics/sources/parquet/UrlsFileProvider.js +2 -0
- package/layers/graphics/sources/parquet/createFileProvider.js +2 -0
- package/layers/graphics/sources/support/ParquetSourceWorker.js +1 -1
- package/layers/knowledgeGraph/KnowledgeGraphSublayer.d.ts +1 -1
- package/layers/raster/datasets/ImageAuxRaster.js +1 -1
- package/layers/raster/datasets/MRFRaster.js +1 -1
- package/layers/raster/datasets/pixelReader.js +1 -1
- package/layers/raster/formats/JpgPlus.js +1 -1
- package/layers/raster/formats/RasterCodec.js +1 -1
- package/layers/raster/functions/clipUtils.js +1 -1
- package/layers/support/AggregateField.d.ts +2 -1
- package/layers/support/LayerContingentValuesCache.js +1 -1
- package/layers/support/SubtypeSublayer.d.ts +4 -4
- package/layers/support/parquetUtils.d.ts +18 -7
- package/layers/support/parquetUtils.js +1 -1
- package/layers/support/rasterFunctionUtils.d.ts +2 -2
- package/libs/parquet/parquet.js +1 -1
- package/linkChart/ChronologicalLayoutSettings.d.ts +1 -1
- package/networks/CircuitManager.d.ts +3 -3
- package/networks/UnitIdentifierManager.d.ts +1 -1
- package/networks/UnitIdentifierManager.js +1 -1
- package/networks/UtilityNetwork.d.ts +2 -2
- package/networks/UtilityNetwork.js +1 -1
- package/networks/support/Circuit.d.ts +1 -1
- package/networks/support/CircuitLocation.d.ts +1 -1
- package/networks/support/CircuitSection.d.ts +1 -1
- package/networks/support/Subcircuit.d.ts +1 -1
- package/networks/support/TraceJobInfo.js +1 -1
- package/networks/support/jsonTypes.d.ts +10 -3
- package/package.json +4 -4
- package/popup/FieldInfo.d.ts +4 -2
- package/popup/support/FieldInfoFormat.d.ts +3 -2
- package/rest/featureService/FeatureService.d.ts +1 -1
- package/rest/knowledgeGraph/FieldIndex.d.ts +1 -1
- package/rest/knowledgeGraph/GraphObjectType.d.ts +2 -2
- package/rest/knowledgeGraph/GraphSearch.d.ts +1 -1
- package/rest/knowledgeGraph/GraphSearchStreaming.d.ts +1 -1
- package/rest/networks/circuits/support/CircuitVerifyResult.js +1 -1
- package/rest/networks/circuits/support/ExportCircuitsParameters.d.ts +19 -1
- package/rest/networks/circuits/support/ExportCircuitsResult.js +1 -1
- package/rest/networks/circuits/support/VerifyCircuitsParameters.d.ts +18 -10
- package/rest/networks/circuits/support/VerifyCircuitsParameters.js +1 -1
- package/rest/networks/circuits/support/VerifyCircuitsResult.js +1 -1
- package/rest/networks/support/TraceParameters.js +1 -1
- package/rest/networks/support/TraceResult.js +1 -1
- package/rest/networks/trace.js +1 -1
- package/rest/networks/unitIdentifiers/support/QueryUnitIdentifiersParameters.js +1 -1
- package/rest/support/AreasAndLengthsParameters.d.ts +1 -1
- package/rest/support/GeneralizeParameters.d.ts +1 -1
- package/rest/support/Query.d.ts +1 -1
- package/rest/support/RelationParameters.d.ts +1 -1
- package/rest/support/types.d.ts +1 -1
- package/support/revision.js +1 -1
- package/symbols/CIMSymbol.d.ts +1 -1
- package/views/2d/analysis/AreaMeasurementAnalysisView2D.d.ts +1 -0
- package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
- package/views/2d/layers/features/layerAdapters/ParquetLayerAdapter.js +1 -1
- package/views/2d/layers/features/sources/strategies/ParquetSnapshotLoadStrategy.js +1 -1
- package/views/2d/layers/features/sources/strategies/ParquetTileLoadStrategy.js +1 -1
- package/views/2d/layers/features/sources/strategies/chunks/ParquetSnapshotSourceChunk.js +1 -1
- package/views/2d/layers/features/sources/strategies/chunks/ParquetSourceChunk.js +1 -1
- package/views/3d/analysis/AreaMeasurementAnalysisView3D.d.ts +1 -0
- package/views/3d/analysis/DimensionAnalysisView3D.d.ts +7 -6
- package/views/3d/analysis/DirectLineMeasurementAnalysisView3D.d.ts +2 -0
- package/views/3d/analysis/LineOfSight/LineOfSightAuthoringUtils.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightIntersectionResult.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightRayIntersector.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightTool.js +1 -1
- package/views/3d/analysis/LineOfSightAnalysisView3D.d.ts +2 -1
- package/views/3d/analysis/ShadowCastAnalysisView3D.d.ts +5 -1
- package/views/3d/analysis/SliceAnalysisView3D.d.ts +4 -3
- package/views/3d/analysis/Viewshed/ViewshedConfiguration.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedDrawToolRenderer.js +2 -0
- package/views/3d/analysis/Viewshed/ViewshedEditTool.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedInteractionVisuals.js +2 -0
- package/views/3d/analysis/Viewshed/ViewshedPlacementController.js +2 -0
- package/views/3d/analysis/Viewshed/ViewshedPlacementOperation.js +2 -0
- package/views/3d/analysis/Viewshed/ViewshedPlacementPointPlugin.js +2 -0
- package/views/3d/analysis/Viewshed/ViewshedPlacementRootPlugin.js +2 -0
- package/views/3d/analysis/Viewshed/ViewshedSnappingController.js +2 -0
- package/views/3d/analysis/Viewshed/ViewshedSubTool.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedSubVisualization.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedTool.js +1 -1
- package/views/3d/analysis/Viewshed/ViewshedTool2.js +1 -1
- package/views/3d/analysis/Viewshed/analysisViewRegister.js +1 -1
- package/views/3d/analysis/Viewshed/placementUtils.js +2 -0
- package/views/3d/analysis/Viewshed/toolLifecycleUtils.js +2 -0
- package/views/3d/analysis/Viewshed/viewshedSubToolUtils.js +1 -1
- package/views/3d/analysis/Viewshed/viewshedToolUtils.js +1 -1
- package/views/3d/analysis/ViewshedAnalysisView3D.d.ts +4 -3
- package/views/3d/analysis/ViewshedAnalysisView3D.js +1 -1
- package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillController.js +1 -1
- package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementShiftTool.js +1 -1
- package/views/3d/environment/FoggyWeather.js +1 -1
- package/views/3d/layers/GaussianSplatLayerView3D.js +1 -1
- package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/polygonUtils.js +1 -1
- package/views/3d/layers/i3s/Intersector.js +1 -1
- package/views/3d/layers/support/UVWorkspace.js +2 -0
- package/views/3d/layers/support/patternUtils.js +1 -1
- package/views/3d/layers/support/uvUtils.js +1 -1
- package/views/3d/support/ResourceController.js +1 -1
- package/views/3d/support/gaussianSplatting/GaussianSplatDataStore.js +1 -1
- package/views/3d/support/gaussianSplatting/GaussianSplatIntersectionHandler.js +1 -1
- package/views/3d/support/gaussianSplatting/GaussianSplatTextureAtlas.js +1 -1
- package/views/3d/support/gaussianSplatting/GaussianTile.js +1 -1
- package/views/3d/support/meshProcessing.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/TextureBackedBuffer.glsl.js +8 -8
- package/views/3d/webgl-engine/core/shaderLibrary/TextureBackedBufferFields.glsl.js +13 -9
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexPosition.glsl.js +63 -49
- package/views/3d/webgl-engine/effects/blit/Blit.js +1 -1
- package/views/3d/webgl-engine/effects/fog/Fog.js +1 -1
- package/views/3d/webgl-engine/effects/glow/Glow.js +1 -1
- package/views/3d/webgl-engine/effects/glow/GlowCompositionTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/lib/AttributeArray.js +1 -1
- package/views/3d/webgl-engine/lib/GaussianSplatRenderNode.js +1 -1
- package/views/3d/webgl-engine/lib/Geometry.js +1 -1
- package/views/3d/webgl-engine/lib/PathBuilder.js +1 -1
- package/views/3d/webgl-engine/lib/PathCapBuilder.js +1 -1
- package/views/3d/webgl-engine/lib/PathExtruder.js +1 -1
- package/views/3d/webgl-engine/lib/PathGeometry.js +1 -1
- package/views/3d/webgl-engine/lib/PathGeometryData.js +1 -1
- package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
- package/views/3d/webgl-engine/lib/TextureBackedBuffer/TextureBackedBufferFieldCreation.js +1 -1
- package/views/3d/webgl-engine/materials/PathLayouts.js +2 -0
- package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/PathTechnique.js +1 -1
- package/views/3d/webgl-engine/materials/PathTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/materials/PatternMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js +1 -1
- package/views/3d/webgl-engine/shaders/SphereDepthInterpolate.glsl.js +2 -3
- package/views/PopupView.d.ts +77 -1
- package/views/PopupView.js +1 -1
- package/views/SceneView.js +1 -1
- package/views/draw/DrawTool.d.ts +77 -0
- package/views/draw/support/editingSessionUtils.js +1 -1
- package/views/draw/support/managers/PluginLifecycleManager.d.ts +10 -0
- package/views/interactive/InteractiveToolBase.d.ts +11 -0
- package/views/interactive/editGeometry/interfaces.d.ts +8 -0
- package/views/interactive/interfaces.d.ts +20 -0
- package/views/layers/DimensionLayerView.d.ts +2 -1
- package/views/layers/LineOfSightLayerView.d.ts +2 -1
- package/views/layers/ViewshedLayerView.d.ts +2 -1
- package/views/webgl/capabilities/load.js +1 -1
- package/webscene/Slide.js +1 -1
- package/widgets/Attachments/types.d.ts +1 -1
- package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.d.ts +38 -5
- package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.js +1 -1
- package/widgets/BatchAttributeForm/ReactiveContingentValuesManager.js +2 -0
- package/widgets/BatchAttributeForm/ReactiveGraphic.js +1 -1
- package/widgets/BatchAttributeForm/attachmentUtils.js +1 -1
- package/widgets/BatchAttributeForm/batchAttributeFormUtils.js +1 -1
- package/widgets/BatchAttributeForm/css.js +1 -1
- package/widgets/BatchAttributeForm/inputs/AttachmentElementInput.d.ts +11 -0
- package/widgets/BatchAttributeForm/inputs/AttachmentElementInput.js +1 -1
- package/widgets/BatchAttributeForm/inputs/FieldInput.d.ts +77 -0
- package/widgets/BatchAttributeForm/inputs/FieldInput.js +1 -1
- package/widgets/BatchAttributeForm/inputs/support/createBatchFormInputs.js +1 -1
- package/widgets/BatchAttributeForm/inputs/support/inputUtils.js +1 -1
- package/widgets/BatchAttributeForm/interfaceUtils.js +2 -0
- package/widgets/BatchAttributeForm/templates/support/createBatchFormTemplate.js +1 -1
- package/widgets/BatchAttributeForm/types.d.ts +30 -2
- package/widgets/BatchAttributeForm.d.ts +52 -1
- package/widgets/BatchAttributeForm.js +1 -1
- package/widgets/CoordinateConversion/CoordinateConversionViewModel.d.ts +9 -1
- package/widgets/CoordinateConversion/CoordinateConversionViewModel.js +1 -1
- package/widgets/Editor.d.ts +1 -1
- package/widgets/FeatureTable/FieldColumn.js +1 -1
- package/widgets/FeatureTable/support/FeatureStore.js +1 -1
- package/widgets/LayerList/LayerListItem.js +1 -1
- package/widgets/Sketch/SketchViewModel.d.ts +67 -2
- package/widgets/Sketch/SketchViewModel.js +1 -1
- package/widgets/Sketch/VisibleElements.d.ts +19 -1
- package/widgets/Sketch/VisibleElements.js +1 -1
- package/widgets/Sketch/support/OperationHandle.js +1 -1
- package/widgets/Sketch/support/PluginManager.d.ts +12 -0
- package/widgets/Sketch/support/PluginManager.js +1 -1
- package/widgets/Sketch.js +1 -1
- package/widgets/TimeSlider.d.ts +3 -3
- package/widgets/VideoPlayer/VideoPlayerViewModel.d.ts +10 -0
- package/widgets/VideoPlayer/VideoPlayerViewModel.js +1 -1
- package/widgets/support/ContingentValuesManager.js +1 -1
- package/widgets/support/SelectionToolbar/SelectionToolbarViewModel.d.ts +81 -0
- package/widgets/support/SelectionToolbar/types.d.ts +4 -0
- package/widgets/support/forms/formUtils.js +1 -1
- package/assets/esri/core/workers/chunks/11b0d3a825fe50dd1e84.js +0 -1
- package/assets/esri/core/workers/chunks/130851b81f04e6a008cd.js +0 -1
- package/assets/esri/core/workers/chunks/1a3426276dc82a8a80f2.js +0 -1
- package/assets/esri/core/workers/chunks/1c8a21b7b60c0709e6b2.js +0 -1
- package/assets/esri/core/workers/chunks/24247ee93f43fff5e596.js +0 -2
- package/assets/esri/core/workers/chunks/276cb6a1cdd26d0e1444.js +0 -1
- package/assets/esri/core/workers/chunks/2b3a8a53cd68f666676b.js +0 -1
- package/assets/esri/core/workers/chunks/2ecb21c402cdd8c82533.js +0 -1
- package/assets/esri/core/workers/chunks/2f903bd3a2611e7f0946.js +0 -30
- package/assets/esri/core/workers/chunks/2fda38219d778f0447b5.js +0 -1
- package/assets/esri/core/workers/chunks/38d7430d2370b69334d7.js +0 -1
- package/assets/esri/core/workers/chunks/39d6032d79720935910d.js +0 -1
- package/assets/esri/core/workers/chunks/5dafd35801dca4229aed.js +0 -1
- package/assets/esri/core/workers/chunks/642be1619c0e76355cb6.js +0 -1
- package/assets/esri/core/workers/chunks/6d66dc77af8d112c33c6.js +0 -1
- package/assets/esri/core/workers/chunks/7b3642195d6d3ea9b830.js +0 -1
- package/assets/esri/core/workers/chunks/7e57029ec958f6423d5d.js +0 -2
- package/assets/esri/core/workers/chunks/8042e001545e2782499c.js +0 -1
- package/assets/esri/core/workers/chunks/855bf811cd79b97c169a.js +0 -1
- package/assets/esri/core/workers/chunks/881234f25c7814de8753.js +0 -1
- package/assets/esri/core/workers/chunks/8a7682071941c35f05c1.js +0 -1
- package/assets/esri/core/workers/chunks/8fdd57e2a0af647f1e3e.js +0 -1
- package/assets/esri/core/workers/chunks/90ea570f6b6ce8ca693b.js +0 -1
- package/assets/esri/core/workers/chunks/9373daa677dc767d7cf0.js +0 -1
- package/assets/esri/core/workers/chunks/95df6d2ebacc43ac5fa3.js +0 -1
- package/assets/esri/core/workers/chunks/a02ebdcb802d128c8eee.js +0 -1
- package/assets/esri/core/workers/chunks/adf72d87f0114aeade0e.js +0 -1
- package/assets/esri/core/workers/chunks/aec4a4cd7044fdbbbe34.js +0 -1
- package/assets/esri/core/workers/chunks/b1a21a4d7d73ad7d0e47.js +0 -1
- package/assets/esri/core/workers/chunks/b262478da29470abb72b.js +0 -2
- package/assets/esri/core/workers/chunks/b75e090a7e935ff870a3.js +0 -1
- package/assets/esri/core/workers/chunks/bacf0c9d5d3e084dea61.js +0 -1
- package/assets/esri/core/workers/chunks/c0e4fd6fa1d765275248.js +0 -2
- package/assets/esri/core/workers/chunks/cfaa6e205bfc0c94a1b1.js +0 -1
- package/assets/esri/core/workers/chunks/d3f08f1a9a250cd8a2c8.js +0 -1
- package/assets/esri/core/workers/chunks/dcb7a3ff59677b1cf0f1.js +0 -1
- /package/assets/esri/core/workers/chunks/{7e57029ec958f6423d5d.js.LICENSE.txt → 549d348ca181d06aefb7.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{9b89cc85c1b5d561df7c.js.LICENSE.txt → 55334ad3618899cdbf78.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{b262478da29470abb72b.js.LICENSE.txt → 69c9eb93553b006b640d.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{c0e4fd6fa1d765275248.js.LICENSE.txt → b69d1d528e271568cbd8.js.LICENSE.txt} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import{__decorate as e}from"tslib";import{removeUnordered as t}from"../core/arrayUtils.js";import{strict as r}from"../core/jsonMap.js";import{JSONSupport as i}from"../core/JSONSupport.js";import{unitFromRESTJSON as o,getVerticalUnitStringForSR as s}from"../core/units.js";import n from"../core/Warning.js";import{property as a,subclass as l}from"../core/accessorSupport/decorators.js";import{
|
|
2
|
+
import{__decorate as e}from"tslib";import{removeUnordered as t}from"../core/arrayUtils.js";import{strict as r}from"../core/jsonMap.js";import{JSONSupport as i}from"../core/JSONSupport.js";import{unitFromRESTJSON as o,getVerticalUnitStringForSR as s}from"../core/units.js";import n from"../core/Warning.js";import{property as a,subclass as l}from"../core/accessorSupport/decorators.js";import{vcsLookup as h}from"./support/vcsLookup.js";import{writer as c}from"../core/accessorSupport/decorators/writer.js";import{reader as d}from"../core/accessorSupport/decorators/reader.js";var u;const p=r()({orthometric:"gravity-related-height",gravity_related_height:"gravity-related-height",ellipsoidal:"ellipsoidal"}),g=p.jsonValues.slice();t(g,"orthometric");const m=r()({meter:"meters",foot:"feet","us-foot":"us-feet","clarke-foot":"clarke-feet","clarke-yard":"clarke-yards","clarke-link":"clarke-links","sears-yard":"sears-yards","sears-foot":"sears-feet","sears-chain":"sears-chains","benoit-1895-b-chain":"benoit-1895-b-chains","indian-yard":"indian-yards","indian-1937-yard":"indian-1937-yards","gold-coast-foot":"gold-coast-feet","sears-1922-truncated-chain":"sears-1922-truncated-chains","50-kilometers":"50-kilometers","150-kilometers":"150-kilometers"});let f=u=class extends i{constructor(e){super(e),this.heightModel="gravity-related-height",this.heightUnit="meters",this.vertCRS=null}writeHeightModel(e,t,r){return p.write(e,t,r)}readHeightModel(e,t,r){const i=p.read(e);return i||(r?.messages&&r.messages.push(y(e,{context:r})),null)}readHeightUnit(e,t,r){const i=m.read(e);return i||(r?.messages&&r.messages.push(v(e,{context:r})),null)}readHeightUnitService(e,t,r){const i=o(e)||m.read(e);return i||(r?.messages&&r.messages.push(v(e,{context:r})),null)}readVertCRS(e,t){return t.vertCRS||t.ellipsoid||t.geoid}clone(){return new u({heightModel:this.heightModel,heightUnit:this.heightUnit,vertCRS:this.vertCRS})}equals(e){return!!e&&(this===e||this.heightModel===e.heightModel&&this.heightUnit===e.heightUnit&&this.vertCRS===e.vertCRS)}static deriveUnitFromSR(e,t){const r=s(t);return new u({heightModel:e.heightModel,heightUnit:r??void 0,vertCRS:e.vertCRS})}static fromSpatialReference(e){const{latestVcsWkid:t,vcsWkid:r}=e;if(!r)return null;const i=(null!=t?h.get(t):null)??h.get(r);return i?new u({heightModel:0===i.type?"gravity-related-height":"ellipsoidal",heightUnit:o(i.unit.name),vertCRS:i.datum}):null}write(e,t){return t={origin:"web-scene",...t},super.write(e,t)}static fromJSON(e){if(!e)return null;const t=new u;return t.read(e,{origin:"web-scene"}),t}};function v(e,t){return new n("height-unit:unsupported",`Height unit of value '${e}' is not supported`,t)}function y(e,t){return new n("height-model:unsupported",`Height model of value '${e}' is not supported`,t)}e([a({type:p.apiValues,constructOnly:!0,json:{origins:{"web-scene":{type:g,default:"ellipsoidal",write:{isRequired:!0}}}}})],f.prototype,"heightModel",void 0),e([c("web-scene","heightModel")],f.prototype,"writeHeightModel",null),e([d(["web-scene","service"],"heightModel")],f.prototype,"readHeightModel",null),e([a({type:m.apiValues,constructOnly:!0,json:{origins:{"web-scene":{type:m.jsonValues,write:{writer:m.write,isRequired:!0}}}}})],f.prototype,"heightUnit",void 0),e([d("web-scene","heightUnit")],f.prototype,"readHeightUnit",null),e([d("service","heightUnit")],f.prototype,"readHeightUnitService",null),e([a({type:String,constructOnly:!0,json:{origins:{"web-scene":{write:!0}}}})],f.prototype,"vertCRS",void 0),e([d("service","vertCRS",["vertCRS","ellipsoid","geoid"])],f.prototype,"readVertCRS",null),f=u=e([l("esri.geometry.HeightModelInfo")],f);export{f as default};
|
|
@@ -27,7 +27,7 @@ import type { GeometryUnion } from "./types.js";
|
|
|
27
27
|
* @deprecated since version 4.32.
|
|
28
28
|
* @param spatialReference - The input spatial reference.
|
|
29
29
|
* @returns Resolves to a [ExtendedSpatialReferenceInfo](https://developers.arcgis.com/javascript/latest/references/core/geometry/geometryEngineTypes/#ExtendedSpatialReferenceInfo) object.
|
|
30
|
-
* @see [Unit IDs](https://developers.arcgis.com/java/api-reference/reference/com/esri/arcgisruntime/geometry/LinearUnitId.html#CENTIMETERS)
|
|
30
|
+
* @see [Unit IDs](https://developers.arcgis.com/java/v200/api-reference/reference/com.esri.arcgisruntime/com/esri/arcgisruntime/geometry/LinearUnitId.html#CENTIMETERS)
|
|
31
31
|
*/
|
|
32
32
|
export function extendedSpatialReferenceInfo(spatialReference: SpatialReference): ExtendedSpatialReferenceInfo;
|
|
33
33
|
|
|
@@ -210,7 +210,7 @@ export function overlaps(geometry1: GeometryUnion, geometry2: GeometryUnion): bo
|
|
|
210
210
|
* DE-9IM string codes are valid for testing whether a polygon geometry completely contains a line geometry:
|
|
211
211
|
* `TTTFFTFFT` (Boolean), 'T*\*\*\*\*\*FF\*' (ignore irrelevant intersections), or '102FF\*FF\*' (dimension form).
|
|
212
212
|
* Each returns the same result. See [this article](https://en.wikipedia.org/wiki/DE-9IM) and
|
|
213
|
-
* [this ArcGIS help page](https://
|
|
213
|
+
* [this ArcGIS help page](https://doc.esri.com/en/arcgis-pro/latest/help/data/databases/pdf/stgeometry_reference_pro.pdf)
|
|
214
214
|
* for more information about the DE-9IM model and how string codes are constructed.
|
|
215
215
|
* @returns Returns `true` if the relation of the input geometries is accurate.
|
|
216
216
|
* @example
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
let o;const r={values:[.001,1,.3048,.3048006096012192,.3047972654,.9143917962,.201166195164,.9143984146160287,.3047994715386762,20.11676512155263,20.11678249437587,.9143985307444408,.91439523,.3047997101815088,20.1168,20.116756,5e4,15e4],units:["Millimeter","Meter","Foot","Foot_US","Foot_Clarke","Yard_Clarke","Link_Clarke","Yard_Sears","Foot_Sears","Chain_Sears","Chain_Benoit_1895_B","Yard_Indian","Yard_Indian_1937","Foot_Gold_Coast","Chain","Chain_Sears_1922_Truncated","50_Kilometers","150_Kilometers"],2066:6,2136:13,2155:3,2157:1,2158:1,2159:13,2160:13,2204:3,2219:1,2220:1,2254:3,2255:3,2256:2,2265:2,2266:2,2267:3,2268:3,2269:2,2270:2,2271:3,2272:3,2273:2,2294:1,2295:1,2314:4,2899:3,2900:3,2901:2,2909:2,2910:2,2911:3,2912:3,2913:2,2914:2,2992:2,2993:1,2994:2,3080:2,3089:3,3090:1,3091:3,3102:3,3141:1,3142:1,3167:15,3359:3,3360:1,3361:2,3362:1,3363:3,3364:1,3365:3,3366:4,3404:3,3405:1,3406:1,3407:4,3439:1,3440:1,3479:2,3480:1,3481:2,3482:1,3483:2,3484:1,3485:3,3486:1,3487:3,3488:1,3489:1,3490:3,3491:1,3492:3,3493:1,3494:3,3495:1,3496:3,3497:1,3498:3,3499:1,3500:3,3501:1,3502:3,3503:1,3504:3,3505:1,3506:3,3507:1,3508:3,3509:1,3510:3,3511:1,3512:3,3513:1,3514:1,3515:3,3516:1,3517:3,3518:1,3519:3,3520:1,3521:3,3522:1,3523:3,3524:1,3525:3,3526:1,3527:3,3528:1,3529:3,3530:1,3531:3,3532:1,3533:3,3534:1,3535:3,3536:1,3537:3,3538:1,3539:3,3540:1,3541:3,3542:1,3543:3,3544:1,3545:3,3546:1,3547:3,3548:1,3549:3,3550:1,3551:3,3552:1,3553:3,3582:3,3583:1,3584:3,3585:1,3586:3,3587:1,3588:2,3589:1,3590:2,3591:1,3592:1,3593:2,3598:3,3599:1,3600:3,3605:2,3606:1,3607:1,3608:3,3609:1,3610:3,3611:1,3612:3,3613:1,3614:3,3615:1,3616:3,3617:1,3618:3,3619:1,3620:3,3621:1,3622:3,3623:1,3624:3,3625:1,3626:3,3627:1,3628:3,3629:1,3630:3,3631:1,3632:3,3633:1,3634:2,3635:1,3636:2,3640:3,3641:1,3642:3,3643:1,3644:2,3645:1,3646:2,3647:1,3648:2,3649:1,3650:3,3651:1,3652:3,3653:1,3654:3,3655:1,3656:2,3657:1,3658:3,3659:1,3660:3,3661:1,3662:3,3663:1,3664:3,3668:3,3669:1,3670:3,3671:1,3672:3,3673:1,3674:3,3675:1,3676:2,3677:3,3678:1,3679:2,3680:3,3681:1,3682:2,3683:3,3684:1,3685:1,3686:3,3687:1,3688:3,3689:1,3690:3,3691:1,3692:3,3696:3,3697:1,3698:3,3699:1,3700:3,3793:1,3794:1,3812:1,3854:1,3857:1,3920:1,3978:1,3979:1,3991:3,3992:3,4026:1,4037:1,4038:1,4071:1,4082:1,4083:1,4087:1,4088:1,4217:3,4414:1,4415:1,4417:1,4434:1,4437:1,4438:3,4439:3,4462:1,4467:1,4471:1,4474:1,4559:1,4647:1,4822:1,4826:1,4839:1,5018:1,5041:1,5042:1,5048:1,5221:1,5223:1,5234:1,5235:1,5243:1,5247:1,5266:1,5316:1,5320:1,5321:1,5325:1,5337:1,5361:1,5362:1,5367:1,5382:1,5383:1,5396:1,5456:1,5457:1,5469:1,5472:5,5490:1,5513:1,5514:1,5523:1,5559:1,5588:2,5589:4,5596:1,5627:1,5629:1,5641:1,5643:1,5644:1,5646:3,5654:3,5655:3,5659:1,5700:1,5825:1,5836:1,5837:1,5839:1,5842:1,5844:1,5858:1,5879:1,5880:1,5887:1,5890:1,6128:2,6129:2,6141:2,6204:1,6210:1,6211:1,6307:1,6312:1,6316:1,6362:1,6391:2,6405:2,6406:1,6407:2,6408:1,6409:2,6410:1,6411:3,6412:1,6413:3,6414:1,6415:1,6416:3,6417:1,6418:3,6419:1,6420:3,6421:1,6422:3,6423:1,6424:3,6425:1,6426:3,6427:1,6428:3,6429:1,6430:3,6431:1,6432:3,6433:1,6434:3,6435:1,6436:3,6437:1,6438:3,6439:1,6440:1,6441:3,6442:1,6443:3,6444:1,6445:3,6446:1,6447:3,6448:1,6449:3,6450:1,6451:3,6452:1,6453:3,6454:1,6455:3,6456:1,6457:3,6458:1,6459:3,6460:1,6461:3,6462:1,6463:3,6464:1,6465:3,6466:1,6467:3,6468:1,6469:3,6470:1,6471:3,6472:1,6473:3,6474:1,6475:3,6476:1,6477:3,6478:1,6479:3,6484:3,6485:1,6486:3,6487:1,6488:3,6489:1,6490:3,6491:1,6492:3,6493:1,6494:2,6495:1,6496:2,6497:1,6498:1,6499:2,6500:1,6501:3,6502:1,6503:3,6504:1,6505:3,6506:1,6507:3,6508:1,6509:1,6510:3,6515:2,6516:1,6518:1,6519:3,6520:1,6521:3,6522:1,6523:3,6524:1,6525:3,6526:1,6527:3,6528:1,6529:3,6530:1,6531:3,6532:1,6533:3,6534:1,6535:3,6536:1,6537:3,6538:1,6539:3,6540:1,6541:3,6542:1,6543:3,6544:1,6545:2,6546:1,6547:2,6548:1,6549:3,6550:1,6551:3,6552:1,6553:3,6554:1,6555:3,6556:1,6557:2,6558:1,6559:2,6560:1,6561:2,6562:1,6563:3,6564:1,6565:3,6566:1,6567:1,6568:3,6569:1,6570:2,6571:1,6572:3,6573:1,6574:3,6575:1,6576:3,6577:1,6578:3,6582:3,6583:1,6584:3,6585:1,6586:3,6587:1,6588:3,6589:1,6590:3,6591:1,6592:1,6593:3,6594:1,6595:3,6596:1,6597:3,6598:1,6599:3,6600:1,6601:3,6602:1,6603:3,6605:3,6606:1,6607:3,6608:1,6609:3,6610:1,6611:1,6612:3,6613:1,6614:3,6615:1,6616:3,6617:1,6618:3,6633:3,6646:1,6703:1,6784:1,6785:2,6786:1,6787:2,6788:1,6789:2,6790:1,6791:2,6792:1,6793:2,6794:1,6795:2,6796:1,6797:2,6798:1,6799:2,6800:1,6801:2,6802:1,6803:2,6804:1,6805:2,6806:1,6807:2,6808:1,6809:2,6810:1,6811:2,6812:1,6813:2,6814:1,6815:2,6816:1,6817:2,6818:1,6819:2,6820:1,6821:2,6822:1,6823:2,6824:1,6825:2,6826:1,6827:2,6828:1,6829:2,6830:1,6831:2,6832:1,6833:2,6834:1,6835:2,6836:1,6837:2,6838:1,6839:2,6840:1,6841:2,6842:1,6843:2,6844:1,6845:2,6846:1,6847:2,6848:1,6849:2,6850:1,6851:2,6852:1,6853:2,6854:1,6855:2,6856:1,6857:2,6858:1,6859:2,6860:1,6861:2,6862:1,6863:2,6867:1,6868:2,6870:1,6875:1,6876:1,6879:1,6880:3,6884:1,6885:2,6886:1,6887:2,6915:1,6922:1,6923:3,6924:1,6925:3,6962:1,6984:1,6991:1,7128:3,7131:1,7132:3,7142:1,7257:1,7258:3,7259:1,7260:3,7261:1,7262:3,7263:1,7264:3,7265:1,7266:3,7267:1,7268:3,7269:1,7270:3,7271:1,7272:3,7273:1,7274:3,7275:1,7276:3,7277:1,7278:3,7279:1,7280:3,7281:1,7282:3,7283:1,7284:3,7285:1,7286:3,7287:1,7288:3,7289:1,7290:3,7291:1,7292:3,7293:1,7294:3,7295:1,7296:3,7297:1,7298:3,7299:1,7300:3,7301:1,7302:3,7303:1,7304:3,7305:1,7306:3,7307:1,7308:3,7309:1,7310:3,7311:1,7312:3,7313:1,7314:3,7315:1,7316:3,7317:1,7318:3,7319:1,7320:3,7321:1,7322:3,7323:1,7324:3,7325:1,7326:3,7327:1,7328:3,7329:1,7330:3,7331:1,7332:3,7333:1,7334:3,7335:1,7336:3,7337:1,7338:3,7339:1,7340:3,7341:1,7342:3,7343:1,7344:3,7345:1,7346:3,7347:1,7348:3,7349:1,7350:3,7351:1,7352:3,7353:1,7354:3,7355:1,7356:3,7357:1,7358:3,7359:1,7360:3,7361:1,7362:3,7363:1,7364:3,7365:1,7366:3,7367:1,7368:3,7369:1,7370:3,7877:1,7878:1,7882:1,7883:1,7887:1,7899:1,7991:1,7992:1,8035:3,8036:3,8058:1,8059:1,8082:1,8083:1,8088:1,8090:1,8091:3,8092:1,8093:3,8095:1,8096:3,8097:1,8098:3,8099:1,8100:3,8101:1,8102:3,8103:1,8104:3,8105:1,8106:3,8107:1,8108:3,8109:1,8110:3,8111:1,8112:3,8113:1,8114:3,8115:1,8116:3,8117:1,8118:3,8119:1,8120:3,8121:1,8122:3,8123:1,8124:3,8125:1,8126:3,8127:1,8128:3,8129:1,8130:3,8131:1,8132:3,8133:1,8134:3,8135:1,8136:3,8137:1,8138:3,8139:1,8140:3,8141:1,8142:3,8143:1,8144:3,8145:1,8146:3,8147:1,8148:3,8149:1,8150:3,8151:1,8152:3,8153:1,8154:3,8155:1,8156:3,8157:1,8158:3,8159:1,8160:3,8161:1,8162:3,8163:1,8164:3,8165:1,8166:3,8167:1,8168:3,8169:1,8170:3,8171:1,8172:3,8173:1,8177:3,8179:1,8180:3,8181:1,8182:3,8184:1,8185:3,8187:1,8189:3,8191:1,8193:3,8196:1,8197:3,8198:1,8200:3,8201:1,8202:3,8203:1,8204:3,8205:1,8206:3,8207:1,8208:3,8209:1,8210:3,8212:1,8213:3,8214:1,8216:3,8218:1,8220:3,8222:1,8224:3,8225:1,8226:3,8311:1,8312:2,8313:1,8314:2,8315:1,8316:2,8317:1,8318:2,8319:1,8320:2,8321:1,8322:2,8323:1,8324:2,8325:1,8326:2,8327:1,8328:2,8329:1,8330:2,8331:1,8332:2,8333:1,8334:2,8335:1,8336:2,8337:1,8338:2,8339:1,8340:2,8341:1,8342:2,8343:1,8344:2,8345:1,8346:2,8347:1,8348:2,8352:1,8353:1,8379:1,8380:3,8381:1,8382:3,8383:1,8384:3,8385:1,8387:3,8391:1,8395:1,8433:1,8441:1,8455:1,8456:1,8531:3,8682:1,8686:1,8687:1,8692:1,8693:1,8826:1,8903:1,8950:1,8951:1,9039:1,9040:1,9141:1,9149:1,9150:1,9191:1,9221:1,9222:1,9249:1,9250:1,9252:1,9254:1,9265:1,9284:1,9285:1,9300:1,9354:1,9367:1,9373:1,9377:1,9387:1,9391:1,9456:1,9473:1,9498:1,9674:1,9678:1,9680:1,9709:1,9712:1,9713:1,9716:1,9741:1,9748:3,9749:3,9761:1,9766:1,9793:1,9794:1,9869:1,9874:1,9875:1,9880:1,9895:1,9943:1,9945:1,9947:1,9967:1,9972:1,9977:1,10160:1,10183:1,10188:1,10194:1,10199:1,10207:1,10212:1,10217:1,10222:1,10227:1,10235:1,10240:1,10250:1,10254:1,10270:1,10275:1,10280:1,10306:1,10329:1,10471:1,10477:1,10481:3,10516:3,10592:1,10594:1,10596:1,10598:1,10601:1,10603:1,10626:1,10632:1,10641:1,10665:1,10674:1,10699:1,10702:1,10744:1,10745:1,10759:1,10773:1,10801:1,10802:1,10820:1,10833:1,10836:1,10837:1,10851:1,10857:1,10863:1,10899:1,10917:1,20002:1,20042:1,20050:2,20499:1,20538:1,20539:1,20790:1,20791:1,21291:1,21292:1,21500:1,21817:1,21818:1,22032:1,22033:1,22091:1,22092:1,22239:1,22240:1,22332:1,22337:1,22338:1,22391:1,22392:1,22639:1,22700:1,22739:1,22770:1,22780:1,22832:1,23090:1,23095:1,23239:1,23240:1,23433:1,23700:1,24047:1,24048:1,24100:4,24200:1,24305:1,24306:1,24382:11,24383:1,24500:1,24547:1,24548:1,24571:10,24600:1,25e3:1,25231:1,25884:1,25932:1,26237:1,26331:1,26332:1,26432:1,26591:1,26592:1,26632:1,26692:1,27120:1,27200:1,27291:7,27292:7,27429:1,27492:1,27493:1,27500:1,28232:1,28600:1,28991:1,28992:1,29100:1,29101:1,29220:1,29221:1,29333:1,29635:1,29636:1,29701:1,29738:1,29739:1,29849:1,29850:1,29871:9,29872:8,29873:1,29874:1,30200:6,30339:1,30340:1,30591:1,30592:1,30791:1,30792:1,30800:1,31028:1,31121:1,31154:1,31170:1,31171:1,31370:1,31528:1,31529:1,31600:1,31700:1,31838:1,31839:1,31900:1,31901:1,32061:1,32062:1,32098:1,32099:3,32100:1,32104:1,32161:1,32766:1,53048:1,53049:1,65061:3,65062:3,102041:3,102064:12,102068:16,102069:17,102118:3,102119:2,102120:3,102121:3,102217:3,102218:1,102219:3,102220:3,102378:2,102379:2,102380:1,102381:2,102589:3,102599:3,102600:3,102604:3,102647:1,102704:3,102705:3,102706:1,102731:1,102732:1,102759:2,102760:2,102761:3,102762:1,102763:3,102764:1,102765:1,102766:3,102970:2,102974:3,102993:1,102994:1,102995:3,102996:3,103015:1,103016:3,103017:1,103018:3,103025:1,103026:1,103027:3,103028:3,103035:1,103036:1,103037:3,103038:3,103039:1,103040:1,103041:3,103042:3,103043:1,103044:1,103045:3,103046:3,103047:1,103048:1,103049:3,103050:3,103051:1,103052:3,103053:1,103054:3,103055:1,103056:3,103057:1,103058:1,103059:3,103060:3,103061:1,103062:1,103063:3,103064:3,103069:3,103070:1,103071:1,103072:3,103073:3,103086:1,103087:1,103088:3,103089:3,103094:2,103095:1,103096:3,103103:1,103104:3,103105:1,103106:3,103121:1,103122:3,103123:1,103124:1,103125:2,103126:2,103127:1,103128:1,103129:3,103130:3,103131:1,103132:1,103133:3,103134:3,103135:1,103136:1,103137:2,103138:2,103139:1,103140:3,103141:1,103142:3,103143:1,103144:3,103145:1,103146:2,103147:1,103148:1,103149:3,103150:3,103151:1,103152:3,103172:1,103173:3,103174:1,103175:1,103176:3,103177:3,103178:1,103179:1,103180:3,103181:3,103182:1,103183:1,103184:3,103185:3,103228:1,103229:1,103230:3,103231:3,103250:1,103251:3,103252:1,103253:3,103260:1,103261:1,103262:3,103263:3,103270:1,103271:1,103272:3,103273:3,103274:1,103275:1,103276:3,103277:3,103278:1,103279:1,103280:3,103281:3,103282:1,103283:1,103284:3,103285:3,103286:1,103287:3,103288:1,103289:3,103290:1,103291:3,103292:1,103293:1,103294:3,103295:3,103296:1,103297:1,103298:3,103299:3,103376:3,103377:1,103378:1,103379:3,103380:3,103393:1,103394:1,103395:3,103396:3,103472:1,103473:2,103474:1,103475:3,103482:1,103483:3,103484:1,103485:3,103500:1,103501:3,103502:1,103503:1,103504:2,103505:2,103506:1,103507:1,103508:3,103509:3,103510:1,103511:1,103512:3,103513:3,103514:1,103515:3,103516:1,103517:3,103518:1,103519:3,103520:1,103521:2,103522:1,103523:1,103524:3,103525:3,103526:1,103527:3,103561:3,103562:3,103563:1,103564:1,103565:3,103566:3,103567:1,103568:1,103569:3,103570:3,103584:1,103585:3,103586:1,103587:3,103588:2,103589:1,103590:3,103591:2,103592:1,103593:3,103594:2,103695:3,103897:2,103898:1,103899:1,103978:3,103979:1,103980:3,103981:1,103982:3,103986:3,103987:3,103988:1,103989:0,103991:1,112111:1};for(o=2e3;o<=2045;o++)r[o]=1;for(o=2056;o<=2065;o++)r[o]=1;for(o=2067;o<=2135;o++)r[o]=1;for(o=2137;o<=2154;o++)r[o]=1;for(o=2161;o<=2170;o++)r[o]=1;for(o=2172;o<=2193;o++)r[o]=1;for(o=2195;o<=2198;o++)r[o]=1;for(o=2200;o<=2203;o++)r[o]=1;for(o=2205;o<=2217;o++)r[o]=1;for(o=2222;o<=2224;o++)r[o]=2;for(o=2225;o<=2250;o++)r[o]=3;for(o=2251;o<=2253;o++)r[o]=2;for(o=2257;o<=2264;o++)r[o]=3;for(o=2274;o<=2279;o++)r[o]=3;for(o=2280;o<=2282;o++)r[o]=2;for(o=2283;o<=2289;o++)r[o]=3;for(o=2290;o<=2292;o++)r[o]=1;for(o=2308;o<=2313;o++)r[o]=1;for(o=2315;o<=2491;o++)r[o]=1;for(o=2494;o<=2866;o++)r[o]=1;for(o=2867;o<=2869;o++)r[o]=2;for(o=2870;o<=2888;o++)r[o]=3;for(o=2891;o<=2895;o++)r[o]=3;for(o=2896;o<=2898;o++)r[o]=2;for(o=2902;o<=2908;o++)r[o]=3;for(o=2915;o<=2920;o++)r[o]=3;for(o=2921;o<=2923;o++)r[o]=2;for(o=2924;o<=2930;o++)r[o]=3;for(o=2931;o<=2962;o++)r[o]=1;for(o=2964;o<=2968;o++)r[o]=3;for(o=2969;o<=2973;o++)r[o]=1;for(o=2975;o<=2991;o++)r[o]=1;for(o=2995;o<=3051;o++)r[o]=1;for(o=3054;o<=3079;o++)r[o]=1;for(o=3081;o<=3088;o++)r[o]=1;for(o=3092;o<=3101;o++)r[o]=1;for(o=3106;o<=3138;o++)r[o]=1;for(o=3146;o<=3151;o++)r[o]=1;for(o=3153;o<=3166;o++)r[o]=1;for(o=3168;o<=3172;o++)r[o]=1;for(o=3174;o<=3203;o++)r[o]=1;for(o=3294;o<=3358;o++)r[o]=1;for(o=3367;o<=3403;o++)r[o]=1;for(o=3408;o<=3416;o++)r[o]=1;for(o=3417;o<=3438;o++)r[o]=3;for(o=3441;o<=3446;o++)r[o]=3;for(o=3447;o<=3450;o++)r[o]=1;for(o=3451;o<=3459;o++)r[o]=3;for(o=3460;o<=3478;o++)r[o]=1;for(o=3554;o<=3559;o++)r[o]=1;for(o=3560;o<=3570;o++)r[o]=3;for(o=3571;o<=3581;o++)r[o]=1;for(o=3594;o<=3597;o++)r[o]=1;for(o=3601;o<=3604;o++)r[o]=1;for(o=3637;o<=3639;o++)r[o]=1;for(o=3665;o<=3667;o++)r[o]=1;for(o=3693;o<=3695;o++)r[o]=1;for(o=3701;o<=3727;o++)r[o]=1;for(o=3728;o<=3739;o++)r[o]=3;for(o=3740;o<=3751;o++)r[o]=1;for(o=3753;o<=3760;o++)r[o]=3;for(o=3761;o<=3773;o++)r[o]=1;for(o=3775;o<=3777;o++)r[o]=1;for(o=3779;o<=3781;o++)r[o]=1;for(o=3783;o<=3785;o++)r[o]=1;for(o=3788;o<=3791;o++)r[o]=1;for(o=3797;o<=3802;o++)r[o]=1;for(o=3814;o<=3816;o++)r[o]=1;for(o=3825;o<=3829;o++)r[o]=1;for(o=3832;o<=3841;o++)r[o]=1;for(o=3844;o<=3852;o++)r[o]=1;for(o=3873;o<=3885;o++)r[o]=1;for(o=3890;o<=3893;o++)r[o]=1;for(o=3907;o<=3912;o++)r[o]=1;for(o=3942;o<=3950;o++)r[o]=1;for(o=3968;o<=3970;o++)r[o]=1;for(o=3973;o<=3976;o++)r[o]=1;for(o=3986;o<=3989;o++)r[o]=1;for(o=3994;o<=3997;o++)r[o]=1;for(o=4048;o<=4051;o++)r[o]=1;for(o=4056;o<=4063;o++)r[o]=1;for(o=4093;o<=4096;o++)r[o]=1;for(o=4390;o<=4398;o++)r[o]=1;for(o=4399;o<=4413;o++)r[o]=3;for(o=4418;o<=4433;o++)r[o]=3;for(o=4455;o<=4457;o++)r[o]=3;for(o=4484;o<=4489;o++)r[o]=1;for(o=4491;o<=4554;o++)r[o]=1;for(o=4568;o<=4589;o++)r[o]=1;for(o=4652;o<=4656;o++)r[o]=1;for(o=4766;o<=4800;o++)r[o]=1;for(o=5014;o<=5016;o++)r[o]=1;for(o=5069;o<=5072;o++)r[o]=1;for(o=5105;o<=5130;o++)r[o]=1;for(o=5167;o<=5188;o++)r[o]=1;for(o=5253;o<=5259;o++)r[o]=1;for(o=5269;o<=5275;o++)r[o]=1;for(o=5292;o<=5311;o++)r[o]=1;for(o=5329;o<=5331;o++)r[o]=1;for(o=5343;o<=5349;o++)r[o]=1;for(o=5355;o<=5357;o++)r[o]=1;for(o=5387;o<=5389;o++)r[o]=1;for(o=5459;o<=5463;o++)r[o]=1;for(o=5479;o<=5482;o++)r[o]=1;for(o=5518;o<=5520;o++)r[o]=1;for(o=5530;o<=5539;o++)r[o]=1;for(o=5550;o<=5552;o++)r[o]=1;for(o=5562;o<=5583;o++)r[o]=1;for(o=5623;o<=5625;o++)r[o]=3;for(o=5631;o<=5639;o++)r[o]=1;for(o=5649;o<=5653;o++)r[o]=1;for(o=5663;o<=5680;o++)r[o]=1;for(o=5682;o<=5685;o++)r[o]=1;for(o=5875;o<=5877;o++)r[o]=1;for(o=5896;o<=5899;o++)r[o]=1;for(o=5921;o<=5940;o++)r[o]=1;for(o=6050;o<=6125;o++)r[o]=1;for(o=6244;o<=6275;o++)r[o]=1;for(o=6328;o<=6348;o++)r[o]=1;for(o=6350;o<=6356;o++)r[o]=1;for(o=6366;o<=6372;o++)r[o]=1;for(o=6381;o<=6387;o++)r[o]=1;for(o=6393;o<=6404;o++)r[o]=1;for(o=6480;o<=6483;o++)r[o]=1;for(o=6511;o<=6514;o++)r[o]=1;for(o=6579;o<=6581;o++)r[o]=1;for(o=6619;o<=6624;o++)r[o]=1;for(o=6625;o<=6627;o++)r[o]=3;for(o=6628;o<=6632;o++)r[o]=1;for(o=6634;o<=6637;o++)r[o]=1;for(o=6669;o<=6692;o++)r[o]=1;for(o=6707;o<=6709;o++)r[o]=1;for(o=6720;o<=6723;o++)r[o]=1;for(o=6732;o<=6738;o++)r[o]=1;for(o=6931;o<=6933;o++)r[o]=1;for(o=6956;o<=6959;o++)r[o]=1;for(o=7005;o<=7007;o++)r[o]=1;for(o=7057;o<=7070;o++)r[o]=3;for(o=7074;o<=7082;o++)r[o]=1;for(o=7109;o<=7118;o++)r[o]=1;for(o=7119;o<=7127;o++)r[o]=2;for(o=7374;o<=7376;o++)r[o]=1;for(o=7528;o<=7586;o++)r[o]=1;for(o=7587;o<=7645;o++)r[o]=3;for(o=7692;o<=7696;o++)r[o]=1;for(o=7755;o<=7787;o++)r[o]=1;for(o=7791;o<=7795;o++)r[o]=1;for(o=7799;o<=7801;o++)r[o]=1;for(o=7803;o<=7805;o++)r[o]=1;for(o=7825;o<=7831;o++)r[o]=1;for(o=7845;o<=7859;o++)r[o]=1;for(o=8013;o<=8032;o++)r[o]=1;for(o=8065;o<=8068;o++)r[o]=2;for(o=8518;o<=8529;o++)r[o]=3;for(o=8533;o<=8536;o++)r[o]=3;for(o=8538;o<=8540;o++)r[o]=3;for(o=8677;o<=8679;o++)r[o]=1;for(o=8836;o<=8840;o++)r[o]=1;for(o=8857;o<=8859;o++)r[o]=1;for(o=8908;o<=8910;o++)r[o]=1;for(o=9154;o<=9159;o++)r[o]=1;for(o=9205;o<=9218;o++)r[o]=1;for(o=9271;o<=9273;o++)r[o]=1;for(o=9295;o<=9297;o++)r[o]=1;for(o=9356;o<=9360;o++)r[o]=1;for(o=9404;o<=9407;o++)r[o]=1;for(o=9476;o<=9482;o++)r[o]=1;for(o=9487;o<=9494;o++)r[o]=1;for(o=9697;o<=9699;o++)r[o]=1;for(o=9821;o<=9865;o++)r[o]=1;for(o=10285;o<=10291;o++)r[o]=1;for(o=10314;o<=10317;o++)r[o]=1;for(o=10448;o<=10465;o++)r[o]=1;for(o=10726;o<=10729;o++)r[o]=1;for(o=10731;o<=10733;o++)r[o]=1;for(o=10792;o<=10795;o++)r[o]=1;for(o=10911;o<=10916;o++)r[o]=3;for(o=10921;o<=10926;o++)r[o]=1;for(o=10942;o<=10949;o++)r[o]=1;for(o=11114;o<=11118;o++)r[o]=1;for(o=20004;o<=20032;o++)r[o]=1;for(o=20047;o<=20049;o++)r[o]=1;for(o=20062;o<=20092;o++)r[o]=1;for(o=20135;o<=20138;o++)r[o]=1;for(o=20248;o<=20258;o++)r[o]=1;for(o=20348;o<=20358;o++)r[o]=1;for(o=20436;o<=20440;o++)r[o]=1;for(o=20822;o<=20824;o++)r[o]=1;for(o=20904;o<=20932;o++)r[o]=1;for(o=20934;o<=20936;o++)r[o]=1;for(o=21004;o<=21032;o++)r[o]=1;for(o=21035;o<=21037;o++)r[o]=1;for(o=21095;o<=21097;o++)r[o]=1;for(o=21148;o<=21150;o++)r[o]=1;for(o=21207;o<=21264;o++)r[o]=1;for(o=21307;o<=21364;o++)r[o]=1;for(o=21413;o<=21423;o++)r[o]=1;for(o=21453;o<=21463;o++)r[o]=1;for(o=21473;o<=21483;o++)r[o]=1;for(o=21780;o<=21782;o++)r[o]=1;for(o=21891;o<=21894;o++)r[o]=1;for(o=21896;o<=21899;o++)r[o]=1;for(o=22171;o<=22177;o++)r[o]=1;for(o=22181;o<=22187;o++)r[o]=1;for(o=22191;o<=22197;o++)r[o]=1;for(o=22207;o<=22222;o++)r[o]=1;for(o=22229;o<=22232;o++)r[o]=1;for(o=22234;o<=22236;o++)r[o]=1;for(o=22243;o<=22250;o++)r[o]=1;for(o=22262;o<=22265;o++)r[o]=1;for(o=22307;o<=22322;o++)r[o]=1;for(o=22348;o<=22357;o++)r[o]=1;for(o=22407;o<=22422;o++)r[o]=1;for(o=22462;o<=22465;o++)r[o]=1;for(o=22521;o<=22525;o++)r[o]=1;for(o=22607;o<=22622;o++)r[o]=1;for(o=22641;o<=22646;o++)r[o]=1;for(o=22648;o<=22657;o++)r[o]=1;for(o=22707;o<=22722;o++)r[o]=1;for(o=22762;o<=22765;o++)r[o]=1;for(o=22807;o<=22822;o++)r[o]=1;for(o=22991;o<=22994;o++)r[o]=1;for(o=23028;o<=23038;o++)r[o]=1;for(o=23301;o<=23333;o++)r[o]=3;for(o=23830;o<=23853;o++)r[o]=1;for(o=23866;o<=23872;o++)r[o]=1;for(o=23877;o<=23884;o++)r[o]=1;for(o=23886;o<=23894;o++)r[o]=1;for(o=23946;o<=23948;o++)r[o]=1;for(o=24311;o<=24313;o++)r[o]=1;for(o=24342;o<=24347;o++)r[o]=1;for(o=24370;o<=24374;o++)r[o]=11;for(o=24375;o<=24381;o++)r[o]=1;for(o=24718;o<=24721;o++)r[o]=1;for(o=24817;o<=24821;o++)r[o]=1;for(o=24877;o<=24882;o++)r[o]=1;for(o=24891;o<=24893;o++)r[o]=1;for(o=25391;o<=25395;o++)r[o]=1;for(o=25828;o<=25838;o++)r[o]=1;for(o=26191;o<=26195;o++)r[o]=1;for(o=26391;o<=26393;o++)r[o]=1;for(o=26701;o<=26722;o++)r[o]=1;for(o=26729;o<=26799;o++)r[o]=3;for(o=26801;o<=26803;o++)r[o]=3;for(o=26811;o<=26813;o++)r[o]=3;for(o=26847;o<=26870;o++)r[o]=3;for(o=26891;o<=26899;o++)r[o]=1;for(o=26901;o<=26923;o++)r[o]=1;for(o=26929;o<=26946;o++)r[o]=1;for(o=26948;o<=26998;o++)r[o]=1;for(o=27037;o<=27040;o++)r[o]=1;for(o=27205;o<=27232;o++)r[o]=1;for(o=27258;o<=27260;o++)r[o]=1;for(o=27391;o<=27398;o++)r[o]=1;for(o=27561;o<=27564;o++)r[o]=1;for(o=27571;o<=27574;o++)r[o]=1;for(o=27581;o<=27584;o++)r[o]=1;for(o=27591;o<=27594;o++)r[o]=1;for(o=27700;o<=27707;o++)r[o]=1;for(o=28191;o<=28193;o++)r[o]=1;for(o=28348;o<=28358;o++)r[o]=1;for(o=28402;o<=28432;o++)r[o]=1;for(o=28462;o<=28492;o++)r[o]=1;for(o=29118;o<=29122;o++)r[o]=1;for(o=29168;o<=29172;o++)r[o]=1;for(o=29177;o<=29185;o++)r[o]=1;for(o=29187;o<=29195;o++)r[o]=1;for(o=29900;o<=29903;o++)r[o]=1;for(o=30161;o<=30179;o++)r[o]=1;for(o=30491;o<=30494;o++)r[o]=1;for(o=30729;o<=30732;o++)r[o]=1;for(o=31251;o<=31259;o++)r[o]=1;for(o=31265;o<=31268;o++)r[o]=1;for(o=31275;o<=31279;o++)r[o]=1;for(o=31281;o<=31297;o++)r[o]=1;for(o=31461;o<=31469;o++)r[o]=1;for(o=31491;o<=31495;o++)r[o]=1;for(o=31917;o<=31922;o++)r[o]=1;for(o=31965;o<=32e3;o++)r[o]=1;for(o=32001;o<=32003;o++)r[o]=3;for(o=32005;o<=32031;o++)r[o]=3;for(o=32033;o<=32060;o++)r[o]=3;for(o=32064;o<=32067;o++)r[o]=3;for(o=32074;o<=32077;o++)r[o]=3;for(o=32081;o<=32086;o++)r[o]=1;for(o=32107;o<=32130;o++)r[o]=1;for(o=32133;o<=32159;o++)r[o]=1;for(o=32164;o<=32167;o++)r[o]=3;for(o=32180;o<=32199;o++)r[o]=1;for(o=32201;o<=32260;o++)r[o]=1;for(o=32301;o<=32360;o++)r[o]=1;for(o=32401;o<=32460;o++)r[o]=1;for(o=32501;o<=32560;o++)r[o]=1;for(o=32601;o<=32662;o++)r[o]=1;for(o=32664;o<=32667;o++)r[o]=3;for(o=32701;o<=32761;o++)r[o]=1;for(o=53001;o<=53004;o++)r[o]=1;for(o=53008;o<=53019;o++)r[o]=1;for(o=53021;o<=53032;o++)r[o]=1;for(o=53034;o<=53037;o++)r[o]=1;for(o=53042;o<=53046;o++)r[o]=1;for(o=53074;o<=53080;o++)r[o]=1;for(o=54001;o<=54004;o++)r[o]=1;for(o=54008;o<=54019;o++)r[o]=1;for(o=54021;o<=54032;o++)r[o]=1;for(o=54034;o<=54037;o++)r[o]=1;for(o=54042;o<=54046;o++)r[o]=1;for(o=54048;o<=54053;o++)r[o]=1;for(o=54074;o<=54080;o++)r[o]=1;for(o=54090;o<=54096;o++)r[o]=1;for(o=54098;o<=54101;o++)r[o]=1;for(o=65161;o<=65163;o++)r[o]=1;for(o=102001;o<=102040;o++)r[o]=1;for(o=102042;o<=102063;o++)r[o]=1;for(o=102065;o<=102067;o++)r[o]=1;for(o=102070;o<=102117;o++)r[o]=1;for(o=102122;o<=102216;o++)r[o]=1;for(o=102221;o<=102377;o++)r[o]=1;for(o=102382;o<=102388;o++)r[o]=1;for(o=102389;o<=102398;o++)r[o]=3;for(o=102399;o<=102444;o++)r[o]=1;for(o=102445;o<=102447;o++)r[o]=3;for(o=102448;o<=102458;o++)r[o]=1;for(o=102459;o<=102468;o++)r[o]=3;for(o=102469;o<=102499;o++)r[o]=1;for(o=102500;o<=102519;o++)r[o]=2;for(o=102520;o<=102524;o++)r[o]=1;for(o=102525;o<=102529;o++)r[o]=3;for(o=102530;o<=102588;o++)r[o]=1;for(o=102590;o<=102598;o++)r[o]=1;for(o=102601;o<=102603;o++)r[o]=1;for(o=102605;o<=102628;o++)r[o]=1;for(o=102629;o<=102646;o++)r[o]=3;for(o=102648;o<=102700;o++)r[o]=3;for(o=102701;o<=102703;o++)r[o]=1;for(o=102707;o<=102730;o++)r[o]=3;for(o=102733;o<=102758;o++)r[o]=3;for(o=102767;o<=102900;o++)r[o]=1;for(o=102901;o<=102933;o++)r[o]=3;for(o=102934;o<=102950;o++)r[o]=14;for(o=102951;o<=102969;o++)r[o]=1;for(o=102971;o<=102973;o++)r[o]=1;for(o=102975;o<=102989;o++)r[o]=1;for(o=102990;o<=102992;o++)r[o]=2;for(o=102997;o<=103002;o++)r[o]=1;for(o=103003;o<=103008;o++)r[o]=3;for(o=103009;o<=103011;o++)r[o]=1;for(o=103012;o<=103014;o++)r[o]=3;for(o=103019;o<=103021;o++)r[o]=1;for(o=103022;o<=103024;o++)r[o]=3;for(o=103029;o<=103031;o++)r[o]=1;for(o=103032;o<=103034;o++)r[o]=3;for(o=103065;o<=103068;o++)r[o]=1;for(o=103074;o<=103076;o++)r[o]=1;for(o=103077;o<=103079;o++)r[o]=2;for(o=103080;o<=103082;o++)r[o]=1;for(o=103083;o<=103085;o++)r[o]=3;for(o=103090;o<=103093;o++)r[o]=1;for(o=103097;o<=103099;o++)r[o]=1;for(o=103100;o<=103102;o++)r[o]=3;for(o=103107;o<=103109;o++)r[o]=1;for(o=103110;o<=103112;o++)r[o]=3;for(o=103113;o<=103116;o++)r[o]=1;for(o=103117;o<=103120;o++)r[o]=3;for(o=103153;o<=103157;o++)r[o]=1;for(o=103158;o<=103162;o++)r[o]=3;for(o=103163;o<=103165;o++)r[o]=1;for(o=103166;o<=103168;o++)r[o]=2;for(o=103169;o<=103171;o++)r[o]=3;for(o=103186;o<=103188;o++)r[o]=1;for(o=103189;o<=103191;o++)r[o]=3;for(o=103192;o<=103195;o++)r[o]=1;for(o=103196;o<=103199;o++)r[o]=3;for(o=103200;o<=103224;o++)r[o]=1;for(o=103225;o<=103227;o++)r[o]=2;for(o=103232;o<=103237;o++)r[o]=1;for(o=103238;o<=103243;o++)r[o]=3;for(o=103244;o<=103246;o++)r[o]=1;for(o=103247;o<=103249;o++)r[o]=3;for(o=103254;o<=103256;o++)r[o]=1;for(o=103257;o<=103259;o++)r[o]=3;for(o=103264;o<=103266;o++)r[o]=1;for(o=103267;o<=103269;o++)r[o]=3;for(o=103300;o<=103375;o++)r[o]=1;for(o=103381;o<=103383;o++)r[o]=1;for(o=103384;o<=103386;o++)r[o]=2;for(o=103387;o<=103389;o++)r[o]=1;for(o=103390;o<=103392;o++)r[o]=3;for(o=103397;o<=103399;o++)r[o]=1;for(o=103400;o<=103471;o++)r[o]=3;for(o=103476;o<=103478;o++)r[o]=1;for(o=103479;o<=103481;o++)r[o]=3;for(o=103486;o<=103488;o++)r[o]=1;for(o=103489;o<=103491;o++)r[o]=3;for(o=103492;o<=103495;o++)r[o]=1;for(o=103496;o<=103499;o++)r[o]=3;for(o=103528;o<=103543;o++)r[o]=1;for(o=103544;o<=103548;o++)r[o]=3;for(o=103549;o<=103551;o++)r[o]=1;for(o=103552;o<=103554;o++)r[o]=2;for(o=103555;o<=103557;o++)r[o]=3;for(o=103558;o<=103560;o++)r[o]=1;for(o=103571;o<=103573;o++)r[o]=1;for(o=103574;o<=103576;o++)r[o]=3;for(o=103577;o<=103580;o++)r[o]=1;for(o=103581;o<=103583;o++)r[o]=3;for(o=103595;o<=103694;o++)r[o]=1;for(o=103696;o<=103699;o++)r[o]=1;for(o=103700;o<=103793;o++)r[o]=3;for(o=103794;o<=103890;o++)r[o]=1;for(o=103891;o<=103896;o++)r[o]=3;for(o=103900;o<=103971;o++)r[o]=3;for(o=103972;o<=103977;o++)r[o]=1;for(o=103983;o<=103985;o++)r[o]=1;for(o=112e3;o<=112101;o++)r[o]=1;for(o=112151;o<=112156;o++)r[o]=1;for(o=112201;o<=112210;o++)r[o]=1;for(o=112212;o<=112235;o++)r[o]=1;export{r as default};
|
|
2
|
+
let o;const r={values:[.001,1,.3048,.3048006096012192,.3047972654,.9143917962,.201166195164,.9143984146160287,.3047994715386762,20.11676512155263,20.11678249437587,.9143985307444408,.91439523,.3047997101815088,20.1168,20.116756,5e4,15e4],units:["Millimeter","Meter","Foot","Foot_US","Foot_Clarke","Yard_Clarke","Link_Clarke","Yard_Sears","Foot_Sears","Chain_Sears","Chain_Benoit_1895_B","Yard_Indian","Yard_Indian_1937","Foot_Gold_Coast","Chain","Chain_Sears_1922_Truncated","50_Kilometers","150_Kilometers"],2066:6,2136:13,2155:3,2157:1,2158:1,2159:13,2160:13,2204:3,2219:1,2220:1,2254:3,2255:3,2256:2,2265:2,2266:2,2267:3,2268:3,2269:2,2270:2,2271:3,2272:3,2273:2,2294:1,2295:1,2314:4,2899:3,2900:3,2901:2,2909:2,2910:2,2911:3,2912:3,2913:2,2914:2,2992:2,2993:1,2994:2,3080:2,3089:3,3090:1,3091:3,3102:3,3141:1,3142:1,3167:15,3359:3,3360:1,3361:2,3362:1,3363:3,3364:1,3365:3,3366:4,3404:3,3405:1,3406:1,3407:4,3439:1,3440:1,3479:2,3480:1,3481:2,3482:1,3483:2,3484:1,3485:3,3486:1,3487:3,3488:1,3489:1,3490:3,3491:1,3492:3,3493:1,3494:3,3495:1,3496:3,3497:1,3498:3,3499:1,3500:3,3501:1,3502:3,3503:1,3504:3,3505:1,3506:3,3507:1,3508:3,3509:1,3510:3,3511:1,3512:3,3513:1,3514:1,3515:3,3516:1,3517:3,3518:1,3519:3,3520:1,3521:3,3522:1,3523:3,3524:1,3525:3,3526:1,3527:3,3528:1,3529:3,3530:1,3531:3,3532:1,3533:3,3534:1,3535:3,3536:1,3537:3,3538:1,3539:3,3540:1,3541:3,3542:1,3543:3,3544:1,3545:3,3546:1,3547:3,3548:1,3549:3,3550:1,3551:3,3552:1,3553:3,3582:3,3583:1,3584:3,3585:1,3586:3,3587:1,3588:2,3589:1,3590:2,3591:1,3592:1,3593:2,3598:3,3599:1,3600:3,3605:2,3606:1,3607:1,3608:3,3609:1,3610:3,3611:1,3612:3,3613:1,3614:3,3615:1,3616:3,3617:1,3618:3,3619:1,3620:3,3621:1,3622:3,3623:1,3624:3,3625:1,3626:3,3627:1,3628:3,3629:1,3630:3,3631:1,3632:3,3633:1,3634:2,3635:1,3636:2,3640:3,3641:1,3642:3,3643:1,3644:2,3645:1,3646:2,3647:1,3648:2,3649:1,3650:3,3651:1,3652:3,3653:1,3654:3,3655:1,3656:2,3657:1,3658:3,3659:1,3660:3,3661:1,3662:3,3663:1,3664:3,3668:3,3669:1,3670:3,3671:1,3672:3,3673:1,3674:3,3675:1,3676:2,3677:3,3678:1,3679:2,3680:3,3681:1,3682:2,3683:3,3684:1,3685:1,3686:3,3687:1,3688:3,3689:1,3690:3,3691:1,3692:3,3696:3,3697:1,3698:3,3699:1,3700:3,3793:1,3794:1,3812:1,3854:1,3857:1,3920:1,3978:1,3979:1,3991:3,3992:3,4026:1,4037:1,4038:1,4071:1,4082:1,4083:1,4087:1,4088:1,4217:3,4414:1,4415:1,4417:1,4434:1,4437:1,4438:3,4439:3,4462:1,4467:1,4471:1,4474:1,4559:1,4647:1,4822:1,4826:1,4839:1,5018:1,5041:1,5042:1,5048:1,5221:1,5223:1,5234:1,5235:1,5243:1,5247:1,5266:1,5316:1,5320:1,5321:1,5325:1,5337:1,5361:1,5362:1,5367:1,5382:1,5383:1,5396:1,5456:1,5457:1,5469:1,5472:5,5490:1,5513:1,5514:1,5523:1,5559:1,5588:2,5589:4,5596:1,5627:1,5629:1,5641:1,5643:1,5644:1,5646:3,5654:3,5655:3,5659:1,5700:1,5825:1,5836:1,5837:1,5839:1,5842:1,5844:1,5858:1,5879:1,5880:1,5887:1,5890:1,6128:2,6129:2,6141:2,6204:1,6210:1,6211:1,6307:1,6312:1,6316:1,6362:1,6391:2,6405:2,6406:1,6407:2,6408:1,6409:2,6410:1,6411:3,6412:1,6413:3,6414:1,6415:1,6416:3,6417:1,6418:3,6419:1,6420:3,6421:1,6422:3,6423:1,6424:3,6425:1,6426:3,6427:1,6428:3,6429:1,6430:3,6431:1,6432:3,6433:1,6434:3,6435:1,6436:3,6437:1,6438:3,6439:1,6440:1,6441:3,6442:1,6443:3,6444:1,6445:3,6446:1,6447:3,6448:1,6449:3,6450:1,6451:3,6452:1,6453:3,6454:1,6455:3,6456:1,6457:3,6458:1,6459:3,6460:1,6461:3,6462:1,6463:3,6464:1,6465:3,6466:1,6467:3,6468:1,6469:3,6470:1,6471:3,6472:1,6473:3,6474:1,6475:3,6476:1,6477:3,6478:1,6479:3,6484:3,6485:1,6486:3,6487:1,6488:3,6489:1,6490:3,6491:1,6492:3,6493:1,6494:2,6495:1,6496:2,6497:1,6498:1,6499:2,6500:1,6501:3,6502:1,6503:3,6504:1,6505:3,6506:1,6507:3,6508:1,6509:1,6510:3,6515:2,6516:1,6518:1,6519:3,6520:1,6521:3,6522:1,6523:3,6524:1,6525:3,6526:1,6527:3,6528:1,6529:3,6530:1,6531:3,6532:1,6533:3,6534:1,6535:3,6536:1,6537:3,6538:1,6539:3,6540:1,6541:3,6542:1,6543:3,6544:1,6545:2,6546:1,6547:2,6548:1,6549:3,6550:1,6551:3,6552:1,6553:3,6554:1,6555:3,6556:1,6557:2,6558:1,6559:2,6560:1,6561:2,6562:1,6563:3,6564:1,6565:3,6566:1,6567:1,6568:3,6569:1,6570:2,6571:1,6572:3,6573:1,6574:3,6575:1,6576:3,6577:1,6578:3,6582:3,6583:1,6584:3,6585:1,6586:3,6587:1,6588:3,6589:1,6590:3,6591:1,6592:1,6593:3,6594:1,6595:3,6596:1,6597:3,6598:1,6599:3,6600:1,6601:3,6602:1,6603:3,6605:3,6606:1,6607:3,6608:1,6609:3,6610:1,6611:1,6612:3,6613:1,6614:3,6615:1,6616:3,6617:1,6618:3,6633:3,6646:1,6703:1,6784:1,6785:2,6786:1,6787:2,6788:1,6789:2,6790:1,6791:2,6792:1,6793:2,6794:1,6795:2,6796:1,6797:2,6798:1,6799:2,6800:1,6801:2,6802:1,6803:2,6804:1,6805:2,6806:1,6807:2,6808:1,6809:2,6810:1,6811:2,6812:1,6813:2,6814:1,6815:2,6816:1,6817:2,6818:1,6819:2,6820:1,6821:2,6822:1,6823:2,6824:1,6825:2,6826:1,6827:2,6828:1,6829:2,6830:1,6831:2,6832:1,6833:2,6834:1,6835:2,6836:1,6837:2,6838:1,6839:2,6840:1,6841:2,6842:1,6843:2,6844:1,6845:2,6846:1,6847:2,6848:1,6849:2,6850:1,6851:2,6852:1,6853:2,6854:1,6855:2,6856:1,6857:2,6858:1,6859:2,6860:1,6861:2,6862:1,6863:2,6867:1,6868:2,6870:1,6875:1,6876:1,6879:1,6880:3,6884:1,6885:2,6886:1,6887:2,6915:1,6922:1,6923:3,6924:1,6925:3,6962:1,6984:1,6991:1,7128:3,7131:1,7132:3,7142:1,7257:1,7258:3,7259:1,7260:3,7261:1,7262:3,7263:1,7264:3,7265:1,7266:3,7267:1,7268:3,7269:1,7270:3,7271:1,7272:3,7273:1,7274:3,7275:1,7276:3,7277:1,7278:3,7279:1,7280:3,7281:1,7282:3,7283:1,7284:3,7285:1,7286:3,7287:1,7288:3,7289:1,7290:3,7291:1,7292:3,7293:1,7294:3,7295:1,7296:3,7297:1,7298:3,7299:1,7300:3,7301:1,7302:3,7303:1,7304:3,7305:1,7306:3,7307:1,7308:3,7309:1,7310:3,7311:1,7312:3,7313:1,7314:3,7315:1,7316:3,7317:1,7318:3,7319:1,7320:3,7321:1,7322:3,7323:1,7324:3,7325:1,7326:3,7327:1,7328:3,7329:1,7330:3,7331:1,7332:3,7333:1,7334:3,7335:1,7336:3,7337:1,7338:3,7339:1,7340:3,7341:1,7342:3,7343:1,7344:3,7345:1,7346:3,7347:1,7348:3,7349:1,7350:3,7351:1,7352:3,7353:1,7354:3,7355:1,7356:3,7357:1,7358:3,7359:1,7360:3,7361:1,7362:3,7363:1,7364:3,7365:1,7366:3,7367:1,7368:3,7369:1,7370:3,7877:1,7878:1,7882:1,7883:1,7887:1,7899:1,7991:1,7992:1,8035:3,8036:3,8058:1,8059:1,8082:1,8083:1,8088:1,8090:1,8091:3,8092:1,8093:3,8095:1,8096:3,8097:1,8098:3,8099:1,8100:3,8101:1,8102:3,8103:1,8104:3,8105:1,8106:3,8107:1,8108:3,8109:1,8110:3,8111:1,8112:3,8113:1,8114:3,8115:1,8116:3,8117:1,8118:3,8119:1,8120:3,8121:1,8122:3,8123:1,8124:3,8125:1,8126:3,8127:1,8128:3,8129:1,8130:3,8131:1,8132:3,8133:1,8134:3,8135:1,8136:3,8137:1,8138:3,8139:1,8140:3,8141:1,8142:3,8143:1,8144:3,8145:1,8146:3,8147:1,8148:3,8149:1,8150:3,8151:1,8152:3,8153:1,8154:3,8155:1,8156:3,8157:1,8158:3,8159:1,8160:3,8161:1,8162:3,8163:1,8164:3,8165:1,8166:3,8167:1,8168:3,8169:1,8170:3,8171:1,8172:3,8173:1,8177:3,8179:1,8180:3,8181:1,8182:3,8184:1,8185:3,8187:1,8189:3,8191:1,8193:3,8196:1,8197:3,8198:1,8200:3,8201:1,8202:3,8203:1,8204:3,8205:1,8206:3,8207:1,8208:3,8209:1,8210:3,8212:1,8213:3,8214:1,8216:3,8218:1,8220:3,8222:1,8224:3,8225:1,8226:3,8311:1,8312:2,8313:1,8314:2,8315:1,8316:2,8317:1,8318:2,8319:1,8320:2,8321:1,8322:2,8323:1,8324:2,8325:1,8326:2,8327:1,8328:2,8329:1,8330:2,8331:1,8332:2,8333:1,8334:2,8335:1,8336:2,8337:1,8338:2,8339:1,8340:2,8341:1,8342:2,8343:1,8344:2,8345:1,8346:2,8347:1,8348:2,8352:1,8353:1,8379:1,8380:3,8381:1,8382:3,8383:1,8384:3,8385:1,8387:3,8391:1,8395:1,8433:1,8441:1,8455:1,8456:1,8531:3,8682:1,8686:1,8687:1,8692:1,8693:1,8826:1,8903:1,8950:1,8951:1,9039:1,9040:1,9141:1,9149:1,9150:1,9191:1,9221:1,9222:1,9249:1,9250:1,9252:1,9254:1,9265:1,9284:1,9285:1,9300:1,9354:1,9367:1,9373:1,9377:1,9387:1,9391:1,9456:1,9473:1,9498:1,9674:1,9678:1,9680:1,9709:1,9712:1,9713:1,9716:1,9741:1,9748:3,9749:3,9761:1,9766:1,9793:1,9794:1,9869:1,9874:1,9875:1,9880:1,9895:1,9943:1,9945:1,9947:1,9967:1,9972:1,9977:1,10160:1,10183:1,10188:1,10194:1,10199:1,10207:1,10212:1,10217:1,10222:1,10227:1,10235:1,10240:1,10250:1,10254:1,10270:1,10275:1,10280:1,10306:1,10329:1,10471:1,10477:1,10481:3,10516:3,10592:1,10594:1,10596:1,10598:1,10601:1,10603:1,10626:1,10632:1,10641:1,10665:1,10674:1,10699:1,10702:1,10744:1,10745:1,10759:1,10773:1,10801:1,10802:1,10820:1,10833:1,10836:1,10837:1,10851:1,10857:1,10863:1,10899:1,10917:1,10995:1,11341:1,11360:1,11361:2,11362:1,11363:2,11364:1,11365:2,11366:1,11367:2,11368:1,11369:2,11370:1,11371:2,11372:1,11373:2,11374:1,11375:2,11376:1,11377:2,20002:1,20042:1,20050:2,20499:1,20538:1,20539:1,20790:1,20791:1,21291:1,21292:1,21500:1,21817:1,21818:1,22032:1,22033:1,22091:1,22092:1,22239:1,22240:1,22332:1,22337:1,22338:1,22391:1,22392:1,22639:1,22700:1,22739:1,22770:1,22780:1,22832:1,23090:1,23095:1,23239:1,23240:1,23433:1,23700:1,24047:1,24048:1,24100:4,24200:1,24305:1,24306:1,24382:11,24383:1,24500:1,24547:1,24548:1,24571:10,24600:1,25e3:1,25231:1,25884:1,25932:1,26237:1,26331:1,26332:1,26432:1,26591:1,26592:1,26632:1,26692:1,27120:1,27200:1,27291:7,27292:7,27429:1,27492:1,27493:1,27500:1,28232:1,28600:1,28991:1,28992:1,29100:1,29101:1,29220:1,29221:1,29333:1,29635:1,29636:1,29701:1,29738:1,29739:1,29849:1,29850:1,29871:9,29872:8,29873:1,29874:1,30200:6,30339:1,30340:1,30591:1,30592:1,30791:1,30792:1,30800:1,31028:1,31121:1,31154:1,31170:1,31171:1,31370:1,31528:1,31529:1,31600:1,31700:1,31838:1,31839:1,31900:1,31901:1,32061:1,32062:1,32098:1,32099:3,32100:1,32104:1,32161:1,32766:1,53048:1,53049:1,65061:3,65062:3,102041:3,102064:12,102068:16,102069:17,102118:3,102119:2,102120:3,102121:3,102217:3,102218:1,102219:3,102220:3,102378:2,102379:2,102380:1,102381:2,102589:3,102599:3,102600:3,102604:3,102647:1,102704:3,102705:3,102706:1,102731:1,102732:1,102759:2,102760:2,102761:3,102762:1,102763:3,102764:1,102765:1,102766:3,102970:2,102974:3,102993:1,102994:1,102995:3,102996:3,103015:1,103016:3,103017:1,103018:3,103025:1,103026:1,103027:3,103028:3,103035:1,103036:1,103037:3,103038:3,103039:1,103040:1,103041:3,103042:3,103043:1,103044:1,103045:3,103046:3,103047:1,103048:1,103049:3,103050:3,103051:1,103052:3,103053:1,103054:3,103055:1,103056:3,103057:1,103058:1,103059:3,103060:3,103061:1,103062:1,103063:3,103064:3,103069:3,103070:1,103071:1,103072:3,103073:3,103086:1,103087:1,103088:3,103089:3,103094:2,103095:1,103096:3,103103:1,103104:3,103105:1,103106:3,103121:1,103122:3,103123:1,103124:1,103125:2,103126:2,103127:1,103128:1,103129:3,103130:3,103131:1,103132:1,103133:3,103134:3,103135:1,103136:1,103137:2,103138:2,103139:1,103140:3,103141:1,103142:3,103143:1,103144:3,103145:1,103146:2,103147:1,103148:1,103149:3,103150:3,103151:1,103152:3,103172:1,103173:3,103174:1,103175:1,103176:3,103177:3,103178:1,103179:1,103180:3,103181:3,103182:1,103183:1,103184:3,103185:3,103228:1,103229:1,103230:3,103231:3,103250:1,103251:3,103252:1,103253:3,103260:1,103261:1,103262:3,103263:3,103270:1,103271:1,103272:3,103273:3,103274:1,103275:1,103276:3,103277:3,103278:1,103279:1,103280:3,103281:3,103282:1,103283:1,103284:3,103285:3,103286:1,103287:3,103288:1,103289:3,103290:1,103291:3,103292:1,103293:1,103294:3,103295:3,103296:1,103297:1,103298:3,103299:3,103376:3,103377:1,103378:1,103379:3,103380:3,103393:1,103394:1,103395:3,103396:3,103472:1,103473:2,103474:1,103475:3,103482:1,103483:3,103484:1,103485:3,103500:1,103501:3,103502:1,103503:1,103504:2,103505:2,103506:1,103507:1,103508:3,103509:3,103510:1,103511:1,103512:3,103513:3,103514:1,103515:3,103516:1,103517:3,103518:1,103519:3,103520:1,103521:2,103522:1,103523:1,103524:3,103525:3,103526:1,103527:3,103561:3,103562:3,103563:1,103564:1,103565:3,103566:3,103567:1,103568:1,103569:3,103570:3,103584:1,103585:3,103586:1,103587:3,103588:2,103589:1,103590:3,103591:2,103592:1,103593:3,103594:2,103695:3,103897:2,103898:1,103899:1,103978:3,103979:1,103980:3,103981:1,103982:3,103986:3,103987:3,103988:1,103989:0,103990:3,103991:1,112111:1};for(o=2e3;o<=2045;o++)r[o]=1;for(o=2056;o<=2065;o++)r[o]=1;for(o=2067;o<=2135;o++)r[o]=1;for(o=2137;o<=2154;o++)r[o]=1;for(o=2161;o<=2170;o++)r[o]=1;for(o=2172;o<=2193;o++)r[o]=1;for(o=2195;o<=2198;o++)r[o]=1;for(o=2200;o<=2203;o++)r[o]=1;for(o=2205;o<=2217;o++)r[o]=1;for(o=2222;o<=2224;o++)r[o]=2;for(o=2225;o<=2250;o++)r[o]=3;for(o=2251;o<=2253;o++)r[o]=2;for(o=2257;o<=2264;o++)r[o]=3;for(o=2274;o<=2279;o++)r[o]=3;for(o=2280;o<=2282;o++)r[o]=2;for(o=2283;o<=2289;o++)r[o]=3;for(o=2290;o<=2292;o++)r[o]=1;for(o=2308;o<=2313;o++)r[o]=1;for(o=2315;o<=2491;o++)r[o]=1;for(o=2494;o<=2866;o++)r[o]=1;for(o=2867;o<=2869;o++)r[o]=2;for(o=2870;o<=2888;o++)r[o]=3;for(o=2891;o<=2895;o++)r[o]=3;for(o=2896;o<=2898;o++)r[o]=2;for(o=2902;o<=2908;o++)r[o]=3;for(o=2915;o<=2920;o++)r[o]=3;for(o=2921;o<=2923;o++)r[o]=2;for(o=2924;o<=2930;o++)r[o]=3;for(o=2931;o<=2962;o++)r[o]=1;for(o=2964;o<=2968;o++)r[o]=3;for(o=2969;o<=2973;o++)r[o]=1;for(o=2975;o<=2991;o++)r[o]=1;for(o=2995;o<=3051;o++)r[o]=1;for(o=3054;o<=3079;o++)r[o]=1;for(o=3081;o<=3088;o++)r[o]=1;for(o=3092;o<=3101;o++)r[o]=1;for(o=3106;o<=3138;o++)r[o]=1;for(o=3146;o<=3151;o++)r[o]=1;for(o=3153;o<=3166;o++)r[o]=1;for(o=3168;o<=3172;o++)r[o]=1;for(o=3174;o<=3203;o++)r[o]=1;for(o=3294;o<=3358;o++)r[o]=1;for(o=3367;o<=3403;o++)r[o]=1;for(o=3408;o<=3416;o++)r[o]=1;for(o=3417;o<=3438;o++)r[o]=3;for(o=3441;o<=3446;o++)r[o]=3;for(o=3447;o<=3450;o++)r[o]=1;for(o=3451;o<=3459;o++)r[o]=3;for(o=3460;o<=3478;o++)r[o]=1;for(o=3554;o<=3559;o++)r[o]=1;for(o=3560;o<=3570;o++)r[o]=3;for(o=3571;o<=3581;o++)r[o]=1;for(o=3594;o<=3597;o++)r[o]=1;for(o=3601;o<=3604;o++)r[o]=1;for(o=3637;o<=3639;o++)r[o]=1;for(o=3665;o<=3667;o++)r[o]=1;for(o=3693;o<=3695;o++)r[o]=1;for(o=3701;o<=3727;o++)r[o]=1;for(o=3728;o<=3739;o++)r[o]=3;for(o=3740;o<=3751;o++)r[o]=1;for(o=3753;o<=3760;o++)r[o]=3;for(o=3761;o<=3773;o++)r[o]=1;for(o=3775;o<=3777;o++)r[o]=1;for(o=3779;o<=3781;o++)r[o]=1;for(o=3783;o<=3785;o++)r[o]=1;for(o=3788;o<=3791;o++)r[o]=1;for(o=3797;o<=3802;o++)r[o]=1;for(o=3814;o<=3816;o++)r[o]=1;for(o=3825;o<=3829;o++)r[o]=1;for(o=3832;o<=3841;o++)r[o]=1;for(o=3844;o<=3852;o++)r[o]=1;for(o=3873;o<=3885;o++)r[o]=1;for(o=3890;o<=3893;o++)r[o]=1;for(o=3907;o<=3912;o++)r[o]=1;for(o=3942;o<=3950;o++)r[o]=1;for(o=3968;o<=3970;o++)r[o]=1;for(o=3973;o<=3976;o++)r[o]=1;for(o=3986;o<=3989;o++)r[o]=1;for(o=3994;o<=3997;o++)r[o]=1;for(o=4048;o<=4051;o++)r[o]=1;for(o=4056;o<=4063;o++)r[o]=1;for(o=4093;o<=4096;o++)r[o]=1;for(o=4390;o<=4398;o++)r[o]=1;for(o=4399;o<=4413;o++)r[o]=3;for(o=4418;o<=4433;o++)r[o]=3;for(o=4455;o<=4457;o++)r[o]=3;for(o=4484;o<=4489;o++)r[o]=1;for(o=4491;o<=4554;o++)r[o]=1;for(o=4568;o<=4589;o++)r[o]=1;for(o=4652;o<=4656;o++)r[o]=1;for(o=4766;o<=4800;o++)r[o]=1;for(o=5014;o<=5016;o++)r[o]=1;for(o=5069;o<=5072;o++)r[o]=1;for(o=5105;o<=5130;o++)r[o]=1;for(o=5167;o<=5188;o++)r[o]=1;for(o=5253;o<=5259;o++)r[o]=1;for(o=5269;o<=5275;o++)r[o]=1;for(o=5292;o<=5311;o++)r[o]=1;for(o=5329;o<=5331;o++)r[o]=1;for(o=5343;o<=5349;o++)r[o]=1;for(o=5355;o<=5357;o++)r[o]=1;for(o=5387;o<=5389;o++)r[o]=1;for(o=5459;o<=5463;o++)r[o]=1;for(o=5479;o<=5482;o++)r[o]=1;for(o=5518;o<=5520;o++)r[o]=1;for(o=5530;o<=5539;o++)r[o]=1;for(o=5550;o<=5552;o++)r[o]=1;for(o=5562;o<=5583;o++)r[o]=1;for(o=5623;o<=5625;o++)r[o]=3;for(o=5631;o<=5639;o++)r[o]=1;for(o=5649;o<=5653;o++)r[o]=1;for(o=5663;o<=5680;o++)r[o]=1;for(o=5682;o<=5685;o++)r[o]=1;for(o=5875;o<=5877;o++)r[o]=1;for(o=5896;o<=5899;o++)r[o]=1;for(o=5921;o<=5940;o++)r[o]=1;for(o=6050;o<=6125;o++)r[o]=1;for(o=6244;o<=6275;o++)r[o]=1;for(o=6328;o<=6348;o++)r[o]=1;for(o=6350;o<=6356;o++)r[o]=1;for(o=6366;o<=6372;o++)r[o]=1;for(o=6381;o<=6387;o++)r[o]=1;for(o=6393;o<=6404;o++)r[o]=1;for(o=6480;o<=6483;o++)r[o]=1;for(o=6511;o<=6514;o++)r[o]=1;for(o=6579;o<=6581;o++)r[o]=1;for(o=6619;o<=6624;o++)r[o]=1;for(o=6625;o<=6627;o++)r[o]=3;for(o=6628;o<=6632;o++)r[o]=1;for(o=6634;o<=6637;o++)r[o]=1;for(o=6669;o<=6692;o++)r[o]=1;for(o=6707;o<=6709;o++)r[o]=1;for(o=6720;o<=6723;o++)r[o]=1;for(o=6732;o<=6738;o++)r[o]=1;for(o=6931;o<=6933;o++)r[o]=1;for(o=6956;o<=6959;o++)r[o]=1;for(o=7005;o<=7007;o++)r[o]=1;for(o=7057;o<=7070;o++)r[o]=3;for(o=7074;o<=7082;o++)r[o]=1;for(o=7109;o<=7118;o++)r[o]=1;for(o=7119;o<=7127;o++)r[o]=2;for(o=7374;o<=7376;o++)r[o]=1;for(o=7528;o<=7586;o++)r[o]=1;for(o=7587;o<=7645;o++)r[o]=3;for(o=7692;o<=7696;o++)r[o]=1;for(o=7755;o<=7787;o++)r[o]=1;for(o=7791;o<=7795;o++)r[o]=1;for(o=7799;o<=7801;o++)r[o]=1;for(o=7803;o<=7805;o++)r[o]=1;for(o=7825;o<=7831;o++)r[o]=1;for(o=7845;o<=7859;o++)r[o]=1;for(o=8013;o<=8032;o++)r[o]=1;for(o=8065;o<=8068;o++)r[o]=2;for(o=8518;o<=8529;o++)r[o]=3;for(o=8533;o<=8536;o++)r[o]=3;for(o=8538;o<=8540;o++)r[o]=3;for(o=8677;o<=8679;o++)r[o]=1;for(o=8836;o<=8840;o++)r[o]=1;for(o=8857;o<=8859;o++)r[o]=1;for(o=8908;o<=8910;o++)r[o]=1;for(o=9154;o<=9159;o++)r[o]=1;for(o=9205;o<=9218;o++)r[o]=1;for(o=9271;o<=9273;o++)r[o]=1;for(o=9295;o<=9297;o++)r[o]=1;for(o=9356;o<=9360;o++)r[o]=1;for(o=9404;o<=9407;o++)r[o]=1;for(o=9476;o<=9482;o++)r[o]=1;for(o=9487;o<=9494;o++)r[o]=1;for(o=9697;o<=9699;o++)r[o]=1;for(o=9821;o<=9865;o++)r[o]=1;for(o=10285;o<=10291;o++)r[o]=1;for(o=10314;o<=10317;o++)r[o]=1;for(o=10448;o<=10465;o++)r[o]=1;for(o=10726;o<=10729;o++)r[o]=1;for(o=10731;o<=10733;o++)r[o]=1;for(o=10792;o<=10795;o++)r[o]=1;for(o=10911;o<=10916;o++)r[o]=3;for(o=10921;o<=10926;o++)r[o]=1;for(o=10942;o<=10949;o++)r[o]=1;for(o=11114;o<=11118;o++)r[o]=1;for(o=11266;o<=11272;o++)r[o]=1;for(o=11277;o<=11284;o++)r[o]=1;for(o=20004;o<=20032;o++)r[o]=1;for(o=20047;o<=20049;o++)r[o]=1;for(o=20062;o<=20092;o++)r[o]=1;for(o=20135;o<=20138;o++)r[o]=1;for(o=20248;o<=20258;o++)r[o]=1;for(o=20348;o<=20358;o++)r[o]=1;for(o=20436;o<=20440;o++)r[o]=1;for(o=20822;o<=20824;o++)r[o]=1;for(o=20904;o<=20932;o++)r[o]=1;for(o=20934;o<=20936;o++)r[o]=1;for(o=21004;o<=21032;o++)r[o]=1;for(o=21035;o<=21037;o++)r[o]=1;for(o=21095;o<=21097;o++)r[o]=1;for(o=21148;o<=21150;o++)r[o]=1;for(o=21207;o<=21264;o++)r[o]=1;for(o=21307;o<=21364;o++)r[o]=1;for(o=21413;o<=21423;o++)r[o]=1;for(o=21453;o<=21463;o++)r[o]=1;for(o=21473;o<=21483;o++)r[o]=1;for(o=21780;o<=21782;o++)r[o]=1;for(o=21891;o<=21894;o++)r[o]=1;for(o=21896;o<=21899;o++)r[o]=1;for(o=22171;o<=22177;o++)r[o]=1;for(o=22181;o<=22187;o++)r[o]=1;for(o=22191;o<=22197;o++)r[o]=1;for(o=22207;o<=22222;o++)r[o]=1;for(o=22229;o<=22232;o++)r[o]=1;for(o=22234;o<=22236;o++)r[o]=1;for(o=22243;o<=22250;o++)r[o]=1;for(o=22262;o<=22265;o++)r[o]=1;for(o=22307;o<=22322;o++)r[o]=1;for(o=22348;o<=22357;o++)r[o]=1;for(o=22407;o<=22422;o++)r[o]=1;for(o=22462;o<=22465;o++)r[o]=1;for(o=22521;o<=22525;o++)r[o]=1;for(o=22607;o<=22622;o++)r[o]=1;for(o=22641;o<=22646;o++)r[o]=1;for(o=22648;o<=22657;o++)r[o]=1;for(o=22707;o<=22722;o++)r[o]=1;for(o=22762;o<=22765;o++)r[o]=1;for(o=22807;o<=22822;o++)r[o]=1;for(o=22991;o<=22994;o++)r[o]=1;for(o=23028;o<=23038;o++)r[o]=1;for(o=23301;o<=23333;o++)r[o]=3;for(o=23830;o<=23853;o++)r[o]=1;for(o=23866;o<=23872;o++)r[o]=1;for(o=23877;o<=23884;o++)r[o]=1;for(o=23886;o<=23894;o++)r[o]=1;for(o=23946;o<=23948;o++)r[o]=1;for(o=24311;o<=24313;o++)r[o]=1;for(o=24342;o<=24347;o++)r[o]=1;for(o=24370;o<=24374;o++)r[o]=11;for(o=24375;o<=24381;o++)r[o]=1;for(o=24718;o<=24721;o++)r[o]=1;for(o=24817;o<=24821;o++)r[o]=1;for(o=24877;o<=24882;o++)r[o]=1;for(o=24891;o<=24893;o++)r[o]=1;for(o=25391;o<=25395;o++)r[o]=1;for(o=25828;o<=25838;o++)r[o]=1;for(o=26191;o<=26195;o++)r[o]=1;for(o=26391;o<=26393;o++)r[o]=1;for(o=26701;o<=26722;o++)r[o]=1;for(o=26729;o<=26799;o++)r[o]=3;for(o=26801;o<=26803;o++)r[o]=3;for(o=26811;o<=26813;o++)r[o]=3;for(o=26847;o<=26870;o++)r[o]=3;for(o=26891;o<=26899;o++)r[o]=1;for(o=26901;o<=26923;o++)r[o]=1;for(o=26929;o<=26946;o++)r[o]=1;for(o=26948;o<=26998;o++)r[o]=1;for(o=27037;o<=27040;o++)r[o]=1;for(o=27205;o<=27232;o++)r[o]=1;for(o=27258;o<=27260;o++)r[o]=1;for(o=27391;o<=27398;o++)r[o]=1;for(o=27561;o<=27564;o++)r[o]=1;for(o=27571;o<=27574;o++)r[o]=1;for(o=27581;o<=27584;o++)r[o]=1;for(o=27591;o<=27594;o++)r[o]=1;for(o=27700;o<=27707;o++)r[o]=1;for(o=28191;o<=28193;o++)r[o]=1;for(o=28348;o<=28358;o++)r[o]=1;for(o=28402;o<=28432;o++)r[o]=1;for(o=28462;o<=28492;o++)r[o]=1;for(o=29118;o<=29122;o++)r[o]=1;for(o=29168;o<=29172;o++)r[o]=1;for(o=29177;o<=29185;o++)r[o]=1;for(o=29187;o<=29195;o++)r[o]=1;for(o=29900;o<=29903;o++)r[o]=1;for(o=30161;o<=30179;o++)r[o]=1;for(o=30491;o<=30494;o++)r[o]=1;for(o=30729;o<=30732;o++)r[o]=1;for(o=31251;o<=31259;o++)r[o]=1;for(o=31265;o<=31268;o++)r[o]=1;for(o=31275;o<=31279;o++)r[o]=1;for(o=31281;o<=31297;o++)r[o]=1;for(o=31461;o<=31469;o++)r[o]=1;for(o=31491;o<=31495;o++)r[o]=1;for(o=31917;o<=31922;o++)r[o]=1;for(o=31965;o<=32e3;o++)r[o]=1;for(o=32001;o<=32003;o++)r[o]=3;for(o=32005;o<=32031;o++)r[o]=3;for(o=32033;o<=32060;o++)r[o]=3;for(o=32064;o<=32067;o++)r[o]=3;for(o=32074;o<=32077;o++)r[o]=3;for(o=32081;o<=32086;o++)r[o]=1;for(o=32107;o<=32130;o++)r[o]=1;for(o=32133;o<=32159;o++)r[o]=1;for(o=32164;o<=32167;o++)r[o]=3;for(o=32180;o<=32199;o++)r[o]=1;for(o=32201;o<=32260;o++)r[o]=1;for(o=32301;o<=32360;o++)r[o]=1;for(o=32401;o<=32460;o++)r[o]=1;for(o=32501;o<=32560;o++)r[o]=1;for(o=32601;o<=32662;o++)r[o]=1;for(o=32664;o<=32667;o++)r[o]=3;for(o=32701;o<=32761;o++)r[o]=1;for(o=53001;o<=53004;o++)r[o]=1;for(o=53008;o<=53019;o++)r[o]=1;for(o=53021;o<=53032;o++)r[o]=1;for(o=53034;o<=53037;o++)r[o]=1;for(o=53042;o<=53046;o++)r[o]=1;for(o=53074;o<=53080;o++)r[o]=1;for(o=54001;o<=54004;o++)r[o]=1;for(o=54008;o<=54019;o++)r[o]=1;for(o=54021;o<=54032;o++)r[o]=1;for(o=54034;o<=54037;o++)r[o]=1;for(o=54042;o<=54046;o++)r[o]=1;for(o=54048;o<=54053;o++)r[o]=1;for(o=54074;o<=54080;o++)r[o]=1;for(o=54090;o<=54096;o++)r[o]=1;for(o=54098;o<=54101;o++)r[o]=1;for(o=65161;o<=65163;o++)r[o]=1;for(o=102001;o<=102040;o++)r[o]=1;for(o=102042;o<=102063;o++)r[o]=1;for(o=102065;o<=102067;o++)r[o]=1;for(o=102070;o<=102117;o++)r[o]=1;for(o=102122;o<=102216;o++)r[o]=1;for(o=102221;o<=102377;o++)r[o]=1;for(o=102382;o<=102388;o++)r[o]=1;for(o=102389;o<=102398;o++)r[o]=3;for(o=102399;o<=102444;o++)r[o]=1;for(o=102445;o<=102447;o++)r[o]=3;for(o=102448;o<=102458;o++)r[o]=1;for(o=102459;o<=102468;o++)r[o]=3;for(o=102469;o<=102499;o++)r[o]=1;for(o=102500;o<=102519;o++)r[o]=2;for(o=102520;o<=102524;o++)r[o]=1;for(o=102525;o<=102529;o++)r[o]=3;for(o=102530;o<=102588;o++)r[o]=1;for(o=102590;o<=102598;o++)r[o]=1;for(o=102601;o<=102603;o++)r[o]=1;for(o=102605;o<=102628;o++)r[o]=1;for(o=102629;o<=102646;o++)r[o]=3;for(o=102648;o<=102700;o++)r[o]=3;for(o=102701;o<=102703;o++)r[o]=1;for(o=102707;o<=102730;o++)r[o]=3;for(o=102733;o<=102758;o++)r[o]=3;for(o=102767;o<=102900;o++)r[o]=1;for(o=102901;o<=102933;o++)r[o]=3;for(o=102934;o<=102950;o++)r[o]=14;for(o=102951;o<=102969;o++)r[o]=1;for(o=102971;o<=102973;o++)r[o]=1;for(o=102975;o<=102989;o++)r[o]=1;for(o=102990;o<=102992;o++)r[o]=2;for(o=102997;o<=103002;o++)r[o]=1;for(o=103003;o<=103008;o++)r[o]=3;for(o=103009;o<=103011;o++)r[o]=1;for(o=103012;o<=103014;o++)r[o]=3;for(o=103019;o<=103021;o++)r[o]=1;for(o=103022;o<=103024;o++)r[o]=3;for(o=103029;o<=103031;o++)r[o]=1;for(o=103032;o<=103034;o++)r[o]=3;for(o=103065;o<=103068;o++)r[o]=1;for(o=103074;o<=103076;o++)r[o]=1;for(o=103077;o<=103079;o++)r[o]=2;for(o=103080;o<=103082;o++)r[o]=1;for(o=103083;o<=103085;o++)r[o]=3;for(o=103090;o<=103093;o++)r[o]=1;for(o=103097;o<=103099;o++)r[o]=1;for(o=103100;o<=103102;o++)r[o]=3;for(o=103107;o<=103109;o++)r[o]=1;for(o=103110;o<=103112;o++)r[o]=3;for(o=103113;o<=103116;o++)r[o]=1;for(o=103117;o<=103120;o++)r[o]=3;for(o=103153;o<=103157;o++)r[o]=1;for(o=103158;o<=103162;o++)r[o]=3;for(o=103163;o<=103165;o++)r[o]=1;for(o=103166;o<=103168;o++)r[o]=2;for(o=103169;o<=103171;o++)r[o]=3;for(o=103186;o<=103188;o++)r[o]=1;for(o=103189;o<=103191;o++)r[o]=3;for(o=103192;o<=103195;o++)r[o]=1;for(o=103196;o<=103199;o++)r[o]=3;for(o=103200;o<=103224;o++)r[o]=1;for(o=103225;o<=103227;o++)r[o]=2;for(o=103232;o<=103237;o++)r[o]=1;for(o=103238;o<=103243;o++)r[o]=3;for(o=103244;o<=103246;o++)r[o]=1;for(o=103247;o<=103249;o++)r[o]=3;for(o=103254;o<=103256;o++)r[o]=1;for(o=103257;o<=103259;o++)r[o]=3;for(o=103264;o<=103266;o++)r[o]=1;for(o=103267;o<=103269;o++)r[o]=3;for(o=103300;o<=103375;o++)r[o]=1;for(o=103381;o<=103383;o++)r[o]=1;for(o=103384;o<=103386;o++)r[o]=2;for(o=103387;o<=103389;o++)r[o]=1;for(o=103390;o<=103392;o++)r[o]=3;for(o=103397;o<=103399;o++)r[o]=1;for(o=103400;o<=103471;o++)r[o]=3;for(o=103476;o<=103478;o++)r[o]=1;for(o=103479;o<=103481;o++)r[o]=3;for(o=103486;o<=103488;o++)r[o]=1;for(o=103489;o<=103491;o++)r[o]=3;for(o=103492;o<=103495;o++)r[o]=1;for(o=103496;o<=103499;o++)r[o]=3;for(o=103528;o<=103543;o++)r[o]=1;for(o=103544;o<=103548;o++)r[o]=3;for(o=103549;o<=103551;o++)r[o]=1;for(o=103552;o<=103554;o++)r[o]=2;for(o=103555;o<=103557;o++)r[o]=3;for(o=103558;o<=103560;o++)r[o]=1;for(o=103571;o<=103573;o++)r[o]=1;for(o=103574;o<=103576;o++)r[o]=3;for(o=103577;o<=103580;o++)r[o]=1;for(o=103581;o<=103583;o++)r[o]=3;for(o=103595;o<=103694;o++)r[o]=1;for(o=103696;o<=103699;o++)r[o]=1;for(o=103700;o<=103793;o++)r[o]=3;for(o=103794;o<=103890;o++)r[o]=1;for(o=103891;o<=103896;o++)r[o]=3;for(o=103900;o<=103971;o++)r[o]=3;for(o=103972;o<=103977;o++)r[o]=1;for(o=103983;o<=103985;o++)r[o]=1;for(o=112e3;o<=112101;o++)r[o]=1;for(o=112151;o<=112156;o++)r[o]=1;for(o=112201;o<=112210;o++)r[o]=1;for(o=112212;o<=112235;o++)r[o]=1;for(o=112236;o<=112323;o++)r[o]=3;export{r as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import{clamp as e}from"../../../core/mathUtils.js";import{
|
|
2
|
+
import{clamp as e}from"../../../core/mathUtils.js";import{maxInt16 as t}from"../../../core/typedArrayUtil.js";import{set as s,max as r,scale as i,clamp as c,round as n}from"../../../core/libs/gl-matrix-2/math/vec2.js";import{create as l,ONES as u,NEGATIVE_ONES as a}from"../../../core/libs/gl-matrix-2/factories/vec2f64.js";import{scale as f,min as p,max as o,round as h,set as y}from"../../../core/libs/gl-matrix-2/math/vec4.js";import{create as m,ONES as T,ZEROS as d}from"../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{getFloat16ArrayConstructor as x,hasNativeFloat16Array as B}from"../float16.js";import{BufferViewMat3Impl as E}from"./internals/Mat3.js";import{BufferViewMat4Impl as A}from"./internals/Mat4.js";import{BufferViewScalarImpl as b}from"./internals/Scalar.js";import{BufferViewVec2Impl as g}from"./internals/Vec2.js";import{BufferViewVec3Impl as U}from"./internals/Vec3.js";import{BufferViewVec4Impl as V}from"./internals/Vec4.js";import{assert as j}from"../../../views/3d/webgl-engine/lib/Util.js";class F extends b{constructor(e,t=0,s,r){j(B),super(x(),e,t,s,r),this.elementType="f16"}static{this.ElementType="f16"}}class I extends b{constructor(e,t=0,s,r){super(Float32Array,e,t,s,r),this.elementType="f32"}static{this.ElementType="f32"}}class O extends g{constructor(e,t=0,s,r){j(B),super(x(),e,t,s,r),this.elementType="f16"}slice(e,t){return this.sliceBuffer(O,e,t)}static{this.ElementType="f16"}}class M extends g{constructor(e,t=0,s,r){super(Float32Array,e,t,s,r),this.elementType="f32"}slice(e,t){return this.sliceBuffer(M,e,t)}static{this.ElementType="f32"}}class v extends U{constructor(e,t=0,s,r){j(B),super(x(),e,t,s,r),this.elementType="f16"}slice(e,t){return this.sliceBuffer(v,e,t)}static{this.ElementType="f16"}}class w extends U{constructor(e,t=0,s,r){super(Float32Array,e,t,s,r),this.elementType="f32"}slice(e,t){return this.sliceBuffer(w,e,t)}static fromTypedArray(e,t){return new w(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}static{this.ElementType="f32"}}class S extends V{constructor(e,t=0,s,r){j(B),super(x(),e,t,s,r),this.elementType="f16"}slice(e,t){return this.sliceBuffer(S,e,t)}static{this.ElementType="f16"}}class L extends V{constructor(e,t=0,s,r){super(Float32Array,e,t,s,r),this.elementType="f32"}slice(e,t){return this.sliceBuffer(L,e,t)}static{this.ElementType="f32"}}class N extends E{constructor(e,t=0,s,r){super(Float32Array,e,t,s,r),this.elementType="f32"}slice(e,t){return this.sliceBuffer(N,e,t)}static{this.ElementType="f32"}}class k extends E{constructor(e,t=0,s,r){super(Float64Array,e,t,s,r),this.elementType="f64"}slice(e,t){return this.sliceBuffer(k,e,t)}static{this.ElementType="f64"}}class q extends A{constructor(e,t=0,s,r){super(Float32Array,e,t,s,r),this.elementType="f32"}slice(e,t){return this.sliceBuffer(q,e,t)}static{this.ElementType="f32"}}class z extends A{constructor(e,t=0,s,r){super(Float64Array,e,t,s,r),this.elementType="f64"}slice(e,t){return this.sliceBuffer(z,e,t)}static{this.ElementType="f64"}}class C extends b{constructor(e,t=0,s,r){super(Float64Array,e,t,s,r),this.elementType="f64"}slice(e,t){return this.sliceBuffer(C,e,t)}static{this.ElementType="f64"}}class D extends g{constructor(e,t=0,s,r){super(Float64Array,e,t,s,r),this.elementType="f64"}slice(e,t){return this.sliceBuffer(D,e,t)}static{this.ElementType="f64"}}class G extends U{constructor(e,t=0,s,r){super(Float64Array,e,t,s,r),this.elementType="f64"}slice(e,t){return this.sliceBuffer(G,e,t)}static fromTypedArray(e,t){return new G(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}static{this.ElementType="f64"}}class H extends V{constructor(e,t=0,s,r){super(Float64Array,e,t,s,r),this.elementType="f64"}slice(e,t){return this.sliceBuffer(H,e,t)}static{this.ElementType="f64"}}class J extends b{constructor(e,t=0,s,r){super(Uint8Array,e,t,s,r),this.elementType="u8"}slice(e,t){return this.sliceBuffer(J,e,t)}static{this.ElementType="u8"}}class K extends g{constructor(e,t=0,s,r){super(Uint8Array,e,t,s,r),this.elementType="u8"}slice(e,t){return this.sliceBuffer(K,e,t)}static{this.ElementType="u8"}}class P extends U{constructor(e,t=0,s,r){super(Uint8Array,e,t,s,r),this.elementType="u8"}slice(e,t){return this.sliceBuffer(P,e,t)}static fromTypedArray(e,t){return new P(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}static{this.ElementType="u8"}}class Q extends V{constructor(e,t=0,s,r){super(Uint8Array,e,t,s,r),this.elementType="u8"}slice(e,t){return this.sliceBuffer(Q,e,t)}static{this.ElementType="u8"}}class R extends b{constructor(e,t=0,s,r){super(Uint16Array,e,t,s,r),this.elementType="u16"}slice(e,t){return this.sliceBuffer(R,e,t)}static{this.ElementType="u16"}}class W extends g{constructor(e,t=0,s,r){super(Uint16Array,e,t,s,r),this.elementType="u16"}slice(e,t){return this.sliceBuffer(W,e,t)}static{this.ElementType="u16"}}class X extends U{constructor(e,t=0,s,r){super(Uint16Array,e,t,s,r),this.elementType="u16"}slice(e,t){return this.sliceBuffer(X,e,t)}static{this.ElementType="u16"}}class Y extends V{constructor(e,t=0,s,r){super(Uint16Array,e,t,s,r),this.elementType="u16"}slice(e,t){return this.sliceBuffer(Y,e,t)}static{this.ElementType="u16"}}class Z extends b{constructor(e,t=0,s,r){super(Uint32Array,e,t,s,r),this.elementType="u32"}slice(e,t){return this.sliceBuffer(Z,e,t)}static{this.ElementType="u32"}}class $ extends g{constructor(e,t=0,s,r){super(Uint32Array,e,t,s,r),this.elementType="u32"}slice(e,t){return this.sliceBuffer($,e,t)}static{this.ElementType="u32"}}class _ extends U{constructor(e,t=0,s,r){super(Uint32Array,e,t,s,r),this.elementType="u32"}slice(e,t){return this.sliceBuffer(_,e,t)}static{this.ElementType="u32"}}class ee extends V{constructor(e,t=0,s,r){super(Uint32Array,e,t,s,r),this.elementType="u32"}slice(e,t){return this.sliceBuffer(ee,e,t)}static{this.ElementType="u32"}}class te extends b{constructor(e,t=0,s,r){super(Int8Array,e,t,s,r),this.elementType="i8"}slice(e,t){return this.sliceBuffer(te,e,t)}static{this.ElementType="i8"}}class se extends g{constructor(e,t=0,s,r){super(Int8Array,e,t,s,r),this.elementType="i8"}slice(e,t){return this.sliceBuffer(se,e,t)}static{this.ElementType="i8"}}class re extends U{constructor(e,t=0,s,r){super(Int8Array,e,t,s,r),this.elementType="i8"}slice(e,t){return this.sliceBuffer(re,e,t)}static{this.ElementType="i8"}}class ie extends V{constructor(e,t=0,s,r){super(Int8Array,e,t,s,r),this.elementType="i8"}slice(e,t){return this.sliceBuffer(ie,e,t)}static{this.ElementType="i8"}}class ce extends b{constructor(e,t=0,s,r){super(Int16Array,e,t,s,r),this.elementType="i16"}slice(e,t){return this.sliceBuffer(ce,e,t)}static{this.ElementType="i16"}}class ne extends g{constructor(e,t=0,s,r){super(Int16Array,e,t,s,r),this.elementType="i16"}slice(e,t){return this.sliceBuffer(ne,e,t)}static{this.ElementType="i16"}}class le extends U{constructor(e,t=0,s,r){super(Int16Array,e,t,s,r),this.elementType="i16"}slice(e,t){return this.sliceBuffer(le,e,t)}static{this.ElementType="i16"}}class ue extends V{constructor(e,t=0,s,r){super(Int16Array,e,t,s,r),this.elementType="i16"}slice(e,t){return this.sliceBuffer(ue,e,t)}static{this.ElementType="i16"}}class ae extends b{constructor(e,t=0,s,r){super(Int32Array,e,t,s,r),this.elementType="i32"}slice(e,t){return this.sliceBuffer(ae,e,t)}static{this.ElementType="i32"}}class fe extends g{constructor(e,t=0,s,r){super(Int32Array,e,t,s,r),this.elementType="i32"}slice(e,t){return this.sliceBuffer(fe,e,t)}static{this.ElementType="i32"}}class pe extends U{constructor(e,t=0,s,r){super(Int32Array,e,t,s,r),this.elementType="i32"}slice(e,t){return this.sliceBuffer(pe,e,t)}static{this.ElementType="i32"}}class oe extends V{constructor(e,t=0,s,r){super(Int32Array,e,t,s,r),this.elementType="i32"}slice(e,t){return this.sliceBuffer(oe,e,t)}static{this.ElementType="i32"}}class he extends J{constructor(e,t=0,s,r){super(e,t,s,r)}get(e){return this.typedBuffer[e*this.typedBufferStride]/255}set(t,s){this.typedBuffer[t*this.typedBufferStride]=Math.round(255*e(s,0,1))}slice(e,t){return this.sliceBuffer(he,e,t)}}class ye extends Q{constructor(e,t=0,s,r){super(e,t,s,r)}getVec(e,t){return f(t,super.getVec(e,t),1/255)}setVec(e,t){p(de,o(de,t,d),T),f(de,de,255),h(de,de),super.setVec(e,de)}get(e,t){return super.get(e,t)/255}set(t,s,r){super.set(t,s,Math.round(255*e(r,0,1)))}setValues(e,t,s,r,i){y(de,t,s,r,i),this.setVec(e,de)}slice(e,t){return this.sliceBuffer(ye,e,t)}}class me extends ne{constructor(e,t=0,s,r){super(e,t,s,r)}getVec(e,c){return s(Te,-1,-1),r(c,i(c,super.getVec(e,c),1/t),Te)}setVec(e,s){c(Te,s,a,u),i(Te,Te,t),n(Te,Te),super.setVec(e,Te)}get(e,s){return Math.max(super.get(e,s)/t,-1)}set(s,r,i){super.set(s,r,Math.round(e(i,-1,1)*t))}setValues(e,t,r){s(Te,t,r),this.setVec(e,Te)}slice(e,t){return this.sliceBuffer(me,e,t)}}const Te=l(),de=m();export{I as BufferViewFloat,F as BufferViewFloat16,C as BufferViewFloat64,ce as BufferViewInt16,ae as BufferViewInt32,te as BufferViewInt8,N as BufferViewMat3f,k as BufferViewMat3f64,q as BufferViewMat4f,z as BufferViewMat4f64,R as BufferViewUint16,Z as BufferViewUint32,J as BufferViewUint8,he as BufferViewUnorm8,me as BufferViewVec2Snorm16,M as BufferViewVec2f,O as BufferViewVec2f16,D as BufferViewVec2f64,ne as BufferViewVec2i16,fe as BufferViewVec2i32,se as BufferViewVec2i8,W as BufferViewVec2u16,$ as BufferViewVec2u32,K as BufferViewVec2u8,w as BufferViewVec3f,v as BufferViewVec3f16,G as BufferViewVec3f64,le as BufferViewVec3i16,pe as BufferViewVec3i32,re as BufferViewVec3i8,X as BufferViewVec3u16,_ as BufferViewVec3u32,P as BufferViewVec3u8,ye as BufferViewVec4Unorm8,L as BufferViewVec4f,S as BufferViewVec4f16,H as BufferViewVec4f64,ue as BufferViewVec4i16,oe as BufferViewVec4i32,ie as BufferViewVec4i8,Y as BufferViewVec4u16,ee as BufferViewVec4u32,Q as BufferViewVec4u8};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
const o=[3855,31,14,540,18,735,2,19,23,80,19,261,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,80,1,1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,30,2,12,18,1,1,1,1,1,1,1,1,1,1,1,1,1,67,189,1,1,46,1,1,1,1,1,1,1,1,1,170,1,1,1,278,1,1,1,1,1,1,3,46,1,1,221,530,1,204,1,47,1,7,125,5,2,2,47,1,1,72,6,8,3,71,1,1,1,36,139,38,1,90,1,76,241,15,1,150,40,23,7,219,115,10,19,5,8,1,15,32,16,38,1,2,1,1,1,1,1,1,1,1,1,1,49,7,13,179,1,12,3,3,3,3,6,40,1,201,4,223,1,39,159,3,1,1,128,1,1,1,62,1,1,1,1,1,13,23,54,7,1,28,62,23,137,18,71,10,158,8843,34,1,1,85565,1,1,1,1,1,1,1,92,1,1,1,1,86,1,1,1,1,1,1,1,1,1,9901,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1],t=[287,1,2,4,15,107,3,143],e=[10,1,13,1,1,1,12,1,6,1,18,1,4,1,49,1,11,1,1,7,5,1,15,3,29,1,2,1,1,1,5,1,13,2,24,1,6,2,1,1,7,6,3,3,287],r=["Meter","Foot","Foot_US","Foot_British_1936"],F=[1,.3048,.3048006096012192,.3048007491],_=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,2,2,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];export{e as directions,t as types,F as unitInMeters,r as unitStrings,_ as units,o as wkids};
|
|
2
|
+
const _=[3855,31,14,540,18,735,2,19,23,80,19,261,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,80,1,1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,30,2,12,18,1,1,1,1,1,1,1,1,1,1,1,1,1,67,189,1,1,46,1,1,1,1,1,1,1,1,1,170,1,1,1,278,1,1,1,1,1,1,3,46,1,1,221,530,1,204,1,47,1,7,125,5,2,2,47,1,1,72,6,8,3,71,1,1,1,36,139,38,1,90,1,76,241,15,1,150,40,23,7,219,115,10,19,5,8,1,15,32,16,38,1,2,1,1,1,1,1,1,1,1,1,1,49,7,13,179,1,12,3,3,3,3,6,40,1,201,4,223,1,39,159,3,1,1,128,1,1,1,62,1,1,1,1,1,13,23,54,7,1,28,62,23,137,18,71,10,158,8843,34,1,1,85565,1,1,1,1,1,1,1,92,1,1,1,1,86,1,1,1,1,1,1,1,1,1,9901,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1],e=[287,1,2,4,15,107,3,143],a=[10,1,13,1,1,1,12,1,6,1,18,1,4,1,49,1,11,1,1,7,5,1,15,3,29,1,2,1,1,1,5,1,13,2,24,1,6,2,1,1,7,6,3,3,287],t=["Meter","Foot","Foot_US","Foot_British_1936"],n=[1,.3048,.3048006096012192,.3048007491],r=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,2,2,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],i=["EGM2008_Geoid","Fao_1979","N2000","New_Zealand_Vertical_Datum_2009","Dunedin_Bluff_1960","Korean_Vertical_Datum_1964","Trieste","Genoa","Sri_Lanka_Vertical_Datum","Faroe_Islands_Vertical_Reference_2009","Black_Sea","Fehmarnbelt_Vertical_Reference_2010","Nivellement_General_de_Polynesie_Francaise","IGN_1966","Moorea_SAU_1981","Raiatea_SAU_2001","Maupiti_SAU_2001","Huahine_SAU_2001","Tahaa_SAU_2001","Bora_Bora_SAU_2001","International_Great_Lakes_Datum_1955","International_Great_Lakes_Datum_1985","Croatian_Vertical_Reference_System_1971","Caspian_Sea","Baltic_Sea","Rikets_Hojdsystem_2000","KOC_Well_Datum","Rikets_Hojdsystem_1900","IGN_1988_LS","IGN_1988_MG","IGN_1992_LD","IGN_1988_SB","IGN_1988_SM","European_Vertical_Reference_Frame_2007","Ordnance_Datum_Newlyn","National_Geodetic_Vertical_Datum_1929","North_American_Vertical_Datum_1988","Yellow_Sea_1956","Normaal_Amsterdams_Peil","Oostende","Australian_Height_Datum","Australian_Height_Datum_Tasmania","Canadian_Geodetic_Vertical_Datum_of_1928","Mean_Sea_Level","Piraeus_Harbour_1986","Helsinki_1960","Rikets_Hojdsystem_1970","Nivellement_General_de_la_France_Lallemand","Nivellement_General_de_la_France_IGN69","Nivellement_General_de_la_France_IGN78","Maputo","Japanese_Standard_Levelling_Datum_1969","PDO_Height_Datum_1993","Fahud_Height_Datum","Ha_Tien_1960","Hon_Dau_1992","Landesnivellement_1902","Landeshohennetz_1995","European_Vertical_Reference_Frame_2000","Malin_Head","Belfast","Dansk_Normal_Nul","AIOC_1995","Yellow_Sea_1985","Hong_Kong_Principal_Datum","Hong_Kong_Chart_Datum","Ordnance_Datum_Newlyn_Orkney_Isles","Fair_Isle","Lerwick","Foula","Sule_Skerry","North_Rona","Stornoway","St_Kilda","Flannan_Isles","St_Marys","Douglas","Fao","Bandar_Abbas","Nivellement_General_de_Nouvelle_Caledonie","Poolbeg","Nivellement_General_Guyanais_1977","IGN_1987","IGN_1988","IGN_1989","Auckland","Bluff","Dunedin","Gisborne","Lyttelton","Moturiki","Napier","Nelson","One_Tree_Point","Tararu","Taranaki","Wellington","Chatham_Island","Stewart_Island","EGM96_Geoid","Nivellement_General_du_Luxembourg","Antalya","Norway_Normal_Null_1954","Durres","Gebrauchshohen_Adria","Slovenian_Vertical_System_2000","Cascais","Constanta","Alicante","Deutsches_Haupthoehennetz_1992","Deutsches_Haupthoehennetz_1985","SNN76","Baltic_1982","Baltic_1980","Kuwait_PWD","KOC_Construction_Datum","Nivellement_General_de_la_Corse_1948","Danger_1950","Mayotte_1950","Martinique_1955","Guadeloupe_1951","Lagos_1955","EGM84_Geoid","Dansk_Vertikal_Reference_1990_ensemble","Sea_Level","Ras_Ghumays","Lowest_Astronomic_Tide","Lower_Low_Water_Large_Tide","Indian_Spring_Low_Water","Mean_Lower_Low_Water_Spring_Tides","Mean_Low_Water_Spring_Tides","Mean_Lower_Low_Water","Mean_Low_Water","Mean_High_Water","Mean_Higher_High_Water","Mean_High_Water_Spring_Tides","Higher_High_Water_Large_Tide","Highest_Astronomic_Tide","Low_Water","High_Water","Norway_Normal_Null_2000","Grand_Cayman_Vertical_Datum_1954","Little_Cayman_Vertical_Datum_1961","Cayman_Brac_Vertical_Datum_1961","Cais_da_Pontinha-Funchal","Cais_da_Vila-Porto_Santo","Cais_das_Velas","Horta","Cais_da_Madalena","Santa_Cruz_da_Graciosa","Cais_da_Figueirinha-Angra_do_Heroismo","Santa_Cruz_das_Flores","Cais_da_Vila_do_Porto","Ponta_Delgada","Tutuila_Vertical_Datum_of_1962","Guam_Vertical_Datum_of_1963","Northern_Marianas_Vertical_Datum_of_2003","Puerto_Rico_Vertical_Datum_of_2002","Virgin_Islands_Vertical_Datum_of_2009","American_Samoa_Vertical_Datum_of_2002","Guam_Vertical_Datum_of_2004","Canadian_Geodetic_Vertical_Datum_of_2013","Japanese_Standard_Levelling_Datum_1972","Japanese_Geodetic_Datum_2000_vertical","Japanese_Geodetic_Datum_2011_vertical","Singapore_Height_Datum","Famagusta_1960","Papua_New_Guinea_2008","Kumul_34","Kiunga","Deutsches_Haupthoehennetz_1912","Latvian_Height_System_2000","Ordnance_Datum_Newlyn_(Offshore)","Port_Moresby_1996","Deutsches_Haupthoehennetz_2016","New_Zealand_Vertical_Datum_2016","Port_Moresby_2008","Jamestown_1971","St_Helena_Tritan_Vertical_Datum_2011","St_Helena_Vertical_Datum_2015","Landshaedarkerfi_Islands_2004","Greenland_Vertical_Reference_2000","Greenland_Vertical_Reference_2016","Baltic_1957","Macao_Height_Datum","Helsinki_1943","Slovenian_Vertical_System_2010","Serbian_Vertical_Reference_System_2012","MOMRA_Vertical_Geodetic_Control","Wiener_Null","Taiwan_Vertical_Datum_2001","Datum_Altimetrico_de_Costa_Rica_1952","IGN_2008_LD","Canadian_Geodetic_Vertical_Datum_of_2013_CGG2013a","Sistema_de_Referencia_Vertical_Nacional_2016","European_Vertical_Reference_Frame_2000_Austria","South_Africa_Land_Levelling_Datum","Lowest_Astronomical_Tide_Netherlands","Mean_Sea_Level_Netherlands","HS2_Vertical_Reference_Frame","Kingdom_of_Saudi_Arabia_Vertical_Reference_Frame_Jeddah_2014","Nivellement_General_de_Nouvelle_Caledonie_2008","European_Vertical_Reference_Frame_2019","European_Vertical_Reference_Frame_2019_mean_tide","Mallorca","Menorca","Ibiza","Lanzarote","Fuerteventura","Gran_Canaria","Tenerife","La_Gomera","La_Palma","El_Hierro","Ceuta_2","British_Isles_height_ensemble","Australian_Vertical_Working_Surface","Indonesian_Geoid_2020","Baltic_1986","European_Vertical_Reference_Frame_2007_Poland","Estonian_Height_System_2000","Lithuanian_Height_System_2007","Bulgarian_Height_System_2005","Norwegian_Chart_Datum","Local_Tidal_Datum_at_Pago_Pago_2020","National_Vertical_Datum_1992","Catania_1965","Cagliari_1956","GNTRANS","GNTRANS2016","Mean_Sea_Level_UK_Ireland_VORF08","Chart_Datum_UK_Ireland_VORF08","Nivellement_General_de_l_Algerie_2022","Chart_Datum_Portugal","Formentera","Alboran","Melilla","Dansk_Vertikal_Reference_1990","Dansk_Vertikal_Reference_1990_(2002)","Dansk_Vertikal_Reference_1990_(2013)","Dansk_Vertikal_Reference_1990_(2023)","Denmark_Mean_Sea_Level_(2022)","Denmark_Lowest_Astronomical_Tide_(2022)","Denmark_Mean_Sea_Level_(2023)","Denmark_Lowest_Astronomical_Tide_(2023)","Denmark_Mean_Sea_Level","Denmark_Lowest_Astronomical_Tide","Greenland_Local_Mean_Sea_Level_(2022)","Canadian_Geodetic_Vertical_Datum_of_1928_(Height_Transformation_version_2_0)","Saba_Vertical_Datum","Greenland_Mean_Sea_Level_(2023)","Greenland_Lowest_Astronomic_Tide_(2023)","Baltic_Sea_Chart_Datum_2000","Sint_Eustatius_Vertical_Datum","Bonaire_Vertical_Datum","Asse_vertical_datum_2025","Derived_California_Orthometric_Heights_of_1988_epoch_2025","London_Survey_Grid_height_datum","Svalbard_vertical_datum_2024","IGN_2023_Mayotte","Svalbard_vertical_datum_2006","Canadian_Geodetic_Vertical_Datum_of_2013_(CGG2013a)_epoch_2002","Canadian_Geodetic_Vertical_Datum_of_2013_(CGG2013a)_epoch_1997","Indonesian_Geoid_2020_version_2","Hellenic_Vertical_Datum","WGS_1984","Red_Espanola_de_Nivelacion_de_Alta_Precision","Japanese_Geodetic_Datum_2024_vertical","GRS_1980","WGS_1984_Geoid","Mean_Sea_Level_Hawaii","Qatari_Vertical_Datum","International_1924","CGCS2000","Bessel_1841","Krasovsky_1940","Everest_Adjustment_1937","Clarke_1866","PZ_1990","Unknown_height_system_(meters)","Unknown_height_system_(US_survey_feet)","Unknown_height_system_(Intl_feet)","GSK-2011","Australian","NWL_9D","WGS_1972"],l=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,24,23,38,39,40,41,42,43,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,10,37,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,26,115,116,117,118,119,120,121,62,122,123,124,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,36,36,35,36,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,80,35,64,26,43,43,43,43,180,36,181,182,183,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,265,265,268,268,269,123,25,36,221,0,1,3,2,4,270,270,99,99,271,265,268,268,268,272,273,268,268,265,274,265,268,268,268,268,268,268,268,268,265,265,268,265,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,265,268,268,268,275,272,268,268,272,268,268,268,268,268,268,265,268,268,268,268,268,268,268,268,268,276,268,268,268,268,265,268,277,268,278,268,268,268,268,268,268,268,272,268,268,268,268,268,268,268,268,268,268,265,276,268,268,274,274,268,268,268,275,265,268,268,268,268,279,280,281,268,268,265,282,278,278,265,265,265,265,265,265,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,274,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,274,268,283,283,268,265,268,268,268,268,265,272,265,265,268,268,268,268,268,268,268,275,268,268,268,268,268,268,268,268,268,265,284,285,285,268,268,268,268,268,268,268,268,268,268,268,274,268,268,268,268,268,268,268,268,268,268,268,265,272,268,272,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268];export{l as datumIds,i as datums,a as directions,e as types,r as unitIds,n as unitInMeters,t as units,_ as wkids};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import{
|
|
2
|
+
import{unitIds as t,datums as n,wkids as o,units as r,unitInMeters as e,datumIds as c,directions as s,types as f}from"./vcsData.js";function u(t){const n=[];let o=0;for(const r of t){for(let t=0;t<r;t++)n.push(o);o=1-o}return n}function i(t){const n=[];let o=0;for(const r of t)o+=r,n.push(o);return n}function a(){const a=i(o),p=u(f),l=u(s),m=r.map((t,n)=>({name:t,conversionFactor:e[n]})),h=new Map;for(let o=0;o<a.length;o++){const r=0===p[o]?0:1,e=0===l[o]?0:1,s=m[t[o]],f=n[c[o]];h.set(a[o],{type:r,direction:e,unit:s,datum:f})}return h}const p=a();export{p as vcsLookup};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import e from"../config.js";import t from"../request.js";import r from"../core/Error.js";import{Evented as s}from"../core/Evented.js";import{on as i}from"../core/events.js";import{fixJson as n}from"../core/lang.js";import{getDeepValue as o}from"../core/object.js";import{onAbort as a,isAborted as h}from"../core/promiseUtils.js";import{urlToObject as l,hasSameOrigin as c,Url as d,queryToObject as u,base64UrlEncode as p,objectToQuery as _,normalize as f,getProxyRule as g,makeAbsolute as m,changeDomain as v,addQueryParameters as S}from"../core/urlUtils.js";import w from"./Credential.js";import I from"./IdentityModal.js";import k from"./OAuthCredential.js";import A from"./OAuthInfo.js";import U from"./ServerInfo.js";import{isSecureProxyService as y,normalizeArcGISOnlineOrgDomain as P,parseKnownArcGISOnlineDomain as x}from"../portal/support/urlUtils.js";const O={},T=e=>{const t=new d(e.owningSystemUrl).host,r=new d(e.server).host,s=/.+\.arcgis\.com$/i;return s.test(t)&&s.test(r)},R=(e,t)=>!!(T(e)&&t&&t.some(t=>t.test(e.server)));let C=null,D=null;try{C=window.localStorage,D=window.sessionStorage}catch{}class b extends s{constructor(){super(),this._portalConfig=globalThis.esriGeowConfig,this.serverInfos=[],this.oAuthInfos=[],this.credentials=[],this._soReqs=[],this._xoReqs=[],this._portals=[],this._defaultOAuthInfo=null,this._defaultTokenValidity=60,this.dialog=null,this.tokenValidity=null,this.normalizeWebTierAuth=!1,this._appOrigin="null"!==window.origin?window.origin:window.location.origin,this._appUrlObj=l(window.location.href),this._busy=null,this._rejectOnPersistedPageShow=!1,this._oAuthLocationParams=null,this._gwTokenUrl="/sharing/rest/generateToken",this._agsRest="/rest/services",this._agsPortal=/\/sharing(\/|$)/i,this._agsAdmin=/(https?:\/\/[^/]+\/[^/]+)\/admin\/?(\/.*)?$/i,this._adminSvcs=/\/rest\/admin\/services(\/|$)/i,this._gwDomains=[{regex:/^https?:\/\/www\.arcgis\.com/i,customBaseUrl:"maps.arcgis.com",tokenServiceUrl:"https://www.arcgis.com/sharing/rest/generateToken"},{regex:/^https?:\/\/(?:dev|[a-z\d-]+\.mapsdev)\.arcgis\.com/i,customBaseUrl:"mapsdev.arcgis.com",tokenServiceUrl:"https://dev.arcgis.com/sharing/rest/generateToken"},{regex:/^https?:\/\/(?:devext|[a-z\d-]+\.mapsdevext)\.arcgis\.com/i,customBaseUrl:"mapsdevext.arcgis.com",tokenServiceUrl:"https://devext.arcgis.com/sharing/rest/generateToken"},{regex:/^https?:\/\/(?:qaext|[a-z\d-]+\.mapsqa)\.arcgis\.com/i,customBaseUrl:"mapsqa.arcgis.com",tokenServiceUrl:"https://qaext.arcgis.com/sharing/rest/generateToken"},{regex:/^https?:\/\/[a-z\d-]+\.maps\.arcgis\.com/i,customBaseUrl:"maps.arcgis.com",tokenServiceUrl:"https://www.arcgis.com/sharing/rest/generateToken"}],this._legacyFed=[],this._regexSDirUrl=/http.+\/rest\/services\/?/gi,this._regexServerType=/(\/(FeatureServer|GPServer|GeoDataServer|GeocodeServer|GeoenrichmentServer|GeometryServer|GlobeServer|ImageServer|KnowledgeGraphServer|MapServer|MissionServer|MobileServer|NAServer|NetworkDiagramServer|OGCFeatureServer|ParcelFabricServer|RelationalCatalogServer|SceneServer|StreamServer|UtilityNetworkServer|ValidationServer|VectorTileServer|VersionManagementServer|VideoServer|3DTilesServer)).*/gi,this._gwUser=/http.+\/users\/([^/]+).*/i,this._gwItem=/http.+\/items\/([^/]+).*/i,this._gwGroup=/http.+\/groups\/([^/]+).*/i,this._rePortalTokenSvc=/\/sharing(\/rest)?\/generatetoken/i,this._createDefaultOAuthInfo=!0,this._hasTestedIfAppIsOnPortal=!1,this._getPlatformSelfError=null,this._getOAuthLocationParams(),window.addEventListener("pageshow",e=>{this._pageShowHandler(e)})}registerServers(e){const t=this.serverInfos;t?(e=e.filter(e=>!this.findServerInfo(e.server)),this.serverInfos=t.concat(e)):this.serverInfos=e,e.forEach(e=>{e.owningSystemUrl&&this._portals.push(e.owningSystemUrl),e.hasPortal&&this._portals.push(e.server)})}registerOAuthInfos(e){const t=this.oAuthInfos;if(t){for(const r of e){const e=this.findOAuthInfo(r.portalUrl);e&&t.splice(t.indexOf(e),1)}this.oAuthInfos=t.concat(e)}else this.oAuthInfos=e}registerToken(e){e={...e};const t=this._sanitizeUrl(e.server),r=this._isServerRsrc(t);let s,i=this.findServerInfo(t),n=!0;i||(i=new U,i.server=this._getServerInstanceRoot(t),r?i.hasServer=!0:(i.tokenServiceUrl=this._getTokenSvcUrl(t),i.hasPortal=!0),this.registerServers([i])),s=this._findCredential(t),s?(delete e.server,Object.assign(s,e),n=!1):(s=new w({userId:e.userId,server:i.server??void 0,token:e.token,expires:e.expires,ssl:e.ssl,scope:r?"server":"portal"}),s.resources=[t],this.credentials.push(s)),s.emitTokenChange(!1),n||s.refreshServerTokens()}toJSON(){return n({serverInfos:this.serverInfos.map(e=>e.toJSON()),oAuthInfos:this.oAuthInfos.map(e=>e.toJSON()),credentials:this.credentials.map(e=>e.toJSON())})}initialize(e){if(!e)return;"string"==typeof e&&(e=JSON.parse(e));const t=e.serverInfos,r=e.oAuthInfos,s=e.credentials;if(t){const e=[];t.forEach(t=>{t.server&&t.tokenServiceUrl&&e.push(t.declaredClass?t:new U(t))}),e.length&&this.registerServers(e)}if(r){const e=[];r.forEach(t=>{t.appId&&e.push(t.declaredClass?t:new A(t))}),e.length&&this.registerOAuthInfos(e)}s&&s.forEach(e=>{e.server&&e.token&&e.expires&&e.expires>Date.now()&&((e=e.declaredClass?e:new w(e)).emitTokenChange(),this.credentials.push(e))})}findServerInfo(e){let t;e=this._sanitizeUrl(e);for(const r of this.serverInfos)if(this._hasSameServerInstance(r.server,e)){t=r;break}return t}findOAuthInfo(e){let t;e=this._sanitizeUrl(e);for(const r of this.oAuthInfos)if(this._hasSameServerInstance(r.portalUrl,e)){t=r;break}return t}findCredential(e,t){if(!e)return;let r;e=this._sanitizeUrl(e);const s=this._isServerRsrc(e)?"server":"portal";if(t){for(const i of this.credentials)if(this._hasSameServerInstance(i.server,e)&&t===i.userId&&i.scope===s){r=i;break}}else for(const i of this.credentials)if(this._hasSameServerInstance(i.server,e)&&-1!==this._getIdenticalSvcIdx(e,i)&&i.scope===s){r=i;break}return r}getCredential(e,t){let s,i=!1,n=!0;t&&(i=!(!t.token&&!t.credential),s=t.error,n=!1!==t.prompt),t={...t},e=this._sanitizeUrl(e);const o=new AbortController,l=Promise.withResolvers();if(t.signal&&a(t.signal,()=>{o.abort()}),a(o,()=>{l.reject(new r("identity-manager:user-aborted","ABORTED"))}),h(o))return l.promise;t.signal=o.signal;const d=this._isAdminResource(e),u=i?this.findCredential(e):null;let p;if(u&&498===s?.details?.httpStatus)u.destroy();else if(u)return p=new r("identity-manager:not-authorized","You are currently signed in as: '"+u.userId+"'. You do not have access to this resource: "+e,{error:s}),l.reject(p),l.promise;const _=this._findCredential(e,t);if(_)return l.resolve(_),l.promise;let f=this.findServerInfo(e);if(f)!f.hasPortal&&f.server&&f.owningSystemUrl&&this._hasSameServerInstance(f.server,f.owningSystemUrl)&&(f.hasPortal=!0),!f.hasServer&&this._isServerRsrc(e)&&(f._restInfoPms=this._getTokenSvcUrl(e),f.hasServer=!0);else{const t=this._getTokenSvcUrl(e);if(!t)return p=new r("identity-manager:unknown-resource","Unknown resource - could not find token service endpoint."),l.reject(p),l.promise;f=new U,f.server=this._getServerInstanceRoot(e),"string"==typeof t?(f.tokenServiceUrl=t,f.hasPortal=!0):(f._restInfoPms=t,f.hasServer=!0),this.registerServers([f])}return f.hasPortal&&void 0===f._selfReq&&(n||c(f.tokenServiceUrl,this._appOrigin)||this._gwDomains.some(e=>e.tokenServiceUrl===f.tokenServiceUrl))&&(f._selfReq={owningTenant:t?.owningTenant,selfDfd:this._getPortalSelf(f.tokenServiceUrl.replace(this._rePortalTokenSvc,"/sharing/rest/portals/self"),e)}),this._enqueue(e,f,t,l,d)}getResourceName(e){return this._isRESTService(e)?e.replace(this._regexSDirUrl,"").replace(this._regexServerType,"")||"":this._gwUser.test(e)&&e.replace(this._gwUser,"$1")||this._gwItem.test(e)&&e.replace(this._gwItem,"$1")||this._gwGroup.test(e)&&e.replace(this._gwGroup,"$1")||""}generateToken(e,s,i){const n=this._rePortalTokenSvc.test(e.tokenServiceUrl),o=new d(this._appOrigin),a=e.shortLivedTokenValidity;let h,l,u,p,_,f,g,m;s&&(m=this.tokenValidity||a||this._defaultTokenValidity,m>a&&a>0&&(m=a)),i&&(h=i.isAdmin,l=i.serverUrl,u=i.token,f=i.signal,g=i.ssl,e.customParameters=i.customParameters),h?p=e.adminTokenServiceUrl:(p=e.tokenServiceUrl,_=new d(p.toLowerCase()),e.webTierAuth&&i?.serverUrl&&!g&&"http"===o.scheme&&(c(o.uri,p,!0)||"https"===_.scheme&&o.host===_.host&&"7080"===o.port&&"7443"===_.port)&&(p=p.replace(/^https:/i,"http:").replace(/:7443/i,":7080")));const v={query:{request:"getToken",username:s?.username,password:s?.password,serverUrl:l,token:u,expiration:m,referer:h||n?this._appOrigin:null,client:h?"referer":null,f:"json",...e.customParameters},method:"post",authMode:"anonymous",useProxy:this._useProxy(e,i),signal:f};n||(v.withCredentials=!1);return t(p,v).then(t=>{const i=t.data;if(!i?.token)return new r("identity-manager:authentication-failed","Unable to generate token");const n=e.server;return O[n]||(O[n]={}),s&&(O[n][s.username]=s.password),i.validity=m,i})}isBusy(){return!!this._busy}async checkSignInStatus(e){return(await this.checkAppAccess(e,"")).credential}checkAppAccess(e,s,i){let n=!1;return this.getCredential(e,{prompt:!1}).then(o=>{let a;const h={f:"json"};if("portal"===o.scope)if(s&&(this._doPortalSignIn(e)||i?.force))a=o.server+"/sharing/rest/oauth2/validateAppAccess",h.client_id=s;else{if(!o.token)return{credential:o};a=o.server+"/sharing/rest"}else{if(!o.token)return{credential:o};a=o.server+"/rest/services"}return o.token&&(h.token=o.token),t(a,{query:h,authMode:"anonymous"}).then(e=>{if(!1===e.data.valid)throw new r("identity-manager:not-authorized",`You are currently signed in as: '${o.userId}'.`,e.data);return n=!!e.data.viewOnlyUserTypeApp,{credential:o}}).catch(e=>{if("identity-manager:not-authorized"===e.name)throw e;const t=e.details?.httpStatus;if(498===t)throw o.destroy(),new r("identity-manager:not-authenticated","User is not signed in.");if(400===t)throw new r("identity-manager:invalid-request","Bad request");return{credential:o}})}).then(e=>({credential:e.credential,viewOnly:n}))}setOAuthResponseHash(e){e&&(e.startsWith("#")&&(e=e.slice(1)),this._processOAuthPopupParams(u(e)))}setOAuthRedirectionHandler(e){this._oAuthRedirectFunc=e}setProtocolErrorHandler(e){this._protocolFunc=e}signIn(e,t,s={}){const i=Promise.withResolvers(),n=()=>{l?.remove(),c?.remove(),this.dialog?.destroy(),this.dialog=l=c=null},o=()=>{n(),this._oAuthDfd=null,i.reject(new r("identity-manager:user-aborted","ABORTED"))};s.signal&&a(s.signal,()=>{o()});const h=new I({open:!0,resource:this.getResourceName(e),server:t.server});this.dialog=h,this.emit("dialog-create");let l=h.on("cancel",o),c=h.on("submit",e=>{this.generateToken(t,e,{isAdmin:s.isAdmin,signal:s.signal}).then(r=>{n();const o=new w({userId:e.username,server:t.server??void 0,token:r.token,expires:null!=r.expires?Number(r.expires):null,ssl:!!r.ssl,isAdmin:s.isAdmin,validity:r.validity});i.resolve(o)}).catch(e=>{h.error=e,h.signingIn=!1})});return i.promise}oAuthSignIn(e,t,s,i){this._oAuthDfd=Promise.withResolvers();const n=this._oAuthDfd;let o;i?.signal&&a(i.signal,()=>{const e=this._oAuthDfd&&this._oAuthDfd.oAuthWin_;e&&!e.closed?e.close():this.dialog&&d()}),n.resUrl_=e,n.sinfo_=t,n.oinfo_=s;const h=s._oAuthCred;if(h.storage&&("authorization-code"===s.flowType||"auto"===s.flowType&&t.currentVersion>=8.4)){let e=crypto.getRandomValues(new Uint8Array(32));o=p(e),h.codeVerifier=o,e=crypto.getRandomValues(new Uint8Array(32)),h.stateUID=p(e),h.save()||(h.codeVerifier=o=null)}else h.codeVerifier=null;let l,c;this._getCodeChallenge(o).then(r=>{const n=!i||!1!==i.oAuthPopupConfirmation;if(!s.popup||!n)return void this._doOAuthSignIn(e,t,s,r);const o=new I({oAuthPrompt:!0,server:t.server,open:!0});this.dialog=o,this.emit("dialog-create"),l=o.on("cancel",d),c=o.on("submit",()=>{u(),this._doOAuthSignIn(e,t,s,r)})});const d=()=>{u(),this._oAuthDfd=null,n.reject(new r("identity-manager:user-aborted","ABORTED"))},u=()=>{l?.remove(),c?.remove(),this.dialog?.destroy(),this.dialog=null};return n.promise}async refreshToken(e){const t=this.findServerInfo(e.server),r=t?.owningSystemUrl,s=!!r&&"server"===e.scope,i=s&&R(t,this._legacyFed),n=t.webTierAuth,o=n&&this.normalizeWebTierAuth,a=O[e.server],h=a?.[e.userId];let l,c=e.resources&&e.resources[0],d=s?this.findServerInfo(r):null,u={username:e.userId,password:h};if(n&&!o)return;s&&!d&&this.serverInfos.some(e=>(this._isIdProvider(r,e.server)&&(d=e),!!d));const p=d?this.findCredential(d.server,e.userId):null;if(!s||p){if(!i){if(s)l={serverUrl:c,token:p?.token,ssl:p?.ssl};else if(o)u=null,l={ssl:e.ssl};else{if(!h){let r;return c&&(c=this._sanitizeUrl(c),e._enqueued=1,r=this._enqueue(c,t,null,null,e.isAdmin,e),r.then(()=>{e._enqueued=0,e.refreshServerTokens()}).catch(()=>{e._enqueued=0})),r}e.isAdmin&&(l={isAdmin:!0})}return this.generateToken(s?d:t,s?null:u,l).then(t=>{e.token=t.token,e.expires=null!=t.expires?Number(t.expires):null,e.creationTime=Date.now(),e.validity=t.validity,e.emitTokenChange(),e.refreshServerTokens()}).catch(()=>{})}p?.refreshToken()}}refreshServerTokens(e){"portal"===e.scope&&this.credentials.forEach(t=>{const r=this.findServerInfo(t.server),s=r?.owningSystemUrl;t!==e&&t.userId===e.userId&&s&&"server"===t.scope&&(this._hasSameServerInstance(e.server,s)||this._isIdProvider(s,e.server))&&(R(r,this._legacyFed)?(t.token=e.token,t.expires=e.expires,t.creationTime=e.creationTime,t.validity=e.validity,t.emitTokenChange()):t.refreshToken())})}destroyCredentials(){if(this.credentials){this.credentials.slice().forEach(e=>{e.destroy()})}this.emit("credentials-destroy")}enablePostMessageAuth(e="https://www.arcgis.com/sharing/rest"){this._postMessageAuthHandle&&this._postMessageAuthHandle.remove(),this._postMessageAuthHandle=i(window,"message",t=>{if((t.origin===this._appOrigin||t.origin.endsWith(".arcgis.com"))&&"arcgis:auth:requestCredential"===t.data?.type){const r=t.source;this.getCredential(e).then(e=>{r.postMessage({type:"arcgis:auth:credential",credential:{expires:e.expires,server:e.server,ssl:e.ssl,token:e.token,userId:e.userId}},t.origin)}).catch(e=>{r.postMessage({type:"arcgis:auth:error",error:{name:e.name,message:e.message}},t.origin)})}})}disablePostMessageAuth(){this._postMessageAuthHandle&&(this._postMessageAuthHandle.remove(),this._postMessageAuthHandle=null)}_getOAuthLocationParams(){let e=window.location.hash;if(e){e.startsWith("#")&&(e=e.slice(1));const t=u(e);let r=!1;if(t.access_token&&t.expires_in&&t.state&&t.hasOwnProperty("username"))try{t.state=JSON.parse(t.state),t.state.portalUrl&&(this._oAuthLocationParams=t,r=!0)}catch{}else if(t.error&&t.error_description&&(console.log("IdentityManager OAuth Error: ",t.error," - ",t.error_description),"access_denied"===t.error&&(r=!0,t.state)))try{t.state=JSON.parse(t.state)}catch{}r&&(window.location.hash=t.state?.hash||"")}let t=window.location.search;if(t){t.startsWith("?")&&(t=t.slice(1));const e=u(t);let r=!1;if(e.code&&e.state)try{e.state=JSON.parse(e.state),e.state.portalUrl&&e.state.uid&&(this._oAuthLocationParams=e,r=!0)}catch{}else if(e.error&&e.error_description&&(console.log("IdentityManager OAuth Error: ",e.error," - ",e.error_description),"access_denied"===e.error&&(r=!0,e.state)))try{e.state=JSON.parse(e.state)}catch{}if(r){const t={...e};["code","error","error_description","message_code","persist","state"].forEach(e=>{delete t[e]});const r=_(t),s=window.location.pathname+(r?`?${r}`:"")+(e.state?.hash||"");window.history.replaceState(window.history.state,"",s)}}}_getOAuthToken(e,r,s,i,n){return e=e.replace(/^http:/i,"https:"),t(`${e}/sharing/rest/oauth2/token`,{authMode:"anonymous",method:"post",query:i&&n?{grant_type:"authorization_code",code:r,redirect_uri:i,client_id:s,code_verifier:n}:{grant_type:"refresh_token",refresh_token:r,client_id:s}}).then(e=>e.data)}async _getCodeChallenge(e){if(e&&globalThis.isSecureContext){const t=(new TextEncoder).encode(e),r=await crypto.subtle.digest("SHA-256",t);return p(new Uint8Array(r))}return null}_pageShowHandler(e){if(e.persisted&&this.isBusy()&&this._rejectOnPersistedPageShow){const e=new r("identity-manager:user-aborted","ABORTED");this._errbackFunc(e)}}_findCredential(e,t){let r,s,i,n,o=-1;const a=t?.token,h=t?.resource,l=this._isServerRsrc(e)?"server":"portal",c=this.credentials.filter(t=>this._hasSameServerInstance(t.server,e)&&t.scope===l);if(e=h||e,c.length)if(1===c.length){if(r=c[0],i=this.findServerInfo(r.server),s=i?.owningSystemUrl,n=s?this.findCredential(s,r.userId):void 0,o=this._getIdenticalSvcIdx(e,r),!a)return-1===o&&r.resources.push(e),this._addResource(e,n),r;-1!==o&&(r.resources.splice(o,1),this._removeResource(e,n))}else{let t,r;if(c.some(a=>(r=this._getIdenticalSvcIdx(e,a),-1!==r&&(t=a,i=this.findServerInfo(t.server),s=i?.owningSystemUrl,n=s?this.findCredential(s,t.userId):void 0,o=r,!0))),a)t&&(t.resources.splice(o,1),this._removeResource(e,n));else if(t)return this._addResource(e,n),t}}_findOAuthInfo(e){let t=this.findOAuthInfo(e);if(!t)for(const r of this.oAuthInfos)if(this._isIdProvider(r.portalUrl,e)){t=r;break}return t}_addResource(e,t){t&&-1===this._getIdenticalSvcIdx(e,t)&&t.resources.push(e)}_removeResource(e,t){let r=-1;t&&(r=this._getIdenticalSvcIdx(e,t),r>-1&&t.resources.splice(r,1))}_useProxy(e,t){return t?.isAdmin&&!c(e.adminTokenServiceUrl,this._appOrigin)||!this._isPortalDomain(e.tokenServiceUrl)&&"10.1"===String(e.currentVersion)&&!c(e.tokenServiceUrl,this._appOrigin)}_getOrigin(e){const t=new d(e);return t.scheme+"://"+t.host+(null!=t.port?":"+t.port:"")}_getServerInstanceRoot(e){const t=e.toLowerCase();let r=t.indexOf(this._agsRest);return-1===r&&this._isAdminResource(e)&&(r=this._agsAdmin.test(e)?e.replace(this._agsAdmin,"$1").length:e.search(this._adminSvcs)),-1!==r||y(t)||(r=t.indexOf("/sharing")),-1===r&&t.endsWith("/")&&(r=t.length-1),r>-1?e.slice(0,r):e}_hasSameServerInstance(e,t){return e.endsWith("/")&&(e=e.slice(0,-1)),e=e.toLowerCase(),t=this._getServerInstanceRoot(t).toLowerCase(),e=P(e),t=P(t),(e=e.slice(Math.max(0,e.indexOf(":"))))===(t=t.slice(Math.max(0,t.indexOf(":"))))}_sanitizeUrl(t){const r=(e.request.proxyUrl||"").toLowerCase(),s=r?t.toLowerCase().indexOf(r+"?"):-1;return-1!==s&&(t=t.slice(s+r.length+1)),t=f(t),l(t).path}_isRESTService(e){return e.includes(this._agsRest)}_isAdminResource(e){return this._agsAdmin.test(e)||this._adminSvcs.test(e)}_isServerRsrc(e){return this._isRESTService(e)||this._isAdminResource(e)}_isIdenticalService(e,t){let r=!1;if(this._isRESTService(e)&&this._isRESTService(t)){const s=this._getSuffix(e).toLowerCase(),i=this._getSuffix(t).toLowerCase();if(r=s===i,!r){const e=/(.*)\/(MapServer|FeatureServer|UtilityNetworkServer).*/gi;r=s.replaceAll(e,"$1")===i.replaceAll(e,"$1")}}else this._isAdminResource(e)&&this._isAdminResource(t)?r=!0:this._isServerRsrc(e)||this._isServerRsrc(t)||!this._isPortalDomain(e)||(r=!0);return r}_isPortalDomain(t){const r=new d(t.toLowerCase()),s=this._portalConfig;let i=this._gwDomains.some(e=>e.regex.test(r.uri));return!i&&s&&(i=this._hasSameServerInstance(this._getServerInstanceRoot(s.restBaseUrl),r.uri)),i||e.portalUrl&&(i=c(r,e.portalUrl,!0)),i||(i=this._portals.some(e=>this._hasSameServerInstance(e,r.uri))),i=i||this._agsPortal.test(r.path),i}_isIdProvider(e,t){let r=-1,s=-1;this._gwDomains.forEach((i,n)=>{-1===r&&i.regex.test(e)&&(r=n),-1===s&&i.regex.test(t)&&(s=n)});let i=!1;if(r>-1&&s>-1&&(0===r||4===r?0!==s&&4!==s||(i=!0):1===r?1!==s&&2!==s||(i=!0):2===r?2===s&&(i=!0):3===r&&3===s&&(i=!0)),!i){const r=this.findServerInfo(t),s=r?.owningSystemUrl;s&&T(r)&&this._isPortalDomain(s)&&this._isIdProvider(e,s)&&(i=!0)}return i}_getIdenticalSvcIdx(e,t){let r=-1;for(let s=0;s<t.resources.length;s++){const i=t.resources[s];if(this._isIdenticalService(e,i)){r=s;break}}return r}_getSuffix(e){return e.replace(this._regexSDirUrl,"").replace(this._regexServerType,"$1")}_getTokenSvcUrl(e){let r,s,i;if(this._isRESTService(e)||this._isAdminResource(e)){const i=this._getServerInstanceRoot(e);return r=i+"/admin/generateToken",s=t(e=i+"/rest/info",{query:{f:"json"}}).then(e=>e.data),{adminUrl:r,promise:s}}if(this._isPortalDomain(e)){let t="";if(this._gwDomains.some(r=>(r.regex.test(e)&&(t=r.tokenServiceUrl),!!t)),t||this._portals.some(r=>(this._hasSameServerInstance(r,e)&&(t=r+this._gwTokenUrl),!!t)),t||(i=e.toLowerCase().indexOf("/sharing"),-1!==i&&(t=e.slice(0,i)+this._gwTokenUrl)),t||(t=this._getOrigin(e)+this._gwTokenUrl),t){const r=new d(e).port;/^http:\/\//i.test(e)&&"7080"===r&&(t=t.replace(/:7080/i,":7443")),t=t.replace(/http:/i,"https:")}return t}}_processOAuthResponseParams(e,t,r){const s=t._oAuthCred;if(e.code){const i=s.codeVerifier;return s.codeVerifier=null,s.stateUID=null,s.save(),this._getOAuthToken(r.server,e.code,t.appId,this._getRedirectURI(t,!0),i).then(i=>{const n=new w({userId:i.username,server:r.server??void 0,token:i.access_token,expires:Date.now()+1e3*i.expires_in,ssl:i.ssl,oAuthState:e.state,_oAuthCred:s});return t.userId=n.userId,s.storage=i.persist?C:D,s.refreshToken=i.refresh_token,s.token=null,s.expires=i.refresh_token_expires_in?Date.now()+1e3*i.refresh_token_expires_in:null,s.userId=n.userId,s.ssl=n.ssl,s.save(),n})}const i=new w({userId:e.username,server:r.server??void 0,token:e.access_token,expires:Date.now()+1e3*Number(e.expires_in),ssl:"true"===e.ssl,oAuthState:e.state,_oAuthCred:s});return t.userId=i.userId,s.storage=e.persist?C:D,s.refreshToken=null,s.token=i.token,s.expires=i.expires,s.userId=i.userId,s.ssl=i.ssl,s.save(),Promise.resolve(i)}_processOAuthPopupParams(e){const t=this._oAuthDfd;if(this._oAuthDfd=null,t)if(clearInterval(this._oAuthIntervalId),this._oAuthOnPopupHandle?.remove(),e.error){const s="access_denied"===e.error,i=new r(s?"identity-manager:user-aborted":"identity-manager:authentication-failed",s?"ABORTED":"OAuth: "+e.error+" - "+e.error_description);t.reject(i)}else this._processOAuthResponseParams(e,t.oinfo_,t.sinfo_).then(e=>{t.resolve(e)}).catch(e=>{t.reject(e)})}_setOAuthResponseQueryString(e){e&&(e.startsWith("?")&&(e=e.slice(1)),this._processOAuthPopupParams(u(e)))}async _exchangeToken(e,r,s){return(await t(`${e}/sharing/rest/oauth2/exchangeToken`,{authMode:"anonymous",method:"post",query:{f:"json",client_id:r,token:s}})).data.token}async _getPlatformSelf(e,r){if(this._getPlatformSelfError&&Date.now()-this._getPlatformSelfError[1]<1e3)throw this._getPlatformSelfError[0];e=e.replace(/^http:/i,"https:");try{const s=await t(`${e}/sharing/rest/oauth2/platformSelf`,{authMode:"anonymous",headers:{"X-Esri-Auth-Client-Id":r,"X-Esri-Auth-Redirect-Uri":window.location.href.replace(/#.*$/,"")},method:"post",query:{f:"json",expiration:30},withCredentials:!0});return this._getPlatformSelfError=null,s.data}catch(s){throw"OAUTH_0066"===s.details?.messageCode&&(this._getPlatformSelfError=[s,Date.now()]),s}}_getPortalSelf(e,r){let s;if(this._gwDomains.some(t=>(t.regex.test(e)&&(s=t.customBaseUrl),!!s)),s)return Promise.resolve({allSSL:!0,currentVersion:"8.4",customBaseUrl:s,portalMode:"multitenant",supportsOAuth:!0});this._appOrigin.startsWith("https:")?e=e.replace(/^http:/i,"https:").replace(/:7080/i,":7443"):/^http:/i.test(r)&&(e=e.replace(/^https:/i,"http:").replace(/:7443/i,":7080"));return t(e,{query:{f:"json"},authMode:"anonymous",withCredentials:!0}).then(e=>e.data)}_doPortalSignIn(e){const t=this._portalConfig,r=window.location.href,s=this.findServerInfo(e);return!(!t&&!this._isPortalDomain(r)||!(s?s.hasPortal||s.owningSystemUrl&&this._isPortalDomain(s.owningSystemUrl):this._isPortalDomain(e))||!(this._isIdProvider(r,e)||t&&(this._hasSameServerInstance(this._getServerInstanceRoot(t.restBaseUrl),e)||this._isIdProvider(t.restBaseUrl,e))||c(r,e,!0)))}_checkProtocol(e,t,s,i){let n=!0;const o=i?t.adminTokenServiceUrl:t.tokenServiceUrl;if(o.trim().toLowerCase().startsWith("https:")&&!this._appOrigin.startsWith("https:")&&g(o)&&(n=!!this._protocolFunc&&!!this._protocolFunc({resourceUrl:e,serverInfo:t}),!n)){s(new r("identity-manager:aborted","Aborted the Sign-In process to avoid sending password over insecure connection."))}return n}_enqueue(e,t,r,s,i,n){return s||(s=Promise.withResolvers()),s.resUrl_=e,s.sinfo_=t,s.options_=r,s.admin_=i,s.refresh_=n,this._busy?this._hasSameServerInstance(this._getServerInstanceRoot(e),this._busy.resUrl_)?(this._oAuthDfd&&this._oAuthDfd.oAuthWin_&&this._oAuthDfd.oAuthWin_.focus(),this._soReqs.push(s)):this._xoReqs.push(s):this._doSignIn(s),s.promise}_doSignIn(e){this._busy=e,this._rejectOnPersistedPageShow=!1;const t=t=>{const r=e.options_?.resource,s=e.resUrl_,i=e.refresh_;let n=!1;this.credentials.includes(t)||(i&&this.credentials.includes(i)?(i.userId=t.userId,i.token=t.token,i.expires=t.expires,i.validity=t.validity,i.ssl=t.ssl,i.creationTime=t.creationTime,n=!0,t=i):this.credentials.push(t)),t.resources||(t.resources=[]),t.resources.includes(r||s)||t.resources.push(r||s),t.scope=this._isServerRsrc(s)?"server":"portal",t.emitTokenChange();const o=this._soReqs,a={};this._soReqs=[],o.forEach(e=>{if(!this._isIdenticalService(s,e.resUrl_)){const r=this._getSuffix(e.resUrl_);a[r]||(a[r]=!0,t.resources.push(e.resUrl_))}}),e.resolve(t),o.forEach(e=>{this._hasSameServerInstance(this._getServerInstanceRoot(s),e.resUrl_)?e.resolve(t):this._soReqs.push(e)}),this._busy=e.resUrl_=e.sinfo_=e.refresh_=null,n||this.emit("credential-create",{credential:t}),this._soReqs.length?this._doSignIn(this._soReqs.shift()):this._xoReqs.length&&this._doSignIn(this._xoReqs.shift())},s=t=>{e.reject(t),this._busy=e.resUrl_=e.sinfo_=e.refresh_=null,this._soReqs.length?this._doSignIn(this._soReqs.shift()):this._xoReqs.length&&this._doSignIn(this._xoReqs.shift())},n=(o,h,l,d)=>{const u=e.sinfo_,p=!e.options_||!1!==e.options_.prompt,_=u.hasPortal&&this._findOAuthInfo(e.resUrl_);let f,g;if(o)t(new w({userId:o,server:u.server??void 0,token:l??void 0,expires:null!=d?Number(d):null,ssl:!!h}));else if(window!==window.parent&&this._appUrlObj.query?.["arcgis-auth-origin"]&&this._appUrlObj.query?.["arcgis-auth-portal"]&&this._hasSameServerInstance(this._getServerInstanceRoot(this._appUrlObj.query["arcgis-auth-portal"]),e.resUrl_)){window.parent.postMessage({type:"arcgis:auth:requestCredential"},this._appUrlObj.query["arcgis-auth-origin"]);const n=i(window,"message",e=>{e.source===window.parent&&e.data&&("arcgis:auth:credential"===e.data.type?(n.remove(),e.data.credential.expires<Date.now()?s(new r("identity-manager:credential-request-failed","Parent application's token has expired.")):t(new w(e.data.credential))):"arcgis:auth:error"===e.data.type&&(n.remove(),"tokenExpiredError"===e.data.error.name?s(new r("identity-manager:credential-request-failed","Parent application's token has expired.")):s(r.fromJSON(e.data.error))))});a(e.options_?.signal,()=>{n.remove()})}else if(_){let i=_._oAuthCred;if(!i){const e=new k(_,C),t=new k(_,D);e.isValid()&&t.isValid()?e.expires>t.expires?(i=e,t.destroy()):(i=t,e.destroy()):i=e.isValid()?e:t,_._oAuthCred=i}if(i.isValid()){f=new w({userId:i.userId??void 0,server:u.server??void 0,token:i.token??void 0,expires:i.expires,ssl:i.ssl??void 0,_oAuthCred:i});const r=_.appId!==i.appId&&this._doPortalSignIn(e.resUrl_);r||i.refreshToken?(e._pendingDfd=i.refreshToken?this._getOAuthToken(u.server,i.refreshToken,i.appId).then(e=>(f.expires=Date.now()+1e3*e.expires_in,f.token=e.access_token,f)):Promise.resolve(f),e._pendingDfd.then(e=>r?this._exchangeToken(e.server,_.appId,e.token).then(t=>(e.token=t,e)).catch(()=>e):e).then(e=>{t(e)}).catch(e=>{const t=e.details?.httpStatus;t>0&&404!==t?(i.destroy(),n()):s(e)})):t(f)}else if(this._oAuthLocationParams&&this._hasSameServerInstance(_.portalUrl,this._oAuthLocationParams.state.portalUrl)&&(this._oAuthLocationParams.access_token||this._oAuthLocationParams.code&&this._oAuthLocationParams.state.uid===i.stateUID&&i.codeVerifier)){const r=this._oAuthLocationParams;this._oAuthLocationParams=null,e._pendingDfd=this._processOAuthResponseParams(r,_,u).then(e=>{t(e)}).catch(s)}else{const i=()=>{p?e._pendingDfd=this.oAuthSignIn(e.resUrl_,u,_,e.options_).then(t,s):(g=new r("identity-manager:not-authenticated","User is not signed in."),s(g))};this._doPortalSignIn(e.resUrl_)?e._pendingDfd=this._getPlatformSelf(u.server,_.appId).then(e=>{c(e.portalUrl,this._appOrigin,!0)?(f=new w({userId:e.username,server:u.server??void 0,expires:Date.now()+1e3*e.expires_in,token:e.token}),t(f)):i()}).catch(i):i()}}else if(p){if(this._checkProtocol(e.resUrl_,u,s,e.admin_)){let r=e.options_;e.admin_&&(r=r||{},r.isAdmin=!0),e._pendingDfd=this.signIn(e.resUrl_,u,r).then(t,s)}}else g=new r("identity-manager:not-authenticated","User is not signed in."),s(g)},h=()=>{const r=e.sinfo_,i=r.owningSystemUrl,n=e.options_;let o,a,h,l;if(n&&(o=n.token,a=n.error,h=n.prompt),l=this._findCredential(i,{token:o,resource:e.resUrl_}),!l)for(const e of this.credentials)if(this._isIdProvider(i,e.server)){l=e;break}if(l){const i=this.findCredential(e.resUrl_,l.userId);if(i)t(i);else if(R(r,this._legacyFed)){const e=l.toJSON();e.server=r.server,e.resources=null,t(new w(e))}else{(e._pendingDfd=this.generateToken(this.findServerInfo(l.server),null,{serverUrl:e.resUrl_,token:l.token,signal:e.options_.signal,ssl:l.ssl})).then(s=>{t(new w({userId:l?.userId,server:r.server??void 0,token:s.token,expires:null!=s.expires?Number(s.expires):null,ssl:!!s.ssl,isAdmin:e.admin_,validity:s.validity}))},s)}}else{this._busy=null,o&&(e.options_.token=null);(e._pendingDfd=this.getCredential(i.replace(/\/?$/,"/sharing"),{resource:e.resUrl_,owningTenant:r.owningTenant,signal:e.options_.signal,token:o,error:a,prompt:h})).then(()=>{this._enqueue(e.resUrl_,e.sinfo_,e.options_,e,e.admin_)},t=>{e.resUrl_=e.sinfo_=e.refresh_=null,e.reject(t)})}};this._errbackFunc=s;const l=e.sinfo_.owningSystemUrl,d=this._isServerRsrc(e.resUrl_),u=e.sinfo_._restInfoPms;u?u.promise.then(t=>{const r=e.sinfo_;if(r._restInfoPms){r.adminTokenServiceUrl=r._restInfoPms.adminUrl,r._restInfoPms=null,r.tokenServiceUrl=(o("authInfo.tokenServicesUrl",t)||o("authInfo.tokenServiceUrl",t)||o("tokenServiceUrl",t))??null,r.shortLivedTokenValidity=o("authInfo.shortLivedTokenValidity",t)??null,r.currentVersion=t.currentVersion,r.owningTenant=t.owningTenant;const e=r.owningSystemUrl=t.owningSystemUrl;e&&this._portals.push(e)}d&&r.owningSystemUrl?h():n()},()=>{e.sinfo_._restInfoPms=null;const t=new r("identity-manager:server-identification-failed","Unknown resource - could not find token service endpoint.");s(t)}):d&&l?h():e.sinfo_._selfReq?e.sinfo_._selfReq.selfDfd.then(t=>{const r={};let s,i,n,o;return t&&(s=t.user?.username,r.username=s,r.allSSL=t.allSSL,i=t.supportsOAuth,o=parseFloat(t.currentVersion),"multitenant"===t.portalMode&&(n=t.customBaseUrl),e.sinfo_.currentVersion=o),e.sinfo_.webTierAuth=!!s,s&&this.normalizeWebTierAuth?this.generateToken(e.sinfo_,null,{ssl:r.allSSL}).catch(()=>null).then(e=>(r.portalToken=e?.token,r.tokenExpiration=e?.expires,r)):!s&&i&&o>=4.4&&!this._findOAuthInfo(e.resUrl_)?this._generateOAuthInfo({portalUrl:e.sinfo_.server,customBaseUrl:n,owningTenant:e.sinfo_._selfReq.owningTenant}).catch(()=>null).then(()=>r):r}).catch(()=>null).then(t=>{e.sinfo_._selfReq=null,t?n(t.username,t.allSSL,t.portalToken,t.tokenExpiration):n()}):n()}_generateOAuthInfo(e){let r,s=null,i=e.portalUrl;const n=e.customBaseUrl,o=e.owningTenant,a=!this._defaultOAuthInfo&&this._createDefaultOAuthInfo&&!this._hasTestedIfAppIsOnPortal;if(a){s=this._appUrlObj.path;const e=s.search(/\/(apps|home)\//);s=e>-1?s.slice(0,e):null}return a&&s?(this._hasTestedIfAppIsOnPortal=!0,r=t(s+"/sharing/rest",{query:{f:"json"}}).then(()=>{this._defaultOAuthInfo=new A({appId:"arcgisonline",popupCallbackUrl:s+"/home/oauth-callback.html"})})):r=Promise.resolve(),r.then(()=>{if(this._defaultOAuthInfo)return i=i.replace(/^http:/i,"https:"),t(i+"/sharing/rest/oauth2/validateRedirectUri",{query:{accountId:o,client_id:this._defaultOAuthInfo.appId,redirect_uri:m(this._defaultOAuthInfo.popupCallbackUrl),f:"json"}}).then(e=>{if(e.data.valid){const t=this._defaultOAuthInfo.clone();e.data.urlKey&&n?t.portalUrl="https://"+e.data.urlKey.toLowerCase()+"."+n:t.portalUrl=i,t.popup=window!==window.top||!(c(i,this._appOrigin)||this._gwDomains.some(e=>e.regex.test(i)&&e.regex.test(this._appOrigin))),this.oAuthInfos.push(t)}})})}_doOAuthSignIn(e,t,s,n){const o=s._oAuthCred,a={portalUrl:s.portalUrl};!s.popup&&s.preserveUrlHash&&window.location.hash&&(a.hash=window.location.hash),o.stateUID&&(a.uid=o.stateUID);const h={client_id:s.appId,response_type:o.codeVerifier?"code":"token",state:JSON.stringify(a),expiration:s.expiration,locale:s.locale,redirect_uri:this._getRedirectURI(s,!!o.codeVerifier)};s.forceLogin&&(h.force_login=!0),s.forceUserId&&s.userId&&(h.prepopulatedusername=s.userId),!s.popup&&this._doPortalSignIn(e)&&(h.redirectToUserOrgUrl=!0),o.codeVerifier&&(h.code_challenge=n||o.codeVerifier,h.code_challenge_method=n?"S256":"plain");const l=this._getAuthorizeUrl(s.portalUrl),c=l+"?"+_(h);if(s.popup){const e=window.open(c,"esriJSAPIOAuth",s.popupWindowFeatures);if(e)e.focus(),this._oAuthDfd.oAuthWin_=e,this._oAuthIntervalId=setInterval(()=>{if(e.closed){clearInterval(this._oAuthIntervalId),this._oAuthOnPopupHandle.remove();const e=this._oAuthDfd;if(e){const t=new r("identity-manager:user-aborted","ABORTED");e.reject(t)}}},500),this._oAuthOnPopupHandle=i(window,["arcgis:auth:hash","arcgis:auth:location:search"],e=>{"arcgis:auth:hash"===e.type?this.setOAuthResponseHash(e.detail):this._setOAuthResponseQueryString(e.detail)});else{const e=new r("identity-manager:popup-blocked","ABORTED");this._oAuthDfd.reject(e)}}else this._rejectOnPersistedPageShow=!0,this._oAuthRedirectFunc?this._oAuthRedirectFunc({authorizeParams:h,authorizeUrl:l,resourceUrl:e,serverInfo:t,oAuthInfo:s}):window.location.href=c}_getAuthorizeUrl(e){let t=e.replace(/^http:/i,"https:")+"/sharing/oauth2/authorize";const r=x(t);if(r?.portalHostname){const{customBaseUrl:e,portalHostname:s,urlKey:i}=r;let n=null;if("www.arcgis.com"===s||"devext.arcgis.com"===s&&(n="logindevext.arcgis.com"),n){t=v(t,i?`${i}.${e}`:s,i?`${i}.${n}`:n)}}return t}_getRedirectURI(e,t){const r=window.location.href.replace(/#.*$/,"");if(e.popup)return m(e.popupCallbackUrl);if(t){const e=l(r);return e.query&&["code","error","error_description","message_code","persist","state"].forEach(t=>{delete e.query[t]}),S(e.path,e.query)}return r}}b.prototype.declaredClass="esri.identity.IdentityManagerBase";export{b as IdentityManagerBase};
|
|
2
|
+
import e from"../config.js";import t from"../request.js";import r from"../core/Error.js";import{Evented as s}from"../core/Evented.js";import{on as i}from"../core/events.js";import{fixJson as n}from"../core/lang.js";import{getDeepValue as o}from"../core/object.js";import{onAbort as a,isAborted as h}from"../core/promiseUtils.js";import{urlToObject as l,hasSameOrigin as c,Url as d,queryToObject as u,base64UrlEncode as p,objectToQuery as _,normalize as f,getProxyRule as g,makeAbsolute as m,changeDomain as v,addQueryParameters as S}from"../core/urlUtils.js";import w from"./Credential.js";import I from"./IdentityModal.js";import k from"./OAuthCredential.js";import A from"./OAuthInfo.js";import U from"./ServerInfo.js";import{isSecureProxyService as y,normalizeArcGISOnlineOrgDomain as P,parseKnownArcGISOnlineDomain as x}from"../portal/support/urlUtils.js";const O={},T=e=>{const t=new d(e.owningSystemUrl).host,r=new d(e.server).host,s=/.+\.arcgis\.com$/i;return s.test(t)&&s.test(r)},R=(e,t)=>!!(T(e)&&t&&t.some(t=>t.test(e.server)));let C=null,D=null;try{C=window.localStorage,D=window.sessionStorage}catch{}class b extends s{constructor(){super(),this._portalConfig=globalThis.esriGeowConfig,this.serverInfos=[],this.oAuthInfos=[],this.credentials=[],this._soReqs=[],this._xoReqs=[],this._portals=[],this._defaultOAuthInfo=null,this._defaultTokenValidity=60,this.dialog=null,this.tokenValidity=null,this.normalizeWebTierAuth=!1,this._appOrigin="null"!==window.origin?window.origin:window.location.origin,this._appUrlObj=l(window.location.href),this._busy=null,this._rejectOnPersistedPageShow=!1,this._oAuthLocationParams=null,this._gwTokenUrl="/sharing/rest/generateToken",this._agsRest="/rest/services",this._agsPortal=/\/sharing(\/|$)/i,this._agsAdmin=/(https?:\/\/[^/]+\/[^/]+)\/admin\/?(\/.*)?$/i,this._adminSvcs=/\/rest\/admin\/services(\/|$)/i,this._gwDomains=[{regex:/^https?:\/\/www\.arcgis\.com/i,customBaseUrl:"maps.arcgis.com",tokenServiceUrl:"https://www.arcgis.com/sharing/rest/generateToken"},{regex:/^https?:\/\/(?:dev|[a-z\d-]+\.mapsdev)\.arcgis\.com/i,customBaseUrl:"mapsdev.arcgis.com",tokenServiceUrl:"https://dev.arcgis.com/sharing/rest/generateToken"},{regex:/^https?:\/\/(?:devext|[a-z\d-]+\.mapsdevext)\.arcgis\.com/i,customBaseUrl:"mapsdevext.arcgis.com",tokenServiceUrl:"https://devext.arcgis.com/sharing/rest/generateToken"},{regex:/^https?:\/\/(?:qaext|[a-z\d-]+\.mapsqa)\.arcgis\.com/i,customBaseUrl:"mapsqa.arcgis.com",tokenServiceUrl:"https://qaext.arcgis.com/sharing/rest/generateToken"},{regex:/^https?:\/\/[a-z\d-]+\.maps\.arcgis\.com/i,customBaseUrl:"maps.arcgis.com",tokenServiceUrl:"https://www.arcgis.com/sharing/rest/generateToken"}],this._legacyFed=[],this._regexSDirUrl=/http.+\/rest\/services\/?/gi,this._regexServerType=/(\/(FeatureServer|GPServer|GeoDataServer|GeocodeServer|GeoenrichmentServer|GeometryServer|GlobeServer|ImageServer|KnowledgeGraphServer|MapServer|MissionServer|MobileServer|NAServer|NetworkDiagramServer|OGCFeatureServer|ParcelFabricServer|RelationalCatalogServer|SceneServer|StreamServer|UtilityNetworkServer|ValidationServer|VectorTileServer|VersionManagementServer|VideoServer|3DTilesServer)).*/gi,this._gwUser=/http.+\/users\/([^/]+).*/i,this._gwItem=/http.+\/items\/([^/]+).*/i,this._gwGroup=/http.+\/groups\/([^/]+).*/i,this._rePortalTokenSvc=/\/sharing(\/rest)?\/generatetoken/i,this._createDefaultOAuthInfo=!0,this._hasTestedIfAppIsOnPortal=!1,this._getPlatformSelfError=null,this._getOAuthLocationParams(),window.addEventListener("pageshow",e=>{this._pageShowHandler(e)})}registerServers(e){const t=this.serverInfos;t?(e=e.filter(e=>!this.findServerInfo(e.server)),this.serverInfos=t.concat(e)):this.serverInfos=e,e.forEach(e=>{e.owningSystemUrl&&this._portals.push(e.owningSystemUrl),e.hasPortal&&this._portals.push(e.server)})}registerOAuthInfos(e){const t=this.oAuthInfos;if(t){for(const r of e){const e=this.findOAuthInfo(r.portalUrl);e&&t.splice(t.indexOf(e),1)}this.oAuthInfos=t.concat(e)}else this.oAuthInfos=e}registerToken(e){e={...e};const t=this._sanitizeUrl(e.server),r=this._isServerRsrc(t);let s,i=this.findServerInfo(t),n=!0;i||(i=new U,i.server=this._getServerInstanceRoot(t),r?i.hasServer=!0:(i.tokenServiceUrl=this._getTokenSvcUrl(t),i.hasPortal=!0),this.registerServers([i])),s=this._findCredential(t),s?(delete e.server,Object.assign(s,e),n=!1):(s=new w({userId:e.userId,server:i.server??void 0,token:e.token,expires:e.expires,ssl:e.ssl,scope:r?"server":"portal"}),s.resources=[t],this.credentials.push(s)),s.emitTokenChange(!1),n||s.refreshServerTokens()}toJSON(){return n({serverInfos:this.serverInfos.map(e=>e.toJSON()),oAuthInfos:this.oAuthInfos.map(e=>e.toJSON()),credentials:this.credentials.map(e=>e.toJSON())})}initialize(e){if(!e)return;"string"==typeof e&&(e=JSON.parse(e));const t=e.serverInfos,r=e.oAuthInfos,s=e.credentials;if(t){const e=[];t.forEach(t=>{t.server&&t.tokenServiceUrl&&e.push(t.declaredClass?t:new U(t))}),e.length&&this.registerServers(e)}if(r){const e=[];r.forEach(t=>{t.appId&&e.push(t.declaredClass?t:new A(t))}),e.length&&this.registerOAuthInfos(e)}s&&s.forEach(e=>{e.server&&e.token&&e.expires&&e.expires>Date.now()&&((e=e.declaredClass?e:new w(e)).emitTokenChange(),this.credentials.push(e))})}findServerInfo(e){let t;e=this._sanitizeUrl(e);for(const r of this.serverInfos)if(this._hasSameServerInstance(r.server,e)){t=r;break}return t}findOAuthInfo(e){let t;e=this._sanitizeUrl(e);for(const r of this.oAuthInfos)if(this._hasSameServerInstance(r.portalUrl,e)){t=r;break}return t}findCredential(e,t){if(!e)return;let r;e=this._sanitizeUrl(e);const s=this._isServerRsrc(e)?"server":"portal";if(t){for(const i of this.credentials)if(this._hasSameServerInstance(i.server,e)&&t===i.userId&&i.scope===s){r=i;break}}else for(const i of this.credentials)if(this._hasSameServerInstance(i.server,e)&&-1!==this._getIdenticalSvcIdx(e,i)&&i.scope===s){r=i;break}return r}getCredential(e,t){let s,i=!1,n=!0;t&&(i=!(!t.token&&!t.credential),s=t.error,n=!1!==t.prompt),t={...t},e=this._sanitizeUrl(e);const o=new AbortController,l=Promise.withResolvers();if(t.signal&&a(t.signal,()=>{o.abort()}),a(o,()=>{l.reject(new r("identity-manager:user-aborted","ABORTED"))}),h(o))return l.promise;t.signal=o.signal;const d=this._isAdminResource(e),u=i?this.findCredential(e):null;let p;if(u&&498===s?.details?.httpStatus)u.destroy();else if(u)return p=new r("identity-manager:not-authorized","You are currently signed in as: '"+u.userId+"'. You do not have access to this resource: "+e,{error:s}),l.reject(p),l.promise;const _=this._findCredential(e,t);if(_)return l.resolve(_),l.promise;let f=this.findServerInfo(e);if(f)!f.hasPortal&&f.server&&f.owningSystemUrl&&this._hasSameServerInstance(f.server,f.owningSystemUrl)&&(f.hasPortal=!0),!f.hasServer&&this._isServerRsrc(e)&&(f._restInfoPms=this._getTokenSvcUrl(e),f.hasServer=!0);else{const t=this._getTokenSvcUrl(e);if(!t)return p=new r("identity-manager:unknown-resource","Unknown resource - could not find token service endpoint."),l.reject(p),l.promise;f=new U,f.server=this._getServerInstanceRoot(e),"string"==typeof t?(f.tokenServiceUrl=t,f.hasPortal=!0):(f._restInfoPms=t,f.hasServer=!0),this.registerServers([f])}return f.hasPortal&&void 0===f._selfReq&&(n||c(f.tokenServiceUrl,this._appOrigin)||this._gwDomains.some(e=>e.tokenServiceUrl===f.tokenServiceUrl))&&(f._selfReq={owningTenant:t?.owningTenant,selfDfd:this._getPortalSelf(f.tokenServiceUrl.replace(this._rePortalTokenSvc,"/sharing/rest/portals/self"),e)}),this._enqueue(e,f,t,l,d)}getResourceName(e){return this._isRESTService(e)?e.replace(this._regexSDirUrl,"").replace(this._regexServerType,"")||"":this._gwUser.test(e)&&e.replace(this._gwUser,"$1")||this._gwItem.test(e)&&e.replace(this._gwItem,"$1")||this._gwGroup.test(e)&&e.replace(this._gwGroup,"$1")||""}generateToken(e,s,i){const n=this._rePortalTokenSvc.test(e.tokenServiceUrl),o=new d(this._appOrigin),a=e.shortLivedTokenValidity;let h,l,u,p,_,f,g,m;s&&(m=this.tokenValidity||a||this._defaultTokenValidity,m>a&&a>0&&(m=a)),i&&(h=i.isAdmin,l=i.serverUrl,u=i.token,f=i.signal,g=i.ssl,e.customParameters=i.customParameters),h?p=e.adminTokenServiceUrl:(p=e.tokenServiceUrl,_=new d(p.toLowerCase()),e.webTierAuth&&i?.serverUrl&&!g&&"http"===o.scheme&&(c(o.uri,p,!0)||"https"===_.scheme&&o.host===_.host&&"7080"===o.port&&"7443"===_.port)&&(p=p.replace(/^https:/i,"http:").replace(/:7443/i,":7080")));const v={query:{request:"getToken",username:s?.username,password:s?.password,serverUrl:l,token:u,expiration:m,referer:h||n?this._appOrigin:null,client:h?"referer":null,f:"json",...e.customParameters},method:"post",authMode:"anonymous",useProxy:this._useProxy(e,i),signal:f};n||(v.withCredentials=!1);return t(p,v).then(t=>{const i=t.data;if(!i?.token)return new r("identity-manager:authentication-failed","Unable to generate token");const n=e.server;return O[n]||(O[n]={}),s&&(O[n][s.username]=s.password),i.validity=m,i})}isBusy(){return!!this._busy}async checkSignInStatus(e){return(await this.checkAppAccess(e,"")).credential}checkAppAccess(e,s,i){let n=!1;return this.getCredential(e,{prompt:!1}).then(o=>{let a;const h={f:"json"};if("portal"===o.scope)if(s&&(this._doPortalSignIn(e)||i?.force))a=o.server+"/sharing/rest/oauth2/validateAppAccess",h.client_id=s;else{if(!o.token)return{credential:o};a=o.server+"/sharing/rest"}else{if(!o.token)return{credential:o};a=o.server+"/rest/services"}return o.token&&(h.token=o.token),t(a,{query:h,authMode:"anonymous"}).then(e=>{if(!1===e.data.valid)throw new r("identity-manager:not-authorized",`You are currently signed in as: '${o.userId}'.`,e.data);return n=!!e.data.viewOnlyUserTypeApp,{credential:o}}).catch(e=>{if("identity-manager:not-authorized"===e.name)throw e;const t=e.details?.httpStatus;if(498===t)throw o.destroy(),new r("identity-manager:not-authenticated","User is not signed in.");if(400===t)throw new r("identity-manager:invalid-request","Bad request");return{credential:o}})}).then(e=>({credential:e.credential,viewOnly:n}))}setOAuthResponseHash(e){e&&(e.startsWith("#")&&(e=e.slice(1)),this._processOAuthPopupParams(u(e)))}setOAuthRedirectionHandler(e){this._oAuthRedirectFunc=e}setProtocolErrorHandler(e){this._protocolFunc=e}signIn(e,t,s={}){const i=Promise.withResolvers(),n=()=>{l?.remove(),c?.remove(),this.dialog?.destroy(),this.dialog=l=c=null},o=()=>{n(),this._oAuthDfd=null,i.reject(new r("identity-manager:user-aborted","ABORTED"))};s.signal&&a(s.signal,()=>{o()});const h=new I({open:!0,resource:this.getResourceName(e),server:t.server});this.dialog=h,this.emit("dialog-create");let l=h.on("cancel",o),c=h.on("submit",e=>{this.generateToken(t,e,{isAdmin:s.isAdmin,signal:s.signal}).then(r=>{n();const o=new w({userId:e.username,server:t.server??void 0,token:r.token,expires:null!=r.expires?Number(r.expires):null,ssl:!!r.ssl,isAdmin:s.isAdmin,validity:r.validity});i.resolve(o)}).catch(e=>{h.error=e,h.signingIn=!1})});return i.promise}oAuthSignIn(e,t,s,i){this._oAuthDfd=Promise.withResolvers();const n=this._oAuthDfd;let o;i?.signal&&a(i.signal,()=>{const e=this._oAuthDfd&&this._oAuthDfd.oAuthWin_;e&&!e.closed?e.close():this.dialog&&d()}),n.resUrl_=e,n.sinfo_=t,n.oinfo_=s;const h=s._oAuthCred;if(h.storage&&("authorization-code"===s.flowType||"auto"===s.flowType&&t.currentVersion>=8.4)){let e=crypto.getRandomValues(new Uint8Array(32));o=p(e),h.codeVerifier=o,e=crypto.getRandomValues(new Uint8Array(32)),h.stateUID=p(e),h.save()||(h.codeVerifier=o=null)}else h.codeVerifier=null;let l,c;this._getCodeChallenge(o).then(r=>{const n=!i||!1!==i.oAuthPopupConfirmation;if(!s.popup||!n)return void this._doOAuthSignIn(e,t,s,r);const o=new I({oAuthPrompt:!0,server:t.server,open:!0});this.dialog=o,this.emit("dialog-create"),l=o.on("cancel",d),c=o.on("submit",()=>{u(),this._doOAuthSignIn(e,t,s,r)})});const d=()=>{u(),this._oAuthDfd=null,n.reject(new r("identity-manager:user-aborted","ABORTED"))},u=()=>{l?.remove(),c?.remove(),this.dialog?.destroy(),this.dialog=null};return n.promise}async refreshToken(e){const t=this.findServerInfo(e.server),r=t?.owningSystemUrl,s=!!r&&"server"===e.scope,i=s&&R(t,this._legacyFed),n=t.webTierAuth,o=n&&this.normalizeWebTierAuth,a=O[e.server],h=a?.[e.userId];let l,c=e.resources&&e.resources[0],d=s?this.findServerInfo(r):null,u={username:e.userId,password:h};if(n&&!o)return;s&&!d&&this.serverInfos.some(e=>(this._isIdProvider(r,e.server)&&(d=e),!!d));const p=d?this.findCredential(d.server,e.userId):null;if(!s||p){if(!i){if(s)l={serverUrl:c,token:p?.token,ssl:p?.ssl};else if(o)u=null,l={ssl:e.ssl};else{if(!h){let r;return c&&(c=this._sanitizeUrl(c),e._enqueued=1,r=this._enqueue(c,t,null,null,e.isAdmin,e),r.then(()=>{e._enqueued=0,e.refreshServerTokens()}).catch(()=>{e._enqueued=0})),r}e.isAdmin&&(l={isAdmin:!0})}return this.generateToken(s?d:t,s?null:u,l).then(t=>{e.token=t.token,e.expires=null!=t.expires?Number(t.expires):null,e.creationTime=Date.now(),e.validity=t.validity,e.emitTokenChange(),e.refreshServerTokens()}).catch(()=>{})}p?.refreshToken()}}refreshServerTokens(e){"portal"===e.scope&&this.credentials.forEach(t=>{const r=this.findServerInfo(t.server),s=r?.owningSystemUrl;t!==e&&t.userId===e.userId&&s&&"server"===t.scope&&(this._hasSameServerInstance(e.server,s)||this._isIdProvider(s,e.server))&&(R(r,this._legacyFed)?(t.token=e.token,t.expires=e.expires,t.creationTime=e.creationTime,t.validity=e.validity,t.emitTokenChange()):t.refreshToken())})}destroyCredentials(){if(this.credentials){this.credentials.slice().forEach(e=>{e.destroy()})}this.emit("credentials-destroy")}enablePostMessageAuth(e="https://www.arcgis.com/sharing/rest"){this._postMessageAuthHandle&&this._postMessageAuthHandle.remove(),this._postMessageAuthHandle=i(window,"message",t=>{if((t.origin===this._appOrigin||t.origin.endsWith(".arcgis.com"))&&"arcgis:auth:requestCredential"===t.data?.type){const r=t.source;this.getCredential(e).then(e=>{r.postMessage({type:"arcgis:auth:credential",credential:{expires:e.expires,server:e.server,ssl:e.ssl,token:e.token,userId:e.userId}},t.origin)}).catch(e=>{r.postMessage({type:"arcgis:auth:error",error:{name:e.name,message:e.message}},t.origin)})}})}disablePostMessageAuth(){this._postMessageAuthHandle&&(this._postMessageAuthHandle.remove(),this._postMessageAuthHandle=null)}_getOAuthLocationParams(){let e=window.location.hash;if(e){e.startsWith("#")&&(e=e.slice(1));const t=u(e);let r=!1;if(t.access_token&&t.expires_in&&t.state&&t.hasOwnProperty("username"))try{t.state=JSON.parse(t.state),t.state.portalUrl&&(this._oAuthLocationParams=t,r=!0)}catch{}else if(t.error&&t.error_description&&(console.log("IdentityManager OAuth Error: ",t.error," - ",t.error_description),"access_denied"===t.error&&(r=!0,t.state)))try{t.state=JSON.parse(t.state)}catch{}r&&(window.location.hash=t.state?.hash||"")}let t=window.location.search;if(t){t.startsWith("?")&&(t=t.slice(1));const e=u(t);let r=!1;if(e.code&&e.state)try{e.state=JSON.parse(e.state),e.state.portalUrl&&e.state.uid&&(this._oAuthLocationParams=e,r=!0)}catch{}else if(e.error&&e.error_description&&(console.log("IdentityManager OAuth Error: ",e.error," - ",e.error_description),"access_denied"===e.error&&(r=!0,e.state)))try{e.state=JSON.parse(e.state)}catch{}if(r){const t={...e};["code","error","error_description","message_code","persist","state"].forEach(e=>{delete t[e]});const r=_(t),s=window.location.pathname+(r?`?${r}`:"")+(e.state?.hash||"");window.history.replaceState(window.history.state,"",s)}}}_getOAuthToken(e,r,s,i,n){return e=e.replace(/^http:/i,"https:"),t(`${e}/sharing/rest/oauth2/token`,{authMode:"anonymous",method:"post",query:i&&n?{grant_type:"authorization_code",code:r,redirect_uri:i,client_id:s,code_verifier:n}:{grant_type:"refresh_token",refresh_token:r,client_id:s}}).then(e=>e.data)}async _getCodeChallenge(e){if(e&&globalThis.isSecureContext){const t=(new TextEncoder).encode(e),r=await crypto.subtle.digest("SHA-256",t);return p(new Uint8Array(r))}return null}_pageShowHandler(e){if(e.persisted&&this.isBusy()&&this._rejectOnPersistedPageShow){const e=new r("identity-manager:user-aborted","ABORTED");this._errbackFunc(e)}}_findCredential(e,t){let r,s,i,n,o=-1;const a=t?.token,h=t?.resource,l=this._isServerRsrc(e)?"server":"portal",c=this.credentials.filter(t=>this._hasSameServerInstance(t.server,e)&&t.scope===l);if(e=h||e,c.length)if(1===c.length){if(r=c[0],i=this.findServerInfo(r.server),s=i?.owningSystemUrl,n=s?this.findCredential(s,r.userId):void 0,o=this._getIdenticalSvcIdx(e,r),!a)return-1===o&&r.resources.push(e),this._addResource(e,n),r;-1!==o&&(r.resources.splice(o,1),this._removeResource(e,n))}else{let t,r;if(c.some(a=>(r=this._getIdenticalSvcIdx(e,a),-1!==r&&(t=a,i=this.findServerInfo(t.server),s=i?.owningSystemUrl,n=s?this.findCredential(s,t.userId):void 0,o=r,!0))),a)t&&(t.resources.splice(o,1),this._removeResource(e,n));else if(t)return this._addResource(e,n),t}}_findOAuthInfo(e){let t=this.findOAuthInfo(e);if(!t)for(const r of this.oAuthInfos)if(this._isIdProvider(r.portalUrl,e)){t=r;break}return t}_addResource(e,t){t&&-1===this._getIdenticalSvcIdx(e,t)&&t.resources.push(e)}_removeResource(e,t){let r=-1;t&&(r=this._getIdenticalSvcIdx(e,t),r>-1&&t.resources.splice(r,1))}_useProxy(e,t){return t?.isAdmin&&!c(e.adminTokenServiceUrl,this._appOrigin)||!this._isPortalDomain(e.tokenServiceUrl)&&"10.1"===String(e.currentVersion)&&!c(e.tokenServiceUrl,this._appOrigin)}_getOrigin(e){const t=new d(e);return t.scheme+"://"+t.host+(null!=t.port?":"+t.port:"")}_getServerInstanceRoot(e){const t=e.toLowerCase();let r=t.indexOf(this._agsRest);return-1===r&&this._isAdminResource(e)&&(r=this._agsAdmin.test(e)?e.replace(this._agsAdmin,"$1").length:e.search(this._adminSvcs)),-1!==r||y(t)||(r=t.indexOf("/sharing")),-1===r&&t.endsWith("/")&&(r=t.length-1),r>-1?e.slice(0,r):e}_hasSameServerInstance(e,t){return e.endsWith("/")&&(e=e.slice(0,-1)),e=e.toLowerCase(),t=this._getServerInstanceRoot(t).toLowerCase(),e=P(e),t=P(t),(e=e.slice(Math.max(0,e.indexOf(":"))))===(t=t.slice(Math.max(0,t.indexOf(":"))))}_sanitizeUrl(t){const r=(e.request.proxyUrl||"").toLowerCase(),s=r?t.toLowerCase().indexOf(r+"?"):-1;return-1!==s&&(t=t.slice(s+r.length+1)),t=f(t),l(t).path}_isRESTService(e){return e.includes(this._agsRest)}_isAdminResource(e){return this._agsAdmin.test(e)||this._adminSvcs.test(e)}_isServerRsrc(e){return this._isRESTService(e)||this._isAdminResource(e)}_isIdenticalService(e,t){let r=!1;if(this._isRESTService(e)&&this._isRESTService(t)){const s=this._getSuffix(e).toLowerCase(),i=this._getSuffix(t).toLowerCase();if(r=s===i,!r){const e=/(.*)\/(MapServer|FeatureServer|UtilityNetworkServer).*/gi;r=s.replaceAll(e,"$1")===i.replaceAll(e,"$1")}}else this._isAdminResource(e)&&this._isAdminResource(t)?r=!0:this._isServerRsrc(e)||this._isServerRsrc(t)||!this._isPortalDomain(e)||(r=!0);return r}_isPortalDomain(t){const r=new d(t.toLowerCase()),s=this._portalConfig;let i=this._gwDomains.some(e=>e.regex.test(r.uri));return!i&&s&&(i=this._hasSameServerInstance(this._getServerInstanceRoot(s.restBaseUrl),r.uri)),i||e.portalUrl&&(i=c(r,e.portalUrl,!0)),i||(i=this._portals.some(e=>this._hasSameServerInstance(e,r.uri))),i=i||this._agsPortal.test(r.path),i}_isIdProvider(e,t){let r=-1,s=-1;this._gwDomains.forEach((i,n)=>{-1===r&&i.regex.test(e)&&(r=n),-1===s&&i.regex.test(t)&&(s=n)});let i=!1;if(r>-1&&s>-1&&(0===r||4===r?0!==s&&4!==s||(i=!0):1===r?1!==s&&2!==s||(i=!0):2===r?2===s&&(i=!0):3===r&&3===s&&(i=!0)),!i){const r=this.findServerInfo(t),s=r?.owningSystemUrl;s&&T(r)&&this._isPortalDomain(s)&&this._isIdProvider(e,s)&&(i=!0)}return i}_getIdenticalSvcIdx(e,t){let r=-1;for(let s=0;s<t.resources.length;s++){const i=t.resources[s];if(this._isIdenticalService(e,i)){r=s;break}}return r}_getSuffix(e){return e.replace(this._regexSDirUrl,"").replace(this._regexServerType,"$1")}_getTokenSvcUrl(e){let r,s,i;if(this._isRESTService(e)||this._isAdminResource(e)){const i=this._getServerInstanceRoot(e);return r=i+"/admin/generateToken",s=t(e=i+"/rest/info",{query:{f:"json"}}).then(e=>e.data),{adminUrl:r,promise:s}}if(this._isPortalDomain(e)){let t="";if(this._gwDomains.some(r=>(r.regex.test(e)&&(t=r.tokenServiceUrl),!!t)),t||this._portals.some(r=>(this._hasSameServerInstance(r,e)&&(t=r+this._gwTokenUrl),!!t)),t||(i=e.toLowerCase().indexOf("/sharing"),-1!==i&&(t=e.slice(0,i)+this._gwTokenUrl)),t||(t=this._getOrigin(e)+this._gwTokenUrl),t){const r=new d(e).port;/^http:\/\//i.test(e)&&"7080"===r&&(t=t.replace(/:7080/i,":7443")),t=t.replace(/http:/i,"https:")}return t}}_processOAuthResponseParams(e,t,r){const s=t._oAuthCred;if(e.code){const i=s.codeVerifier;return s.codeVerifier=null,s.stateUID=null,s.save(),this._getOAuthToken(r.server,e.code,t.appId,this._getRedirectURI(t,!0),i).then(i=>{const n=new w({userId:i.username,server:r.server??void 0,token:i.access_token,expires:Date.now()+1e3*i.expires_in,ssl:i.ssl,oAuthState:e.state,_oAuthCred:s});return t.userId=n.userId,s.storage=i.persist?C:D,s.refreshToken=i.refresh_token,s.token=null,s.expires=i.refresh_token_expires_in?Date.now()+1e3*i.refresh_token_expires_in:null,s.userId=n.userId,s.ssl=n.ssl,s.save(),n})}const i=new w({userId:e.username,server:r.server??void 0,token:e.access_token,expires:Date.now()+1e3*Number(e.expires_in),ssl:"true"===e.ssl,oAuthState:e.state,_oAuthCred:s});return t.userId=i.userId,s.storage=e.persist?C:D,s.refreshToken=null,s.token=i.token,s.expires=i.expires,s.userId=i.userId,s.ssl=i.ssl,s.save(),Promise.resolve(i)}_processOAuthPopupParams(e){const t=this._oAuthDfd;if(this._oAuthDfd=null,t)if(clearInterval(this._oAuthIntervalId),this._oAuthOnPopupHandle?.remove(),e.error){const s="access_denied"===e.error,i=new r(s?"identity-manager:user-aborted":"identity-manager:authentication-failed",s?"ABORTED":"OAuth: "+e.error+" - "+e.error_description);t.reject(i)}else this._processOAuthResponseParams(e,t.oinfo_,t.sinfo_).then(e=>{t.resolve(e)}).catch(e=>{t.reject(e)})}_setOAuthResponseQueryString(e){e&&(e.startsWith("?")&&(e=e.slice(1)),this._processOAuthPopupParams(u(e)))}async _exchangeToken(e,r,s){return(await t(`${e}/sharing/rest/oauth2/exchangeToken`,{authMode:"anonymous",method:"post",query:{f:"json",client_id:r,token:s}})).data.token}async _getPlatformSelf(e,r){if(this._getPlatformSelfError&&Date.now()-this._getPlatformSelfError[1]<1e3)throw this._getPlatformSelfError[0];e=e.replace(/^http:/i,"https:");try{const s=await t(`${e}/sharing/rest/oauth2/platformSelf`,{authMode:"anonymous",headers:{"X-Esri-Auth-Client-Id":r,"X-Esri-Auth-Redirect-Uri":window.location.href.replace(/#.*$/,"")},method:"post",query:{f:"json",expiration:30},withCredentials:!0});return this._getPlatformSelfError=null,s.data}catch(s){throw"OAUTH_0066"===s.details?.messageCode&&(this._getPlatformSelfError=[s,Date.now()]),s}}_getPortalSelf(e,r){let s;if(this._gwDomains.some(t=>(t.regex.test(e)&&(s=t.customBaseUrl),!!s)),s)return Promise.resolve({allSSL:!0,currentVersion:"8.4",customBaseUrl:s,portalMode:"multitenant",supportsOAuth:!0});this._appOrigin.startsWith("https:")?e=e.replace(/^http:/i,"https:").replace(/:7080/i,":7443"):/^http:/i.test(r)&&(e=e.replace(/^https:/i,"http:").replace(/:7443/i,":7080"));return t(e,{query:{f:"json"},authMode:"anonymous",withCredentials:!0}).then(e=>e.data)}_doPortalSignIn(e){const t=this._portalConfig,r=window.location.href,s=this.findServerInfo(e);return!(!t&&!this._isPortalDomain(r)||!(s?s.hasPortal||s.owningSystemUrl&&this._isPortalDomain(s.owningSystemUrl):this._isPortalDomain(e))||!(this._isIdProvider(r,e)||t&&(this._hasSameServerInstance(this._getServerInstanceRoot(t.restBaseUrl),e)||this._isIdProvider(t.restBaseUrl,e))||c(r,e,!0)))}_checkProtocol(e,t,s,i){let n=!0;const o=i?t.adminTokenServiceUrl:t.tokenServiceUrl;if(o.trim().toLowerCase().startsWith("https:")&&!this._appOrigin.startsWith("https:")&&g(o)&&(n=!!this._protocolFunc&&!!this._protocolFunc({resourceUrl:e,serverInfo:t}),!n)){s(new r("identity-manager:aborted","Aborted the Sign-In process to avoid sending password over insecure connection."))}return n}_enqueue(e,t,r,s,i,n){return s||(s=Promise.withResolvers()),s.resUrl_=e,s.sinfo_=t,s.options_=r,s.admin_=i,s.refresh_=n,this._busy?this._hasSameServerInstance(this._getServerInstanceRoot(e),this._busy.resUrl_)?(this._oAuthDfd&&this._oAuthDfd.oAuthWin_&&this._oAuthDfd.oAuthWin_.focus(),this._soReqs.push(s)):this._xoReqs.push(s):this._doSignIn(s),s.promise}_doSignIn(e){this._busy=e,this._rejectOnPersistedPageShow=!1;const t=t=>{const r=e.options_?.resource,s=e.resUrl_,i=e.refresh_;let n=!1;this.credentials.includes(t)||(i&&this.credentials.includes(i)?(i.userId=t.userId,i.token=t.token,i.expires=t.expires,i.validity=t.validity,i.ssl=t.ssl,i.creationTime=t.creationTime,n=!0,t=i):this.credentials.push(t)),t.resources||(t.resources=[]),t.resources.includes(r||s)||t.resources.push(r||s),t.scope=this._isServerRsrc(s)?"server":"portal",t.emitTokenChange();const o=this._soReqs,a={};this._soReqs=[],o.forEach(e=>{if(!this._isIdenticalService(s,e.resUrl_)){const r=this._getSuffix(e.resUrl_);a[r]||(a[r]=!0,t.resources.push(e.resUrl_))}}),e.resolve(t),o.forEach(e=>{this._hasSameServerInstance(this._getServerInstanceRoot(s),e.resUrl_)?e.resolve(t):this._soReqs.push(e)}),this._busy=e.resUrl_=e.sinfo_=e.refresh_=null,n||this.emit("credential-create",{credential:t}),this._soReqs.length?this._doSignIn(this._soReqs.shift()):this._xoReqs.length&&this._doSignIn(this._xoReqs.shift())},s=t=>{e.reject(t),this._busy=e.resUrl_=e.sinfo_=e.refresh_=null,this._soReqs.length?this._doSignIn(this._soReqs.shift()):this._xoReqs.length&&this._doSignIn(this._xoReqs.shift())},n=(o,h,l,d)=>{const u=e.sinfo_,p=!e.options_||!1!==e.options_.prompt,_=u.hasPortal&&this._findOAuthInfo(e.resUrl_);let f,g;if(o)t(new w({userId:o,server:u.server??void 0,token:l??void 0,expires:null!=d?Number(d):null,ssl:!!h}));else if(window!==window.parent&&this._appUrlObj.query?.["arcgis-auth-origin"]&&this._appUrlObj.query?.["arcgis-auth-portal"]&&this._hasSameServerInstance(this._getServerInstanceRoot(this._appUrlObj.query["arcgis-auth-portal"]),e.resUrl_)){window.parent.postMessage({type:"arcgis:auth:requestCredential"},this._appUrlObj.query["arcgis-auth-origin"]);const n=i(window,"message",e=>{e.source===window.parent&&e.data&&("arcgis:auth:credential"===e.data.type?(n.remove(),e.data.credential.expires<Date.now()?s(new r("identity-manager:credential-request-failed","Parent application's token has expired.")):t(new w(e.data.credential))):"arcgis:auth:error"===e.data.type&&(n.remove(),"tokenExpiredError"===e.data.error.name?s(new r("identity-manager:credential-request-failed","Parent application's token has expired.")):s(r.fromJSON(e.data.error))))});a(e.options_?.signal,()=>{n.remove()})}else if(_){let i=_._oAuthCred;if(!i){const e=new k(_,C),t=new k(_,D);e.isValid()&&t.isValid()?e.expires>t.expires?(i=e,t.destroy()):(i=t,e.destroy()):i=e.isValid()?e:t,_._oAuthCred=i}if(i.isValid()){f=new w({userId:i.userId??void 0,server:u.server??void 0,token:i.token??void 0,expires:i.expires,ssl:i.ssl??void 0,_oAuthCred:i});const r=_.appId!==i.appId&&this._doPortalSignIn(e.resUrl_);r||i.refreshToken?(e._pendingDfd=i.refreshToken?this._getOAuthToken(u.server,i.refreshToken,i.appId).then(e=>(f.expires=Date.now()+1e3*e.expires_in,f.token=e.access_token,f)):Promise.resolve(f),e._pendingDfd.then(e=>r?this._exchangeToken(e.server,_.appId,e.token).then(t=>(e.token=t,e)).catch(()=>e):e).then(e=>{t(e)}).catch(e=>{const t=e.details?.httpStatus;t>0&&404!==t?(i.destroy(),n()):s(e)})):t(f)}else if(this._oAuthLocationParams&&this._hasSameServerInstance(_.portalUrl,this._oAuthLocationParams.state.portalUrl)&&(this._oAuthLocationParams.access_token||this._oAuthLocationParams.code&&this._oAuthLocationParams.state.uid===i.stateUID&&i.codeVerifier)){const r=this._oAuthLocationParams;this._oAuthLocationParams=null,e._pendingDfd=this._processOAuthResponseParams(r,_,u).then(e=>{t(e)}).catch(s)}else{const i=()=>{p?e._pendingDfd=this.oAuthSignIn(e.resUrl_,u,_,e.options_).then(t,s):(g=new r("identity-manager:not-authenticated","User is not signed in."),s(g))};this._doPortalSignIn(e.resUrl_)?e._pendingDfd=this._getPlatformSelf(u.server,_.appId).then(e=>{c(e.portalUrl,this._appOrigin,!0)?(f=new w({userId:e.username,server:u.server??void 0,expires:Date.now()+1e3*e.expires_in,token:e.token}),t(f)):i()}).catch(i):i()}}else if(p){if(this._checkProtocol(e.resUrl_,u,s,e.admin_)){let r=e.options_;e.admin_&&(r=r||{},r.isAdmin=!0),e._pendingDfd=this.signIn(e.resUrl_,u,r).then(t,s)}}else g=new r("identity-manager:not-authenticated","User is not signed in."),s(g)},h=()=>{const r=e.sinfo_,i=r.owningSystemUrl,n=e.options_;let o,a,h;if(n&&(o=n.token,a=n.prompt),h=this._findCredential(i,{resource:e.resUrl_}),!h)for(const e of this.credentials)if(this._isIdProvider(i,e.server)){h=e;break}if(h){const i=this.findCredential(e.resUrl_,h.userId);if(i)t(i);else if(R(r,this._legacyFed)){const e=h.toJSON();e.server=r.server,e.resources=null,t(new w(e))}else{(e._pendingDfd=this.generateToken(this.findServerInfo(h.server),null,{serverUrl:e.resUrl_,token:h.token,signal:e.options_.signal,ssl:h.ssl})).then(s=>{t(new w({userId:h?.userId,server:r.server??void 0,token:s.token,expires:null!=s.expires?Number(s.expires):null,ssl:!!s.ssl,isAdmin:e.admin_,validity:s.validity}))},s)}}else{this._busy=null,o&&(e.options_.token=null);(e._pendingDfd=this.getCredential(i.replace(/\/?$/,"/sharing"),{resource:e.resUrl_,owningTenant:r.owningTenant,signal:e.options_.signal,prompt:a})).then(()=>{this._enqueue(e.resUrl_,e.sinfo_,e.options_,e,e.admin_)},t=>{e.resUrl_=e.sinfo_=e.refresh_=null,e.reject(t)})}};this._errbackFunc=s;const l=e.sinfo_.owningSystemUrl,d=this._isServerRsrc(e.resUrl_),u=e.sinfo_._restInfoPms;u?u.promise.then(t=>{const r=e.sinfo_;if(r._restInfoPms){r.adminTokenServiceUrl=r._restInfoPms.adminUrl,r._restInfoPms=null,r.tokenServiceUrl=(o("authInfo.tokenServicesUrl",t)||o("authInfo.tokenServiceUrl",t)||o("tokenServiceUrl",t))??null,r.shortLivedTokenValidity=o("authInfo.shortLivedTokenValidity",t)??null,r.currentVersion=t.currentVersion,r.owningTenant=t.owningTenant;const e=r.owningSystemUrl=t.owningSystemUrl;e&&this._portals.push(e)}d&&r.owningSystemUrl?h():n()},()=>{e.sinfo_._restInfoPms=null;const t=new r("identity-manager:server-identification-failed","Unknown resource - could not find token service endpoint.");s(t)}):d&&l?h():e.sinfo_._selfReq?e.sinfo_._selfReq.selfDfd.then(t=>{const r={};let s,i,n,o;return t&&(s=t.user?.username,r.username=s,r.allSSL=t.allSSL,i=t.supportsOAuth,o=parseFloat(t.currentVersion),"multitenant"===t.portalMode&&(n=t.customBaseUrl),e.sinfo_.currentVersion=o),e.sinfo_.webTierAuth=!!s,s&&this.normalizeWebTierAuth?this.generateToken(e.sinfo_,null,{ssl:r.allSSL}).catch(()=>null).then(e=>(r.portalToken=e?.token,r.tokenExpiration=e?.expires,r)):!s&&i&&o>=4.4&&!this._findOAuthInfo(e.resUrl_)?this._generateOAuthInfo({portalUrl:e.sinfo_.server,customBaseUrl:n,owningTenant:e.sinfo_._selfReq.owningTenant}).catch(()=>null).then(()=>r):r}).catch(()=>null).then(t=>{e.sinfo_._selfReq=null,t?n(t.username,t.allSSL,t.portalToken,t.tokenExpiration):n()}):n()}_generateOAuthInfo(e){let r,s=null,i=e.portalUrl;const n=e.customBaseUrl,o=e.owningTenant,a=!this._defaultOAuthInfo&&this._createDefaultOAuthInfo&&!this._hasTestedIfAppIsOnPortal;if(a){s=this._appUrlObj.path;const e=s.search(/\/(apps|home)\//);s=e>-1?s.slice(0,e):null}return a&&s?(this._hasTestedIfAppIsOnPortal=!0,r=t(s+"/sharing/rest",{query:{f:"json"}}).then(()=>{this._defaultOAuthInfo=new A({appId:"arcgisonline",popupCallbackUrl:s+"/home/oauth-callback.html"})})):r=Promise.resolve(),r.then(()=>{if(this._defaultOAuthInfo)return i=i.replace(/^http:/i,"https:"),t(i+"/sharing/rest/oauth2/validateRedirectUri",{query:{accountId:o,client_id:this._defaultOAuthInfo.appId,redirect_uri:m(this._defaultOAuthInfo.popupCallbackUrl),f:"json"}}).then(e=>{if(e.data.valid){const t=this._defaultOAuthInfo.clone();e.data.urlKey&&n?t.portalUrl="https://"+e.data.urlKey.toLowerCase()+"."+n:t.portalUrl=i,t.popup=window!==window.top||!(c(i,this._appOrigin)||this._gwDomains.some(e=>e.regex.test(i)&&e.regex.test(this._appOrigin))),this.oAuthInfos.push(t)}})})}_doOAuthSignIn(e,t,s,n){const o=s._oAuthCred,a={portalUrl:s.portalUrl};!s.popup&&s.preserveUrlHash&&window.location.hash&&(a.hash=window.location.hash),o.stateUID&&(a.uid=o.stateUID);const h={client_id:s.appId,response_type:o.codeVerifier?"code":"token",state:JSON.stringify(a),expiration:s.expiration,locale:s.locale,redirect_uri:this._getRedirectURI(s,!!o.codeVerifier)};s.forceLogin&&(h.force_login=!0),s.forceUserId&&s.userId&&(h.prepopulatedusername=s.userId),!s.popup&&this._doPortalSignIn(e)&&(h.redirectToUserOrgUrl=!0),o.codeVerifier&&(h.code_challenge=n||o.codeVerifier,h.code_challenge_method=n?"S256":"plain");const l=this._getAuthorizeUrl(s.portalUrl),c=l+"?"+_(h);if(s.popup){const e=window.open(c,"esriJSAPIOAuth",s.popupWindowFeatures);if(e)e.focus(),this._oAuthDfd.oAuthWin_=e,this._oAuthIntervalId=setInterval(()=>{if(e.closed){clearInterval(this._oAuthIntervalId),this._oAuthOnPopupHandle.remove();const e=this._oAuthDfd;if(e){const t=new r("identity-manager:user-aborted","ABORTED");e.reject(t)}}},500),this._oAuthOnPopupHandle=i(window,["arcgis:auth:hash","arcgis:auth:location:search"],e=>{"arcgis:auth:hash"===e.type?this.setOAuthResponseHash(e.detail):this._setOAuthResponseQueryString(e.detail)});else{const e=new r("identity-manager:popup-blocked","ABORTED");this._oAuthDfd.reject(e)}}else this._rejectOnPersistedPageShow=!0,this._oAuthRedirectFunc?this._oAuthRedirectFunc({authorizeParams:h,authorizeUrl:l,resourceUrl:e,serverInfo:t,oAuthInfo:s}):window.location.href=c}_getAuthorizeUrl(e){let t=e.replace(/^http:/i,"https:")+"/sharing/oauth2/authorize";const r=x(t);if(r?.portalHostname){const{customBaseUrl:e,portalHostname:s,urlKey:i}=r;let n=null;if("www.arcgis.com"===s||"devext.arcgis.com"===s&&(n="logindevext.arcgis.com"),n){t=v(t,i?`${i}.${e}`:s,i?`${i}.${n}`:n)}}return t}_getRedirectURI(e,t){const r=window.location.href.replace(/#.*$/,"");if(e.popup)return m(e.popupCallbackUrl);if(t){const e=l(r);return e.query&&["code","error","error_description","message_code","persist","state"].forEach(t=>{delete e.query[t]}),S(e.path,e.query)}return r}}b.prototype.declaredClass="esri.identity.IdentityManagerBase";export{b as IdentityManagerBase};
|
package/kernel.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
|
|
2
|
-
import has from"./core/has.js";import{addQueryParameter as o}from"./core/urlUtils.js";export{buildDate,commitHash as revision}from"./support/revision.js";Symbol.dispose??=Symbol("Symbol.dispose"),Symbol.asyncDispose??=Symbol("Symbol.asyncDispose");const e="5.1";let s,r=e;function i(o){s=o}function t(e){const r=s?.findCredential(e);return r?.token?o(e,"token",r.token):e}r="5.1.0-next.
|
|
2
|
+
import has from"./core/has.js";import{addQueryParameter as o}from"./core/urlUtils.js";export{buildDate,commitHash as revision}from"./support/revision.js";Symbol.dispose??=Symbol("Symbol.dispose"),Symbol.asyncDispose??=Symbol("Symbol.asyncDispose");const e="5.1";let s,r=e;function i(o){s=o}function t(e){const r=s?.findCredential(e);return r?.token?o(e,"token",r.token):e}r="5.1.0-next.107",has("host-webworker")||globalThis.$arcgis||Object.defineProperty(globalThis,"$arcgis",{configurable:!1,enumerable:!0,writable:!1,value:{}}),has("host-webworker");export{t as addTokenParameter,r as fullVersion,s as id,i as setId,e as version};
|
|
@@ -60,8 +60,8 @@ export interface DimensionLayerProperties extends LayerProperties, OperationalLa
|
|
|
60
60
|
*
|
|
61
61
|
* ```js
|
|
62
62
|
* // retrieve measured results from the layer view
|
|
63
|
-
* const
|
|
64
|
-
* const results =
|
|
63
|
+
* const layerView = await view.whenLayerView(dimensionLayer);
|
|
64
|
+
* const results = layerView.results;
|
|
65
65
|
* ```
|
|
66
66
|
*
|
|
67
67
|
* To start creating or editing length dimensions interactively, use the
|
|
@@ -69,17 +69,17 @@ export interface DimensionLayerProperties extends LayerProperties, OperationalLa
|
|
|
69
69
|
*
|
|
70
70
|
* ```js
|
|
71
71
|
* // retrieve layer view for the layer
|
|
72
|
-
* const
|
|
72
|
+
* const layerView = await view.whenLayerView(dimensionLayer);
|
|
73
73
|
*
|
|
74
74
|
* // allow existing length dimensions in the layer to be selected and edited
|
|
75
75
|
* // select a dimensions by hovering and clicking on their offset manipulator
|
|
76
|
-
*
|
|
76
|
+
* layerView.interactive = true;
|
|
77
77
|
*
|
|
78
78
|
* const abortController = new AbortController();
|
|
79
79
|
*
|
|
80
80
|
* try {
|
|
81
81
|
* // start placing a new dimension interactively
|
|
82
|
-
* await
|
|
82
|
+
* await layerView.place({ signal: abortController.signal });
|
|
83
83
|
* } catch (error) {
|
|
84
84
|
* if (error.name === "AbortError") {
|
|
85
85
|
* console.log("Placement operation was cancelled.");
|
package/layers/FeatureLayer.d.ts
CHANGED
|
@@ -1397,7 +1397,7 @@ export abstract class __FeatureLayerSansType extends FeatureLayerSuperclass {
|
|
|
1397
1397
|
* >
|
|
1398
1398
|
* > - FeatureLayers are not optimized for high-frequency, dynamic data, or real-time streaming use cases. As a result, they may not perform efficiently with rapidly updating data streams.
|
|
1399
1399
|
* > For real-time or dynamic data updates, use [StreamLayers](https://developers.arcgis.com/javascript/latest/references/core/layers/StreamLayer/), which are designed for efficient handling of high-frequency streaming data and dynamic features.
|
|
1400
|
-
* > - When calling the applyEdits method on a service that does not have [vertical coordinate system](https://
|
|
1400
|
+
* > - When calling the applyEdits method on a service that does not have [vertical coordinate system](https://doc.esri.com/en/arcgis-pro/latest/help/mapping/properties/vertical-coordinate-systems.html) information,
|
|
1401
1401
|
* > the z-values of the geometries in the `edits` object will automatically be converted to match the spatial reference of the layer.
|
|
1402
1402
|
* > Example: The service has a horizontal spatial reference with `feet` units, and `applyEdits()` is called with z-values based on `meter` units,
|
|
1403
1403
|
* > then the method will automatically convert the z values from `meter` to `feet` units.
|
|
@@ -1815,7 +1815,7 @@ export abstract class __FeatureLayerSansType extends FeatureLayerSuperclass {
|
|
|
1815
1815
|
* > To query features available to or visible in the [View](https://developers.arcgis.com/javascript/latest/references/core/views/View/) on the client rather than making a server-side query, you must
|
|
1816
1816
|
* > use the [FeatureLayerView.queryFeatures()](https://developers.arcgis.com/javascript/latest/references/core/views/layers/FeatureLayerView/#queryFeatures) method.
|
|
1817
1817
|
* >
|
|
1818
|
-
* > When querying a service with z-values and no [vertical coordinate system](https://
|
|
1818
|
+
* > When querying a service with z-values and no [vertical coordinate system](https://doc.esri.com/en/arcgis-pro/latest/help/mapping/properties/vertical-coordinate-systems.html) information,
|
|
1819
1819
|
* > the z-values will automatically be converted to match the [Query.outSpatialReference](https://developers.arcgis.com/javascript/latest/references/core/rest/support/Query/#outSpatialReference) units.
|
|
1820
1820
|
* > Example: The service has a horizontal spatial reference using `feet` units and the query is made with `outSpatialReference`
|
|
1821
1821
|
* > based on `meter` units, then [queryFeatures()](https://developers.arcgis.com/javascript/latest/references/core/layers/FeatureLayer/#queryFeatures) automatically converts the values from `feet` to `meter` units.
|
|
@@ -45,9 +45,9 @@ export interface GaussianSplatLayerProperties extends LayerProperties, APIKeyMix
|
|
|
45
45
|
}
|
|
46
46
|
|
|
47
47
|
/**
|
|
48
|
-
* * [Overview](https://developers.arcgis.com/javascript/latest/
|
|
49
|
-
* * [Creating a GaussianSplatLayer](https://developers.arcgis.com/javascript/latest/
|
|
50
|
-
* * [Data Visualization](https://developers.arcgis.com/javascript/latest/
|
|
48
|
+
* * [Overview](https://developers.arcgis.com/javascript/latest/references/core/layers/GaussianSplatLayer/#overview)
|
|
49
|
+
* * [Creating a GaussianSplatLayer](https://developers.arcgis.com/javascript/latest/references/core/layers/GaussianSplatLayer/#creating-a-gaussiansplat-layer)
|
|
50
|
+
* * [Data Visualization](https://developers.arcgis.com/javascript/latest/references/core/layers/GaussianSplatLayer/#data-visualization)
|
|
51
51
|
*
|
|
52
52
|
* <span id="overview"></span>
|
|
53
53
|
* ## Overview
|
|
@@ -59,7 +59,7 @@ export interface LineOfSightLayerProperties extends LayerProperties, Operational
|
|
|
59
59
|
* ]
|
|
60
60
|
* });
|
|
61
61
|
*
|
|
62
|
-
* //
|
|
62
|
+
* // create the layer with the analysis
|
|
63
63
|
* const lineOfSightLayer = new LineOfSightLayer({
|
|
64
64
|
* analysis: lineOfSightAnalysis
|
|
65
65
|
* });
|
|
@@ -76,11 +76,11 @@ export interface LineOfSightLayerProperties extends LayerProperties, Operational
|
|
|
76
76
|
* await reactiveUtils.whenOnce(() => !view.updating);
|
|
77
77
|
*
|
|
78
78
|
* // retrieve the results from the layer view
|
|
79
|
-
* const
|
|
80
|
-
* const results =
|
|
79
|
+
* const layerView = await view.whenLayerView(lineOfSightLayer);
|
|
80
|
+
* const results = layerView.results;
|
|
81
81
|
*
|
|
82
82
|
* // enable editing existing analysis interactively
|
|
83
|
-
*
|
|
83
|
+
* layerView.interactive = true;
|
|
84
84
|
* ```
|
|
85
85
|
*
|
|
86
86
|
* To create lines of sight interactively, use the
|
|
@@ -90,7 +90,7 @@ export interface LineOfSightLayerProperties extends LayerProperties, Operational
|
|
|
90
90
|
* const abortController = new AbortController();
|
|
91
91
|
*
|
|
92
92
|
* try {
|
|
93
|
-
* await
|
|
93
|
+
* await layerView.place({ signal: abortController.signal });
|
|
94
94
|
* } catch (error) {
|
|
95
95
|
* if (error.name === "AbortError") {
|
|
96
96
|
* console.log("Placement operation was cancelled.");
|