@arcgis/core 5.2.0-next.94 → 5.2.0-next.96

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 (604) hide show
  1. package/applications/WebEditor/geometryUtils.d.ts +1 -1
  2. package/arcade/arcadeAsyncRuntime.js +1 -1
  3. package/arcade/arcadeCompiler.js +1 -1
  4. package/arcade/arcadeRuntime.js +1 -1
  5. package/arcade/containerUtils.js +1 -1
  6. package/arcade/functions/track.js +1 -1
  7. package/arcgisGlobal.d.ts +2 -0
  8. package/assets/components/assets/icon/aiAgent16.json +1 -0
  9. package/assets/components/assets/icon/aiAgent24.json +1 -0
  10. package/assets/components/assets/icon/aiAgent32.json +1 -0
  11. package/assets/components/assets/icon/aiAgents16.json +1 -0
  12. package/assets/components/assets/icon/aiAgents24.json +1 -0
  13. package/assets/components/assets/icon/aiAgents32.json +1 -0
  14. package/assets/components/assets/icon/explodeGeometry16.json +1 -0
  15. package/assets/components/assets/icon/explodeGeometry24.json +1 -0
  16. package/assets/components/assets/icon/explodeGeometry32.json +1 -0
  17. package/assets/components/assets/icon/integration16.json +1 -0
  18. package/assets/components/assets/icon/integration24.json +1 -0
  19. package/assets/components/assets/icon/integration32.json +1 -0
  20. package/assets/components/assets/icon/spatiotemporalCatalog16.json +1 -0
  21. package/assets/components/assets/icon/spatiotemporalCatalog24.json +1 -0
  22. package/assets/components/assets/icon/spatiotemporalCatalog32.json +1 -0
  23. package/assets/components/assets/input-time-zone/t9n/messages.de.json +1 -1
  24. package/assets/esri/core/workers/RemoteClient.js +1 -1
  25. package/assets/esri/core/workers/chunks/000f91a18c22377f8525.js +1 -0
  26. package/assets/esri/core/workers/chunks/{c4a0d3149947a1d2c484.js → 006146ad6d4a5cbf1a1f.js} +1 -1
  27. package/assets/esri/core/workers/chunks/{bd1a7e95a797e1ed4a7b.js → 013c17e07756fa465845.js} +1 -1
  28. package/assets/esri/core/workers/chunks/014eaccf2c2d357981f0.js +1 -0
  29. package/assets/esri/core/workers/chunks/{f253875feb11883deb84.js → 04d4cd66485b622403d0.js} +1 -1
  30. package/assets/esri/core/workers/chunks/05eb064f9b543890ae24.js +1 -0
  31. package/assets/esri/core/workers/chunks/05fbd1f373cfa3724f0c.js +1 -0
  32. package/assets/esri/core/workers/chunks/0809a55a2f9be07cc5a9.js +1 -0
  33. package/assets/esri/core/workers/chunks/0930738f43ce09b2ed2d.js +1 -0
  34. package/assets/esri/core/workers/chunks/{691434d4c6a38e63d819.js → 0a242e76bc293b0ad04b.js} +1 -1
  35. package/assets/esri/core/workers/chunks/0a4092578dc7578bcf76.js +1 -0
  36. package/assets/esri/core/workers/chunks/0e11bee9b56a7f51b012.js +1 -0
  37. package/assets/esri/core/workers/chunks/0e65869a5dd5a3917da7.js +1 -0
  38. package/assets/esri/core/workers/chunks/0ffb5a1275d07dcd9115.js +1 -0
  39. package/assets/esri/core/workers/chunks/{e370a3337b3c90240e73.js → 105da965fc90604eb6bf.js} +1 -1
  40. package/assets/esri/core/workers/chunks/1082bb0858585bd4fa21.js +2 -0
  41. package/assets/esri/core/workers/chunks/10c13c36c42c5ac41d12.js +1 -0
  42. package/assets/esri/core/workers/chunks/{5235b9c21ac4156c2375.js → 10f4c5533f50c3693318.js} +1 -1
  43. package/assets/esri/core/workers/chunks/1201bb22a2bfd7d7ecba.js +1 -0
  44. package/assets/esri/core/workers/chunks/16f55c5d642a23c2547e.js +1 -0
  45. package/assets/esri/core/workers/chunks/{09e01fd1c199be0c8e03.js → 16ffbe484f6cd4736f79.js} +1 -1
  46. package/assets/esri/core/workers/chunks/{1bf967c68d0c795d3fb4.js → 19a4907fc93ae8b817e9.js} +1 -1
  47. package/assets/esri/core/workers/chunks/{f74c7cbe4bd12f73ae90.js → 19d7339f20f3008c4893.js} +1 -1
  48. package/assets/esri/core/workers/chunks/{9226205850e35b7fc610.js → 1a9f17781e0a3bc5106f.js} +1 -1
  49. package/assets/esri/core/workers/chunks/{bf7875fda48b15271a10.js → 1bef7097fe5e402539ea.js} +1 -1
  50. package/assets/esri/core/workers/chunks/1d7f633f158062eb3f64.js +1 -0
  51. package/assets/esri/core/workers/chunks/{fa377112ef3b78f6ed18.js → 1de1cc0ed0f169a58aff.js} +1 -1
  52. package/assets/esri/core/workers/chunks/{0549e2badf511e27aa54.js → 1e3b07cf0e608431a277.js} +1 -1
  53. package/assets/esri/core/workers/chunks/{8a87e1a89a0d8c6203a7.js → 20feca2fdd304b3e9664.js} +1 -1
  54. package/assets/esri/core/workers/chunks/{4c73c2f4331351e2a50c.js → 22ff018342860249b3eb.js} +1 -1
  55. package/assets/esri/core/workers/chunks/248df6fda489a9de5852.js +1 -0
  56. package/assets/esri/core/workers/chunks/2524e2385f61a6898411.js +1 -0
  57. package/assets/esri/core/workers/chunks/279b16727d4b515eca44.js +1 -0
  58. package/assets/esri/core/workers/chunks/2b10d6597af3eeec5396.js +1 -0
  59. package/assets/esri/core/workers/chunks/2bd4b536e329112591c4.js +1 -0
  60. package/assets/esri/core/workers/chunks/2c01477b69c38f691e19.js +1 -0
  61. package/assets/esri/core/workers/chunks/2e2349387a2b9903f13c.js +2 -0
  62. package/assets/esri/core/workers/chunks/{e594b6db9caee1f7b9fc.js → 32aa1529e84b839d051d.js} +1 -1
  63. package/assets/esri/core/workers/chunks/33041e50ea02d99480b0.js +1 -0
  64. package/assets/esri/core/workers/chunks/{5d7a5aa608ed6192b016.js → 349982635e921e838030.js} +1 -1
  65. package/assets/esri/core/workers/chunks/35d0a7597473d46866de.js +1 -0
  66. package/assets/esri/core/workers/chunks/374d726fdd0a9848cea5.js +1 -0
  67. package/assets/esri/core/workers/chunks/379f5ca5372d834af497.js +1 -0
  68. package/assets/esri/core/workers/chunks/37ae52c71bf9c70fbb92.js +1 -0
  69. package/assets/esri/core/workers/chunks/{05393b23ab24126d4236.js → 38bc5d09ae07f486d457.js} +1 -1
  70. package/assets/esri/core/workers/chunks/{d270b49c037085503016.js → 3a9435569ba460ff7e3d.js} +1 -1
  71. package/assets/esri/core/workers/chunks/3bafa01ca01a67d09432.js +1 -0
  72. package/assets/esri/core/workers/chunks/3c7901ea007c9615ba54.js +1 -0
  73. package/assets/esri/core/workers/chunks/4047208f9559e06d7102.js +1 -0
  74. package/assets/esri/core/workers/chunks/4049e9b86c8e27a7ff12.js +1 -0
  75. package/assets/esri/core/workers/chunks/411bbdecba340df11d95.js +2 -0
  76. package/assets/esri/core/workers/chunks/42b5533f94ebcdc4befe.js +1 -0
  77. package/assets/esri/core/workers/chunks/44ca13c874b5aa0ed5a0.js +1 -0
  78. package/assets/esri/core/workers/chunks/{e488e5c62cb375c87a39.js → 471027e4280bd51167b0.js} +1 -1
  79. package/assets/esri/core/workers/chunks/4717831effb1ac6d5f5d.js +1 -0
  80. package/assets/esri/core/workers/chunks/{a89dbef8155d7c4354da.js → 476535cfb06ced74d611.js} +2 -2
  81. package/assets/esri/core/workers/chunks/486f1277fe834c0fc4c1.js +1 -0
  82. package/assets/esri/core/workers/chunks/48ade66f1685a1aaffba.js +1 -0
  83. package/assets/esri/core/workers/chunks/4c088c26d5d546c95c90.js +1 -0
  84. package/assets/esri/core/workers/chunks/4d13c1a04788e5222678.js +1 -0
  85. package/assets/esri/core/workers/chunks/{a46ac0be9aabc4cfedc7.js → 4d7f6c92041d52cc8732.js} +1 -1
  86. package/assets/esri/core/workers/chunks/{595edbc1e9bba47d5676.js → 4f89da01b67b66a92c01.js} +1 -1
  87. package/assets/esri/core/workers/chunks/507bbcde2b39321b50a4.js +1 -0
  88. package/assets/esri/core/workers/chunks/{9b8e33985310f281f084.js → 56a5b65961e722f5cae9.js} +1 -1
  89. package/assets/esri/core/workers/chunks/5830deda121e4c95d199.js +1 -0
  90. package/assets/esri/core/workers/chunks/{19e93d4d37018e3ee849.js → 58a52adc42fbe5cd12c6.js} +1 -1
  91. package/assets/esri/core/workers/chunks/{b0e25ccb5a1e57a82628.js → 58b93f13316196d2e97d.js} +1 -1
  92. package/assets/esri/core/workers/chunks/58f98bd89b644cfdafae.js +1 -0
  93. package/assets/esri/core/workers/chunks/5a8658e4ef5163e8ab3b.js +1 -0
  94. package/assets/esri/core/workers/chunks/5aa3e1e9c701c7fef6e4.js +1 -0
  95. package/assets/esri/core/workers/chunks/5bb8d9d887dd4211afd2.js +1 -0
  96. package/assets/esri/core/workers/chunks/5d7625eb9997cd0dff09.js +1 -0
  97. package/assets/esri/core/workers/chunks/5e56a004b4407b8066eb.js +1 -0
  98. package/assets/esri/core/workers/chunks/5efc66be4576c6f67064.js +1 -0
  99. package/assets/esri/core/workers/chunks/60b1af54e7fc20fd9588.js +1 -0
  100. package/assets/esri/core/workers/chunks/6134a2c6983792787184.js +1 -0
  101. package/assets/esri/core/workers/chunks/6319413b89e23f671487.js +1 -0
  102. package/assets/esri/core/workers/chunks/{e50adcfb392adfb3f79c.js → 633454b27c34f9ec7940.js} +1 -1
  103. package/assets/esri/core/workers/chunks/63c43ebf46964c283b4d.js +1 -0
  104. package/assets/esri/core/workers/chunks/65d3638ded62c5606ae3.js +1 -0
  105. package/assets/esri/core/workers/chunks/{aa0ef4493a7e9bed159f.js → 662f4b39ec44c68e0733.js} +1 -1
  106. package/assets/esri/core/workers/chunks/680bef5e8237cc3bdd84.js +1 -0
  107. package/assets/esri/core/workers/chunks/6835f959952f70972fce.js +1 -0
  108. package/assets/esri/core/workers/chunks/{ddf284648a73b6993737.js → 68d823697c298122ee08.js} +1 -1
  109. package/assets/esri/core/workers/chunks/6aaefd61505027267c9b.js +1 -0
  110. package/assets/esri/core/workers/chunks/6ceb17eada151230abf7.js +1 -0
  111. package/assets/esri/core/workers/chunks/6df29716f75696434807.js +1 -0
  112. package/assets/esri/core/workers/chunks/6e804bd6bb4b0ee44fa9.js +1 -0
  113. package/assets/esri/core/workers/chunks/{ee77999df3785468b2b6.js → 6f6e8b7e6e2c856e4ed1.js} +1 -1
  114. package/assets/esri/core/workers/chunks/{8ea28a4b1afe8bb2d313.js → 7091bbdc36f1f03f14b3.js} +1 -1
  115. package/assets/esri/core/workers/chunks/7608de0d942b4c16b2f6.js +1 -0
  116. package/assets/esri/core/workers/chunks/{4b6f433022a6822706cb.js → 762817d30474c15142b4.js} +1 -1
  117. package/assets/esri/core/workers/chunks/762e9a15b2638475a2b4.js +1 -0
  118. package/assets/esri/core/workers/chunks/79088d5c9c2e6a780929.js +1 -0
  119. package/assets/esri/core/workers/chunks/7bb3411a86cdd736d555.js +1 -0
  120. package/assets/esri/core/workers/chunks/{f3d57c5b9dffd12e45b4.js → 7c3a89c12ea32a071ad4.js} +1 -1
  121. package/assets/esri/core/workers/chunks/7c67596c0792282afdfc.js +1 -0
  122. package/assets/esri/core/workers/chunks/7cef6e5f39137e74bbc3.js +1 -0
  123. package/assets/esri/core/workers/chunks/7efc51324cfc8e08c756.js +1 -0
  124. package/assets/esri/core/workers/chunks/{87e0ceb1a64ab08e679a.js → 7fd54fa2f91cdab44ab3.js} +1 -1
  125. package/assets/esri/core/workers/chunks/822a5020afbca21df7f7.js +1 -0
  126. package/assets/esri/core/workers/chunks/8599d2f2eb0fbb4a8bf5.js +1 -0
  127. package/assets/esri/core/workers/chunks/862f7090ba4a56c07093.js +1 -0
  128. package/assets/esri/core/workers/chunks/{97c7dfd29ad4c2966cb4.js → 88252899a5291ad29710.js} +1 -1
  129. package/assets/esri/core/workers/chunks/8837fbcc0d484659b79c.js +1 -0
  130. package/assets/esri/core/workers/chunks/8dcc7749de3391710864.js +1 -0
  131. package/assets/esri/core/workers/chunks/900dad076347443b3ad9.js +1 -0
  132. package/assets/esri/core/workers/chunks/{f8f7b86bbd62106bc3d4.js → 925f83be3c1eb4b5c6af.js} +1 -1
  133. package/assets/esri/core/workers/chunks/{a4a22149077c7780481c.js → 9378ce457b02717304e6.js} +1 -1
  134. package/assets/esri/core/workers/chunks/93a7cf23f73b23fc7802.js +1 -0
  135. package/assets/esri/core/workers/chunks/93c1d1e7c0935242071e.js +1 -0
  136. package/assets/esri/core/workers/chunks/{fddcb8be714ad18ad0c8.js → 970b33947bf61fccd461.js} +1 -1
  137. package/assets/esri/core/workers/chunks/97aaff86e06380a68df8.js +1 -0
  138. package/assets/esri/core/workers/chunks/9bc7df2b8ae0ed443d13.js +1 -0
  139. package/assets/esri/core/workers/chunks/9cc14a41d4a90f6d626e.js +1 -0
  140. package/assets/esri/core/workers/chunks/9e514a58b1165e273202.js +1 -0
  141. package/assets/esri/core/workers/chunks/9fe1db0762ab3326eab4.js +1 -0
  142. package/assets/esri/core/workers/chunks/{a5bb19d2b7d7db22222b.js → a10188c4d1904965898a.js} +1 -1
  143. package/assets/esri/core/workers/chunks/a2288d44cba34d947613.js +1 -0
  144. package/assets/esri/core/workers/chunks/a26916de4c105859621e.js +1 -0
  145. package/assets/esri/core/workers/chunks/a322afbb48898ce35851.js +1 -0
  146. package/assets/esri/core/workers/chunks/a34cadd486e7fcc79063.js +1 -0
  147. package/assets/esri/core/workers/chunks/{cefb70d633c220cbedf9.js → a4dc1a80ed6604d71722.js} +1 -1
  148. package/assets/esri/core/workers/chunks/{20f6e681ccd8bf884b77.js → a72983c3621810d4b1af.js} +1 -1
  149. package/assets/esri/core/workers/chunks/a8e9aa5461c71c88e2e5.js +1 -0
  150. package/assets/esri/core/workers/chunks/{32f11b4aeae1ef00e466.js → a8f70cece5ce2b095cdd.js} +1 -1
  151. package/assets/esri/core/workers/chunks/ab332bd411d6c7d4190c.js +1 -0
  152. package/assets/esri/core/workers/chunks/{777f2fdf1f4b9f243893.js → ab3a6ce7bc2a27b92469.js} +1 -1
  153. package/assets/esri/core/workers/chunks/{15f4f7e34e14e3cf52e6.js → abd2f8fae6b918fbdd6d.js} +1 -1
  154. package/assets/esri/core/workers/chunks/{b13d2da33ec07e9d41ff.js → b0da2b089a89d643df1e.js} +1 -1
  155. package/assets/esri/core/workers/chunks/{65f4ca7201e7267bfc81.js → b5fcf4165ac72654742d.js} +1 -1
  156. package/assets/esri/core/workers/chunks/b82b523b6837ed1f28d3.js +2 -0
  157. package/assets/esri/core/workers/chunks/{527b87fddf33bb5d519e.js → ba77a8892cb23c7a297d.js} +1 -1
  158. package/assets/esri/core/workers/chunks/bb8089929ded0613d8e7.js +1 -0
  159. package/assets/esri/core/workers/chunks/bc7ca87d3bfe8a4aec81.js +1 -0
  160. package/assets/esri/core/workers/chunks/bc9b96a539f28afcb8cb.js +1 -0
  161. package/assets/esri/core/workers/chunks/{2d07d5a9ec67c39ef10c.js → bd4f29d2681e5596591a.js} +1 -1
  162. package/assets/esri/core/workers/chunks/bf9eba555aebca2c132b.js +1 -0
  163. package/assets/esri/core/workers/chunks/{903c7bd079888f65fef1.js → c3fbd81bb5820e48038f.js} +1 -1
  164. package/assets/esri/core/workers/chunks/c9df18e9ff7367a004b6.js +1 -0
  165. package/assets/esri/core/workers/chunks/ca8061e0a6d78d646ebf.js +1 -0
  166. package/assets/esri/core/workers/chunks/cc73ac8404615dc392d2.js +1 -0
  167. package/assets/esri/core/workers/chunks/{e823c9ccb7bc348d8824.js → ccb26860518dce6d01c0.js} +1 -1
  168. package/assets/esri/core/workers/chunks/cded34b161fcc790e672.js +1 -0
  169. package/assets/esri/core/workers/chunks/{1bf5c0a4bc5a960a3fa2.js → d1d4979e9dcabe5e4619.js} +1 -1
  170. package/assets/esri/core/workers/chunks/d2865c604849ce79183f.js +1 -0
  171. package/assets/esri/core/workers/chunks/{9b81bd62a2c72f592db1.js → d826f6d32b4c5885276a.js} +1 -1
  172. package/assets/esri/core/workers/chunks/d92540d3ffc4af980dd8.js +1 -0
  173. package/assets/esri/core/workers/chunks/dc7853795439ae77ace9.js +1 -0
  174. package/assets/esri/core/workers/chunks/dd55737fba0a8fe68101.js +1684 -0
  175. package/assets/esri/core/workers/chunks/dd8d19eb6b8e955c8067.js +1 -0
  176. package/assets/esri/core/workers/chunks/dda269a088275c823b40.js +1 -0
  177. package/assets/esri/core/workers/chunks/{97e41500fc2d24a88938.js → de95dee8db92cf8f796f.js} +1 -1
  178. package/assets/esri/core/workers/chunks/e1c8767143f9f9d1f049.js +1 -0
  179. package/assets/esri/core/workers/chunks/e5b6fa57cc4028fbd401.js +1 -0
  180. package/assets/esri/core/workers/chunks/{2cf2f2842c19be84ab4d.js → e6cb31c727f799c1297c.js} +1 -1
  181. package/assets/esri/core/workers/chunks/e7fdad0c07beb3614b60.js +1 -0
  182. package/assets/esri/core/workers/chunks/e934ef66d130c212c05b.js +1 -0
  183. package/assets/esri/core/workers/chunks/{7c56446184abcd14678b.js → ea77654c8964cc39b9a6.js} +1 -1
  184. package/assets/esri/core/workers/chunks/eb167f9f6132a6348d2e.js +1 -0
  185. package/assets/esri/core/workers/chunks/ed5ac1efd3cba49be756.js +1 -0
  186. package/assets/esri/core/workers/chunks/ef24fd6c0322e5de9fdf.js +2 -0
  187. package/assets/esri/core/workers/chunks/f219ba010c480bb75684.js +1 -0
  188. package/assets/esri/core/workers/chunks/f331c24247d132589859.js +1 -0
  189. package/assets/esri/core/workers/chunks/fbf2d90240d36f8b423f.js +1 -0
  190. package/assets/esri/core/workers/chunks/{4ee99e654dad6f09abee.js → fc042b9936686785c39e.js} +1 -1
  191. package/assets/esri/core/workers/chunks/fc1658eae7b312502fab.js +1 -0
  192. package/assets/esri/core/workers/chunks/{1ab8307ba9981124f669.js → fd4d124c5bf810d9e352.js} +1 -1
  193. package/assets/esri/core/workers/chunks/ffa35ecc681ec1c4739a.js +1 -0
  194. package/assets/esri/core/workers/chunks/ffca0b2333e760b66d3a.js +1 -0
  195. package/chunks/{GlowBlur.glsl.js → BlurEmission.glsl.js} +1 -1
  196. package/chunks/EmissionComposite.glsl.js +3 -3
  197. package/chunks/Fog.glsl.js +5 -3
  198. package/chunks/RibbonLine.glsl.js +52 -52
  199. package/config.js +1 -1
  200. package/core/timeUtils.d.ts +62 -0
  201. package/core/timeUtils.js +1 -1
  202. package/editing/sharedTemplates/executor/builders/bufferLineToPolygon.js +1 -1
  203. package/editing/sharedTemplates/executor/builders/bufferPointToPolygon.js +1 -1
  204. package/editing/sharedTemplates/executor/builders/bufferPolygonToPolygon.js +1 -1
  205. package/editing/sharedTemplates/executor/builders/pointAtIntersectionVerticesOfLine.js +1 -1
  206. package/editing/sharedTemplates/executor/builders/support/offsetUtils.js +1 -1
  207. package/editing/sharedTemplates/executor/support/createPresetServiceEdit.js +1 -1
  208. package/geometry/Polygon.js +1 -1
  209. package/geometry/geometryEngine.d.ts +36 -36
  210. package/geometry/operators/affineTransformOperator.d.ts +30 -1
  211. package/geometry/operators/affineTransformOperator.js +1 -1
  212. package/geometry/operators/alphaShapeOperator.d.ts +49 -5
  213. package/geometry/operators/alphaShapeOperator.js +1 -1
  214. package/geometry/operators/areaOperator.d.ts +28 -4
  215. package/geometry/operators/areaOperator.js +1 -1
  216. package/geometry/operators/autoCompleteOperator.d.ts +25 -2
  217. package/geometry/operators/autoCompleteOperator.js +1 -1
  218. package/geometry/operators/boundaryOperator.d.ts +40 -2
  219. package/geometry/operators/boundaryOperator.js +1 -1
  220. package/geometry/operators/bufferOperator.d.ts +51 -6
  221. package/geometry/operators/bufferOperator.js +1 -1
  222. package/geometry/operators/centroidOperator.d.ts +23 -2
  223. package/geometry/operators/centroidOperator.js +1 -1
  224. package/geometry/operators/clipOperator.d.ts +34 -2
  225. package/geometry/operators/clipOperator.js +1 -1
  226. package/geometry/operators/containsOperator.d.ts +32 -2
  227. package/geometry/operators/containsOperator.js +1 -1
  228. package/geometry/operators/convexHullOperator.d.ts +47 -4
  229. package/geometry/operators/convexHullOperator.js +1 -1
  230. package/geometry/operators/crossesOperator.d.ts +35 -2
  231. package/geometry/operators/crossesOperator.js +1 -1
  232. package/geometry/operators/cutOperator.d.ts +23 -2
  233. package/geometry/operators/cutOperator.js +1 -1
  234. package/geometry/operators/densifyOperator.d.ts +61 -6
  235. package/geometry/operators/densifyOperator.js +1 -1
  236. package/geometry/operators/differenceOperator.d.ts +34 -2
  237. package/geometry/operators/differenceOperator.js +1 -1
  238. package/geometry/operators/disjointOperator.d.ts +33 -2
  239. package/geometry/operators/disjointOperator.js +1 -1
  240. package/geometry/operators/distanceOperator.d.ts +29 -4
  241. package/geometry/operators/distanceOperator.js +1 -1
  242. package/geometry/operators/equalsOperator.d.ts +32 -2
  243. package/geometry/operators/equalsOperator.js +1 -1
  244. package/geometry/operators/extendOperator.d.ts +29 -3
  245. package/geometry/operators/extendOperator.js +1 -1
  246. package/geometry/operators/generalizeOperator.d.ts +46 -5
  247. package/geometry/operators/generalizeOperator.js +1 -1
  248. package/geometry/operators/geodesicBufferOperator.d.ts +71 -7
  249. package/geometry/operators/geodesicBufferOperator.js +1 -1
  250. package/geometry/operators/geodesicProximityOperator.d.ts +106 -14
  251. package/geometry/operators/geodesicProximityOperator.js +1 -1
  252. package/geometry/operators/geodeticAreaOperator.d.ts +51 -5
  253. package/geometry/operators/geodeticAreaOperator.js +1 -1
  254. package/geometry/operators/geodeticDensifyOperator.d.ts +65 -6
  255. package/geometry/operators/geodeticDensifyOperator.js +1 -1
  256. package/geometry/operators/geodeticDistanceOperator.d.ts +52 -5
  257. package/geometry/operators/geodeticDistanceOperator.js +1 -1
  258. package/geometry/operators/geodeticLengthOperator.d.ts +51 -5
  259. package/geometry/operators/geodeticLengthOperator.js +1 -1
  260. package/geometry/operators/geodeticUtilsOperator.d.ts +79 -9
  261. package/geometry/operators/geodeticUtilsOperator.js +1 -1
  262. package/geometry/operators/graphicBufferOperator.d.ts +47 -4
  263. package/geometry/operators/graphicBufferOperator.js +1 -1
  264. package/geometry/operators/integrateOperator.d.ts +24 -2
  265. package/geometry/operators/integrateOperator.js +1 -1
  266. package/geometry/operators/intersectionOperator.d.ts +88 -3
  267. package/geometry/operators/intersectionOperator.js +1 -1
  268. package/geometry/operators/intersectsOperator.d.ts +32 -2
  269. package/geometry/operators/intersectsOperator.js +1 -1
  270. package/geometry/operators/isNearOperator.d.ts +31 -4
  271. package/geometry/operators/isNearOperator.js +1 -1
  272. package/geometry/operators/json/bufferOperator.js +1 -1
  273. package/geometry/operators/json/containsOperator.js +1 -1
  274. package/geometry/operators/json/convexHullOperator.js +1 -1
  275. package/geometry/operators/json/crossesOperator.js +1 -1
  276. package/geometry/operators/json/disjointOperator.js +1 -1
  277. package/geometry/operators/json/generalizeOperator.js +1 -1
  278. package/geometry/operators/json/geodesicBufferOperator.js +1 -1
  279. package/geometry/operators/json/graphicBufferOperator.js +1 -1
  280. package/geometry/operators/json/intersectionOperator.js +1 -1
  281. package/geometry/operators/json/intersectsOperator.js +1 -1
  282. package/geometry/operators/json/lengthOperator.js +1 -1
  283. package/geometry/operators/json/offsetOperator.js +1 -1
  284. package/geometry/operators/json/overlapsOperator.js +1 -1
  285. package/geometry/operators/json/projectOperator.js +1 -1
  286. package/geometry/operators/json/simplifyOperator.js +1 -1
  287. package/geometry/operators/json/simplifyOperatorOGC.js +1 -1
  288. package/geometry/operators/json/touchesOperator.js +1 -1
  289. package/geometry/operators/json/unionOperator.js +1 -1
  290. package/geometry/operators/json/withinOperator.js +1 -1
  291. package/geometry/operators/labelPointOperator.d.ts +32 -2
  292. package/geometry/operators/labelPointOperator.js +1 -1
  293. package/geometry/operators/lengthOperator.d.ts +28 -4
  294. package/geometry/operators/lengthOperator.js +1 -1
  295. package/geometry/operators/linesToPolygonsOperator.d.ts +23 -2
  296. package/geometry/operators/linesToPolygonsOperator.js +1 -1
  297. package/geometry/operators/locateBetweenOperator.d.ts +28 -2
  298. package/geometry/operators/locateBetweenOperator.js +1 -1
  299. package/geometry/operators/minimumBoundingCircleOperator.d.ts +38 -4
  300. package/geometry/operators/minimumBoundingCircleOperator.js +1 -1
  301. package/geometry/operators/multiPartToSinglePartOperator.d.ts +33 -4
  302. package/geometry/operators/multiPartToSinglePartOperator.js +1 -1
  303. package/geometry/operators/offsetOperator.d.ts +50 -5
  304. package/geometry/operators/offsetOperator.js +1 -1
  305. package/geometry/operators/overlapsOperator.d.ts +33 -2
  306. package/geometry/operators/overlapsOperator.js +1 -1
  307. package/geometry/operators/polygonOverlayOperator.d.ts +31 -5
  308. package/geometry/operators/polygonOverlayOperator.js +1 -1
  309. package/geometry/operators/polygonSlicerOperator.d.ts +72 -10
  310. package/geometry/operators/polygonSlicerOperator.js +1 -1
  311. package/geometry/operators/projectOperator.d.ts +63 -3
  312. package/geometry/operators/projectOperator.js +1 -1
  313. package/geometry/operators/proximityOperator.d.ts +71 -9
  314. package/geometry/operators/proximityOperator.js +1 -1
  315. package/geometry/operators/relateOperator.d.ts +41 -2
  316. package/geometry/operators/relateOperator.js +1 -1
  317. package/geometry/operators/reshapeOperator.d.ts +28 -2
  318. package/geometry/operators/reshapeOperator.js +1 -1
  319. package/geometry/operators/shapePreservingProjectOperator.d.ts +64 -6
  320. package/geometry/operators/shapePreservingProjectOperator.js +1 -1
  321. package/geometry/operators/simplifyOGCOperator.d.ts +72 -6
  322. package/geometry/operators/simplifyOGCOperator.js +1 -1
  323. package/geometry/operators/simplifyOperator.d.ts +72 -4
  324. package/geometry/operators/simplifyOperator.js +1 -1
  325. package/geometry/operators/singlePartToMultiPartOperator.js +1 -1
  326. package/geometry/operators/support/Transformation.d.ts +17 -11
  327. package/geometry/operators/support/jsonConverter.js +1 -1
  328. package/geometry/operators/symmetricDifferenceOperator.d.ts +33 -2
  329. package/geometry/operators/symmetricDifferenceOperator.js +1 -1
  330. package/geometry/operators/touchesOperator.d.ts +32 -2
  331. package/geometry/operators/touchesOperator.js +1 -1
  332. package/geometry/operators/types.d.ts +4 -1
  333. package/geometry/operators/unionOperator.d.ts +33 -2
  334. package/geometry/operators/unionOperator.js +1 -1
  335. package/geometry/operators/withinOperator.d.ts +32 -2
  336. package/geometry/operators/withinOperator.js +1 -1
  337. package/geometry/projectionUtils.js +1 -1
  338. package/geometry/support/geometryUtils.js +1 -1
  339. package/geometry/support/normalizeUtils.d.ts +5 -3
  340. package/geometry/support/normalizeUtils.js +1 -1
  341. package/interfaces.d.ts +202 -202
  342. package/kernel.js +1 -1
  343. package/layers/AnnotationFeatureLayer.d.ts +0 -1
  344. package/layers/graphics/data/QueryEngineResult.js +1 -1
  345. package/layers/graphics/data/queryUtils.js +1 -1
  346. package/layers/graphics/data/spatialQuerySupport.js +1 -1
  347. package/layers/graphics/sources/support/sourceUtils.js +1 -1
  348. package/layers/mixins/ArcGISImageService.js +1 -1
  349. package/layers/mixins/TiledImagery.js +1 -1
  350. package/layers/orientedImagery/transformations/updateElevationUtils.js +1 -1
  351. package/layers/raster/datasets/FunctionRaster.js +1 -1
  352. package/layers/raster/datasets/pixelReader.js +1 -1
  353. package/layers/raster/functions/clipUtils.js +1 -1
  354. package/layers/raster/functions/rasterProjectionHelper.js +1 -1
  355. package/layers/support/Sublayer.js +1 -1
  356. package/layers/video/videoUtils.js +1 -1
  357. package/package.json +4 -4
  358. package/popup/FeatureContentCollection.d.ts +3 -3
  359. package/popup/FeatureContentCollection.js +1 -1
  360. package/rest/imageService/fetchRasterInfo.js +1 -1
  361. package/smartMapping/support/adapters/InMemoryLayerAdapter.js +1 -1
  362. package/support/revision.js +1 -1
  363. package/support/tests/serviceMockDependencies.js +1 -1
  364. package/support/tests/setupServiceMocksMesh.js +1 -1
  365. package/symbols/cim/CIMEffects.js +1 -1
  366. package/symbols/cim/effects/EffectBuffer.js +1 -1
  367. package/symbols/cim/effects/EffectControlMeasureLine.js +1 -1
  368. package/symbols/cim/effects/EffectDonut.js +1 -1
  369. package/symbols/cim/effects/EffectEnclosingPolygon.js +1 -1
  370. package/symbols/cim/effects/EffectOffset.js +1 -1
  371. package/symbols/cim/effects/EffectTaperedPolygon.js +1 -1
  372. package/symbols/cim/types.d.ts +2 -1
  373. package/views/2d/analysis/AreaMeasurement/AreaMeasurementController.js +1 -1
  374. package/views/2d/analysis/DistanceMeasurement/DistanceMeasurementController.js +1 -1
  375. package/views/2d/engine/webgl/Overlay.js +1 -1
  376. package/views/2d/engine/webgl/VideoScreenRenderer.js +1 -1
  377. package/views/2d/engine/webgl/shaderGraph/techniques/labels/LabelMeshWriter.js +1 -1
  378. package/views/2d/layers/TileLayerView2D.js +1 -1
  379. package/views/2d/layers/support/RouteLayerWaypointVisualization.js +1 -1
  380. package/views/3d/analysis/ShadowCastAnalysisView3D.js +1 -1
  381. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementController.js +1 -1
  382. package/views/3d/layers/ElevationLayerView3D.js +1 -1
  383. package/views/3d/layers/ElevationLayerView3DModifications.js +1 -1
  384. package/views/3d/layers/I3SMeshView3D.js +1 -1
  385. package/views/3d/layers/graphics/Deconflictor.js +1 -1
  386. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  387. package/views/3d/layers/graphics/Graphics3DLineSymbolLayer.js +1 -1
  388. package/views/3d/layers/i3s/I3SMeshViewFilter.js +1 -1
  389. package/views/3d/state/ViewStateManager.js +1 -1
  390. package/views/3d/support/buffer/InterleavedLayout.js +1 -1
  391. package/views/3d/webgl/RenderCamera.js +1 -1
  392. package/views/3d/webgl-engine/core/shaderLibrary/shading/NormalUtils.glsl.js +1 -5
  393. package/views/3d/webgl-engine/effects/fog/Fog.glsl.js +1 -1
  394. package/views/3d/webgl-engine/effects/fog/Fog.js +1 -1
  395. package/views/3d/webgl-engine/effects/fog/FogTechnique.js +1 -1
  396. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.js +1 -1
  397. package/views/3d/webgl-engine/effects/glow/{GlowBlur.glsl.js → BlurEmission.glsl.js} +1 -1
  398. package/views/3d/webgl-engine/effects/glow/BlurEmission.js +2 -0
  399. package/views/3d/webgl-engine/effects/glow/BlurEmissionTechnique.js +2 -0
  400. package/views/3d/webgl-engine/effects/glow/applyEmissiveGlow.glsl.js +37 -0
  401. package/views/3d/webgl-engine/lib/BufferGeometry.js +2 -0
  402. package/views/3d/webgl-engine/lib/EmissionComposite.glsl.js +1 -1
  403. package/views/3d/webgl-engine/lib/EmissionComposite.js +1 -1
  404. package/views/3d/webgl-engine/lib/EmissionCompositeTechnique.js +1 -1
  405. package/views/3d/webgl-engine/lib/Geometry.js +1 -1
  406. package/views/3d/webgl-engine/lib/GeometryBaseInstance.js +1 -1
  407. package/views/3d/webgl-engine/lib/RenderGeometry.js +1 -1
  408. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  409. package/views/3d/webgl-engine/lib/rendererUtils.js +1 -1
  410. package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
  411. package/views/3d/webgl-engine/materials/renderers/Instance.js +1 -1
  412. package/views/3d/webgl-engine/materials/renderers/MergedBuffer.js +1 -1
  413. package/views/3d/webgl-engine/materials/renderers/MergedRenderer.js +1 -1
  414. package/views/3d/webgl-engine/materials/renderers/VaoWriter.js +1 -1
  415. package/views/3d/webgl-engine/parts/RenderView.js +1 -1
  416. package/views/3d/webgl-engine/shaders/EmissiveTechniqueConfiguration.js +1 -1
  417. package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
  418. package/views/3d/webgl-engine/shaders/RibbonLineTechniqueConfiguration.js +1 -1
  419. package/views/3d/webgl-engine/shaders/floatBlendScale.glsl.js +1 -1
  420. package/views/MapView.d.ts +3 -3
  421. package/views/SceneView.d.ts +1 -0
  422. package/views/SceneView.js +1 -1
  423. package/views/VideoView.js +1 -1
  424. package/views/View2D.d.ts +22 -22
  425. package/views/analysis/ElevationProfile/elevationProfileGeometryUtils.js +1 -1
  426. package/views/draw/DrawTool.js +1 -1
  427. package/views/draw/support/createUtils.js +1 -1
  428. package/views/layers/SceneLayerView.js +1 -1
  429. package/views/support/GeometryWorker.js +1 -1
  430. package/views/support/imageReprojection.js +1 -1
  431. package/views/video/VideoOperationalDataView.js +1 -1
  432. package/widgets/AreaMeasurement2D/AreaMeasurement2DTool.js +1 -1
  433. package/widgets/BatchAttributeForm/expressions/ExpressionsModel.js +1 -1
  434. package/widgets/BatchAttributeForm/expressions/expressionUtils.js +1 -1
  435. package/widgets/BatchAttributeForm/inputs/support/DynamicChoiceController.js +1 -1
  436. package/widgets/BatchAttributeForm/templates/FieldElementTemplate.js +1 -1
  437. package/widgets/BatchAttributeForm/templates/support/createBatchFormTemplate.js +1 -1
  438. package/widgets/DistanceMeasurement2D/DistanceMeasurement2DTool.js +1 -1
  439. package/widgets/Editor/support/mergeFeaturesUtils.js +1 -1
  440. package/widgets/Editor/support/splitFeatureUtils.js +1 -1
  441. package/widgets/ElevationProfile/support/ElevationProfileView.js +1 -1
  442. package/widgets/ElevationProfile/support/InputRepresentation2D.js +1 -1
  443. package/widgets/ElevationProfile/support/InputRepresentation3D.js +1 -1
  444. package/widgets/ElevationProfile/support/geometryUtils.js +1 -1
  445. package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/UtilityNetworkAssociationItemList.js +1 -1
  446. package/widgets/Features/FeaturesViewModel.js +1 -1
  447. package/widgets/Features.js +1 -1
  448. package/widgets/FloorFilter/FloorFilterViewModel.js +1 -1
  449. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  450. package/widgets/OrientedImageryViewer/adapters/view/MapViewAdapter.js +1 -1
  451. package/widgets/OrientedImageryViewer/components/ImageViewerViewModel.js +1 -1
  452. package/widgets/OrientedImageryViewer/components/OrientedImageryVideoViewModel.js +1 -1
  453. package/widgets/OrientedImageryViewer/imageMeasurementUtils.js +1 -1
  454. package/widgets/OrientedImageryViewer/support/panConstraint.js +1 -1
  455. package/widgets/OrientedImageryViewer/support/superimposeUtils.js +1 -1
  456. package/widgets/OrientedImageryViewer/videoViewerUtils.js +1 -1
  457. package/widgets/Print.js +1 -1
  458. package/widgets/Search/SearchViewModel.js +1 -1
  459. package/widgets/Search/support/layerSearchUtils.js +1 -1
  460. package/widgets/Search/support/locatorUtils.js +1 -1
  461. package/widgets/UtilityNetworkTrace/support/GeometryHandler.js +1 -1
  462. package/widgets/support/FilterBuilder/FilterBuilderViewModel.d.ts +104 -0
  463. package/widgets/support/FilterBuilder/FilterBuilderViewModel.js +1 -1
  464. package/widgets/support/FilterBuilder.js +1 -1
  465. package/widgets/support/FilterCondition/FilterConditionViewModel.d.ts +145 -0
  466. package/widgets/support/FilterCondition/FilterConditionViewModel.js +1 -1
  467. package/widgets/support/FilterCondition/types.d.ts +20 -0
  468. package/widgets/support/ItemList.js +1 -1
  469. package/widgets/support/SelectionList/FeatureItem.d.ts +17 -68
  470. package/widgets/support/SelectionList/FeatureItem.js +1 -1
  471. package/widgets/support/SelectionList/GroupLayerItem.d.ts +12 -50
  472. package/widgets/support/SelectionList/GroupLayerItem.js +1 -1
  473. package/widgets/support/SelectionList/ItemBase.d.ts +14 -44
  474. package/widgets/support/SelectionList/ItemBase.js +1 -1
  475. package/widgets/support/SelectionList/LayerItem.d.ts +10 -56
  476. package/widgets/support/SelectionList/LayerItem.js +1 -1
  477. package/widgets/support/SelectionList/types.d.ts +4 -4
  478. package/widgets/support/Selector2D/selectorUtils.js +1 -1
  479. package/assets/esri/core/workers/chunks/0336f4f8498a22347720.js +0 -1
  480. package/assets/esri/core/workers/chunks/090ea7a131f8f60203ed.js +0 -1
  481. package/assets/esri/core/workers/chunks/0b4a7209b99227a842ad.js +0 -1
  482. package/assets/esri/core/workers/chunks/0be98adfef79fc5036f0.js +0 -1
  483. package/assets/esri/core/workers/chunks/0d2e2d90a4e4a28e2c0c.js +0 -1
  484. package/assets/esri/core/workers/chunks/0d7763d39a5a8586a0ae.js +0 -1
  485. package/assets/esri/core/workers/chunks/0d95f72e1c07ab867d21.js +0 -1
  486. package/assets/esri/core/workers/chunks/0dbbac7a2378728571a7.js +0 -1
  487. package/assets/esri/core/workers/chunks/104d74bc36c28c519396.js +0 -1
  488. package/assets/esri/core/workers/chunks/1554feab934e8e1bcd28.js +0 -1
  489. package/assets/esri/core/workers/chunks/1670e9867efde4d7a6d6.js +0 -1
  490. package/assets/esri/core/workers/chunks/188c6ff5f4664827c254.js +0 -2
  491. package/assets/esri/core/workers/chunks/19ab024f6f732fd6c69b.js +0 -1
  492. package/assets/esri/core/workers/chunks/1e192ac0533a5c0b5a7a.js +0 -1
  493. package/assets/esri/core/workers/chunks/1fe077f57a087c0e9119.js +0 -1
  494. package/assets/esri/core/workers/chunks/20f7b5fe64a217cb3d3d.js +0 -1
  495. package/assets/esri/core/workers/chunks/212222b64039d436b9a6.js +0 -1
  496. package/assets/esri/core/workers/chunks/22c94f9a69b2157f8dbd.js +0 -1
  497. package/assets/esri/core/workers/chunks/24944b625ed8dcd904f0.js +0 -1
  498. package/assets/esri/core/workers/chunks/24c44541046576fee7e0.js +0 -2
  499. package/assets/esri/core/workers/chunks/2754ba5cc094028a7a3c.js +0 -1
  500. package/assets/esri/core/workers/chunks/2bc3e7f394386fa75447.js +0 -1
  501. package/assets/esri/core/workers/chunks/2ec44ebc48beeba11201.js +0 -1
  502. package/assets/esri/core/workers/chunks/30af0f7c4cfa541c9efd.js +0 -1
  503. package/assets/esri/core/workers/chunks/30d816bdeea00f6fa1ca.js +0 -1
  504. package/assets/esri/core/workers/chunks/349b0c7febc46267441d.js +0 -1684
  505. package/assets/esri/core/workers/chunks/35d46c2f658a8e92d913.js +0 -1
  506. package/assets/esri/core/workers/chunks/3869dca884d7ca6488f5.js +0 -1
  507. package/assets/esri/core/workers/chunks/3a65693964e3976d8035.js +0 -1
  508. package/assets/esri/core/workers/chunks/3f5234120d3a14186c1c.js +0 -1
  509. package/assets/esri/core/workers/chunks/45c1c90ac6c14657f3ff.js +0 -1
  510. package/assets/esri/core/workers/chunks/48726010778d6004e347.js +0 -2
  511. package/assets/esri/core/workers/chunks/4a40b894ec89b0a4f9bf.js +0 -1
  512. package/assets/esri/core/workers/chunks/5165d367328ac7badf47.js +0 -1
  513. package/assets/esri/core/workers/chunks/545bec045167c433af8f.js +0 -1
  514. package/assets/esri/core/workers/chunks/5782c0362a1799ceef41.js +0 -1
  515. package/assets/esri/core/workers/chunks/59598023c0aea62a6297.js +0 -1
  516. package/assets/esri/core/workers/chunks/59f0a2bd40b033ce77e4.js +0 -1
  517. package/assets/esri/core/workers/chunks/5aa23b0f4521ba9a07ad.js +0 -1
  518. package/assets/esri/core/workers/chunks/5af16937904c06fb06f6.js +0 -1
  519. package/assets/esri/core/workers/chunks/5bf2ce280ea35ea4c96b.js +0 -1
  520. package/assets/esri/core/workers/chunks/607acd9f615f87e14075.js +0 -1
  521. package/assets/esri/core/workers/chunks/62ee6c247f783acabb74.js +0 -1
  522. package/assets/esri/core/workers/chunks/6564f17c4700dc8d9c0e.js +0 -2
  523. package/assets/esri/core/workers/chunks/6a2d890640b2cd6c5ccb.js +0 -1
  524. package/assets/esri/core/workers/chunks/6b84982dfaf084a61b93.js +0 -1
  525. package/assets/esri/core/workers/chunks/6b9dbf43c0659e55c539.js +0 -1
  526. package/assets/esri/core/workers/chunks/6cbc30b31f0bb39c73ca.js +0 -1
  527. package/assets/esri/core/workers/chunks/75b90fb05e4a2d32b7bb.js +0 -1
  528. package/assets/esri/core/workers/chunks/75bddfe2be64379db8fd.js +0 -1
  529. package/assets/esri/core/workers/chunks/76e7d3cde2da4bdd7820.js +0 -1
  530. package/assets/esri/core/workers/chunks/7cf903db44f3647c8fd4.js +0 -1
  531. package/assets/esri/core/workers/chunks/7e41cee4a0ae75e1490d.js +0 -1
  532. package/assets/esri/core/workers/chunks/7eae9053065d3d38e54e.js +0 -1
  533. package/assets/esri/core/workers/chunks/87e9f7e85221bc7e6709.js +0 -1
  534. package/assets/esri/core/workers/chunks/88f03352a4dc6184ea1f.js +0 -1
  535. package/assets/esri/core/workers/chunks/909ee7d2a0eec773037a.js +0 -1
  536. package/assets/esri/core/workers/chunks/91ac9328afff8a51bd96.js +0 -1
  537. package/assets/esri/core/workers/chunks/91de343844ac578e7c93.js +0 -1
  538. package/assets/esri/core/workers/chunks/9246e2468528650bdc7c.js +0 -1
  539. package/assets/esri/core/workers/chunks/94ddfe165ac25aef8229.js +0 -1
  540. package/assets/esri/core/workers/chunks/9509bef285929c52c244.js +0 -1
  541. package/assets/esri/core/workers/chunks/95a3f09751bff63f4fab.js +0 -1
  542. package/assets/esri/core/workers/chunks/98d614d6fc9de8ebaf94.js +0 -1
  543. package/assets/esri/core/workers/chunks/99966339b061eb9945b8.js +0 -1
  544. package/assets/esri/core/workers/chunks/99f627938dbf0152fc02.js +0 -1
  545. package/assets/esri/core/workers/chunks/9e2b3754a76e0dd4a94a.js +0 -1
  546. package/assets/esri/core/workers/chunks/a0565137027c83108953.js +0 -1
  547. package/assets/esri/core/workers/chunks/a0eb882a5a81d25b9153.js +0 -1
  548. package/assets/esri/core/workers/chunks/a785e827f0215a73103d.js +0 -1
  549. package/assets/esri/core/workers/chunks/abe7670db06b27c0c8c8.js +0 -1
  550. package/assets/esri/core/workers/chunks/b19cff0e43fab2632660.js +0 -1
  551. package/assets/esri/core/workers/chunks/b6af90be328ebda26b8d.js +0 -1
  552. package/assets/esri/core/workers/chunks/bd7d87d175ba933ab2ce.js +0 -1
  553. package/assets/esri/core/workers/chunks/bdfffa5f88b559a4b42d.js +0 -1
  554. package/assets/esri/core/workers/chunks/c30b6bbabd05e4976fba.js +0 -1
  555. package/assets/esri/core/workers/chunks/c352696478b48a2090d5.js +0 -1
  556. package/assets/esri/core/workers/chunks/c35553d07ad169910742.js +0 -1
  557. package/assets/esri/core/workers/chunks/c4fef90cf08bbe4f0bb5.js +0 -1
  558. package/assets/esri/core/workers/chunks/c5c2fed38e0ccf84f1fa.js +0 -1
  559. package/assets/esri/core/workers/chunks/c88bfa51d2a8a024fc24.js +0 -1
  560. package/assets/esri/core/workers/chunks/c91042f8bf886056a29c.js +0 -1
  561. package/assets/esri/core/workers/chunks/ca36d85a47179d95f2fc.js +0 -1
  562. package/assets/esri/core/workers/chunks/cd02a6078443b8f63927.js +0 -1
  563. package/assets/esri/core/workers/chunks/d0cf9ff48f051adbd455.js +0 -1
  564. package/assets/esri/core/workers/chunks/d1304d414b1fa725168a.js +0 -1
  565. package/assets/esri/core/workers/chunks/d24125a791247019e2ca.js +0 -1
  566. package/assets/esri/core/workers/chunks/d26be8313526ecea9c68.js +0 -1
  567. package/assets/esri/core/workers/chunks/d2cb3d5ef0a9285afb78.js +0 -1
  568. package/assets/esri/core/workers/chunks/d44338bf5edafa3ca926.js +0 -1
  569. package/assets/esri/core/workers/chunks/d4b0012ae1d3b8a9ba01.js +0 -1
  570. package/assets/esri/core/workers/chunks/d58d6b55b2749a535eb3.js +0 -1
  571. package/assets/esri/core/workers/chunks/d7d5275d8b3c9430de1f.js +0 -1
  572. package/assets/esri/core/workers/chunks/da8a314800944706511b.js +0 -1
  573. package/assets/esri/core/workers/chunks/e018cbd97e6e0e4ca5c4.js +0 -1
  574. package/assets/esri/core/workers/chunks/e39bccc000c768120a32.js +0 -1
  575. package/assets/esri/core/workers/chunks/e4380706b629729f2212.js +0 -1
  576. package/assets/esri/core/workers/chunks/e90076ac1cf88a83a7f9.js +0 -1
  577. package/assets/esri/core/workers/chunks/ea1877ce00da3b585a30.js +0 -1
  578. package/assets/esri/core/workers/chunks/ea91c57a0b31f3f65ee5.js +0 -1
  579. package/assets/esri/core/workers/chunks/ec77222776f755dc372c.js +0 -1
  580. package/assets/esri/core/workers/chunks/ef851a2cff76fd211c07.js +0 -1
  581. package/assets/esri/core/workers/chunks/f3e53be08ab9dbdf17ae.js +0 -1
  582. package/assets/esri/core/workers/chunks/f53010adb70463b75bb9.js +0 -1
  583. package/assets/esri/core/workers/chunks/f5a058a0ce006bce2a2a.js +0 -1
  584. package/assets/esri/core/workers/chunks/f5f5b54cab722abe88e0.js +0 -1
  585. package/assets/esri/core/workers/chunks/f60ed579981913d44675.js +0 -1
  586. package/assets/esri/core/workers/chunks/f6f56f3e011dcef90bbb.js +0 -1
  587. package/assets/esri/core/workers/chunks/f83c3597e9332bd991eb.js +0 -1
  588. package/assets/esri/core/workers/chunks/f9a4387f850d85c44ca5.js +0 -1
  589. package/assets/esri/core/workers/chunks/fbc7576ed12964059da6.js +0 -1
  590. package/assets/esri/core/workers/chunks/fdd0e6d9927d3c43b0d3.js +0 -1
  591. package/assets/esri/core/workers/chunks/ff83d0337ac489ab08de.js +0 -2
  592. package/chunks/GlowComposite.glsl.js +0 -2
  593. package/geometry/operators/importUtils.js +0 -2
  594. package/views/3d/webgl-engine/effects/glow/Glow.js +0 -2
  595. package/views/3d/webgl-engine/effects/glow/GlowBlurTechnique.js +0 -2
  596. package/views/3d/webgl-engine/effects/glow/GlowComposite.glsl.js +0 -2
  597. package/views/3d/webgl-engine/effects/glow/GlowCompositeTechnique.js +0 -2
  598. package/views/3d/webgl-engine/effects/glow/blurEmission.glsl.js +0 -38
  599. /package/assets/esri/core/workers/chunks/{188c6ff5f4664827c254.js.LICENSE.txt → 1082bb0858585bd4fa21.js.LICENSE.txt} +0 -0
  600. /package/assets/esri/core/workers/chunks/{24c44541046576fee7e0.js.LICENSE.txt → 2e2349387a2b9903f13c.js.LICENSE.txt} +0 -0
  601. /package/assets/esri/core/workers/chunks/{ff83d0337ac489ab08de.js.LICENSE.txt → 411bbdecba340df11d95.js.LICENSE.txt} +0 -0
  602. /package/assets/esri/core/workers/chunks/{a89dbef8155d7c4354da.js.LICENSE.txt → 476535cfb06ced74d611.js.LICENSE.txt} +0 -0
  603. /package/assets/esri/core/workers/chunks/{6564f17c4700dc8d9c0e.js.LICENSE.txt → b82b523b6837ed1f28d3.js.LICENSE.txt} +0 -0
  604. /package/assets/esri/core/workers/chunks/{48726010778d6004e347.js.LICENSE.txt → ef24fd6c0322e5de9fdf.js.LICENSE.txt} +0 -0
@@ -12,12 +12,26 @@ import type { GeometryUnion, GeometryWithoutMeshUnion } from "../types.js";
12
12
  * Performs the OGC simplify operation on a single geometry.
13
13
  *
14
14
  * @param geometry - The geometry to be simplified.
15
- * @returns Returns the simplified geometry, or null. Geometry's with non-finite x or y, or infinite Zs return null.
15
+ * @returns Returns the simplified geometry, or null. Geometries with non-finite x or y, or infinite Zs return null.
16
16
  * The method will set NaN z values to 0.
17
17
  * @example
18
18
  * // Topologically simplifies a geometry
19
- * const simplified = simplifyOGCOperator.execute(polyline);
20
- * console.log(simplifyOGCOperator.isSimple(simplified)); // true
19
+ * const simplified = simplifyOGCExecute(polyline);
20
+ * console.log(simplifyOGCIsSimple(simplified)); // true
21
+ */
22
+ export function simplifyOGCExecute(geometry: GeometryUnion): GeometryWithoutMeshUnion | null | undefined;
23
+
24
+ /**
25
+ * Performs the OGC simplify operation on a single geometry.
26
+ *
27
+ * @deprecated use [simplifyOGCExecute()](https://developers.arcgis.com/javascript/latest/references/core/geometry/operators/simplifyOGCOperator/#simplifyOGCExecute)
28
+ * @param geometry - The geometry to be simplified.
29
+ * @returns Returns the simplified geometry, or null. Geometries with non-finite x or y, or infinite Zs return null.
30
+ * The method will set NaN z values to 0.
31
+ * @example
32
+ * // Topologically simplifies a geometry
33
+ * const simplified = simplifyOGCExecute(polyline);
34
+ * console.log(simplifyOGCIsSimple(simplified)); // true
21
35
  */
22
36
  export function execute(geometry: GeometryUnion): GeometryWithoutMeshUnion | null | undefined;
23
37
 
@@ -26,7 +40,18 @@ export function execute(geometry: GeometryUnion): GeometryWithoutMeshUnion | nul
26
40
  *
27
41
  * @param geometries - The array of geometries to be simplified,
28
42
  * All the geometries must have the same spatial reference.
29
- * @returns Returns the simplified geometry, or null. Geometry's with non-finite x or y, or infinite Zs return null.
43
+ * @returns Returns the simplified geometry, or null. Geometries with non-finite x or y, or infinite Zs return null.
44
+ * The method will set NaN z values to 0.
45
+ */
46
+ export function simplifyOGCExecuteMany(geometries: GeometryUnion[]): (GeometryWithoutMeshUnion | null | undefined)[];
47
+
48
+ /**
49
+ * Performs the OGC simplify operation on the geometry set.
50
+ *
51
+ * @deprecated use [simplifyOGCExecuteMany()](https://developers.arcgis.com/javascript/latest/references/core/geometry/operators/simplifyOGCOperator/#simplifyOGCExecuteMany)
52
+ * @param geometries - The array of geometries to be simplified,
53
+ * All the geometries must have the same spatial reference.
54
+ * @returns Returns the simplified geometry, or null. Geometries with non-finite x or y, or infinite Zs return null.
30
55
  * The method will set NaN z values to 0.
31
56
  */
32
57
  export function executeMany(geometries: GeometryUnion[]): (GeometryWithoutMeshUnion | null | undefined)[];
@@ -58,7 +83,40 @@ export function executeMany(geometries: GeometryUnion[]): (GeometryWithoutMeshUn
58
83
  * @returns Returns true if the geometry is simple, otherwise returns false.
59
84
  * @example
60
85
  * // returns true if given geometry is OGC simple
61
- * const simple = simplifyOGCOperator.isSimple(polyline);
86
+ * const simple = simplifyOGCIsSimple(polyline);
87
+ * console.log(simple); // true | false
88
+ */
89
+ export function simplifyOGCIsSimple(geometry: GeometryUnion): boolean;
90
+
91
+ /**
92
+ * Indicates if the given geometry is OGC topologically simple. This operation takes into account z-values.
93
+ *
94
+ * [Point](https://developers.arcgis.com/javascript/latest/references/core/geometry/Point/) geometries are always simple.
95
+ *
96
+ * [Multipoint](https://developers.arcgis.com/javascript/latest/references/core/geometry/Multipoint/) geometries cannot have any points with exactly equal x and y.
97
+ * The tolerance is taken into account.
98
+ *
99
+ * For a given [Polyline](https://developers.arcgis.com/javascript/latest/references/core/geometry/Polyline/) path, there can be no intersections between segments with exception of the first and the last points of a path, which can coincide forming a closed path with no boundary points.
100
+ * Different paths can only intersect at the boundary points.
101
+ *
102
+ * [Polygon](https://developers.arcgis.com/javascript/latest/references/core/geometry/Polygon/) geometries are considered simple if the following is true:
103
+ * * Rings cannot have self intersections, or self-tangency.
104
+ * * Rings are sorted such that each exterior ring is followed by its immediate interior ring (holes). The exterior ring with the corresponding holes form the OGC polygon type.
105
+ * * The interior has to be a connected set. Any two points in the interior can be connected by a path that contains only interior points.
106
+ * * Exterior rings have to be oriented clockwise, holes are oriented counterclockwise.
107
+ *
108
+ * All tests for equality or segment intersections use the tolerance and resolution.
109
+ * The operator uses 2 * sqrt(2) * tolerance when checking whether two points are equal, and sqrt(2) * tolerance when checking if a point lies on a segment.
110
+ * Both values are obtained from the geometry's spatial reference.
111
+ * If it is null, then a small tolerance value is calculated from the geometry coordinates using double-precision.
112
+ * Resolution is added to take into account possible rounding errors.
113
+ *
114
+ * @deprecated since 5.2 use [simplifyOGCExecute()](https://developers.arcgis.com/javascript/latest/references/core/geometry/operators/simplifyOGCOperator/#simplifyOGCExecute)
115
+ * @param geometry - The input geometry.
116
+ * @returns Returns true if the geometry is simple, otherwise returns false.
117
+ * @example
118
+ * // returns true if given geometry is OGC simple
119
+ * const simple = simplifyOGCIsSimple(polyline);
62
120
  * console.log(simple); // true | false
63
121
  */
64
122
  export function isSimple(geometry: GeometryUnion): boolean;
@@ -67,4 +125,12 @@ export function isSimple(geometry: GeometryUnion): boolean;
67
125
  * Indicates if the operator supports input geometries that contain curves.
68
126
  * The value will always be `true`.
69
127
  */
70
- export const supportsCurves: boolean;
128
+ export const simplifyOGCSupportsCurves: boolean;
129
+
130
+ /**
131
+ * Indicates if the operator supports input geometries that contain curves.
132
+ * The value will always be `true`.
133
+ *
134
+ * @deprecated use [simplifyOGCSupportsCurves](https://developers.arcgis.com/javascript/latest/references/core/geometry/operators/simplifyOGCOperator/#simplifyOGCSupportsCurves)
135
+ */
136
+ export const supportsCurves: ReturnType<typeof Boolean>;
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{supportsCurves as r,execute as t,executeMany as n,isSimple as o}from"./gx/operatorSimplifyOGC.js";import{getSpatialReference as e,toGeometry as s,fromSpatialReference as p,fromGeometry as u}from"./support/apiConverter.js";function i(r){const n=e(r);return s(t(u(r),p(n),!1),n)}function a(r){const t=r.map(u),o=e(r);return n(t,p(o),!1).map(r=>s(r,o))}function c(r,t){return o(u(r),p(e(r)),null!=t,t??null)}const m=r();export{i as execute,a as executeMany,c as isSimple,m as supportsCurves};
2
+ import{deprecatedFunction as e}from"../../core/deprecate.js";import r from"../../core/Logger.js";import{supportsCurves as t,execute as i,executeMany as s,isSimple as o}from"./gx/operatorSimplifyOGC.js";import{getSpatialReference as n,toGeometry as p,fromSpatialReference as a,fromGeometry as m}from"./support/apiConverter.js";function c(e){const r=n(e);return p(i(m(e),a(r),!1),r)}function u(t){return e(r.getLogger("esri.geometry.operators.simplifyOGC"),"execute is deprecated. Use simplifyOGCExecute instead.",{replacement:"simplifyOGCExecute",warnOnce:!0}),c(t)}function l(e){const r=e.map(m),t=n(e);return s(r,a(t),!1).map(e=>p(e,t))}function f(t){return e(r.getLogger("esri.geometry.operators.simplifyOGCOperator"),"executeMany is deprecated. Use simplifyOGCExecuteMany instead.",{replacement:"simplifyOGCExecuteMany",warnOnce:!0}),l(t)}function y(e,r){return o(m(e),a(n(e)),null!=r,r??null)}function g(t,i){return e(r.getLogger("esri.geometry.operators.simplifyOperatorOGC"),"isSimple is deprecated. Use simplifyOGCIsSimple instead.",{replacement:"simplifyOGCIsSimple",warnOnce:!0}),i?y(t,i):y(t)}const O=t(),C=Boolean(O);export{u as execute,f as executeMany,g as isSimple,c as simplifyOGCExecute,l as simplifyOGCExecuteMany,y as simplifyOGCIsSimple,O as simplifyOGCSupportsCurves,C as supportsCurves};
@@ -16,8 +16,21 @@ import type { GeometryUnion, GeometryWithoutMeshUnion } from "../types.js";
16
16
  * @returns Returns the simplified geometry or null.
17
17
  * @example
18
18
  * // Topologically simplifies a geometry
19
- * const simplified = simplifyOperator.execute(polyline);
20
- * console.log(simplifyOperator.isSimple(simplified)); // true
19
+ * const simplified = simplifyExecute(polyline);
20
+ * console.log(simplifyIsSimple(simplified)); // true
21
+ */
22
+ export function simplifyExecute(geometry: GeometryUnion): GeometryWithoutMeshUnion | null | undefined;
23
+
24
+ /**
25
+ * Performs the simplify operation on a single geometry.
26
+ *
27
+ * @deprecated since 5.2 use [simplifyExecute()](https://developers.arcgis.com/javascript/latest/references/core/geometry/operators/simplifyOperator/#simplifyExecute)
28
+ * @param geometry - The geometry to be simplified.
29
+ * @returns Returns the simplified geometry or null.
30
+ * @example
31
+ * // Topologically simplifies a geometry
32
+ * const simplified = simplifyExecute(polyline);
33
+ * console.log(simplifyIsSimple(simplified)); // true
21
34
  */
22
35
  export function execute(geometry: GeometryUnion): GeometryWithoutMeshUnion | null | undefined;
23
36
 
@@ -28,6 +41,16 @@ export function execute(geometry: GeometryUnion): GeometryWithoutMeshUnion | nul
28
41
  * All the geometries must have the same spatial reference.
29
42
  * @returns Returns an array whose elements may either be simplified geometries or null.
30
43
  */
44
+ export function simplifyExecuteMany(geometries: GeometryUnion[]): (GeometryWithoutMeshUnion | null | undefined)[];
45
+
46
+ /**
47
+ * Performs the simplify operation on the geometry set.
48
+ *
49
+ * @deprecated since 5.2 use [simplifyExecuteMany()](https://developers.arcgis.com/javascript/latest/references/core/geometry/operators/simplifyOperator/#simplifyExecuteMany)
50
+ * @param geometries - The array of geometries to be simplified,
51
+ * All the geometries must have the same spatial reference.
52
+ * @returns Returns an array whose elements may either be simplified geometries or null.
53
+ */
31
54
  export function executeMany(geometries: GeometryUnion[]): (GeometryWithoutMeshUnion | null | undefined)[];
32
55
 
33
56
  /**
@@ -61,7 +84,44 @@ export function executeMany(geometries: GeometryUnion[]): (GeometryWithoutMeshUn
61
84
  * @returns Returns true if the geometry is simple, otherwise returns false.
62
85
  * @example
63
86
  * // returns true if given geometry is simple
64
- * const simple = simplifyOperator.isSimple(polyline);
87
+ * const simple = simplifyIsSimple(polyline);
88
+ * console.log(simple); // true | false
89
+ */
90
+ export function simplifyIsSimple(geometry: GeometryUnion): boolean;
91
+
92
+ /**
93
+ * Indicates if the given geometry is non-OGC topologically simple. This operation takes into account z-values.
94
+ *
95
+ * [Point](https://developers.arcgis.com/javascript/latest/references/core/geometry/Point/) geometries are always simple.
96
+ *
97
+ * [Multipoint](https://developers.arcgis.com/javascript/latest/references/core/geometry/Multipoint/) geometries cannot have any points with exactly equal x and y.
98
+ * The tolerance is not taken into account.
99
+ *
100
+ * [Polyline](https://developers.arcgis.com/javascript/latest/references/core/geometry/Polyline/) geometries can have self-intersecting paths, however they cannot have degenerate segments.
101
+ * A degenerate segment is a zero-length segment where the start and end points are essentially the same.
102
+ * When the polyline has no z, degenerate segments are those that have a length in the xy plane less than or equal to the tolerance.
103
+ * When the polyline has z, degenerate segments are those that are shorter than the tolerance in the xy plane, and the change in the z-value along the segment is less than or equal to the z-tolerance.
104
+ *
105
+ * [Polygon](https://developers.arcgis.com/javascript/latest/references/core/geometry/Polygon/) geometries are considered simple if the following is true:
106
+ * * Contains no self-intersecting rings.
107
+ * * Exterior rings are clockwise, and interior rings (holes) are counterclockwise.
108
+ * * Rings can touch other rings in a finite number of points.
109
+ * * Rings can be self-tangent in a finite number of points.
110
+ * * Vertices are either exactly coincident, or further than the 2 * sqrt(2) * tolerance from each other.
111
+ * * If a vertex is not equal to any boundary point of a segment, it has to be further than sqrt(2) * tolerance from any segment.
112
+ * * No segment length is zero.
113
+ * * Each path contains at least three non-equal vertices.
114
+ * * No empty paths are allowed.
115
+ * * Order of rings does not matter.
116
+ *
117
+ * The tolerance value is obtained from the geometry's spatial reference. If it is null, then a small tolerance value is calculated from the geometry coordinates using double-precision.
118
+ *
119
+ * @deprecated since 5.2 use [simplifyIsSimple()](https://developers.arcgis.com/javascript/latest/references/core/geometry/operators/simplifyOperator/#simplifyIsSimple)
120
+ * @param geometry - The input geometry.
121
+ * @returns Returns true if the geometry is simple, otherwise returns false.
122
+ * @example
123
+ * // returns true if given geometry is simple
124
+ * const simple = simplifyIsSimple(polyline);
65
125
  * console.log(simple); // true | false
66
126
  */
67
127
  export function isSimple(geometry: GeometryUnion): boolean;
@@ -70,4 +130,12 @@ export function isSimple(geometry: GeometryUnion): boolean;
70
130
  * Indicates if the operator supports input geometries that contain curves.
71
131
  * The value will always be `true`.
72
132
  */
73
- export const supportsCurves: boolean;
133
+ export const simplifySupportsCurves: boolean;
134
+
135
+ /**
136
+ * Indicates if the operator supports input geometries that contain curves.
137
+ * The value will always be `true`.
138
+ *
139
+ * @deprecated since 5.2 use [simplifySupportsCurves](https://developers.arcgis.com/javascript/latest/references/core/geometry/operators/simplifyOperator/#simplifySupportsCurves)
140
+ */
141
+ export const supportsCurves: ReturnType<typeof Boolean>;
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{execute as r,isSimpleAsFeature as t,supportsCurves as o,executeMany as e}from"./gx/operatorSimplify.js";import{getSpatialReference as n,toGeometry as p,fromSpatialReference as s,fromGeometry as u}from"./support/apiConverter.js";function a(t){const o=n(t);return p(r(u(t),s(o),!1),o)}function c(r){const t=r.map(u),o=n(r);return e(t,s(o),!1).map(r=>p(r,o))}function i(r){return t(u(r),s(n(r)),!1)}const m=o();export{a as execute,c as executeMany,i as isSimple,m as supportsCurves};
2
+ import{deprecatedFunction as e}from"../../core/deprecate.js";import r from"../../core/Logger.js";import{execute as t,isSimpleAsFeature as i,supportsCurves as o,executeMany as s}from"./gx/operatorSimplify.js";import{getSpatialReference as n,toGeometry as p,fromSpatialReference as a,fromGeometry as c}from"./support/apiConverter.js";function m(e){const r=n(e);return p(t(c(e),a(r),!1),r)}function u(t){return e(r.getLogger("esri.geometry.operators.simplifyOperator"),"execute is deprecated. Use simplifyExecute instead.",{replacement:"simplifyExecute",warnOnce:!0}),m(t)}function f(e){const r=e.map(c),t=n(e);return s(r,a(t),!1).map(e=>p(e,t))}function l(t){return e(r.getLogger("esri.geometry.operators.simplifyOperator"),"executeMany is deprecated. Use simplifyExecuteMany instead.",{replacement:"simplifyExecuteMany",warnOnce:!0}),f(t)}function y(e){return i(c(e),a(n(e)),!1)}function g(t){return e(r.getLogger("esri.geometry.operators.simplifyOperator"),"isSimple is deprecated. Use simplifyIsSimple instead.",{replacement:"simplifyIsSimple",warnOnce:!0}),y(t)}const d=o(),x=Boolean(d);export{u as execute,l as executeMany,g as isSimple,m as simplifyExecute,f as simplifyExecuteMany,y as simplifyIsSimple,d as simplifySupportsCurves,x as supportsCurves};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{isSome as r}from"../../core/arrayUtils.js";import{supportsCurves as t,executeMany as o}from"./gx/operatorSinglePartToMultiPart.js";import{fromGeometry as e,getSpatialReference as p,toGeometry as s}from"./support/apiConverter.js";function a(t){const a=t.map(e),i=p(t);return o(a).map(r=>s(r,i)).filter(r)}const i=t();export{a as executeMany,i as supportsCurves};
2
+ import{isSome as r}from"../../core/arrayUtils.js";import{deprecatedFunction as e}from"../../core/deprecate.js";import t from"../../core/Logger.js";import{supportsCurves as o,executeMany as a}from"./gx/operatorSinglePartToMultiPart.js";import{fromGeometry as n,getSpatialReference as s,toGeometry as i}from"./support/apiConverter.js";function p(e){const t=e.map(n),o=s(e);return a(t).map(r=>i(r,o)).filter(r)}function c(r){return e(t.getLogger("esri.geometry.operators.singlePartToMultiPartOperator"),"executeMany is deprecated. Use singlePartToMultiPartExecuteMany instead.",{replacement:"singlePartToMultiPartExecuteMany",warnOnce:!0}),p(r)}const u=o(),m=Boolean(u);export{c as executeMany,p as singlePartToMultiPartExecuteMany,u as singlePartToMultiPartSupportsCurves,m as supportsCurves};
@@ -1,7 +1,9 @@
1
1
  import type Point from "../../Point.js";
2
2
 
3
3
  /**
4
- * The Transformation class represents 2D transformations that can be applied to geometries using the [affineTransformOperator](https://developers.arcgis.com/javascript/latest/references/core/geometry/operators/affineTransformOperator/). All transformations are applied in the spatial reference units of the input geometries.
4
+ * The Transformation class represents 2D transformations that can be applied to geometries using the
5
+ * [affineTransformOperator](https://developers.arcgis.com/javascript/latest/references/core/geometry/operators/affineTransformOperator/).
6
+ * All transformations are applied in the spatial reference units of the input geometries.
5
7
  *
6
8
  * @since 4.31
7
9
  */
@@ -9,7 +11,8 @@ export default class Transformation {
9
11
  constructor();
10
12
  /**
11
13
  * Calculates distance errors for a transformation on a given set of the input points to the output points.
12
- * This method is usually used to calculate errors for the transformation initialized by [initializeFromControlPoints()](https://developers.arcgis.com/javascript/latest/references/core/geometry/operators/support/Transformation/#initializeFromControlPoints).
14
+ * This method is usually used to calculate errors for the transformation initialized by
15
+ * [initializeFromControlPoints()](https://developers.arcgis.com/javascript/latest/references/core/geometry/operators/support/Transformation/#initializeFromControlPoints).
13
16
  *
14
17
  * The length of the `input` and `output` arrays must be the same.
15
18
  *
@@ -35,12 +38,12 @@ export default class Transformation {
35
38
  * // Flip the x-coordinates of a geometry on the vertical axis
36
39
  * const transform = new Transformation();
37
40
  * transform.flipX(0, 10);
38
- * const result = affineTransformOperator.execute(polygon, transform);
41
+ * const result = affineTransformExecute(polygon, transform);
39
42
  *
40
43
  * // Flip the x-coordinates of a geometry on the vertical axis centered at the geometry's center
41
44
  * const centerX = polygon.extent.center.x;
42
45
  * transform.flipX(centerX, centerX);
43
- * const result = affineTransformOperator.execute(polygon, transform);
46
+ * const result = affineTransformExecute(polygon, transform);
44
47
  */
45
48
  flipX(x0: number, x1: number): this;
46
49
  /**
@@ -54,12 +57,12 @@ export default class Transformation {
54
57
  * @example
55
58
  * // Flip the y-coordinates of a geometry on the vertical axis
56
59
  * transformation.flipY(0, 10);
57
- * const result = affineTransformOperator.execute(polygon, transform);
60
+ * const result = affineTransformExecute(polygon, transform);
58
61
  *
59
62
  * // Flip the y-coordinates of a geometry on the horizontal axis centered at the geometry's center
60
63
  * const centerY = polygon.extent.center.y;
61
64
  * transform.flipY(centerY, centerY);
62
- * const result = affineTransformOperator.execute(polygon, transform);
65
+ * const result = affineTransformExecute(polygon, transform);
63
66
  */
64
67
  flipY(y0: number, y1: number): this;
65
68
  /**
@@ -103,7 +106,7 @@ export default class Transformation {
103
106
  * @example
104
107
  * // Rotate a geometry
105
108
  * transformation.rotate(90, 0, 0);
106
- * const result = affineTransformOperator.execute(polygon, transform);
109
+ * const result = affineTransformExecute(polygon, transform);
107
110
  */
108
111
  rotate(angleInDegrees: number, rotationX?: number, rotationY?: number): this;
109
112
  /**
@@ -117,7 +120,7 @@ export default class Transformation {
117
120
  * @example
118
121
  * // Scale a geometry
119
122
  * transformation.scale(2, 2);
120
- * const result = affineTransformOperator.execute(polygon, transform);
123
+ * const result = affineTransformExecute(polygon, transform);
121
124
  */
122
125
  scale(x: number, y: number): this;
123
126
  /**
@@ -127,7 +130,10 @@ export default class Transformation {
127
130
  * @see [Wikipedia - Identity Matrix](https://en.wikipedia.org/wiki/Identity_matrix)
128
131
  */
129
132
  setIdentity(): void;
130
- /** Use this method to swap the x and y coordinate values in the transformation. An example usage is when slicing vertically with the [polgonSlicerOperator.findSlicesByArea()](https://developers.arcgis.com/javascript/latest/references/core/geometry/operators/polygonSlicerOperator/#findSlicesByArea) method. */
133
+ /**
134
+ * Use this method to swap the x and y coordinate values in the transformation. An example usage is when slicing vertically with the
135
+ * [polygonSlicerFindSlicesByArea()](https://developers.arcgis.com/javascript/latest/references/core/geometry/operators/polygonSlicerOperator/#polygonSlicerFindSlicesByArea) method.
136
+ */
131
137
  setSwapCoordinates(): this;
132
138
  /**
133
139
  * Shifts a geometry's points by the specified proportion in parallel to the x and y directions,
@@ -142,7 +148,7 @@ export default class Transformation {
142
148
  * @example
143
149
  * // Shear a geometry
144
150
  * transformation.shear(0.5, 0.5);
145
- * const result = affineTransformOperator.execute(polygon, transform);
151
+ * const result = affineTransformExecute(polygon, transform);
146
152
  */
147
153
  shear(proportionX: number, proportionY: number): this;
148
154
  /**
@@ -155,7 +161,7 @@ export default class Transformation {
155
161
  * @example
156
162
  * // Shift the coordinates of a geometry
157
163
  * transformation.shift(5, 2);
158
- * const result = affineTransformOperator.execute(polygon, transform);
164
+ * const result = affineTransformExecute(polygon, transform);
159
165
  */
160
166
  shift(x: number, y: number): this;
161
167
  }
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{constructFromFlatGeometry as e}from"../../../chunks/FlatGeometry.js";import{d as t,a as n,g as r,r as i,q as s,G as a,t as o}from"../../../chunks/Geometry.js";import{aL as u,i as m,d as l,b as c,aM as d,P as _,m as h}from"../../../chunks/Point2D.js";import{q as f,b as p,p as k,a_ as b,c as y,e as T,a as N,f as g,a$ as v}from"../../../chunks/UnitFactory.js";import{a2 as x,a5 as A,P as S,E as w,a0 as C,a1 as D,a6 as F,a7 as j,W as O}from"../../../chunks/Envelope.js";import{P as z,a as I,S as E,M as P,I as B,a5 as V,a6 as R,a7 as M,a8 as U,a9 as W}from"../../../chunks/MultiPathImpl.js";import{convertGeometryxToFlat as G,convertFlatToGeometryJSON as X,convertGeometryToFlat as L}from"../../FlatGeometry.js";import Y from"../../SpatialReference.js";import"./initNoPeFactory.js";import{isPoint as q,isMultipoint as K,isPolyline as Q,isPolygon as J}from"../../support/jsonTypeUtils.js";function Z(){if(-1===this.m_i)return this.m_i=0,{value:{m_token:1,m_value:null},done:!1};if(this.m_i<this.m_keys.length){const e=this.m_bReturnKey,t=Math.trunc(this.m_i);return this.m_bReturnKey=!this.m_bReturnKey,this.m_i+=.5,e?{value:{m_token:5,m_value:this.m_keys[t]},done:!1}:{value:{m_token:6,m_value:this.m_o[this.m_keys[t]]},done:!1}}return{value:{m_token:3,m_value:null},done:!0}}function H(){if(-1===this.m_i)return this.m_i=0,{value:{m_token:2,m_value:null},done:!1};if(this.m_i<this.m_a.length){const e={value:{m_token:6,m_value:this.m_a[this.m_i++]},done:!1};return this.m_strict||void 0===e.value.m_value&&(e.value.m_value=Number.NaN),e}return{value:{m_token:4,m_value:null},done:!0}}class ${m_iteratorStack;m_nextFlatToken;m_currentToken=0;m_currentValue;m_options;createJSONObjectIterator(e){return{m_iteratorType:"object",m_o:e,m_keys:this.m_options.strict?Object.keys(e):Object.keys(e).filter(t=>void 0!==e[t]),m_i:-1,m_bReturnKey:!0,next:Z}}createJSONArrayIterator(e){return{m_iteratorType:"array",m_strict:this.m_options.strict,m_i:-1,m_a:e,next:H}}constructor(e,t){this.m_options=t?{...t}:{strict:!0};const n=e;this.m_iteratorStack=[n instanceof Array?this.createJSONArrayIterator(n):this.createJSONObjectIterator(n)],this.m_nextFlatToken={m_value:null,m_token:0}}nextToken(){if(0===this.m_iteratorStack.length)return this.m_currentToken=0;switch(this.m_nextFlatToken=this.m_iteratorStack.at(-1).next().value,this.m_currentValue=void 0,this.m_nextFlatToken.m_token){case 1:return this.m_currentToken=1;case 3:return this.m_iteratorStack.pop(),this.m_currentToken=3;case 2:return this.m_currentToken=2;case 4:return this.m_iteratorStack.pop(),this.m_currentToken=4;case 5:return this.m_currentValue=this.m_nextFlatToken.m_value,this.m_currentToken=5;case 6:if(this.m_nextFlatToken.m_value instanceof Array)return this.m_iteratorStack.push(this.createJSONArrayIterator(this.m_nextFlatToken.m_value)),this.nextToken();if(this.m_nextFlatToken.m_value instanceof Object)return this.m_iteratorStack.push(this.createJSONObjectIterator(this.m_nextFlatToken.m_value)),this.nextToken();if("number"==typeof this.m_nextFlatToken.m_value)return this.m_currentValue=this.m_nextFlatToken.m_value,Number.isSafeInteger(this.m_currentValue)&&this.m_currentValue>=u()&&this.m_currentValue<=m()?this.m_currentToken=8:this.m_currentToken=7;if("string"==typeof this.m_nextFlatToken.m_value)return this.m_currentValue=this.m_nextFlatToken.m_value,this.m_currentToken=6;if("boolean"==typeof this.m_nextFlatToken.m_value)return this.m_currentValue=this.m_nextFlatToken.m_value,this.m_currentToken=this.m_nextFlatToken.m_value?11:12;if("object"==typeof this.m_nextFlatToken.m_value)return this.m_currentValue=null,this.m_currentToken=10;t("unrecognized json element type")}t("unrecognized json element type")}currentToken(){return this.m_currentToken}skipChildren(){if(0!==this.m_iteratorStack.length)switch(this.m_currentValue=void 0,this.m_nextFlatToken.m_token){case 1:return this.m_iteratorStack.pop(),this.m_nextFlatToken.m_token=3,void(this.m_currentToken=3);case 2:return this.m_iteratorStack.pop(),this.m_nextFlatToken.m_token=4,void(this.m_currentToken=4)}}currentString(){return 6!==this.m_currentToken&&5!==this.m_currentToken&&n("invalid token"),this.m_currentValue}currentDoubleValue(){return 7!==this.m_currentToken&&8!==this.m_currentToken&&n("invalid token"),this.m_currentValue}currentInt32Value(){return 8!==this.m_currentToken&&n("invalid token"),this.m_currentValue}currentInt64Value(){return r(0),0n}currentBoolValue(){return 12!==this.m_currentToken&&11!==this.m_currentToken&&n("invalid token"),this.m_currentValue}isError(){return 0}}class ee{m_pendingKey=null;m_acceptedObject=null;m_currentObject=[];reset(){this.m_pendingKey=null,this.m_acceptedObject=null,this.m_currentObject.length=0}startObject(){const e={};this.m_pendingKey?(this.m_currentObject.at(-1)[this.m_pendingKey]=e,this.m_pendingKey=null):Array.isArray(this.m_currentObject.at(-1))&&this.m_currentObject.at(-1).push(e),this.m_currentObject.push(e)}startArray(){const e=[];this.m_pendingKey?(this.m_currentObject.at(-1)[this.m_pendingKey]=e,this.m_pendingKey=null):Array.isArray(this.m_currentObject.at(-1))&&this.m_currentObject.at(-1).push(e),this.m_currentObject.push(e)}endObject(){this.m_acceptedObject=this.m_currentObject.at(-1),this.m_currentObject.pop()}endArray(){this.m_currentObject.pop()}addFieldName(e){this.m_pendingKey=e}addValue_(e){this.m_pendingKey?(this.m_currentObject.at(-1)[this.m_pendingKey]=e,this.m_pendingKey=null):this.m_currentObject.at(-1).push(e)}addString(e){this.addValue_(e)}addDouble(e,t){this.addValue_(e)}addInt64(e){r(0)}addInt32(e){this.addValue_(e)}addBool(e){this.addValue_(e)}addNull(){this.addValue_(null)}getObject(){return this.m_acceptedObject}}class te{m_buffer=null;m_view=null;m_sz=0;m_offset=0;m_bOwnsBuffer=!0;m_bLittleEndian=!0;m_element;m_elementBytes;m_elementView;m_elementDouble;m_elementFloat;m_elementInt64;m_elementInt32;m_elementInt16;constructor(e){return this.m_element=new ArrayBuffer(8),this.m_elementBytes=new Uint8Array(this.m_element),this.m_elementView=new DataView(this.m_element),this.m_elementDouble=new Float64Array(this.m_element),this.m_elementFloat=new Float32Array(this.m_element),this.m_elementInt64=new BigInt64Array(this.m_element),this.m_elementInt32=new Int32Array(this.m_element),this.m_elementInt16=new Int16Array(this.m_element),void 0!==e.sz?(this.m_sz=e.sz,e.buffer?(this.m_sz<0&&i("size out of range"),this.m_buffer=e.buffer,this.m_offset=void 0!==e.offset?e.offset:0,this.m_view=void 0!==e.offset?new DataView(e.buffer,e.offset,e.sz):new DataView(this.m_buffer),this.m_bOwnsBuffer=!1,void(this.m_bLittleEndian=!0)):(this.m_sz<0&&i("size out of range"),void(this.m_sz>0&&(this.m_buffer=new ArrayBuffer(this.m_sz),this.m_view=new DataView(this.m_buffer))))):e.move?(this.m_sz=e.move.m_sz,this.m_buffer=e.move.m_buffer,this.m_view=e.move.m_view,this.m_bOwnsBuffer=e.move.m_bOwnsBuffer,this.m_bLittleEndian=e.move.m_bLittleEndian,e.move.m_buffer=null,e.move.m_view=null,e.move.m_sz=0,void(e.move.m_bOwnsBuffer=!0)):void t("unrecognized constructor options")}swapBytesDouble(){this.doSwap()&&(this.m_elementDouble[0]=this.m_elementBytes[0]<<56|this.m_elementBytes[1]<<48|this.m_elementBytes[2]<<40|this.m_elementBytes[3]<<32|this.m_elementBytes[4]<<24|this.m_elementBytes[5]<<16|this.m_elementBytes[6]<<8|this.m_elementBytes[7])}swapBytesInt32(){this.doSwap()&&(this.m_elementInt32[0]=this.m_elementBytes[0]<<24|this.m_elementBytes[1]<<16|this.m_elementBytes[2]<<8|this.m_elementBytes[3])}getOffset(){return this.m_offset}assignMove(e){return this===e||(this.clear(),this.m_sz=e.m_sz,this.m_buffer=e.m_buffer,this.m_view=e.m_view,this.m_bOwnsBuffer=e.m_bOwnsBuffer,this.m_bLittleEndian=e.m_bLittleEndian,e.m_buffer=null,e.m_sz=0,e.m_bOwnsBuffer=!0),this}doSwap(){return this.m_bLittleEndian!==(1===te.getNativeByteOrder())}setNativeByteOrder(){this.m_bLittleEndian=1===te.getNativeByteOrder()}setOrder(e){this.m_bLittleEndian=1===e}getOrder(){return this.m_bLittleEndian?1:0}getView(){return this.m_view||s("buffer not defined"),this.m_view}static getNativeByteOrder(){return 1}clear(){this.m_buffer=null,this.m_sz=0,this.m_bOwnsBuffer=!0}size(){return this.m_sz}readDouble(e){return this.doSwap()?(this.m_elementDouble[0]=this.m_view.getFloat64(e,this.m_bLittleEndian),this.swapBytesDouble(),this.m_elementDouble[0]):this.m_view.getFloat64(e,this.m_bLittleEndian)}writeDouble(e,t){this.m_elementDouble[0]=t,this.swapBytesDouble(),this.m_view.setFloat64(e,this.m_elementDouble[0],this.m_bLittleEndian)}readInt32(e){return this.doSwap()?(this.m_elementInt32[0]=this.m_view.getInt32(e,this.m_bLittleEndian),this.swapBytesInt32(),this.m_elementInt32[0]):this.m_view.getInt32(e,this.m_bLittleEndian)}writeInt32(e,t){this.m_elementInt32[0]=t,this.swapBytesInt32(),this.m_view.setInt32(e,this.m_elementInt32[0],this.m_bLittleEndian)}getPtr(){return this.m_buffer}setSizeNoRealloc(e){r(e>=0&&e<=this.m_sz),this.m_sz=e}}function ne(e,t,i,s,o,u){let m=!1,l=!1,c=!1,d=!1,_=!1,h=!1,f=!1,p=!1,k=!1,b=!1,y=!1,T=!1,N=!1,g=!1,v=!1,C=!1,D=!1,F=!1,j=!1,O=!1,z=!1,I=!1,E=!1,P=!1,B=Number.NaN,V=Number.NaN,R=Number.NaN,M=Number.NaN,U=0,W=Number.NaN,G=Number.NaN,X=Number.NaN,L=Number.NaN,Y=Number.NaN,q=Number.NaN,K=Number.NaN,Q=Number.NaN,J=0,Z=0,H=!1,$=!1,ee=null,te=null,ne=null,re=null,ce=null;for(;3!==i.nextToken();){const u=i.currentString();if(i.nextToken(),"spatialReference"===u){if(o&&!m){m=!0,1===i.currentToken()?re=ie(i):10!==i.currentToken()&&n("failed to parse spatial reference: object or null is expected");continue}}else if(s)if("hasZ"===u){if(!l){l=!0,H=11===i.currentToken();continue}}else if("hasM"===u){if(!c){c=!0,$=11===i.currentToken();continue}}else if("rings"===u){if(!(_||h||e!==a.enumUnknown&&e!==a.enumPolygon)){_=!0,({geometry:ce,as:ee,bs:te}=se(!0,!1,t,i));continue}}else if("curveRings"===u){if(!h&&(e===a.enumUnknown||e===a.enumPolygon)){h=!0,({geometry:ce,as:ee,bs:te}=se(!0,!0,t,i));continue}}else if("paths"===u){if(!(f||p||e!==a.enumUnknown&&e!==a.enumPolyline)){f=!0,({geometry:ce,as:ee,bs:te}=se(!1,!1,t,i));continue}}else if("curvePaths"===u){if(!p&&(e===a.enumUnknown||e===a.enumPolyline)){p=!0,({geometry:ce,as:ee,bs:te}=se(!1,!0,t,i));continue}}else if("points"===u){if(!k&&(e===a.enumUnknown||e===a.enumMultiPoint)){k=!0,({geometry:ce,as:ee,bs:te}=ae(t,i));continue}}else if("ids"===u){if(!d){d=!0,ne=oe(t,i);continue}}else if("x"===u){if(!b&&(e===a.enumUnknown||e===a.enumPoint)){b=!0,B=ue(i);continue}}else if("y"===u){if(!y&&(e===a.enumUnknown||e===a.enumPoint)){y=!0,V=ue(i);continue}}else if("z"===u){if(!T&&(e===a.enumUnknown||e===a.enumPoint)){T=!0,R=ue(i);continue}}else if("m"===u){if(!N&&(e===a.enumUnknown||e===a.enumPoint)){N=!0,M=ue(i);continue}}else if("id"===u){if(!g&&(e===a.enumUnknown||e===a.enumPoint)){g=!0,U=me(i);continue}}else if("xmin"===u){if(!v&&(e===a.enumUnknown||e===a.enumEnvelope)){v=!0,W=ue(i);continue}}else if("ymin"===u){if(!C&&(e===a.enumUnknown||e===a.enumEnvelope)){C=!0,G=ue(i);continue}}else if("mmin"===u){if(!z&&(e===a.enumUnknown||e===a.enumEnvelope)){z=!0,K=ue(i);continue}}else if("zmin"===u){if(!j&&(e===a.enumUnknown||e===a.enumEnvelope)){j=!0,Y=ue(i);continue}}else if("idmin"===u){if(!E&&(e===a.enumUnknown||e===a.enumEnvelope)){E=!0,J=me(i);continue}}else if("xmax"===u){if(!D&&(e===a.enumUnknown||e===a.enumEnvelope)){D=!0,X=ue(i);continue}}else if("ymax"===u){if(!F&&(e===a.enumUnknown||e===a.enumEnvelope)){F=!0,L=ue(i);continue}}else if("mmax"===u){if(!I&&(e===a.enumUnknown||e===a.enumEnvelope)){I=!0,Q=ue(i);continue}}else if("zmax"===u){if(!O&&(e===a.enumUnknown||e===a.enumEnvelope)){O=!0,q=ue(i);continue}}else if("idmax"===u){if(!P&&(e===a.enumUnknown||e===a.enumEnvelope)){P=!0,Z=me(i);continue}}else"materials"===u&&r(0);i.skipChildren()}if(_||h||f||p||k){let e=null,t=null;const n=ce;H&&(ce.addAttribute(1),e=ee,e||(e=x(n.getPointCount(),Number.NaN))),$&&(ce.addAttribute(2),t=H?te:ee),null!=ne&&ce.addAttribute(3),H&&null!=e&&n.setAttributeStreamRef(1,e),$&&null!=t&&n.setAttributeStreamRef(2,t),null!=ne&&le(n,ne)}else if(b||y||N||T||g){A(B,V)||n("failed to parse point: x and y must be finite or nan"),(Number.isNaN(V)||Number.isNaN(B))&&(B=Number.NaN,V=Number.NaN);const e=new S({x:B,y:V});T&&e.setZ(R),N&&e.setM(M),g&&e.setID(U),ce=e}else if(v||C||D||F||j||O||z||I||E||P){(Number.isNaN(G)||Number.isNaN(X)||Number.isNaN(L))&&(W=Number.NaN);const e=new w({xmin:W,ymin:G,xmax:X,ymax:L});j&&O&&e.setInterval(1,0,Y,q),z&&I&&e.setInterval(2,0,K,Q),E&&P&&e.setInterval(3,0,J,Z),ce=e}return{...ce?{geom:ce}:{},...re?{sr:re}:{}}}function re(e){let t=!1;for(;3!==e.nextToken();){const n=e.currentString();e.nextToken(),"uwkid"===n?t||(t=!0,8===e.currentToken()&&e.currentInt32Value()):e.skipChildren()}return null}function ie(e){let t=!1,n=!1,r=!1,i=!1,s=!1,a=!1,o=!1,u=!1,m=!1,l=!1,c=!1,d=!1,_=!1,h=!1,v=!1,x=!1,A=!1,S=-1,w=-1,C=-1,D=-1,F=0,j=0,O=0,z=0,I=0,E=0,P=0,B=0,V=0,R=0,M="",U="",W=null;for(;3!==e.nextToken();){const f=e.currentString();e.nextToken(),"wkid"===f?t||(t=!0,8===e.currentToken()&&(S=e.currentInt32Value())):"latestWkid"===f?n||(n=!0,8===e.currentToken()&&(w=e.currentInt32Value())):"wkt"===f?s||(s=!0,6===e.currentToken()&&(M=e.currentString())):"wkt2"===f?s||6===e.currentToken()&&(U=e.currentString()):"vcsWkid"===f?r||(r=!0,8===e.currentToken()&&(C=e.currentInt32Value())):"latestVcsWkid"===f?i||(i=!0,8===e.currentToken()&&(D=e.currentInt32Value())):"xyTolerance"===f?o||(o=!0,a=!0,F=e.currentDoubleValue()):"zTolerance"===f?u||(u=!0,a=!0,j=e.currentDoubleValue()):"mTolerance"===f?m||(m=!0,a=!0,O=e.currentDoubleValue()):"falseX"===f?l||(l=!0,a=!0,P=e.currentDoubleValue()):"falseY"===f?c||(c=!0,a=!0,B=e.currentDoubleValue()):"falseZ"===f?d||(d=!0,a=!0,V=e.currentDoubleValue()):"falseM"===f?_||(_=!0,a=!0,R=e.currentDoubleValue()):"xyUnits"===f?h||(h=!0,a=!0,z=e.currentDoubleValue()):"zUnits"===f?v||(v=!0,a=!0,I=e.currentDoubleValue()):"mUnits"===f?x||(x=!0,a=!0,E=e.currentDoubleValue()):"unit"===f?A||(A=!0,W=re(e)):e.skipChildren()}D<=0&&C>0&&(D=C),C<=0&&D>0&&(C=D);let G=null,X=!0;if(0!==M.length&&(X=!1,f(M)&&(G=p(M))),G||0===U.length||(X=!1,f(U)&&(G=p(U))),!G&&w>0&&(X=!1,k(w)&&(D<=0||b())&&(G=y(w,D))),!G&&S>0&&(X=!1,k(S)&&(C<=0||b())&&(G=y(S,C))),X&&(G=T(W)),a&&G){const e=new N;G.queryPrecisionDescriptorWithoutFalseXY(e),o&&e.setTolerance(0,F),u&&e.setTolerance(1,j),m&&e.setTolerance(2,O),h&&l&&c&&e.setGridParams(P,B,z),v&&d&&e.setZParams(V,I),x&&_&&e.setMParams(R,E),G=g(G,e)}return G}function se(e,t,r,i){2!==i.currentToken()&&n("failed to parse multipath: array of array of vertices is expected");const s=e?new z:new I,a=s,o=C(0),u=x(2,0),m=D(0);let h=null,f=null,p=null,k=null,b=null,y=0,T=0,N=0;const g=new E,v=_.getNAN();let A=0,S=0;const w=e?1:0;for(;4!==i.nextToken();){2!==i.currentToken()&&n("failed to parse multipath: ring/path array is expected");let r=2,s=0,j=!0;const O=4;let z=0,I=0;const E=_.getNAN(),P=l(O,Number.NaN),B=l(O,Number.NaN);let V=!1;for(i.nextToken();4!==i.currentToken();){if(t&&1===i.currentToken())j&&n("failed to parse multipath: starting vertex array is expected"),p||(p=D(A-1,1),k=C(A-1,-1),b=x(0)),V=!0,r=1,({segFlag:N,toPointSz:z}=ke(g,P,v,i));else{for(V=!1,2!==i.currentToken()&&n("failed to parse multipath: array is expected, rings/paths vertices consist of arrays of coordinates"),z=0;4!==i.nextToken();)z===O&&n("failed to parse multipath: each vertex array has to have at most 4 elements"),P[z++]=ue(i);z<2&&n("failed to parse multipath: each vertex array has to have at least 2 elements"),F(P[0],P[1])||n("failed to parse multipath: x and y must be finite")}i.nextToken();do{if(u.size()===2*A&&u.resize(ce(A)),u.writePoint2D(2*A,E.setCoords(P[0],P[1])),h&&h.size()===A&&h.resize(de(A)),z>2?(h||(h=x(A+1,Number.NaN)),h.write(A,P[2])):h&&h.write(A,Number.NaN),f&&f.size()===A&&f.resize(de(A)),z>3?(f||(f=x(A+1,Number.NaN)),f.write(A,P[3])):f&&f.write(A,Number.NaN),j)S++,o.add(A),m.add(w),j=!1,I=z,c(B,P,0,0,I);else if(null!==p)if(V){const e=W(N),t=b.size();b.resize(t+e),p.add(N),k.add(y),g.get().writeInBufferStream(b,y),y+=e,a.incCurveType(N,1),T++}else p.add(1),k.add(-1);A++,s++,v.setCoords(P[0],P[1])}while(s<r&&4===i.currentToken())}0!==s&&(e&&s>r&&z===I&&0===d(P,B,z)?(A--,s--):null!==p&&(p.add(1),k.add(-1)))}return A&&(o.resize(S),m.resize(S),A>0&&(o.add(A),m.add(0)),a.setAttributeStreamRef(0,u),a.setPathFlagsStreamRef(m),a.setPathStreamRef(o),null!==p&&(a.updateCurveCounter(T),a.setSegmentData(k,b,p,y)),a.notifyModifiedFlags(65535)),{geometry:s,as:h,bs:f}}function ae(e,t){2!==t.currentToken()&&n("failed to parse multipoint: array of vertices is expected");let r=0;const i=new P,s=x(2,0);let a=0;const o=4,u=l(o,Number.NaN),m=new _;let c=null,d=null;for(;4!==t.nextToken();){for(2!==t.currentToken()&&n("failed to parse multipoint: array is expected, multipoint vertices consist of arrays of cooridinates"),a=0;4!==t.nextToken();)a===o&&n("failed to parse multipoint: each vertex array has to have at most 4 elements"),u[a++]=ue(t);a<2&&n("failed to parse multipoint: each vertex array has to have at least 2 elements"),F(u[0],u[1])||n("failed to parse multipoint: x and y must be finite"),s.size()===2*r&&s.resize(ce(r)),s.writePoint2D(2*r,m.setCoords(u[0],u[1])),c&&c.size()===r&&c.resize(de(r)),a>2?(c||(c=x(r+1,Number.NaN)),c.write(r,u[2])):c&&c.write(r,Number.NaN),d&&d.size()===r&&d.resize(de(r)),a>3?(d||(d=x(r+1,Number.NaN)),d.write(r,u[3])):d&&d.write(r,Number.NaN),r++}if(r){const e=i.getImpl();e.setAttributeStreamRef(0,s),e.resizeNoInit(r),e.notifyModifiedFlags(65535)}return{geometry:i,as:c,bs:d}}function oe(e,t){2!==t.currentToken()&&n("failed to parse array of IDs: array of array of integers is expected");const r=j(2,0);let i=0,s=-1;for(;4!==t.nextToken();){const e=i;r.size()===i&&r.resize(de(i)),i++;let a=0;for(-1===s?s=2===t.currentToken()?1:0:1===s&&2!==t.currentToken()&&n("failed to parse array of IDs: array of array of integers is expected"),0===s&&(r.size()===i&&r.resize(de(i)),r.write(i,me(t)),a++,i++);4!==t.nextToken();)r.size()===i&&r.resize(de(i)),r.write(i,me(t)),a++,i++;if(r.write(e,a),0===s)break}return r.resize(i),r}function ue(e){const t=e.currentToken();if(10===t||6===t&&"NaN"===e.currentString())return Number.NaN;{const t=e.currentDoubleValue();return Number.isNaN(t)?Number.NaN:t}}function me(e){return e.currentInt32Value()}function le(e,n){if(e.isEmpty())return;const r=j(2,0),i=e.getGeometryType();let s=0;i===P.type?s=1:i===I.type||i===z.type?s=e.getPathCount():t("not implemented"),r.resize(e.getPointCount(),0);let a=0;for(let o=0;o<s;++o){const s=n.read(a);a++;const u=a+s;let m=0,l=0;i===P.type?m=e.getPointCount():i===I.type||i===z.type?(m=e.getPathSize(o),l=e.getPathStart(o)):t("not implemented");for(let e=0,t=Math.min(s,m);e<t;++e)r.write(l,n.read(a)),a++,l++;a=u}e.getImpl().setAttributeStreamRef(3,r)}function ce(e){let t=2*Math.trunc(3*(e+1)/2);return t<8?t=8:t<32&&(t=32),t}function de(e){let t=Math.trunc(3*(e+1)/2);return t<4?t=4:t<16&&(t=16),t}function _e(e,t,n,r,s){s>=r.size()&&i("Byte_buffer out of range access"),e.m_bits=0,e.m_rotation=0,e.m_cosr=1,e.m_sinr=0,e.setStartXY(t),e.setEndXY(n);const a=_.getNAN();a.x=r.readDouble(s),a.y=r.readDouble(s+8);const o=r.readInt32(s+16);if(!!(1&o))return e.m_semiMajorAxis=0,e.m_minorMajorRatio=1,e.m_interior.assign(a),e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0,R(e),!1;let u=!!(64&o);const m=!!(128&o);let l=!!(32&o);const c=!!(8&o),d=!!(16&o),h=t.equals(n);return u&&!h&&(u=!1,l=!0),l&&h&&(u=!0,l=!1,a.setCoords(0,0)),u||(m?l?(e.m_semiMajorAxis=1,e.m_minorMajorRatio=0,e.m_interior.assign(a),e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0):(e.constructCircularArcThreePoint(t,n,a),h&&c===e.isClockwise()&&e.reverse()):l?(e.m_semiMajorAxis=1,e.m_minorMajorRatio=0,e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0,R(e),e.queryCoord2D(.5,e.m_interior)):M(e,t,n,a,c,d)),u&&(e.m_center.assign(t),e.m_startAngle=a.x,e.m_sweepAngle=a.y,U(e,Number.NaN,c,d),e.m_semiMajorAxis=0,e.m_minorMajorRatio=1,e.m_interior.setCoordsPoint2D(t)),e.setProjectionBehavior(0),R(e),!0}function he(e,t,n,r,i){e.m_bits=0,e.m_center.x=r.readDouble(i),e.m_center.y=r.readDouble(i+8),e.m_rotation=r.readDouble(i+16),e.m_semiMajorAxis=r.readDouble(i+24),e.m_minorMajorRatio=r.readDouble(i+32),e.m_XStart=t.x,e.m_YStart=t.y,e.m_XEnd=n.x,e.m_YEnd=n.y;const s=r.readInt32(i+40);if(1&s)return!1;let a=!!(64&s),o=!!(128&s);const u=!!(2048&s),m=!!(4096&s);return!!!(512&s)&&!!!(1024&s)||o||(a=!0),o&&!t.equals(n)?(o=!1,a=!0):a&&t.equals(n)&&(o=!0,a=!1),o?(e.m_center.assign(t),e.m_startAngle=e.m_center.x,e.m_sweepAngle=e.m_center.y,U(e,Number.NaN,u,m),e.m_semiMajorAxis=0,e.m_interior.setCoordsPoint2D(t)):a?(e.m_center.setNAN(),e.m_semiMajorAxis=1,e.m_minorMajorRatio=0,e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0,R(e),e.queryCoord2D(.5,e.m_interior)):e.constructEllipticArcEndPointsCenter(t,n,e.m_semiMajorAxis,e.m_minorMajorRatio,e.m_rotation,!m,u,e.m_center),e.setProjectionBehavior(1),R(e),!0}function fe(e,t,n,i,s){return r(s+32<=i.size()),e.m_cp=h(_,2),e.m_cp[0].x=i.readDouble(s),e.m_cp[0].y=i.readDouble(s+8),e.m_cp[1].x=i.readDouble(s+16),e.m_cp[1].y=i.readDouble(s+24),e.m_XStart=t.x,e.m_YStart=t.y,e.m_XEnd=n.x,e.m_YEnd=n.y,!0}function pe(e,t,n,r,i){return e.m_cp.x=r.readDouble(i),e.m_cp.y=r.readDouble(i+8),e.m_weights[0]=r.readDouble(i+16),e.m_weights[1]=r.readDouble(i+24),e.m_weights[2]=r.readDouble(i+32),e.m_XStart=t.x,e.m_YStart=t.y,e.m_XEnd=n.x,e.m_YEnd=n.y,!0}function ke(e,t,r,i,s){const a={segFlag:0,toPointSz:0};let o=i.currentToken();o=i.nextToken();const u=i.currentString(),m=u[0];for((1!==u.length||"a"!==m&&"b"!==m&&"c"!==m&&"n"!==m&&"q"!==m)&&n('failed to parse curve: expecting "a", "b", "n", "q", or "c"'),o=i.nextToken(),2!==o&&n("failed to parse curve: start array is expected for curve parameters"),o=i.nextToken(),2!==o&&n("failed to parse curve: start array is expected for to point"),a.toPointSz=0;4!==i.nextToken();)4===a.toPointSz&&n("failed to parse curve: vertex array cannot have more than 4 elements"),t[a.toPointSz++]=ue(i);a.toPointSz<2&&n("failed to parse curve: vertex array must have at least 2 elements");const l=_.construct(t[0],t[1]),c=_.getNAN();let d=-1,h=-1,f=!1,p=Number.NaN,k=Number.NaN,b=Number.NaN;const y=[_.getNAN(),_.getNAN(),_.getNAN()],T=_.getNAN();if("a"===m){o=i.nextToken(),2!==o&&n("failed to parse curve: start array is expected for center point"),o=i.nextToken();const e=ue(i);o=i.nextToken();const t=ue(i);o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for center point"),c.setCoords(e,t),o=i.nextToken(),d=i.currentInt32Value(),o=i.nextToken(),h=i.currentInt32Value(),o=i.nextToken(),4!==o?(f=!1,p=ue(i),o=i.nextToken(),k=ue(i),o=i.nextToken(),b=ue(i),o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for curve parameters")):f=!0,a.segFlag=4}else if("b"===m){for(let e=0;e<2;e++){o=i.nextToken(),2!==o&&n("failed to parse curve: start array is expected for control point"),o=i.nextToken();const t=ue(i);o=i.nextToken();const r=ue(i);o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for control point"),y[e].setCoords(t,r)}o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for curve parameters"),a.segFlag=2}else if("n"===m){{o=i.nextToken(),2!==o&&n("failed to parse curve: start array is expected for control point"),o=i.nextToken();const e=ue(i);o=i.nextToken();const t=ue(i);o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for control point"),y[0].setCoords(e,t)}o=i.nextToken();const e=ue(i);o=i.nextToken();const t=ue(i);o=i.nextToken();const r=ue(i);y[1].setCoords(e,t),y[2].setCoords(r,r),o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for curve parameters"),a.segFlag=8}else if("q"===m){for(let e=0;e<1;e++){o=i.nextToken(),2!==o&&n("failed to parse curve: start array is expected for control point"),o=i.nextToken();const t=ue(i);o=i.nextToken();const r=ue(i);o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for control point"),y[e].setCoords(t,r)}o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for curve parameters"),a.segFlag=16}else{o=i.nextToken(),2!==o&&n("failed to parse curve: start array is expected for interior point"),o=i.nextToken();const e=ue(i);o=i.nextToken();const t=ue(i);o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for interior point"),T.setCoords(e,t),o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for curve parameters"),a.segFlag=4}if(o=i.nextToken(),3!==o&&n("failed to parse curve: end object is expected for curve"),"a"===m)if(e.createEllipticArc(),f){const t=!0;be(e.get(),r,l,c,t,d,h)}else ye(e.get(),r,l,c,d,h,p,k,b);else if("b"===m)e.createCubicBezier(),Te(e.get(),r,l,y);else if("n"===m)e.createQuadraticRationalBezier(),Ne(e.get(),r,l,y[0],y[1].x,y[1].y,y[2].x);else if("q"===m)e.createQuadraticBezier(),e.get().construct(r,y[0],l);else{e.createEllipticArc();const t=!1;be(e.get(),r,l,T,t,-1,-1)}return a}function be(e,t,n,r,i,s,a){e.dropAllAttributes();const o=20,u=new ArrayBuffer(o),m=new te({sz:o,buffer:u});let l=0;m.writeDouble(l,r.x),l+=8,m.writeDouble(l,r.y),l+=8;let c=0;i?(a||(c|=8),s&&(c|=16)):c|=128,m.writeInt32(l,c),l+=4,_e(e,t,n,m,0)}function ye(e,t,n,r,i,s,a,o,u){e.dropAllAttributes();const m=44,l=new ArrayBuffer(m),c=new te({sz:m,buffer:l});let d=0;c.writeDouble(d,r.x),d+=8,c.writeDouble(d,r.y),d+=8,c.writeDouble(d,a),d+=8,c.writeDouble(d,o),d+=8,c.writeDouble(d,u),d+=8;let _=0;s||(_|=2048),i&&(_|=4096),c.writeInt32(d,_),d+=4,he(e,t,n,c,0)}function Te(e,t,n,r){e.dropAllAttributes();const i=32,s=new ArrayBuffer(i),a=new te({sz:i,buffer:s});let o=0;a.writeDouble(o,r[0].x),o+=8,a.writeDouble(o,r[0].y),o+=8,a.writeDouble(o,r[1].x),o+=8,a.writeDouble(o,r[1].y),o+=8,fe(e,t,n,a,0)}function Ne(e,t,n,r,i,s,a){e.dropAllAttributes();const o=40,u=new ArrayBuffer(o),m=new te({sz:o,buffer:u});let l=0;m.writeDouble(l,r.x),l+=8,m.writeDouble(l,r.y),l+=8,m.writeDouble(l,i),l+=8,m.writeDouble(l,s),l+=8,m.writeDouble(l,a),l+=8,pe(e,t,n,m,0)}function ge(e,t,n,r,i){const s=e.getGeometryType();if(s===a.enumEllipticArc)return ve(e,t,n,r,i);if(s===a.enumBezier)return xe(e,t,n,r,i);if(s===a.enumRationalBezier2)return Ae(e,t,n,r,i);if(s===a.enumBezier2){const s=new B;return s.constructFromQuadraticSegment(e),xe(s,t,n,r,i)}o("")}function ve(e,t,n,i,s){r(!V(e));const a=e.getEndXY(),o=e.hasAttribute(1)&&!t,u=e.hasAttribute(2)&&!n;let m=Number.NaN,l=Number.NaN;if(o&&(m=e.getEndAttributeAsDbl(1,0)),u&&(l=e.getEndAttributeAsDbl(2,0)),e.isDegenerateToLine()||e.isDegenerate(0))return Se(o,u,a.x,a.y,m,l,i,s),!0;const c=0===e.projectionBehavior(),d=!!c&&e.isClosed();if(c&&!d)s.startObject(),s.addFieldName("c"),s.startArray(),Se(o,u,a.x,a.y,m,l,i,s),we(e.m_interior.x,e.m_interior.y,17,s),s.endArray(),s.endObject();else if(c){s.startObject(),s.addFieldName("a"),s.startArray(),Se(o,u,a.x,a.y,m,l,i,s);const t=0,n=0;we(e.m_center.x+t,e.m_center.y+n,17,s);const r=!e.isMajor();s.addInt32(r?1:0);const c=e.isClockwise();s.addInt32(c?1:0),s.endArray(),s.endObject()}else{s.startObject(),s.addFieldName("a"),s.startArray(),Se(o,u,a.x,a.y,m,l,i,s);const t=e;we(t.m_center.x,t.m_center.y,17,s);const n=!t.isMajor();s.addInt32(n?1:0);const r=t.isClockwise();s.addInt32(r?1:0),s.addDouble(t.m_rotation,17),s.addDouble(t.m_semiMajorAxis,17),s.addDouble(t.m_minorMajorRatio,17),s.endArray(),s.endObject()}return!1}function xe(e,t,n,r,i){const s=e.getEndXY(),a=e.hasAttribute(1)&&!t,o=e.hasAttribute(2)&&!n;let u=Number.NaN,m=Number.NaN;return a&&(u=e.getEndAttributeAsDbl(1,0)),o&&(m=e.getEndAttributeAsDbl(2,0)),i.startObject(),i.addFieldName("b"),i.startArray(),Se(a,o,s.x,s.y,u,m,r,i),we(e.m_cp[0].x,e.m_cp[0].y,r,i),we(e.m_cp[1].x,e.m_cp[1].y,r,i),i.endArray(),i.endObject(),!1}function Ae(e,t,n,r,i){const s=e.getEndXY(),a=e.hasAttribute(1)&&!t,o=e.hasAttribute(2)&&!n;let u=Number.NaN,m=Number.NaN;a&&(u=e.getEndAttributeAsDbl(1,0)),o&&(m=e.getEndAttributeAsDbl(2,0)),i.startObject(),i.addFieldName("n"),i.startArray(),Se(a,o,s.x,s.y,u,m,r,i),we(e.m_cp.x,e.m_cp.y,r,i);const l=r;return i.addDouble(e.m_weights[0],l),i.addDouble(e.m_weights[1],l),i.addDouble(e.m_weights[2],l),i.endArray(),i.endObject(),!1}function Se(e,t,n,r,i,s,a,o){o.startArray(),o.addDouble(n,a),o.addDouble(r,a),e&&o.addDouble(i,a),t&&o.addDouble(s,a),o.endArray()}function we(e,t,n,r){r.startArray(),r.addDouble(e,n),r.addDouble(t,n),r.endArray()}class Ce{getOperatorType(){return 10405}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}supportsCurves(){return!0}execute(e,t,n,r,i,s){De(e,t,n,r)}exportSpatialReference(e,t,n,i){r(0)}exportProjectionTransformation(e,t,n,i){r(0)}exportDatumTransformation(e,t,n,i){r(0)}static geometryTypeToString(e){return r(0),""}}function De(e,n,i,s,o){if(n||i){if(s.startObject(),null!==n){switch(n.getGeometryType()){case a.enumPolygon:Fe(!0,e,n,s);break;case a.enumPolyline:Fe(!1,e,n,s);break;case a.enumMultiPoint:je(e,n,s);break;case a.enumPoint:Oe(e,n,s);break;case a.enumEnvelope:ze(e,n,s);break;case a.enumMultipatch:r(0);break;default:t("exportToJSON")}}null!==i&&(s.addFieldName("spatialReference"),Ee(e,i,s)),s.endObject()}}function Fe(e,t,n,i){const s=n.getImpl(),a=!!(2&t),u=!!(4&t),m=!!(8&t),l=s.hasAttribute(1)&&!a,c=s.hasAttribute(2)&&!u,d=s.hasAttribute(3)&&!m,_=s.hasNonLinearSegments();l&&(i.addFieldName("hasZ"),i.addBool(!0)),c&&(i.addFieldName("hasM"),i.addBool(!0)),e?_?i.addFieldName("curveRings"):i.addFieldName("rings"):_?i.addFieldName("curvePaths"):i.addFieldName("paths");let h=null;const f=[];if(n.isEmpty())i.startArray(),i.endArray();else{const e=17-(31&t>>13);i.startArray();const r=n.getPathCount();let m=0;const p=s.getAttributeStreamRef(0);let k=null,b=null,y=null;const T=new E;let N=null,g=null,v=null;_&&(N=s.getSegmentFlagsStreamRef(),g=s.getSegmentIndexStreamRef(),v=s.getSegmentDataStreamRef()),l&&(k=s.getAttributeStreamRef(1)),c&&(b=s.getAttributeStreamRef(2)),d&&(y=s.getAttributeStreamRef(3),h=O(3,0));for(let t=0;t<r;t++){i.startArray(),d&&f.push(0);const r=n.getPathEnd(t);if(m===r){i.endArray();continue}const s=n.isClosedPath(t);let _=p.read(2*m),x=p.read(2*m+1),A=l?k.read(m):Number.NaN,S=c?b.read(m):Number.NaN,w=d?y.read(m):0;Pe(l,c,_,x,A,S,e,i);let C=1;d&&(h.add(w),f[f.length-1]++);const D=_,F=x,j=A,O=S,z=w;let I=!1,E=0,P=Number.NaN,B=Number.NaN,V=0;for(let t=m+1,n=m,R=s?r+1:r;t<R;t++,n++){const s=null!==N?31&N.read(n):1;let m,R;if(t<r?(m=p.read(2*t),R=p.read(2*t+1),l&&(P=k.read(t)),c&&(B=b.read(t)),d&&(V=y.read(t))):(m=D,R=F,P=j,B=O,V=z),1!==s){I=!0,4===s?T.createEllipticArc():2===s?T.createCubicBezier():16===s?T.createQuadraticBezier():8===s?T.createQuadraticRationalBezier():o("JSON export.unsupported curve");const t=T.get(),r=g.read(n);t.setStartXYCoords(_,x),t.setEndXYCoords(m,R),l&&(t.setStartAttribute(1,0,A),t.setEndAttribute(1,0,P)),c&&(t.setStartAttribute(2,0,S),t.setEndAttribute(2,0,B)),t.readFromBufferStream(v,r);ge(T.get(),a,u,e,i)&&E++}else Pe(l,c,m,R,P,B,e,i);d&&(h.add(V),f[f.length-1]++),C++,_=m,x=R,A=P,S=B,w=V}I&&0===E||(C<2&&E<1&&(Pe(l,c,_,x,A,S,e,i),C++,d&&(h.add(w),f[f.length-1]++)),s&&C<3&&E<2&&(Pe(l,c,D,F,j,O,e,i),C++,_=D,x=F,A=j,S=O,w=z,d&&(h.add(z),f[f.length-1]++))),i.endArray(),m=r}i.endArray()}if(d){i.addFieldName("ids"),i.startArray();let e=0;for(let t=0,n=f.length;t<n;++t){const n=f[t];r(0===n||null!==h&&e+n<=h.size()),i.startArray();for(let t=0;t<n;++t)i.addInt32(h.read(e)),e++;i.endArray()}i.endArray()}}function je(e,t,n){const i=t.getImpl(),s=i.hasAttribute(1)&&!(2&e),a=i.hasAttribute(2)&&!(4&e),o=i.hasAttribute(3)&&!(8&e);s&&(n.addFieldName("hasZ"),n.addBool(!0)),a&&(n.addFieldName("hasM"),n.addBool(!0)),n.addFieldName("points");const u=t.getPointCount();if(t.isEmpty())n.startArray(),n.endArray();else{const t=17-(31&e>>13);n.startArray();const r=i.getAttributeStreamRef(0);let o=null,m=null;s&&(o=i.getAttributeStreamRef(1)),a&&(m=i.getAttributeStreamRef(2));for(let e=0;e<u;e++){const i=r.read(2*e),u=r.read(2*e+1);let l=Number.NaN,c=Number.NaN;s&&(l=o.read(e)),a&&(c=m.read(e)),Pe(s,a,i,u,l,c,t,n)}n.endArray()}if(o){let e=null;i.isEmpty()||(e=i.getAttributeStreamRef(3)),r(0===u||null!==e&&e.size()>=u),n.addFieldName("ids"),n.startArray();for(let t=0;t<u;t++)n.addInt32(e.read(t));n.endArray()}}function Oe(e,t,n){const r=t.hasAttribute(1)&&!(2&e),i=t.hasAttribute(2)&&!(4&e),s=t.hasAttribute(3)&&!(8&e);if(t.isEmpty())return n.addFieldName("x"),n.addNull(),n.addFieldName("y"),n.addNull(),r&&(n.addFieldName("z"),n.addNull()),i&&(n.addFieldName("m"),n.addNull()),void(s&&(n.addFieldName("id"),n.addInt32(0)));const a=17-(31&e>>13);n.addFieldName("x"),n.addDouble(t.getX(),a),n.addFieldName("y"),n.addDouble(t.getY(),a),r&&(n.addFieldName("z"),n.addDouble(t.getZ(),a)),i&&(n.addFieldName("m"),n.addDouble(t.getM(),a)),s&&(n.addFieldName("id"),n.addInt32(t.getID()))}function ze(e,t,n){const r=t.hasAttribute(1)&&!(2&e),i=t.hasAttribute(2)&&!(4&e),s=t.hasAttribute(3)&&!(8&e);if(t.isEmpty())return n.addFieldName("xmin"),n.addNull(),n.addFieldName("ymin"),n.addNull(),n.addFieldName("xmax"),n.addNull(),n.addFieldName("ymax"),n.addNull(),r&&(n.addFieldName("zmin"),n.addNull(),n.addFieldName("zmax"),n.addNull()),i&&(n.addFieldName("mmin"),n.addNull(),n.addFieldName("mmax"),n.addNull()),void(s&&(n.addFieldName("idmin"),n.addInt32(0),n.addFieldName("idmax"),n.addInt32(0)));const a=17-(31&e>>13);if(n.addFieldName("xmin"),n.addDouble(t.getXMin(),a),n.addFieldName("ymin"),n.addDouble(t.getYMin(),a),n.addFieldName("xmax"),n.addDouble(t.getXMax(),a),n.addFieldName("ymax"),n.addDouble(t.getYMax(),a),r){const e=t.queryInterval(1,0);n.addFieldName("zmin"),n.addDouble(e.vmin,a),n.addFieldName("zmax"),n.addDouble(e.vmax,a)}if(i){const e=t.queryInterval(2,0);n.addFieldName("mmin"),n.addDouble(e.vmin,a),n.addFieldName("mmax"),n.addDouble(e.vmax,a)}if(s){const e=t.queryInterval(3,0);n.addFieldName("idmin"),n.addInt32(e.vmin),n.addFieldName("idmax"),n.addInt32(e.vmax)}}function Ie(e,t,r){r.startObject();const i=t.getID();i<=0&&n("cannot export unit that has no valid WKID"),r.addFieldName("uwkid"),r.addInt32(i),r.endObject()}function Ee(e,t,n){n.startObject();let r=0;t.isCustomWkid()||(r=t.getOldID());let i=0;const s=t.getVCS();if(null!==s&&(s.isCustomWkid()||(i=s.getOldID()),i<=0&&(r=0)),r>0){n.addFieldName("wkid"),n.addInt32(r);const e=t.getLatestID();if(e>0&&e!==r&&(n.addFieldName("latestWkid"),n.addInt32(e)),i>0){n.addFieldName("vcsWkid"),n.addInt32(i);const e=t.getLatestVerticalID();e!==i&&(n.addFieldName("latestVcsWkid"),n.addInt32(e))}}if(0===t.getCoordinateSystemType())n.addFieldName("wkid"),n.addNull(),null!==t.getUnit()&&(n.addFieldName("unit"),Ie(e,t.getUnit(),n));else if(r<=0||1&e){let r="";64&e&&(r=t.getText2(),n.addFieldName("wkt2"),n.addString(r));const i=t.getText();i!==r&&(n.addFieldName("wkt"),n.addString(i))}if(16&e){const e=new N;t.queryPrecisionDescriptor(e),n.addFieldName("xyTolerance"),n.addDouble(e.getTolerance(0)),n.addFieldName("zTolerance"),n.addDouble(e.getTolerance(1)),n.addFieldName("mTolerance"),n.addDouble(e.getTolerance(2)),n.addFieldName("falseX"),n.addDouble(e.getFalseX()),n.addFieldName("falseY"),n.addDouble(e.getFalseY()),n.addFieldName("xyUnits"),n.addDouble(e.getGridUnitsXY()),n.addFieldName("falseZ"),n.addDouble(e.getFalseZ()),n.addFieldName("zUnits"),n.addDouble(e.getGridUnitsZ()),n.addFieldName("falseM"),n.addDouble(e.getFalseM()),n.addFieldName("mUnits"),n.addDouble(e.getGridUnitsM())}n.endObject()}function Pe(e,t,n,r,i,s,a,o){o.startArray(),o.addDouble(n,a),o.addDouble(r,a),e&&o.addDouble(i,a),t&&o.addDouble(s,a),o.endArray()}const Be={s_a:"a".charCodeAt(0),s_A:"A".charCodeAt(0),s_asterisk:"*".charCodeAt(0),s_b:"b".charCodeAt(0),s_backslash:"\\".charCodeAt(0),s_beginArray:"[".charCodeAt(0),s_beginObject:"{".charCodeAt(0),s_colon:":".charCodeAt(0),s_period:".".charCodeAt(0),s_comma:",".charCodeAt(0),s_doubleQuote:'"'.charCodeAt(0),s_endArray:"]".charCodeAt(0),s_endObject:"}".charCodeAt(0),s_e:"e".charCodeAt(0),s_E:"E".charCodeAt(0),s_f:"f".charCodeAt(0),s_F:"F".charCodeAt(0),s_forwardslash:"/".charCodeAt(0),s_minus:"-".charCodeAt(0),s_plus:"+".charCodeAt(0),s_n:"n".charCodeAt(0),s_N:"N".charCodeAt(0),s_r:"r".charCodeAt(0),s_t:"t".charCodeAt(0),s_u:"u".charCodeAt(0),s_zero:"0".charCodeAt(0),s_nine:"9".charCodeAt(0)};class Ve{m_jsonString;m_endToken;m_startToken;m_currentTokenType;m_bHasEscapes;m_functionStack=[];m_pushPositions=[];m_utf8Decoder=new TextDecoder("utf-8",{fatal:!0});m_prepSubstr;m_getCurrentSubstr;m_stepOverChar;m_peekChar;m_get;m_increment;m_eof;constructor(e){void 0===e?(this.m_startToken=Number.MAX_SAFE_INTEGER,this.m_endToken=0,this.m_currentTokenType=0,this.m_functionStack.push(()=>this.accept_()),this.m_jsonString=null,this.m_bHasEscapes=!1):e.jsonString?this.resetParserFromString(e.jsonString):e.jsonStream?o("streaming json parsing not yet impl"):t("invalid constructor parameter")}prepSubstrString_(){}getCurrentSubstrString_(){return this.m_jsonString.slice(this.m_startToken,this.m_endToken)}stepOverCharString_(){this.m_endToken++}peekCharString_(){return this.m_jsonString.charCodeAt(this.m_endToken)}getString_(e){const t=this.m_jsonString?.slice(this.m_startToken,this.m_startToken+e-1);this.m_endToken+=e-1;return{s:t,bDone:this.m_endToken>=this.m_jsonString.length}}incrementString_(){this.m_endToken++}eofString_(){return this.m_endToken>=this.m_jsonString.length}setStringFunctions_(){this.m_prepSubstr=this.prepSubstrString_,this.m_getCurrentSubstr=this.getCurrentSubstrString_,this.m_stepOverChar=this.stepOverCharString_,this.m_peekChar=this.peekCharString_,this.m_get=this.getString_,this.m_increment=this.incrementString_,this.m_eof=this.eofString_}setStreamFunctions_(){o("streaming json parsing not yet impl")}reset_(){this.m_jsonString=null,this.m_endToken=0,this.m_startToken=Number.MAX_SAFE_INTEGER,this.m_currentTokenType=0,this.m_bHasEscapes=!1,this.m_functionStack.length=0,this.m_functionStack.push(()=>this.start_()),this.m_pushPositions.length=0}resetParserFromString(e){this.reset_(),this.setStringFunctions_(),this.m_jsonString=e}resetParserFromStream(e){o("streaming json parsing not yet impl")}resetToPosition(e){return!!this.m_jsonString&&(this.m_endToken=e,this.m_startToken=Number.MAX_VALUE,this.m_currentTokenType=0,this.m_functionStack.length=0,e>=this.m_jsonString.length?(this.m_functionStack.push(()=>this.accept_()),!1):(this.m_functionStack.push(()=>this.start_()),!0))}nextToken(){return this.m_functionStack.at(-1)(),this.m_currentTokenType}currentToken(){return this.m_currentTokenType}currentTokenStartIndex(){return this.m_startToken}currentTokenEndIndex(){return this.m_endToken}currentText(){return r(0),""}childrenAsString(){return r(0),""}skipChildren(){this.skipChildren_()}skipChildren_(){if(1===this.m_currentTokenType){let e=1;do{this.m_currentTokenType=this.nextToken(),1===this.m_currentTokenType?e++:3===this.m_currentTokenType&&e--}while(3!==this.m_currentTokenType||0!==e);return}if(2===this.m_currentTokenType){let e=1;do{this.m_currentTokenType=this.nextToken(),2===this.m_currentTokenType?e++:4===this.m_currentTokenType&&e--}while(4!==this.m_currentTokenType||0!==e);return}}currentTerminalAsString_(){switch(this.m_currentTokenType){case 7:case 8:case 9:return this.m_getCurrentSubstr().slice(0,this.m_endToken-this.m_startToken);case 10:return"null";case 11:return"true";case 12:return"false"}n("invalid token")}toUTF8_(e,t){let n=0,r=e;for(;t.charCodeAt(r)===Be.s_backslash&&t.charCodeAt(r+1)===Be.s_u;)n++,r+=6;r=e;const i=new Uint8Array(n);let s=0;for(;t.charCodeAt(r)===Be.s_backslash&&t.charCodeAt(r+1)===Be.s_u;)i[s++]=Number.parseInt(t.slice(r+2,r+6),16),r+=6;return{u8s:this.m_utf8Decoder.decode(i),end:r}}unquoteCurrentString_(){let e="",t=1;const n=this.m_endToken-this.m_startToken-1;let r=0;const i=this.m_getCurrentSubstr();for(let s=t;s<n;s++)if(i.charCodeAt(s)!==Be.s_backslash)r++;else{switch(r>0&&(e+=i.slice(t,t+r)),i.charCodeAt(++s)){case Be.s_doubleQuote:e+='"';break;case Be.s_u:{const{u8s:t,end:n}=this.toUTF8_(s-1,i);s=n-1,e+=t;break}case Be.s_backslash:e+="\\";break;case Be.s_forwardslash:e+="/";break;case Be.s_b:e+="\b";break;case Be.s_f:e+="\f";break;case Be.s_n:e+="\n";break;case Be.s_r:e+="\r";break;case Be.s_t:e+="\t"}t=s+1,r=0}return r>0&&(e+=i.slice(t,t+r)),e}currentString(){if(5!==this.m_currentTokenType&&6!==this.m_currentTokenType)return this.currentTerminalAsString_();if(this.m_bHasEscapes)return this.unquoteCurrentString_();return this.m_getCurrentSubstr().slice(1,this.m_endToken-this.m_startToken-2+1)}currentDoubleValue(){if(7!==this.m_currentTokenType&&8!==this.m_currentTokenType&&9!==this.m_currentTokenType&&6!==this.m_currentTokenType&&10!==this.m_currentTokenType&&n("invalid token"),10===this.m_currentTokenType)return Number.NaN;let e=this.m_getCurrentSubstr(),t=this.m_endToken-this.m_startToken;if(6===this.m_currentTokenType){if("NaN"===this.currentString())return Number.NaN;e=e.slice(1),t-=2,0===t&&n("invalid token")}const r=Number.parseFloat(e);if(6===this.m_currentTokenType)Number.isNaN(r)&&n("invalid token");else if(Number.isNaN(r))return Number.NaN;return r}currentInt32Value(){8!==this.m_currentTokenType&&6!==this.m_currentTokenType&&n("invalid token");let e=this.m_getCurrentSubstr(),t=this.m_endToken-this.m_startToken;6===this.m_currentTokenType&&(e=e.slice(1),t-=2,0===t&&n("invalid token"));const r=parseInt(e);return Number.isNaN(r)&&n("invalid token"),r}currentInt64Value(){return r(0),0n}currentBoolValue(){return r(0),!1}isError(){return 0}JSONString(){return r(0),""}pushPosition(){return r(0),!1}popPosition(){return r(0),!1}skipCStyleComments_(){r(0)}skipCppStyleComments_(){r(0)}skipComments_(){this.m_prepSubstr();let e=this.m_peekChar();this.m_stepOverChar(),this.m_eof()&&n("invalid token"),e=this.m_peekChar(),e===Be.s_asterisk?this.skipCStyleComments_():e===Be.s_forwardslash?this.skipCppStyleComments_():n("invalid token")}skipWhiteSpace_(){let e;do{this.m_eof()&&n("invalid token");let t=this.m_peekChar();for(;t>=9&&t<=13||32===t;)this.m_increment(),this.m_eof()&&n("invalid token"),t=this.m_peekChar();t===Be.s_forwardslash?(this.m_startToken=this.m_endToken,e=!0,this.skipComments_()):e=!1}while(e)}rightBracket_(){return this.m_peekChar()===Be.s_endArray&&(this.m_startToken=this.m_endToken,this.m_increment(),this.m_currentTokenType=4,!0)}rightBrace_(){return this.m_peekChar()===Be.s_endObject&&(this.m_startToken=this.m_endToken,this.m_increment(),this.m_currentTokenType=3,!0)}string_(){this.m_prepSubstr(),this.m_bHasEscapes=!1,this.m_stepOverChar(),this.m_eof()&&n("invalid token");let e=this.m_peekChar();for(;e!==Be.s_doubleQuote;){const t=e===Be.s_backslash;if(this.m_stepOverChar(),this.m_eof()&&n("invalid token"),e=this.m_peekChar(),t)if(this.m_bHasEscapes=!0,e===Be.s_doubleQuote||e===Be.s_backslash||e===Be.s_forwardslash||e===Be.s_b||e===Be.s_f||e===Be.s_n||e===Be.s_r||e===Be.s_t)this.m_stepOverChar(),this.m_eof()&&n("invalid token"),e=this.m_peekChar();else if(e===Be.s_u)for(let r=0;r<4;r++)this.m_stepOverChar(),this.m_eof()&&n("invalid token"),e=this.m_peekChar(),e>=Be.s_zero&&e<=Be.s_nine||e>=Be.s_a&&e<=Be.s_f||e>=Be.s_A&&e<=Be.s_F||n("invalid token");else n("invalid token")}this.m_stepOverChar()}comma_(){return this.m_peekChar()===Be.s_comma&&(this.m_increment(),!0)}colon_(){return this.m_peekChar()===Be.s_colon&&(this.m_increment(),!0)}fieldNameEnd_(){this.skipWhiteSpace_(),this.m_functionStack.pop(),this.colon_()?(this.skipWhiteSpace_(),this.value_()):n("invalid token")}fieldNameStart_(){this.m_startToken=this.m_endToken;this.m_peekChar()!==Be.s_doubleQuote&&n("invalid token"),this.string_(),this.m_currentTokenType=5,this.m_functionStack.push(()=>this.fieldNameEnd_())}pairEnd_(){this.skipWhiteSpace_(),this.comma_()?(this.skipWhiteSpace_(),this.fieldNameStart_()):this.rightBrace_()?this.m_functionStack.pop():n("invalid token")}arrayStart_(){this.skipWhiteSpace_(),this.m_functionStack.pop(),this.rightBracket_()||(this.m_functionStack.push(()=>this.elementEnd_()),this.value_())}elementEnd_(){this.skipWhiteSpace_(),this.comma_()?(this.skipWhiteSpace_(),this.value_()):this.rightBracket_()?this.m_functionStack.pop():n("invalid token")}objectStart_(){this.skipWhiteSpace_(),this.m_functionStack.pop(),this.rightBrace_()||(this.m_functionStack.push(()=>this.pairEnd_()),this.fieldNameStart_())}valueStartObject_(){this.m_increment(),this.m_currentTokenType=1,this.m_functionStack.push(()=>this.objectStart_())}valueStartArray_(){this.m_increment(),this.m_currentTokenType=2,this.m_functionStack.push(()=>this.arrayStart_())}valueString_(){this.string_(),this.m_currentTokenType=6}int_(){this.m_peekChar()!==Be.s_zero?this.digits_():this.m_stepOverChar()}digits_(){let e=this.m_peekChar();do{this.m_stepOverChar(),this.m_eof()&&n("invalid token"),e=this.m_peekChar()}while(e>=Be.s_zero&&e<=Be.s_nine)}frac_(){let e=this.m_peekChar();this.m_stepOverChar(),this.m_eof()&&n("invalid token"),e=this.m_peekChar(),e>=Be.s_zero&&e<=Be.s_nine||n("invalid token"),this.digits_()}exp_(){let e=this.m_peekChar();this.m_stepOverChar(),this.m_eof()&&n("invalid token"),e=this.m_peekChar(),e!==Be.s_plus&&e!==Be.s_minus||(this.m_stepOverChar(),this.m_eof()&&n("invalid token"),e=this.m_peekChar()),e>=Be.s_zero&&e<=Be.s_nine||n("invalid token"),this.digits_()}valueNumber_(){this.m_prepSubstr();let e=!1,t=this.m_peekChar();if(t===Be.s_minus?(this.m_stepOverChar(),this.m_eof()&&n("invalid token"),t=this.m_peekChar(),e=!0,t>=Be.s_zero&&t<=Be.s_nine||n("invalid token"),this.int_()):this.int_(),t=this.m_peekChar(),t===Be.s_period)this.m_currentTokenType=7,this.frac_(),t=this.m_peekChar(),t!==Be.s_e&&t!==Be.s_E||this.exp_();else if(t===Be.s_e||t===Be.s_E)this.m_currentTokenType=7,this.exp_();else{let t=0;e&&t++;const n=this.m_endToken-this.m_startToken-t;if(n<10)this.m_currentTokenType=8;else if(10===n){const n=this.m_getCurrentSubstr();e?n.slice(t)<="2147483648"?this.m_currentTokenType=8:this.m_currentTokenType=9:n.slice(t)<="2147483647"?this.m_currentTokenType=8:this.m_currentTokenType=9}else if(n<19)this.m_currentTokenType=9;else if(19===n){const n=this.m_getCurrentSubstr();e?n.slice(t)<="9223372036854775808"?this.m_currentTokenType=9:this.m_currentTokenType=7:n.slice(t)<="9223372036854775807"?this.m_currentTokenType=9:this.m_currentTokenType=7}else this.m_currentTokenType=7}}valueNull_(){const{s:e,bDone:t}=this.m_get(5);t&&n("invalid token"),"null"!==e&&n("invalid token"),this.m_currentTokenType=10}valueTrue_(){const{s:e,bDone:t}=this.m_get(5);t&&n("invalid token"),"true"!==e&&n("invalid token"),this.m_currentTokenType=11}valueFalse_(){const{s:e,bDone:t}=this.m_get(6);t&&n("invalid token"),"false"!==e&&n("invalid token"),this.m_currentTokenType=12}valueNan_(){const{s:e,bDone:t}=this.m_get(4);t&&n("invalid token"),"NaN"!==e&&n("invalid token"),this.m_currentTokenType=7}value_(){this.m_startToken=this.m_endToken;const e=this.m_peekChar();e===Be.s_beginObject?this.valueStartObject_():e===Be.s_beginArray?this.valueStartArray_():e===Be.s_doubleQuote?this.valueString_():e===Be.s_minus||e>=Be.s_zero&&e<=Be.s_zero+9?this.valueNumber_():e===Be.s_n?this.valueNull_():e===Be.s_t?this.valueTrue_():e===Be.s_f?this.valueFalse_():e===Be.s_N?this.valueNan_():n("invalid token")}start_(){this.skipWhiteSpace_(),this.m_functionStack.pop(),this.m_functionStack.push(()=>this.accept_());const e=this.m_peekChar();e!==Be.s_beginObject&&e!==Be.s_beginArray&&n("invalid token"),this.value_()}accept_(){this.m_startToken=this.m_endToken,this.m_currentTokenType=0}}class Re{getOperatorType(){return 10404}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}supportsCurves(){return!0}execute(e,t,r,i,s,a,o){let u;"string"==typeof r?(u=new Ve({jsonString:r}),u.nextToken()):u=r,1!==u.currentToken()&&n("failed to import map geometry: start of object is expected");const m=ne(t,e,u,i,s);return new v(m)}importSpatialReference(e){const n=ie(e);return null===n&&t("failed to import spatial reference"),n}importProjectionTransformation(e,t){return r(0),{}}importDatumTransformation(e,t){return r(0),{}}static stringToGeometryType(e){return(e=e.toLowerCase()).startsWith("esrigeometry")||n("string_to_geometry_type"),e.endsWith("point")?a.enumPoint:e.endsWith("envelope")?a.enumEnvelope:e.endsWith("multipoint")?a.enumMultiPoint:e.endsWith("polyline")?a.enumPolyline:e.endsWith("polygon")?a.enumPolygon:void n("string_to_geometry_type")}}const Me=new ee,Ue=new Ce,We=new Re;function Ge(e){return Array.isArray(e)?e[0].spatialReference:e.spatialReference}function Xe(t,n=!1){if(!n&&(q(t)||K(t)||Q(t)||J(t))){const n=new v;return n.setGeometry(e(L(t))),n}const r=new $(t,{strict:!1});return r.nextToken(),We.execute(0,a.enumUnknown,r,!0,!1)}function Le(e){let t=null;return[e.map(e=>{if(null==t){const n=Ye(e);return t=n.getSpatialReference(),n.getGeometry()}return qe(e)}),t]}function Ye(e){const t=Xe(e),n=Qe(e.spatialReference);return n&&t.setSpatialReference(n),t}function qe(e){return Xe(e).getGeometry()}function Ke(e){return Xe(e,!0).getGeometry()}function Qe(e){if(null==e)return null;let t=!1;if(e instanceof Y){const{wkt2:n}=e;e=e.toJSON(),e.wkt2??=n,t=!0}(e.latestVcsWkid||e.vcsWkid)&&(t||(e={...e}),delete e?.latestVcsWkid,delete e?.vcsWkid);const n=new $(e,{strict:!1});n.nextToken();const r=We.importSpatialReference(n);return 0===r.getCoordinateSystemType()?null:r}function Je(e,t){if(e instanceof v&&(t=e.getSpatialReference(),e=e.getGeometry()),null==e||e.isEmpty())return null;let n;switch(e.getGeometryType()){case a.enumPoint:case a.enumMultiPoint:case a.enumPolyline:case a.enumPolygon:n=G(e)}if(n){const e=X(n);return e.spatialReference=Ze(t),null==e.spatialReference&&delete e.spatialReference,e}return Me.reset(),Ue.execute(0,e,t??null,Me),Me.getObject()}function Ze(e){return null==e||0===e.getCoordinateSystemType()?null:(Me.reset(),Ue.execute(0,null,e,Me),Me.getObject().spatialReference)}export{Le as fromGeometries,Ye as fromGeometry,qe as fromGeometryToGXGeometry,Ke as fromGeometryToGXGeometryUsingImportOperator,Qe as fromSpatialReference,Ge as getSpatialReference,Je as toGeometry,Ze as toSpatialReference};
2
+ import{constructFromFlatGeometry as e}from"../../../chunks/FlatGeometry.js";import{d as t,a as n,g as r,r as i,q as s,G as a,t as o}from"../../../chunks/Geometry.js";import{aL as u,i as m,d as l,b as c,aM as d,P as _,m as h}from"../../../chunks/Point2D.js";import{q as f,b as p,p as k,a_ as b,c as y,e as T,a as N,f as g,a$ as v}from"../../../chunks/UnitFactory.js";import{a2 as x,a5 as A,P as S,E as w,a0 as C,a1 as D,a6 as F,a7 as j,W as O}from"../../../chunks/Envelope.js";import{P as z,a as I,S as E,M as P,I as B,a5 as V,a6 as R,a7 as M,a8 as U,a9 as W}from"../../../chunks/MultiPathImpl.js";import{convertGeometryxToFlat as G,convertFlatToGeometryJSON as X,convertGeometryToFlat as L}from"../../FlatGeometry.js";import Y from"../../SpatialReference.js";import"./initNoPeFactory.js";import{isPoint as q,isMultipoint as K,isPolyline as Q,isPolygon as J}from"../../support/jsonTypeUtils.js";function Z(){if(-1===this.m_i)return this.m_i=0,{value:{m_token:1,m_value:null},done:!1};if(this.m_i<this.m_keys.length){const e=this.m_bReturnKey,t=Math.trunc(this.m_i);return this.m_bReturnKey=!this.m_bReturnKey,this.m_i+=.5,e?{value:{m_token:5,m_value:this.m_keys[t]},done:!1}:{value:{m_token:6,m_value:this.m_o[this.m_keys[t]]},done:!1}}return{value:{m_token:3,m_value:null},done:!0}}function H(){if(-1===this.m_i)return this.m_i=0,{value:{m_token:2,m_value:null},done:!1};if(this.m_i<this.m_a.length){const e={value:{m_token:6,m_value:this.m_a[this.m_i++]},done:!1};return this.m_strict||void 0===e.value.m_value&&(e.value.m_value=Number.NaN),e}return{value:{m_token:4,m_value:null},done:!0}}class ${m_iteratorStack;m_nextFlatToken;m_currentToken=0;m_currentValue;m_options;createJSONObjectIterator(e){return{m_iteratorType:"object",m_o:e,m_keys:this.m_options.strict?Object.keys(e):Object.keys(e).filter(t=>void 0!==e[t]),m_i:-1,m_bReturnKey:!0,next:Z}}createJSONArrayIterator(e){return{m_iteratorType:"array",m_strict:this.m_options.strict,m_i:-1,m_a:e,next:H}}constructor(e,t){this.m_options=t?{...t}:{strict:!0};const n=e;this.m_iteratorStack=[n instanceof Array?this.createJSONArrayIterator(n):this.createJSONObjectIterator(n)],this.m_nextFlatToken={m_value:null,m_token:0}}nextToken(){if(0===this.m_iteratorStack.length)return this.m_currentToken=0;switch(this.m_nextFlatToken=this.m_iteratorStack.at(-1).next().value,this.m_currentValue=void 0,this.m_nextFlatToken.m_token){case 1:return this.m_currentToken=1;case 3:return this.m_iteratorStack.pop(),this.m_currentToken=3;case 2:return this.m_currentToken=2;case 4:return this.m_iteratorStack.pop(),this.m_currentToken=4;case 5:return this.m_currentValue=this.m_nextFlatToken.m_value,this.m_currentToken=5;case 6:if(this.m_nextFlatToken.m_value instanceof Array)return this.m_iteratorStack.push(this.createJSONArrayIterator(this.m_nextFlatToken.m_value)),this.nextToken();if(this.m_nextFlatToken.m_value instanceof Object)return this.m_iteratorStack.push(this.createJSONObjectIterator(this.m_nextFlatToken.m_value)),this.nextToken();if("number"==typeof this.m_nextFlatToken.m_value)return this.m_currentValue=this.m_nextFlatToken.m_value,Number.isSafeInteger(this.m_currentValue)&&this.m_currentValue>=u()&&this.m_currentValue<=m()?this.m_currentToken=8:this.m_currentToken=7;if("string"==typeof this.m_nextFlatToken.m_value)return this.m_currentValue=this.m_nextFlatToken.m_value,this.m_currentToken=6;if("boolean"==typeof this.m_nextFlatToken.m_value)return this.m_currentValue=this.m_nextFlatToken.m_value,this.m_currentToken=this.m_nextFlatToken.m_value?11:12;if("object"==typeof this.m_nextFlatToken.m_value)return this.m_currentValue=null,this.m_currentToken=10;t("unrecognized json element type")}t("unrecognized json element type")}currentToken(){return this.m_currentToken}skipChildren(){if(0!==this.m_iteratorStack.length)switch(this.m_currentValue=void 0,this.m_nextFlatToken.m_token){case 1:return this.m_iteratorStack.pop(),this.m_nextFlatToken.m_token=3,void(this.m_currentToken=3);case 2:return this.m_iteratorStack.pop(),this.m_nextFlatToken.m_token=4,void(this.m_currentToken=4)}}currentString(){return 6!==this.m_currentToken&&5!==this.m_currentToken&&n("invalid token"),this.m_currentValue}currentDoubleValue(){return 7!==this.m_currentToken&&8!==this.m_currentToken&&n("invalid token"),this.m_currentValue}currentInt32Value(){return 8!==this.m_currentToken&&n("invalid token"),this.m_currentValue}currentInt64Value(){return r(0),0n}currentBoolValue(){return 12!==this.m_currentToken&&11!==this.m_currentToken&&n("invalid token"),this.m_currentValue}isError(){return 0}}class ee{m_pendingKey=null;m_acceptedObject=null;m_currentObject=[];reset(){this.m_pendingKey=null,this.m_acceptedObject=null,this.m_currentObject.length=0}startObject(){const e={};this.m_pendingKey?(this.m_currentObject.at(-1)[this.m_pendingKey]=e,this.m_pendingKey=null):Array.isArray(this.m_currentObject.at(-1))&&this.m_currentObject.at(-1).push(e),this.m_currentObject.push(e)}startArray(){const e=[];this.m_pendingKey?(this.m_currentObject.at(-1)[this.m_pendingKey]=e,this.m_pendingKey=null):Array.isArray(this.m_currentObject.at(-1))&&this.m_currentObject.at(-1).push(e),this.m_currentObject.push(e)}endObject(){this.m_acceptedObject=this.m_currentObject.at(-1),this.m_currentObject.pop()}endArray(){this.m_currentObject.pop()}addFieldName(e){this.m_pendingKey=e}addValue_(e){this.m_pendingKey?(this.m_currentObject.at(-1)[this.m_pendingKey]=e,this.m_pendingKey=null):this.m_currentObject.at(-1).push(e)}addString(e){this.addValue_(e)}addDouble(e,t){this.addValue_(e)}addInt64(e){r(0)}addInt32(e){this.addValue_(e)}addBool(e){this.addValue_(e)}addNull(){this.addValue_(null)}getObject(){return this.m_acceptedObject}}class te{m_buffer=null;m_view=null;m_sz=0;m_offset=0;m_bOwnsBuffer=!0;m_bLittleEndian=!0;m_element;m_elementBytes;m_elementView;m_elementDouble;m_elementFloat;m_elementInt64;m_elementInt32;m_elementInt16;constructor(e){return this.m_element=new ArrayBuffer(8),this.m_elementBytes=new Uint8Array(this.m_element),this.m_elementView=new DataView(this.m_element),this.m_elementDouble=new Float64Array(this.m_element),this.m_elementFloat=new Float32Array(this.m_element),this.m_elementInt64=new BigInt64Array(this.m_element),this.m_elementInt32=new Int32Array(this.m_element),this.m_elementInt16=new Int16Array(this.m_element),void 0!==e.sz?(this.m_sz=e.sz,e.buffer?(this.m_sz<0&&i("size out of range"),this.m_buffer=e.buffer,this.m_offset=void 0!==e.offset?e.offset:0,this.m_view=void 0!==e.offset?new DataView(e.buffer,e.offset,e.sz):new DataView(this.m_buffer),this.m_bOwnsBuffer=!1,void(this.m_bLittleEndian=!0)):(this.m_sz<0&&i("size out of range"),void(this.m_sz>0&&(this.m_buffer=new ArrayBuffer(this.m_sz),this.m_view=new DataView(this.m_buffer))))):e.move?(this.m_sz=e.move.m_sz,this.m_buffer=e.move.m_buffer,this.m_view=e.move.m_view,this.m_bOwnsBuffer=e.move.m_bOwnsBuffer,this.m_bLittleEndian=e.move.m_bLittleEndian,e.move.m_buffer=null,e.move.m_view=null,e.move.m_sz=0,void(e.move.m_bOwnsBuffer=!0)):void t("unrecognized constructor options")}swapBytesDouble(){this.doSwap()&&(this.m_elementDouble[0]=this.m_elementBytes[0]<<56|this.m_elementBytes[1]<<48|this.m_elementBytes[2]<<40|this.m_elementBytes[3]<<32|this.m_elementBytes[4]<<24|this.m_elementBytes[5]<<16|this.m_elementBytes[6]<<8|this.m_elementBytes[7])}swapBytesInt32(){this.doSwap()&&(this.m_elementInt32[0]=this.m_elementBytes[0]<<24|this.m_elementBytes[1]<<16|this.m_elementBytes[2]<<8|this.m_elementBytes[3])}getOffset(){return this.m_offset}assignMove(e){return this===e||(this.clear(),this.m_sz=e.m_sz,this.m_buffer=e.m_buffer,this.m_view=e.m_view,this.m_bOwnsBuffer=e.m_bOwnsBuffer,this.m_bLittleEndian=e.m_bLittleEndian,e.m_buffer=null,e.m_sz=0,e.m_bOwnsBuffer=!0),this}doSwap(){return this.m_bLittleEndian!==(1===te.getNativeByteOrder())}setNativeByteOrder(){this.m_bLittleEndian=1===te.getNativeByteOrder()}setOrder(e){this.m_bLittleEndian=1===e}getOrder(){return this.m_bLittleEndian?1:0}getView(){return this.m_view||s("buffer not defined"),this.m_view}static getNativeByteOrder(){return 1}clear(){this.m_buffer=null,this.m_sz=0,this.m_bOwnsBuffer=!0}size(){return this.m_sz}readDouble(e){return this.doSwap()?(this.m_elementDouble[0]=this.m_view.getFloat64(e,this.m_bLittleEndian),this.swapBytesDouble(),this.m_elementDouble[0]):this.m_view.getFloat64(e,this.m_bLittleEndian)}writeDouble(e,t){this.m_elementDouble[0]=t,this.swapBytesDouble(),this.m_view.setFloat64(e,this.m_elementDouble[0],this.m_bLittleEndian)}readInt32(e){return this.doSwap()?(this.m_elementInt32[0]=this.m_view.getInt32(e,this.m_bLittleEndian),this.swapBytesInt32(),this.m_elementInt32[0]):this.m_view.getInt32(e,this.m_bLittleEndian)}writeInt32(e,t){this.m_elementInt32[0]=t,this.swapBytesInt32(),this.m_view.setInt32(e,this.m_elementInt32[0],this.m_bLittleEndian)}getPtr(){return this.m_buffer}setSizeNoRealloc(e){r(e>=0&&e<=this.m_sz),this.m_sz=e}}function ne(e,t,i,s,o,u){let m=!1,l=!1,c=!1,d=!1,_=!1,h=!1,f=!1,p=!1,k=!1,b=!1,y=!1,T=!1,N=!1,g=!1,v=!1,C=!1,D=!1,F=!1,j=!1,O=!1,z=!1,I=!1,E=!1,P=!1,B=Number.NaN,V=Number.NaN,R=Number.NaN,M=Number.NaN,U=0,W=Number.NaN,G=Number.NaN,X=Number.NaN,L=Number.NaN,Y=Number.NaN,q=Number.NaN,K=Number.NaN,Q=Number.NaN,J=0,Z=0,H=!1,$=!1,ee=null,te=null,ne=null,re=null,ce=null;for(;3!==i.nextToken();){const u=i.currentString();if(i.nextToken(),"spatialReference"===u){if(o&&!m){m=!0,1===i.currentToken()?re=ie(i):10!==i.currentToken()&&n("failed to parse spatial reference: object or null is expected");continue}}else if(s)if("hasZ"===u){if(!l){l=!0,H=11===i.currentToken();continue}}else if("hasM"===u){if(!c){c=!0,$=11===i.currentToken();continue}}else if("rings"===u){if(!(_||h||e!==a.enumUnknown&&e!==a.enumPolygon)){_=!0,({geometry:ce,as:ee,bs:te}=se(!0,!1,t,i));continue}}else if("curveRings"===u){if(!h&&(e===a.enumUnknown||e===a.enumPolygon)){h=!0,({geometry:ce,as:ee,bs:te}=se(!0,!0,t,i));continue}}else if("paths"===u){if(!(f||p||e!==a.enumUnknown&&e!==a.enumPolyline)){f=!0,({geometry:ce,as:ee,bs:te}=se(!1,!1,t,i));continue}}else if("curvePaths"===u){if(!p&&(e===a.enumUnknown||e===a.enumPolyline)){p=!0,({geometry:ce,as:ee,bs:te}=se(!1,!0,t,i));continue}}else if("points"===u){if(!k&&(e===a.enumUnknown||e===a.enumMultiPoint)){k=!0,({geometry:ce,as:ee,bs:te}=ae(t,i));continue}}else if("ids"===u){if(!d){d=!0,ne=oe(t,i);continue}}else if("x"===u){if(!b&&(e===a.enumUnknown||e===a.enumPoint)){b=!0,B=ue(i);continue}}else if("y"===u){if(!y&&(e===a.enumUnknown||e===a.enumPoint)){y=!0,V=ue(i);continue}}else if("z"===u){if(!T&&(e===a.enumUnknown||e===a.enumPoint)){T=!0,R=ue(i);continue}}else if("m"===u){if(!N&&(e===a.enumUnknown||e===a.enumPoint)){N=!0,M=ue(i);continue}}else if("id"===u){if(!g&&(e===a.enumUnknown||e===a.enumPoint)){g=!0,U=me(i);continue}}else if("xmin"===u){if(!v&&(e===a.enumUnknown||e===a.enumEnvelope)){v=!0,W=ue(i);continue}}else if("ymin"===u){if(!C&&(e===a.enumUnknown||e===a.enumEnvelope)){C=!0,G=ue(i);continue}}else if("mmin"===u){if(!z&&(e===a.enumUnknown||e===a.enumEnvelope)){z=!0,K=ue(i);continue}}else if("zmin"===u){if(!j&&(e===a.enumUnknown||e===a.enumEnvelope)){j=!0,Y=ue(i);continue}}else if("idmin"===u){if(!E&&(e===a.enumUnknown||e===a.enumEnvelope)){E=!0,J=me(i);continue}}else if("xmax"===u){if(!D&&(e===a.enumUnknown||e===a.enumEnvelope)){D=!0,X=ue(i);continue}}else if("ymax"===u){if(!F&&(e===a.enumUnknown||e===a.enumEnvelope)){F=!0,L=ue(i);continue}}else if("mmax"===u){if(!I&&(e===a.enumUnknown||e===a.enumEnvelope)){I=!0,Q=ue(i);continue}}else if("zmax"===u){if(!O&&(e===a.enumUnknown||e===a.enumEnvelope)){O=!0,q=ue(i);continue}}else if("idmax"===u){if(!P&&(e===a.enumUnknown||e===a.enumEnvelope)){P=!0,Z=me(i);continue}}else"materials"===u&&r(0);i.skipChildren()}if(_||h||f||p||k){let e=null,t=null;const n=ce;H&&(ce.addAttribute(1),e=ee,e||(e=x(n.getPointCount(),Number.NaN))),$&&(ce.addAttribute(2),t=H?te:ee),null!=ne&&ce.addAttribute(3),H&&null!=e&&n.setAttributeStreamRef(1,e),$&&null!=t&&n.setAttributeStreamRef(2,t),null!=ne&&le(n,ne)}else if(b||y||N||T||g){A(B,V)||n("failed to parse point: x and y must be finite or nan"),(Number.isNaN(V)||Number.isNaN(B))&&(B=Number.NaN,V=Number.NaN);const e=new S({x:B,y:V});T&&e.setZ(R),N&&e.setM(M),g&&e.setID(U),ce=e}else if(v||C||D||F||j||O||z||I||E||P){(Number.isNaN(G)||Number.isNaN(X)||Number.isNaN(L))&&(W=Number.NaN);const e=new w({xmin:W,ymin:G,xmax:X,ymax:L});j&&O&&e.setInterval(1,0,Y,q),z&&I&&e.setInterval(2,0,K,Q),E&&P&&e.setInterval(3,0,J,Z),ce=e}return{...ce?{geom:ce}:{},...re?{sr:re}:{}}}function re(e){let t=!1;for(;3!==e.nextToken();){const n=e.currentString();e.nextToken(),"uwkid"===n?t||(t=!0,8===e.currentToken()&&e.currentInt32Value()):e.skipChildren()}return null}function ie(e){let t=!1,n=!1,r=!1,i=!1,s=!1,a=!1,o=!1,u=!1,m=!1,l=!1,c=!1,d=!1,_=!1,h=!1,v=!1,x=!1,A=!1,S=-1,w=-1,C=-1,D=-1,F=0,j=0,O=0,z=0,I=0,E=0,P=0,B=0,V=0,R=0,M="",U="",W=null;for(;3!==e.nextToken();){const f=e.currentString();e.nextToken(),"wkid"===f?t||(t=!0,8===e.currentToken()&&(S=e.currentInt32Value())):"latestWkid"===f?n||(n=!0,8===e.currentToken()&&(w=e.currentInt32Value())):"wkt"===f?s||(s=!0,6===e.currentToken()&&(M=e.currentString())):"wkt2"===f?s||6===e.currentToken()&&(U=e.currentString()):"vcsWkid"===f?r||(r=!0,8===e.currentToken()&&(C=e.currentInt32Value())):"latestVcsWkid"===f?i||(i=!0,8===e.currentToken()&&(D=e.currentInt32Value())):"xyTolerance"===f?o||(o=!0,a=!0,F=e.currentDoubleValue()):"zTolerance"===f?u||(u=!0,a=!0,j=e.currentDoubleValue()):"mTolerance"===f?m||(m=!0,a=!0,O=e.currentDoubleValue()):"falseX"===f?l||(l=!0,a=!0,P=e.currentDoubleValue()):"falseY"===f?c||(c=!0,a=!0,B=e.currentDoubleValue()):"falseZ"===f?d||(d=!0,a=!0,V=e.currentDoubleValue()):"falseM"===f?_||(_=!0,a=!0,R=e.currentDoubleValue()):"xyUnits"===f?h||(h=!0,a=!0,z=e.currentDoubleValue()):"zUnits"===f?v||(v=!0,a=!0,I=e.currentDoubleValue()):"mUnits"===f?x||(x=!0,a=!0,E=e.currentDoubleValue()):"unit"===f?A||(A=!0,W=re(e)):e.skipChildren()}D<=0&&C>0&&(D=C),C<=0&&D>0&&(C=D);let G=null,X=!0;if(0!==M.length&&(X=!1,f(M)&&(G=p(M))),G||0===U.length||(X=!1,f(U)&&(G=p(U))),!G&&w>0&&(X=!1,k(w)&&(D<=0||b())&&(G=y(w,D))),!G&&S>0&&(X=!1,k(S)&&(C<=0||b())&&(G=y(S,C))),X&&(G=T(W)),a&&G){const e=new N;G.queryPrecisionDescriptorWithoutFalseXY(e),o&&e.setTolerance(0,F),u&&e.setTolerance(1,j),m&&e.setTolerance(2,O),h&&l&&c&&e.setGridParams(P,B,z),v&&d&&e.setZParams(V,I),x&&_&&e.setMParams(R,E),G=g(G,e)}return G}function se(e,t,r,i){2!==i.currentToken()&&n("failed to parse multipath: array of array of vertices is expected");const s=e?new z:new I,a=s,o=C(0),u=x(2,0),m=D(0);let h=null,f=null,p=null,k=null,b=null,y=0,T=0,N=0;const g=new E,v=_.getNAN();let A=0,S=0;const w=e?1:0;for(;4!==i.nextToken();){2!==i.currentToken()&&n("failed to parse multipath: ring/path array is expected");let r=2,s=0,j=!0;const O=4;let z=0,I=0;const E=_.getNAN(),P=l(O,Number.NaN),B=l(O,Number.NaN);let V=!1;for(i.nextToken();4!==i.currentToken();){if(t&&1===i.currentToken())j&&n("failed to parse multipath: starting vertex array is expected"),p||(p=D(A-1,1),k=C(A-1,-1),b=x(0)),V=!0,r=1,({segFlag:N,toPointSz:z}=ke(g,P,v,i));else{for(V=!1,2!==i.currentToken()&&n("failed to parse multipath: array is expected, rings/paths vertices consist of arrays of coordinates"),z=0;4!==i.nextToken();)z===O&&n("failed to parse multipath: each vertex array has to have at most 4 elements"),P[z++]=ue(i);z<2&&n("failed to parse multipath: each vertex array has to have at least 2 elements"),F(P[0],P[1])||n("failed to parse multipath: x and y must be finite")}i.nextToken();do{if(u.size()===2*A&&u.resize(ce(A)),u.writePoint2D(2*A,E.setCoords(P[0],P[1])),h&&h.size()===A&&h.resize(de(A)),z>2?(h||(h=x(A+1,Number.NaN)),h.write(A,P[2])):h&&h.write(A,Number.NaN),f&&f.size()===A&&f.resize(de(A)),z>3?(f||(f=x(A+1,Number.NaN)),f.write(A,P[3])):f&&f.write(A,Number.NaN),j)S++,o.add(A),m.add(w),j=!1,I=z,c(B,P,0,0,I);else if(null!==p)if(V){const e=W(N),t=b.size();b.resize(t+e),p.add(N),k.add(y),g.get().writeInBufferStream(b,y),y+=e,a.incCurveType(N,1),T++}else p.add(1),k.add(-1);A++,s++,v.setCoords(P[0],P[1])}while(s<r&&4===i.currentToken())}0!==s&&(e&&s>r&&z===I&&0===d(P,B,z)?(A--,s--):null!==p&&(p.add(1),k.add(-1)))}return A&&(o.resize(S),m.resize(S),A>0&&(o.add(A),m.add(0)),a.setAttributeStreamRef(0,u),a.setPathFlagsStreamRef(m),a.setPathStreamRef(o),null!==p&&(a.updateCurveCounter(T),a.setSegmentData(k,b,p,y)),a.notifyModifiedFlags(65535)),{geometry:s,as:h,bs:f}}function ae(e,t){2!==t.currentToken()&&n("failed to parse multipoint: array of vertices is expected");let r=0;const i=new P,s=x(2,0);let a=0;const o=4,u=l(o,Number.NaN),m=new _;let c=null,d=null;for(;4!==t.nextToken();){for(2!==t.currentToken()&&n("failed to parse multipoint: array is expected, multipoint vertices consist of arrays of cooridinates"),a=0;4!==t.nextToken();)a===o&&n("failed to parse multipoint: each vertex array has to have at most 4 elements"),u[a++]=ue(t);a<2&&n("failed to parse multipoint: each vertex array has to have at least 2 elements"),F(u[0],u[1])||n("failed to parse multipoint: x and y must be finite"),s.size()===2*r&&s.resize(ce(r)),s.writePoint2D(2*r,m.setCoords(u[0],u[1])),c&&c.size()===r&&c.resize(de(r)),a>2?(c||(c=x(r+1,Number.NaN)),c.write(r,u[2])):c&&c.write(r,Number.NaN),d&&d.size()===r&&d.resize(de(r)),a>3?(d||(d=x(r+1,Number.NaN)),d.write(r,u[3])):d&&d.write(r,Number.NaN),r++}if(r){const e=i.getImpl();e.setAttributeStreamRef(0,s),e.resizeNoInit(r),e.notifyModifiedFlags(65535)}return{geometry:i,as:c,bs:d}}function oe(e,t){2!==t.currentToken()&&n("failed to parse array of IDs: array of array of integers is expected");const r=j(2,0);let i=0,s=-1;for(;4!==t.nextToken();){const e=i;r.size()===i&&r.resize(de(i)),i++;let a=0;for(-1===s?s=2===t.currentToken()?1:0:1===s&&2!==t.currentToken()&&n("failed to parse array of IDs: array of array of integers is expected"),0===s&&(r.size()===i&&r.resize(de(i)),r.write(i,me(t)),a++,i++);4!==t.nextToken();)r.size()===i&&r.resize(de(i)),r.write(i,me(t)),a++,i++;if(r.write(e,a),0===s)break}return r.resize(i),r}function ue(e){const t=e.currentToken();if(10===t||6===t&&"NaN"===e.currentString())return Number.NaN;{const t=e.currentDoubleValue();return Number.isNaN(t)?Number.NaN:t}}function me(e){return e.currentInt32Value()}function le(e,n){if(e.isEmpty())return;const r=j(2,0),i=e.getGeometryType();let s=0;i===P.type?s=1:i===I.type||i===z.type?s=e.getPathCount():t("not implemented"),r.resize(e.getPointCount(),0);let a=0;for(let o=0;o<s;++o){const s=n.read(a);a++;const u=a+s;let m=0,l=0;i===P.type?m=e.getPointCount():i===I.type||i===z.type?(m=e.getPathSize(o),l=e.getPathStart(o)):t("not implemented");for(let e=0,t=Math.min(s,m);e<t;++e)r.write(l,n.read(a)),a++,l++;a=u}e.getImpl().setAttributeStreamRef(3,r)}function ce(e){let t=2*Math.trunc(3*(e+1)/2);return t<8?t=8:t<32&&(t=32),t}function de(e){let t=Math.trunc(3*(e+1)/2);return t<4?t=4:t<16&&(t=16),t}function _e(e,t,n,r,s){s>=r.size()&&i("Byte_buffer out of range access"),e.m_bits=0,e.m_rotation=0,e.m_cosr=1,e.m_sinr=0,e.setStartXY(t),e.setEndXY(n);const a=_.getNAN();a.x=r.readDouble(s),a.y=r.readDouble(s+8);const o=r.readInt32(s+16);if(!!(1&o))return e.m_semiMajorAxis=0,e.m_minorMajorRatio=1,e.m_interior.assign(a),e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0,R(e),!1;let u=!!(64&o);const m=!!(128&o);let l=!!(32&o);const c=!!(8&o),d=!!(16&o),h=t.equals(n);return u&&!h&&(u=!1,l=!0),l&&h&&(u=!0,l=!1,a.setCoords(0,0)),u||(m?l?(e.m_semiMajorAxis=1,e.m_minorMajorRatio=0,e.m_interior.assign(a),e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0):(e.constructCircularArcThreePoint(t,n,a),h&&c===e.isClockwise()&&e.reverse()):l?(e.m_semiMajorAxis=1,e.m_minorMajorRatio=0,e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0,R(e),e.queryCoord2D(.5,e.m_interior)):M(e,t,n,a,c,d)),u&&(e.m_center.assign(t),e.m_startAngle=a.x,e.m_sweepAngle=a.y,U(e,Number.NaN,c,d),e.m_semiMajorAxis=0,e.m_minorMajorRatio=1,e.m_interior.setCoordsPoint2D(t)),e.setProjectionBehavior(0),R(e),!0}function he(e,t,n,r,i){e.m_bits=0,e.m_center.x=r.readDouble(i),e.m_center.y=r.readDouble(i+8),e.m_rotation=r.readDouble(i+16),e.m_semiMajorAxis=r.readDouble(i+24),e.m_minorMajorRatio=r.readDouble(i+32),e.m_XStart=t.x,e.m_YStart=t.y,e.m_XEnd=n.x,e.m_YEnd=n.y;const s=r.readInt32(i+40);if(1&s)return!1;let a=!!(64&s),o=!!(128&s);const u=!!(2048&s),m=!!(4096&s);return!!!(512&s)&&!!!(1024&s)||o||(a=!0),o&&!t.equals(n)?(o=!1,a=!0):a&&t.equals(n)&&(o=!0,a=!1),o?(e.m_center.assign(t),e.m_startAngle=e.m_center.x,e.m_sweepAngle=e.m_center.y,U(e,Number.NaN,u,m),e.m_semiMajorAxis=0,e.m_interior.setCoordsPoint2D(t)):a?(e.m_center.setNAN(),e.m_semiMajorAxis=1,e.m_minorMajorRatio=0,e.m_center.setNAN(),e.m_sweepAngle=0,e.m_startAngle=0,R(e),e.queryCoord2D(.5,e.m_interior)):e.constructEllipticArcEndPointsCenter(t,n,e.m_semiMajorAxis,e.m_minorMajorRatio,e.m_rotation,!m,u,e.m_center),e.setProjectionBehavior(1),R(e),!0}function fe(e,t,n,i,s){return r(s+32<=i.size()),e.m_cp=h(_,2),e.m_cp[0].x=i.readDouble(s),e.m_cp[0].y=i.readDouble(s+8),e.m_cp[1].x=i.readDouble(s+16),e.m_cp[1].y=i.readDouble(s+24),e.m_XStart=t.x,e.m_YStart=t.y,e.m_XEnd=n.x,e.m_YEnd=n.y,!0}function pe(e,t,n,r,i){return e.m_cp.x=r.readDouble(i),e.m_cp.y=r.readDouble(i+8),e.m_weights[0]=r.readDouble(i+16),e.m_weights[1]=r.readDouble(i+24),e.m_weights[2]=r.readDouble(i+32),e.m_XStart=t.x,e.m_YStart=t.y,e.m_XEnd=n.x,e.m_YEnd=n.y,!0}function ke(e,t,r,i,s){const a={segFlag:0,toPointSz:0};let o=i.currentToken();o=i.nextToken();const u=i.currentString(),m=u[0];for((1!==u.length||"a"!==m&&"b"!==m&&"c"!==m&&"n"!==m&&"q"!==m)&&n('failed to parse curve: expecting "a", "b", "n", "q", or "c"'),o=i.nextToken(),2!==o&&n("failed to parse curve: start array is expected for curve parameters"),o=i.nextToken(),2!==o&&n("failed to parse curve: start array is expected for to point"),a.toPointSz=0;4!==i.nextToken();)4===a.toPointSz&&n("failed to parse curve: vertex array cannot have more than 4 elements"),t[a.toPointSz++]=ue(i);a.toPointSz<2&&n("failed to parse curve: vertex array must have at least 2 elements");const l=_.construct(t[0],t[1]),c=_.getNAN();let d=-1,h=-1,f=!1,p=Number.NaN,k=Number.NaN,b=Number.NaN;const y=[_.getNAN(),_.getNAN(),_.getNAN()],T=_.getNAN();if("a"===m){o=i.nextToken(),2!==o&&n("failed to parse curve: start array is expected for center point"),o=i.nextToken();const e=ue(i);o=i.nextToken();const t=ue(i);o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for center point"),c.setCoords(e,t),o=i.nextToken(),d=i.currentInt32Value(),o=i.nextToken(),h=i.currentInt32Value(),o=i.nextToken(),4!==o?(f=!1,p=ue(i),o=i.nextToken(),k=ue(i),o=i.nextToken(),b=ue(i),o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for curve parameters")):f=!0,a.segFlag=4}else if("b"===m){for(let e=0;e<2;e++){o=i.nextToken(),2!==o&&n("failed to parse curve: start array is expected for control point"),o=i.nextToken();const t=ue(i);o=i.nextToken();const r=ue(i);o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for control point"),y[e].setCoords(t,r)}o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for curve parameters"),a.segFlag=2}else if("n"===m){{o=i.nextToken(),2!==o&&n("failed to parse curve: start array is expected for control point"),o=i.nextToken();const e=ue(i);o=i.nextToken();const t=ue(i);o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for control point"),y[0].setCoords(e,t)}o=i.nextToken();const e=ue(i);o=i.nextToken();const t=ue(i);o=i.nextToken();const r=ue(i);y[1].setCoords(e,t),y[2].setCoords(r,r),o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for curve parameters"),a.segFlag=8}else if("q"===m){for(let e=0;e<1;e++){o=i.nextToken(),2!==o&&n("failed to parse curve: start array is expected for control point"),o=i.nextToken();const t=ue(i);o=i.nextToken();const r=ue(i);o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for control point"),y[e].setCoords(t,r)}o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for curve parameters"),a.segFlag=16}else{o=i.nextToken(),2!==o&&n("failed to parse curve: start array is expected for interior point"),o=i.nextToken();const e=ue(i);o=i.nextToken();const t=ue(i);o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for interior point"),T.setCoords(e,t),o=i.nextToken(),4!==o&&n("failed to parse curve: end array is expected for curve parameters"),a.segFlag=4}if(o=i.nextToken(),3!==o&&n("failed to parse curve: end object is expected for curve"),"a"===m)if(e.createEllipticArc(),f){const t=!0;be(e.get(),r,l,c,t,d,h)}else ye(e.get(),r,l,c,d,h,p,k,b);else if("b"===m)e.createCubicBezier(),Te(e.get(),r,l,y);else if("n"===m)e.createQuadraticRationalBezier(),Ne(e.get(),r,l,y[0],y[1].x,y[1].y,y[2].x);else if("q"===m)e.createQuadraticBezier(),e.get().construct(r,y[0],l);else{e.createEllipticArc();const t=!1;be(e.get(),r,l,T,t,-1,-1)}return a}function be(e,t,n,r,i,s,a){e.dropAllAttributes();const o=20,u=new ArrayBuffer(o),m=new te({sz:o,buffer:u});let l=0;m.writeDouble(l,r.x),l+=8,m.writeDouble(l,r.y),l+=8;let c=0;i?(a||(c|=8),s&&(c|=16)):c|=128,m.writeInt32(l,c),l+=4,_e(e,t,n,m,0)}function ye(e,t,n,r,i,s,a,o,u){e.dropAllAttributes();const m=44,l=new ArrayBuffer(m),c=new te({sz:m,buffer:l});let d=0;c.writeDouble(d,r.x),d+=8,c.writeDouble(d,r.y),d+=8,c.writeDouble(d,a),d+=8,c.writeDouble(d,o),d+=8,c.writeDouble(d,u),d+=8;let _=0;s||(_|=2048),i&&(_|=4096),c.writeInt32(d,_),d+=4,he(e,t,n,c,0)}function Te(e,t,n,r){e.dropAllAttributes();const i=32,s=new ArrayBuffer(i),a=new te({sz:i,buffer:s});let o=0;a.writeDouble(o,r[0].x),o+=8,a.writeDouble(o,r[0].y),o+=8,a.writeDouble(o,r[1].x),o+=8,a.writeDouble(o,r[1].y),o+=8,fe(e,t,n,a,0)}function Ne(e,t,n,r,i,s,a){e.dropAllAttributes();const o=40,u=new ArrayBuffer(o),m=new te({sz:o,buffer:u});let l=0;m.writeDouble(l,r.x),l+=8,m.writeDouble(l,r.y),l+=8,m.writeDouble(l,i),l+=8,m.writeDouble(l,s),l+=8,m.writeDouble(l,a),l+=8,pe(e,t,n,m,0)}function ge(e,t,n,r,i){const s=e.getGeometryType();if(s===a.enumEllipticArc)return ve(e,t,n,r,i);if(s===a.enumBezier)return xe(e,t,n,r,i);if(s===a.enumRationalBezier2)return Ae(e,t,n,r,i);if(s===a.enumBezier2){const s=new B;return s.constructFromQuadraticSegment(e),xe(s,t,n,r,i)}o("")}function ve(e,t,n,i,s){r(!V(e));const a=e.getEndXY(),o=e.hasAttribute(1)&&!t,u=e.hasAttribute(2)&&!n;let m=Number.NaN,l=Number.NaN;if(o&&(m=e.getEndAttributeAsDbl(1,0)),u&&(l=e.getEndAttributeAsDbl(2,0)),e.isDegenerateToLine()||e.isDegenerate(0))return Se(o,u,a.x,a.y,m,l,i,s),!0;const c=0===e.projectionBehavior(),d=!!c&&e.isClosed();if(c&&!d)s.startObject(),s.addFieldName("c"),s.startArray(),Se(o,u,a.x,a.y,m,l,i,s),we(e.m_interior.x,e.m_interior.y,17,s),s.endArray(),s.endObject();else if(c){s.startObject(),s.addFieldName("a"),s.startArray(),Se(o,u,a.x,a.y,m,l,i,s);const t=0,n=0;we(e.m_center.x+t,e.m_center.y+n,17,s);const r=!e.isMajor();s.addInt32(r?1:0);const c=e.isClockwise();s.addInt32(c?1:0),s.endArray(),s.endObject()}else{s.startObject(),s.addFieldName("a"),s.startArray(),Se(o,u,a.x,a.y,m,l,i,s);const t=e;we(t.m_center.x,t.m_center.y,17,s);const n=!t.isMajor();s.addInt32(n?1:0);const r=t.isClockwise();s.addInt32(r?1:0),s.addDouble(t.m_rotation,17),s.addDouble(t.m_semiMajorAxis,17),s.addDouble(t.m_minorMajorRatio,17),s.endArray(),s.endObject()}return!1}function xe(e,t,n,r,i){const s=e.getEndXY(),a=e.hasAttribute(1)&&!t,o=e.hasAttribute(2)&&!n;let u=Number.NaN,m=Number.NaN;return a&&(u=e.getEndAttributeAsDbl(1,0)),o&&(m=e.getEndAttributeAsDbl(2,0)),i.startObject(),i.addFieldName("b"),i.startArray(),Se(a,o,s.x,s.y,u,m,r,i),we(e.m_cp[0].x,e.m_cp[0].y,r,i),we(e.m_cp[1].x,e.m_cp[1].y,r,i),i.endArray(),i.endObject(),!1}function Ae(e,t,n,r,i){const s=e.getEndXY(),a=e.hasAttribute(1)&&!t,o=e.hasAttribute(2)&&!n;let u=Number.NaN,m=Number.NaN;a&&(u=e.getEndAttributeAsDbl(1,0)),o&&(m=e.getEndAttributeAsDbl(2,0)),i.startObject(),i.addFieldName("n"),i.startArray(),Se(a,o,s.x,s.y,u,m,r,i),we(e.m_cp.x,e.m_cp.y,r,i);const l=r;return i.addDouble(e.m_weights[0],l),i.addDouble(e.m_weights[1],l),i.addDouble(e.m_weights[2],l),i.endArray(),i.endObject(),!1}function Se(e,t,n,r,i,s,a,o){o.startArray(),o.addDouble(n,a),o.addDouble(r,a),e&&o.addDouble(i,a),t&&o.addDouble(s,a),o.endArray()}function we(e,t,n,r){r.startArray(),r.addDouble(e,n),r.addDouble(t,n),r.endArray()}class Ce{getOperatorType(){return 10405}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}supportsCurves(){return!0}execute(e,t,n,r,i,s){De(e,t,n,r)}exportSpatialReference(e,t,n,i){r(0)}exportProjectionTransformation(e,t,n,i){r(0)}exportDatumTransformation(e,t,n,i){r(0)}static geometryTypeToString(e){return r(0),""}}function De(e,n,i,s,o){if(n||i){if(s.startObject(),null!==n){switch(n.getGeometryType()){case a.enumPolygon:Fe(!0,e,n,s);break;case a.enumPolyline:Fe(!1,e,n,s);break;case a.enumMultiPoint:je(e,n,s);break;case a.enumPoint:Oe(e,n,s);break;case a.enumEnvelope:ze(e,n,s);break;case a.enumMultipatch:r(0);break;default:t("exportToJSON")}}null!==i&&(s.addFieldName("spatialReference"),Ee(e,i,s)),s.endObject()}}function Fe(e,t,n,i){const s=n.getImpl(),a=!!(2&t),u=!!(4&t),m=!!(8&t),l=s.hasAttribute(1)&&!a,c=s.hasAttribute(2)&&!u,d=s.hasAttribute(3)&&!m,_=s.hasNonLinearSegments();l&&(i.addFieldName("hasZ"),i.addBool(!0)),c&&(i.addFieldName("hasM"),i.addBool(!0)),e?_?i.addFieldName("curveRings"):i.addFieldName("rings"):_?i.addFieldName("curvePaths"):i.addFieldName("paths");let h=null;const f=[];if(n.isEmpty())i.startArray(),i.endArray();else{const e=17-(31&t>>13);i.startArray();const r=n.getPathCount();let m=0;const p=s.getAttributeStreamRef(0);let k=null,b=null,y=null;const T=new E;let N=null,g=null,v=null;_&&(N=s.getSegmentFlagsStreamRef(),g=s.getSegmentIndexStreamRef(),v=s.getSegmentDataStreamRef()),l&&(k=s.getAttributeStreamRef(1)),c&&(b=s.getAttributeStreamRef(2)),d&&(y=s.getAttributeStreamRef(3),h=O(3,0));for(let t=0;t<r;t++){i.startArray(),d&&f.push(0);const r=n.getPathEnd(t);if(m===r){i.endArray();continue}const s=n.isClosedPath(t);let _=p.read(2*m),x=p.read(2*m+1),A=l?k.read(m):Number.NaN,S=c?b.read(m):Number.NaN,w=d?y.read(m):0;Pe(l,c,_,x,A,S,e,i);let C=1;d&&(h.add(w),f[f.length-1]++);const D=_,F=x,j=A,O=S,z=w;let I=!1,E=0,P=Number.NaN,B=Number.NaN,V=0;for(let t=m+1,n=m,R=s?r+1:r;t<R;t++,n++){const s=null!==N?31&N.read(n):1;let m,R;if(t<r?(m=p.read(2*t),R=p.read(2*t+1),l&&(P=k.read(t)),c&&(B=b.read(t)),d&&(V=y.read(t))):(m=D,R=F,P=j,B=O,V=z),1!==s){I=!0,4===s?T.createEllipticArc():2===s?T.createCubicBezier():16===s?T.createQuadraticBezier():8===s?T.createQuadraticRationalBezier():o("JSON export.unsupported curve");const t=T.get(),r=g.read(n);t.setStartXYCoords(_,x),t.setEndXYCoords(m,R),l&&(t.setStartAttribute(1,0,A),t.setEndAttribute(1,0,P)),c&&(t.setStartAttribute(2,0,S),t.setEndAttribute(2,0,B)),t.readFromBufferStream(v,r);ge(T.get(),a,u,e,i)&&E++}else Pe(l,c,m,R,P,B,e,i);d&&(h.add(V),f[f.length-1]++),C++,_=m,x=R,A=P,S=B,w=V}I&&0===E||(C<2&&E<1&&(Pe(l,c,_,x,A,S,e,i),C++,d&&(h.add(w),f[f.length-1]++)),s&&C<3&&E<2&&(Pe(l,c,D,F,j,O,e,i),C++,_=D,x=F,A=j,S=O,w=z,d&&(h.add(z),f[f.length-1]++))),i.endArray(),m=r}i.endArray()}if(d){i.addFieldName("ids"),i.startArray();let e=0;for(let t=0,n=f.length;t<n;++t){const n=f[t];r(0===n||null!==h&&e+n<=h.size()),i.startArray();for(let t=0;t<n;++t)i.addInt32(h.read(e)),e++;i.endArray()}i.endArray()}}function je(e,t,n){const i=t.getImpl(),s=i.hasAttribute(1)&&!(2&e),a=i.hasAttribute(2)&&!(4&e),o=i.hasAttribute(3)&&!(8&e);s&&(n.addFieldName("hasZ"),n.addBool(!0)),a&&(n.addFieldName("hasM"),n.addBool(!0)),n.addFieldName("points");const u=t.getPointCount();if(t.isEmpty())n.startArray(),n.endArray();else{const t=17-(31&e>>13);n.startArray();const r=i.getAttributeStreamRef(0);let o=null,m=null;s&&(o=i.getAttributeStreamRef(1)),a&&(m=i.getAttributeStreamRef(2));for(let e=0;e<u;e++){const i=r.read(2*e),u=r.read(2*e+1);let l=Number.NaN,c=Number.NaN;s&&(l=o.read(e)),a&&(c=m.read(e)),Pe(s,a,i,u,l,c,t,n)}n.endArray()}if(o){let e=null;i.isEmpty()||(e=i.getAttributeStreamRef(3)),r(0===u||null!==e&&e.size()>=u),n.addFieldName("ids"),n.startArray();for(let t=0;t<u;t++)n.addInt32(e.read(t));n.endArray()}}function Oe(e,t,n){const r=t.hasAttribute(1)&&!(2&e),i=t.hasAttribute(2)&&!(4&e),s=t.hasAttribute(3)&&!(8&e);if(t.isEmpty())return n.addFieldName("x"),n.addNull(),n.addFieldName("y"),n.addNull(),r&&(n.addFieldName("z"),n.addNull()),i&&(n.addFieldName("m"),n.addNull()),void(s&&(n.addFieldName("id"),n.addInt32(0)));const a=17-(31&e>>13);n.addFieldName("x"),n.addDouble(t.getX(),a),n.addFieldName("y"),n.addDouble(t.getY(),a),r&&(n.addFieldName("z"),n.addDouble(t.getZ(),a)),i&&(n.addFieldName("m"),n.addDouble(t.getM(),a)),s&&(n.addFieldName("id"),n.addInt32(t.getID()))}function ze(e,t,n){const r=t.hasAttribute(1)&&!(2&e),i=t.hasAttribute(2)&&!(4&e),s=t.hasAttribute(3)&&!(8&e);if(t.isEmpty())return n.addFieldName("xmin"),n.addNull(),n.addFieldName("ymin"),n.addNull(),n.addFieldName("xmax"),n.addNull(),n.addFieldName("ymax"),n.addNull(),r&&(n.addFieldName("zmin"),n.addNull(),n.addFieldName("zmax"),n.addNull()),i&&(n.addFieldName("mmin"),n.addNull(),n.addFieldName("mmax"),n.addNull()),void(s&&(n.addFieldName("idmin"),n.addInt32(0),n.addFieldName("idmax"),n.addInt32(0)));const a=17-(31&e>>13);if(n.addFieldName("xmin"),n.addDouble(t.getXMin(),a),n.addFieldName("ymin"),n.addDouble(t.getYMin(),a),n.addFieldName("xmax"),n.addDouble(t.getXMax(),a),n.addFieldName("ymax"),n.addDouble(t.getYMax(),a),r){const e=t.queryInterval(1,0);n.addFieldName("zmin"),n.addDouble(e.vmin,a),n.addFieldName("zmax"),n.addDouble(e.vmax,a)}if(i){const e=t.queryInterval(2,0);n.addFieldName("mmin"),n.addDouble(e.vmin,a),n.addFieldName("mmax"),n.addDouble(e.vmax,a)}if(s){const e=t.queryInterval(3,0);n.addFieldName("idmin"),n.addInt32(e.vmin),n.addFieldName("idmax"),n.addInt32(e.vmax)}}function Ie(e,t,r){r.startObject();const i=t.getID();i<=0&&n("cannot export unit that has no valid WKID"),r.addFieldName("uwkid"),r.addInt32(i),r.endObject()}function Ee(e,t,n){n.startObject();let r=0;t.isCustomWkid()||(r=t.getOldID());let i=0;const s=t.getVCS();if(null!==s&&(s.isCustomWkid()||(i=s.getOldID()),i<=0&&(r=0)),r>0){n.addFieldName("wkid"),n.addInt32(r);const e=t.getLatestID();if(e>0&&e!==r&&(n.addFieldName("latestWkid"),n.addInt32(e)),i>0){n.addFieldName("vcsWkid"),n.addInt32(i);const e=t.getLatestVerticalID();e!==i&&(n.addFieldName("latestVcsWkid"),n.addInt32(e))}}if(0===t.getCoordinateSystemType())n.addFieldName("wkid"),n.addNull(),null!==t.getUnit()&&(n.addFieldName("unit"),Ie(e,t.getUnit(),n));else if(r<=0||1&e){let r="";64&e&&(r=t.getText2(),n.addFieldName("wkt2"),n.addString(r));const i=t.getText();i!==r&&(n.addFieldName("wkt"),n.addString(i))}if(16&e){const e=new N;t.queryPrecisionDescriptor(e),n.addFieldName("xyTolerance"),n.addDouble(e.getTolerance(0)),n.addFieldName("zTolerance"),n.addDouble(e.getTolerance(1)),n.addFieldName("mTolerance"),n.addDouble(e.getTolerance(2)),n.addFieldName("falseX"),n.addDouble(e.getFalseX()),n.addFieldName("falseY"),n.addDouble(e.getFalseY()),n.addFieldName("xyUnits"),n.addDouble(e.getGridUnitsXY()),n.addFieldName("falseZ"),n.addDouble(e.getFalseZ()),n.addFieldName("zUnits"),n.addDouble(e.getGridUnitsZ()),n.addFieldName("falseM"),n.addDouble(e.getFalseM()),n.addFieldName("mUnits"),n.addDouble(e.getGridUnitsM())}n.endObject()}function Pe(e,t,n,r,i,s,a,o){o.startArray(),o.addDouble(n,a),o.addDouble(r,a),e&&o.addDouble(i,a),t&&o.addDouble(s,a),o.endArray()}const Be={s_a:"a".charCodeAt(0),s_A:"A".charCodeAt(0),s_asterisk:"*".charCodeAt(0),s_b:"b".charCodeAt(0),s_backslash:"\\".charCodeAt(0),s_beginArray:"[".charCodeAt(0),s_beginObject:"{".charCodeAt(0),s_colon:":".charCodeAt(0),s_period:".".charCodeAt(0),s_comma:",".charCodeAt(0),s_doubleQuote:'"'.charCodeAt(0),s_endArray:"]".charCodeAt(0),s_endObject:"}".charCodeAt(0),s_e:"e".charCodeAt(0),s_E:"E".charCodeAt(0),s_f:"f".charCodeAt(0),s_F:"F".charCodeAt(0),s_forwardslash:"/".charCodeAt(0),s_minus:"-".charCodeAt(0),s_plus:"+".charCodeAt(0),s_n:"n".charCodeAt(0),s_N:"N".charCodeAt(0),s_r:"r".charCodeAt(0),s_t:"t".charCodeAt(0),s_u:"u".charCodeAt(0),s_zero:"0".charCodeAt(0),s_nine:"9".charCodeAt(0)};class Ve{m_jsonString;m_endToken;m_startToken;m_currentTokenType;m_bHasEscapes;m_functionStack=[];m_pushPositions=[];m_utf8Decoder=new TextDecoder("utf-8",{fatal:!0});m_prepSubstr;m_getCurrentSubstr;m_stepOverChar;m_peekChar;m_get;m_increment;m_eof;constructor(e){void 0===e?(this.m_startToken=Number.MAX_SAFE_INTEGER,this.m_endToken=0,this.m_currentTokenType=0,this.m_functionStack.push(()=>this.accept_()),this.m_jsonString=null,this.m_bHasEscapes=!1):e.jsonString?this.resetParserFromString(e.jsonString):e.jsonStream?o("streaming json parsing not yet impl"):t("invalid constructor parameter")}prepSubstrString_(){}getCurrentSubstrString_(){return this.m_jsonString.slice(this.m_startToken,this.m_endToken)}stepOverCharString_(){this.m_endToken++}peekCharString_(){return this.m_jsonString.charCodeAt(this.m_endToken)}getString_(e){const t=this.m_jsonString?.slice(this.m_startToken,this.m_startToken+e-1);this.m_endToken+=e-1;return{s:t,bDone:this.m_endToken>=this.m_jsonString.length}}incrementString_(){this.m_endToken++}eofString_(){return this.m_endToken>=this.m_jsonString.length}setStringFunctions_(){this.m_prepSubstr=this.prepSubstrString_,this.m_getCurrentSubstr=this.getCurrentSubstrString_,this.m_stepOverChar=this.stepOverCharString_,this.m_peekChar=this.peekCharString_,this.m_get=this.getString_,this.m_increment=this.incrementString_,this.m_eof=this.eofString_}setStreamFunctions_(){o("streaming json parsing not yet impl")}reset_(){this.m_jsonString=null,this.m_endToken=0,this.m_startToken=Number.MAX_SAFE_INTEGER,this.m_currentTokenType=0,this.m_bHasEscapes=!1,this.m_functionStack.length=0,this.m_functionStack.push(()=>this.start_()),this.m_pushPositions.length=0}resetParserFromString(e){this.reset_(),this.setStringFunctions_(),this.m_jsonString=e}resetParserFromStream(e){o("streaming json parsing not yet impl")}resetToPosition(e){return!!this.m_jsonString&&(this.m_endToken=e,this.m_startToken=Number.MAX_VALUE,this.m_currentTokenType=0,this.m_functionStack.length=0,e>=this.m_jsonString.length?(this.m_functionStack.push(()=>this.accept_()),!1):(this.m_functionStack.push(()=>this.start_()),!0))}nextToken(){return this.m_functionStack.at(-1)(),this.m_currentTokenType}currentToken(){return this.m_currentTokenType}currentTokenStartIndex(){return this.m_startToken}currentTokenEndIndex(){return this.m_endToken}currentText(){return r(0),""}childrenAsString(){return r(0),""}skipChildren(){this.skipChildren_()}skipChildren_(){if(1===this.m_currentTokenType){let e=1;do{this.m_currentTokenType=this.nextToken(),1===this.m_currentTokenType?e++:3===this.m_currentTokenType&&e--}while(3!==this.m_currentTokenType||0!==e);return}if(2===this.m_currentTokenType){let e=1;do{this.m_currentTokenType=this.nextToken(),2===this.m_currentTokenType?e++:4===this.m_currentTokenType&&e--}while(4!==this.m_currentTokenType||0!==e);return}}currentTerminalAsString_(){switch(this.m_currentTokenType){case 7:case 8:case 9:return this.m_getCurrentSubstr().slice(0,this.m_endToken-this.m_startToken);case 10:return"null";case 11:return"true";case 12:return"false"}n("invalid token")}toUTF8_(e,t){let n=0,r=e;for(;t.charCodeAt(r)===Be.s_backslash&&t.charCodeAt(r+1)===Be.s_u;)n++,r+=6;r=e;const i=new Uint8Array(n);let s=0;for(;t.charCodeAt(r)===Be.s_backslash&&t.charCodeAt(r+1)===Be.s_u;)i[s++]=Number.parseInt(t.slice(r+2,r+6),16),r+=6;return{u8s:this.m_utf8Decoder.decode(i),end:r}}unquoteCurrentString_(){let e="",t=1;const n=this.m_endToken-this.m_startToken-1;let r=0;const i=this.m_getCurrentSubstr();for(let s=t;s<n;s++)if(i.charCodeAt(s)!==Be.s_backslash)r++;else{switch(r>0&&(e+=i.slice(t,t+r)),i.charCodeAt(++s)){case Be.s_doubleQuote:e+='"';break;case Be.s_u:{const{u8s:t,end:n}=this.toUTF8_(s-1,i);s=n-1,e+=t;break}case Be.s_backslash:e+="\\";break;case Be.s_forwardslash:e+="/";break;case Be.s_b:e+="\b";break;case Be.s_f:e+="\f";break;case Be.s_n:e+="\n";break;case Be.s_r:e+="\r";break;case Be.s_t:e+="\t"}t=s+1,r=0}return r>0&&(e+=i.slice(t,t+r)),e}currentString(){if(5!==this.m_currentTokenType&&6!==this.m_currentTokenType)return this.currentTerminalAsString_();if(this.m_bHasEscapes)return this.unquoteCurrentString_();return this.m_getCurrentSubstr().slice(1,this.m_endToken-this.m_startToken-2+1)}currentDoubleValue(){if(7!==this.m_currentTokenType&&8!==this.m_currentTokenType&&9!==this.m_currentTokenType&&6!==this.m_currentTokenType&&10!==this.m_currentTokenType&&n("invalid token"),10===this.m_currentTokenType)return Number.NaN;let e=this.m_getCurrentSubstr(),t=this.m_endToken-this.m_startToken;if(6===this.m_currentTokenType){if("NaN"===this.currentString())return Number.NaN;e=e.slice(1),t-=2,0===t&&n("invalid token")}const r=Number.parseFloat(e);if(6===this.m_currentTokenType)Number.isNaN(r)&&n("invalid token");else if(Number.isNaN(r))return Number.NaN;return r}currentInt32Value(){8!==this.m_currentTokenType&&6!==this.m_currentTokenType&&n("invalid token");let e=this.m_getCurrentSubstr(),t=this.m_endToken-this.m_startToken;6===this.m_currentTokenType&&(e=e.slice(1),t-=2,0===t&&n("invalid token"));const r=parseInt(e);return Number.isNaN(r)&&n("invalid token"),r}currentInt64Value(){return r(0),0n}currentBoolValue(){return r(0),!1}isError(){return 0}JSONString(){return r(0),""}pushPosition(){return r(0),!1}popPosition(){return r(0),!1}skipCStyleComments_(){r(0)}skipCppStyleComments_(){r(0)}skipComments_(){this.m_prepSubstr();let e=this.m_peekChar();this.m_stepOverChar(),this.m_eof()&&n("invalid token"),e=this.m_peekChar(),e===Be.s_asterisk?this.skipCStyleComments_():e===Be.s_forwardslash?this.skipCppStyleComments_():n("invalid token")}skipWhiteSpace_(){let e;do{this.m_eof()&&n("invalid token");let t=this.m_peekChar();for(;t>=9&&t<=13||32===t;)this.m_increment(),this.m_eof()&&n("invalid token"),t=this.m_peekChar();t===Be.s_forwardslash?(this.m_startToken=this.m_endToken,e=!0,this.skipComments_()):e=!1}while(e)}rightBracket_(){return this.m_peekChar()===Be.s_endArray&&(this.m_startToken=this.m_endToken,this.m_increment(),this.m_currentTokenType=4,!0)}rightBrace_(){return this.m_peekChar()===Be.s_endObject&&(this.m_startToken=this.m_endToken,this.m_increment(),this.m_currentTokenType=3,!0)}string_(){this.m_prepSubstr(),this.m_bHasEscapes=!1,this.m_stepOverChar(),this.m_eof()&&n("invalid token");let e=this.m_peekChar();for(;e!==Be.s_doubleQuote;){const t=e===Be.s_backslash;if(this.m_stepOverChar(),this.m_eof()&&n("invalid token"),e=this.m_peekChar(),t)if(this.m_bHasEscapes=!0,e===Be.s_doubleQuote||e===Be.s_backslash||e===Be.s_forwardslash||e===Be.s_b||e===Be.s_f||e===Be.s_n||e===Be.s_r||e===Be.s_t)this.m_stepOverChar(),this.m_eof()&&n("invalid token"),e=this.m_peekChar();else if(e===Be.s_u)for(let r=0;r<4;r++)this.m_stepOverChar(),this.m_eof()&&n("invalid token"),e=this.m_peekChar(),e>=Be.s_zero&&e<=Be.s_nine||e>=Be.s_a&&e<=Be.s_f||e>=Be.s_A&&e<=Be.s_F||n("invalid token");else n("invalid token")}this.m_stepOverChar()}comma_(){return this.m_peekChar()===Be.s_comma&&(this.m_increment(),!0)}colon_(){return this.m_peekChar()===Be.s_colon&&(this.m_increment(),!0)}fieldNameEnd_(){this.skipWhiteSpace_(),this.m_functionStack.pop(),this.colon_()?(this.skipWhiteSpace_(),this.value_()):n("invalid token")}fieldNameStart_(){this.m_startToken=this.m_endToken;this.m_peekChar()!==Be.s_doubleQuote&&n("invalid token"),this.string_(),this.m_currentTokenType=5,this.m_functionStack.push(()=>this.fieldNameEnd_())}pairEnd_(){this.skipWhiteSpace_(),this.comma_()?(this.skipWhiteSpace_(),this.fieldNameStart_()):this.rightBrace_()?this.m_functionStack.pop():n("invalid token")}arrayStart_(){this.skipWhiteSpace_(),this.m_functionStack.pop(),this.rightBracket_()||(this.m_functionStack.push(()=>this.elementEnd_()),this.value_())}elementEnd_(){this.skipWhiteSpace_(),this.comma_()?(this.skipWhiteSpace_(),this.value_()):this.rightBracket_()?this.m_functionStack.pop():n("invalid token")}objectStart_(){this.skipWhiteSpace_(),this.m_functionStack.pop(),this.rightBrace_()||(this.m_functionStack.push(()=>this.pairEnd_()),this.fieldNameStart_())}valueStartObject_(){this.m_increment(),this.m_currentTokenType=1,this.m_functionStack.push(()=>this.objectStart_())}valueStartArray_(){this.m_increment(),this.m_currentTokenType=2,this.m_functionStack.push(()=>this.arrayStart_())}valueString_(){this.string_(),this.m_currentTokenType=6}int_(){this.m_peekChar()!==Be.s_zero?this.digits_():this.m_stepOverChar()}digits_(){let e=this.m_peekChar();do{this.m_stepOverChar(),this.m_eof()&&n("invalid token"),e=this.m_peekChar()}while(e>=Be.s_zero&&e<=Be.s_nine)}frac_(){let e=this.m_peekChar();this.m_stepOverChar(),this.m_eof()&&n("invalid token"),e=this.m_peekChar(),e>=Be.s_zero&&e<=Be.s_nine||n("invalid token"),this.digits_()}exp_(){let e=this.m_peekChar();this.m_stepOverChar(),this.m_eof()&&n("invalid token"),e=this.m_peekChar(),e!==Be.s_plus&&e!==Be.s_minus||(this.m_stepOverChar(),this.m_eof()&&n("invalid token"),e=this.m_peekChar()),e>=Be.s_zero&&e<=Be.s_nine||n("invalid token"),this.digits_()}valueNumber_(){this.m_prepSubstr();let e=!1,t=this.m_peekChar();if(t===Be.s_minus?(this.m_stepOverChar(),this.m_eof()&&n("invalid token"),t=this.m_peekChar(),e=!0,t>=Be.s_zero&&t<=Be.s_nine||n("invalid token"),this.int_()):this.int_(),t=this.m_peekChar(),t===Be.s_period)this.m_currentTokenType=7,this.frac_(),t=this.m_peekChar(),t!==Be.s_e&&t!==Be.s_E||this.exp_();else if(t===Be.s_e||t===Be.s_E)this.m_currentTokenType=7,this.exp_();else{let t=0;e&&t++;const n=this.m_endToken-this.m_startToken-t;if(n<10)this.m_currentTokenType=8;else if(10===n){const n=this.m_getCurrentSubstr();e?n.slice(t)<="2147483648"?this.m_currentTokenType=8:this.m_currentTokenType=9:n.slice(t)<="2147483647"?this.m_currentTokenType=8:this.m_currentTokenType=9}else if(n<19)this.m_currentTokenType=9;else if(19===n){const n=this.m_getCurrentSubstr();e?n.slice(t)<="9223372036854775808"?this.m_currentTokenType=9:this.m_currentTokenType=7:n.slice(t)<="9223372036854775807"?this.m_currentTokenType=9:this.m_currentTokenType=7}else this.m_currentTokenType=7}}valueNull_(){const{s:e,bDone:t}=this.m_get(5);t&&n("invalid token"),"null"!==e&&n("invalid token"),this.m_currentTokenType=10}valueTrue_(){const{s:e,bDone:t}=this.m_get(5);t&&n("invalid token"),"true"!==e&&n("invalid token"),this.m_currentTokenType=11}valueFalse_(){const{s:e,bDone:t}=this.m_get(6);t&&n("invalid token"),"false"!==e&&n("invalid token"),this.m_currentTokenType=12}valueNan_(){const{s:e,bDone:t}=this.m_get(4);t&&n("invalid token"),"NaN"!==e&&n("invalid token"),this.m_currentTokenType=7}value_(){this.m_startToken=this.m_endToken;const e=this.m_peekChar();e===Be.s_beginObject?this.valueStartObject_():e===Be.s_beginArray?this.valueStartArray_():e===Be.s_doubleQuote?this.valueString_():e===Be.s_minus||e>=Be.s_zero&&e<=Be.s_zero+9?this.valueNumber_():e===Be.s_n?this.valueNull_():e===Be.s_t?this.valueTrue_():e===Be.s_f?this.valueFalse_():e===Be.s_N?this.valueNan_():n("invalid token")}start_(){this.skipWhiteSpace_(),this.m_functionStack.pop(),this.m_functionStack.push(()=>this.accept_());const e=this.m_peekChar();e!==Be.s_beginObject&&e!==Be.s_beginArray&&n("invalid token"),this.value_()}accept_(){this.m_startToken=this.m_endToken,this.m_currentTokenType=0}}class Re{getOperatorType(){return 10404}accelerateGeometry(e,t,n){return!1}canAccelerateGeometry(e){return!1}supportsCurves(){return!0}execute(e,t,r,i,s,a,o){let u;"string"==typeof r?(u=new Ve({jsonString:r}),u.nextToken()):u=r,1!==u.currentToken()&&n("failed to import map geometry: start of object is expected");const m=ne(t,e,u,i,s);return new v(m)}importSpatialReference(e){const n=ie(e);return null===n&&t("failed to import spatial reference"),n}importProjectionTransformation(e,t){return r(0),{}}importDatumTransformation(e,t){return r(0),{}}static stringToGeometryType(e){return(e=e.toLowerCase()).startsWith("esrigeometry")||n("string_to_geometry_type"),e.endsWith("point")?a.enumPoint:e.endsWith("envelope")?a.enumEnvelope:e.endsWith("multipoint")?a.enumMultiPoint:e.endsWith("polyline")?a.enumPolyline:e.endsWith("polygon")?a.enumPolygon:void n("string_to_geometry_type")}}const Me=new ee,Ue=new Ce,We=new Re;function Ge(e){return Array.isArray(e)?e[0].spatialReference:e.spatialReference}function Xe(t,n=!1){if(!n&&(q(t)||K(t)||Q(t)||J(t))){const n=new v;return n.setGeometry(e(L(t))),n}const r=new $(t,{strict:!1});return r.nextToken(),We.execute(0,a.enumUnknown,r,!0,!1)}function Le(e){let t=null;return[e.map(e=>{if(null==t){const n=Ye(e);return t=n.getSpatialReference(),n.getGeometry()}return qe(e)}),t]}function Ye(e){const t=Xe(e),n=Qe(e.spatialReference);return n&&t.setSpatialReference(n),t}function qe(e){return Xe(e).getGeometry()}function Ke(e){return Xe(e,!0).getGeometry()}function Qe(e){if(null==e)return null;if(!(e.wkid||e.latestWkid||e.wkt||e.wkt2))return null;let t=!1;if(e instanceof Y){const{wkt2:n}=e;e=e.toJSON(),e.wkt2??=n,t=!0}(e.latestVcsWkid||e.vcsWkid)&&(t||(e={...e}),delete e?.latestVcsWkid,delete e?.vcsWkid);const n=new $(e,{strict:!1});n.nextToken();const r=We.importSpatialReference(n);return 0===r.getCoordinateSystemType()?null:r}function Je(e,t){if(e instanceof v&&(t=e.getSpatialReference(),e=e.getGeometry()),null==e||e.isEmpty())return null;let n;switch(e.getGeometryType()){case a.enumPoint:case a.enumMultiPoint:case a.enumPolyline:case a.enumPolygon:n=G(e)}if(n){const e=X(n);return e.spatialReference=Ze(t),null==e.spatialReference&&delete e.spatialReference,e}return Me.reset(),Ue.execute(0,e,t??null,Me),Me.getObject()}function Ze(e){return null==e||0===e.getCoordinateSystemType()?null:(Me.reset(),Ue.execute(0,null,e,Me),Me.getObject().spatialReference)}export{Le as fromGeometries,Ye as fromGeometry,qe as fromGeometryToGXGeometry,Ke as fromGeometryToGXGeometryUsingImportOperator,Qe as fromSpatialReference,Ge as getSpatialReference,Je as toGeometry,Ze as toSpatialReference};