@arcgis/core 5.1.0-next.102 → 5.1.0-next.104

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (681) hide show
  1. package/applications/Components/imageryUtils.d.ts +22 -1
  2. package/applications/Components/imageryUtils.js +1 -1
  3. package/arcade/Dictionary.js +1 -1
  4. package/arcade/Feature.js +1 -1
  5. package/arcade/Pixel.js +1 -1
  6. package/arcade/Voxel.js +1 -1
  7. package/arcade/arcade.js +1 -1
  8. package/arcade/arcadeAsyncRuntime.js +1 -1
  9. package/arcade/arcadeCompiler.js +1 -1
  10. package/arcade/arcadeRuntime.js +1 -1
  11. package/arcade/containerUtils.js +1 -1
  12. package/arcade/debug.js +1 -1
  13. package/arcade/deepClone.js +1 -1
  14. package/arcade/featureSetUtils.js +1 -1
  15. package/arcade/featureset/actions/GroupBy.js +1 -1
  16. package/arcade/featureset/actions/OrderBy.js +1 -1
  17. package/arcade/functions/convertdirection.js +1 -1
  18. package/arcade/functions/date.js +1 -1
  19. package/arcade/functions/feature.js +1 -1
  20. package/arcade/functions/featuresetbase.js +1 -1
  21. package/arcade/functions/featuresetgeom.js +1 -1
  22. package/arcade/functions/featuresetstats.js +1 -1
  23. package/arcade/functions/featuresetstring.js +1 -1
  24. package/arcade/functions/fieldStats.js +1 -1
  25. package/arcade/functions/geomasync.js +1 -1
  26. package/arcade/functions/geometry.js +1 -1
  27. package/arcade/functions/geomsync.js +1 -1
  28. package/arcade/functions/knowledgegraph.js +1 -1
  29. package/arcade/functions/maths.js +1 -1
  30. package/arcade/functions/stats.js +1 -1
  31. package/arcade/functions/string.js +1 -1
  32. package/arcade/functions/track.js +1 -1
  33. package/arcade/geometry/constructors.js +1 -1
  34. package/arcade/geometry/functions.js +1 -1
  35. package/arcade/geometry/operators.js +1 -1
  36. package/arcade/languageUtils.js +1 -1
  37. package/assets/esri/core/workers/RemoteClient.js +1 -1
  38. package/assets/esri/core/workers/chunks/{92e7067960549733f8e6.js → 037b36d415ae27e987f9.js} +1 -1
  39. package/assets/esri/core/workers/chunks/{58579c53be1a44bd08d2.js → 054ae729e7cefa2c7778.js} +1 -1
  40. package/assets/esri/core/workers/chunks/069459519477bb3dc91b.js +1 -0
  41. package/assets/esri/core/workers/chunks/{4301cb9670fa7c907460.js → 0881929a4a457f94f317.js} +1 -1
  42. package/assets/esri/core/workers/chunks/{abdf146b35e179b5b245.js → 0cb8bc6dbbbe3b212712.js} +1 -1
  43. package/assets/esri/core/workers/chunks/{b811d62284be95f4beb6.js → 0cc74bc3772be51cabc1.js} +1 -1
  44. package/assets/esri/core/workers/chunks/{0630ce1975c91ae362d9.js → 0e9804ece1fd2d59751b.js} +1 -1
  45. package/assets/esri/core/workers/chunks/{545c38789267e3487dbd.js → 10491b5b106bc5ad0b2b.js} +1 -1
  46. package/assets/esri/core/workers/chunks/12053c1213465d07d2f6.js +1 -0
  47. package/assets/esri/core/workers/chunks/{ca6c128940ddbebcaaab.js → 14b7b55c42af65ffa024.js} +1 -1
  48. package/assets/esri/core/workers/chunks/{702e8468836863abd81b.js → 15fa8b5b472131aaa68e.js} +1 -1
  49. package/assets/esri/core/workers/chunks/{852f4cd514008fee5a55.js → 176e676879666f784599.js} +1 -1
  50. package/assets/esri/core/workers/chunks/18201119828664373165.js +1 -0
  51. package/assets/esri/core/workers/chunks/1a3426276dc82a8a80f2.js +1 -0
  52. package/assets/esri/core/workers/chunks/{ce3e51c799a80648e46d.js → 1c0e8808d14d8e6dde2c.js} +1 -1
  53. package/assets/esri/core/workers/chunks/{e86c073f0b6d395c7a38.js → 1c83e61fd9a4f8fc8372.js} +1 -1
  54. package/assets/esri/core/workers/chunks/1cb0c4fc315bbc2bd00b.js +1 -0
  55. package/assets/esri/core/workers/chunks/{5afee66e182f79a0fc46.js → 1ff61d8a8ea060e78b83.js} +1 -1
  56. package/assets/esri/core/workers/chunks/{4faaf61d20e20fcf6c18.js → 23119a1b1310b7dab2aa.js} +1 -1
  57. package/assets/esri/core/workers/chunks/{031ea31bbdb7f1be791e.js → 276cb6a1cdd26d0e1444.js} +1 -1
  58. package/assets/esri/core/workers/chunks/{fdb7851e98e8d2ba48d3.js → 286bf3be9f524bde9529.js} +1 -1
  59. package/assets/esri/core/workers/chunks/{55ccb8ed7325efb62091.js → 29b00d07d3e1d095c590.js} +2 -2
  60. package/assets/esri/core/workers/chunks/{9d8e7839772029d83c93.js → 29bbc0d6d847b065d10e.js} +1 -1
  61. package/assets/esri/core/workers/chunks/{1ba37706e5d5eaabcb8e.js → 2a5f6a8d282f2c391591.js} +1 -1
  62. package/assets/esri/core/workers/chunks/{15a65aa6969c1b383ce2.js → 2f903bd3a2611e7f0946.js} +1 -1
  63. package/assets/esri/core/workers/chunks/{b803e7b0d489bb628d72.js → 2f925a424b60b4a5e8e5.js} +1 -1
  64. package/assets/esri/core/workers/chunks/30e191d36aa95823c018.js +1 -0
  65. package/assets/esri/core/workers/chunks/{4b19acf8bde5b2e80692.js → 313a89b334e3518d30a4.js} +1 -1
  66. package/assets/esri/core/workers/chunks/{390717f079def83a0d9c.js → 31a8bc25aa1441c70caa.js} +1 -1
  67. package/assets/esri/core/workers/chunks/31c01885ee6d70a2bde2.js +1 -0
  68. package/assets/esri/core/workers/chunks/3292b3883f203637b5a7.js +1 -0
  69. package/assets/esri/core/workers/chunks/{9bb2251ba58932f85d13.js → 33329f5d88e60b4ec568.js} +1 -1
  70. package/assets/esri/core/workers/chunks/{8f9117d589de7caaa02d.js → 35bbd63319d8aa9f31cc.js} +1 -1
  71. package/assets/esri/core/workers/chunks/35fdd62277fd06468a29.js +2 -0
  72. package/assets/esri/core/workers/chunks/{3996149146dd1eca7cc5.js → 38d7430d2370b69334d7.js} +1 -1
  73. package/assets/esri/core/workers/chunks/3aebbed6d4fd1b993a35.js +1 -0
  74. package/assets/esri/core/workers/chunks/3f1d533efe4300d19e6a.js +1 -0
  75. package/assets/esri/core/workers/chunks/3fed503185ea1913fb84.js +1 -0
  76. package/assets/esri/core/workers/chunks/{7db09c5bf024242becfa.js → 40caf5e09e4382d81104.js} +5 -5
  77. package/assets/esri/core/workers/chunks/4213aa844900fcf95287.js +1 -0
  78. package/assets/esri/core/workers/chunks/{bc6a809a965355eb425f.js → 44636ef119c6a576470b.js} +1 -1
  79. package/assets/esri/core/workers/chunks/453c9e8d438d061e1736.js +1 -0
  80. package/assets/esri/core/workers/chunks/479e34b0abc10499bd3a.js +1 -0
  81. package/assets/esri/core/workers/chunks/{54dad475dc806a38c287.js → 48440a071a37590846ff.js} +1 -1
  82. package/assets/esri/core/workers/chunks/{fa9ab152ea785b5e97e0.js → 4a41f98210f1da3b5041.js} +1 -1
  83. package/assets/esri/core/workers/chunks/4a65bc9091d7ea7e80df.js +1 -0
  84. package/assets/esri/core/workers/chunks/4b130db9b7b4e2e32ea4.js +1 -0
  85. package/assets/esri/core/workers/chunks/4cdf80e2e60501dd4756.js +1 -0
  86. package/assets/esri/core/workers/chunks/51edfe21d4c6ee22c83d.js +1 -0
  87. package/assets/esri/core/workers/chunks/52219561c144e5cb4442.js +1 -0
  88. package/assets/esri/core/workers/chunks/{312036c89a6a09bb06c2.js → 5570d47533efab56c732.js} +1 -1
  89. package/assets/esri/core/workers/chunks/{5abe34bb0110694f7b42.js → 566c36032b456ec5b5d7.js} +1 -1
  90. package/assets/esri/core/workers/chunks/{34207774bc371e95ba3c.js → 56b6b68d9459b1edea43.js} +1 -1
  91. package/assets/esri/core/workers/chunks/593772bd8b19ac664b29.js +1 -0
  92. package/assets/esri/core/workers/chunks/{10ce083b38ccfa88f766.js → 594e1f633527749d92d7.js} +1 -1
  93. package/assets/esri/core/workers/chunks/{ad329226c8b579d0964c.js → 5a6523c903b11dea77d4.js} +1 -1
  94. package/assets/esri/core/workers/chunks/5c44638670e40e092ce3.js +1 -0
  95. package/assets/esri/core/workers/chunks/{af8bc56cf1404afc3028.js → 5d60253ea3d247cdb3d1.js} +1 -1
  96. package/assets/esri/core/workers/chunks/5dc86a3a40d16b576bb5.js +1 -0
  97. package/assets/esri/core/workers/chunks/601edefd8da4eb2eda28.js +1 -0
  98. package/assets/esri/core/workers/chunks/6182d39e2095d4460b88.js +1 -0
  99. package/assets/esri/core/workers/chunks/{c798a40418e7ff38042a.js → 63513e706fe55a1def15.js} +1 -1
  100. package/assets/esri/core/workers/chunks/{d8d338665fe00494c826.js → 660713adb5a845dfa2ef.js} +1 -1
  101. package/assets/esri/core/workers/chunks/694f9571e2723d3d4b02.js +1 -0
  102. package/assets/esri/core/workers/chunks/69ad5930ff6040c6c561.js +1 -0
  103. package/assets/esri/core/workers/chunks/{f563dd6cace047108b3c.js → 6b5d2df9123dfe7e00b3.js} +1 -1
  104. package/assets/esri/core/workers/chunks/{5217d676749bca59d90f.js → 6c79e8e840c1d027fbb2.js} +1 -1
  105. package/assets/esri/core/workers/chunks/{2ce845c990bb4d701362.js → 6ca81e34854ce7ec6f6e.js} +1 -1
  106. package/assets/esri/core/workers/chunks/{11a99ee68409a641810e.js → 6f02681bcaa9bef501fc.js} +1 -1
  107. package/assets/esri/core/workers/chunks/77ac243d4dcd901c2eec.js +1 -0
  108. package/assets/esri/core/workers/chunks/78af4b7a379c40f497a7.js +1 -0
  109. package/assets/esri/core/workers/chunks/{bf706a5d065a357de51b.js → 79b64a52ff57c40c7800.js} +1 -1
  110. package/assets/esri/core/workers/chunks/{475409026288f0981ce2.js → 7b3642195d6d3ea9b830.js} +1 -1
  111. package/assets/esri/core/workers/chunks/{82b2acc6f181927de89c.js → 7bc746ea17f4e336e0b0.js} +1 -1
  112. package/assets/esri/core/workers/chunks/{19fcc74d34cbbaa56a41.js → 7c86099ed17f420b0489.js} +1 -1
  113. package/assets/esri/core/workers/chunks/{6f96ce41c47cae82e687.js → 7d571845292b1b7769c2.js} +1 -1
  114. package/assets/esri/core/workers/chunks/7dafe608c224b9d48ffa.js +1 -0
  115. package/assets/esri/core/workers/chunks/7e203e947846d40f897e.js +1 -0
  116. package/assets/esri/core/workers/chunks/855bf811cd79b97c169a.js +1 -0
  117. package/assets/esri/core/workers/chunks/{7601278ebced0c0c31cf.js → 85bba0db8a7a5fc1be44.js} +1 -1
  118. package/assets/esri/core/workers/chunks/{a318cf6bb900e0ee268c.js → 881234f25c7814de8753.js} +1 -1
  119. package/assets/esri/core/workers/chunks/895114ccd2603830960f.js +1 -0
  120. package/assets/esri/core/workers/chunks/8a68884d40f6f6de1d12.js +1 -0
  121. package/assets/esri/core/workers/chunks/{0d81409721d29d8bc276.js → 8a7682071941c35f05c1.js} +1 -1
  122. package/assets/esri/core/workers/chunks/8aac1155b8ac071cd2ad.js +1 -0
  123. package/assets/esri/core/workers/chunks/{3e2953ea62817e75d840.js → 8cbaaea72f4ca2f023be.js} +1 -1
  124. package/assets/esri/core/workers/chunks/{1faa8a42d5a437fc40a3.js → 8e986167d4a393ee41ea.js} +1 -1
  125. package/assets/esri/core/workers/chunks/8fdd57e2a0af647f1e3e.js +1 -0
  126. package/assets/esri/core/workers/chunks/92db9a6d273ae2862883.js +1 -0
  127. package/assets/esri/core/workers/chunks/{9b23d999db902d25ba58.js → 9373daa677dc767d7cf0.js} +1 -1
  128. package/assets/esri/core/workers/chunks/{bb5512ecb5300d45d46b.js → 9542ef3f6c2bc7c14d85.js} +1 -1
  129. package/assets/esri/core/workers/chunks/{86bff154d46f8a562887.js → 95798e3de3419fdda6ac.js} +1 -1
  130. package/assets/esri/core/workers/chunks/{aad02c7417648d881129.js → 958617c3a9854ea04e06.js} +1 -1
  131. package/assets/esri/core/workers/chunks/{a28124bba6b43efd74cc.js → 95df6d2ebacc43ac5fa3.js} +1 -1
  132. package/assets/esri/core/workers/chunks/{f618ee43581e8de6ad0c.js → 970e91de5dfbbc247afb.js} +1 -1
  133. package/assets/esri/core/workers/chunks/978b7d10054e17161145.js +1 -0
  134. package/assets/esri/core/workers/chunks/{8a48a6760c33ed50b650.js → 98b4408e12684e37b395.js} +1 -1
  135. package/assets/esri/core/workers/chunks/9d70247d820085a2c190.js +1 -0
  136. package/assets/esri/core/workers/chunks/9da2f2b67837b491cfa3.js +1 -0
  137. package/assets/esri/core/workers/chunks/{edee616b6f1b5be8fd39.js → a0296e6d6c37b861c5fb.js} +1 -1
  138. package/assets/esri/core/workers/chunks/{c19e3f6027b6526de359.js → a02ebdcb802d128c8eee.js} +1 -1
  139. package/assets/esri/core/workers/chunks/a0aaf14c8f9a007d88ac.js +1 -0
  140. package/assets/esri/core/workers/chunks/{1523883460874c352e36.js → a29cd1f5c7bb4f6a5a4f.js} +1 -1
  141. package/assets/esri/core/workers/chunks/{cf826787ab8d4b27ad80.js → a53a3e5548fef65a2710.js} +1 -1
  142. package/assets/esri/core/workers/chunks/{91f9e0e3662d4bf9f163.js → a913a1c83a667ed0e711.js} +1 -1
  143. package/assets/esri/core/workers/chunks/{359465b9726edcc70c83.js → a9c9c00432ee41ec91ba.js} +1 -1
  144. package/assets/esri/core/workers/chunks/{a3a28c4887f802e8d96d.js → aa55923ca939a0d4606c.js} +1 -1
  145. package/assets/esri/core/workers/chunks/{d3b086eb9aa8c7d09048.js → aea8e0577fb48d5c9577.js} +1 -1
  146. package/assets/esri/core/workers/chunks/af45110f07e4b5162bae.js +1 -0
  147. package/assets/esri/core/workers/chunks/{76589434d573111a8fb4.js → b09ae8eb5e97fb27382f.js} +1 -1
  148. package/assets/esri/core/workers/chunks/b0c647af49c9d563b852.js +1 -0
  149. package/assets/esri/core/workers/chunks/{a320998f18922a35899f.js → b32a13972cb3de652339.js} +1 -1
  150. package/assets/esri/core/workers/chunks/b432a5a829e309837db6.js +1 -0
  151. package/assets/esri/core/workers/chunks/{9103eb0b9078019d3a26.js → b5d0898406c7d6e6a717.js} +1 -1
  152. package/assets/esri/core/workers/chunks/b640651c7d86cfe654bf.js +1 -0
  153. package/assets/esri/core/workers/chunks/{503439246250d9e1cbd5.js → b75e090a7e935ff870a3.js} +1 -1
  154. package/assets/esri/core/workers/chunks/{c321bcda8e8893577948.js → b8dda9e55caba0e2b4c2.js} +1 -1
  155. package/assets/esri/core/workers/chunks/{59a64d72eed8c40c63cf.js → bacf0c9d5d3e084dea61.js} +1 -1
  156. package/assets/esri/core/workers/chunks/{fa38dc5010f8630a80fe.js → bb04aff0b4947408592c.js} +1 -1
  157. package/assets/esri/core/workers/chunks/{5663df3cd1dfd4b43c73.js → bff0c4094c14cb97b18f.js} +1 -1
  158. package/assets/esri/core/workers/chunks/{47dd2bfecc5c4b5f10f0.js → c0d7e4afbad0b20e2502.js} +1 -1
  159. package/assets/esri/core/workers/chunks/c13c532fe38ddc5d7ca6.js +1 -0
  160. package/assets/esri/core/workers/chunks/{cc62e5095e328bed3e01.js → c1ffb879e0283fb2815f.js} +1 -1
  161. package/assets/esri/core/workers/chunks/{9e7c84a3a2abec4d49df.js → c476f4979048e558baa7.js} +89 -76
  162. package/assets/esri/core/workers/chunks/c8b96104641cb4afd4df.js +1 -0
  163. package/assets/esri/core/workers/chunks/{19a9a555365a8363d34b.js → c91d4f1b42cfe474df52.js} +1 -1
  164. package/assets/esri/core/workers/chunks/{6ae2408ac075b974e887.js → cb26966cc205bd338c76.js} +1 -1
  165. package/assets/esri/core/workers/chunks/{c452c74ba9de218c3e57.js → cb3004998eff7c60930e.js} +1 -1
  166. package/assets/esri/core/workers/chunks/cc48354c54358777e996.js +1 -0
  167. package/assets/esri/core/workers/chunks/{b1b8a7c00ec4d998ab84.js → cc8d55d1830d7542c3f5.js} +1 -1
  168. package/assets/esri/core/workers/chunks/ce0c7070eeb723a718e7.js +1 -0
  169. package/assets/esri/core/workers/chunks/ce3b5b83237cf37ff523.js +1 -0
  170. package/assets/esri/core/workers/chunks/cf3c0bee919bb509cd4f.js +1 -0
  171. package/assets/esri/core/workers/chunks/cf9b0ba30a75c030ca92.js +1 -0
  172. package/assets/esri/core/workers/chunks/d00b9c1fd0865bf8f317.js +1 -0
  173. package/assets/esri/core/workers/chunks/{9a29b7f9e6281ee40c37.js → d4749eb8a47869477037.js} +1 -1
  174. package/assets/esri/core/workers/chunks/d5423df247be82fa085a.js +1 -0
  175. package/assets/esri/core/workers/chunks/d610f517fb3c6cb24365.js +1 -0
  176. package/assets/esri/core/workers/chunks/{47656ec12401e53f4bd3.js → d9d716bfd0aab30b6caf.js} +1 -1
  177. package/assets/esri/core/workers/chunks/da4f7d7099ba88f31f45.js +1 -0
  178. package/assets/esri/core/workers/chunks/dbb1ac41fd5da4fd849b.js +1 -0
  179. package/assets/esri/core/workers/chunks/{176dd195f77b98cb0b0f.js → dd58bc675b85b4d90afa.js} +1 -1
  180. package/assets/esri/core/workers/chunks/e2bb95d601789bbda73b.js +1 -0
  181. package/assets/esri/core/workers/chunks/{f018ad451ee072253a1e.js → e4b2120d7ee1c998b1fc.js} +1 -1
  182. package/assets/esri/core/workers/chunks/e4c350dc65aae121171d.js +1 -0
  183. package/assets/esri/core/workers/chunks/e8518bd3596543b387f8.js +1 -0
  184. package/assets/esri/core/workers/chunks/{f948e4a80a7dbda70f2e.js → e973cab79ec2541cb81b.js} +1 -1
  185. package/assets/esri/core/workers/chunks/{7d6299ab7b0db23ab961.js → eb1d6614eeac6d26bb9c.js} +1 -1
  186. package/assets/esri/core/workers/chunks/f1bb426400dac02880f1.js +1 -0
  187. package/assets/esri/core/workers/chunks/{ffcd4fca7f67e1f943f1.js → f239a8ecad8b692d5eaa.js} +1 -1
  188. package/assets/esri/core/workers/chunks/{de11ebcea2b8f9dfe65d.js → f3161c47a572194f6017.js} +1 -1
  189. package/assets/esri/core/workers/chunks/{f66262f8582909157f01.js → f37be7e517f0892014e3.js} +1 -1
  190. package/assets/esri/core/workers/chunks/{119b84f5349f90d1dd28.js → f3a9100518b044e79501.js} +1 -1
  191. package/assets/esri/core/workers/chunks/f3f984c62311c20a9db8.js +1 -0
  192. package/assets/esri/core/workers/chunks/{85e65ced3312bf9cf162.js → f7e386ece75afb6e4be5.js} +1 -1
  193. package/assets/esri/core/workers/chunks/f8b884b529064df4a30a.js +1 -0
  194. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ar.json +1 -1
  195. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_bg.json +1 -1
  196. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_bs.json +1 -1
  197. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ca.json +1 -1
  198. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_cs.json +1 -1
  199. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_da.json +1 -1
  200. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_de.json +1 -1
  201. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_el.json +1 -1
  202. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_es.json +1 -1
  203. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_et.json +1 -1
  204. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_fi.json +1 -1
  205. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_fr.json +1 -1
  206. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_he.json +1 -1
  207. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_hr.json +1 -1
  208. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_hu.json +1 -1
  209. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_id.json +1 -1
  210. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_it.json +1 -1
  211. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ja.json +1 -1
  212. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ko.json +1 -1
  213. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_lt.json +1 -1
  214. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_lv.json +1 -1
  215. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_nl.json +1 -1
  216. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_no.json +1 -1
  217. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_pl.json +1 -1
  218. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_pt-BR.json +1 -1
  219. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_pt-PT.json +1 -1
  220. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ro.json +1 -1
  221. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ru.json +1 -1
  222. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sk.json +1 -1
  223. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sl.json +1 -1
  224. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sr.json +1 -1
  225. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sv.json +1 -1
  226. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_th.json +1 -1
  227. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_tr.json +1 -1
  228. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_uk.json +1 -1
  229. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_vi.json +1 -1
  230. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_zh-CN.json +1 -1
  231. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_zh-HK.json +1 -1
  232. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_zh-TW.json +1 -1
  233. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer.json +1 -1
  234. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_en.json +1 -1
  235. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_ar.json +1 -1
  236. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_bg.json +1 -1
  237. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_bs.json +1 -1
  238. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_ca.json +1 -1
  239. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_cs.json +1 -1
  240. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_da.json +1 -1
  241. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_de.json +1 -1
  242. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_el.json +1 -1
  243. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_es.json +1 -1
  244. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_et.json +1 -1
  245. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_fi.json +1 -1
  246. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_fr.json +1 -1
  247. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_he.json +1 -1
  248. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_hr.json +1 -1
  249. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_hu.json +1 -1
  250. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_id.json +1 -1
  251. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_it.json +1 -1
  252. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_ja.json +1 -1
  253. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_ko.json +1 -1
  254. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_lt.json +1 -1
  255. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_lv.json +1 -1
  256. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_nl.json +1 -1
  257. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_no.json +1 -1
  258. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_pl.json +1 -1
  259. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_pt-BR.json +1 -1
  260. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_pt-PT.json +1 -1
  261. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_ro.json +1 -1
  262. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_ru.json +1 -1
  263. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_sk.json +1 -1
  264. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_sl.json +1 -1
  265. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_sr.json +1 -1
  266. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_sv.json +1 -1
  267. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_th.json +1 -1
  268. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_tr.json +1 -1
  269. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_uk.json +1 -1
  270. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_vi.json +1 -1
  271. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_zh-CN.json +1 -1
  272. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_zh-HK.json +1 -1
  273. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_zh-TW.json +1 -1
  274. package/chunks/AtmosphereCompositing.glsl.js +1 -1
  275. package/chunks/Bufferer-Dw9Qi4T1.js +1 -1
  276. package/chunks/Centroid-DZi-eb9F.js +1 -1
  277. package/chunks/Clouds.glsl.js +1 -1
  278. package/chunks/Compositing.glsl.js +1 -1
  279. package/chunks/CutFillComposition.glsl.js +1 -1
  280. package/chunks/CutFillDepth.glsl.js +1 -1
  281. package/chunks/CutFillMask.glsl.js +1 -1
  282. package/chunks/CutFillReduction.glsl.js +1 -1
  283. package/chunks/CutFillTargetDepth.glsl.js +1 -1
  284. package/chunks/Distance2DCalculator-CXhBP-8I.js +1 -1
  285. package/chunks/Envelope.js +1 -1
  286. package/chunks/Envelope2D.js +1 -1
  287. package/chunks/FlatGeometry.js +1 -1
  288. package/chunks/FocusAreaColor.glsl.js +1 -1
  289. package/chunks/FocusAreaMask.glsl.js +1 -1
  290. package/chunks/Fog.glsl.js +1 -1
  291. package/chunks/GaussianSplat.glsl.js +1 -1
  292. package/chunks/GaussianSplatShadow.glsl.js +1 -1
  293. package/chunks/GeodeticDistanceCalculator-Ce-woMPw.js +1 -1
  294. package/chunks/GeodeticUtils.js +1 -1
  295. package/chunks/Geometry.js +1 -1
  296. package/chunks/GeometryCleaner-BEJM7I4l.js +1 -1
  297. package/chunks/GlobalIllumination.glsl.js +1 -1
  298. package/chunks/GlobalIlluminationBlur.glsl.js +1 -1
  299. package/chunks/GlobalIlluminationUpscale.glsl.js +80 -65
  300. package/chunks/GlowBlur.glsl.js +1 -1
  301. package/chunks/GlowComposition.glsl.js +1 -1
  302. package/chunks/HazeCompositing.glsl.js +1 -1
  303. package/chunks/HighlightBlur.glsl.js +1 -1
  304. package/chunks/HighlightDownsample.glsl.js +1 -1
  305. package/chunks/Magnifier.glsl.js +1 -1
  306. package/chunks/MultiPathImpl.js +1 -1
  307. package/chunks/NoiseTextureAtlas.glsl.js +1 -1
  308. package/chunks/OITBlend.glsl.js +2 -2
  309. package/chunks/OITBlendEmission.glsl.js +1 -1
  310. package/chunks/OITDimOpaque.glsl.js +1 -1
  311. package/chunks/OperatorClip.js +1 -1
  312. package/chunks/OperatorCrosses.js +1 -1
  313. package/chunks/OperatorCut.js +1 -1
  314. package/chunks/OperatorDensify.js +1 -1
  315. package/chunks/OperatorGeneralize.js +1 -1
  316. package/chunks/OperatorGeodesicBuffer.js +1 -1
  317. package/chunks/OperatorGeodeticArea.js +1 -1
  318. package/chunks/OperatorGeodeticDensifyByLength.js +1 -1
  319. package/chunks/OperatorGeodeticDistance.js +1 -1
  320. package/chunks/OperatorGeodeticLength.js +1 -1
  321. package/chunks/OperatorIntegrate.js +1 -1
  322. package/chunks/OperatorIntersects.js +1 -1
  323. package/chunks/OperatorMultiPartToSinglePart.js +1 -1
  324. package/chunks/OperatorOverlaps.js +1 -1
  325. package/chunks/OperatorProject.js +1 -1
  326. package/chunks/OperatorProximity.js +1 -1
  327. package/chunks/OperatorProximityGeodesic.js +1 -1
  328. package/chunks/OperatorShapePreservingDensify.js +1 -1
  329. package/chunks/OperatorShapePreservingLength.js +1 -1
  330. package/chunks/OperatorShapePreservingProject.js +1 -1
  331. package/chunks/OperatorSimplifyOGC.js +1 -1
  332. package/chunks/OperatorTouches.js +1 -1
  333. package/chunks/OperatorWithin.js +1 -1
  334. package/chunks/OverlayCompositing.glsl.js +1 -1
  335. package/chunks/Point2D.js +1 -1
  336. package/chunks/PointRenderer.glsl.js +1 -1
  337. package/chunks/ProjectionTransformation.js +1 -1
  338. package/chunks/RasterColorizer.glsl.js +1 -1
  339. package/chunks/ShadowCastAccumulate.glsl.js +1 -1
  340. package/chunks/ShadowCastVisualize.glsl.js +2 -2
  341. package/chunks/SideCalculator2D-BNwb5gvz.js +1 -1
  342. package/chunks/SimpleAtmosphere.glsl.js +1 -1
  343. package/chunks/SpatialReference.js +1 -1
  344. package/chunks/Terrain.glsl.js +1 -1
  345. package/chunks/Texture.glsl.js +1 -1
  346. package/chunks/Transformation2D.js +1 -1
  347. package/chunks/Viewshed.glsl.js +1 -1
  348. package/chunks/aiServices.js +1 -1
  349. package/chunks/arcade.js +1 -1
  350. package/chunks/array.js +1 -1
  351. package/chunks/boundedPlane.js +1 -1
  352. package/chunks/constants.js +1 -1
  353. package/chunks/containsOperator.js +1 -1
  354. package/chunks/disjointOperator.js +1 -1
  355. package/chunks/distanceOperator.js +1 -1
  356. package/chunks/equalsOperator.js +1 -1
  357. package/chunks/languageUtils.js +1 -1
  358. package/chunks/pe.js +1 -1
  359. package/chunks/persistableUrlUtils.js +1 -1
  360. package/chunks/relateOperator.js +1 -1
  361. package/chunks/symmetricDifferenceOperator.js +1 -1
  362. package/chunks/unionOperator.js +1 -1
  363. package/chunks/vec2.js +1 -1
  364. package/chunks/vec3.js +1 -1
  365. package/chunks/vec4.js +1 -1
  366. package/config.js +1 -1
  367. package/core/accessorSupport/decorators/persistable.js +1 -1
  368. package/effects/FocusArea.js +1 -1
  369. package/geometry/coordinateFormatter.js +1 -1
  370. package/geometry/operators/extendOperator.js +1 -1
  371. package/geometry/operators/gx/geodeticUtils.js +1 -1
  372. package/geometry/operators/gx/operatorAffineTransform.js +1 -1
  373. package/geometry/operators/gx/operatorAlphaShape.js +1 -1
  374. package/geometry/operators/gx/operatorAutoComplete.js +1 -1
  375. package/geometry/operators/gx/operatorBoundary.js +1 -1
  376. package/geometry/operators/gx/operatorBuffer.js +1 -1
  377. package/geometry/operators/gx/operatorConvexHull.js +1 -1
  378. package/geometry/operators/gx/operatorDifference.js +1 -1
  379. package/geometry/operators/gx/operatorGeodesicBuffer.js +1 -1
  380. package/geometry/operators/gx/operatorGeodeticArea.js +1 -1
  381. package/geometry/operators/gx/operatorGeodeticDensify.js +1 -1
  382. package/geometry/operators/gx/operatorGeodeticDistance.js +1 -1
  383. package/geometry/operators/gx/operatorGeodeticLength.js +1 -1
  384. package/geometry/operators/gx/operatorGraphicBuffer.js +1 -1
  385. package/geometry/operators/gx/operatorIntersection.js +1 -1
  386. package/geometry/operators/gx/operatorLabelPoint.js +1 -1
  387. package/geometry/operators/gx/operatorLinesToPolygons.js +1 -1
  388. package/geometry/operators/gx/operatorLocateBetween.js +1 -1
  389. package/geometry/operators/gx/operatorMinimumBoundingCircle.js +1 -1
  390. package/geometry/operators/gx/operatorOffset.js +1 -1
  391. package/geometry/operators/gx/operatorPolygonOverlay.js +1 -1
  392. package/geometry/operators/gx/operatorPolygonSlicer.js +1 -1
  393. package/geometry/operators/gx/operatorProject.js +1 -1
  394. package/geometry/operators/gx/operatorProximityGeodesic.js +1 -1
  395. package/geometry/operators/gx/operatorShapePreservingProject.js +1 -1
  396. package/geometry/operators/gx/operatorSimplify.js +1 -1
  397. package/geometry/operators/gx/operatorSinglePartToMultiPart.js +1 -1
  398. package/geometry/operators/gx/operatorSymmetricDifference.js +1 -1
  399. package/geometry/operators/gx/operatorUnion.js +1 -1
  400. package/geometry/operators/isNearOperator.js +1 -1
  401. package/geometry/operators/json/containsOperator.js +1 -1
  402. package/geometry/operators/json/disjointOperator.js +1 -1
  403. package/geometry/operators/locateBetweenOperator.js +1 -1
  404. package/geometry/operators/reshapeOperator.js +1 -1
  405. package/geometry/operators/support/apiConverter.js +1 -1
  406. package/geometry/operators/support/geographicTransformationUtils.js +1 -1
  407. package/geometry/operators/support/initNoPeFactory.js +1 -1
  408. package/geometry/operators/support/jsonConverter.js +1 -1
  409. package/geometry/operators/support/projectionTransformation.js +1 -1
  410. package/geometry/operators/symmetricDifferenceOperator.js +1 -1
  411. package/geometry/operators/unionOperator.js +1 -1
  412. package/geometry/pe.js +1 -1
  413. package/geometry/support/MeshTexture.js +1 -1
  414. package/geometry/support/boundedPlane.js +1 -1
  415. package/geometry/support/buffer/math/vec3.js +1 -1
  416. package/geometry/support/buffer/math/vec4.js +1 -1
  417. package/geometry/support/buffer/utils/vec2.js +1 -1
  418. package/geometry/support/coordinateSystem.js +1 -1
  419. package/geometry/support/meshUtils/extent.js +1 -1
  420. package/geometry/support/meshUtils/loadGLTFMesh.js +1 -1
  421. package/geometry/support/meshUtils/projection.js +1 -1
  422. package/geometry/support/meshUtils/vertexSpaceConversion.js +1 -1
  423. package/geometry/support/spatialReferenceUtils.js +1 -1
  424. package/geometry/support/vcsData.js +1 -1
  425. package/kernel.js +1 -1
  426. package/layers/ImageryTileLayer.js +1 -1
  427. package/layers/IntegratedMesh3DTilesLayer.js +1 -1
  428. package/layers/IntegratedMeshLayer.js +1 -1
  429. package/layers/KnowledgeGraphLayer.js +1 -1
  430. package/layers/knowledgeGraph/KnowledgeGraphLayerDataManager.js +1 -1
  431. package/layers/knowledgeGraph/cypherUtils.js +1 -1
  432. package/layers/mixins/ArcGISImageService.js +1 -1
  433. package/layers/mixins/FeatureLayerBase.d.ts +12 -0
  434. package/layers/mixins/FeatureLayerBase.js +1 -1
  435. package/layers/orientedImagery/transformations/utils.js +1 -1
  436. package/layers/raster/datasets/ImageAuxRaster.js +1 -1
  437. package/layers/raster/formats/RasterCodec.js +1 -1
  438. package/layers/raster/functions/rasterProjectionHelper.js +1 -1
  439. package/layers/support/ImageElement.js +1 -1
  440. package/layers/support/ParquetFilesData.js +1 -1
  441. package/layers/support/SceneFilter.js +1 -1
  442. package/layers/support/Sublayer.d.ts +25 -0
  443. package/layers/support/Sublayer.js +1 -1
  444. package/linkChart/LinkChartProperties.js +1 -1
  445. package/linkChart/utils.js +1 -1
  446. package/package.json +2 -2
  447. package/portal/PortalItem.js +1 -1
  448. package/renderers/UniqueValueRenderer.js +1 -1
  449. package/rest/knowledgeGraphService.js +1 -1
  450. package/support/arcadeUtils.js +1 -1
  451. package/support/persistableUrlUtils.js +1 -1
  452. package/support/revision.js +1 -1
  453. package/symbols/Symbol3D.js +1 -1
  454. package/symbols/cim/CIMSymbolDrawHelper.js +1 -1
  455. package/symbols/cim/utils.js +1 -1
  456. package/symbols/support/IconSymbol3DLayerResource.js +1 -1
  457. package/symbols/support/cimSymbolUtils.js +1 -1
  458. package/symbols/support/urlUtils.js +1 -1
  459. package/symbols/support/utils.js +1 -1
  460. package/symbols/support/webStyleSymbolUtils.js +1 -1
  461. package/third-party-notices.txt +184 -0
  462. package/views/2d/ViewStateManager.js +1 -1
  463. package/views/2d/engine/webgl/AttributeStoreView.js +1 -1
  464. package/views/2d/engine/webgl/RenderingDevice.js +1 -1
  465. package/views/2d/engine/webgl/effects/HittestEffect.js +1 -1
  466. package/views/2d/engine/webgl/shaderGraph/techniques/featureTechniqueUtils.js +1 -1
  467. package/views/2d/engine/webgl/shaderGraph/techniques/markers/MarkerShader.js +1 -1
  468. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/AFeatureShader.js +1 -1
  469. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/FillShader.js +1 -1
  470. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/LineShader.js +1 -1
  471. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/OutlineFillShader.js +1 -1
  472. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/constants.js +1 -1
  473. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/hittestUtils.js +1 -1
  474. package/views/2d/engine/webgl/shaderGraph/techniques/text/TextShader.js +1 -1
  475. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  476. package/views/2d/interactive/editingTools/TransformTool.js +1 -1
  477. package/views/2d/interactive/editingTools/manipulations/ScaleManipulation.js +1 -1
  478. package/views/2d/layers/FeatureLikeLayerView2D.js +1 -1
  479. package/views/2d/layers/features/FeatureContainer.js +1 -1
  480. package/views/3d/analysis/ShadowCastAnalysisView3D.js +1 -1
  481. package/views/3d/analysis/Slice/SliceController.js +1 -1
  482. package/views/3d/analysis/Slice/SliceTool.js +1 -1
  483. package/views/3d/analysis/Slice/sliceToolUtils.js +1 -1
  484. package/views/3d/analysis/Viewshed/ViewshedFieldOfViewManipulation.js +1 -1
  485. package/views/3d/analysis/Viewshed/ViewshedScaleOrientManipulation.js +1 -1
  486. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillController.js +1 -1
  487. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillVisualization.js +1 -1
  488. package/views/3d/focusAreaUtils.js +1 -1
  489. package/views/3d/interactive/editingTools/transform/extentTransform/ExtentRotate.js +1 -1
  490. package/views/3d/interactive/editingTools/transform/extentTransform/ExtentScale.js +1 -1
  491. package/views/3d/interactive/editingTools/transform/extentTransform/extentUtils.js +1 -1
  492. package/views/3d/layers/SceneLayerWorker.js +1 -1
  493. package/views/3d/layers/graphics/Deconflictor.js +1 -1
  494. package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
  495. package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
  496. package/views/3d/layers/graphics/GraphicsDeconflictor.js +1 -1
  497. package/views/3d/layers/graphics/objectResourceUtils.js +1 -1
  498. package/views/3d/layers/i3s/PointCloudRenderer.js +1 -1
  499. package/views/3d/layers/i3s/meshUtils.js +1 -1
  500. package/views/3d/state/ScreenSizePerspective.js +1 -1
  501. package/views/3d/support/ViewSlice.js +1 -1
  502. package/views/3d/terrain/OverlayRenderer.js +1 -1
  503. package/views/3d/terrain/RasterColorizer.glsl.js +1 -1
  504. package/views/3d/terrain/RasterTile.js +1 -1
  505. package/views/3d/terrain/TerrainRenderer.js +1 -1
  506. package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
  507. package/views/3d/webgl-engine/core/shaderLibrary/shading/GlobalIlluminationWeights.glsl.js +3 -5
  508. package/views/3d/webgl-engine/effects/atmosphere/ChapmanAtmosphere.js +1 -1
  509. package/views/3d/webgl-engine/effects/atmosphere/LocalAtmosphere.js +1 -1
  510. package/views/3d/webgl-engine/effects/atmosphere/MarsAtmosphere.js +1 -1
  511. package/views/3d/webgl-engine/effects/atmosphere/SimpleAtmosphere.glsl.js +1 -1
  512. package/views/3d/webgl-engine/effects/blit/Blit.js +1 -1
  513. package/views/3d/webgl-engine/effects/clouds/Clouds.glsl.js +1 -1
  514. package/views/3d/webgl-engine/effects/clouds/CloudsRenderer.js +1 -1
  515. package/views/3d/webgl-engine/effects/clouds/CloudsTechnique.js +1 -1
  516. package/views/3d/webgl-engine/effects/clouds/NoiseTextureAtlas.glsl.js +1 -1
  517. package/views/3d/webgl-engine/effects/clouds/NoiseTextureAtlas.js +1 -1
  518. package/views/3d/webgl-engine/effects/clouds/NoiseTextureAtlasTechnique.js +1 -1
  519. package/views/3d/webgl-engine/effects/focusArea/FocusAreaColor.glsl.js +1 -1
  520. package/views/3d/webgl-engine/effects/focusArea/FocusAreaColorNode.js +1 -1
  521. package/views/3d/webgl-engine/effects/focusArea/FocusAreaColorTechnique.js +1 -1
  522. package/views/3d/webgl-engine/effects/focusArea/FocusAreaMask.glsl.js +1 -1
  523. package/views/3d/webgl-engine/effects/focusArea/FocusAreaMaskNode.js +1 -1
  524. package/views/3d/webgl-engine/effects/focusArea/FocusAreaMaskTechnique.js +1 -1
  525. package/views/3d/webgl-engine/effects/fog/Fog.glsl.js +1 -1
  526. package/views/3d/webgl-engine/effects/fog/Fog.js +1 -1
  527. package/views/3d/webgl-engine/effects/fog/FogTechnique.js +1 -1
  528. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.glsl.js +1 -1
  529. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.js +1 -1
  530. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationBlur.glsl.js +1 -1
  531. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationBlurTechnique.js +1 -1
  532. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationTechnique.js +1 -1
  533. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationTechniqueConfiguration.js +1 -1
  534. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationUpscale.glsl.js +1 -1
  535. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationUpscaleTechnique.js +1 -1
  536. package/views/3d/webgl-engine/effects/glow/Glow.js +1 -1
  537. package/views/3d/webgl-engine/effects/glow/GlowBlur.glsl.js +1 -1
  538. package/views/3d/webgl-engine/effects/glow/GlowBlurTechnique.js +1 -1
  539. package/views/3d/webgl-engine/effects/glow/GlowComposition.glsl.js +1 -1
  540. package/views/3d/webgl-engine/effects/glow/GlowCompositionTechnique.js +1 -1
  541. package/views/3d/webgl-engine/effects/haze/Haze.js +1 -1
  542. package/views/3d/webgl-engine/effects/haze/HazeCompositing.glsl.js +1 -1
  543. package/views/3d/webgl-engine/effects/haze/HazeCompositingTechnique.js +1 -1
  544. package/views/3d/webgl-engine/effects/highlight/Highlight.js +1 -1
  545. package/views/3d/webgl-engine/effects/highlight/HighlightBlur.glsl.js +1 -1
  546. package/views/3d/webgl-engine/effects/highlight/HighlightBlurTechnique.js +1 -1
  547. package/views/3d/webgl-engine/effects/highlight/HighlightDownsample.glsl.js +1 -1
  548. package/views/3d/webgl-engine/effects/highlight/HighlightDownsampleTechnique.js +1 -1
  549. package/views/3d/webgl-engine/effects/magnifier/Magnifier.glsl.js +1 -1
  550. package/views/3d/webgl-engine/effects/magnifier/Magnifier.js +1 -1
  551. package/views/3d/webgl-engine/effects/magnifier/MagnifierTechnique.js +1 -1
  552. package/views/3d/webgl-engine/effects/transparency/OITBlend.glsl.js +1 -1
  553. package/views/3d/webgl-engine/effects/transparency/OITBlend.js +1 -1
  554. package/views/3d/webgl-engine/effects/transparency/OITBlendTechnique.js +1 -1
  555. package/views/3d/webgl-engine/effects/transparency/OITDimOpaque.glsl.js +1 -1
  556. package/views/3d/webgl-engine/effects/transparency/OITDimOpaqueTechnique.js +1 -1
  557. package/views/3d/webgl-engine/lib/Compositor.js +1 -1
  558. package/views/3d/webgl-engine/lib/CutFillComputationRenderNode.js +1 -1
  559. package/views/3d/webgl-engine/lib/CutFillVisualizationRenderNode.js +1 -1
  560. package/views/3d/webgl-engine/lib/GaussianSplatRenderNode.js +1 -1
  561. package/views/3d/webgl-engine/lib/GaussianSplatShadowRenderNode.js +1 -1
  562. package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
  563. package/views/3d/webgl-engine/lib/ShadowCastRenderer.js +1 -1
  564. package/views/3d/webgl-engine/lib/SliceHelper.js +1 -1
  565. package/views/3d/webgl-engine/lib/Texture.glsl.js +1 -1
  566. package/views/3d/webgl-engine/lib/TextureTechnique.js +1 -1
  567. package/views/3d/webgl-engine/lib/Viewshed.js +1 -1
  568. package/views/3d/webgl-engine/lib/intersectorUtils.js +1 -1
  569. package/views/3d/webgl-engine/shaders/AtmosphereCompositing.glsl.js +1 -1
  570. package/views/3d/webgl-engine/shaders/AtmosphereCompositingTechnique.js +1 -1
  571. package/views/3d/webgl-engine/shaders/Compositing.glsl.js +1 -1
  572. package/views/3d/webgl-engine/shaders/CompositingTechnique.js +1 -1
  573. package/views/3d/webgl-engine/shaders/CutFillComposition.glsl.js +1 -1
  574. package/views/3d/webgl-engine/shaders/CutFillCompositionTechnique.js +1 -1
  575. package/views/3d/webgl-engine/shaders/CutFillDepth.glsl.js +1 -1
  576. package/views/3d/webgl-engine/shaders/CutFillDepthTechnique.js +1 -1
  577. package/views/3d/webgl-engine/shaders/CutFillMask.glsl.js +1 -1
  578. package/views/3d/webgl-engine/shaders/CutFillMaskTechnique.js +1 -1
  579. package/views/3d/webgl-engine/shaders/CutFillReduction.glsl.js +1 -1
  580. package/views/3d/webgl-engine/shaders/CutFillReductionTechnique.js +1 -1
  581. package/views/3d/webgl-engine/shaders/CutFillTargetDepth.glsl.js +1 -1
  582. package/views/3d/webgl-engine/shaders/CutFillTargetDepthTechnique.js +1 -1
  583. package/views/3d/webgl-engine/shaders/GaussianSplat.glsl.js +1 -1
  584. package/views/3d/webgl-engine/shaders/GaussianSplatShadow.glsl.js +1 -1
  585. package/views/3d/webgl-engine/shaders/GaussianSplatShadowTechnique.js +1 -1
  586. package/views/3d/webgl-engine/shaders/GaussianSplatTechnique.js +1 -1
  587. package/views/3d/webgl-engine/shaders/OverlayCompositing.glsl.js +1 -1
  588. package/views/3d/webgl-engine/shaders/OverlayCompositingTechnique.js +1 -1
  589. package/views/3d/webgl-engine/shaders/PointRenderer.glsl.js +1 -1
  590. package/views/3d/webgl-engine/shaders/PointRendererTechnique.js +1 -1
  591. package/views/3d/webgl-engine/shaders/ShadowCastAccumulate.glsl.js +1 -1
  592. package/views/3d/webgl-engine/shaders/ShadowCastAccumulateTechnique.js +1 -1
  593. package/views/3d/webgl-engine/shaders/ShadowCastMaskTechnique.js +1 -1
  594. package/views/3d/webgl-engine/shaders/ShadowCastVisualize.glsl.js +1 -1
  595. package/views/3d/webgl-engine/shaders/ShadowCastVisualizeTechnique.js +1 -1
  596. package/views/3d/webgl-engine/shaders/Terrain.glsl.js +1 -1
  597. package/views/3d/webgl-engine/shaders/TerrainTechnique.js +1 -1
  598. package/views/3d/webgl-engine/shaders/Viewshed.glsl.js +1 -1
  599. package/views/3d/webgl-engine/shaders/ViewshedTechnique.js +1 -1
  600. package/views/interactive/editGeometry/support/editPlaneUtils.js +1 -1
  601. package/views/interactive/snapping/featureSources/featureServiceSource/tileUtils.js +1 -1
  602. package/webdoc/support/webdocSaveUtils.js +1 -1
  603. package/widgets/Attachments.d.ts +0 -1
  604. package/widgets/BuildingExplorer/BuildingLevelPicker/BuildingLevelPicker.js +1 -1
  605. package/widgets/BuildingExplorer/BuildingLevelPicker/constants.js +1 -1
  606. package/widgets/Features.d.ts +1 -1
  607. package/widgets/LayerList/LayerListItem.js +1 -1
  608. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  609. package/widgets/OrientedImageryViewer/services/SuperimposeService.js +1 -1
  610. package/widgets/OrientedImageryViewer/support/superimposeUtils.js +1 -1
  611. package/widgets/OrientedImageryViewer.js +1 -1
  612. package/widgets/Popup.d.ts +2 -24
  613. package/widgets/ShadowCast/ShadowCastViewModel.js +1 -1
  614. package/widgets/TableList/support/tableListUtils.js +1 -1
  615. package/widgets/TableList.js +1 -1
  616. package/widgets/support/ContingentValuesManager.js +1 -1
  617. package/assets/esri/core/workers/chunks/09630888267cde87654f.js +0 -1
  618. package/assets/esri/core/workers/chunks/0d9d33f29124d464a4cb.js +0 -1
  619. package/assets/esri/core/workers/chunks/0e333f1bce992508b68a.js +0 -1
  620. package/assets/esri/core/workers/chunks/0fa207c68dfd7ddee160.js +0 -1
  621. package/assets/esri/core/workers/chunks/13838b6c045425e73cf8.js +0 -1
  622. package/assets/esri/core/workers/chunks/15167eeb6d7dbe7e392d.js +0 -1
  623. package/assets/esri/core/workers/chunks/177472a6a9beb1590934.js +0 -1
  624. package/assets/esri/core/workers/chunks/1d0f9f147bfa00b38d48.js +0 -1
  625. package/assets/esri/core/workers/chunks/1d54b71c43d9d6a5f713.js +0 -1
  626. package/assets/esri/core/workers/chunks/1f6b7626f333809837ef.js +0 -1
  627. package/assets/esri/core/workers/chunks/24646a1176ce34039155.js +0 -1
  628. package/assets/esri/core/workers/chunks/268ed861c882740c805b.js +0 -1
  629. package/assets/esri/core/workers/chunks/2b52c1c01cf568ba01fb.js +0 -1
  630. package/assets/esri/core/workers/chunks/3116a1c2b67a296ba86e.js +0 -1
  631. package/assets/esri/core/workers/chunks/32c17c299c7622ae0d71.js +0 -1
  632. package/assets/esri/core/workers/chunks/34f79355145c8e4c59dd.js +0 -1
  633. package/assets/esri/core/workers/chunks/3be111488365768fd917.js +0 -1
  634. package/assets/esri/core/workers/chunks/3f0483cbcd893acf240c.js +0 -1
  635. package/assets/esri/core/workers/chunks/40d251b6b42a41d68bd2.js +0 -1
  636. package/assets/esri/core/workers/chunks/4a23b27bfbcfa08fd9a7.js +0 -1
  637. package/assets/esri/core/workers/chunks/4c54cb80c4dc9bbbd395.js +0 -1
  638. package/assets/esri/core/workers/chunks/598271956c46e21e5c09.js +0 -1
  639. package/assets/esri/core/workers/chunks/5b6f2bfdcdd207d8ae42.js +0 -1
  640. package/assets/esri/core/workers/chunks/5bc299f7f89a07a6e6a6.js +0 -1
  641. package/assets/esri/core/workers/chunks/5c7ba4b8a9ec2e2e02b5.js +0 -1
  642. package/assets/esri/core/workers/chunks/60915a3708a34da1977e.js +0 -1
  643. package/assets/esri/core/workers/chunks/61c523dd9d8027922465.js +0 -1
  644. package/assets/esri/core/workers/chunks/65520a443e3811255bea.js +0 -1
  645. package/assets/esri/core/workers/chunks/671826fe25105aedcce4.js +0 -1
  646. package/assets/esri/core/workers/chunks/6b79c254897ece95b7a3.js +0 -1
  647. package/assets/esri/core/workers/chunks/6c35583707f5c339ee99.js +0 -1
  648. package/assets/esri/core/workers/chunks/6cb467a9517f024be72f.js +0 -1
  649. package/assets/esri/core/workers/chunks/71119398ec91f1b209d7.js +0 -1
  650. package/assets/esri/core/workers/chunks/8ac8ef856ed9592c433b.js +0 -1
  651. package/assets/esri/core/workers/chunks/8fedb32055ac7f771419.js +0 -1
  652. package/assets/esri/core/workers/chunks/9482a6d7baa24bbf5693.js +0 -1
  653. package/assets/esri/core/workers/chunks/9c11e1fe785e1385fdb1.js +0 -1
  654. package/assets/esri/core/workers/chunks/a567d001fcfa1f1cdeea.js +0 -1
  655. package/assets/esri/core/workers/chunks/afdc6fc453157528cf9b.js +0 -1
  656. package/assets/esri/core/workers/chunks/b5ced451d331ca1ffb68.js +0 -1
  657. package/assets/esri/core/workers/chunks/b7f5d51ac26f37837b3b.js +0 -1
  658. package/assets/esri/core/workers/chunks/ba7fe21a78ea37a02b7c.js +0 -1
  659. package/assets/esri/core/workers/chunks/bb3ab2453ccde2f2611c.js +0 -1
  660. package/assets/esri/core/workers/chunks/bb81da98546c4d923e0d.js +0 -1
  661. package/assets/esri/core/workers/chunks/beba9f2213d8a850ddb6.js +0 -1
  662. package/assets/esri/core/workers/chunks/c1189316d24fb4cdb2a0.js +0 -1
  663. package/assets/esri/core/workers/chunks/d30790c69724258dab2b.js +0 -1
  664. package/assets/esri/core/workers/chunks/d35c475f004367e333eb.js +0 -1
  665. package/assets/esri/core/workers/chunks/d95ffd990b3a7df69e1e.js +0 -1
  666. package/assets/esri/core/workers/chunks/dd6efa0afe879bd11a2e.js +0 -1
  667. package/assets/esri/core/workers/chunks/de25311b6d13bf1c6089.js +0 -2
  668. package/assets/esri/core/workers/chunks/dec51409372764e7093d.js +0 -1
  669. package/assets/esri/core/workers/chunks/e133840540abf20262a4.js +0 -1
  670. package/assets/esri/core/workers/chunks/e63e24101e7e92c62d98.js +0 -1
  671. package/assets/esri/core/workers/chunks/e785f76c1a75cb1d1e1f.js +0 -1
  672. package/assets/esri/core/workers/chunks/f196ad0c7dbcbf632776.js +0 -1
  673. package/assets/esri/core/workers/chunks/f27397379c6c88bc6ef4.js +0 -1
  674. package/assets/esri/core/workers/chunks/f53805c7a84203305b2c.js +0 -1
  675. package/assets/esri/core/workers/chunks/f60292d97bcdbf19165b.js +0 -1
  676. package/assets/esri/core/workers/chunks/f6ebec8d2248c719b89f.js +0 -1
  677. package/assets/esri/core/workers/chunks/fae79769df54eb4c4154.js +0 -1
  678. package/assets/esri/core/workers/chunks/fd2afff07aaac8203c18.js +0 -1
  679. package/assets/esri/core/workers/chunks/ff7708aaa2de720e3a47.js +0 -1
  680. /package/assets/esri/core/workers/chunks/{55ccb8ed7325efb62091.js.LICENSE.txt → 29b00d07d3e1d095c590.js.LICENSE.txt} +0 -0
  681. /package/assets/esri/core/workers/chunks/{de25311b6d13bf1c6089.js.LICENSE.txt → 35fdd62277fd06468a29.js.LICENSE.txt} +0 -0
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{__addDisposableResource as e,__disposeResources as t}from"tslib";import{G as s,a as i,j as n,t as r,k as m,e as o,l as a,m as h,f as l,d as c,g as u}from"./Geometry.js";import{G as f}from"./GeometryCursor.js";import{C as _,c as g,P as d,E as p,s as b}from"./Envelope.js";import{i as y,m as P,P as x,h as C,d as D,a as w}from"./Point2D.js";import{L as T,D as v,P as S,a as I,i as M,E,n as V}from"./MultiPathImpl.js";import{Envelope2D as k}from"./Envelope2D.js";import{T as R}from"./Transformation2D.js";import{c as B}from"./GeometryCleaner-BEJM7I4l.js";import{p as A,f as X,y as Y}from"./SpatialReference.js";import{O as F}from"./OperatorSimplifyOGC.js";import{O as L}from"./OperatorGeneralize.js";var q;function z(e,t,s,i,n,r){return{m_from:e.clone(),m_to:t.clone(),m_center:s.clone(),m_next:n,m_type:i}}function j(e,t,s,i,n){return{m_from:e.clone(),m_to:t.clone(),m_next:s,m_type:4,m_center:new x}}!function(e){e[e.enumDummy=256]="enumDummy",e[e.enumLine=1]="enumLine",e[e.enumArc=2]="enumArc",e[e.enumMiter=8]="enumMiter",e[e.enumBevel=16]="enumBevel",e[e.enumJoinMask=26]="enumJoinMask",e[e.enumConnectionMask=27]="enumConnectionMask"}(q||(q={}));class G extends f{constructor(e,t,s,i,n,r,m,o,a,h){super(),this.m_index=0,this.m_bufferedPolygon=null,this.m_x=0,this.m_y=0,this.m_progressTracker=h,this.m_parent=e,this.m_mp=t,this.m_distance=s,this.m_spatialReference=i,this.m_densifyDist=o,this.m_maxVertexInCompleteCircle=a,this.m_joins=n,this.m_caps=r,this.m_miterLimit=m}next(){const e=new d;for(;;){if(this.m_index===this.m_mp.getPointCount())return null;if(1===this.m_caps)return this.m_index=this.m_mp.getPointCount(),new S({vd:this.m_mp.getDescription()});if(this.m_mp.getPointByVal(this.m_index,e),this.m_index++,!e.isEmpty())break}let t,s=!1;if(null===this.m_bufferedPolygon&&(this.m_x=e.getX(),this.m_y=e.getY(),this.m_bufferedPolygon=this.m_parent.buffer(e,this.m_distance,this.m_spatialReference,this.m_joins,this.m_caps,this.m_miterLimit,this.m_densifyDist,this.m_maxVertexInCompleteCircle),s=!0),t=this.m_index<this.m_mp.getPointCount()?this.m_bufferedPolygon.clone():this.m_bufferedPolygon,!s){const s=new R,i=e.getX()-this.m_x,n=e.getY()-this.m_y;s.setShiftCoords(i,n),t.applyTransformation(s)}return b(t,0),t}getGeometryID(){return 0}getRank(){return 1}tock(){return!0}}class N extends f{constructor(e){super(),this.m_currentPathIndex=0,this.m_polyline=e}next(){if(!this.m_polyline)return null;const e=this.m_polyline.getImpl(),t=e.getPathCount();if(this.m_currentPathIndex<t){const t=this.m_currentPathIndex;if(this.m_currentPathIndex++,!e.isClosedPathInXYPlane(t)){let s=e.getXY(e.getPathEnd(t)-1);for(;this.m_currentPathIndex<e.getPathCount();){const t=e.getXY(e.getPathStart(this.m_currentPathIndex));if(e.isClosedPathInXYPlane(this.m_currentPathIndex))break;if(!t.equals(s))break;s=e.getXY(e.getPathEnd(this.m_currentPathIndex)-1),this.m_currentPathIndex++}}if(0===t&&this.m_currentPathIndex===this.m_polyline.getPathCount()){const e=this.m_polyline;return this.m_polyline=null,e}const s=new I({vd:this.m_polyline.getDescription()});s.addPath(this.m_polyline,t,!0);for(let i=t+1;i<this.m_currentPathIndex;i++)s.addSegmentsFromPath(this.m_polyline,i,0,e.getSegmentCountPath(i),!1);return this.m_currentPathIndex===this.m_polyline.getPathCount()&&(this.m_polyline=null),s}return null}getGeometryID(){return 0}getRank(){return 1}tock(){return!0}}class O extends f{constructor(e,t,s){super(),this.m_geometry=null,this.m_index=0,this.m_bufferer=e,this.m_geoms=t,this.m_index=0,this.m_bFilter=s}next(){if(null===this.m_geometry&&(this.m_index=0,this.m_geometry=this.m_geoms.next(),!this.m_geometry))return null;const e=this.m_geometry.getImpl();if(this.m_index<e.getPathCount()){const e=this.m_index;this.m_index++;return this.m_bufferer.bufferPolylinePath(this.m_geometry,e,this.m_bFilter)}return this.m_geometry=null,this.next()}getGeometryID(){return 0}getRank(){return 1}tock(){return!0}}class J extends f{constructor(e){super(),this.m_index=0,this.m_bufferer=e}next(){const e=this.m_bufferer.m_geometry;if(this.m_index<e.getPathCount()){const t=this.m_index,s=e.calculateRingArea2D(this.m_index);for(u(s>0),this.m_index++;this.m_index<e.getPathCount();){if(e.calculateRingArea2D(this.m_index)>0)break;this.m_index++}let i;return i=0===t&&this.m_index===e.getPathCount()?this.m_bufferer.bufferPolygonImpl(e,0,e.getPathCount()):this.m_bufferer.bufferPolygonImpl(e,t,this.m_index),i}return null}getGeometryID(){return 0}getRank(){return 1}tock(){return!0}}class U{constructor(e){this.m_geometry=null,this.m_bufferCommands=[],this.m_originalGeomType=s.enumUnknown,this.m_maxVertexInCompleteCircle=-1,this.m_circleTemplateSize=-1,this.m_oldCircleTemplateSize=0,this.m_spatialReference=null,this.m_tolerance=new _(0,0),this.m_smallTolerance=new _(0,0),this.m_filterTolerance=0,this.m_densifyDist=-1,this.m_distance=Number.NaN,this.m_absDistance=0,this.m_absDistanceReversed=0,this.m_dA=-1,this.m_miterLimit=4,this.m_joins=0,this.m_caps=0,this.m_bRoundBuffer=!0,this.m_bOutputLoops=!0,this.m_bFilter=!0,this.m_circleTemplate=[],this.m_leftStack=[],this.m_middleStack=[],this.m_helperLine1=new T,this.m_helperLine2=new T,this.m_helperArray=[],this.m_progressCounter=0,this.m_densificator=v.constructDefault(e),this.m_progressTracker=e}buffer(e,t,s,l,c,u,f,_){if(e||i("Geometry.Bufferer.Impl.Buffer"),f<0&&i("Geometry.Bufferer.Impl.Buffer"),n(e.getGeometryType())&&r("Unsupported geometry type."),e.isEmpty())return new S({vd:e.getDescription()});if(this.m_joins=l,this.m_caps=c,this.m_bRoundBuffer=!1,this.m_miterLimit=u,this.m_originalGeomType=e.getGeometryType(),m(this.m_originalGeomType)?this.m_bRoundBuffer=0===this.m_joins:o(this.m_originalGeomType)?this.m_bRoundBuffer=0===this.m_caps:a(this.m_originalGeomType)&&(this.m_bRoundBuffer=0===this.m_joins&&0===this.m_caps),this.m_bFilter=this.m_bRoundBuffer,this.m_geometry=B(e),this.m_geometry.isEmpty())return new S({vd:e.getDescription()});const d=new k;this.m_geometry.queryLooseEnvelope(d),t>0&&d.inflateCoords(t,t),this.m_tolerance=g(s,d,!0),this.m_smallTolerance=g(null,d,!0),_<=0&&(_=96),this.m_spatialReference=s,this.m_distance=t,this.m_absDistance=Math.abs(this.m_distance),this.m_absDistanceReversed=0!==this.m_absDistance?1/this.m_absDistance:0,Number.isNaN(f)||0===f?f=1e-5*this.m_absDistance:f>.5*this.m_absDistance&&(f=.5*this.m_absDistance),_<12&&(_=12);const p=Math.abs(t)*(1-Math.cos(Math.PI/_));if(p>f)f=p;else if(0!==t){const e=Math.PI/Math.acos(1-f/Math.abs(t));e<_-1&&(_=Math.trunc(e))<12&&(_=12,f=Math.abs(t)*(1-Math.cos(Math.PI/_)))}this.m_densifyDist=f,this.m_maxVertexInCompleteCircle=_,this.m_filterTolerance=this.m_bRoundBuffer?Math.min(this.m_smallTolerance.total(),.25*this.m_densifyDist):0,this.m_circleTemplateSize=this.calcN(),this.m_circleTemplateSize!==this.m_oldCircleTemplateSize&&(this.m_circleTemplate.length=0,this.m_oldCircleTemplateSize=this.m_circleTemplateSize),this.m_densifyDist>0&&h(this.m_geometry)&&(this.m_geometry=this.m_densificator.densifyEx(this.m_geometry,0,this.m_densifyDist,0,0!==this.m_joins,y()));const b=this.bufferImpl();return this.m_geometry=null,b}generateCircleTemplate(){if(this.m_circleTemplate.length)return;const e=this.m_circleTemplateSize,t=Math.trunc((e+3)/4),s=.5*Math.PI/t;this.m_dA=s,this.m_circleTemplate=P(x,4*t);const i=Math.cos(s),n=Math.sin(s),r=x.construct(0,1);for(let m=0;m<t;m++)this.m_circleTemplate[m+0*t].setCoords(r.y,-r.x),this.m_circleTemplate[m+1*t].setCoords(-r.x,-r.y),this.m_circleTemplate[m+2*t].setCoords(-r.y,r.x),this.m_circleTemplate[m+3*t].setCoords(r.x,r.y),r.rotateReverse(i,n)}bufferImpl(){const e=this.m_geometry.getGeometryType();if(l(e)){const e=new I({vd:this.m_geometry.getDescription()});return e.addSegment(this.m_geometry,!0),this.m_geometry=e,this.bufferImpl()}if(this.m_distance<=this.m_tolerance.total()){if(!m(e))return new S({vd:this.m_geometry.getDescription()});if(this.m_distance<0){const e=new k;if(this.m_geometry.queryEnvelope(e),e.width()<=2*this.m_absDistance||e.height()<=2*this.m_absDistance)return new S({vd:this.m_geometry.getDescription()})}}switch(this.m_geometry.getGeometryType()){case s.enumPoint:return this.bufferPoint();case s.enumMultiPoint:return this.bufferMultiPoint();case s.enumPolyline:return this.bufferPolyline();case s.enumPolygon:return this.bufferPolygon();case s.enumEnvelope:return this.bufferEnvelope();default:c("")}}bufferPolyline(){if(this.isDegenerateGeometry(this.m_geometry)){const e=new d;this.m_geometry.getPointByVal(0,e);const t=new k;return this.m_geometry.queryEnvelope(t),e.setXY(t.getCenter()),this.bufferDegeneratePath(e,!0)}const e=this.m_geometry,t=this.m_geometry.getDescription();this.m_geometry=null;const s=new N(e);let i,n;i=0===this.m_joins?(new L).executeMany(s,.25*this.m_densifyDist,!1,this.m_progressTracker):s,n=this.m_bRoundBuffer?(new F).executeMany(i,null,!0,this.m_progressTracker):i;const r=new O(this,n,this.m_bFilter),m=(new A).executeMany(r,this.m_spatialReference,this.m_progressTracker,2),o=(new X).executeMany(m,this.m_spatialReference,!1,this.m_progressTracker).next();return null!==o?o:new S({vd:t})}bufferPolygon(){if(0===this.m_distance)return this.m_geometry;this.generateCircleTemplate();const e=(new X).execute(this.m_geometry,null,!1,this.m_progressTracker);if(this.m_distance<0){if(this.m_geometry=e,this.m_geometry.isEmpty())return this.m_geometry;const t=this.m_geometry,s=this.bufferPolygonImpl(t,0,t.getPathCount());return(new X).execute(s,this.m_spatialReference,!1,this.m_progressTracker)}{if(this.m_geometry=e,this.isDegenerateGeometry(this.m_geometry)){const e=new d;this.m_geometry.getPointByVal(0,e);const t=new k;return this.m_geometry.queryEnvelope(t),e.setXY(t.getCenter()),this.bufferDegeneratePath(e,!0)}const t=new J(this),s=(new A).executeMany(t,this.m_spatialReference,this.m_progressTracker,2),i=(new X).executeMany(s,this.m_spatialReference,!1,this.m_progressTracker).next();return null!==i?i:new S({vd:this.m_geometry.getDescription()})}}bufferPolygonImpl(e,t,s){const i=e,n=i.getImpl();let r=new S({vd:e.getDescription()});for(let m=t;m<s;m++){if(n.getPathSize(m)<1)continue;const t=n.calculateRingArea2D(m),s=new k;if(n.queryPathEnvelope(m,s),this.m_distance>0)if(t>0)if(this.isDegeneratePath(n,m)){const e=new d;n.getPointByVal(n.getPathStart(m),e),e.setXY(s.getCenter()),r.add(this.bufferDegeneratePath(e,!0),!1)}else{const t=new I({vd:e.getDescription()}),s=t.getImpl();if(M(this.m_geometry,m)){const e=this.bufferConvexPath(i,m);r.add(e,!1)}else{this.bufferClosedPath(this.m_geometry,m,s,this.m_bRoundBuffer,1);const e=this.bufferCleanup(t);r.add(e,!1)}}else{if(s.width()+this.m_tolerance.total()<=2*this.m_absDistance||s.height()+this.m_tolerance.total()<=2*this.m_absDistance)continue;const t=new I({vd:e.getDescription()}),i=t.getImpl();if(this.bufferClosedPath(this.m_geometry,m,i,this.m_bRoundBuffer,1),!t.isEmpty()){const e=s,n=Math.max(1,this.m_absDistance),m=e.clone();m.inflateCoords(n,n),i.addEnvelope(m,!1);const o=this.bufferCleanup(t);r.reserve(r.getPointCount()+o.getPointCount()-4),ee(o,r,m,!0)}}else if(t>0){if(s.width()+this.m_tolerance.total()<=2*this.m_absDistance||s.height()+this.m_tolerance.total()<=2*this.m_absDistance)continue;const t=new I({vd:e.getDescription()}),i=t.getImpl();if(this.bufferClosedPath(this.m_geometry,m,i,this.m_bRoundBuffer,-1),!t.isEmpty()){const e=new k;i.queryLooseEnvelope(e);const s=Math.max(1,this.m_absDistance),n=e.clone();n.inflateCoords(s,s),i.addEnvelope(n,!1);ee(this.bufferCleanup(t),r,n,!0)}}else{const t=new I({vd:e.getDescription()}),s=t.getImpl();this.bufferClosedPath(this.m_geometry,m,s,this.m_bRoundBuffer,-1);const i=this.bufferCleanup(t);for(let e=0,n=i.getPathCount();e<n;e++)r.addPath(i,e,!0)}}if(this.m_distance>0){if(r.getPathCount()>1){return this.bufferCleanup(r)}return H(r)}{const e=new k;if(r.queryLooseEnvelope(e),r.isEmpty())return H(r);{const t=Math.max(1,this.m_absDistance),s=e.clone();s.inflateCoords(t,t),r.addEnvelope(s,!1);const i=this.bufferCleanup(r);r=new S;const n=new S({vd:i.getDescription()});return ee(i,n,s,!1),H(n)}}}bufferPoint(){return this.bufferPointImpl(this.m_geometry)}bufferPointImpl(e){const t=new S({vd:e.getDescription()});return 0===this.m_caps?(this.addCircle(t.getImpl(),e),this.setStrongSimple(t)):2===this.m_caps?(this.addSquare(t.getImpl(),e),this.setStrongSimple(t)):t}bufferDegeneratePath(e,t){const s=new S({vd:e.getDescription()});return t&&0===this.m_joins||!t&&0===this.m_caps?(this.addCircle(s.getImpl(),e),this.setStrongSimple(s)):t||2!==this.m_caps?s:(this.addSquare(s.getImpl(),e),this.setStrongSimple(s))}bufferMultiPoint(){const e=new G(this,this.m_geometry,this.m_distance,this.m_spatialReference,this.m_joins,this.m_caps,this.m_miterLimit,this.m_densifyDist,this.m_maxVertexInCompleteCircle,this.m_progressTracker);return(new A).executeMany(e,this.m_spatialReference,this.m_progressTracker,2).next()}bufferEnvelope(){let e=new S({vd:this.m_geometry.getDescription()});if(this.m_distance<=0){if(0===this.m_distance)e.addEnvelope(this.m_geometry,!1),K(this.m_geometry,this.m_tolerance.total())&&(e=this.setStrongSimple(e));else{const t=new p;this.m_geometry.queryEnvelope(t),t.inflateCoords(this.m_distance,this.m_distance),e.addEnvelope(t,!1),K(t,this.m_tolerance.total())&&(e=this.setStrongSimple(e))}return e}if(1===this.m_joins){const t=new p({copy:this.m_geometry});return t.inflateCoords(this.m_absDistance,this.m_absDistance),e.addEnvelope(t,!1),e}const t=this.m_geometry.clone();if(0===t.width()||0===t.height()){if(0===t.width()&&0===t.height()){const e=new d({vd:this.m_geometry.getDescription()});return t.queryCornerByVal(0,e),this.m_geometry=e,this.bufferImpl()}const e=new I({vd:this.m_geometry.getDescription()}),s=new d;return t.queryCornerByVal(0,s),e.startPathPoint(s),t.queryCornerByVal(2,s),e.lineToPoint(s),this.m_geometry=e,this.bufferImpl()}return e.addEnvelope(this.m_geometry,!1),this.m_geometry=e,this.bufferConvexPath(e,0)}bufferConvexPath(e,t){this.generateCircleTemplate();const s=e.hasAttribute(10),i=new S({vd:e.getDescription()}),n=i.getImpl();i.reserve((this.m_circleTemplate.length/10+4)*e.getPathSize(t));const r=new x,m=new x,o=new x,a=new x(0,0),h=new x,l=new x,u=e.getImpl(),f=e.getPathSize(t),_=e.getPathStart(t);for(let g=0,d=e.getPathSize(t);g<d;g++){const e=u.getXY(_+g),t=u.getXY(_+(g+1)%f),i=u.getXY(_+(g+2)%f);h.setSub(t,e),0===h.length()&&c("");const d=s&&!!(1&u.getAttributeAsInt(10,(g+1)%f,0));h.normalize();const p=h.clone();h.leftPerpendicularThis(),h.scale(this.m_absDistance),r.setAdd(h,e),m.setAdd(h,t),0===g?n.startPath(r):n.lineTo(r),n.lineTo(m),l.setSub(i,t),0===l.length()&&c(""),l.normalize();const b=l.clone();l.leftPerpendicularThis(),l.scale(this.m_absDistance),o.setAdd(l,t);let y=q.enumArc;const P=d?0:this.m_joins;if(2===P)y=q.enumBevel;else if(1===P){const e=-p.crossProduct(b);a.setSub(p,b),a.scale(this.m_absDistance/e),a.length()<this.m_miterLimit*this.m_absDistance?(a.addThis(t),y=q.enumMiter):y=q.enumBevel}else a.assign(t);this.addJoin(y,n,a,m,o,!1,!1)}return H(i)}bufferPolylinePath(e,t,s){this.generateCircleTemplate();const i=e,n=i.getImpl();if(n.getPathSize(t)<1)return null;let r;if(r=this.m_bRoundBuffer?n.isClosedPathInXYPlane(t):n.isClosedPath(t),this.isDegeneratePath(n,t)&&this.m_distance>0){const e=new d;n.getPointByVal(n.getPathStart(t),e);const s=new k;return n.queryPathEnvelope(t,s),e.setXY(s.getCenter()),this.bufferDegeneratePath(e,r)}const m=new I({vd:e.getDescription()});m.reserve((Math.trunc(this.m_circleTemplate.length/10)+4)*n.getPathSize(t));const o=m.getImpl();return r?2!==this.bufferClosedPath(i,t,o,s,1)&&this.bufferClosedPath(i,t,o,s,-1):this.bufferOpenPath(i,t,o,s),this.bufferCleanup(m)}progress_(){}bufferCleanup(e,t=!1){const s=t?this.m_tolerance:this.m_smallTolerance;return Y(e,s,!0,!t,-1,this.m_progressTracker,0,!1)}calcN(){const e=4;if(0===this.m_densifyDist)return this.m_maxVertexInCompleteCircle;const t=1-this.m_densifyDist*Math.abs(this.m_absDistanceReversed);let s=e;return s=t<-1?e:2*Math.PI/Math.acos(t)+.5,s<e?s=e:s>this.m_maxVertexInCompleteCircle&&(s=this.m_maxVertexInCompleteCircle),Math.trunc(s)}addJoin(e,t,s,i,n,r,m){if(this.generateCircleTemplate(),r&&(t.startPath(i),r=!1),e===q.enumBevel)return void(m&&t.lineTo(n));if(e===q.enumMiter){const e=s.clone();return t.lineTo(e),void(m&&t.lineTo(n))}const o=new x;o.setSub(i,s),o.scale(this.m_absDistanceReversed);const a=new x;a.setSub(n,s),a.scale(this.m_absDistanceReversed);let h=Math.atan2(o.y,o.x)/this.m_dA;h<0&&(h=this.m_circleTemplate.length+h),h=this.m_circleTemplate.length-h;let l=Math.atan2(a.y,a.x)/this.m_dA;l<0&&(l=this.m_circleTemplate.length+l),l=this.m_circleTemplate.length-l,l<h&&(l+=this.m_circleTemplate.length);let c=Math.trunc(l),u=Math.ceil(h),f=this.m_circleTemplate[u%this.m_circleTemplate.length].clone();f.scaleAddThis(this.m_absDistance,s);const _=10*this.m_tolerance.total();f.sub(i).length()<_&&(u+=1),f=this.m_circleTemplate[c%this.m_circleTemplate.length].clone(),f.scaleAddThis(this.m_absDistance,s),f.sub(n).length()<_&&(c-=1);let g=c-u;g++;for(let d=0,p=u%this.m_circleTemplate.length;d<g;d++,p=(p+1)%this.m_circleTemplate.length)f=this.m_circleTemplate[p].clone(),f.scaleAddThis(this.m_absDistance,s),t.lineTo(f),this.progress_();m&&t.lineTo(n)}bufferClosedPath(e,t,s,i,n){const r=new E,m=r.addPathFromMultiPath(e,t,!0);return this.bufferClosedPathImpl(r,m,s,i,n)}bufferClosedPathImpl(e,t,s,i,n){const r=e.getFirstVertex(e.getFirstPath(t)),m=new d;e.queryPoint(r,m),e.filterClosePoints(this.m_filterTolerance,!1,!1,!1,-1);if(e.getPointCount(t)<2)return n<0?0:(this.m_bRoundBuffer&&this.addCircle(s,m),2);u(e.getFirstPath(t)!==V),u(e.getFirstVertex(e.getFirstPath(t))!==V);const o=e.getXY(e.getFirstVertex(e.getFirstPath(t))),a=new R;if(a.setShift(o.negate()),e.applyTransformation(a),i){const i=$(e,t,n,!0,this.m_absDistance,this.m_filterTolerance,this.m_densifyDist);if(u(1===i),e.getPointCount(t)<2)return n<0?0:(this.addCircle(s,m),2)}const h=0!==this.m_joins&&e.getVertexDescription().hasAttribute(10);this.m_bufferCommands.length=0;const l=e.getFirstPath(t);let c=e.getFirstVertex(l),f=1===n?e.getPrevVertex(c):e.getNextVertex(c),_=1===n?e.getNextVertex(c):e.getPrevVertex(c),g=!0;const p=new x,b=new x,y=new x,P=new x,C=new x,D=new x,w=new x,T=new x,v=this.m_absDistance,S=e.getPathSize(l),I=new x(0,0);for(let u=0;u<S;u++){b.assign(e.getXY(_)),g&&(p.assign(e.getXY(c)),y.assign(e.getXY(f)),D.setSub(p,y),D.normalize(),T.leftPerpendicularOther(D),T.scale(v),P.setAdd(T,p));const t=h&&!!(1&e.getAttributeAsDbl(10,c,0));C.setSub(b,p),C.normalize(),w.leftPerpendicularOther(C),w.scale(v);const s=new x;s.setAdd(p,w);const i=D.crossProduct(C),r=D.dotProduct(C);if(i<0||r<0&&i<Math.abs(r)*Number.EPSILON*8){let e=!1;const n=t?0:this.m_joins;if(1===n){const t=-i;I.setSub(D,C),I.scale(this.m_absDistance/t),I.length()<this.m_miterLimit*this.m_absDistance&&(I.addThis(p),e=!0),this.m_bufferCommands.push(z(P,s,I,e?q.enumMiter:q.enumBevel,this.m_bufferCommands.length+1))}else this.m_bufferCommands.push(z(P,s,p,0===n?q.enumArc:q.enumBevel,this.m_bufferCommands.length+1))}else P.equals(s)||(this.m_bufferCommands.push(j(P,p,this.m_bufferCommands.length+1)),this.m_bufferCommands.push(j(p,s,this.m_bufferCommands.length+1)));const m=new x;m.setAdd(b,w),this.m_bufferCommands.push(z(s,m,p,q.enumLine,this.m_bufferCommands.length+1)),P.setCoordsPoint2D(m),T.setCoordsPoint2D(w),y.setCoordsPoint2D(p),p.setCoordsPoint2D(b),D.setCoordsPoint2D(C),f=c,c=_,g=!1,_=1===n?e.getNextVertex(c):e.getPrevVertex(c)}return this.m_bufferCommands.at(-1).m_next=0,this.processBufferCommands(s),a.setShift(o),s.applyTransformationToPath(a,s.getPathCount()-1),1}bufferOpenPath(e,t,s,i){if(this.m_bRoundBuffer){const n=new I({vd:e.getDescription()});return n.addPath(e,t,!1),n.addSegmentsFromPath(e,t,0,e.getSegmentCountPath(t),!1),this.bufferClosedPath(n,0,s,i,1)}let n=0;const r=new I({vd:e.getDescription()}),m=new x(0,0);{const i=new E,o=i.addPathFromMultiPath(e,t,!1),a=i.getFirstVertex(i.getFirstPath(o)),h=new d;i.queryPoint(a,h),m.assign(h.getXY()),i.filterClosePoints(0,!1,!1,!1,-1);if(i.getPointCount(o)<2)return this.m_bRoundBuffer&&this.addCircle(s,h),2;const l=i.getGeometry(i.getFirstGeometry());r.addPath(l,0,!1),n=r.getPointCount()-1,r.addSegmentsFromPath(l,0,0,l.getSegmentCountPath(0)-1,!1)}const o=new E,a=o.addPathFromMultiPath(r,0,!0);u(o.getFirstPath(a)!==V),u(o.getFirstVertex(o.getFirstPath(a))!==V);const h=new R;h.setShift(m.negate()),o.applyTransformation(h),this.m_bufferCommands.length=0;const l=o.getFirstPath(a),c=0!==this.m_joins&&o.getVertexDescription().hasAttribute(10);let f=o.getFirstVertex(l),_=o.getPrevVertex(f),g=o.getNextVertex(f),p=!0;const b=new x,y=new x,P=new x,C=new x,D=new x,w=new x,T=new x,v=new x,S=this.m_absDistance,M=o.getPathSize(l),k=new x(0,0);for(let u=0;u<M;u++){let e=!1;0!==u&&u!==n||(e=!0),y.assign(o.getXY(g)),p&&(b.assign(o.getXY(f)),P.assign(o.getXY(_)),w.setSub(b,P),w.normalize(),v.leftPerpendicularOther(w),v.scale(S),C.setAdd(v,b));const t=c&&!!(1&o.getAttributeAsDbl(10,f,0));D.setSub(y,b),D.normalize(),T.leftPerpendicularOther(D),T.scale(S);const s=new x;s.setAdd(b,T);const i=w.crossProduct(D),r=w.dotProduct(D);if(i<0||r<0&&i<Math.abs(r)*Number.EPSILON*8)if(e)if(0===this.m_caps)this.m_bufferCommands.push(z(C,s,b,q.enumArc,this.m_bufferCommands.length+1));else if(1===this.m_caps)this.m_bufferCommands.push(z(C,s,b,q.enumLine,this.m_bufferCommands.length+1));else{const e=D.mul(this.m_absDistance).negate(),t=e.clone();e.addThis(C),t.addThis(s),this.m_bufferCommands.push(z(C,e,b,q.enumLine,this.m_bufferCommands.length+1)),this.m_bufferCommands.push(z(e,t,b,q.enumLine,this.m_bufferCommands.length+1)),this.m_bufferCommands.push(z(t,s,b,q.enumLine,this.m_bufferCommands.length+1))}else{let e=!1;const n=t?0:this.m_joins;if(1===n){const t=-i;k.setSub(w,D),k.scale(this.m_absDistance/t),k.length()<this.m_miterLimit*this.m_absDistance&&(k.addThis(b),e=!0),this.m_bufferCommands.push(z(C,s,k,e?q.enumMiter:q.enumBevel,this.m_bufferCommands.length+1))}else this.m_bufferCommands.push(z(C,s,b,0===n?q.enumArc:q.enumBevel,this.m_bufferCommands.length+1))}else C.equals(s)||(this.m_bufferCommands.push(j(C,b,this.m_bufferCommands.length+1)),this.m_bufferCommands.push(j(b,s,this.m_bufferCommands.length+1)));const m=new x;m.setAdd(y,T),this.m_bufferCommands.push(z(s,m,b,q.enumLine,this.m_bufferCommands.length+1)),C.setCoordsPoint2D(m),v.setCoordsPoint2D(T),P.setCoordsPoint2D(b),b.setCoordsPoint2D(y),w.setCoordsPoint2D(D),_=f,f=g,p=!1,g=o.getNextVertex(f)}return this.m_bufferCommands.at(-1).m_next=0,this.processBufferCommands(s),h.setShift(m),s.applyTransformationToPath(h,s.getPathCount()-1),1}processBufferCommands(e){const t=this.cleanupBufferCommands();let s=!0,i=t+1;for(let n=t;i!==t;n=i){const t=this.m_bufferCommands[n];i=-1!==t.m_next?t.m_next:(n+1)%this.m_bufferCommands.length,t.m_type&&(s&&(e.startPath(t.m_from),s=!1),t.m_type&q.enumJoinMask?this.addJoin(t.m_type,e,t.m_center,t.m_from,t.m_to,!1,!0):e.lineTo(t.m_to))}}cleanupBufferCommands(){this.m_helperArray=P(x,9);let e=0;for(let s=0,i=this.m_bufferCommands.length;s<i;){const t=this.m_bufferCommands[s];if(t.m_type&q.enumConnectionMask){e=s;break}s=t.m_next}let t=e+1;for(let s=e;t!==e;s=t){const e=this.m_bufferCommands[s];t=e.m_next;let i=1,n=null;for(;t!==s&&(n=this.m_bufferCommands[t],!(n.m_type&q.enumConnectionMask));)t=n.m_next,i++;if(1!==i&&(e.m_type&n.m_type)===q.enumLine){this.m_helperLine1.setStartXY(e.m_from),this.m_helperLine1.setEndXY(e.m_to),this.m_helperLine2.setStartXY(n.m_from),this.m_helperLine2.setEndXY(n.m_to);1===this.m_helperLine1.intersect(this.m_helperLine2,this.m_helperArray,null,null,this.m_smallTolerance.total())&&(e.m_to.assign(this.m_helperArray[0]),n.m_from.assign(this.m_helperArray[0]),e.m_next=t)}}return e}isDegeneratePath(e,t){if(1===e.getPathSize(t))return!0;if(0===this.m_joins&&0===this.m_caps){const s=new k;if(e.queryPathEnvelope(t,s),Math.max(s.width(),s.height())<.5*this.m_densifyDist)return!0}return!1}isDegenerateGeometry(e){if(0===this.m_joins&&0===this.m_caps){const t=new k;if(e.queryEnvelope(t),Math.max(t.width(),t.height())<.5*this.m_densifyDist)return!0}return!1}addCircle(e,t){const s=t.getXY();if(0!==this.m_circleTemplate.length){let t=this.m_circleTemplate[0].clone();t.scaleAddThis(this.m_absDistance,s),e.startPath(t);for(let i=1,n=this.m_circleTemplate.length;i<n;i++)t=this.m_circleTemplate[i].clone(),t.scaleAddThis(this.m_absDistance,s),e.lineTo(t);return}const i=this.m_circleTemplateSize,n=Math.trunc((i+3)/4),r=.5*Math.PI/n;e.reserve(4*n);const m=Math.cos(r),o=Math.sin(r);for(let a=3;a>=0;a--){const t=x.construct(0,this.m_absDistance);switch(a){case 0:for(let i=0;i<n;i++)e.lineToCoords(t.x+s.x,t.y+s.y),t.rotateReverse(m,o);break;case 1:for(let i=0;i<n;i++)e.lineToCoords(-t.y+s.x,t.x+s.y),t.rotateReverse(m,o);break;case 2:for(let i=0;i<n;i++)e.lineToCoords(-t.x+s.x,-t.y+s.y),t.rotateReverse(m,o);break;default:e.startPathCoords(t.y+s.x,-t.x+s.y);for(let i=1;i<n;i++)t.rotateReverse(m,o),e.lineToCoords(t.y+s.x,-t.x+s.y)}this.progress_()}}addSquare(e,t){const s=new p({vd:t.getDescription()});s.setCoords(t.getX(),t.getY(),t.getX(),t.getY()),s.inflateCoords(this.m_absDistance,this.m_absDistance),e.addEnvelope(s,!1)}setStrongSimple(e){return e.getImpl().setIsSimple(4,this.m_tolerance.total()),e.getImpl().updateOGCFlagsProtected(),e}}function H(e){return b(e,0),e}function K(e,t){return!!e.isEmpty()||Math.min(e.width(),e.height())>t}function Q(e,t,s,i,n,r,m,o){const a=e.getXY(s),h=e.getXY(i);if(a.equals(h))return-1;const l=.25*m,c=.25*m,f=new x;f.setSub(h,a);const _=f.length(),g=_*_*.25,d=r*r-g;if(d<=g)return-1;const p=Math.sqrt(d);f.normalize();const b=f.clone();b.rightPerpendicularThis();const y=g/p,P=y<=c,C=x.lerp(h,a,.5),T=b.clone(),v=y-l;T.scaleAddThis(Math.max(0,v),C);b.negate().scaleAddThis(p,C);const S=3.61*w(r-c),I=T.sub(a),M=T.sub(h);let E=!1,V=0;const k=D(64,0);u(o===k.length);{for(let o=e.getPrevVertexEx(i,n);o!==s;){if(1===e.getUserIndex(o,t))return-1;if(e.getXY(o).equals(h)){const t=e.getPrevVertexEx(o,n);e.removeVertex(o,!1),o=t;continue}break}const r=new x,m=a.clone();k[V++]=1;for(let o=e.getNextVertexEx(s,n);o!==i;){if(1===e.getUserIndex(o,t))return-1;const s=e.getXY(o);if(s.equals(m)){const t=e.getNextVertexEx(o,n);e.removeVertex(o,!1),o=t;continue}k[V++]=0;const i=new x;if(i.setSub(s,a),i.dotProduct(b)<0)return 0;(x.sqrDistance(s,a)>S||x.sqrDistance(s,h)>S)&&(E=!0);let l=0;s.sub(a).crossProduct(I)>=0&&(l=1);if(s.sub(h).crossProduct(M)<=0&&(l|=2),0===l)return 0;k[V-1]=l,r.assign(m),m.assign(s),o=e.getNextVertexEx(o,n)}if(1===V)return 0;u(V<k.length),k[V++]=2}let R=!0;for(let u=1,x=0;u<V;u++)if(k[u]!==k[u-1]&&(x++,R=x<3&&(1===x&&3===k[u]||2===x&&2===k[u]),!R))return 0;if(V>2&&R&&(3===V||!E)){let t=0,r=e.getNextVertexEx(s,n);for(P||(e.setXY(r,T),r=e.getNextVertexEx(r,n));r!==i;){const s=e.getNextVertexEx(r,n);e.removeVertex(r,!1),r=s,++t}return t}if(u(3!==V),E&&V>3)return 0;const B=a.clone();let A=s;const X=a.clone();let Y=1,F=-1,L=A,q=0;for(V=1;L!==i;){L=e.getNextVertexEx(L,n);const t=k[V++];if(0===t){if(L===i)break;continue}const s=e.getXY(L);if(-1!==F){if(3&(F&Y&t)){e.removeVertex(A,!0),q++,A=L,X.setCoordsPoint2D(s),Y=t;continue}if(3===Y&&0!==F&&0!==t){if(X.setCoordsPoint2D(T),P||X.equals(B)){e.removeVertex(A,!0),q++,A=L,X.setCoordsPoint2D(s),Y=t;continue}e.setXY(A,X)}}F=Y,B.setCoordsPoint2D(X),A=L,Y=t,X.setCoordsPoint2D(s)}return q}function W(e,t,s,i){let n=-1;const r=new x,m=new x,o=new x;for(let a=0,h=e.getPathSize(i),l=e.getFirstVertex(i);a<h;++a){-1===n&&(e.queryXY(l,m),n=e.getPrevVertex(l),-1!==n&&(e.queryXY(n,r),o.setSub(m,r),o.normalize()));const s=e.getNextVertex(l);if(-1===s)break;const i=e.getXY(s),a=i.sub(m);if(a.normalize(),-1!==n){a.dotProduct(o)<-.99&&Math.abs(a.crossProduct(o))<1e-7&&e.setUserIndex(l,t,1)}n=l,l=s,r.assign(m),m.assign(i),o.assign(a)}}function Z(s,i,n,r,m,o,a){const h={stack:[],error:void 0,hasError:!1};try{const t=s.getFirstPath(i),r=s.createUserIndex();e(h,C(()=>{s.removeUserIndex(r)},!1),!1),W(s,r,i,t);for(let e=0;e<100;++e){if(0===s.getPathSize(t))return 1;let e=s.getFirstVertex(t),i=s.getPathSize(t);if(i<3)return 1;s.isClosedPath(t)||(i-=1);const o=64;let h=0,l=!1;for(let t=0;t<i&&e!==V;t++){let c=0,u=e;for(let h=1,l=Math.min(o,i-t);h<l;h++)if(u=s.getNextVertexEx(u,n),h>1){const t=Q(s,r,e,u,n,m,a,o);if(-1===t)break;c+=t,i-=t}if(h+=c,l=c>0,l){const t=s.getPrevVertexEx(e,n);if(-1!==t){e=t,i++;continue}}e=s.getNextVertexEx(e,n)}if(0===h)break}return s.filterClosePoints(o,!1,!1,!1,-1),1}catch(l){h.error=l,h.hasError=!0}finally{t(h)}}function $(e,t,s,i,n,r,m){return Z(e,t,s,i,n,r,m)}function ee(e,t,s,i){for(let n=0,r=e.getPathCount();n<r;n++){const r=e.getXY(e.getPathStart(n));r.x!==s.xmin&&r.x!==s.xmax&&t.addPath(e,n,i)}}export{U as B};
2
+ import{__addDisposableResource as e,__disposeResources as t}from"tslib";import{G as s,r as i,d as n,A as r,i as m,j as o,b as a,h,k as l,q as c,g as u}from"./Geometry.js";import{G as f}from"./GeometryCursor.js";import{C as _,p as g,P as d,E as p,a7 as b}from"./Envelope.js";import{O as y,aa as P,P as x,ad as C,ac as D,aC as w}from"./Point2D.js";import{L as T,D as v,P as S,e as I,W as M,b as E,$ as V}from"./MultiPathImpl.js";import{Envelope2D as k}from"./Envelope2D.js";import{T as R}from"./Transformation2D.js";import{c as A}from"./GeometryCleaner-BEJM7I4l.js";import{h as B,g as X,ax as Y}from"./SpatialReference.js";import{O as q}from"./OperatorSimplifyOGC.js";import{O as F}from"./OperatorGeneralize.js";var L;function z(e,t,s,i,n,r){return{m_from:e.clone(),m_to:t.clone(),m_center:s.clone(),m_next:n,m_type:i}}function j(e,t,s,i,n){return{m_from:e.clone(),m_to:t.clone(),m_next:s,m_type:4,m_center:new x}}!function(e){e[e.enumDummy=256]="enumDummy",e[e.enumLine=1]="enumLine",e[e.enumArc=2]="enumArc",e[e.enumMiter=8]="enumMiter",e[e.enumBevel=16]="enumBevel",e[e.enumJoinMask=26]="enumJoinMask",e[e.enumConnectionMask=27]="enumConnectionMask"}(L||(L={}));class G extends f{constructor(e,t,s,i,n,r,m,o,a,h){super(),this.m_index=0,this.m_bufferedPolygon=null,this.m_x=0,this.m_y=0,this.m_progressTracker=h,this.m_parent=e,this.m_mp=t,this.m_distance=s,this.m_spatialReference=i,this.m_densifyDist=o,this.m_maxVertexInCompleteCircle=a,this.m_joins=n,this.m_caps=r,this.m_miterLimit=m}next(){const e=new d;for(;;){if(this.m_index===this.m_mp.getPointCount())return null;if(1===this.m_caps)return this.m_index=this.m_mp.getPointCount(),new S({vd:this.m_mp.getDescription()});if(this.m_mp.getPointByVal(this.m_index,e),this.m_index++,!e.isEmpty())break}let t,s=!1;if(null===this.m_bufferedPolygon&&(this.m_x=e.getX(),this.m_y=e.getY(),this.m_bufferedPolygon=this.m_parent.buffer(e,this.m_distance,this.m_spatialReference,this.m_joins,this.m_caps,this.m_miterLimit,this.m_densifyDist,this.m_maxVertexInCompleteCircle),s=!0),t=this.m_index<this.m_mp.getPointCount()?this.m_bufferedPolygon.clone():this.m_bufferedPolygon,!s){const s=new R,i=e.getX()-this.m_x,n=e.getY()-this.m_y;s.setShiftCoords(i,n),t.applyTransformation(s)}return b(t,0),t}getGeometryID(){return 0}getRank(){return 1}tock(){return!0}}class N extends f{constructor(e){super(),this.m_currentPathIndex=0,this.m_polyline=e}next(){if(!this.m_polyline)return null;const e=this.m_polyline.getImpl(),t=e.getPathCount();if(this.m_currentPathIndex<t){const t=this.m_currentPathIndex;if(this.m_currentPathIndex++,!e.isClosedPathInXYPlane(t)){let s=e.getXY(e.getPathEnd(t)-1);for(;this.m_currentPathIndex<e.getPathCount();){const t=e.getXY(e.getPathStart(this.m_currentPathIndex));if(e.isClosedPathInXYPlane(this.m_currentPathIndex))break;if(!t.equals(s))break;s=e.getXY(e.getPathEnd(this.m_currentPathIndex)-1),this.m_currentPathIndex++}}if(0===t&&this.m_currentPathIndex===this.m_polyline.getPathCount()){const e=this.m_polyline;return this.m_polyline=null,e}const s=new I({vd:this.m_polyline.getDescription()});s.addPath(this.m_polyline,t,!0);for(let i=t+1;i<this.m_currentPathIndex;i++)s.addSegmentsFromPath(this.m_polyline,i,0,e.getSegmentCountPath(i),!1);return this.m_currentPathIndex===this.m_polyline.getPathCount()&&(this.m_polyline=null),s}return null}getGeometryID(){return 0}getRank(){return 1}tock(){return!0}}class O extends f{constructor(e,t,s){super(),this.m_geometry=null,this.m_index=0,this.m_bufferer=e,this.m_geoms=t,this.m_index=0,this.m_bFilter=s}next(){if(null===this.m_geometry&&(this.m_index=0,this.m_geometry=this.m_geoms.next(),!this.m_geometry))return null;const e=this.m_geometry.getImpl();if(this.m_index<e.getPathCount()){const e=this.m_index;this.m_index++;return this.m_bufferer.bufferPolylinePath(this.m_geometry,e,this.m_bFilter)}return this.m_geometry=null,this.next()}getGeometryID(){return 0}getRank(){return 1}tock(){return!0}}class J extends f{constructor(e){super(),this.m_index=0,this.m_bufferer=e}next(){const e=this.m_bufferer.m_geometry;if(this.m_index<e.getPathCount()){const t=this.m_index,s=e.calculateRingArea2D(this.m_index);for(u(s>0),this.m_index++;this.m_index<e.getPathCount();){if(e.calculateRingArea2D(this.m_index)>0)break;this.m_index++}let i;return i=0===t&&this.m_index===e.getPathCount()?this.m_bufferer.bufferPolygonImpl(e,0,e.getPathCount()):this.m_bufferer.bufferPolygonImpl(e,t,this.m_index),i}return null}getGeometryID(){return 0}getRank(){return 1}tock(){return!0}}class U{constructor(e){this.m_geometry=null,this.m_bufferCommands=[],this.m_originalGeomType=s.enumUnknown,this.m_maxVertexInCompleteCircle=-1,this.m_circleTemplateSize=-1,this.m_oldCircleTemplateSize=0,this.m_spatialReference=null,this.m_tolerance=new _(0,0),this.m_smallTolerance=new _(0,0),this.m_filterTolerance=0,this.m_densifyDist=-1,this.m_distance=Number.NaN,this.m_absDistance=0,this.m_absDistanceReversed=0,this.m_dA=-1,this.m_miterLimit=4,this.m_joins=0,this.m_caps=0,this.m_bRoundBuffer=!0,this.m_bOutputLoops=!0,this.m_bFilter=!0,this.m_circleTemplate=[],this.m_leftStack=[],this.m_middleStack=[],this.m_helperLine1=new T,this.m_helperLine2=new T,this.m_helperArray=[],this.m_progressCounter=0,this.m_densificator=v.constructDefault(e),this.m_progressTracker=e}buffer(e,t,s,l,c,u,f,_){if(e||i("Geometry.Bufferer.Impl.Buffer"),f<0&&i("Geometry.Bufferer.Impl.Buffer"),n(e.getGeometryType())&&r("Unsupported geometry type."),e.isEmpty())return new S({vd:e.getDescription()});if(this.m_joins=l,this.m_caps=c,this.m_bRoundBuffer=!1,this.m_miterLimit=u,this.m_originalGeomType=e.getGeometryType(),m(this.m_originalGeomType)?this.m_bRoundBuffer=0===this.m_joins:o(this.m_originalGeomType)?this.m_bRoundBuffer=0===this.m_caps:a(this.m_originalGeomType)&&(this.m_bRoundBuffer=0===this.m_joins&&0===this.m_caps),this.m_bFilter=this.m_bRoundBuffer,this.m_geometry=A(e),this.m_geometry.isEmpty())return new S({vd:e.getDescription()});const d=new k;this.m_geometry.queryLooseEnvelope(d),t>0&&d.inflateCoords(t,t),this.m_tolerance=g(s,d,!0),this.m_smallTolerance=g(null,d,!0),_<=0&&(_=96),this.m_spatialReference=s,this.m_distance=t,this.m_absDistance=Math.abs(this.m_distance),this.m_absDistanceReversed=0!==this.m_absDistance?1/this.m_absDistance:0,Number.isNaN(f)||0===f?f=1e-5*this.m_absDistance:f>.5*this.m_absDistance&&(f=.5*this.m_absDistance),_<12&&(_=12);const p=Math.abs(t)*(1-Math.cos(Math.PI/_));if(p>f)f=p;else if(0!==t){const e=Math.PI/Math.acos(1-f/Math.abs(t));e<_-1&&(_=Math.trunc(e))<12&&(_=12,f=Math.abs(t)*(1-Math.cos(Math.PI/_)))}this.m_densifyDist=f,this.m_maxVertexInCompleteCircle=_,this.m_filterTolerance=this.m_bRoundBuffer?Math.min(this.m_smallTolerance.total(),.25*this.m_densifyDist):0,this.m_circleTemplateSize=this.calcN(),this.m_circleTemplateSize!==this.m_oldCircleTemplateSize&&(this.m_circleTemplate.length=0,this.m_oldCircleTemplateSize=this.m_circleTemplateSize),this.m_densifyDist>0&&h(this.m_geometry)&&(this.m_geometry=this.m_densificator.densifyEx(this.m_geometry,0,this.m_densifyDist,0,0!==this.m_joins,y()));const b=this.bufferImpl();return this.m_geometry=null,b}generateCircleTemplate(){if(this.m_circleTemplate.length)return;const e=this.m_circleTemplateSize,t=Math.trunc((e+3)/4),s=.5*Math.PI/t;this.m_dA=s,this.m_circleTemplate=P(x,4*t);const i=Math.cos(s),n=Math.sin(s),r=x.construct(0,1);for(let m=0;m<t;m++)this.m_circleTemplate[m+0*t].setCoords(r.y,-r.x),this.m_circleTemplate[m+1*t].setCoords(-r.x,-r.y),this.m_circleTemplate[m+2*t].setCoords(-r.y,r.x),this.m_circleTemplate[m+3*t].setCoords(r.x,r.y),r.rotateReverse(i,n)}bufferImpl(){const e=this.m_geometry.getGeometryType();if(l(e)){const e=new I({vd:this.m_geometry.getDescription()});return e.addSegment(this.m_geometry,!0),this.m_geometry=e,this.bufferImpl()}if(this.m_distance<=this.m_tolerance.total()){if(!m(e))return new S({vd:this.m_geometry.getDescription()});if(this.m_distance<0){const e=new k;if(this.m_geometry.queryEnvelope(e),e.width()<=2*this.m_absDistance||e.height()<=2*this.m_absDistance)return new S({vd:this.m_geometry.getDescription()})}}switch(this.m_geometry.getGeometryType()){case s.enumPoint:return this.bufferPoint();case s.enumMultiPoint:return this.bufferMultiPoint();case s.enumPolyline:return this.bufferPolyline();case s.enumPolygon:return this.bufferPolygon();case s.enumEnvelope:return this.bufferEnvelope();default:c("")}}bufferPolyline(){if(this.isDegenerateGeometry(this.m_geometry)){const e=new d;this.m_geometry.getPointByVal(0,e);const t=new k;return this.m_geometry.queryEnvelope(t),e.setXY(t.getCenter()),this.bufferDegeneratePath(e,!0)}const e=this.m_geometry,t=this.m_geometry.getDescription();this.m_geometry=null;const s=new N(e);let i,n;i=0===this.m_joins?(new F).executeMany(s,.25*this.m_densifyDist,!1,this.m_progressTracker):s,n=this.m_bRoundBuffer?(new q).executeMany(i,null,!0,this.m_progressTracker):i;const r=new O(this,n,this.m_bFilter),m=(new B).executeMany(r,this.m_spatialReference,this.m_progressTracker,2),o=(new X).executeMany(m,this.m_spatialReference,!1,this.m_progressTracker).next();return null!==o?o:new S({vd:t})}bufferPolygon(){if(0===this.m_distance)return this.m_geometry;this.generateCircleTemplate();const e=(new X).execute(this.m_geometry,null,!1,this.m_progressTracker);if(this.m_distance<0){if(this.m_geometry=e,this.m_geometry.isEmpty())return this.m_geometry;const t=this.m_geometry,s=this.bufferPolygonImpl(t,0,t.getPathCount());return(new X).execute(s,this.m_spatialReference,!1,this.m_progressTracker)}{if(this.m_geometry=e,this.isDegenerateGeometry(this.m_geometry)){const e=new d;this.m_geometry.getPointByVal(0,e);const t=new k;return this.m_geometry.queryEnvelope(t),e.setXY(t.getCenter()),this.bufferDegeneratePath(e,!0)}const t=new J(this),s=(new B).executeMany(t,this.m_spatialReference,this.m_progressTracker,2),i=(new X).executeMany(s,this.m_spatialReference,!1,this.m_progressTracker).next();return null!==i?i:new S({vd:this.m_geometry.getDescription()})}}bufferPolygonImpl(e,t,s){const i=e,n=i.getImpl();let r=new S({vd:e.getDescription()});for(let m=t;m<s;m++){if(n.getPathSize(m)<1)continue;const t=n.calculateRingArea2D(m),s=new k;if(n.queryPathEnvelope(m,s),this.m_distance>0)if(t>0)if(this.isDegeneratePath(n,m)){const e=new d;n.getPointByVal(n.getPathStart(m),e),e.setXY(s.getCenter()),r.add(this.bufferDegeneratePath(e,!0),!1)}else{const t=new I({vd:e.getDescription()}),s=t.getImpl();if(M(this.m_geometry,m)){const e=this.bufferConvexPath(i,m);r.add(e,!1)}else{this.bufferClosedPath(this.m_geometry,m,s,this.m_bRoundBuffer,1);const e=this.bufferCleanup(t);r.add(e,!1)}}else{if(s.width()+this.m_tolerance.total()<=2*this.m_absDistance||s.height()+this.m_tolerance.total()<=2*this.m_absDistance)continue;const t=new I({vd:e.getDescription()}),i=t.getImpl();if(this.bufferClosedPath(this.m_geometry,m,i,this.m_bRoundBuffer,1),!t.isEmpty()){const e=s,n=Math.max(1,this.m_absDistance),m=e.clone();m.inflateCoords(n,n),i.addEnvelope(m,!1);const o=this.bufferCleanup(t);r.reserve(r.getPointCount()+o.getPointCount()-4),ee(o,r,m,!0)}}else if(t>0){if(s.width()+this.m_tolerance.total()<=2*this.m_absDistance||s.height()+this.m_tolerance.total()<=2*this.m_absDistance)continue;const t=new I({vd:e.getDescription()}),i=t.getImpl();if(this.bufferClosedPath(this.m_geometry,m,i,this.m_bRoundBuffer,-1),!t.isEmpty()){const e=new k;i.queryLooseEnvelope(e);const s=Math.max(1,this.m_absDistance),n=e.clone();n.inflateCoords(s,s),i.addEnvelope(n,!1);ee(this.bufferCleanup(t),r,n,!0)}}else{const t=new I({vd:e.getDescription()}),s=t.getImpl();this.bufferClosedPath(this.m_geometry,m,s,this.m_bRoundBuffer,-1);const i=this.bufferCleanup(t);for(let e=0,n=i.getPathCount();e<n;e++)r.addPath(i,e,!0)}}if(this.m_distance>0){if(r.getPathCount()>1){return this.bufferCleanup(r)}return W(r)}{const e=new k;if(r.queryLooseEnvelope(e),r.isEmpty())return W(r);{const t=Math.max(1,this.m_absDistance),s=e.clone();s.inflateCoords(t,t),r.addEnvelope(s,!1);const i=this.bufferCleanup(r);r=new S;const n=new S({vd:i.getDescription()});return ee(i,n,s,!1),W(n)}}}bufferPoint(){return this.bufferPointImpl(this.m_geometry)}bufferPointImpl(e){const t=new S({vd:e.getDescription()});return 0===this.m_caps?(this.addCircle(t.getImpl(),e),this.setStrongSimple(t)):2===this.m_caps?(this.addSquare(t.getImpl(),e),this.setStrongSimple(t)):t}bufferDegeneratePath(e,t){const s=new S({vd:e.getDescription()});return t&&0===this.m_joins||!t&&0===this.m_caps?(this.addCircle(s.getImpl(),e),this.setStrongSimple(s)):t||2!==this.m_caps?s:(this.addSquare(s.getImpl(),e),this.setStrongSimple(s))}bufferMultiPoint(){const e=new G(this,this.m_geometry,this.m_distance,this.m_spatialReference,this.m_joins,this.m_caps,this.m_miterLimit,this.m_densifyDist,this.m_maxVertexInCompleteCircle,this.m_progressTracker);return(new B).executeMany(e,this.m_spatialReference,this.m_progressTracker,2).next()}bufferEnvelope(){let e=new S({vd:this.m_geometry.getDescription()});if(this.m_distance<=0){if(0===this.m_distance)e.addEnvelope(this.m_geometry,!1),$(this.m_geometry,this.m_tolerance.total())&&(e=this.setStrongSimple(e));else{const t=new p;this.m_geometry.queryEnvelope(t),t.inflateCoords(this.m_distance,this.m_distance),e.addEnvelope(t,!1),$(t,this.m_tolerance.total())&&(e=this.setStrongSimple(e))}return e}if(1===this.m_joins){const t=new p({copy:this.m_geometry});return t.inflateCoords(this.m_absDistance,this.m_absDistance),e.addEnvelope(t,!1),e}const t=this.m_geometry.clone();if(0===t.width()||0===t.height()){if(0===t.width()&&0===t.height()){const e=new d({vd:this.m_geometry.getDescription()});return t.queryCornerByVal(0,e),this.m_geometry=e,this.bufferImpl()}const e=new I({vd:this.m_geometry.getDescription()}),s=new d;return t.queryCornerByVal(0,s),e.startPathPoint(s),t.queryCornerByVal(2,s),e.lineToPoint(s),this.m_geometry=e,this.bufferImpl()}return e.addEnvelope(this.m_geometry,!1),this.m_geometry=e,this.bufferConvexPath(e,0)}bufferConvexPath(e,t){this.generateCircleTemplate();const s=e.hasAttribute(10),i=new S({vd:e.getDescription()}),n=i.getImpl();i.reserve((this.m_circleTemplate.length/10+4)*e.getPathSize(t));const r=new x,m=new x,o=new x,a=new x(0,0),h=new x,l=new x,u=e.getImpl(),f=e.getPathSize(t),_=e.getPathStart(t);for(let g=0,d=e.getPathSize(t);g<d;g++){const e=u.getXY(_+g),t=u.getXY(_+(g+1)%f),i=u.getXY(_+(g+2)%f);h.setSub(t,e),0===h.length()&&c("");const d=s&&!!(1&u.getAttributeAsInt(10,(g+1)%f,0));h.normalize();const p=h.clone();h.leftPerpendicularThis(),h.scale(this.m_absDistance),r.setAdd(h,e),m.setAdd(h,t),0===g?n.startPath(r):n.lineTo(r),n.lineTo(m),l.setSub(i,t),0===l.length()&&c(""),l.normalize();const b=l.clone();l.leftPerpendicularThis(),l.scale(this.m_absDistance),o.setAdd(l,t);let y=L.enumArc;const P=d?0:this.m_joins;if(2===P)y=L.enumBevel;else if(1===P){const e=-p.crossProduct(b);a.setSub(p,b),a.scale(this.m_absDistance/e),a.length()<this.m_miterLimit*this.m_absDistance?(a.addThis(t),y=L.enumMiter):y=L.enumBevel}else a.assign(t);this.addJoin(y,n,a,m,o,!1,!1)}return W(i)}bufferPolylinePath(e,t,s){this.generateCircleTemplate();const i=e,n=i.getImpl();if(n.getPathSize(t)<1)return null;let r;if(r=this.m_bRoundBuffer?n.isClosedPathInXYPlane(t):n.isClosedPath(t),this.isDegeneratePath(n,t)&&this.m_distance>0){const e=new d;n.getPointByVal(n.getPathStart(t),e);const s=new k;return n.queryPathEnvelope(t,s),e.setXY(s.getCenter()),this.bufferDegeneratePath(e,r)}const m=new I({vd:e.getDescription()});m.reserve((Math.trunc(this.m_circleTemplate.length/10)+4)*n.getPathSize(t));const o=m.getImpl();return r?2!==this.bufferClosedPath(i,t,o,s,1)&&this.bufferClosedPath(i,t,o,s,-1):this.bufferOpenPath(i,t,o,s),this.bufferCleanup(m)}progress_(){}bufferCleanup(e,t=!1){const s=t?this.m_tolerance:this.m_smallTolerance;return Y(e,s,!0,!t,-1,this.m_progressTracker,0,!1)}calcN(){const e=4;if(0===this.m_densifyDist)return this.m_maxVertexInCompleteCircle;const t=1-this.m_densifyDist*Math.abs(this.m_absDistanceReversed);let s=e;return s=t<-1?e:2*Math.PI/Math.acos(t)+.5,s<e?s=e:s>this.m_maxVertexInCompleteCircle&&(s=this.m_maxVertexInCompleteCircle),Math.trunc(s)}addJoin(e,t,s,i,n,r,m){if(this.generateCircleTemplate(),r&&(t.startPath(i),r=!1),e===L.enumBevel)return void(m&&t.lineTo(n));if(e===L.enumMiter){const e=s.clone();return t.lineTo(e),void(m&&t.lineTo(n))}const o=new x;o.setSub(i,s),o.scale(this.m_absDistanceReversed);const a=new x;a.setSub(n,s),a.scale(this.m_absDistanceReversed);let h=Math.atan2(o.y,o.x)/this.m_dA;h<0&&(h=this.m_circleTemplate.length+h),h=this.m_circleTemplate.length-h;let l=Math.atan2(a.y,a.x)/this.m_dA;l<0&&(l=this.m_circleTemplate.length+l),l=this.m_circleTemplate.length-l,l<h&&(l+=this.m_circleTemplate.length);let c=Math.trunc(l),u=Math.ceil(h),f=this.m_circleTemplate[u%this.m_circleTemplate.length].clone();f.scaleAddThis(this.m_absDistance,s);const _=10*this.m_tolerance.total();f.sub(i).length()<_&&(u+=1),f=this.m_circleTemplate[c%this.m_circleTemplate.length].clone(),f.scaleAddThis(this.m_absDistance,s),f.sub(n).length()<_&&(c-=1);let g=c-u;g++;for(let d=0,p=u%this.m_circleTemplate.length;d<g;d++,p=(p+1)%this.m_circleTemplate.length)f=this.m_circleTemplate[p].clone(),f.scaleAddThis(this.m_absDistance,s),t.lineTo(f),this.progress_();m&&t.lineTo(n)}bufferClosedPath(e,t,s,i,n){const r=new E,m=r.addPathFromMultiPath(e,t,!0);return this.bufferClosedPathImpl(r,m,s,i,n)}bufferClosedPathImpl(e,t,s,i,n){const r=e.getFirstVertex(e.getFirstPath(t)),m=new d;e.queryPoint(r,m),e.filterClosePoints(this.m_filterTolerance,!1,!1,!1,-1);if(e.getPointCount(t)<2)return n<0?0:(this.m_bRoundBuffer&&this.addCircle(s,m),2);u(e.getFirstPath(t)!==V),u(e.getFirstVertex(e.getFirstPath(t))!==V);const o=e.getXY(e.getFirstVertex(e.getFirstPath(t))),a=new R;if(a.setShift(o.negate()),e.applyTransformation(a),i){const i=Z(e,t,n,!0,this.m_absDistance,this.m_filterTolerance,this.m_densifyDist);if(u(1===i),e.getPointCount(t)<2)return n<0?0:(this.addCircle(s,m),2)}const h=0!==this.m_joins&&e.getVertexDescription().hasAttribute(10);this.m_bufferCommands.length=0;const l=e.getFirstPath(t);let c=e.getFirstVertex(l),f=1===n?e.getPrevVertex(c):e.getNextVertex(c),_=1===n?e.getNextVertex(c):e.getPrevVertex(c),g=!0;const p=new x,b=new x,y=new x,P=new x,C=new x,D=new x,w=new x,T=new x,v=this.m_absDistance,S=e.getPathSize(l),I=new x(0,0);for(let u=0;u<S;u++){b.assign(e.getXY(_)),g&&(p.assign(e.getXY(c)),y.assign(e.getXY(f)),D.setSub(p,y),D.normalize(),T.leftPerpendicularOther(D),T.scale(v),P.setAdd(T,p));const t=h&&!!(1&e.getAttributeAsDbl(10,c,0));C.setSub(b,p),C.normalize(),w.leftPerpendicularOther(C),w.scale(v);const s=new x;s.setAdd(p,w);const i=D.crossProduct(C),r=D.dotProduct(C);if(i<0||r<0&&i<Math.abs(r)*Number.EPSILON*8){let e=!1;const n=t?0:this.m_joins;if(1===n){const t=-i;I.setSub(D,C),I.scale(this.m_absDistance/t),I.length()<this.m_miterLimit*this.m_absDistance&&(I.addThis(p),e=!0),this.m_bufferCommands.push(z(P,s,I,e?L.enumMiter:L.enumBevel,this.m_bufferCommands.length+1))}else this.m_bufferCommands.push(z(P,s,p,0===n?L.enumArc:L.enumBevel,this.m_bufferCommands.length+1))}else P.equals(s)||(this.m_bufferCommands.push(j(P,p,this.m_bufferCommands.length+1)),this.m_bufferCommands.push(j(p,s,this.m_bufferCommands.length+1)));const m=new x;m.setAdd(b,w),this.m_bufferCommands.push(z(s,m,p,L.enumLine,this.m_bufferCommands.length+1)),P.setCoordsPoint2D(m),T.setCoordsPoint2D(w),y.setCoordsPoint2D(p),p.setCoordsPoint2D(b),D.setCoordsPoint2D(C),f=c,c=_,g=!1,_=1===n?e.getNextVertex(c):e.getPrevVertex(c)}return this.m_bufferCommands.at(-1).m_next=0,this.processBufferCommands(s),a.setShift(o),s.applyTransformationToPath(a,s.getPathCount()-1),1}bufferOpenPath(e,t,s,i){if(this.m_bRoundBuffer){const n=new I({vd:e.getDescription()});return n.addPath(e,t,!1),n.addSegmentsFromPath(e,t,0,e.getSegmentCountPath(t),!1),this.bufferClosedPath(n,0,s,i,1)}let n=0;const r=new I({vd:e.getDescription()}),m=new x(0,0);{const i=new E,o=i.addPathFromMultiPath(e,t,!1),a=i.getFirstVertex(i.getFirstPath(o)),h=new d;i.queryPoint(a,h),m.assign(h.getXY()),i.filterClosePoints(0,!1,!1,!1,-1);if(i.getPointCount(o)<2)return this.m_bRoundBuffer&&this.addCircle(s,h),2;const l=i.getGeometry(i.getFirstGeometry());r.addPath(l,0,!1),n=r.getPointCount()-1,r.addSegmentsFromPath(l,0,0,l.getSegmentCountPath(0)-1,!1)}const o=new E,a=o.addPathFromMultiPath(r,0,!0);u(o.getFirstPath(a)!==V),u(o.getFirstVertex(o.getFirstPath(a))!==V);const h=new R;h.setShift(m.negate()),o.applyTransformation(h),this.m_bufferCommands.length=0;const l=o.getFirstPath(a),c=0!==this.m_joins&&o.getVertexDescription().hasAttribute(10);let f=o.getFirstVertex(l),_=o.getPrevVertex(f),g=o.getNextVertex(f),p=!0;const b=new x,y=new x,P=new x,C=new x,D=new x,w=new x,T=new x,v=new x,S=this.m_absDistance,M=o.getPathSize(l),k=new x(0,0);for(let u=0;u<M;u++){let e=!1;0!==u&&u!==n||(e=!0),y.assign(o.getXY(g)),p&&(b.assign(o.getXY(f)),P.assign(o.getXY(_)),w.setSub(b,P),w.normalize(),v.leftPerpendicularOther(w),v.scale(S),C.setAdd(v,b));const t=c&&!!(1&o.getAttributeAsDbl(10,f,0));D.setSub(y,b),D.normalize(),T.leftPerpendicularOther(D),T.scale(S);const s=new x;s.setAdd(b,T);const i=w.crossProduct(D),r=w.dotProduct(D);if(i<0||r<0&&i<Math.abs(r)*Number.EPSILON*8)if(e)if(0===this.m_caps)this.m_bufferCommands.push(z(C,s,b,L.enumArc,this.m_bufferCommands.length+1));else if(1===this.m_caps)this.m_bufferCommands.push(z(C,s,b,L.enumLine,this.m_bufferCommands.length+1));else{const e=D.mul(this.m_absDistance).negate(),t=e.clone();e.addThis(C),t.addThis(s),this.m_bufferCommands.push(z(C,e,b,L.enumLine,this.m_bufferCommands.length+1)),this.m_bufferCommands.push(z(e,t,b,L.enumLine,this.m_bufferCommands.length+1)),this.m_bufferCommands.push(z(t,s,b,L.enumLine,this.m_bufferCommands.length+1))}else{let e=!1;const n=t?0:this.m_joins;if(1===n){const t=-i;k.setSub(w,D),k.scale(this.m_absDistance/t),k.length()<this.m_miterLimit*this.m_absDistance&&(k.addThis(b),e=!0),this.m_bufferCommands.push(z(C,s,k,e?L.enumMiter:L.enumBevel,this.m_bufferCommands.length+1))}else this.m_bufferCommands.push(z(C,s,b,0===n?L.enumArc:L.enumBevel,this.m_bufferCommands.length+1))}else C.equals(s)||(this.m_bufferCommands.push(j(C,b,this.m_bufferCommands.length+1)),this.m_bufferCommands.push(j(b,s,this.m_bufferCommands.length+1)));const m=new x;m.setAdd(y,T),this.m_bufferCommands.push(z(s,m,b,L.enumLine,this.m_bufferCommands.length+1)),C.setCoordsPoint2D(m),v.setCoordsPoint2D(T),P.setCoordsPoint2D(b),b.setCoordsPoint2D(y),w.setCoordsPoint2D(D),_=f,f=g,p=!1,g=o.getNextVertex(f)}return this.m_bufferCommands.at(-1).m_next=0,this.processBufferCommands(s),h.setShift(m),s.applyTransformationToPath(h,s.getPathCount()-1),1}processBufferCommands(e){const t=this.cleanupBufferCommands();let s=!0,i=t+1;for(let n=t;i!==t;n=i){const t=this.m_bufferCommands[n];i=-1!==t.m_next?t.m_next:(n+1)%this.m_bufferCommands.length,t.m_type&&(s&&(e.startPath(t.m_from),s=!1),t.m_type&L.enumJoinMask?this.addJoin(t.m_type,e,t.m_center,t.m_from,t.m_to,!1,!0):e.lineTo(t.m_to))}}cleanupBufferCommands(){this.m_helperArray=P(x,9);let e=0;for(let s=0,i=this.m_bufferCommands.length;s<i;){const t=this.m_bufferCommands[s];if(t.m_type&L.enumConnectionMask){e=s;break}s=t.m_next}let t=e+1;for(let s=e;t!==e;s=t){const e=this.m_bufferCommands[s];t=e.m_next;let i=1,n=null;for(;t!==s&&(n=this.m_bufferCommands[t],!(n.m_type&L.enumConnectionMask));)t=n.m_next,i++;if(1!==i&&(e.m_type&n.m_type)===L.enumLine){this.m_helperLine1.setStartXY(e.m_from),this.m_helperLine1.setEndXY(e.m_to),this.m_helperLine2.setStartXY(n.m_from),this.m_helperLine2.setEndXY(n.m_to);1===this.m_helperLine1.intersect(this.m_helperLine2,this.m_helperArray,null,null,this.m_smallTolerance.total())&&(e.m_to.assign(this.m_helperArray[0]),n.m_from.assign(this.m_helperArray[0]),e.m_next=t)}}return e}isDegeneratePath(e,t){if(1===e.getPathSize(t))return!0;if(0===this.m_joins&&0===this.m_caps){const s=new k;if(e.queryPathEnvelope(t,s),Math.max(s.width(),s.height())<.5*this.m_densifyDist)return!0}return!1}isDegenerateGeometry(e){if(0===this.m_joins&&0===this.m_caps){const t=new k;if(e.queryEnvelope(t),Math.max(t.width(),t.height())<.5*this.m_densifyDist)return!0}return!1}addCircle(e,t){const s=t.getXY();if(0!==this.m_circleTemplate.length){let t=this.m_circleTemplate[0].clone();t.scaleAddThis(this.m_absDistance,s),e.startPath(t);for(let i=1,n=this.m_circleTemplate.length;i<n;i++)t=this.m_circleTemplate[i].clone(),t.scaleAddThis(this.m_absDistance,s),e.lineTo(t);return}const i=this.m_circleTemplateSize,n=Math.trunc((i+3)/4),r=.5*Math.PI/n;e.reserve(4*n);const m=Math.cos(r),o=Math.sin(r);for(let a=3;a>=0;a--){const t=x.construct(0,this.m_absDistance);switch(a){case 0:for(let i=0;i<n;i++)e.lineToCoords(t.x+s.x,t.y+s.y),t.rotateReverse(m,o);break;case 1:for(let i=0;i<n;i++)e.lineToCoords(-t.y+s.x,t.x+s.y),t.rotateReverse(m,o);break;case 2:for(let i=0;i<n;i++)e.lineToCoords(-t.x+s.x,-t.y+s.y),t.rotateReverse(m,o);break;default:e.startPathCoords(t.y+s.x,-t.x+s.y);for(let i=1;i<n;i++)t.rotateReverse(m,o),e.lineToCoords(t.y+s.x,-t.x+s.y)}this.progress_()}}addSquare(e,t){const s=new p({vd:t.getDescription()});s.setCoords(t.getX(),t.getY(),t.getX(),t.getY()),s.inflateCoords(this.m_absDistance,this.m_absDistance),e.addEnvelope(s,!1)}setStrongSimple(e){return e.getImpl().setIsSimple(4,this.m_tolerance.total()),e.getImpl().updateOGCFlagsProtected(),e}}function W(e){return b(e,0),e}function $(e,t){return!!e.isEmpty()||Math.min(e.width(),e.height())>t}function H(e,t,s,i,n,r,m,o){const a=e.getXY(s),h=e.getXY(i);if(a.equals(h))return-1;const l=.25*m,c=.25*m,f=new x;f.setSub(h,a);const _=f.length(),g=_*_*.25,d=r*r-g;if(d<=g)return-1;const p=Math.sqrt(d);f.normalize();const b=f.clone();b.rightPerpendicularThis();const y=g/p,P=y<=c,C=x.lerp(h,a,.5),T=b.clone(),v=y-l;T.scaleAddThis(Math.max(0,v),C);b.negate().scaleAddThis(p,C);const S=3.61*w(r-c),I=T.sub(a),M=T.sub(h);let E=!1,V=0;const k=D(64,0);u(o===k.length);{for(let o=e.getPrevVertexEx(i,n);o!==s;){if(1===e.getUserIndex(o,t))return-1;if(e.getXY(o).equals(h)){const t=e.getPrevVertexEx(o,n);e.removeVertex(o,!1),o=t;continue}break}const r=new x,m=a.clone();k[V++]=1;for(let o=e.getNextVertexEx(s,n);o!==i;){if(1===e.getUserIndex(o,t))return-1;const s=e.getXY(o);if(s.equals(m)){const t=e.getNextVertexEx(o,n);e.removeVertex(o,!1),o=t;continue}k[V++]=0;const i=new x;if(i.setSub(s,a),i.dotProduct(b)<0)return 0;(x.sqrDistance(s,a)>S||x.sqrDistance(s,h)>S)&&(E=!0);let l=0;s.sub(a).crossProduct(I)>=0&&(l=1);if(s.sub(h).crossProduct(M)<=0&&(l|=2),0===l)return 0;k[V-1]=l,r.assign(m),m.assign(s),o=e.getNextVertexEx(o,n)}if(1===V)return 0;u(V<k.length),k[V++]=2}let R=!0;for(let u=1,x=0;u<V;u++)if(k[u]!==k[u-1]&&(x++,R=x<3&&(1===x&&3===k[u]||2===x&&2===k[u]),!R))return 0;if(V>2&&R&&(3===V||!E)){let t=0,r=e.getNextVertexEx(s,n);for(P||(e.setXY(r,T),r=e.getNextVertexEx(r,n));r!==i;){const s=e.getNextVertexEx(r,n);e.removeVertex(r,!1),r=s,++t}return t}if(u(3!==V),E&&V>3)return 0;const A=a.clone();let B=s;const X=a.clone();let Y=1,q=-1,F=B,L=0;for(V=1;F!==i;){F=e.getNextVertexEx(F,n);const t=k[V++];if(0===t){if(F===i)break;continue}const s=e.getXY(F);if(-1!==q){if(3&(q&Y&t)){e.removeVertex(B,!0),L++,B=F,X.setCoordsPoint2D(s),Y=t;continue}if(3===Y&&0!==q&&0!==t){if(X.setCoordsPoint2D(T),P||X.equals(A)){e.removeVertex(B,!0),L++,B=F,X.setCoordsPoint2D(s),Y=t;continue}e.setXY(B,X)}}q=Y,A.setCoordsPoint2D(X),B=F,Y=t,X.setCoordsPoint2D(s)}return L}function K(e,t,s,i){let n=-1;const r=new x,m=new x,o=new x;for(let a=0,h=e.getPathSize(i),l=e.getFirstVertex(i);a<h;++a){-1===n&&(e.queryXY(l,m),n=e.getPrevVertex(l),-1!==n&&(e.queryXY(n,r),o.setSub(m,r),o.normalize()));const s=e.getNextVertex(l);if(-1===s)break;const i=e.getXY(s),a=i.sub(m);if(a.normalize(),-1!==n){a.dotProduct(o)<-.99&&Math.abs(a.crossProduct(o))<1e-7&&e.setUserIndex(l,t,1)}n=l,l=s,r.assign(m),m.assign(i),o.assign(a)}}function Q(s,i,n,r,m,o,a){const h={stack:[],error:void 0,hasError:!1};try{const t=s.getFirstPath(i),r=s.createUserIndex();e(h,C(()=>{s.removeUserIndex(r)},!1),!1),K(s,r,i,t);for(let e=0;e<100;++e){if(0===s.getPathSize(t))return 1;let e=s.getFirstVertex(t),i=s.getPathSize(t);if(i<3)return 1;s.isClosedPath(t)||(i-=1);const o=64;let h=0,l=!1;for(let t=0;t<i&&e!==V;t++){let c=0,u=e;for(let h=1,l=Math.min(o,i-t);h<l;h++)if(u=s.getNextVertexEx(u,n),h>1){const t=H(s,r,e,u,n,m,a,o);if(-1===t)break;c+=t,i-=t}if(h+=c,l=c>0,l){const t=s.getPrevVertexEx(e,n);if(-1!==t){e=t,i++;continue}}e=s.getNextVertexEx(e,n)}if(0===h)break}return s.filterClosePoints(o,!1,!1,!1,-1),1}catch(l){h.error=l,h.hasError=!0}finally{t(h)}}function Z(e,t,s,i,n,r,m){return Q(e,t,s,i,n,r,m)}function ee(e,t,s,i){for(let n=0,r=e.getPathCount();n<r;n++){const r=e.getXY(e.getPathStart(n));r.x!==s.xmin&&r.x!==s.xmax&&t.addPath(e,n,i)}}export{U as B};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{G as t,d as e}from"./Geometry.js";import{P as n,K as r}from"./Point2D.js";function a(e,r){if(!e.isEmpty()){switch(e.getGeometryType()){case t.enumPolygon:return o(e);case t.enumPolyline:return l(e);case t.enumLine:case t.enumBezier:case t.enumEllipticArc:return i(e);case t.enumMultiPoint:return g(e);case t.enumEnvelope:return e.getCenterXY();case t.enumPoint:return e.getXY();default:return n.construct(Number.NaN,Number.NaN)}}return n.construct(Number.NaN,Number.NaN)}function u(t,e){return o(t,e)}function o(t,e=-1){const a=new r(0),u=new r(0),o=t.getImpl();let l;const i=o.hasNonLinearSegments();let g;const m=o.getXY(0);if(-1===e){if(g=o.calculateArea2D(),0===g)return d(t);i&&(l=o.querySegmentIterator());for(let t=0,e=o.getPathCount();t<e;t++)s(m,o,t,a,u),i&&c(m,l,a,u)}else{if(g=o.calculateRingArea2D(e),0===g)return d(t,e);i&&(l=o.querySegmentIterator(),l.resetToPath(e)),s(m,o,e,a,u),i&&c(m,l,a,u)}const f=new n,h=new n;return f.setCoords(a.getResult(),u.getResult()),h.assign(f.mul(1/g).add(m)),h}function s(t,e,a,u,o){const s=e.getPathStart(a),c=e.getPathEnd(a);if(c-s<3)return;const l=e.getAttributeStreamRef(0),i=l.readPoint2D(2*s),g=l.readPoint2D(2*(s+1));g.subThis(i);const d=new r(0),m=e.hasNonLinearSegments(),f=1/3,h=new n;for(let n=s+2;n<c;n++){l.queryPoint2D(2*n,h),h.subThis(i);const t=.5*h.crossProduct(g);m&&d.add(t);const e=f*t;u.add((g.x+h.x)*e),o.add((g.y+h.y)*e),g.setCoordsPoint2D(h)}const P=m?d.getResult():e.calculateRingArea2D(a),y=i.sub(t).mul(P);u.add(y.x),o.add(y.y)}function c(t,n,r,a){let u;for(n.nextPath()||e("centroid");null!==(u=n.nextCurve());){const e=u.calculateWeightedAreaCentroid2D(t);r.add(e.x),a.add(e.y)}}function l(t){return m(t.getImpl())}function i(t){const e=t.calculateLength2D();if(0===e)return t.getStartXY();return t.calculateWeightedCentroid2D().mul(1/e)}function g(t){const e=new r(0),a=new r(0),u=t.getImpl(),o=u.getAttributeStreamRef(0),s=u.getPointCount(),c=new n;for(let n=0;n<s;n++)o.queryPoint2D(2*n,c),e.add(c.x),a.add(c.y);const l=new n;return l.setCoords(e.getResult(),a.getResult()),l.divThis(s)}function d(t,e=-1){return m(t.getImpl(),e)}function m(t,e=-1){const a=-1===e?t.calculateLength2D():t.calculatePathLength2D(e);if(0===a)return f(t,e);const u=new r(0),o=new r(0),s=t.querySegmentIterator();for(-1!==e&&s.resetToPath(e);s.nextPath();){const n=s.getPathIndex(),r=t.getXY(t.getPathStart(n));for(;s.hasNextSegment();){const t=s.nextSegment(),e=t.calculateLength2D();if(0===e)continue;const n=t.calculateWeightedCentroid2D().sub(r.mul(e));u.add(n.x),o.add(n.y)}const a=r.mul(t.calculatePathLength2D(n));if(u.add(a.x),o.add(a.y),-1!==e)break}const c=new n;return c.setCoords(u.getResult(),o.getResult()),c.mul(1/a)}function f(t,e=-1){if(-1!==e)return t.getXY(t.getPathStart(e));const a=new r(0),u=new r(0);for(let n=0;n<t.getPathCount();++n){const e=t.getXY(t.getPathStart(n));a.add(e.x),u.add(e.y)}return n.construct(a.getResult(),u.getResult()).mul(1/t.getPathCount())}export{u as a,a as c};
2
+ import{G as t,q as e}from"./Geometry.js";import{P as n,K as r}from"./Point2D.js";function a(e,r){if(!e.isEmpty()){switch(e.getGeometryType()){case t.enumPolygon:return o(e);case t.enumPolyline:return l(e);case t.enumLine:case t.enumBezier:case t.enumEllipticArc:return i(e);case t.enumMultiPoint:return g(e);case t.enumEnvelope:return e.getCenterXY();case t.enumPoint:return e.getXY();default:return n.construct(Number.NaN,Number.NaN)}}return n.construct(Number.NaN,Number.NaN)}function u(t,e){return o(t,e)}function o(t,e=-1){const a=new r(0),u=new r(0),o=t.getImpl();let l;const i=o.hasNonLinearSegments();let g;const m=o.getXY(0);if(-1===e){if(g=o.calculateArea2D(),0===g)return d(t);i&&(l=o.querySegmentIterator());for(let t=0,e=o.getPathCount();t<e;t++)s(m,o,t,a,u),i&&c(m,l,a,u)}else{if(g=o.calculateRingArea2D(e),0===g)return d(t,e);i&&(l=o.querySegmentIterator(),l.resetToPath(e)),s(m,o,e,a,u),i&&c(m,l,a,u)}const f=new n,h=new n;return f.setCoords(a.getResult(),u.getResult()),h.assign(f.mul(1/g).add(m)),h}function s(t,e,a,u,o){const s=e.getPathStart(a),c=e.getPathEnd(a);if(c-s<3)return;const l=e.getAttributeStreamRef(0),i=l.readPoint2D(2*s),g=l.readPoint2D(2*(s+1));g.subThis(i);const d=new r(0),m=e.hasNonLinearSegments(),f=1/3,h=new n;for(let n=s+2;n<c;n++){l.queryPoint2D(2*n,h),h.subThis(i);const t=.5*h.crossProduct(g);m&&d.add(t);const e=f*t;u.add((g.x+h.x)*e),o.add((g.y+h.y)*e),g.setCoordsPoint2D(h)}const P=m?d.getResult():e.calculateRingArea2D(a),y=i.sub(t).mul(P);u.add(y.x),o.add(y.y)}function c(t,n,r,a){let u;for(n.nextPath()||e("centroid");null!==(u=n.nextCurve());){const e=u.calculateWeightedAreaCentroid2D(t);r.add(e.x),a.add(e.y)}}function l(t){return m(t.getImpl())}function i(t){const e=t.calculateLength2D();if(0===e)return t.getStartXY();return t.calculateWeightedCentroid2D().mul(1/e)}function g(t){const e=new r(0),a=new r(0),u=t.getImpl(),o=u.getAttributeStreamRef(0),s=u.getPointCount(),c=new n;for(let n=0;n<s;n++)o.queryPoint2D(2*n,c),e.add(c.x),a.add(c.y);const l=new n;return l.setCoords(e.getResult(),a.getResult()),l.divThis(s)}function d(t,e=-1){return m(t.getImpl(),e)}function m(t,e=-1){const a=-1===e?t.calculateLength2D():t.calculatePathLength2D(e);if(0===a)return f(t,e);const u=new r(0),o=new r(0),s=t.querySegmentIterator();for(-1!==e&&s.resetToPath(e);s.nextPath();){const n=s.getPathIndex(),r=t.getXY(t.getPathStart(n));for(;s.hasNextSegment();){const t=s.nextSegment(),e=t.calculateLength2D();if(0===e)continue;const n=t.calculateWeightedCentroid2D().sub(r.mul(e));u.add(n.x),o.add(n.y)}const a=r.mul(t.calculatePathLength2D(n));if(u.add(a.x),o.add(a.y),-1!==e)break}const c=new n;return c.setCoords(u.getResult(),o.getResult()),c.mul(1/a)}function f(t,e=-1){if(-1!==e)return t.getXY(t.getPathStart(e));const a=new r(0),u=new r(0);for(let n=0;n<t.getPathCount();++n){const e=t.getXY(t.getPathStart(n));a.add(e.x),u.add(e.y)}return n.construct(a.getResult(),u.getResult()).mul(1/t.getPathCount())}export{u as a,a as c};
@@ -147,4 +147,4 @@ vec3 sunDirection = normalize(vec3(0, 0, 1));
147
147
  shading = 0.5 * mainRay(viewPos, rayDir, sunDirection, distToStart, totalDistance, totalTransmittance);
148
148
  shading = mix(clamp(1.0 - cloudVariables.y, 0.6, 1.0), shading, hazeFactor);
149
149
  totalTransmittance = mix(0.0, totalTransmittance, hazeFactor);
150
- fragColor = vec4(shading, totalTransmittance, shading, totalTransmittance);`),o}const D=o(),b=Object.freeze(Object.defineProperty({__proto__:null,CloudsPassParameters:w,build:x,cubeMapSize:S},Symbol.toStringTag,{value:"Module"}));export{w as C,b as a,x as b,S as c};
150
+ fragColor = vec4(shading, totalTransmittance, shading, totalTransmittance);`),o}const D=o(),b=Object.freeze(Object.defineProperty({__proto__:null,CloudsPassParameters:w,build:x,cubeMapSize:S},Symbol.toStringTag,{value:"Module"}));export{b as C,w as a,x as b,S as c};
@@ -3,4 +3,4 @@ import{ScreenSpacePass as e}from"../views/3d/webgl-engine/core/shaderLibrary/Scr
3
3
  ${u?s`
4
4
  float normalizedLinearDepth = (-linearDepthFromTexture(tex, uv) - nearFar[0]) / (nearFar[1] - nearFar[0]);
5
5
  fragColor = floatToRgba(normalizedLinearDepth);`:s`fragColor = texture(tex, uv, level) * opacity;`}
6
- ${t(g,"fragEmission = vec4(0.0, 0.0, 0.0, fragColor.a);")}`),m}const f=Object.freeze(Object.defineProperty({__proto__:null,CompositingPassParameters:m,build:g},Symbol.toStringTag,{value:"Module"}));export{m as C,f as a,g as b};
6
+ ${t(g,"fragEmission = vec4(0.0, 0.0, 0.0, fragColor.a);")}`),m}const f=Object.freeze(Object.defineProperty({__proto__:null,CompositingPassParameters:m,build:g},Symbol.toStringTag,{value:"Module"}));export{f as C,m as a,g as b};
@@ -20,4 +20,4 @@ float visibleAgainstScene = step(referenceDepth, sceneDepth);
20
20
  vec4 base = mix(color, cutVolume, m0.r * cutVolume.a * visibleAgainstScene);
21
21
  base = mix(base, fillVolume, m0.g * fillVolume.a);
22
22
  float borderFade = mix(0.5, 1.0, visibleAgainstScene);
23
- fragColor = mix(base, borderColor, d * borderFade);`),e}const m=Object.freeze(Object.defineProperty({__proto__:null,CutFillCompositionPassParameters:a,build:u},Symbol.toStringTag,{value:"Module"}));export{a as C,m as a,u as b};
23
+ fragColor = mix(base, borderColor, d * borderFade);`),e}const m=Object.freeze(Object.defineProperty({__proto__:null,CutFillCompositionPassParameters:a,build:u},Symbol.toStringTag,{value:"Module"}));export{m as C,a,u as b};
@@ -12,4 +12,4 @@ return depth >= 1.0;
12
12
  ${o(0===s,"\n float depth = referenceDepth - targetDepth;\n fragColor = vec4(min(0.0, depth), max(0.0, depth), 0.0, 0.0);\n ")}
13
13
 
14
14
  ${o(1===s,"\n ivec2 texSize = textureSize(cutFillReferenceDepthTexture, 0);\n ivec2 coords = ivec2(gl_FragCoord.xy);\n float packedCoords = float(coords.x) + float(coords.y) * float(texSize.x);\n\n fragColor = vec4(referenceDepth, packedCoords, 0.0, 0.0);\n ")}
15
- `),d}const i=Object.freeze(Object.defineProperty({__proto__:null,CutFillDepthParameters:s,build:d},Symbol.toStringTag,{value:"Module"}));export{s as C,i as a,d as b};
15
+ `),d}const i=Object.freeze(Object.defineProperty({__proto__:null,CutFillDepthParameters:s,build:d},Symbol.toStringTag,{value:"Module"}));export{i as C,s as a,d as b};
@@ -1,3 +1,3 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
2
  import{translate as r}from"../core/libs/gl-matrix-2/math/mat4.js";import{create as e}from"../core/libs/gl-matrix-2/factories/mat4f64.js";import{ZEROS as o}from"../core/libs/gl-matrix-2/factories/vec3f64.js";import{glsl as i}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Matrix4BindUniform as t}from"../views/3d/webgl-engine/core/shaderModules/Matrix4BindUniform.js";import{Matrix4DrawUniform as s}from"../views/3d/webgl-engine/core/shaderModules/Matrix4DrawUniform.js";import{NoParameters as a}from"../views/webgl/NoParameters.js";import{ShaderBuilder as n}from"../views/webgl/ShaderBuilder.js";class m extends a{constructor(){super(...arguments),this.origin=o}}function l(){const e=new n;return e.attributes.add("position","vec3"),e.outputs.add("fragColor","vec4",0),e.vertex.uniforms.add(new t("proj",r=>r.camera.projectionMatrix),new s("view",(e,o)=>r(d,o.camera.viewMatrix,e.origin))).main.add(i`gl_Position = proj * view * vec4(position, 1.0);
3
- gl_Position.z = min(gl_Position.z, gl_Position.w);`),e.fragment.main.add(i`fragColor = vec4(1, 1, 0, 0);`),e}const d=e(),c=Object.freeze(Object.defineProperty({__proto__:null,CutFillMaskDrawParameters:m,build:l},Symbol.toStringTag,{value:"Module"}));export{m as C,c as a,l as b};
3
+ gl_Position.z = min(gl_Position.z, gl_Position.w);`),e.fragment.main.add(i`fragColor = vec4(1, 1, 0, 0);`),e}const d=e(),c=Object.freeze(Object.defineProperty({__proto__:null,CutFillMaskDrawParameters:m,build:l},Symbol.toStringTag,{value:"Module"}));export{c as C,m as a,l as b};
@@ -12,4 +12,4 @@ import{ScreenSpacePass as e}from"../views/3d/webgl-engine/core/shaderLibrary/Scr
12
12
  ${t(1===i," \n float min01 = min(t0.r, t1.r);\n float minCoordsPacked01 = mix(t0.g, t1.g, float(t1.r < t0.r));\n\n float min23 = min(t2.r, t3.r);\n float minCoordsPacked23 = mix(t2.g, t3.g, float(t3.r < t2.r));\n\n float minValue = min(min01, min23);\n float minCoordsPacked = mix(minCoordsPacked01, minCoordsPacked23, float(min23 < min01));\n\n fragColor = vec4(minValue, minCoordsPacked, 0.0, 0.0);\n ")}
13
13
 
14
14
  ${t(2===i,"\n float max01 = max(t0.r, t1.r);\n float maxCoordsPacked01 = mix(t0.g, t1.g, float(t1.r > t0.r));\n\n float max23 = max(t2.r, t3.r);\n float maxCoordsPacked23 = mix(t2.g, t3.g, float(t3.r > t2.r));\n\n float maxValue = max(max01, max23);\n float maxCoordsPacked = mix(maxCoordsPacked01, maxCoordsPacked23, float(max23 > max01));\n\n fragColor = vec4(maxValue, maxCoordsPacked, 0.0, 0.0);\n ")}
15
- `),l}const m=Object.freeze(Object.defineProperty({__proto__:null,CutFillReductionParameters:i,build:l},Symbol.toStringTag,{value:"Module"}));export{i as C,m as a,l as b};
15
+ `),l}const m=Object.freeze(Object.defineProperty({__proto__:null,CutFillReductionParameters:i,build:l},Symbol.toStringTag,{value:"Module"}));export{m as C,i as a,l as b};
@@ -1,3 +1,3 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
2
  import{translate as e}from"../core/libs/gl-matrix-2/math/mat4.js";import{create as r}from"../core/libs/gl-matrix-2/factories/mat4f64.js";import{create as i}from"../core/libs/gl-matrix-2/factories/vec2f64.js";import{ZEROS as t}from"../core/libs/gl-matrix-2/factories/vec3f64.js";import{Transform as o}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{OutputDepth as a}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js";import{Float2PassUniform as s}from"../views/3d/webgl-engine/core/shaderModules/Float2PassUniform.js";import{glsl as n}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Matrix4PassUniform as l}from"../views/3d/webgl-engine/core/shaderModules/Matrix4PassUniform.js";import{NoParameters as m}from"../views/webgl/NoParameters.js";import{ShaderBuilder as d}from"../views/webgl/ShaderBuilder.js";class c extends m{constructor(){super(...arguments),this.origin=t,this.cutFillCamera={projectionMatrix:r(),viewMatrix:r(),nearFar:i()}}}function p(r){const i=new d,{vertex:t,fragment:m,varyings:c,attributes:p}=i;return i.include(o),i.include(a,r),p.add("position","vec3"),c.add("depth","float",{invariant:!0}),t.uniforms.add(new l("proj",e=>e.cutFillCamera.projectionMatrix),new l("view",r=>e(f,r.cutFillCamera.viewMatrix,r.origin)),new s("nearFar",e=>e.cutFillCamera.nearFar)),t.main.add(n`gl_Position = transformPositionWithDepth(proj, view, position, nearFar, depth);`),m.main.add(n`fragColor = vec4(1.0);
3
- outputDepth(depth);`),i}const f=r(),g=Object.freeze(Object.defineProperty({__proto__:null,CutFillTargetDepthParameters:c,build:p},Symbol.toStringTag,{value:"Module"}));export{c as C,g as a,p as b};
3
+ outputDepth(depth);`),i}const f=r(),g=Object.freeze(Object.defineProperty({__proto__:null,CutFillTargetDepthParameters:c,build:p},Symbol.toStringTag,{value:"Module"}));export{g as C,c as a,p as b};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{__addDisposableResource as e,__disposeResources as t}from"tslib";import{G as n,v as i}from"./Geometry.js";import{S as r,P as s,s as o}from"./MultiPathImpl.js";import{l as m}from"./SpatialReference.js";import{P as a,c as u,s as c,i as h,h as l,j as g,d as y}from"./Point2D.js";import{Envelope2D as _}from"./Envelope2D.js";import{P as D,E as p}from"./Envelope.js";function v(){return{outPoint:new a,index:-1,t:Number.NaN}}function N(e,t,n){return{outPoint:e.clone(),index:t,t:n}}function f(e,t,n,i){e.outPoint.assign(t),e.index=n,e.t=i}function P(e,t){e.outPoint.assign(t.outPoint),e.index=t.index,e.t=t.t}function I(e,t,n,i){e.index=n,e.t=i,t.queryCoord2D(e.t,e.outPoint)}function d(e,t){const n=v();P(n,e),P(e,t),P(t,n)}function q(e,t,i,r,s,o){if(e.getGeometryType()===n.enumPolygon){for(;r.nextPath();)if(r.hasNextSegment()){const t=r.nextSegment();if(0!==m(e,t.getEndXY(),0))return f(s,t.getEndXY(),-1,Number.NaN),f(o,t.getEndXY(),-1,Number.NaN),!0}r.resetToFirstPath()}if(t.getGeometryType()===n.enumPolygon){for(;i.nextPath();)if(i.hasNextSegment()){const e=i.nextSegment();if(0!==m(t,e.getEndXY(),0))return f(s,e.getEndXY(),-1,Number.NaN),f(o,e.getEndXY(),-1,Number.NaN),!0}i.resetToFirstPath()}return!1}function M(e){const t=e.getPathCount(),n=y(e.getSegmentCount(),0);let i=0;for(let r=0;r<t;++r){const t=i+e.getSegmentCountPath(r);for(let s=i,o=e.getPathStart(r);s<t;++s,++o)n[s]=o;i=t}return o(e.getPointCount(),n),n}function x(e,t){return!!Number.isNaN(t)||e<=t}function E(e){const t=new s;return t.addEnvelope(e,!1),t}class b{constructor(e,t){if(this.m_env2DgeometryA=null,this.m_env2DgeometryB=null,this.m_progressCounter=0,this.m_progressTracker=t,this.m_maxSqrDistance=e*e,this.m_maxDistance=e,this.m_bIsNearCalc=!1,Number.isNaN(this.m_maxDistance)?this.m_maxDistance=Number.POSITIVE_INFINITY:this.m_maxDistance=e,this.m_maxSqrDistance=this.m_maxDistance*this.m_maxDistance,Number.isFinite(this.m_maxSqrDistance)){let e=Math.sqrt(this.m_maxSqrDistance);for(;e<this.m_maxDistance;)this.m_maxSqrDistance*=1+Number.EPSILON,e=Math.sqrt(this.m_maxSqrDistance)}}calculate(e,t,n,i){if(e.getGeometryType()!==D.type||t.getGeometryType()!==D.type){this.m_env2DgeometryA=new _,this.m_env2DgeometryB=new _,e.queryEnvelope(this.m_env2DgeometryA),t.queryEnvelope(this.m_env2DgeometryB);if(!x(this.m_env2DgeometryA.distanceFromEnvelope(this.m_env2DgeometryB),this.m_maxDistance))return Number.POSITIVE_INFINITY}const r=N(new a,g(),Number.NaN),s=N(new a,g(),Number.NaN),o=this._ExecuteBruteForce(e,t,r,s);return x(o,this.m_maxDistance)?(null!==n&&P(n,r),null!==i&&P(i,s),o):Number.POSITIVE_INFINITY}isNear(e,t){if(this.m_bIsNearCalc=!0,e.isEmpty()||t.isEmpty())return!1;if(e===t)return!0;let n=!0;if(e.getGeometryType()!==D.type&&e.getGeometryType()!==p.type||t.getGeometryType()!==D.type&&t.getGeometryType()!==p.type||(n=!1),n){if(this.m_env2DgeometryA=new _,this.m_env2DgeometryB=new _,e.queryEnvelope(this.m_env2DgeometryA),t.queryEnvelope(this.m_env2DgeometryB),!(this.m_env2DgeometryA.sqrMaxMinDistanceEnvelope(this.m_env2DgeometryB)>this.m_maxSqrDistance))return!0;if(this.m_env2DgeometryA.sqrDistanceEnvelope(this.m_env2DgeometryB,null,null)>this.m_maxSqrDistance)return!1}const i=N(new a,g(),Number.NaN),r=N(new a,g(),Number.NaN);return this._ExecuteBruteForce(e,t,i,r)<=this.m_maxDistance}progress_(e=!1){}_ExecuteBruteForce(e,t,i,r){switch(e.getGeometryType()){case n.enumPoint:return this.distancePointGeometry(e,t,i,r);case n.enumMultiPoint:return this.distanceMultipointGeometry(e,t,i,r);case n.enumEnvelope:return this.distanceEnvelopeGeometry(e,t,i,r);case n.enumPolyline:case n.enumPolygon:return this.distanceMultipathGeometry(e,t,i,r);default:return Number.NaN}}distancePointGeometry(e,t,i,r){switch(t.getGeometryType()){case n.enumPoint:return this.distancePointPoint(e,t,i,r);case n.enumMultiPoint:return this.distancePointMultipoint(e,t,i,r);case n.enumPolyline:case n.enumPolygon:return this.distancePointMultipath(e,t,i,r);case n.enumEnvelope:return this.distancePointEnvelope(e,t,i,r);default:return Number.NaN}}distancePointPoint(e,t,n,i){const r=e.getXY(),s=t.getXY();return f(n,r,0,0),f(i,s,0,0),Math.sqrt(a.sqrDistance(r,s))}distancePointMultipoint(e,t,n,i){const r=e.getXY();let s=this.m_maxSqrDistance,o=s,m=!1;const u=t.getPointCount(),c=new a;for(let h=0;h<u;++h)if(t.queryXY(h,c),o=a.sqrDistance(r,c),this.m_bIsNearCalc){if(o<=s)return 0}else if(!(o>s)&&(!m&&o===s||o<s)&&(s=o,f(n,r,0,0),f(i,c,h,0),m=!0,0===s))return 0;return m?Math.sqrt(s):Number.POSITIVE_INFINITY}distancePointMultipath(e,t,i,r){const s=!this.m_env2DgeometryA.isIntersecting(this.m_env2DgeometryB),o=e.getXY();if(!s&&t.getGeometryType()===n.enumPolygon&&0!==m(t,o,0))return f(i,o,0,0),f(r,o,-1,Number.NaN),0;t.getImpl().getAccelerators();let u=this.m_maxSqrDistance,c=u,h=-1;const l=new _,g=t.querySegmentIterator();let y=!1;for(;g.nextPath();)for(;g.hasNextSegment();){const e=g.nextSegment();e.queryEnvelope(l);const t=l.sqrDistance(o);if(t>u)continue;if(!this.m_bIsNearCalc&&y&&t===u)continue;h=e.getClosestCoordinate(o,!1);const n=e.getCoord2D(h);if(c=a.sqrDistance(o,n),this.m_bIsNearCalc){if(c<=u)return 0}else if(!(c>u)&&(!y||c<u)&&(u=c,f(i,o,0,0),f(r,n,g.getStartPointIndex(),h),y=!0,0===u))return 0}return y?Math.sqrt(u):Number.POSITIVE_INFINITY}distancePointEnvelope(e,t,n,i){const r=e.getXY();f(n,r,0,0),f(i,r,-1,Number.NaN);const s=t.asEnvelope2D();return!s.contains(r)?Math.sqrt(s.sqrDistance(r,i.outPoint)):0}distanceMultipointGeometry(e,t,i,r){switch(t.getGeometryType()){case n.enumPoint:{this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB);const n=this.distancePointMultipoint(t,e,r,i);return this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),n}case n.enumMultiPoint:return this.distanceMultipointMultipoint(e,t,i,r,1,1);case n.enumPolyline:case n.enumPolygon:return this.distanceMultipointMultipath(e,t,i,r);case n.enumEnvelope:return this.distanceMultipointMultipath(e,E(t),i,r);default:return Number.NaN}}distanceMultipointMultipoint(n,i,r,s,o,m){const g={stack:[],error:void 0,hasError:!1};try{if(this.m_bIsNearCalc&&1===o&&1===m){const e=Math.trunc(c(Math.sqrt(n.getPointCount())+1,1,h())),t=Math.trunc(c(Math.sqrt(i.getPointCount())+1,1,h()));if((e>=4||t>=4)&&this.distanceMultipointMultipoint(n,i,r,s,e,t)<=this.m_maxSqrDistance)return 0}let t=this.m_maxSqrDistance;const y=[n],_=[i],D=this.swapGeometriesIfBGtA(y,_);D&&(this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),m=u(o,o=m),d(r,s)),e(g,l(()=>{d(r,s),this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB)},!D),!1);const p=y[0].getImpl(),v=_[0].getImpl(),N=p.getPointCount(),P=v.getPointCount(),I=P>1;let q=!1;const M=new a,x=new a;for(let e=0;e<N;e+=o){if(p.queryXY(e,M),I){const e=this.m_env2DgeometryB.sqrDistance(M);if(this.m_bIsNearCalc){if(e>t)continue;if(this.m_env2DgeometryB.sqrMaxMinDistance(M)<=t)return 0}else if(e>=t)continue}for(let n=0;n<P;n+=m){v.queryXY(n,x);const i=a.sqrDistance(M,x);if(this.m_bIsNearCalc){if(i<=t)return 0}else if(!(i>t||q&&i===t)&&(!q||i<t)&&(f(r,M,e,0),f(s,x,n,0),q=!0,t=i,0===t))return q?Math.sqrt(t):Number.POSITIVE_INFINITY}}return q?Math.sqrt(t):Number.POSITIVE_INFINITY}catch(y){g.error=y,g.hasError=!0}finally{t(g)}}distanceMultipointMultipath(e,t,i,r){let s=!!this.m_env2DgeometryA.isIntersecting(this.m_env2DgeometryB)&&t.getGeometryType()===n.enumPolygon;const o=t.querySegmentIterator();o.stripAttributes();const u=new _,c=new a;let h=this.m_maxSqrDistance;const l=e.getImpl(),g=l.getPointCount(),y=g>1;let D=!1;for(;o.nextPath();)for(;o.hasNextSegment();){const e=o.nextSegment();if(e.queryLooseEnvelope(u),y){const e=u.sqrDistanceEnvelope(this.m_env2DgeometryA,null,null);if(this.m_bIsNearCalc){if(e>h)continue}else if(e>h||D&&e===h)continue}for(let n=0;n<g;n++){if(l.queryXY(n,c),s&&0!==m(t,c,0))return f(i,c,-1,Number.NaN),f(r,c,n,0),0;{const e=u.sqrDistance(c);if(this.m_bIsNearCalc){if(e>h)continue}else if(e>h)continue}const a=e.getClosestCoordinate(c,!1),g=e.getCoord2D(a);c.subThis(g);const y=c.sqrLength();if(this.m_bIsNearCalc){if(y<=h)return 0}else if(!(y>h)&&(!D||y<h)&&(h=y,f(i,l.getXY(n),n,0),f(r,g,o.getStartPointIndex(),a),D=!0,0===h))return 0}s=!1}return D?Math.sqrt(h):Number.POSITIVE_INFINITY}distanceEnvelopeGeometry(e,t,i,r){switch(t.getGeometryType()){case n.enumPoint:return this.distancePointEnvelope(t,e,r,i);case n.enumMultiPoint:{this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB);const n=this.distanceMultipointMultipath(t,E(e),r,i);return this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),n}case n.enumPolyline:case n.enumPolygon:return this.distanceMultipathMultipath(E(e),t,i,r);case n.enumEnvelope:return this.distanceEnvelopeEnvelope(e,t,i,r);default:return Number.NaN}}distanceEnvelopeEnvelope(e,t,n,i){n.t=Number.NaN,n.index=-1,i.t=Number.NaN,i.index=-1;const r=e.asEnvelope2D(),s=t.asEnvelope2D();return Math.sqrt(r.sqrDistanceEnvelope(s,n.outPoint,i.outPoint))}distanceMultipathGeometry(e,t,i,r){switch(t.getGeometryType()){case n.enumPoint:{this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB);const n=this.distancePointMultipath(t,e,r,i);return this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),n}case n.enumMultiPoint:{this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB);const n=this.distanceMultipointMultipath(t,e,r,i);return this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),n}case n.enumPolyline:case n.enumPolygon:return this.distanceMultipathMultipath(e,t,i,r);case n.enumEnvelope:return this.distanceMultipathMultipath(e,E(t),i,r);default:return Number.NaN}}distanceMultipathMultipath(n,i,s,o){const m={stack:[],error:void 0,hasError:!1};try{const t=[n],a=[i],g=this.swapGeometriesIfAGtB(t,a);g&&(this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),d(s,o)),e(m,l(()=>{d(s,o),this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB)},!g),!1);const y=t[0],D=a[0],p=y.querySegmentIterator();p.stripAttributes();const N=D.querySegmentIterator();if(N.stripAttributes(),this.m_bIsNearCalc&&this.m_env2DgeometryA.sqrMaxMinDistanceEnvelope(this.m_env2DgeometryB)<=this.m_maxSqrDistance)return 0;if(this.m_bIsNearCalc){const e=Math.trunc(c(Math.sqrt(y.getPointCount())+1,1,h())),t=Math.trunc(c(Math.sqrt(y.getPointCount())+1,1,h()));if(this.distanceMultipointMultipoint(y,D,s,o,e,t)<=this.m_maxSqrDistance)return 0}if(!!this.m_env2DgeometryA.isIntersecting(this.m_env2DgeometryB)){const e=v(),t=v();if(q(y,D,p,N,e,t))return P(s,e),P(o,t),0}const f=M(y),x=[],E=new r,b=new _,S=new _,B=new _;let A=this.m_maxSqrDistance,T=!0,C=!1;for(let e=0,n=f.length;e<n;++e){y.querySegment(f[e],E,!0);const t=E.get();if(t.queryEnvelope(b),!(b.sqrDistanceEnvelope(this.m_env2DgeometryB,null,null)>A)){if(this.m_bIsNearCalc&&b.sqrMaxDistanceEnvelope(this.m_env2DgeometryB)<=A)return 0;for(;N.nextPath();){if(this.progress_(),T)D.queryPathEnvelope(N.getPathIndex(),B),x[N.getPathIndex()]=B.clone();else if(b.sqrDistanceEnvelope(x[N.getPathIndex()],null,null)>A)continue;for(;N.hasNextSegment();){const n=N.nextSegment();if(n.queryEnvelope(S),b.sqrDistanceEnvelope(S,null,null)<=A){const i=!b.isIntersecting(S),r=[0],m=[0];let a=t.distance(n,i,r,m);if(a*=a,this.m_bIsNearCalc&&a<=this.m_maxSqrDistance)return 0;if(a<A||a===A&&f[e]<s.index){if(C=!0,I(s,t,f[e],r[0]),I(o,n,N.getStartPointIndex(),m[0]),0===a)return 0;A=a}}}}N.resetToFirstPath(),T=!1}}return C?Math.sqrt(A):Number.POSITIVE_INFINITY}catch(a){m.error=a,m.hasError=!0}finally{t(m)}}swapGeometriesIfAGtB(e,t){return i(e[0])>i(t[0])&&(t[0]=u(e[0],e[0]=t[0]),!0)}swapGeometriesIfBGtA(e,t){return this.swapGeometriesIfAGtB(t,e)}}export{b as D,v as m,M as s,q as w};
2
+ import{__addDisposableResource as e,__disposeResources as t}from"tslib";import{G as n,D as i}from"./Geometry.js";import{f as r,P as s,a6 as o}from"./MultiPathImpl.js";import{ag as m}from"./SpatialReference.js";import{P as a,aG as u,az as c,O as h,ad as l,J as g,ac as y}from"./Point2D.js";import{Envelope2D as _}from"./Envelope2D.js";import{P as D,E as p}from"./Envelope.js";function v(){return{outPoint:new a,index:-1,t:Number.NaN}}function N(e,t,n){return{outPoint:e.clone(),index:t,t:n}}function f(e,t,n,i){e.outPoint.assign(t),e.index=n,e.t=i}function P(e,t){e.outPoint.assign(t.outPoint),e.index=t.index,e.t=t.t}function I(e,t,n,i){e.index=n,e.t=i,t.queryCoord2D(e.t,e.outPoint)}function d(e,t){const n=v();P(n,e),P(e,t),P(t,n)}function q(e,t,i,r,s,o){if(e.getGeometryType()===n.enumPolygon){for(;r.nextPath();)if(r.hasNextSegment()){const t=r.nextSegment();if(0!==m(e,t.getEndXY(),0))return f(s,t.getEndXY(),-1,Number.NaN),f(o,t.getEndXY(),-1,Number.NaN),!0}r.resetToFirstPath()}if(t.getGeometryType()===n.enumPolygon){for(;i.nextPath();)if(i.hasNextSegment()){const e=i.nextSegment();if(0!==m(t,e.getEndXY(),0))return f(s,e.getEndXY(),-1,Number.NaN),f(o,e.getEndXY(),-1,Number.NaN),!0}i.resetToFirstPath()}return!1}function M(e){const t=e.getPathCount(),n=y(e.getSegmentCount(),0);let i=0;for(let r=0;r<t;++r){const t=i+e.getSegmentCountPath(r);for(let s=i,o=e.getPathStart(r);s<t;++s,++o)n[s]=o;i=t}return o(e.getPointCount(),n),n}function x(e,t){return!!Number.isNaN(t)||e<=t}function E(e){const t=new s;return t.addEnvelope(e,!1),t}class b{constructor(e,t){if(this.m_env2DgeometryA=null,this.m_env2DgeometryB=null,this.m_progressCounter=0,this.m_progressTracker=t,this.m_maxSqrDistance=e*e,this.m_maxDistance=e,this.m_bIsNearCalc=!1,Number.isNaN(this.m_maxDistance)?this.m_maxDistance=Number.POSITIVE_INFINITY:this.m_maxDistance=e,this.m_maxSqrDistance=this.m_maxDistance*this.m_maxDistance,Number.isFinite(this.m_maxSqrDistance)){let e=Math.sqrt(this.m_maxSqrDistance);for(;e<this.m_maxDistance;)this.m_maxSqrDistance*=1+Number.EPSILON,e=Math.sqrt(this.m_maxSqrDistance)}}calculate(e,t,n,i){if(e.getGeometryType()!==D.type||t.getGeometryType()!==D.type){this.m_env2DgeometryA=new _,this.m_env2DgeometryB=new _,e.queryEnvelope(this.m_env2DgeometryA),t.queryEnvelope(this.m_env2DgeometryB);if(!x(this.m_env2DgeometryA.distanceFromEnvelope(this.m_env2DgeometryB),this.m_maxDistance))return Number.POSITIVE_INFINITY}const r=N(new a,g(),Number.NaN),s=N(new a,g(),Number.NaN),o=this._ExecuteBruteForce(e,t,r,s);return x(o,this.m_maxDistance)?(null!==n&&P(n,r),null!==i&&P(i,s),o):Number.POSITIVE_INFINITY}isNear(e,t){if(this.m_bIsNearCalc=!0,e.isEmpty()||t.isEmpty())return!1;if(e===t)return!0;let n=!0;if(e.getGeometryType()!==D.type&&e.getGeometryType()!==p.type||t.getGeometryType()!==D.type&&t.getGeometryType()!==p.type||(n=!1),n){if(this.m_env2DgeometryA=new _,this.m_env2DgeometryB=new _,e.queryEnvelope(this.m_env2DgeometryA),t.queryEnvelope(this.m_env2DgeometryB),!(this.m_env2DgeometryA.sqrMaxMinDistanceEnvelope(this.m_env2DgeometryB)>this.m_maxSqrDistance))return!0;if(this.m_env2DgeometryA.sqrDistanceEnvelope(this.m_env2DgeometryB,null,null)>this.m_maxSqrDistance)return!1}const i=N(new a,g(),Number.NaN),r=N(new a,g(),Number.NaN);return this._ExecuteBruteForce(e,t,i,r)<=this.m_maxDistance}progress_(e=!1){}_ExecuteBruteForce(e,t,i,r){switch(e.getGeometryType()){case n.enumPoint:return this.distancePointGeometry(e,t,i,r);case n.enumMultiPoint:return this.distanceMultipointGeometry(e,t,i,r);case n.enumEnvelope:return this.distanceEnvelopeGeometry(e,t,i,r);case n.enumPolyline:case n.enumPolygon:return this.distanceMultipathGeometry(e,t,i,r);default:return Number.NaN}}distancePointGeometry(e,t,i,r){switch(t.getGeometryType()){case n.enumPoint:return this.distancePointPoint(e,t,i,r);case n.enumMultiPoint:return this.distancePointMultipoint(e,t,i,r);case n.enumPolyline:case n.enumPolygon:return this.distancePointMultipath(e,t,i,r);case n.enumEnvelope:return this.distancePointEnvelope(e,t,i,r);default:return Number.NaN}}distancePointPoint(e,t,n,i){const r=e.getXY(),s=t.getXY();return f(n,r,0,0),f(i,s,0,0),Math.sqrt(a.sqrDistance(r,s))}distancePointMultipoint(e,t,n,i){const r=e.getXY();let s=this.m_maxSqrDistance,o=s,m=!1;const u=t.getPointCount(),c=new a;for(let h=0;h<u;++h)if(t.queryXY(h,c),o=a.sqrDistance(r,c),this.m_bIsNearCalc){if(o<=s)return 0}else if(!(o>s)&&(!m&&o===s||o<s)&&(s=o,f(n,r,0,0),f(i,c,h,0),m=!0,0===s))return 0;return m?Math.sqrt(s):Number.POSITIVE_INFINITY}distancePointMultipath(e,t,i,r){const s=!this.m_env2DgeometryA.isIntersecting(this.m_env2DgeometryB),o=e.getXY();if(!s&&t.getGeometryType()===n.enumPolygon&&0!==m(t,o,0))return f(i,o,0,0),f(r,o,-1,Number.NaN),0;t.getImpl().getAccelerators();let u=this.m_maxSqrDistance,c=u,h=-1;const l=new _,g=t.querySegmentIterator();let y=!1;for(;g.nextPath();)for(;g.hasNextSegment();){const e=g.nextSegment();e.queryEnvelope(l);const t=l.sqrDistance(o);if(t>u)continue;if(!this.m_bIsNearCalc&&y&&t===u)continue;h=e.getClosestCoordinate(o,!1);const n=e.getCoord2D(h);if(c=a.sqrDistance(o,n),this.m_bIsNearCalc){if(c<=u)return 0}else if(!(c>u)&&(!y||c<u)&&(u=c,f(i,o,0,0),f(r,n,g.getStartPointIndex(),h),y=!0,0===u))return 0}return y?Math.sqrt(u):Number.POSITIVE_INFINITY}distancePointEnvelope(e,t,n,i){const r=e.getXY();f(n,r,0,0),f(i,r,-1,Number.NaN);const s=t.asEnvelope2D();return!s.contains(r)?Math.sqrt(s.sqrDistance(r,i.outPoint)):0}distanceMultipointGeometry(e,t,i,r){switch(t.getGeometryType()){case n.enumPoint:{this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB);const n=this.distancePointMultipoint(t,e,r,i);return this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),n}case n.enumMultiPoint:return this.distanceMultipointMultipoint(e,t,i,r,1,1);case n.enumPolyline:case n.enumPolygon:return this.distanceMultipointMultipath(e,t,i,r);case n.enumEnvelope:return this.distanceMultipointMultipath(e,E(t),i,r);default:return Number.NaN}}distanceMultipointMultipoint(n,i,r,s,o,m){const g={stack:[],error:void 0,hasError:!1};try{if(this.m_bIsNearCalc&&1===o&&1===m){const e=Math.trunc(c(Math.sqrt(n.getPointCount())+1,1,h())),t=Math.trunc(c(Math.sqrt(i.getPointCount())+1,1,h()));if((e>=4||t>=4)&&this.distanceMultipointMultipoint(n,i,r,s,e,t)<=this.m_maxSqrDistance)return 0}let t=this.m_maxSqrDistance;const y=[n],_=[i],D=this.swapGeometriesIfBGtA(y,_);D&&(this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),m=u(o,o=m),d(r,s)),e(g,l(()=>{d(r,s),this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB)},!D),!1);const p=y[0].getImpl(),v=_[0].getImpl(),N=p.getPointCount(),P=v.getPointCount(),I=P>1;let q=!1;const M=new a,x=new a;for(let e=0;e<N;e+=o){if(p.queryXY(e,M),I){const e=this.m_env2DgeometryB.sqrDistance(M);if(this.m_bIsNearCalc){if(e>t)continue;if(this.m_env2DgeometryB.sqrMaxMinDistance(M)<=t)return 0}else if(e>=t)continue}for(let n=0;n<P;n+=m){v.queryXY(n,x);const i=a.sqrDistance(M,x);if(this.m_bIsNearCalc){if(i<=t)return 0}else if(!(i>t||q&&i===t)&&(!q||i<t)&&(f(r,M,e,0),f(s,x,n,0),q=!0,t=i,0===t))return q?Math.sqrt(t):Number.POSITIVE_INFINITY}}return q?Math.sqrt(t):Number.POSITIVE_INFINITY}catch(y){g.error=y,g.hasError=!0}finally{t(g)}}distanceMultipointMultipath(e,t,i,r){let s=!!this.m_env2DgeometryA.isIntersecting(this.m_env2DgeometryB)&&t.getGeometryType()===n.enumPolygon;const o=t.querySegmentIterator();o.stripAttributes();const u=new _,c=new a;let h=this.m_maxSqrDistance;const l=e.getImpl(),g=l.getPointCount(),y=g>1;let D=!1;for(;o.nextPath();)for(;o.hasNextSegment();){const e=o.nextSegment();if(e.queryLooseEnvelope(u),y){const e=u.sqrDistanceEnvelope(this.m_env2DgeometryA,null,null);if(this.m_bIsNearCalc){if(e>h)continue}else if(e>h||D&&e===h)continue}for(let n=0;n<g;n++){if(l.queryXY(n,c),s&&0!==m(t,c,0))return f(i,c,-1,Number.NaN),f(r,c,n,0),0;{const e=u.sqrDistance(c);if(this.m_bIsNearCalc){if(e>h)continue}else if(e>h)continue}const a=e.getClosestCoordinate(c,!1),g=e.getCoord2D(a);c.subThis(g);const y=c.sqrLength();if(this.m_bIsNearCalc){if(y<=h)return 0}else if(!(y>h)&&(!D||y<h)&&(h=y,f(i,l.getXY(n),n,0),f(r,g,o.getStartPointIndex(),a),D=!0,0===h))return 0}s=!1}return D?Math.sqrt(h):Number.POSITIVE_INFINITY}distanceEnvelopeGeometry(e,t,i,r){switch(t.getGeometryType()){case n.enumPoint:return this.distancePointEnvelope(t,e,r,i);case n.enumMultiPoint:{this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB);const n=this.distanceMultipointMultipath(t,E(e),r,i);return this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),n}case n.enumPolyline:case n.enumPolygon:return this.distanceMultipathMultipath(E(e),t,i,r);case n.enumEnvelope:return this.distanceEnvelopeEnvelope(e,t,i,r);default:return Number.NaN}}distanceEnvelopeEnvelope(e,t,n,i){n.t=Number.NaN,n.index=-1,i.t=Number.NaN,i.index=-1;const r=e.asEnvelope2D(),s=t.asEnvelope2D();return Math.sqrt(r.sqrDistanceEnvelope(s,n.outPoint,i.outPoint))}distanceMultipathGeometry(e,t,i,r){switch(t.getGeometryType()){case n.enumPoint:{this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB);const n=this.distancePointMultipath(t,e,r,i);return this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),n}case n.enumMultiPoint:{this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB);const n=this.distanceMultipointMultipath(t,e,r,i);return this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),n}case n.enumPolyline:case n.enumPolygon:return this.distanceMultipathMultipath(e,t,i,r);case n.enumEnvelope:return this.distanceMultipathMultipath(e,E(t),i,r);default:return Number.NaN}}distanceMultipathMultipath(n,i,s,o){const m={stack:[],error:void 0,hasError:!1};try{const t=[n],a=[i],g=this.swapGeometriesIfAGtB(t,a);g&&(this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB),d(s,o)),e(m,l(()=>{d(s,o),this.m_env2DgeometryB=u(this.m_env2DgeometryA,this.m_env2DgeometryA=this.m_env2DgeometryB)},!g),!1);const y=t[0],D=a[0],p=y.querySegmentIterator();p.stripAttributes();const N=D.querySegmentIterator();if(N.stripAttributes(),this.m_bIsNearCalc&&this.m_env2DgeometryA.sqrMaxMinDistanceEnvelope(this.m_env2DgeometryB)<=this.m_maxSqrDistance)return 0;if(this.m_bIsNearCalc){const e=Math.trunc(c(Math.sqrt(y.getPointCount())+1,1,h())),t=Math.trunc(c(Math.sqrt(y.getPointCount())+1,1,h()));if(this.distanceMultipointMultipoint(y,D,s,o,e,t)<=this.m_maxSqrDistance)return 0}if(!!this.m_env2DgeometryA.isIntersecting(this.m_env2DgeometryB)){const e=v(),t=v();if(q(y,D,p,N,e,t))return P(s,e),P(o,t),0}const f=M(y),x=[],E=new r,b=new _,S=new _,B=new _;let A=this.m_maxSqrDistance,T=!0,G=!1;for(let e=0,n=f.length;e<n;++e){y.querySegment(f[e],E,!0);const t=E.get();if(t.queryEnvelope(b),!(b.sqrDistanceEnvelope(this.m_env2DgeometryB,null,null)>A)){if(this.m_bIsNearCalc&&b.sqrMaxDistanceEnvelope(this.m_env2DgeometryB)<=A)return 0;for(;N.nextPath();){if(this.progress_(),T)D.queryPathEnvelope(N.getPathIndex(),B),x[N.getPathIndex()]=B.clone();else if(b.sqrDistanceEnvelope(x[N.getPathIndex()],null,null)>A)continue;for(;N.hasNextSegment();){const n=N.nextSegment();if(n.queryEnvelope(S),b.sqrDistanceEnvelope(S,null,null)<=A){const i=!b.isIntersecting(S),r=[0],m=[0];let a=t.distance(n,i,r,m);if(a*=a,this.m_bIsNearCalc&&a<=this.m_maxSqrDistance)return 0;if(a<A||a===A&&f[e]<s.index){if(G=!0,I(s,t,f[e],r[0]),I(o,n,N.getStartPointIndex(),m[0]),0===a)return 0;A=a}}}}N.resetToFirstPath(),T=!1}}return G?Math.sqrt(A):Number.POSITIVE_INFINITY}catch(a){m.error=a,m.hasError=!0}finally{t(m)}}swapGeometriesIfAGtB(e,t){return i(e[0])>i(t[0])&&(t[0]=u(e[0],e[0]=t[0]),!0)}swapGeometriesIfBGtA(e,t){return this.swapGeometriesIfAGtB(t,e)}}export{b as D,v as m,M as s,q as w};