@arcgis/core 5.2.0-next.80 → 5.2.0-next.81

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 (464) hide show
  1. package/applications/Components/imageryUtils.d.ts +5 -3
  2. package/assets/esri/core/workers/RemoteClient.js +1 -1
  3. package/assets/esri/core/workers/chunks/004966b5bf60a8a80b8c.js +1 -0
  4. package/assets/esri/core/workers/chunks/03cf74b2e488eb144ad5.js +1 -0
  5. package/assets/esri/core/workers/chunks/055802283f7e01ee87fb.js +1 -0
  6. package/assets/esri/core/workers/chunks/06df9ce870360cda06c7.js +1 -0
  7. package/assets/esri/core/workers/chunks/{08ec5461af74356e7570.js → 075eb62465edb9cbf907.js} +1 -1
  8. package/assets/esri/core/workers/chunks/09f0805b32e6cab980e6.js +1 -0
  9. package/assets/esri/core/workers/chunks/{5fe9eea35ddb428efd8b.js → 0b26c01a1190e8fd63fb.js} +1 -1
  10. package/assets/esri/core/workers/chunks/0fd7590e545864f5fff4.js +1 -0
  11. package/assets/esri/core/workers/chunks/{b9d1bb106737a05290e1.js → 104d74bc36c28c519396.js} +1 -1
  12. package/assets/esri/core/workers/chunks/14be79c4cc6137c7db95.js +1 -0
  13. package/assets/esri/core/workers/chunks/{ef47a5da641cb0d33fdf.js → 197a6d561f77ac74283a.js} +1 -1
  14. package/assets/esri/core/workers/chunks/{e4e5a171a4874c5af4a4.js → 1a7d2912c8eac8c83c70.js} +1 -1
  15. package/assets/esri/core/workers/chunks/{b9c61b20bbc91cb63036.js → 1c3861297f65ee1ca5d0.js} +1 -1
  16. package/assets/esri/core/workers/chunks/1d1cfe0bee506d34268e.js +1 -0
  17. package/assets/esri/core/workers/chunks/1ed6a8bb415999c4e8a6.js +1 -0
  18. package/assets/esri/core/workers/chunks/2161cf64601f28bbe72d.js +1 -0
  19. package/assets/esri/core/workers/chunks/218ddad849745d652a28.js +1 -0
  20. package/assets/esri/core/workers/chunks/{5b70295da76d9227f64b.js → 22c477147421e68f7f00.js} +1 -1
  21. package/assets/esri/core/workers/chunks/24944b625ed8dcd904f0.js +1 -0
  22. package/assets/esri/core/workers/chunks/25696c194457e42b3bdc.js +1 -0
  23. package/assets/esri/core/workers/chunks/25f6d5604a7959afd5a5.js +1 -0
  24. package/assets/esri/core/workers/chunks/{c1e5ffe9a251be5a0744.js → 278760d194203dd27fc3.js} +1 -1
  25. package/assets/esri/core/workers/chunks/28b576663ed4570ec825.js +1 -0
  26. package/assets/esri/core/workers/chunks/{841c81c280114412c95b.js → 2a4c91b006de1ceba539.js} +1 -1
  27. package/assets/esri/core/workers/chunks/2b299aec2a758bcd9731.js +1 -0
  28. package/assets/esri/core/workers/chunks/2b79b376b0d60d2f0d5c.js +1 -0
  29. package/assets/esri/core/workers/chunks/{b084829a3fd709dc47a8.js → 2d683ac4a993ec5fd6f6.js} +1 -1
  30. package/assets/esri/core/workers/chunks/2f3525df00fb265661fc.js +1 -0
  31. package/assets/esri/core/workers/chunks/{a8ec5b85c2fa6fb4f391.js → 30b40ee875d46e6fde02.js} +1 -1
  32. package/assets/esri/core/workers/chunks/31b3744f71750e512d4e.js +1 -0
  33. package/assets/esri/core/workers/chunks/3239c7994019f15e261d.js +1 -0
  34. package/assets/esri/core/workers/chunks/{d520d407043bc52e5410.js → 3336ad383c184dd07bb3.js} +1 -1
  35. package/assets/esri/core/workers/chunks/36265e5f6d396eadf0be.js +1 -0
  36. package/assets/esri/core/workers/chunks/{0ae0483b72f5e8d00d55.js → 3715d6b295016eeb5031.js} +1 -1
  37. package/assets/esri/core/workers/chunks/37a121316d114999ac70.js +1 -0
  38. package/assets/esri/core/workers/chunks/37fb38db03cb39e3c342.js +1 -0
  39. package/assets/esri/core/workers/chunks/3851ebf3548e2763b24f.js +1 -0
  40. package/assets/esri/core/workers/chunks/{9230ad807020fc2bbf8e.js → 388b71211a0ad5cbd6b9.js} +1 -1
  41. package/assets/esri/core/workers/chunks/3a4b117af89dab5153eb.js +1 -0
  42. package/assets/esri/core/workers/chunks/3a9ef47122e10cecd3a4.js +1 -0
  43. package/assets/esri/core/workers/chunks/3adba34224cba869a39c.js +1 -0
  44. package/assets/esri/core/workers/chunks/40b842d055b87e442156.js +1 -0
  45. package/assets/esri/core/workers/chunks/40ebe69b08ea54e0e780.js +1 -0
  46. package/assets/esri/core/workers/chunks/{c37b28f200b704ae6002.js → 4239d64f067417e0643c.js} +1 -1
  47. package/assets/esri/core/workers/chunks/453c69879f4b82ba13a1.js +1 -0
  48. package/assets/esri/core/workers/chunks/{bd88228f781a0399d8bd.js → 49e37f653b81f9e4f7cc.js} +1 -1
  49. package/assets/esri/core/workers/chunks/4a537054c99cbc492715.js +1 -0
  50. package/assets/esri/core/workers/chunks/4a6158994a8cc8b8664f.js +1 -0
  51. package/assets/esri/core/workers/chunks/4c15551e33a3c6cda61d.js +1 -0
  52. package/assets/esri/core/workers/chunks/4c5200e22b8a723f53f9.js +1 -0
  53. package/assets/esri/core/workers/chunks/{2bcb7e43578124538c3c.js → 4d672110aee304692f60.js} +1 -1
  54. package/assets/esri/core/workers/chunks/{fb12d3c63fcac8391e06.js → 4eaa93859ceec1b38530.js} +1 -1
  55. package/assets/esri/core/workers/chunks/4f36596280142be1c666.js +1 -0
  56. package/assets/esri/core/workers/chunks/50e6e43ea98cb0d05d91.js +1 -0
  57. package/assets/esri/core/workers/chunks/{8e374ce47256a567ae11.js → 519745cf844c76452a46.js} +1 -1
  58. package/assets/esri/core/workers/chunks/{3b14ed3184743df336a6.js → 53d80202b5f43542d45b.js} +1 -1
  59. package/assets/esri/core/workers/chunks/{345510a95e893fa8040a.js → 540a3685e614bb006744.js} +1 -1
  60. package/assets/esri/core/workers/chunks/54524cc4328f31d8c25d.js +1 -0
  61. package/assets/esri/core/workers/chunks/5515005e8893bd551aaf.js +1 -0
  62. package/assets/esri/core/workers/chunks/{eee1fd629619021ea279.js → 56a6c7abfb4d88ea1bb5.js} +1 -1
  63. package/assets/esri/core/workers/chunks/{24729603dcdbd95fd01e.js → 578904043e873424904c.js} +1 -1
  64. package/assets/esri/core/workers/chunks/58d10928959ae1e2e8d9.js +1 -0
  65. package/assets/esri/core/workers/chunks/59f0a2bd40b033ce77e4.js +1 -0
  66. package/assets/esri/core/workers/chunks/5a67bd724aa7fcdebe16.js +1 -0
  67. package/assets/esri/core/workers/chunks/{087bd698b80ca0cea71e.js → 5aadfd11df6618883c5d.js} +1 -1
  68. package/assets/esri/core/workers/chunks/{1f888f026b004447772c.js → 5c9a398e659ecd427fb5.js} +1 -1
  69. package/assets/esri/core/workers/chunks/{e421dee5d8b030e79ffb.js → 5d50a030bf9f4e94f69d.js} +1 -1
  70. package/assets/esri/core/workers/chunks/6065caa7981cef255277.js +1 -0
  71. package/assets/esri/core/workers/chunks/61190c833791f0833a39.js +1 -0
  72. package/assets/esri/core/workers/chunks/61312d3b5477ed9d87d9.js +2 -0
  73. package/assets/esri/core/workers/chunks/61f230e50787abbfc8ba.js +1 -0
  74. package/assets/esri/core/workers/chunks/6270acb7545be2c5126f.js +1 -0
  75. package/assets/esri/core/workers/chunks/{f3bbebedad51f776bb98.js → 62992c3d98c20f611b7b.js} +1 -1
  76. package/assets/esri/core/workers/chunks/{ac87be2210f868524996.js → 629f60ee49e0dcfb7165.js} +1 -1
  77. package/assets/esri/core/workers/chunks/645d5db85f84b1f19b59.js +1 -0
  78. package/assets/esri/core/workers/chunks/{913fb883455aeac8582b.js → 694216224d5fd3a8956d.js} +1 -1
  79. package/assets/esri/core/workers/chunks/6c372d85b5783dd2a793.js +1 -0
  80. package/assets/esri/core/workers/chunks/{702b2381acf4d1f90094.js → 6f08c8a1e8e3ffd0a96a.js} +1 -1
  81. package/assets/esri/core/workers/chunks/6f4ee60e89d154e7b1c4.js +1 -0
  82. package/assets/esri/core/workers/chunks/{c29df43817278f674707.js → 7028671ffdaafe2725bc.js} +1 -1
  83. package/assets/esri/core/workers/chunks/{40693ee558a1eb1e93f4.js → 70c371c9f133ab9f7925.js} +1 -1
  84. package/assets/esri/core/workers/chunks/7230d74ef720431cc75e.js +1 -0
  85. package/assets/esri/core/workers/chunks/73a8a3baf0fed803ef4f.js +1 -0
  86. package/assets/esri/core/workers/chunks/74cd17aca5f7e0caac90.js +1 -0
  87. package/assets/esri/core/workers/chunks/{4d7a3b3aaf876da0891b.js → 76e6d894c33221369895.js} +1 -1
  88. package/assets/esri/core/workers/chunks/7833a82d5bac2aed565e.js +1 -0
  89. package/assets/esri/core/workers/chunks/7a05f5b0848dd11d2f4f.js +1 -0
  90. package/assets/esri/core/workers/chunks/{4c82f5f23004f905a18f.js → 7b605ed92e65083da35f.js} +1 -1
  91. package/assets/esri/core/workers/chunks/7eb94fc75926bc739233.js +1 -0
  92. package/assets/esri/core/workers/chunks/{67ebde34377f98d17cda.js → 8006ffa263fb8016afdb.js} +1 -1
  93. package/assets/esri/core/workers/chunks/809349086117f199b7a5.js +1 -0
  94. package/assets/esri/core/workers/chunks/82da6d98bd4980a3d454.js +1 -0
  95. package/assets/esri/core/workers/chunks/82e62a54b350e7a325f7.js +1 -0
  96. package/assets/esri/core/workers/chunks/836c458a7eb96391cfda.js +1 -0
  97. package/assets/esri/core/workers/chunks/851a5a0262dc8dcb67eb.js +1 -0
  98. package/assets/esri/core/workers/chunks/856dba96332509fb1d7a.js +2 -0
  99. package/assets/esri/core/workers/chunks/{d7b6985984071e78c764.js → 86035e46777ed896c658.js} +1 -1
  100. package/assets/esri/core/workers/chunks/88d6a7ebded4d359deb0.js +1 -0
  101. package/assets/esri/core/workers/chunks/{38660a8cc3623c854d88.js → 89df303abcbc0167e4d2.js} +1 -1
  102. package/assets/esri/core/workers/chunks/8cfe817299eb16cb2664.js +1 -0
  103. package/assets/esri/core/workers/chunks/8d16d53643dd8d489c25.js +1 -0
  104. package/assets/esri/core/workers/chunks/{619aa1381296172ff47b.js → 8e19b2ce9868a9a08da0.js} +1 -1
  105. package/assets/esri/core/workers/chunks/8ea28a4b1afe8bb2d313.js +1 -0
  106. package/assets/esri/core/workers/chunks/8fff4a41a54d39db470a.js +1 -0
  107. package/assets/esri/core/workers/chunks/{fe71a0604f0928113419.js → 958e161634b5bfd50625.js} +1 -1
  108. package/assets/esri/core/workers/chunks/95b9eaf7a49eeb17e62f.js +1 -0
  109. package/assets/esri/core/workers/chunks/95ff342e5c29bf91a765.js +1 -0
  110. package/assets/esri/core/workers/chunks/97162bbbedb02e42d0b8.js +1 -0
  111. package/assets/esri/core/workers/chunks/973440553c9e058b0132.js +1 -0
  112. package/assets/esri/core/workers/chunks/{680dd7b7638465eb33de.js → 98739b6e7904045edbab.js} +1 -1
  113. package/assets/esri/core/workers/chunks/9a5894e8ebdf0e97b98f.js +1 -0
  114. package/assets/esri/core/workers/chunks/9aa41d098eeda01ded3a.js +1 -0
  115. package/assets/esri/core/workers/chunks/9bd4cda90daf90189bfc.js +1 -0
  116. package/assets/esri/core/workers/chunks/{315031323e11a18154e3.js → 9c04233d18a9585b5bfe.js} +1 -1
  117. package/assets/esri/core/workers/chunks/9c17bfbfc347ac289b6e.js +1 -0
  118. package/assets/esri/core/workers/chunks/9c7afe90495766bba37f.js +1 -0
  119. package/assets/esri/core/workers/chunks/{69b9a327f23e052fced7.js → 9d5d7289a9e23efc7f73.js} +1 -1
  120. package/assets/esri/core/workers/chunks/9e49a6ce4a133476092f.js +1 -0
  121. package/assets/esri/core/workers/chunks/9e840a71906c4deef776.js +1 -0
  122. package/assets/esri/core/workers/chunks/a1bf2111fee455b16e6a.js +29 -0
  123. package/assets/esri/core/workers/chunks/{910c93bbbf8113a4a51f.js → a2a231a671ff578b7b01.js} +1 -1
  124. package/assets/esri/core/workers/chunks/{e9e4b27ba06a29e6340c.js → a3cbd3e983e21f40b253.js} +1 -1
  125. package/assets/esri/core/workers/chunks/{16929524565a677db4dc.js → a406a41a2f117247f1ef.js} +1 -1
  126. package/assets/esri/core/workers/chunks/a4b63162615a485b08dc.js +1 -0
  127. package/assets/esri/core/workers/chunks/a9e944f28bd573c8230d.js +1 -0
  128. package/assets/esri/core/workers/chunks/{6c982779d6d47ec99899.js → b0a9a770b735440846cd.js} +1 -1
  129. package/assets/esri/core/workers/chunks/b2d6fd436981c890152f.js +1 -0
  130. package/assets/esri/core/workers/chunks/b3034fbcbe77ef9e7c20.js +1 -0
  131. package/assets/esri/core/workers/chunks/b3081c0b037abc49d09b.js +1 -0
  132. package/assets/esri/core/workers/chunks/b4b4fe06364bea9b0750.js +1 -0
  133. package/assets/esri/core/workers/chunks/b661aae7e3ce955a783e.js +1 -0
  134. package/assets/esri/core/workers/chunks/{75fc0b1db8e2e3fd2458.js → b8548eb7680abeaf3cd1.js} +1 -1
  135. package/assets/esri/core/workers/chunks/b9db8d059c2ea39518e7.js +1 -0
  136. package/assets/esri/core/workers/chunks/ba8777844fef6ed3ac2b.js +1 -0
  137. package/assets/esri/core/workers/chunks/ba99a650ea64f5024185.js +1 -0
  138. package/assets/esri/core/workers/chunks/bbfd2b4af8e498b61af9.js +1 -0
  139. package/assets/esri/core/workers/chunks/{24006cea112d657f053a.js → bc30c0de6dcb106b24a1.js} +1 -1
  140. package/assets/esri/core/workers/chunks/bf5831a7c12b1e42c669.js +1 -0
  141. package/assets/esri/core/workers/chunks/bfac0f47e81055585002.js +1 -0
  142. package/assets/esri/core/workers/chunks/bfd532e33800755b1f48.js +1 -0
  143. package/assets/esri/core/workers/chunks/c30b6bbabd05e4976fba.js +1 -0
  144. package/assets/esri/core/workers/chunks/c336f300fe6100e36592.js +1 -0
  145. package/assets/esri/core/workers/chunks/c5853fbb975e169c44c5.js +1 -0
  146. package/assets/esri/core/workers/chunks/c71368cd64f240da1743.js +1 -0
  147. package/assets/esri/core/workers/chunks/c899457f19b749516275.js +1 -0
  148. package/assets/esri/core/workers/chunks/c9653a15324ca53d50e7.js +1 -0
  149. package/assets/esri/core/workers/chunks/{9937920e7993814d0b2c.js → ca695ab000a1e8765d69.js} +1 -1
  150. package/assets/esri/core/workers/chunks/{b792857a178da2dd77d6.js → cc419e1c5c1dee7ec972.js} +1 -1
  151. package/assets/esri/core/workers/chunks/{2ce845c990bb4d701362.js → cc817c9d3f8e8f8c56e4.js} +1 -1
  152. package/assets/esri/core/workers/chunks/ce81f29134ab3971bd54.js +1 -0
  153. package/assets/esri/core/workers/chunks/cf6799fd008d0d7016f7.js +1 -0
  154. package/assets/esri/core/workers/chunks/cfcb258b7e464f219434.js +1 -0
  155. package/assets/esri/core/workers/chunks/d0aaa4ad7f76f577f117.js +1 -0
  156. package/assets/esri/core/workers/chunks/{ac59218847e5ef4c4160.js → d0e00f0bb7b9435e170d.js} +1 -1
  157. package/assets/esri/core/workers/chunks/{33e293836f5d28dc5d62.js → d13eeff678972a245d5d.js} +1 -1
  158. package/assets/esri/core/workers/chunks/d1aa87d846a884492b47.js +1 -0
  159. package/assets/esri/core/workers/chunks/{7529c0fcfb83998e63db.js → d1baf17f3219f70106f7.js} +1 -1
  160. package/assets/esri/core/workers/chunks/{2b3f76e03b7a28fc4453.js → d2448e26e19005ef9ab2.js} +1 -1
  161. package/assets/esri/core/workers/chunks/{0179949495c87466b428.js → d3a183d90f1ccc8da2bb.js} +10 -10
  162. package/assets/esri/core/workers/chunks/d433bfa2abf2ca8239ba.js +1 -0
  163. package/assets/esri/core/workers/chunks/d4b78d11a5ce4320a29a.js +1 -0
  164. package/assets/esri/core/workers/chunks/d4cc8eef64b8c84217a5.js +1 -0
  165. package/assets/esri/core/workers/chunks/d62a5a33a24418a3e283.js +1 -0
  166. package/assets/esri/core/workers/chunks/{2740f755c3a322cbd477.js → d672c2a1c8eddd235171.js} +1 -1
  167. package/assets/esri/core/workers/chunks/d845f2115848b56c0369.js +1 -0
  168. package/assets/esri/core/workers/chunks/d8b38c196b06e801c4e6.js +1 -0
  169. package/assets/esri/core/workers/chunks/da6134c7883531f21afe.js +1 -0
  170. package/assets/esri/core/workers/chunks/dbc36b85413fae52b56d.js +1 -0
  171. package/assets/esri/core/workers/chunks/{cada52d719c35d40958a.js → dbca32f0e0c2c2e2ccf3.js} +1 -1
  172. package/assets/esri/core/workers/chunks/dcec7fc66385c12ecdf0.js +1 -0
  173. package/assets/esri/core/workers/chunks/dd9af4ddefa0b998aa4b.js +1 -0
  174. package/assets/esri/core/workers/chunks/e2473de49189d93714d3.js +1 -0
  175. package/assets/esri/core/workers/chunks/e2ceddd6bcdabec77cc7.js +1 -0
  176. package/assets/esri/core/workers/chunks/e3eab61815ef1c521a6c.js +1 -0
  177. package/assets/esri/core/workers/chunks/e63f94c8097555b266ad.js +2 -0
  178. package/assets/esri/core/workers/chunks/e72fa08b0bd324514a0e.js +1 -0
  179. package/assets/esri/core/workers/chunks/e8a9a686a3c23afc9d1f.js +1 -0
  180. package/assets/esri/core/workers/chunks/eca0736953a20cfc64ad.js +2 -0
  181. package/assets/esri/core/workers/chunks/efaa455beeefbf97a4c5.js +1 -0
  182. package/assets/esri/core/workers/chunks/efd176c5ac35f313e7a2.js +1 -0
  183. package/assets/esri/core/workers/chunks/f16b6cd6b325eb600e82.js +1 -0
  184. package/assets/esri/core/workers/chunks/f1d0208c6b09c1c4b248.js +1 -0
  185. package/assets/esri/core/workers/chunks/f1fa377e8fa53b02876f.js +1 -0
  186. package/assets/esri/core/workers/chunks/f2d99f693a590f384315.js +1 -0
  187. package/assets/esri/core/workers/chunks/f57e5e7d0748d9a370f7.js +1 -0
  188. package/assets/esri/core/workers/chunks/f71a3fe5f30aa782193a.js +1 -0
  189. package/assets/esri/core/workers/chunks/{b9bdb1f05e904c3655e4.js → f834aa732c3f06525089.js} +1 -1
  190. package/assets/esri/core/workers/chunks/f9e9e79f78be32e5d475.js +1 -0
  191. package/assets/esri/core/workers/chunks/fa7a6906598d1002abfd.js +1 -0
  192. package/assets/esri/core/workers/chunks/{ebb722118a220c92efc3.js → fae32c9ce811934b6a64.js} +1 -1
  193. package/assets/esri/core/workers/chunks/fb86b334bfca4670dcfa.js +1 -0
  194. package/assets/esri/core/workers/chunks/fbb0b2f4ec0ba458ddeb.js +1 -0
  195. package/assets/esri/core/workers/chunks/{2d1ae18a28491b00091d.js → fbcc346fa603d6edac98.js} +1 -1
  196. package/assets/esri/core/workers/chunks/{1ef28d4457c8c943ad19.js → fbede01a363895b6381f.js} +1 -1
  197. package/assets/esri/core/workers/chunks/{073f1d5f89875c6aefb1.js → fc1aeea22f8c9d63864a.js} +1 -1
  198. package/assets/esri/core/workers/chunks/fc2234e0d202631f3abf.js +2 -0
  199. package/assets/esri/core/workers/chunks/fcb943c3b31b1bf62e65.js +2 -0
  200. package/assets/esri/core/workers/chunks/{8a3289e15e0ce92e3813.js → fe335441ea233cb0fad5.js} +1 -1
  201. package/assets/esri/core/workers/chunks/ffe2cbfea38b92a231d6.js +1 -0
  202. package/chunks/Bufferer-CclWhXVb.js +1 -1
  203. package/chunks/Distance2DCalculator-DjIp2uQi.js +1 -1
  204. package/chunks/EmissionComposite.glsl.js +1 -1
  205. package/chunks/Envelope.js +1 -1
  206. package/chunks/GaussianSplat.glsl.js +8 -8
  207. package/chunks/GaussianSplatDepth.glsl.js +4 -4
  208. package/chunks/GeodeticDistanceCalculator-zRp89-dW.js +1 -1
  209. package/chunks/GeodeticUtils.js +1 -1
  210. package/chunks/Geometry.js +1 -1
  211. package/chunks/MultiPathImpl.js +1 -1
  212. package/chunks/OperatorCrosses.js +1 -1
  213. package/chunks/OperatorCut.js +1 -1
  214. package/chunks/OperatorGeodesicBuffer.js +1 -1
  215. package/chunks/OperatorGeodeticArea.js +1 -1
  216. package/chunks/OperatorGeodeticDensifyByLength.js +1 -1
  217. package/chunks/OperatorGeodeticLength.js +1 -1
  218. package/chunks/OperatorGraphicBuffer.js +1 -1
  219. package/chunks/OperatorIntegrate.js +1 -1
  220. package/chunks/OperatorIntersects.js +1 -1
  221. package/chunks/OperatorMultiPartToSinglePart.js +1 -1
  222. package/chunks/OperatorOverlaps.js +1 -1
  223. package/chunks/OperatorProject.js +1 -1
  224. package/chunks/OperatorProximity.js +1 -1
  225. package/chunks/OperatorProximityGeodesic.js +1 -1
  226. package/chunks/OperatorShapePreservingLength.js +1 -1
  227. package/chunks/OperatorShapePreservingProject.js +1 -1
  228. package/chunks/OperatorSimplifyOGC.js +1 -1
  229. package/chunks/OperatorTouches.js +1 -1
  230. package/chunks/OperatorWithin.js +1 -1
  231. package/chunks/Point2D.js +1 -1
  232. package/chunks/ProjectionTransformation.js +1 -1
  233. package/chunks/SideCalculator2D-DX0718xq.js +1 -1
  234. package/chunks/SpatialReference.js +1 -1
  235. package/chunks/UnitFactory.js +2 -0
  236. package/chunks/containsOperator.js +1 -1
  237. package/chunks/disjointOperator.js +1 -1
  238. package/chunks/equalsOperator.js +1 -1
  239. package/chunks/relateOperator.js +1 -1
  240. package/config.js +1 -1
  241. package/geometry/operators/containsOperator.js +1 -1
  242. package/geometry/operators/disjointOperator.js +1 -1
  243. package/geometry/operators/gx/geodeticUtils.js +1 -1
  244. package/geometry/operators/gx/operatorAutoComplete.js +1 -1
  245. package/geometry/operators/gx/operatorBuffer.js +1 -1
  246. package/geometry/operators/gx/operatorDifference.js +1 -1
  247. package/geometry/operators/gx/operatorGeodesicBuffer.js +1 -1
  248. package/geometry/operators/gx/operatorGeodeticArea.js +1 -1
  249. package/geometry/operators/gx/operatorGeodeticDensify.js +1 -1
  250. package/geometry/operators/gx/operatorGeodeticDistance.js +1 -1
  251. package/geometry/operators/gx/operatorGeodeticLength.js +1 -1
  252. package/geometry/operators/gx/operatorIntersection.js +1 -1
  253. package/geometry/operators/gx/operatorLabelPoint.js +1 -1
  254. package/geometry/operators/gx/operatorLinesToPolygons.js +1 -1
  255. package/geometry/operators/gx/operatorPolygonOverlay.js +1 -1
  256. package/geometry/operators/gx/operatorProject.js +1 -1
  257. package/geometry/operators/gx/operatorProximityGeodesic.js +1 -1
  258. package/geometry/operators/gx/operatorShapePreservingProject.js +1 -1
  259. package/geometry/operators/gx/operatorSimplify.js +1 -1
  260. package/geometry/operators/gx/operatorSinglePartToMultiPart.js +1 -1
  261. package/geometry/operators/gx/operatorSymmetricDifference.js +1 -1
  262. package/geometry/operators/gx/operatorUnion.js +1 -1
  263. package/geometry/operators/json/containsOperator.js +1 -1
  264. package/geometry/operators/json/disjointOperator.js +1 -1
  265. package/geometry/operators/projectOperator.js +1 -1
  266. package/geometry/operators/reshapeOperator.js +1 -1
  267. package/geometry/operators/support/geographicTransformationUtils.js +1 -1
  268. package/geometry/operators/support/initNoPeFactory.js +1 -1
  269. package/geometry/operators/support/jsonConverter.js +1 -1
  270. package/geometry/operators/support/projectionTransformation.js +1 -1
  271. package/geometry/projection/projectionUtilsState.js +2 -0
  272. package/geometry/projectionUtils.js +1 -1
  273. package/geometry/support/geometryUtils.js +1 -1
  274. package/kernel.js +1 -1
  275. package/layers/raster/datasets/MRFRaster.js +1 -1
  276. package/layers/raster/formats/JpgPlus.js +1 -1
  277. package/layers/raster/formats/RasterCodec.js +1 -1
  278. package/layers/raster/types.d.ts +65 -0
  279. package/package.json +2 -2
  280. package/support/revision.js +1 -1
  281. package/symbols/cim/cimAnalyzer.js +1 -1
  282. package/symbols/cim/effects/EffectRadial.js +1 -1
  283. package/views/2d/engine/vectorTiles/decluttering/SymbolRepository.js +1 -1
  284. package/views/2d/engine/webgl/mesh/templates/segmentUtils.js +1 -1
  285. package/views/2d/engine/webgl/shaderGraph/techniques/fill/FillMeshWriter.js +1 -1
  286. package/views/2d/engine/webgl/shaderGraph/techniques/fill/GradientFillMeshWriter.js +1 -1
  287. package/views/2d/engine/webgl/shaderGraph/techniques/line/LineMeshWriter.js +1 -1
  288. package/views/2d/engine/webgl/shaderGraph/techniques/mesh/MeshWriter.js +1 -1
  289. package/views/2d/layers/features/schema/processor/symbols/ComplexSymbolSchema.js +1 -1
  290. package/views/3d/GroundView3D.js +1 -1
  291. package/views/3d/layers/I3SMeshView3D.js +1 -1
  292. package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
  293. package/views/3d/layers/IntegratedMeshLayerView3D.js +1 -1
  294. package/views/3d/layers/graphics/Graphics3DFrustumVisibility.js +1 -1
  295. package/views/3d/state/controllers/PinchAndPanControllerGlobal.js +1 -1
  296. package/views/3d/state/controllers/PinchAndPanControllerLocal.js +1 -1
  297. package/views/3d/state/controllers/RotateController.js +1 -1
  298. package/views/3d/state/controllers/ZoomControllerGlobal.js +1 -1
  299. package/views/3d/state/controllers/ZoomControllerLocal.js +1 -1
  300. package/views/3d/state/controllers/ZoomStepControllerLocal.js +1 -1
  301. package/views/3d/state/helpers/SceneIntersectionHelper.js +1 -1
  302. package/views/3d/support/QualityProfile.js +1 -1
  303. package/views/3d/support/QualitySettings.js +1 -1
  304. package/views/3d/support/gaussianSplatting/GaussianSplatFadeHelper.js +1 -1
  305. package/views/3d/terrain/PlanarPatch.js +1 -1
  306. package/views/3d/terrain/Tile.js +1 -1
  307. package/views/3d/webgl-engine/lib/BasisUtil.js +1 -1
  308. package/views/3d/webgl-engine/lib/EmissionComposite.glsl.js +1 -1
  309. package/views/3d/webgl-engine/lib/EmissionComposite.js +1 -1
  310. package/views/3d/webgl-engine/lib/EmissionCompositeTechnique.js +1 -1
  311. package/views/3d/webgl-engine/lib/GaussianSplatRenderUtils.js +1 -1
  312. package/views/3d/webgl-engine/lib/GaussianSplatRenderer.js +1 -1
  313. package/views/3d/webgl-engine/shaders/GaussianSplatDepthPolicy.js +1 -1
  314. package/views/3d/webgl-engine/shaders/GaussianSplatPass.glsl.js +50 -22
  315. package/views/analysis/ElevationProfile/ElevationProfileController.js +1 -1
  316. package/views/support/GroundElevationSampler.js +1 -1
  317. package/widgets/BatchAttributeForm/expressions/ExpressionsManager.js +1 -1
  318. package/widgets/BatchAttributeForm/expressions/expressionUtils.js +1 -1
  319. package/widgets/ElevationProfile/ElevationProfileViewModel.js +1 -1
  320. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  321. package/widgets/OrientedImageryViewer/components/ImageLocationViewModel.js +1 -1
  322. package/widgets/OrientedImageryViewer/components/ImageLocationWidget.js +1 -1
  323. package/widgets/OrientedImageryViewer.js +1 -1
  324. package/assets/esri/core/workers/chunks/04105d83556409489835.js +0 -1
  325. package/assets/esri/core/workers/chunks/05b6b2c0b76afb100e33.js +0 -1
  326. package/assets/esri/core/workers/chunks/0909816f13d25cacf250.js +0 -1
  327. package/assets/esri/core/workers/chunks/0933203eee15ea50e123.js +0 -1
  328. package/assets/esri/core/workers/chunks/0b18de5147d76b68896f.js +0 -1
  329. package/assets/esri/core/workers/chunks/0d9d33f29124d464a4cb.js +0 -1
  330. package/assets/esri/core/workers/chunks/0d9fe49812554e7d7ba7.js +0 -1
  331. package/assets/esri/core/workers/chunks/0da5b27b070ab780f8b3.js +0 -1
  332. package/assets/esri/core/workers/chunks/0e333aced8b23aa49a0e.js +0 -1
  333. package/assets/esri/core/workers/chunks/0eaa8265a4cd64297545.js +0 -1
  334. package/assets/esri/core/workers/chunks/1142f8e9c80207d6bdae.js +0 -1
  335. package/assets/esri/core/workers/chunks/118ccfa2d685764752ee.js +0 -1
  336. package/assets/esri/core/workers/chunks/12a64eca4c571926d9d4.js +0 -1
  337. package/assets/esri/core/workers/chunks/1642fa1263d8f4a45101.js +0 -1
  338. package/assets/esri/core/workers/chunks/16a04fc184728d66e6e1.js +0 -1
  339. package/assets/esri/core/workers/chunks/18e0e993c0c39c962e61.js +0 -1
  340. package/assets/esri/core/workers/chunks/19233d0016e5b154c5ce.js +0 -1
  341. package/assets/esri/core/workers/chunks/1a467da4c0b33f655199.js +0 -1
  342. package/assets/esri/core/workers/chunks/1ac8a7a129ba33e05a24.js +0 -1
  343. package/assets/esri/core/workers/chunks/1d92d53186debd52e753.js +0 -1
  344. package/assets/esri/core/workers/chunks/1dba93abe84d30f05d8d.js +0 -1
  345. package/assets/esri/core/workers/chunks/2033e6d42453e4e67048.js +0 -1
  346. package/assets/esri/core/workers/chunks/20b54e7872d967f3be32.js +0 -1
  347. package/assets/esri/core/workers/chunks/2501d9459f6d14c797e5.js +0 -1
  348. package/assets/esri/core/workers/chunks/253c231b5a52f1d2d3a5.js +0 -1
  349. package/assets/esri/core/workers/chunks/257f1e8316877f611e11.js +0 -1
  350. package/assets/esri/core/workers/chunks/28924f31f5ba8ebdc60a.js +0 -1
  351. package/assets/esri/core/workers/chunks/28b09fe50b855a1d8a3f.js +0 -1
  352. package/assets/esri/core/workers/chunks/2b0558c1716425974563.js +0 -2
  353. package/assets/esri/core/workers/chunks/2e7c830b5b1fe406169f.js +0 -1
  354. package/assets/esri/core/workers/chunks/2f4ed8a63d57636a4ebe.js +0 -1
  355. package/assets/esri/core/workers/chunks/393f79843d5a78c1cc37.js +0 -1
  356. package/assets/esri/core/workers/chunks/3958d92c737b3a2a3bc2.js +0 -1
  357. package/assets/esri/core/workers/chunks/3978f00a03e97645b276.js +0 -1
  358. package/assets/esri/core/workers/chunks/3b5c5356353f1a2303a0.js +0 -1
  359. package/assets/esri/core/workers/chunks/40e48b720d89cd067892.js +0 -1
  360. package/assets/esri/core/workers/chunks/436d51b9f1b1b5abc4bc.js +0 -1
  361. package/assets/esri/core/workers/chunks/44a786aba84918f2b247.js +0 -1
  362. package/assets/esri/core/workers/chunks/463747a822499dd933ef.js +0 -1
  363. package/assets/esri/core/workers/chunks/484b251fbcbffcb58323.js +0 -1
  364. package/assets/esri/core/workers/chunks/495f90fe3d0ad32bb82d.js +0 -1
  365. package/assets/esri/core/workers/chunks/49a3888bf9e2481642ac.js +0 -1
  366. package/assets/esri/core/workers/chunks/4ce57dd39075e8fb357c.js +0 -1
  367. package/assets/esri/core/workers/chunks/5459ba8fdeb2370bb52b.js +0 -1
  368. package/assets/esri/core/workers/chunks/55924fb0de05e727f5e3.js +0 -1
  369. package/assets/esri/core/workers/chunks/55dda957c79fb285185f.js +0 -1
  370. package/assets/esri/core/workers/chunks/56e6d8c4a9ed893ce951.js +0 -1
  371. package/assets/esri/core/workers/chunks/57159bcac86d660dcceb.js +0 -1
  372. package/assets/esri/core/workers/chunks/58026fc30d8a0ded4102.js +0 -1
  373. package/assets/esri/core/workers/chunks/5eb29f0068f1c839d05e.js +0 -1
  374. package/assets/esri/core/workers/chunks/5f553da48d0ccbbfcd3c.js +0 -2
  375. package/assets/esri/core/workers/chunks/5fb76575575fe8cfb1f0.js +0 -1
  376. package/assets/esri/core/workers/chunks/6072c63a5da4366e9942.js +0 -1
  377. package/assets/esri/core/workers/chunks/626a715fdec93e188e0c.js +0 -1
  378. package/assets/esri/core/workers/chunks/6525c925bb91facb3575.js +0 -1
  379. package/assets/esri/core/workers/chunks/6529b5cc3ac6baa29fff.js +0 -2
  380. package/assets/esri/core/workers/chunks/65d1e338612e59063eba.js +0 -1
  381. package/assets/esri/core/workers/chunks/66e60351aacbd162775f.js +0 -1
  382. package/assets/esri/core/workers/chunks/694371f51c52a7a94da4.js +0 -1
  383. package/assets/esri/core/workers/chunks/69b0dcd7bcd8ec42e2c3.js +0 -1
  384. package/assets/esri/core/workers/chunks/7260e63252fa5452dc22.js +0 -1
  385. package/assets/esri/core/workers/chunks/72eb0ac55026a4f5d6a7.js +0 -1
  386. package/assets/esri/core/workers/chunks/79429c8be5da85713200.js +0 -1
  387. package/assets/esri/core/workers/chunks/79c0a966f7d11d3c217f.js +0 -1
  388. package/assets/esri/core/workers/chunks/7b470d6ad182548b9e95.js +0 -1
  389. package/assets/esri/core/workers/chunks/7b862a074816c099b9ff.js +0 -1
  390. package/assets/esri/core/workers/chunks/7baa363b3b0a442a63d2.js +0 -1
  391. package/assets/esri/core/workers/chunks/7d8eb4dbea1916320f74.js +0 -1
  392. package/assets/esri/core/workers/chunks/7ddf9b2718dd047f15e6.js +0 -1
  393. package/assets/esri/core/workers/chunks/835af7b4fd92cb4e7af0.js +0 -1
  394. package/assets/esri/core/workers/chunks/8566449c39eba55147f5.js +0 -1
  395. package/assets/esri/core/workers/chunks/864691186c449ca2c3db.js +0 -1
  396. package/assets/esri/core/workers/chunks/88d5541679e77117bf03.js +0 -1
  397. package/assets/esri/core/workers/chunks/88fd698b940dadcc6dc5.js +0 -1
  398. package/assets/esri/core/workers/chunks/894ebc64b698e5d7604b.js +0 -1
  399. package/assets/esri/core/workers/chunks/8be707044d992ef5f1d8.js +0 -1
  400. package/assets/esri/core/workers/chunks/8c1bddc88cc5f4251021.js +0 -1
  401. package/assets/esri/core/workers/chunks/8eecc6df6511c8830f5d.js +0 -1
  402. package/assets/esri/core/workers/chunks/8f0d4aec8bd3cbfefc40.js +0 -1
  403. package/assets/esri/core/workers/chunks/8fea514aada1195c8f30.js +0 -1
  404. package/assets/esri/core/workers/chunks/94bf7f0da6ad3f7ea277.js +0 -1
  405. package/assets/esri/core/workers/chunks/987594539981483a7c5e.js +0 -1
  406. package/assets/esri/core/workers/chunks/995a433936fc90d41634.js +0 -2
  407. package/assets/esri/core/workers/chunks/9bbff8237540409610b3.js +0 -1
  408. package/assets/esri/core/workers/chunks/9e1392a0c608a13ab036.js +0 -1
  409. package/assets/esri/core/workers/chunks/9f1211d2267fb7673c4d.js +0 -1
  410. package/assets/esri/core/workers/chunks/a486d99f9879f94151ba.js +0 -1
  411. package/assets/esri/core/workers/chunks/a50421fe79f264ae3619.js +0 -1
  412. package/assets/esri/core/workers/chunks/a5c115fc53edb52ce1de.js +0 -1
  413. package/assets/esri/core/workers/chunks/a739e617fc461014ad1f.js +0 -1
  414. package/assets/esri/core/workers/chunks/aa21031c8f12ca438eaa.js +0 -1
  415. package/assets/esri/core/workers/chunks/ad27689b231e282b7620.js +0 -1
  416. package/assets/esri/core/workers/chunks/aed16c3e26652960ad3f.js +0 -1
  417. package/assets/esri/core/workers/chunks/af6e8c961fd768fa7be3.js +0 -1
  418. package/assets/esri/core/workers/chunks/b3a1a93c6dc9247cb048.js +0 -1
  419. package/assets/esri/core/workers/chunks/b4abf82b8ac974a55ae1.js +0 -1
  420. package/assets/esri/core/workers/chunks/b8cd81d8fcc78d272130.js +0 -1
  421. package/assets/esri/core/workers/chunks/b9a1046ca2cd0cca5da5.js +0 -1
  422. package/assets/esri/core/workers/chunks/b9d6f89f9b8e9d1bc787.js +0 -1
  423. package/assets/esri/core/workers/chunks/bab5f4b2424b487b87ac.js +0 -1
  424. package/assets/esri/core/workers/chunks/c02b3b8b71205f6ce290.js +0 -1
  425. package/assets/esri/core/workers/chunks/c17dda6fadb8bfad0d51.js +0 -1
  426. package/assets/esri/core/workers/chunks/c21212c356f65244e34e.js +0 -1
  427. package/assets/esri/core/workers/chunks/c374e5d5980db74c4aca.js +0 -1
  428. package/assets/esri/core/workers/chunks/c6bf17b5ff6ec4b980a1.js +0 -1
  429. package/assets/esri/core/workers/chunks/c99dcc17fbd7acd2ad2e.js +0 -1
  430. package/assets/esri/core/workers/chunks/ce481eeb27ea9c1782ae.js +0 -1
  431. package/assets/esri/core/workers/chunks/cec1c87eb3749276ced4.js +0 -1
  432. package/assets/esri/core/workers/chunks/cef02ed3942c010da2e8.js +0 -29
  433. package/assets/esri/core/workers/chunks/cfdbc48f58433a3d5fc3.js +0 -1
  434. package/assets/esri/core/workers/chunks/d456520e4b119a2816b6.js +0 -1
  435. package/assets/esri/core/workers/chunks/d8da31bfe2bc4174e5aa.js +0 -1
  436. package/assets/esri/core/workers/chunks/da1c9257793c2817f40f.js +0 -1
  437. package/assets/esri/core/workers/chunks/dc0c3109b7558b4fe016.js +0 -1
  438. package/assets/esri/core/workers/chunks/ddd8f6154e265dbb6f9f.js +0 -1
  439. package/assets/esri/core/workers/chunks/de601f0d5a2a282d2efd.js +0 -1
  440. package/assets/esri/core/workers/chunks/e227eb44cd139fe2bc1b.js +0 -1
  441. package/assets/esri/core/workers/chunks/e2ddfc96ddba92302e0c.js +0 -1
  442. package/assets/esri/core/workers/chunks/e61ab8ef30bbe788b9d7.js +0 -1
  443. package/assets/esri/core/workers/chunks/e89e6eea380ca2c13b64.js +0 -1
  444. package/assets/esri/core/workers/chunks/e9d352d030dcad1619a6.js +0 -1
  445. package/assets/esri/core/workers/chunks/eb95464bd017fb839510.js +0 -1
  446. package/assets/esri/core/workers/chunks/ed4ac5568dc2815b066d.js +0 -1
  447. package/assets/esri/core/workers/chunks/ed564358cc7b3ee463a3.js +0 -1
  448. package/assets/esri/core/workers/chunks/ee63c693f2539f3bfa17.js +0 -2
  449. package/assets/esri/core/workers/chunks/ef2e0a014c982d9c7ca4.js +0 -1
  450. package/assets/esri/core/workers/chunks/ef9489d1dccb817460bb.js +0 -2
  451. package/assets/esri/core/workers/chunks/f086c6d229fb34a9d7f9.js +0 -1
  452. package/assets/esri/core/workers/chunks/f35e749bb5be39880cbe.js +0 -1
  453. package/assets/esri/core/workers/chunks/f4bc563c71c478d3912f.js +0 -1
  454. package/assets/esri/core/workers/chunks/f6150b51a9430691a040.js +0 -1
  455. package/assets/esri/core/workers/chunks/f6f7d885b4d6080e3f58.js +0 -1
  456. package/assets/esri/core/workers/chunks/f95870bb4d8e4e13e69e.js +0 -1
  457. package/assets/esri/core/workers/chunks/fa59f10ed0f182a2a7f3.js +0 -1
  458. package/assets/esri/core/workers/chunks/fc9065d0cd6285fe0f0d.js +0 -1
  459. /package/assets/esri/core/workers/chunks/{ee63c693f2539f3bfa17.js.LICENSE.txt → 61312d3b5477ed9d87d9.js.LICENSE.txt} +0 -0
  460. /package/assets/esri/core/workers/chunks/{6529b5cc3ac6baa29fff.js.LICENSE.txt → 856dba96332509fb1d7a.js.LICENSE.txt} +0 -0
  461. /package/assets/esri/core/workers/chunks/{995a433936fc90d41634.js.LICENSE.txt → e63f94c8097555b266ad.js.LICENSE.txt} +0 -0
  462. /package/assets/esri/core/workers/chunks/{5f553da48d0ccbbfcd3c.js.LICENSE.txt → eca0736953a20cfc64ad.js.LICENSE.txt} +0 -0
  463. /package/assets/esri/core/workers/chunks/{ef9489d1dccb817460bb.js.LICENSE.txt → fc2234e0d202631f3abf.js.LICENSE.txt} +0 -0
  464. /package/assets/esri/core/workers/chunks/{2b0558c1716425974563.js.LICENSE.txt → fcb943c3b31b1bf62e65.js.LICENSE.txt} +0 -0
@@ -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{at as u,i as m,d as l,b as c,au as d,P as _,m as h}from"../../../chunks/Point2D.js";import{aI as f,aE as p,aJ as k,aK as b,aL as y,S as T,aM as N,aN as g,aO as v}from"../../../chunks/SpatialReference.js";import{G as x,K as A,P as S,E as w,D as C,F as D,L as F,M as j,v as O}from"../../../chunks/Envelope.js";import{P as z,a as I,S as E,M as P,y as B,z as V,A as R,B as M,F as U,H as W}from"../../../chunks/MultiPathImpl.js";import{convertGeometryxToFlat as G,convertFlatToGeometryJSON as L,convertGeometryToFlat as X}from"../../FlatGeometry.js";import Y from"../../SpatialReference.js";import"./initNoPeFactory.js";import{isPoint as K,isMultipoint as q,isPolyline as J,isPolygon as Q}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,L=Number.NaN,X=Number.NaN,Y=Number.NaN,K=Number.NaN,q=Number.NaN,J=Number.NaN,Q=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,q=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,Q=me(i);continue}}else if("xmax"===u){if(!D&&(e===a.enumUnknown||e===a.enumEnvelope)){D=!0,L=ue(i);continue}}else if("ymax"===u){if(!F&&(e===a.enumUnknown||e===a.enumEnvelope)){F=!0,X=ue(i);continue}}else if("mmax"===u){if(!I&&(e===a.enumUnknown||e===a.enumEnvelope)){I=!0,J=ue(i);continue}}else if("zmax"===u){if(!O&&(e===a.enumUnknown||e===a.enumEnvelope)){O=!0,K=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(L)||Number.isNaN(X))&&(W=Number.NaN);const e=new w({xmin:W,ymin:G,xmax:L,ymax:X});j&&O&&e.setInterval(1,0,Y,K),z&&I&&e.setInterval(2,0,q,J),E&&P&&e.setInterval(3,0,Q,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,L=!0;if(0!==M.length&&(L=!1,f(M)&&(G=p(M))),G||0===U.length||(L=!1,f(U)&&(G=p(U))),!G&&w>0&&(L=!1,k(w)&&(D<=0||b())&&(G=y(w,D))),!G&&S>0&&(L=!1,k(S)&&(C<=0||b())&&(G=y(S,C))),L&&(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 Le(t,n=!1){if(!n&&(K(t)||q(t)||J(t)||Q(t))){const n=new v;return n.setGeometry(e(X(t))),n}const r=new $(t,{strict:!1});return r.nextToken(),We.execute(0,a.enumUnknown,r,!0,!1)}function Xe(e){let t=null;return[e.map(e=>{if(null==t){const n=Ye(e);return t=n.getSpatialReference(),n.getGeometry()}return Ke(e)}),t]}function Ye(e){const t=Le(e),n=Je(e.spatialReference);return n&&t.setSpatialReference(n),t}function Ke(e){return Le(e).getGeometry()}function qe(e){return Le(e,!0).getGeometry()}function Je(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 Qe(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=L(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{Xe as fromGeometries,Ye as fromGeometry,Ke as fromGeometryToGXGeometry,qe as fromGeometryToGXGeometryUsingImportOperator,Je as fromSpatialReference,Ge as getSpatialReference,Qe 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,aX as b,c as y,e as T,a as N,f as g,aY 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,X as O}from"../../../chunks/Envelope.js";import{P as z,a as I,S as E,M as P,J as B,a5 as V,a6 as R,a7 as M,a8 as U,a9 as W}from"../../../chunks/MultiPathImpl.js";import{convertGeometryxToFlat as X,convertFlatToGeometryJSON as G,convertGeometryToFlat as L}from"../../FlatGeometry.js";import Y from"../../SpatialReference.js";import"./initNoPeFactory.js";import{isPoint as q,isMultipoint as K,isPolyline as J,isPolygon as Q}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,X=Number.NaN,G=Number.NaN,L=Number.NaN,Y=Number.NaN,q=Number.NaN,K=Number.NaN,J=Number.NaN,Q=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,X=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,Q=me(i);continue}}else if("xmax"===u){if(!D&&(e===a.enumUnknown||e===a.enumEnvelope)){D=!0,G=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,J=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(X)||Number.isNaN(G)||Number.isNaN(L))&&(W=Number.NaN);const e=new w({xmin:W,ymin:X,xmax:G,ymax:L});j&&O&&e.setInterval(1,0,Y,q),z&&I&&e.setInterval(2,0,K,J),E&&P&&e.setInterval(3,0,Q,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 X=null,G=!0;if(0!==M.length&&(G=!1,f(M)&&(X=p(M))),X||0===U.length||(G=!1,f(U)&&(X=p(U))),!X&&w>0&&(G=!1,k(w)&&(D<=0||b())&&(X=y(w,D))),!X&&S>0&&(G=!1,k(S)&&(C<=0||b())&&(X=y(S,C))),G&&(X=T(W)),a&&X){const e=new N;X.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),X=g(X,e)}return X}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 Xe(e){return Array.isArray(e)?e[0].spatialReference:e.spatialReference}function Ge(t,n=!1){if(!n&&(q(t)||K(t)||J(t)||Q(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=Ge(e),n=Je(e.spatialReference);return n&&t.setSpatialReference(n),t}function qe(e){return Ge(e).getGeometry()}function Ke(e){return Ge(e,!0).getGeometry()}function Je(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 Qe(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=X(e)}if(n){const e=G(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,Je as fromSpatialReference,Xe as getSpatialReference,Qe as toGeometry,Ze as toSpatialReference};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import"tslib";import{I as e,J as t,K as n,b as s,a as r,c as a,L as i,m as o}from"../../../chunks/SpatialReference.js";import"../../../chunks/Point2D.js";import"../../../chunks/Envelope.js";import"../../../chunks/Geometry.js";import{Envelope2D as c}from"../../../chunks/Envelope2D.js";function p(c,p,m){let u,l;if(m?.geographicTransformation){if(m.geographicTransformation.steps?.length){const s=new e;s.setInputSpatialReference(c),s.setOutputSpatialReference(p);for(const e of m.geographicTransformation.steps){let r;r=e.wkid?t(e.wkid,e.isInverse):n(e.wkt,e.isInverse),s.add(r)}u=s.create()}else u=i();if(m.extendedParams){l=o();const{densificationStep:e}=m.extendedParams;null!=e&&(l.densificationStep=e)}}else if(m?.areaOfInterestExtent)return s(c,p,f(m.areaOfInterestExtent));return u?r(c,p,u,l):a(c,p)}function f(e){return c.construct(e.xmin,e.ymin,e.xmax,e.ymax)}export{p as createProjectionTransformation};
2
+ import{a3 as e,a4 as t,a5 as n,z as s,y as a,x as r,a6 as i,B as o}from"../../../chunks/UnitFactory.js";import"../../../chunks/Point2D.js";import"../../../chunks/Envelope.js";import"../../../chunks/Geometry.js";import{Envelope2D as c}from"../../../chunks/Envelope2D.js";function f(c,f,m){let u,l;if(m?.geographicTransformation){if(m.geographicTransformation.steps?.length){const s=new e;s.setInputSpatialReference(c),s.setOutputSpatialReference(f);for(const e of m.geographicTransformation.steps){let a;a=e.wkid?t(e.wkid,e.isInverse):n(e.wkt,e.isInverse),s.add(a)}u=s.create()}else u=i();if(m.extendedParams){l=o();const{densificationStep:e}=m.extendedParams;null!=e&&(l.densificationStep=e)}}else if(m?.areaOfInterestExtent)return s(c,f,p(m.areaOfInterestExtent));return u?a(c,f,u,l):r(c,f)}function p(e){return c.construct(e.xmin,e.ymin,e.xmax,e.ymax)}export{f as createProjectionTransformation};
@@ -0,0 +1,2 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
+ const o={loadPromise:null,projectOperator:null,jsonProjectOperator:null,geographicTransformationUtils:null,defaultTransformations:{}};function r(){o.loadPromise=null,o.projectOperator=null,o.jsonProjectOperator=null,o.geographicTransformationUtils=null,o.defaultTransformations={}}export{o as projectionUtilsState,r as resetProjectionUtilsState};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import n from"../core/Error.js";import{throwIfAborted as e,waitTick as r}from"../core/promiseUtils.js";import{trackAccess as t}from"../core/accessorSupport/tracking.js";import{SimpleObservable as o}from"../core/accessorSupport/tracking/SimpleObservable.js";import{create as i}from"../core/libs/gl-matrix-2/factories/vec3f64.js";import{assertNotMeshes as s,assertNotMesh as a}from"./asserts.js";import{isSphericalECEF as l,isSphericalPCPF as u}from"./ellipsoidUtils.js";import c from"./Extent.js";import f from"./Geometry.js";import p from"./Multipoint.js";import m from"./Point.js";import h from"./Polygon.js";import g from"./Polyline.js";import d from"./SpatialReference.js";import{WGS84ECEFSpatialReference as j}from"./spatialReferenceEllipsoidUtils.js";import y from"./operators/support/GeographicTransformation.js";import{projectBuffer as R}from"./projection/projectBuffer.js";import{getProjector as x}from"./projection/projectors.js";import{projectXYZToVector as w}from"./projection/projectXYZToVector.js";import{isPoint as v,isExtent as S,isPolygon as A,isPolyline as M,isMultipoint as T}from"./support/jsonTypeUtils.js";import{equals as z,isValid as Z,isWGS84 as b,isWebMercator as P,isCGCS2000 as k}from"./support/spatialReferenceUtils.js";import{isEllipticArc as U,isCircularArc as E,isBezierCurve as G,getEndpoint as O}from"./support/curves/curveUtils.js";let C=null,D=null,W=null,I=null,L={};const B=new o;function V(){return!!(D?.isLoaded()&&W?.isLoaded()&&I?.isLoaded())}function X(){return!!V()||(t(B),F(),!1)}function Y(n,e){return!n||!e||(tn(n,e)||X())}function q(n,e){return!tn(n,e)&&!V()}async function F(n){null==C&&(C=Promise.all([import("./operators/projectOperator.js").then(n=>(D=n,D.load())),import("./operators/json/projectOperator.js").then(n=>(W=n,W.load())),import("./operators/support/geographicTransformationUtils.js").then(n=>(I=n,I.load()))])),await C,e(n),B.notify()}function H(n,e,r){return Array.isArray(n)?0===n.length?[]:(s(n),J(n,n[0].spatialReference,e,r)):(a(n),J([n],n.spatialReference,e,r)[0])}function J(n,e,r,t){if(null==e||null==r)return n;if(tn(e,r,t))return n.map(n=>an(n,e,r));if(null==t?.geographicTransformation&&l(e)){return J(n.map(n=>an(n,e,d.WGS84)),d.WGS84,r,{zConversionDisabled:t?.zConversionDisabled})}if(null==t?.geographicTransformation&&l(r)){return J(n,e,d.WGS84).map(n=>an(n,d.WGS84,r))}if(!V())throw new _;if(!t?.geographicTransformation)if(t?.extendedParams)t={...t,geographicTransformation:I.getTransformation(e,r,t.areaOfInterestExtent)||new y};else if(!t?.areaOfInterestExtent){const n=K(e,r);let o=L[n];o||(o=I.getTransformation(e,r)||new y,L[n]=o),t={geographicTransformation:o,zConversionDisabled:t?.zConversionDisabled}}return n[0].spatialReference||(n[0].spatialReference=e),n[0]instanceof f?D.executeMany(n,r,t):W.executeMany(n,r,t)}function K(n,e){return[n.wkid?.toString()??"-1",n.wkt?.toString()??"",n.wkt2?.toString()??"",e.wkid?.toString()??"-1",e.wkt?.toString()??"",e.wkt2?.toString()??""].join()}function N(n,e,r){try{return H(n,e,r)}catch(t){return null}}function Q(n,e){const r=$([n],e);return null!=r.pending?{pending:r.pending,geometry:null}:null!=r.geometries?{pending:null,geometry:r.geometries[0]}:{pending:null,geometry:null}}function $(n,e,r){if(!V())for(const o of n)if(null!=o&&!z(o.spatialReference,e)&&Z(o.spatialReference)&&Z(e)&&!tn(o.spatialReference,e))return t(B),{pending:F(),geometries:null};return{pending:null,geometries:n.map(n=>null==n?null:z(n.spatialReference,e)?n:Z(n.spatialReference)&&Z(e)?H(n,e,r):null)}}class _ extends n{constructor(){super("projection:not-loaded","projection engine not fully loaded yet, please call load()")}}function nn(){C=null,D=null,W=null,I=null,L={}}const en={get loadPromise(){return C}};async function rn(n,r,t){if(e(t),!n)return n;const o=$(Array.isArray(n)?n:[n],r,t);if(o.pending)return await o.pending,e(t),rn(n,r,t);const i=o.geometries??[];return Array.isArray(n)?i:i[0]}function tn(n,e,r){return!(r?.areaOfInterestExtent||r?.extendedParams||r?.geographicTransformation)&&(!!z(n,e)||Z(n)&&Z(e)&&!!x(n,e))}function on(n,e){if(z(n,e))return!0;if(!Z(n)||!Z(e))return!1;const r=b(n)||P(n)||k(n),t=b(e)||P(e)||k(e);return r&&t}async function sn(n,e,t,o){if(V())return r(o);if(Array.isArray(n)){for(const{source:r,dest:i,options:s}of n)if(r&&i&&!tn(r,i,s))return F(o)}else if(n&&e&&!tn(n,e,t))return F(o);return r(o)}function an(n,e,r){return n?v(n)?un(n,e,new m,r,0):S(n)?jn(n,e,new c,r,0):A(n)?gn(n,e,new h,r,0):M(n)?mn(n,e,new g,r,0):T(n)?fn(n,e,new p,r,0):null:null}function ln(n,e,r=e.spatialReference,t=0){return null!=r&&null!=n.spatialReference&&null!=un(n,n.spatialReference,e,r,t)}function un(n,e,r,t,o){wn[0]=n.x,wn[1]=n.y;const i=n.z;return wn[2]=void 0!==i?i:o,R(wn,e,0,wn,t,0)?(r.x=wn[0],r.y=wn[1],r.spatialReference=t,void 0!==i||u(t)?(r.z=wn[2],r.hasZ=!0):(r.z=void 0,r.hasZ=!1),void 0===n.m?(r.m=void 0,r.hasM=!1):(r.m=n.m,r.hasM=!0),r):null}function cn(n,e,r=e.spatialReference,t=0){return null!=n.spatialReference&&null!=r&&null!=fn(n,n.spatialReference,e,r,t)}function fn(n,e,r,t,o){const{points:i,hasZ:s,hasM:a}=n,l=[],u=i.length,c=[];for(const p of i)c.push(p[0],p[1],s?p[2]:o);if(!R(c,e,0,c,t,0,u))return null;const f=xn(s,t);for(let p=0;p<u;++p){const n=3*p,e=c[n],r=c[n+1];f&&a?l.push([e,r,c[n+2],i[p][3]]):f?l.push([e,r,c[n+2]]):a?l.push([e,r,i[p][2]]):l.push([e,r])}return r.points=l,r.spatialReference=t,r.hasZ=s,r.hasM=a,r}function pn(n,e,r=e.spatialReference,t=0){return null!=n.spatialReference&&null!=r&&null!=mn(n,n.spatialReference,e,r,t)}function mn(n,e,r,t,o){const{curvePaths:i,paths:s,hasZ:a,hasM:l}=n;if(!(i?Rn(i,a??!1,l??!1,e,r.curvePaths=[],t,o):yn(s,a??!1,l??!1,e,r.paths,t,o)))return null;const u=xn(a,t);return r.spatialReference=t,r.hasZ=u,r.hasM=l,r}function hn(n,e,r=e.spatialReference,t=0){return null!=n.spatialReference&&null!=r&&null!=gn(n,n.spatialReference,e,r,t)}function gn(n,e,r,t,o){const{curveRings:i,rings:s,hasZ:a,hasM:l}=n;return(i?Rn(i,a??!1,l??!1,e,r.curveRings=[],t,o):yn(s,a??!1,l??!1,e,r.rings,t,o))?(r.spatialReference=t,r.hasZ=xn(a,t),r.hasM=l,r):null}function dn(n,e,r=e.spatialReference,t=0){return null!=n.spatialReference&&null!=r&&null!=jn(n,n.spatialReference,e,r,t)}function jn(n,e,r,t,o){const{xmin:i,ymin:s,xmax:a,ymax:l,hasZ:u,hasM:c}=n,f=u?n.zmin:o;if(!w(i,s,f,e,wn,t))return null;const p=xn(u,t);r.xmin=wn[0],r.ymin=wn[1],p&&(r.zmin=wn[2]);const m=u?n.zmax:o;return w(a,l,m,e,wn,t)?(r.xmax=wn[0],r.ymax=wn[1],p&&(r.zmax=wn[2]),c&&(r.mmin=n.mmin,r.mmax=n.mmax),r.spatialReference=t,r):null}function yn(n,e,r,t,o,i,s=0){const a=new Array;for(const f of n)for(const n of f)a.push(n[0],n[1],e?n[2]:s);if(!R(a,t,0,a,i,0))return!1;let l=0;o.length=0;const u=e?3:2,c=xn(e,i);for(const f of n){const n=new Array;for(const e of f){const t=a.slice(l,l+=3);c||t.pop(),r&&t.push(e[u]),n.push(t)}o.push(n)}return!0}function Rn(n,e,r,t,o,i,s=0){const a=new Array;for(const f of n)for(const n of f){if(U(n))return!1;if(E(n)){const[r,t]=n.c;a.push(r[0],r[1],e?r[2]:s,t[0],t[1],s);continue}if(G(n)){const[r,t,o]=n.b;a.push(r[0],r[1],e?r[2]:s,t[0],t[1],s,o[0],o[1],s);continue}const r=n;a.push(r[0],r[1],e?r[2]:s)}if(!R(a,t,0,a,i,0))return!1;let l=0;o.length=0;const u=e?3:2,c=xn(e,i);for(const f of n){const n=new Array;for(const e of f){const t=a.slice(l,l+=3);if(c||t.pop(),r&&t.push(O(e)[u]),U(e))return!1;if(E(e)){const e=a[l++],r=a[l++];++l,n.push({c:[t,[e,r]]});continue}if(G(e)){const e=a[l++],r=a[l++];++l;const o=a[l++],i=a[l++];++l,n.push({b:[t,[e,r],[o,i]]});continue}n.push(t)}o.push(n)}return!0}function xn(n,e){return n||u(e)||z(e,j)}const wn=i();export{tn as canProjectWithoutEngine,sn as initializeProjection,on as isEqualBaseGCS,V as isLoaded,X as isLoadedOrLoad,Y as isLoadedOrLoadFor,F as load,H as project,rn as projectAsync,dn as projectExtent,J as projectMany,cn as projectMultipoint,Q as projectOrLoad,$ as projectOrLoadMany,ln as projectPoint,hn as projectPolygon,pn as projectPolyline,an as projectWithoutEngine,q as requiresLoad,en as test,N as tryProject,nn as unload};
2
+ import r from"../core/Error.js";import{throwIfAborted as e,waitTick as n}from"../core/promiseUtils.js";import{trackAccess as t}from"../core/accessorSupport/tracking.js";import{SimpleObservable as o}from"../core/accessorSupport/tracking/SimpleObservable.js";import{create as s}from"../core/libs/gl-matrix-2/factories/vec3f64.js";import{assertNotMeshes as i,assertNotMesh as a}from"./asserts.js";import{isSphericalECEF as c,isSphericalPCPF as l}from"./ellipsoidUtils.js";import u from"./Extent.js";import f from"./Geometry.js";import p from"./Multipoint.js";import m from"./Point.js";import g from"./Polygon.js";import h from"./Polyline.js";import j from"./SpatialReference.js";import{WGS84ECEFSpatialReference as d}from"./spatialReferenceEllipsoidUtils.js";import y from"./operators/support/GeographicTransformation.js";import{projectBuffer as R}from"./projection/projectBuffer.js";import{projectionUtilsState as x}from"./projection/projectionUtilsState.js";import{getProjector as w}from"./projection/projectors.js";import{projectXYZToVector as v}from"./projection/projectXYZToVector.js";import{isPoint as P,isExtent as T,isPolygon as S,isPolyline as A,isMultipoint as M}from"./support/jsonTypeUtils.js";import{equals as O,isValid as z,isWGS84 as U,isWebMercator as Z,isCGCS2000 as b}from"./support/spatialReferenceUtils.js";import{isEllipticArc as k,isCircularArc as E,isBezierCurve as G,getEndpoint as C}from"./support/curves/curveUtils.js";const D=new o;function W(){const{projectOperator:r,jsonProjectOperator:e,geographicTransformationUtils:n}=x;return!!(r?.isLoaded()&&e?.isLoaded()&&n?.isLoaded())}function I(){return!!W()||(t(D),V(),!1)}function L(r,e){return!r||!e||($(r,e)||I())}function B(r,e){return!$(r,e)&&!W()}async function V(r){null==x.loadPromise&&(x.loadPromise=Promise.all([import("./operators/projectOperator.js").then(r=>(x.projectOperator=r,r.load())),import("./operators/json/projectOperator.js").then(r=>(x.jsonProjectOperator=r,r.load())),import("./operators/support/geographicTransformationUtils.js").then(r=>(x.geographicTransformationUtils=r,r.load()))])),await x.loadPromise,e(r),D.notify()}function X(r,e,n){return Array.isArray(r)?0===r.length?[]:(i(r),Y(r,r[0].spatialReference,e,n)):(a(r),Y([r],r.spatialReference,e,n)[0])}function Y(r,e,n,t){if(null==e||null==n)return r;if($(e,n,t))return r.map(r=>er(r,e,n));if(null==t?.geographicTransformation&&c(e)){return Y(r.map(r=>er(r,e,j.WGS84)),j.WGS84,n,{zConversionDisabled:t?.zConversionDisabled})}if(null==t?.geographicTransformation&&c(n)){return Y(r,e,j.WGS84).map(r=>er(r,j.WGS84,n))}if(!W())throw new K;const{geographicTransformationUtils:o,defaultTransformations:s}=x;if(!t?.geographicTransformation)if(t?.extendedParams)t={...t,geographicTransformation:o.getTransformation(e,n,t.areaOfInterestExtent)||new y};else if(!t?.areaOfInterestExtent){const r=q(e,n);let i=s[r];i||(i=o.getTransformation(e,n)||new y,s[r]=i),t={geographicTransformation:i,zConversionDisabled:t?.zConversionDisabled}}return r[0].spatialReference||(r[0].spatialReference=e),r[0]instanceof f?x.projectOperator.executeMany(r,n,t):x.jsonProjectOperator.executeMany(r,n,t)}function q(r,e){return[r.wkid?.toString()??"-1",r.wkt?.toString()??"",r.wkt2?.toString()??"",e.wkid?.toString()??"-1",e.wkt?.toString()??"",e.wkt2?.toString()??""].join()}function F(r,e,n){try{return X(r,e,n)}catch(t){return null}}function H(r,e){const n=J([r],e);return null!=n.pending?{pending:n.pending,geometry:null}:null!=n.geometries?{pending:null,geometry:n.geometries[0]}:{pending:null,geometry:null}}function J(r,e,n){if(!W())for(const o of r)if(null!=o&&!O(o.spatialReference,e)&&z(o.spatialReference)&&z(e)&&!$(o.spatialReference,e))return t(D),{pending:V(),geometries:null};return{pending:null,geometries:r.map(r=>null==r?null:O(r.spatialReference,e)?r:z(r.spatialReference)&&z(e)?X(r,e,n):null)}}class K extends r{constructor(){super("projection:not-loaded","projection engine not fully loaded yet, please call load()")}}const N={get loadPromise(){return x.loadPromise}};async function Q(r,n,t){if(e(t),!r)return r;const o=J(Array.isArray(r)?r:[r],n,t);if(o.pending)return await o.pending,e(t),Q(r,n,t);const s=o.geometries??[];return Array.isArray(r)?s:s[0]}function $(r,e,n){return!(n?.areaOfInterestExtent||n?.extendedParams||n?.geographicTransformation)&&(!!O(r,e)||z(r)&&z(e)&&!!w(r,e))}function _(r,e){if(O(r,e))return!0;if(!z(r)||!z(e))return!1;const n=U(r)||Z(r)||b(r),t=U(e)||Z(e)||b(e);return n&&t}async function rr(r,e,t,o){if(W())return n(o);if(Array.isArray(r)){for(const{source:n,dest:s,options:i}of r)if(n&&s&&!$(n,s,i))return V(o)}else if(r&&e&&!$(r,e,t))return V(o);return n(o)}function er(r,e,n){return r?P(r)?tr(r,e,new m,n,0):T(r)?fr(r,e,new u,n,0):S(r)?lr(r,e,new g,n,0):A(r)?ar(r,e,new h,n,0):M(r)?sr(r,e,new p,n,0):null:null}function nr(r,e,n=e.spatialReference,t=0){return null!=n&&null!=r.spatialReference&&null!=tr(r,r.spatialReference,e,n,t)}function tr(r,e,n,t,o){hr[0]=r.x,hr[1]=r.y;const s=r.z;return hr[2]=void 0!==s?s:o,R(hr,e,0,hr,t,0)?(n.x=hr[0],n.y=hr[1],n.spatialReference=t,void 0!==s||l(t)?(n.z=hr[2],n.hasZ=!0):(n.z=void 0,n.hasZ=!1),void 0===r.m?(n.m=void 0,n.hasM=!1):(n.m=r.m,n.hasM=!0),n):null}function or(r,e,n=e.spatialReference,t=0){return null!=r.spatialReference&&null!=n&&null!=sr(r,r.spatialReference,e,n,t)}function sr(r,e,n,t,o){const{points:s,hasZ:i,hasM:a}=r,c=[],l=s.length,u=[];for(const p of s)u.push(p[0],p[1],i?p[2]:o);if(!R(u,e,0,u,t,0,l))return null;const f=gr(i,t);for(let p=0;p<l;++p){const r=3*p,e=u[r],n=u[r+1];f&&a?c.push([e,n,u[r+2],s[p][3]]):f?c.push([e,n,u[r+2]]):a?c.push([e,n,s[p][2]]):c.push([e,n])}return n.points=c,n.spatialReference=t,n.hasZ=i,n.hasM=a,n}function ir(r,e,n=e.spatialReference,t=0){return null!=r.spatialReference&&null!=n&&null!=ar(r,r.spatialReference,e,n,t)}function ar(r,e,n,t,o){const{curvePaths:s,paths:i,hasZ:a,hasM:c}=r;if(!(s?mr(s,a??!1,c??!1,e,n.curvePaths=[],t,o):pr(i,a??!1,c??!1,e,n.paths,t,o)))return null;const l=gr(a,t);return n.spatialReference=t,n.hasZ=l,n.hasM=c,n}function cr(r,e,n=e.spatialReference,t=0){return null!=r.spatialReference&&null!=n&&null!=lr(r,r.spatialReference,e,n,t)}function lr(r,e,n,t,o){const{curveRings:s,rings:i,hasZ:a,hasM:c}=r;return(s?mr(s,a??!1,c??!1,e,n.curveRings=[],t,o):pr(i,a??!1,c??!1,e,n.rings,t,o))?(n.spatialReference=t,n.hasZ=gr(a,t),n.hasM=c,n):null}function ur(r,e,n=e.spatialReference,t=0){return null!=r.spatialReference&&null!=n&&null!=fr(r,r.spatialReference,e,n,t)}function fr(r,e,n,t,o){const{xmin:s,ymin:i,xmax:a,ymax:c,hasZ:l,hasM:u}=r,f=l?r.zmin:o;if(!v(s,i,f,e,hr,t))return null;const p=gr(l,t);n.xmin=hr[0],n.ymin=hr[1],p&&(n.zmin=hr[2]);const m=l?r.zmax:o;return v(a,c,m,e,hr,t)?(n.xmax=hr[0],n.ymax=hr[1],p&&(n.zmax=hr[2]),u&&(n.mmin=r.mmin,n.mmax=r.mmax),n.spatialReference=t,n):null}function pr(r,e,n,t,o,s,i=0){const a=new Array;for(const f of r)for(const r of f)a.push(r[0],r[1],e?r[2]:i);if(!R(a,t,0,a,s,0))return!1;let c=0;o.length=0;const l=e?3:2,u=gr(e,s);for(const f of r){const r=new Array;for(const e of f){const t=a.slice(c,c+=3);u||t.pop(),n&&t.push(e[l]),r.push(t)}o.push(r)}return!0}function mr(r,e,n,t,o,s,i=0){const a=new Array;for(const f of r)for(const r of f){if(k(r))return!1;if(E(r)){const[n,t]=r.c;a.push(n[0],n[1],e?n[2]:i,t[0],t[1],i);continue}if(G(r)){const[n,t,o]=r.b;a.push(n[0],n[1],e?n[2]:i,t[0],t[1],i,o[0],o[1],i);continue}const n=r;a.push(n[0],n[1],e?n[2]:i)}if(!R(a,t,0,a,s,0))return!1;let c=0;o.length=0;const l=e?3:2,u=gr(e,s);for(const f of r){const r=new Array;for(const e of f){const t=a.slice(c,c+=3);if(u||t.pop(),n&&t.push(C(e)[l]),k(e))return!1;if(E(e)){const e=a[c++],n=a[c++];++c,r.push({c:[t,[e,n]]});continue}if(G(e)){const e=a[c++],n=a[c++];++c;const o=a[c++],s=a[c++];++c,r.push({b:[t,[e,n],[o,s]]});continue}r.push(t)}o.push(r)}return!0}function gr(r,e){return r||l(e)||O(e,d)}const hr=s();export{$ as canProjectWithoutEngine,rr as initializeProjection,_ as isEqualBaseGCS,W as isLoaded,I as isLoadedOrLoad,L as isLoadedOrLoadFor,V as load,X as project,Q as projectAsync,ur as projectExtent,Y as projectMany,or as projectMultipoint,H as projectOrLoad,J as projectOrLoadMany,nr as projectPoint,cr as projectPolygon,ir as projectPolyline,er as projectWithoutEngine,B as requiresLoad,N as test,F as tryProject};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import e from"../Extent.js";import{getExtentForScale as n}from"./scaleUtils.js";async function t(e,n){if(e.hasZ||"2d"===n.type)return e;const t=n.map?.ground;return t?.layers.length?(await t.queryElevation(e,{cache:n.basemapTerrain?.elevationQueryCache})).geometry:e}function r(e,n,t){return i(e.center,n,t)}function i(t,r,i){const u=t.hasZ?t.z:void 0;if(r?.map){return(null!=i?n(r,i):r.extent).clone().centerAt(t).set({zmax:u,zmin:u})}const{x:a,y:o,spatialReference:c}=t;return new e({xmin:a-.25,ymin:o-.25,xmax:a+.25,ymax:o+.25,spatialReference:c,zmin:u,zmax:u})}function u(e,n,t,r){switch(e?.type){case"extent":return e;case"polygon":case"polyline":case"multipoint":return e.extent??void 0;case"point":return i(r.execute(e),n??void 0,t??void 0);default:return}}function a([e,n,t,r],[i,u,a,o]){return e===i&&n===u&&(null==t&&null==a||t===a)&&(null==r&&null==o||r===o)}function o(e){return e?l:c}function c(e,n){return e[0]===n[0]&&e[1]===n[1]}function l(e,n){return e[0]===n[0]&&e[1]===n[1]&&e[2]===n[2]}export{a as comparePoints,c as coordinate2DEquals,l as coordinate3DEquals,i as createExtentFromPoint,o as getCoordinateEquals,u as getExtentFromGeometry,t as getPointWithElevation,r as scaleExtent};
2
+ import e from"../Extent.js";import{getExtentForScale as n}from"./scaleUtils.js";async function t(e,n){if(e.hasZ||"2d"===n.type)return e;const t=n.map?.ground;return t?.layers.length?(await t.queryElevation(e,{cache:n.groundView?.elevationQueryCache})).geometry:e}function r(e,n,t){return u(e.center,n,t)}function u(t,r,u){const i=t.hasZ?t.z:void 0;if(r?.map){return(null!=u?n(r,u):r.extent).clone().centerAt(t).set({zmax:i,zmin:i})}const{x:o,y:c,spatialReference:a}=t;return new e({xmin:o-.25,ymin:c-.25,xmax:o+.25,ymax:c+.25,spatialReference:a,zmin:i,zmax:i})}function i(e,n,t,r){switch(e?.type){case"extent":return e;case"polygon":case"polyline":case"multipoint":return e.extent??void 0;case"point":return u(r.execute(e),n??void 0,t??void 0);default:return}}function o([e,n,t,r],[u,i,o,c]){return e===u&&n===i&&(null==t&&null==o||t===o)&&(null==r&&null==c||r===c)}function c(e){return e?l:a}function a(e,n){return e[0]===n[0]&&e[1]===n[1]}function l(e,n){return e[0]===n[0]&&e[1]===n[1]&&e[2]===n[2]}export{o as comparePoints,a as coordinate2DEquals,l as coordinate3DEquals,u as createExtentFromPoint,c as getCoordinateEquals,i as getExtentFromGeometry,t as getPointWithElevation,r as scaleExtent};
package/kernel.js CHANGED
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import has from"./core/has.js";import{addQueryParameter as o}from"./core/urlUtils.js";export{buildDate,commitHash as revision}from"./support/revision.js";Symbol.dispose??=Symbol("Symbol.dispose"),Symbol.asyncDispose??=Symbol("Symbol.asyncDispose");const e="5.2";let s,r=e;function i(o){s=o}function t(e){const r=s?.findCredential(e);return r?.token?o(e,"token",r.token):e}r="5.2.0-next.80",has("host-webworker")||globalThis.$arcgis||Object.defineProperty(globalThis,"$arcgis",{configurable:!1,enumerable:!0,writable:!1,value:{}}),has("host-webworker");export{t as addTokenParameter,r as fullVersion,s as id,i as setId,e as version};
2
+ import has from"./core/has.js";import{addQueryParameter as o}from"./core/urlUtils.js";export{buildDate,commitHash as revision}from"./support/revision.js";Symbol.dispose??=Symbol("Symbol.dispose"),Symbol.asyncDispose??=Symbol("Symbol.asyncDispose");const e="5.2";let s,r=e;function i(o){s=o}function t(e){const r=s?.findCredential(e);return r?.token?o(e,"token",r.token):e}r="5.2.0-next.81",has("host-webworker")||globalThis.$arcgis||Object.defineProperty(globalThis,"$arcgis",{configurable:!1,enumerable:!0,writable:!1,value:{}}),has("host-webworker");export{t as addTokenParameter,r as fullVersion,s as id,i as setId,e as version};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as t}from"tslib";import e from"../../../core/Error.js";import{property as s,subclass as r}from"../../../core/accessorSupport/decorators.js";import i from"../../../geometry/Extent.js";import o from"../../../geometry/Point.js";import n from"../../../geometry/SpatialReference.js";import a from"./BaseRaster.js";import{parseSpatialReference as l,parsePAMInfo as f}from"./pamParser.js";import{getElement as u,getElementValue as h}from"./xmlUtilities.js";import{isPlatformLittleEndian as c}from"../formats/utils.js";import{estimateStatisticsFromHistograms as p}from"../functions/stretchUtils.js";import m from"../../support/PixelBlock.js";import g from"../../support/RasterInfo.js";import d from"../../support/RasterStorageInfo.js";const y=new Map([["byte","u8"],["signedbyte","s8"],["int8","s8"],["uint8","u8"],["int16","s16"],["uint16","u16"],["int32","s32"],["uint32","u32"],["float32","f32"],["float64","f64"],["double64","f64"]]),x=new Map;x.set("none",{blobExtension:".til",isOneSegment:!0,decoderFormat:"bip"}),x.set("lerc",{blobExtension:".lrc",isOneSegment:!1,decoderFormat:"lerc"}),x.set("deflate",{blobExtension:".pzp",isOneSegment:!0,decoderFormat:"deflate"}),x.set("jpeg",{blobExtension:".pjg",isOneSegment:!0,decoderFormat:"jpg"}),x.set("qb3",{blobExtension:".pq3",isOneSegment:!0,decoderFormat:"qb3"});let b=class extends a{constructor(){super(...arguments),this._files=null,this._storageIndex=null,this._isBsq=!1,this.datasetFormat="MRF"}async fetchRawTile(t,e,s,r={}){const{blockWidth:i,blockHeight:o,blockBoundary:n}=this.rasterInfo.storageInfo,a=n[t];if(!a||a.maxRow<e||a.maxCol<s||a.minRow>e||a.minCol>s)return null;const{bandCount:l,pixelType:f}=this.rasterInfo,{ranges:u,actualTileWidth:h,actualTileHeight:c}=this._getTileLocation(t,e,s);if(!u||0===u.length)return null;if(u.some(t=>t.from>t.to)){const t=new Uint8Array(i*o);return new m({width:i,height:o,pixels:void 0,mask:t,validPixelCount:0})}const{bandIds:p}=this.ioConfig,g=this._getBandSegmentCount(),d=[];let y=0;for(y=0;y<g;y++)p&&!p.includes(y)||d.push(this.request(this._files.data,{range:{from:u[y].from,to:u[y].to},responseType:"array-buffer",signal:r.signal}));const b=await Promise.all(d),w=b.map(t=>t.data.byteLength).reduce((t,e)=>t+e),I=new Uint8Array(w),_=[];let A=0;for(y=0;y<g;y++)_.push(A),I.set(new Uint8Array(b[y].data),A),A+=b[y].data.byteLength;const F=x.get(this.rasterInfo.storageInfo.compression).decoderFormat,R=await this.decodePixelBlock(I.buffer,{width:i,height:o,format:F,planes:p?.length||l,offsets:_,pixelType:f}).catch(()=>null);if(null==R)return null;let{noDataValue:S}=this.rasterInfo;if(null!=S&&"lerc"!==F&&!R.mask&&(S=S[0],null!=S)){const t=R.width*R.height,e=new Uint8Array(t);if(Math.abs(S)>1e24)for(y=0;y<t;y++)Math.abs((R.pixels[0][y]-S)/S)>1e-6&&(e[y]=1);else for(y=0;y<t;y++)R.pixels[0][y]!==S&&(e[y]=1);R.mask=e}let M=0,k=0;if(h!==i||c!==o){let t=R.mask;if(t)for(y=0;y<o;y++)if(k=y*i,y<c)for(M=h;M<i;M++)t[k+M]=0;else for(M=0;M<i;M++)t[k+M]=0;else for(t=new Uint8Array(i*o),R.mask=t,y=0;y<c;y++)for(k=y*i,M=0;M<h;M++)t[k+M]=1}return R}async _open(t){this.datasetName=this.url.slice(this.url.lastIndexOf("/")+1);const e=t?t.signal:null,s=await this.request(this.url,{responseType:"xml",signal:e}),{rasterInfo:r,files:i}=this._parseHeader(s.data),{skipMapInfo:o,skipExtensions:n=[]}=this.ioConfig;if(!n.includes("aux.xml")&&!o){const e=await this._fetchAuxiliaryData(t);null!=e&&(r.statistics=e.statistics??r.statistics,r.histograms=e.histograms,e.histograms&&null==r.statistics&&(r.statistics=p(e.histograms)))}o&&this.updateImageSpaceRasterInfo(r),this._set("rasterInfo",r),this._files=i;const a=await this.request(i.index,{responseType:"array-buffer",signal:e});this._storageIndex=w(a.data);const{blockWidth:l,blockHeight:f}=this.rasterInfo.storageInfo,u=this.rasterInfo.storageInfo.pyramidScalingFactor,{width:h,height:c}=this.rasterInfo,m=[],g=this._getBandSegmentCount();let d=0,y=-1;for(;d<this._storageIndex.length;){y++;const t=Math.ceil(h/l/u**y)-1,e=Math.ceil(c/f/u**y)-1;d+=(t+1)*(e+1)*g*4,m.push({maxRow:e,maxCol:t,minCol:0,minRow:0})}this.rasterInfo.storageInfo.blockBoundary=m,y>0&&(this.rasterInfo.storageInfo.firstPyramidLevel=1,this.rasterInfo.storageInfo.maximumPyramidLevel=y),this.updateTileInfo()}_getBandSegmentCount(){return this._isBsq?this.rasterInfo.bandCount:1}_getTileLocation(t,e,s){const{blockWidth:r,blockHeight:i,pyramidScalingFactor:o}=this.rasterInfo.storageInfo,{width:n,height:a}=this.rasterInfo,l=this._getBandSegmentCount();let f,u,h,c=0,p=0;for(h=0;h<t;h++)p=o**h,f=Math.ceil(n/r/p),u=Math.ceil(a/i/p),c+=f*u;p=o**t,f=Math.ceil(n/r/p),u=Math.ceil(a/i/p),c+=e*f+s,c*=4*l;const m=this._storageIndex.subarray(c,c+4*l);let g=0,d=0;const y=[];for(let x=0;x<l;x++)g=m[4*x]*2**32+m[4*x+1],d=g+m[4*x+2]*2**32+m[4*x+3]-1,y.push({from:g,to:d});return{ranges:y,actualTileWidth:s<f-1?r:Math.ceil(n/p)-r*(f-1),actualTileHeight:e<u-1?i:Math.ceil(a/p)-i*(u-1)}}_parseHeader(t){const s=u(t,"MRF_META/Raster");if(!s)throw new e("mrf:open","not a valid MRF format");const r=u(s,"Size"),a=parseInt(r.getAttribute("x"),10),f=parseInt(r.getAttribute("y"),10),c=parseInt(r.getAttribute("c"),10),p=(h(s,"Compression")||"none").toLowerCase();if(!x.has(p))throw new e("mrf:open","currently does not support compression "+p);const m=h(s,"DataType")||"UInt8",b=y.get(m.toLowerCase());if(null==b)throw new e("mrf:open","currently does not support pixel type "+m);const w=u(s,"PageSize"),I=parseInt(w.getAttribute("x"),10),_=parseInt(w.getAttribute("y"),10),A=w.getAttribute("c"),F=A?A===String(c):x.get(p).isOneSegment;this._isBsq=!F;const R=u(s,"DataValues");let S;if(R){const t=R.getAttribute("NoData");null!=t&&(S=t.trim().split(" ").map(t=>parseFloat(t)))}if(u(t,"MRF_META/CachedSource"))throw new e("mrf:open","currently does not support MRF referencing other data files");const M=u(t,"MRF_META/GeoTags"),k=u(M,"BoundingBox");let C,T=!1;if(null!=k){const t=parseFloat(k.getAttribute("minx")),e=parseFloat(k.getAttribute("miny")),s=parseFloat(k.getAttribute("maxx")),r=parseFloat(k.getAttribute("maxy")),o=h(M,"Projection")||"";let a=n.WGS84;if("LOCAL_CS[]"!==o)if(o.toLowerCase().startsWith("epsg:")){const t=Number(o.slice(5));isNaN(t)||0===t||(a=new n({wkid:t}))}else a=l(o)??n.WGS84;else T=!0,a=new n({wkid:3857});C=new i(t,e,s,r),C.spatialReference=a}else T=!0,C=new i({xmin:-.5,ymin:.5-f,xmax:a-.5,ymax:.5,spatialReference:new n({wkid:3857})});const j=u(t,"MRF_META/Rsets"),B=parseInt(j?.getAttribute("scale")||"2",10),L=C.spatialReference,E=new d({origin:new o({x:C.xmin,y:C.ymax,spatialReference:L}),blockWidth:I,blockHeight:_,pyramidBlockWidth:I,pyramidBlockHeight:_,compression:p,pyramidScalingFactor:B}),P=new o({x:C.width/a,y:C.height/f,spatialReference:L}),U=new g({width:a,height:f,extent:C,isPseudoSpatialReference:T,spatialReference:L,bandCount:c,pixelType:b,pixelSize:P,noDataValue:S,storageInfo:E}),q=this._getAuxFullPath(h(s,"DataFile")),W=this._getAuxFullPath(h(s,"IndexFile"));return{rasterInfo:U,files:{mrf:this.url,index:W||this.url.replace(".mrf",".idx"),data:q||this.url.replace(".mrf",x.get(p).blobExtension)}}}_getAuxFullPath(t){if(!t)return null;if(t.includes("\\"))return null;if(t.includes("/"))return t.startsWith(new URL(this.url).origin)?t:null;return`${this.url.slice(0,this.url.lastIndexOf("/"))}/${t}`}async _fetchAuxiliaryData(t){try{const{data:e}=await this.request(this.url+".aux.xml",{responseType:"xml",signal:t?.signal});return f(e)}catch{return null}}};function w(t){if(t.byteLength%16>0)throw new Error("invalid array buffer must be multiples of 16");let e;if(c){const s=new Uint8Array(t),r=new ArrayBuffer(t.byteLength),i=new Uint8Array(r);for(let e=0;e<t.byteLength/4;e++)for(let t=0;t<4;t++)i[4*e+t]=s[4*e+3-t];e=new Uint32Array(r)}else e=new Uint32Array(t);return e}t([s()],b.prototype,"_files",void 0),t([s()],b.prototype,"_storageIndex",void 0),t([s()],b.prototype,"_isBsq",void 0),t([s({type:String,json:{write:!0}})],b.prototype,"datasetFormat",void 0),b=t([r("esri.layers.raster.datasets.MRFRaster")],b);const I=b;export{I as default};
2
+ import{__decorate as t}from"tslib";import e from"../../../core/Error.js";import{property as s,subclass as r}from"../../../core/accessorSupport/decorators.js";import i from"../../../geometry/Extent.js";import o from"../../../geometry/Point.js";import n from"../../../geometry/SpatialReference.js";import a from"./BaseRaster.js";import{parseSpatialReference as l,parsePAMInfo as f}from"./pamParser.js";import{getElement as c,getElementValue as u}from"./xmlUtilities.js";import{isPlatformLittleEndian as h}from"../formats/utils.js";import{estimateStatisticsFromHistograms as p}from"../functions/stretchUtils.js";import m from"../../support/PixelBlock.js";import g from"../../support/RasterInfo.js";import d from"../../support/RasterStorageInfo.js";const y=new Map([["byte","u8"],["signedbyte","s8"],["int8","s8"],["uint8","u8"],["int16","s16"],["uint16","u16"],["int32","s32"],["uint32","u32"],["float32","f32"],["float64","f64"],["double64","f64"]]),x=new Map;x.set("none",{blobExtension:".til",isOneSegment:!0,decoderFormat:"bip"}),x.set("lerc",{blobExtension:".lrc",isOneSegment:!1,decoderFormat:"lerc"}),x.set("deflate",{blobExtension:".pzp",isOneSegment:!0,decoderFormat:"deflate"}),x.set("jpeg",{blobExtension:".pjg",isOneSegment:!0,decoderFormat:"jpg"}),x.set("qb3",{blobExtension:".pq3",isOneSegment:!0,decoderFormat:"qb3"});let b=class extends a{constructor(){super(...arguments),this._files=null,this._storageIndex=null,this._isBsq=!1,this.datasetFormat="MRF"}async fetchRawTile(t,e,s,r={}){const{blockWidth:i,blockHeight:o,blockBoundary:n}=this.rasterInfo.storageInfo,a=n[t];if(!a||a.maxRow<e||a.maxCol<s||a.minRow>e||a.minCol>s)return null;const{bandCount:l,pixelType:f}=this.rasterInfo,{ranges:c,actualTileWidth:u,actualTileHeight:h}=this._getTileLocation(t,e,s);if(!c||0===c.length)return null;if(c.some(t=>t.from>t.to)){const t=new Uint8Array(i*o);return new m({width:i,height:o,pixels:void 0,mask:t,validPixelCount:0})}const{bandIds:p}=this.ioConfig,g=this._getBandSegmentCount(),d=[];let y=0;for(y=0;y<g;y++)p&&!p.includes(y)||d.push(this.request(this._files.data,{range:{from:c[y].from,to:c[y].to},responseType:"array-buffer",signal:r.signal}));const b=await Promise.all(d),w=b.map(t=>t.data.byteLength).reduce((t,e)=>t+e),I=new Uint8Array(w),A=[];let _=0;for(y=0;y<g;y++)A.push(_),I.set(new Uint8Array(b[y].data),_),_+=b[y].data.byteLength;const R=x.get(this.rasterInfo.storageInfo.compression).decoderFormat,F="jpg"===R&&4===l&&1===A.length,S=await this.decodePixelBlock(I.buffer,{width:i,height:o,format:R,planes:p?.length||l,offsets:A,pixelType:f,canvasUsage:F?"no-canvas":void 0,decodeJpegAsRgb:!1}).catch(()=>null);if(null==S)return null;let{noDataValue:M}=this.rasterInfo;if(null!=M&&"lerc"!==R&&!S.mask&&(M=M[0],null!=M)){const t=S.width*S.height,e=new Uint8Array(t);if(Math.abs(M)>1e24)for(y=0;y<t;y++)Math.abs((S.pixels[0][y]-M)/M)>1e-6&&(e[y]=1);else for(y=0;y<t;y++)S.pixels[0][y]!==M&&(e[y]=1);S.mask=e}let k=0,C=0;if(u!==i||h!==o){let t=S.mask;if(t)for(y=0;y<o;y++)if(C=y*i,y<h)for(k=u;k<i;k++)t[C+k]=0;else for(k=0;k<i;k++)t[C+k]=0;else for(t=new Uint8Array(i*o),S.mask=t,y=0;y<h;y++)for(C=y*i,k=0;k<u;k++)t[C+k]=1}return S}async _open(t){this.datasetName=this.url.slice(this.url.lastIndexOf("/")+1);const e=t?t.signal:null,s=await this.request(this.url,{responseType:"xml",signal:e}),{rasterInfo:r,files:i}=this._parseHeader(s.data),{skipMapInfo:o,skipExtensions:n=[]}=this.ioConfig;if(!n.includes("aux.xml")&&!o){const e=await this._fetchAuxiliaryData(t);null!=e&&(r.statistics=e.statistics??r.statistics,r.histograms=e.histograms,e.histograms&&null==r.statistics&&(r.statistics=p(e.histograms)))}o&&this.updateImageSpaceRasterInfo(r),this._set("rasterInfo",r),this._files=i;const a=await this.request(i.index,{responseType:"array-buffer",signal:e});this._storageIndex=w(a.data);const{blockWidth:l,blockHeight:f}=this.rasterInfo.storageInfo,c=this.rasterInfo.storageInfo.pyramidScalingFactor,{width:u,height:h}=this.rasterInfo,m=[],g=this._getBandSegmentCount();let d=0,y=-1;for(;d<this._storageIndex.length;){y++;const t=Math.ceil(u/l/c**y)-1,e=Math.ceil(h/f/c**y)-1;d+=(t+1)*(e+1)*g*4,m.push({maxRow:e,maxCol:t,minCol:0,minRow:0})}this.rasterInfo.storageInfo.blockBoundary=m,y>0&&(this.rasterInfo.storageInfo.firstPyramidLevel=1,this.rasterInfo.storageInfo.maximumPyramidLevel=y),this.updateTileInfo()}_getBandSegmentCount(){return this._isBsq?this.rasterInfo.bandCount:1}_getTileLocation(t,e,s){const{blockWidth:r,blockHeight:i,pyramidScalingFactor:o}=this.rasterInfo.storageInfo,{width:n,height:a}=this.rasterInfo,l=this._getBandSegmentCount();let f,c,u,h=0,p=0;for(u=0;u<t;u++)p=o**u,f=Math.ceil(n/r/p),c=Math.ceil(a/i/p),h+=f*c;p=o**t,f=Math.ceil(n/r/p),c=Math.ceil(a/i/p),h+=e*f+s,h*=4*l;const m=this._storageIndex.subarray(h,h+4*l);let g=0,d=0;const y=[];for(let x=0;x<l;x++)g=m[4*x]*2**32+m[4*x+1],d=g+m[4*x+2]*2**32+m[4*x+3]-1,y.push({from:g,to:d});return{ranges:y,actualTileWidth:s<f-1?r:Math.ceil(n/p)-r*(f-1),actualTileHeight:e<c-1?i:Math.ceil(a/p)-i*(c-1)}}_parseHeader(t){const s=c(t,"MRF_META/Raster");if(!s)throw new e("mrf:open","not a valid MRF format");const r=c(s,"Size"),a=parseInt(r.getAttribute("x"),10),f=parseInt(r.getAttribute("y"),10),h=parseInt(r.getAttribute("c"),10),p=(u(s,"Compression")||"none").toLowerCase();if(!x.has(p))throw new e("mrf:open","currently does not support compression "+p);const m=u(s,"DataType")||"UInt8",b=y.get(m.toLowerCase());if(null==b)throw new e("mrf:open","currently does not support pixel type "+m);const w=c(s,"PageSize"),I=parseInt(w.getAttribute("x"),10),A=parseInt(w.getAttribute("y"),10),_=w.getAttribute("c"),R=_?_===String(h):x.get(p).isOneSegment;this._isBsq=!R;const F=c(s,"DataValues");let S;if(F){const t=F.getAttribute("NoData");null!=t&&(S=t.trim().split(" ").map(t=>parseFloat(t)))}if(c(t,"MRF_META/CachedSource"))throw new e("mrf:open","currently does not support MRF referencing other data files");const M=c(t,"MRF_META/GeoTags"),k=c(M,"BoundingBox");let C,T=!1;if(null!=k){const t=parseFloat(k.getAttribute("minx")),e=parseFloat(k.getAttribute("miny")),s=parseFloat(k.getAttribute("maxx")),r=parseFloat(k.getAttribute("maxy")),o=u(M,"Projection")||"";let a=n.WGS84;if("LOCAL_CS[]"!==o)if(o.toLowerCase().startsWith("epsg:")){const t=Number(o.slice(5));isNaN(t)||0===t||(a=new n({wkid:t}))}else a=l(o)??n.WGS84;else T=!0,a=new n({wkid:3857});C=new i(t,e,s,r),C.spatialReference=a}else T=!0,C=new i({xmin:-.5,ymin:.5-f,xmax:a-.5,ymax:.5,spatialReference:new n({wkid:3857})});const j=c(t,"MRF_META/Rsets"),B=parseInt(j?.getAttribute("scale")||"2",10),L=C.spatialReference,E=new d({origin:new o({x:C.xmin,y:C.ymax,spatialReference:L}),blockWidth:I,blockHeight:A,pyramidBlockWidth:I,pyramidBlockHeight:A,compression:p,pyramidScalingFactor:B}),P=new o({x:C.width/a,y:C.height/f,spatialReference:L}),U=new g({width:a,height:f,extent:C,isPseudoSpatialReference:T,spatialReference:L,bandCount:h,pixelType:b,pixelSize:P,noDataValue:S,storageInfo:E}),v=this._getAuxFullPath(u(s,"DataFile")),q=this._getAuxFullPath(u(s,"IndexFile"));return{rasterInfo:U,files:{mrf:this.url,index:q||this.url.replace(".mrf",".idx"),data:v||this.url.replace(".mrf",x.get(p).blobExtension)}}}_getAuxFullPath(t){if(!t)return null;if(t.includes("\\"))return null;if(t.includes("/"))return t.startsWith(new URL(this.url).origin)?t:null;return`${this.url.slice(0,this.url.lastIndexOf("/"))}/${t}`}async _fetchAuxiliaryData(t){try{const{data:e}=await this.request(this.url+".aux.xml",{responseType:"xml",signal:t?.signal});return f(e)}catch{return null}}};function w(t){if(t.byteLength%16>0)throw new Error("invalid array buffer must be multiples of 16");let e;if(h){const s=new Uint8Array(t),r=new ArrayBuffer(t.byteLength),i=new Uint8Array(r);for(let e=0;e<t.byteLength/4;e++)for(let t=0;t<4;t++)i[4*e+t]=s[4*e+3-t];e=new Uint32Array(r)}else e=new Uint32Array(t);return e}t([s()],b.prototype,"_files",void 0),t([s()],b.prototype,"_storageIndex",void 0),t([s()],b.prototype,"_isBsq",void 0),t([s({type:String,json:{write:!0}})],b.prototype,"datasetFormat",void 0),b=t([r("esri.layers.raster.datasets.MRFRaster")],b);const I=b;export{I as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{decodeBitMask as e}from"./ImageCanvasDecoder.js";import{J as t}from"../../../chunks/Jpg.js";class r{static async decode(r,a=!1){const n=new Uint8Array(r),s=new t;s.parse(n);const{width:o,height:i,numComponents:l,eof:f}=s,h=s.getData(o,i,1!==l),c=o*i;let m,p=null;if(a&&f<n.length-1&&(p=await e(n.subarray(f,-4),c)),1===l&&h.length===o*i){const e=new Uint8Array(h.buffer);m=[e,e,e]}else{m=[];for(let e=0;e<3;e++)m.push(new Uint8Array(c));for(let e=0,t=0;e<c;e++)for(let r=0;r<3;r++)m[r][e]=h[t++]}return{width:o,height:i,pixels:m,mask:p}}}export{r as default};
2
+ import{decodeBitMask as e}from"./ImageCanvasDecoder.js";import{J as t}from"../../../chunks/Jpg.js";class s{static async decode(s,a={}){const n=new Uint8Array(s),r=new t;r.parse(n);const{width:o,height:l,numComponents:i,eof:c}=r,p=a.decodeJpegAsRgb??1!==i,f=r.getData(o,l,p),g=o*l;let h=null;const{applyJpegMask:d=!1}=a;let m;d&&c<n.length-1&&(h=await e(n.subarray(c,-4),g));const u=p?3:i;if(1===u&&f.length===o*l){const e=new Uint8Array(f.buffer);m=[e,e,e]}else{m=[];for(let e=0;e<u;e++)m.push(new Uint8Array(g));for(let e=0,t=0;e<g;e++)for(let s=0;s<u;s++)m[s][e]=f[t++]}return{width:o,height:l,pixels:m,mask:h}}}export{s as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import e from"../../../core/Error.js";import{assertIsSome as t}from"../../../core/maybe.js";import{isAbortError as a}from"../../../core/promiseUtils.js";import{decode as i}from"./ImageCanvasDecoder.js";import r from"./JpgPlus.js";import{load as s,decode as n}from"./Lerc.js";import{decode as o}from"./Lzw.js";import{convertNoDataToMask as l}from"./pixelRangeUtils.js";import{load as c,decode as p}from"./Qb3.js";import f from"./Raw.js";import{decodeTileOrStrip as d,decode as u}from"./TiffDecoder.js";import{isPlatformLittleEndian as h}from"./utils.js";import{inflate as w}from"./Zlib.js";import m from"../../support/PixelBlock.js";import g from"../../support/SimpleBandStatistics.js";async function y(t,a){if(!h)throw new e("rasterCoded:decode","lerc decoder is not supported on big endian platform");await s();const{width:i,height:r,pixelType:o,statistics:l,depthCount:c,noDataValues:p,bandMasks:f,pixels:d,mask:u,validPixelCount:w}=n(t,{inputOffset:a.offset,returnInterleaved:a.returnInterleaved});return new m({width:i,height:r,pixelType:o.toLowerCase(),pixels:d,mask:u,validPixelCount:w,statistics:l.map(({minValue:e,maxValue:t})=>new g(e,t)),bandMasks:f,depthCount:c,noDataValues:p})}async function x(t,a){await c();const i=p(t);if(!i)throw new e("rasterCodec:decode","failed to decode the input data.");const{width:r,height:s,pixels:n,pixelType:o}=i;return new m({width:r,height:s,pixelType:o,pixels:n})}async function k(e,a){const i=await u(e,{...a,noDataValue:a.tiffNoDataValue,matchAllNoData:a.matchAllNoData});t(i);return new m({width:i.width,height:i.height,pixels:i.pixels,pixelType:i.pixelType.toLowerCase(),mask:i.mask,bandMasks:i.bandMasks})}async function b(e,t){const a=await d(e,t.customOptions),i=new m({width:a.width,height:a.height,pixels:a.pixels,pixelType:a.pixelType.toLowerCase(),mask:a.mask});return t.skipStatistics||i.updateStatistics(),i}function C(e,t){const a=t.pixelType||"u8",i=m.getPixelArrayConstructor(a),r="u8"===a?e:new i(e.buffer),s=[],n=t.planes||1;if(1===n)s.push(r);else for(let o=0;o<n;o++){const a=(t.width||1)*(t.height||e.length),l=new i(a);for(let e=0;e<a;e++)l[e]=r[e*n+o];s.push(l)}return new m({width:t.width||1,height:t.height||e.length,pixels:s,pixelType:a})}async function T(e,t){return C(await w(new Uint8Array(e)),t)}function j(e,t){return C(o(e,t.offset,t.eof,!t.isInputBigEndian),t)}function A(e,t){const a=t.format,{pixelTypeCtor:i}=V(t.pixelType),r=(0,f.decode)(e,{width:t.width,height:t.height,pixelType:i,format:a});return new m({width:t.width,height:t.height,pixels:r.pixels,pixelType:t.pixelType,mask:r.mask})}async function U(e,t){const a=await r.decode(e,t.applyJpegMask);return new m({width:a.width,height:a.height,pixels:a.pixels,pixelType:"u8",mask:a.mask})}async function D(e,t,a){const r=await i(e,t,a);return new m(r)}async function v(t,i,r){const s=i.format||M(t),n={...i,format:s},{canvasUsage:o}=i;if("no-canvas"!==o||"png"===s)try{return await D(t,n,r)}catch(l){if(a(l))throw l;if("canvas-only"===o)throw new e("rasterCodec:decode",`failed to decode the input data with canvas for format ${s}`)}return await U(t,n)}function P(t){let a=null;switch(t){case"lerc":a=y;break;case"jpg":case"png":a=v;break;case"bmp":case"gif":a=D;break;case"bsq":case"bip":a=A;break;case"tiff":a=k;break;case"deflate":a=T;break;case"lzw":a=j;break;case"qb3":a=x;break;default:a=()=>{throw new e("rasterCodec:decode",`unsupported raster format ${t}`)}}return a}function V(e){let t=null,a=null;switch(e?e.toLowerCase():"f32"){case"u1":case"u2":case"u4":case"u8":a=255,t=Uint8Array;break;case"u16":a=a||65535,t=Uint16Array;break;case"u32":a=a||2**32-1,t=Uint32Array;break;case"s8":a=a||-128,t=Int8Array;break;case"s16":a=a||-32768,t=Int16Array;break;case"s32":a=a||0-2**31,t=Int32Array;break;default:t=Float32Array}return{pixelTypeCtor:t,noDataValue:a}}function L(e,t="bilinear"){if(!e)return;const{pixels:a,width:i,height:r,mask:s}=e;if(!a||0===a.length)return;const n=i-1,o=r-1,l=[];let c=null;const p=m.getPixelArrayConstructor(e.pixelType);if("nearest"===t){for(const e of a){const t=new p(n*o);for(let a=0;a<o;a++){const r=a*i;for(let i=0;i<n;i++)t[a*n+i]=e[r+i]}l.push(t)}if(null!=s){c=new Uint8Array(n*o);for(let e=0;e<o;e++){const t=e*i;for(let a=0;a<n;a++)c[e*n+a]=s[t+a]}}}else{for(const e of a){const t=new p(n*o);for(let a=0;a<o;a++){const r=a*i;for(let s=0;s<n;s++)t[a*n+s]=(e[r+s]+e[r+s+1]+e[r+i+s]+e[r+i+s+1])/4}l.push(t)}if(s){c=new Uint8Array(n*o);for(let e=0;e<o;e++){const t=e*i;for(let a=0;a<n;a++)c[e*n+a]=Math.min.apply(null,[s[t+a],s[t+a+1],s[t+i+a],s[t+i+a+1]])}}}e.width=n,e.height=o,e.mask=c,e.pixels=l}function M(e){if(!e)return;const t=new Uint8Array(e,0,10);let a;return 255===t[0]&&216===t[1]?a="jpg":137===t[0]&&80===t[1]&&78===t[2]&&71===t[3]?a="png":67===t[0]&&110===t[1]&&116===t[2]&&90===t[3]&&73===t[4]&&109===t[5]&&97===t[6]&&103===t[7]&&101===t[8]&&32===t[9]||76===t[0]&&101===t[1]&&114===t[2]&&99===t[3]&&50===t[4]&&32===t[5]?a="lerc":73===t[0]&&73===t[1]&&42===t[2]&&0===t[3]||77===t[0]&&77===t[1]&&0===t[2]&&42===t[3]||73===t[0]&&73===t[1]&&43===t[2]&&0===t[3]||77===t[0]&&77===t[1]&&0===t[2]&&43===t[3]?a="tiff":71===t[0]&&73===t[1]&&70===t[2]?a="gif":66===t[0]&&77===t[1]?a="bmp":81===t[0]&&66===t[1]&&51===t[2]&&(a="qb3"),a}async function I(t,a={},i){if(null==t)throw new e("rasterCodec:decode","missing encodeddata parameter.");let r=a.format?.toLowerCase();if(!("bsq"!==r&&"bip"!==r||null!=a.width&&null!=a.height))throw new e("rasterCodec:decode","requires width and height in options parameter.");if("tiff"===r&&a.customOptions)return b(t,a);if(!r||"bsq"!==r&&"bip"!==r&&"deflate"!==r&&"lzw"!==r){if(r=M(t),!r){throw String.fromCharCode.apply(null,[...new Uint8Array(t,0,10)]).toLowerCase().includes("error")?new e("rasterCodec:decode","input data contains error"):new e("rasterCodec:decode","unsupported raster format")}a={...a,format:r}}const s=P(r);let n;a.isPoint&&(null!=(a={...a}).width&&a.width++,null!=a.height&&a.height++);const{offsets:o}=a;if(o&&o.length>1){const e=o.map((e,r)=>s(t.slice(e,o[r+1]),a,i)),r=await Promise.all(e);n=r[0],n.pixels=r.map(e=>e.pixels[0]);const l=r.map(e=>e.mask);l.some(e=>null!=e)&&(l.forEach((e,t)=>{l[t]??=new Uint8Array(n.width*n.height).fill(255)}),n.bandMasks=l,n.mask=m.combineBandMasks(l))}else n=await s(t,{...a,offset:o?.[0]??a.offset},i);return"jpg"!==r&&null!=a.noDataValue&&1===n.depthCount&&l(n,a.noDataValue,{customFloatTolerance:a.tolerance}),a.isPoint&&L(n),n.statistics?.length||a.skipStatistics||n.updateStatistics(),n}export{I as decode,M as getFormat};
2
+ import e from"../../../core/Error.js";import{assertIsSome as t}from"../../../core/maybe.js";import{isAbortError as a}from"../../../core/promiseUtils.js";import{decode as i}from"./ImageCanvasDecoder.js";import r from"./JpgPlus.js";import{load as s,decode as n}from"./Lerc.js";import{decode as o}from"./Lzw.js";import{convertNoDataToMask as l}from"./pixelRangeUtils.js";import{load as c,decode as p}from"./Qb3.js";import f from"./Raw.js";import{decodeTileOrStrip as d,decode as u}from"./TiffDecoder.js";import{isPlatformLittleEndian as h}from"./utils.js";import{inflate as w}from"./Zlib.js";import m from"../../support/PixelBlock.js";import g from"../../support/SimpleBandStatistics.js";async function y(t,a){if(!h)throw new e("rasterCoded:decode","lerc decoder is not supported on big endian platform");await s();const{width:i,height:r,pixelType:o,statistics:l,depthCount:c,noDataValues:p,bandMasks:f,pixels:d,mask:u,validPixelCount:w}=n(t,{inputOffset:a.offset,returnInterleaved:a.returnInterleaved});return new m({width:i,height:r,pixelType:o.toLowerCase(),pixels:d,mask:u,validPixelCount:w,statistics:l.map(({minValue:e,maxValue:t})=>new g(e,t)),bandMasks:f,depthCount:c,noDataValues:p})}async function x(t,a){await c();const i=p(t);if(!i)throw new e("rasterCodec:decode","failed to decode the input data.");const{width:r,height:s,pixels:n,pixelType:o}=i;return new m({width:r,height:s,pixelType:o,pixels:n})}async function k(e,a){const i=await u(e,{...a,noDataValue:a.tiffNoDataValue,matchAllNoData:a.matchAllNoData});t(i);return new m({width:i.width,height:i.height,pixels:i.pixels,pixelType:i.pixelType.toLowerCase(),mask:i.mask,bandMasks:i.bandMasks})}async function b(e,t){const a=await d(e,t.customOptions),i=new m({width:a.width,height:a.height,pixels:a.pixels,pixelType:a.pixelType.toLowerCase(),mask:a.mask});return t.skipStatistics||i.updateStatistics(),i}function C(e,t){const a=t.pixelType||"u8",i=m.getPixelArrayConstructor(a),r="u8"===a?e:new i(e.buffer),s=[],n=t.planes||1;if(1===n)s.push(r);else for(let o=0;o<n;o++){const a=(t.width||1)*(t.height||e.length),l=new i(a);for(let e=0;e<a;e++)l[e]=r[e*n+o];s.push(l)}return new m({width:t.width||1,height:t.height||e.length,pixels:s,pixelType:a})}async function T(e,t){return C(await w(new Uint8Array(e)),t)}function j(e,t){return C(o(e,t.offset,t.eof,!t.isInputBigEndian),t)}function A(e,t){const a=t.format,{pixelTypeCtor:i}=V(t.pixelType),r=(0,f.decode)(e,{width:t.width,height:t.height,pixelType:i,format:a});return new m({width:t.width,height:t.height,pixels:r.pixels,pixelType:t.pixelType,mask:r.mask})}async function U(e,t){const a=await r.decode(e,t);return new m({width:a.width,height:a.height,pixels:a.pixels,pixelType:"u8",mask:a.mask})}async function D(e,t,a){const r=await i(e,t,a);return new m(r)}async function v(t,i,r){const s=i.format||I(t),n={...i,format:s},{canvasUsage:o}=i;if("no-canvas"!==o||"png"===s)try{return await D(t,n,r)}catch(l){if(a(l))throw l;if("canvas-only"===o)throw new e("rasterCodec:decode",`failed to decode the input data with canvas for format ${s}`)}return await U(t,n)}function P(t){let a=null;switch(t){case"lerc":a=y;break;case"jpg":case"png":a=v;break;case"bmp":case"gif":a=D;break;case"bsq":case"bip":a=A;break;case"tiff":a=k;break;case"deflate":a=T;break;case"lzw":a=j;break;case"qb3":a=x;break;default:a=()=>{throw new e("rasterCodec:decode",`unsupported raster format ${t}`)}}return a}function V(e){let t=null,a=null;switch(e?e.toLowerCase():"f32"){case"u1":case"u2":case"u4":case"u8":a=255,t=Uint8Array;break;case"u16":a=a||65535,t=Uint16Array;break;case"u32":a=a||2**32-1,t=Uint32Array;break;case"s8":a=a||-128,t=Int8Array;break;case"s16":a=a||-32768,t=Int16Array;break;case"s32":a=a||0-2**31,t=Int32Array;break;default:t=Float32Array}return{pixelTypeCtor:t,noDataValue:a}}function L(e,t="bilinear"){if(!e)return;const{pixels:a,width:i,height:r,mask:s}=e;if(!a||0===a.length)return;const n=i-1,o=r-1,l=[];let c=null;const p=m.getPixelArrayConstructor(e.pixelType);if("nearest"===t){for(const e of a){const t=new p(n*o);for(let a=0;a<o;a++){const r=a*i;for(let i=0;i<n;i++)t[a*n+i]=e[r+i]}l.push(t)}if(null!=s){c=new Uint8Array(n*o);for(let e=0;e<o;e++){const t=e*i;for(let a=0;a<n;a++)c[e*n+a]=s[t+a]}}}else{for(const e of a){const t=new p(n*o);for(let a=0;a<o;a++){const r=a*i;for(let s=0;s<n;s++)t[a*n+s]=(e[r+s]+e[r+s+1]+e[r+i+s]+e[r+i+s+1])/4}l.push(t)}if(s){c=new Uint8Array(n*o);for(let e=0;e<o;e++){const t=e*i;for(let a=0;a<n;a++)c[e*n+a]=Math.min.apply(null,[s[t+a],s[t+a+1],s[t+i+a],s[t+i+a+1]])}}}e.width=n,e.height=o,e.mask=c,e.pixels=l}function I(e){if(!e)return;const t=new Uint8Array(e,0,10);let a;return 255===t[0]&&216===t[1]?a="jpg":137===t[0]&&80===t[1]&&78===t[2]&&71===t[3]?a="png":67===t[0]&&110===t[1]&&116===t[2]&&90===t[3]&&73===t[4]&&109===t[5]&&97===t[6]&&103===t[7]&&101===t[8]&&32===t[9]||76===t[0]&&101===t[1]&&114===t[2]&&99===t[3]&&50===t[4]&&32===t[5]?a="lerc":73===t[0]&&73===t[1]&&42===t[2]&&0===t[3]||77===t[0]&&77===t[1]&&0===t[2]&&42===t[3]||73===t[0]&&73===t[1]&&43===t[2]&&0===t[3]||77===t[0]&&77===t[1]&&0===t[2]&&43===t[3]?a="tiff":71===t[0]&&73===t[1]&&70===t[2]?a="gif":66===t[0]&&77===t[1]?a="bmp":81===t[0]&&66===t[1]&&51===t[2]&&(a="qb3"),a}async function M(t,a={},i){if(null==t)throw new e("rasterCodec:decode","missing encodeddata parameter.");let r=a.format?.toLowerCase();if(!("bsq"!==r&&"bip"!==r||null!=a.width&&null!=a.height))throw new e("rasterCodec:decode","requires width and height in options parameter.");if("tiff"===r&&a.customOptions)return b(t,a);if(!r||"bsq"!==r&&"bip"!==r&&"deflate"!==r&&"lzw"!==r){if(r=I(t),!r){throw String.fromCharCode.apply(null,[...new Uint8Array(t,0,10)]).toLowerCase().includes("error")?new e("rasterCodec:decode","input data contains error"):new e("rasterCodec:decode","unsupported raster format")}a={...a,format:r}}const s=P(r);let n;a.isPoint&&(null!=(a={...a}).width&&a.width++,null!=a.height&&a.height++);const{offsets:o}=a;if(o&&o.length>1){const e=o.map((e,r)=>s(t.slice(e,o[r+1]),a,i)),r=await Promise.all(e);n=r[0],n.pixels=r.map(e=>e.pixels[0]);const l=r.map(e=>e.mask);l.some(e=>null!=e)&&(l.forEach((e,t)=>{l[t]??=new Uint8Array(n.width*n.height).fill(255)}),n.bandMasks=l,n.mask=m.combineBandMasks(l))}else n=await s(t,{...a,offset:o?.[0]??a.offset},i);return"jpg"!==r&&null!=a.noDataValue&&1===n.depthCount&&l(n,a.noDataValue,{customFloatTolerance:a.tolerance}),a.isPoint&&L(n),n.statistics?.length||a.skipStatistics||n.updateStatistics(),n}export{M as decode,I as getFormat};
@@ -3,6 +3,7 @@ import type Point from "../../geometry/Point.js";
3
3
  import type DimensionalDefinition from "../support/DimensionalDefinition.js";
4
4
  import type PixelBlock from "../support/PixelBlock.js";
5
5
  import type { AbortOptions } from "../../core/promiseUtils.js";
6
+ import type { Point as PointJSON } from "../../portal/jsonTypes.js";
6
7
 
7
8
  /**
8
9
  * Specifies how raster values are resampled.
@@ -228,6 +229,50 @@ export interface RasterBandStatistics {
228
229
  count?: number;
229
230
  }
230
231
 
232
+ /**
233
+ * Raster box statistics information
234
+ *
235
+ * @internal
236
+ */
237
+ export interface RasterBandBoxStatistics {
238
+ /**
239
+ * Minimum value of the statistics.
240
+ *
241
+ * @internal
242
+ */
243
+ min: number;
244
+ /**
245
+ * Maximum value of the statistics.
246
+ *
247
+ * @internal
248
+ */
249
+ max: number;
250
+ /**
251
+ * Maximum value of the statistics.
252
+ *
253
+ * @internal
254
+ */
255
+ avg: number;
256
+ /**
257
+ * Median value of the statistics.
258
+ *
259
+ * @internal
260
+ */
261
+ median: number;
262
+ /**
263
+ * First quartile (or lower Quartile) of the statistics.
264
+ *
265
+ * @internal
266
+ */
267
+ quartile1: number;
268
+ /**
269
+ * Third quartile (or upper quartile) of the statistics.
270
+ *
271
+ * @internal
272
+ */
273
+ quartile3: number;
274
+ }
275
+
231
276
  /**
232
277
  * Raster histogram information returned that meets the specified [ImageHistogramParameters](https://developers.arcgis.com/javascript/latest/references/core/rest/support/ImageHistogramParameters/)
233
278
  * from the [ImageryLayer.computeHistograms()](https://developers.arcgis.com/javascript/latest/references/core/layers/ImageryLayer/#computeHistograms) or [ImageryLayer.computeStatisticsHistograms()](https://developers.arcgis.com/javascript/latest/references/core/layers/ImageryLayer/#computeStatisticsHistograms) method.
@@ -520,4 +565,24 @@ export interface RasterIdentifyOptions extends AbortOptions {
520
565
  * @since 5.0
521
566
  */
522
567
  transposedVariableName?: string;
568
+ }
569
+
570
+ /**
571
+ * Pixel location and value
572
+ *
573
+ * @internal
574
+ */
575
+ export interface PixelLocationAndValue {
576
+ /**
577
+ * Pixel location
578
+ *
579
+ * @internal
580
+ */
581
+ location: PointJSON;
582
+ /**
583
+ * Pixel value
584
+ *
585
+ * @internal
586
+ */
587
+ value: number[];
523
588
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arcgis/core",
3
- "version": "5.2.0-next.80",
3
+ "version": "5.2.0-next.81",
4
4
  "description": "ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API",
5
5
  "keywords": [
6
6
  "ArcGIS",
@@ -20,7 +20,7 @@
20
20
  "license": "SEE LICENSE IN LICENSE.md",
21
21
  "dependencies": {
22
22
  "@amcharts/amcharts5": "~5.20.2",
23
- "@arcgis/toolkit": "^5.2.0-next.75",
23
+ "@arcgis/toolkit": "^5.2.0-next.76",
24
24
  "@esri/arcgis-html-sanitizer": "~4.1.0",
25
25
  "@esri/calcite-components": "^5.2.0-next.50",
26
26
  "@vaadin/grid": "~25.2.8",
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- const c="20260818",a="c91f9b0c0f75fa3a2ab449092831863cd253ece3";export{c as buildDate,a as commitHash};
2
+ const c="20260819",e="195d56c677eba0a7fddee65a99d65c0c6cf2e4bf";export{c as buildDate,e as commitHash};