@arcgis/core 5.2.0-next.40 → 5.2.0-next.42

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 (634) hide show
  1. package/assets/esri/core/workers/RemoteClient.js +1 -1
  2. package/assets/esri/core/workers/chunks/02ab09285a5c4ca98066.js +1 -0
  3. package/assets/esri/core/workers/chunks/0646524250bb9fe82935.js +1 -0
  4. package/assets/esri/core/workers/chunks/0a50efb07eee36237e21.js +1 -0
  5. package/assets/esri/core/workers/chunks/0a98a13418f53082ca7a.js +1 -0
  6. package/assets/esri/core/workers/chunks/0ae0483b72f5e8d00d55.js +1 -0
  7. package/assets/esri/core/workers/chunks/0ae35b02dda9b9662560.js +1 -0
  8. package/assets/esri/core/workers/chunks/0d1224693a62a26a0e72.js +1 -0
  9. package/assets/esri/core/workers/chunks/{542d8a6c415098b9857c.js → 0da4816c11b45b4a6289.js} +1 -1
  10. package/assets/esri/core/workers/chunks/{8a39dd585742960d3ca2.js → 0dcfd82a2669df6eb5a0.js} +1 -1
  11. package/assets/esri/core/workers/chunks/0f19bc532be24ca64755.js +1 -0
  12. package/assets/esri/core/workers/chunks/0f674c625f24ac73e25a.js +1 -0
  13. package/assets/esri/core/workers/chunks/11a3aa43fb940c21f148.js +1 -0
  14. package/assets/esri/core/workers/chunks/11e00ca5ac1b004f4ecc.js +1 -0
  15. package/assets/esri/core/workers/chunks/1276df03201c1b855fee.js +1 -0
  16. package/assets/esri/core/workers/chunks/13c893e448bedc5c1cef.js +1 -0
  17. package/assets/esri/core/workers/chunks/15c2d9bec0455fc363a9.js +1 -0
  18. package/assets/esri/core/workers/chunks/15de305ac3d6433748e7.js +1 -0
  19. package/assets/esri/core/workers/chunks/18d874739ee9ffad7480.js +1 -0
  20. package/assets/esri/core/workers/chunks/1dc1bfb3425665f560e4.js +1 -0
  21. package/assets/esri/core/workers/chunks/{1cd8dff4373494b01ad4.js → 1e342d532925569daadb.js} +1 -1
  22. package/assets/esri/core/workers/chunks/1f118d85d8271ad7690b.js +1 -0
  23. package/assets/esri/core/workers/chunks/1fece9757de7c10d1e9f.js +1 -0
  24. package/assets/esri/core/workers/chunks/{a2e754df3215e8b00a8f.js → 2015f4def2ef201bdab8.js} +1 -1
  25. package/assets/esri/core/workers/chunks/23570397304969f724b3.js +1 -0
  26. package/assets/esri/core/workers/chunks/24c0b3586bb6500eda53.js +2 -0
  27. package/assets/esri/core/workers/chunks/26e7884d8639df4d994b.js +1 -0
  28. package/assets/esri/core/workers/chunks/26fdc8382e009672924e.js +1 -0
  29. package/assets/esri/core/workers/chunks/{96860b6035e0b06672dd.js → 272c8ab189217240d05f.js} +1 -1
  30. package/assets/esri/core/workers/chunks/2791f3fe16ca5ee2f39a.js +1 -0
  31. package/assets/esri/core/workers/chunks/279a9a38b04a21cdfd11.js +1 -0
  32. package/assets/esri/core/workers/chunks/284e88805184334396fe.js +1 -0
  33. package/assets/esri/core/workers/chunks/28bc5e8e82f188b30eb9.js +1 -0
  34. package/assets/esri/core/workers/chunks/2a4868acd546312aa6d8.js +1 -0
  35. package/assets/esri/core/workers/chunks/2d7cfc68a38dabd8898a.js +1 -0
  36. package/assets/esri/core/workers/chunks/2da337d7fd9295f6b967.js +1 -0
  37. package/assets/esri/core/workers/chunks/2e79fb1b8445b2091cdb.js +1 -0
  38. package/assets/esri/core/workers/chunks/2f29f08cddd5add9388e.js +1 -0
  39. package/assets/esri/core/workers/chunks/30c53a7e1ad5aa52f2f3.js +1 -0
  40. package/assets/esri/core/workers/chunks/31c4db1eac8f765bb93f.js +1 -0
  41. package/assets/esri/core/workers/chunks/321dbc60f44819c2b4de.js +1 -0
  42. package/assets/esri/core/workers/chunks/32fb597aef66c444758f.js +1 -0
  43. package/assets/esri/core/workers/chunks/34fcb776e4de1d870bbd.js +30 -0
  44. package/assets/esri/core/workers/chunks/354199a41de44902de84.js +1 -0
  45. package/assets/esri/core/workers/chunks/36781219ca9ba5d7fe52.js +1 -0
  46. package/assets/esri/core/workers/chunks/36999a2e383c8eb3c398.js +1 -0
  47. package/assets/esri/core/workers/chunks/36f8a912842181e1f0aa.js +1 -0
  48. package/assets/esri/core/workers/chunks/{ed1d4ebf487c7dcd5c33.js → 37a8cfec11057947b45f.js} +1 -1
  49. package/assets/esri/core/workers/chunks/{2b2b042a6d6949b06127.js → 381790e1f3df05c7eb68.js} +1 -1
  50. package/assets/esri/core/workers/chunks/383304d33b496c5d8baa.js +1 -0
  51. package/assets/esri/core/workers/chunks/{4e28f49d0be20ea50fd7.js → 383392c63202ac044b6c.js} +1 -1
  52. package/assets/esri/core/workers/chunks/394716bd1ecfd638d708.js +2 -0
  53. package/assets/esri/core/workers/chunks/399e23d777a043efa9f1.js +1 -0
  54. package/assets/esri/core/workers/chunks/3aacb935d632834d4154.js +1 -0
  55. package/assets/esri/core/workers/chunks/3c8e98cf23ad8ef12fcb.js +1 -0
  56. package/assets/esri/core/workers/chunks/4129b27fcd4103cdc499.js +1 -0
  57. package/assets/esri/core/workers/chunks/44e64186318728d1be51.js +1 -0
  58. package/assets/esri/core/workers/chunks/474ea8c97d101e41b3f5.js +1 -0
  59. package/assets/esri/core/workers/chunks/475c60ed8785d07911c6.js +1 -0
  60. package/assets/esri/core/workers/chunks/{c7662455252b48531da1.js → 484b3e2a220c440ccbb4.js} +1 -1
  61. package/assets/esri/core/workers/chunks/4d4710d57c72ec75cccc.js +1 -0
  62. package/assets/esri/core/workers/chunks/4e1b087453fc5e20e961.js +1 -0
  63. package/assets/esri/core/workers/chunks/4e94793aab42ebd251ca.js +1 -0
  64. package/assets/esri/core/workers/chunks/4f59357f535f30a6b5cc.js +1 -0
  65. package/assets/esri/core/workers/chunks/509cfac9e5d86a8ee449.js +1 -0
  66. package/assets/esri/core/workers/chunks/510acf2e8781be9b0dba.js +1 -0
  67. package/assets/esri/core/workers/chunks/5133083222588799493f.js +1 -0
  68. package/assets/esri/core/workers/chunks/52c4b4dabcb0d162be72.js +1 -0
  69. package/assets/esri/core/workers/chunks/{697e0ce10d77b90d4fee.js → 538fe46dfd685a490e23.js} +1 -1
  70. package/assets/esri/core/workers/chunks/5441f96cdd0660229efe.js +1 -0
  71. package/assets/esri/core/workers/chunks/551d0c5432f7a08dea77.js +1 -0
  72. package/assets/esri/core/workers/chunks/55924fb0de05e727f5e3.js +1 -0
  73. package/assets/esri/core/workers/chunks/55af58b6dff52dc040fe.js +2 -0
  74. package/assets/esri/core/workers/chunks/56bbde1dff96b423fbb9.js +1 -0
  75. package/assets/esri/core/workers/chunks/57824ecc10b25e3ad794.js +1 -0
  76. package/assets/esri/core/workers/chunks/{9ba705a6ddabca0f77b1.js → 580451761cadfe308919.js} +1 -1
  77. package/assets/esri/core/workers/chunks/590e977f8eeb379b86c8.js +1398 -0
  78. package/assets/esri/core/workers/chunks/5923ebadd4f75be2c9cc.js +1 -0
  79. package/assets/esri/core/workers/chunks/5b18696109fe84a1010a.js +2 -0
  80. package/assets/esri/core/workers/chunks/{db96a0c66578b2d1b715.js → 5b30231ae0a8f4b8435f.js} +1 -1
  81. package/assets/esri/core/workers/chunks/{77a4f6f224d7ca4b69f4.js → 5bf4ab72b9634b06cc5d.js} +1 -1
  82. package/assets/esri/core/workers/chunks/5ce168ae45ab7e7a71d1.js +1 -0
  83. package/assets/esri/core/workers/chunks/{7b1678dcf62481469544.js → 5dc17b76c6ecc24e7b9a.js} +1 -1
  84. package/assets/esri/core/workers/chunks/5e35828216020f33e26b.js +1 -0
  85. package/assets/esri/core/workers/chunks/5f0d6c853873a7f32527.js +1 -0
  86. package/assets/esri/core/workers/chunks/5fe9eea35ddb428efd8b.js +1 -0
  87. package/assets/esri/core/workers/chunks/6010b7be978698a642d0.js +1 -0
  88. package/assets/esri/core/workers/chunks/613e799377bdb767c955.js +1 -0
  89. package/assets/esri/core/workers/chunks/6210fb6cd31844f23964.js +1 -0
  90. package/assets/esri/core/workers/chunks/632ab11cdd4b0d9a5cc5.js +1 -0
  91. package/assets/esri/core/workers/chunks/64247e439ef3e1f712e9.js +1 -0
  92. package/assets/esri/core/workers/chunks/661a59133ae34f172174.js +1 -0
  93. package/assets/esri/core/workers/chunks/67468c50ecb1fbedda87.js +1 -0
  94. package/assets/esri/core/workers/chunks/6b0acd1a7dd74a7367e0.js +1 -0
  95. package/assets/esri/core/workers/chunks/6d247ff53421d27628ce.js +1 -0
  96. package/assets/esri/core/workers/chunks/6e45d0db97ffa4509177.js +1 -0
  97. package/assets/esri/core/workers/chunks/6f408397e2c8a2ea9805.js +1 -0
  98. package/assets/esri/core/workers/chunks/700c08dd2e734c15e621.js +1 -0
  99. package/assets/esri/core/workers/chunks/705d6b108fd121cea887.js +1 -0
  100. package/assets/esri/core/workers/chunks/71ce1009dadcae8f8094.js +1 -0
  101. package/assets/esri/core/workers/chunks/72fe7fb03c156f26a589.js +1 -0
  102. package/assets/esri/core/workers/chunks/733b2e181683d5fc7c95.js +1 -0
  103. package/assets/esri/core/workers/chunks/7684f0c771d312e05bb4.js +680 -0
  104. package/assets/esri/core/workers/chunks/79b857bb301f9c4169d6.js +1 -0
  105. package/assets/esri/core/workers/chunks/79c0a966f7d11d3c217f.js +1 -0
  106. package/assets/esri/core/workers/chunks/7a818499c1079906c2d7.js +1 -0
  107. package/assets/esri/core/workers/chunks/7ac47a9ad244100bc3b1.js +1 -0
  108. package/assets/esri/core/workers/chunks/7b862a074816c099b9ff.js +1 -0
  109. package/assets/esri/core/workers/chunks/7baa363b3b0a442a63d2.js +1 -0
  110. package/assets/esri/core/workers/chunks/7cc729b57a6a52c8ac68.js +1 -0
  111. package/assets/esri/core/workers/chunks/{4abe820bbe4f7ffccc09.js → 7df795bc4fa1d433463b.js} +1 -1
  112. package/assets/esri/core/workers/chunks/7f7a76f5fef25049fbf8.js +1 -0
  113. package/assets/esri/core/workers/chunks/7fa9dc39bf0a7a6fdc1f.js +1 -0
  114. package/assets/esri/core/workers/chunks/821176ee3be724621bb0.js +1 -0
  115. package/assets/esri/core/workers/chunks/825eb845216762a1ed2f.js +1 -0
  116. package/assets/esri/core/workers/chunks/82f4aa0533db009b11d8.js +2 -0
  117. package/assets/esri/core/workers/chunks/{2a344bca6837ca3b5c41.js.LICENSE.txt → 82f4aa0533db009b11d8.js.LICENSE.txt} +0 -6
  118. package/assets/esri/core/workers/chunks/830d1a7dee43422507ab.js +1 -0
  119. package/assets/esri/core/workers/chunks/835643f716f7058a2722.js +1 -0
  120. package/assets/esri/core/workers/chunks/84fa102a93b2144c28fb.js +1 -0
  121. package/assets/esri/core/workers/chunks/85ce7673d42526a79fd2.js +1 -0
  122. package/assets/esri/core/workers/chunks/893ffc38e1a43de5b63d.js +1 -0
  123. package/assets/esri/core/workers/chunks/{93df864c2e829f0fd5ce.js → 8a1970e68bc1e833cb7f.js} +1 -1
  124. package/assets/esri/core/workers/chunks/{684c9b4bd9590d2db12f.js → 8a410edcdf74ba957159.js} +1 -1
  125. package/assets/esri/core/workers/chunks/8b73694d5a97638a3a61.js +1 -0
  126. package/assets/esri/core/workers/chunks/8bb20ef549ec1c86b38e.js +1 -0
  127. package/assets/esri/core/workers/chunks/{6ef3b8d67b498d655a99.js → 8c5e65982c3f9295e844.js} +1 -1
  128. package/assets/esri/core/workers/chunks/8cb2fe91d1d8f49c14f8.js +1 -0
  129. package/assets/esri/core/workers/chunks/{1961b59756933e0a82f2.js → 8dcc6c19d5b3a5ac5512.js} +1 -1
  130. package/assets/esri/core/workers/chunks/8dee03779b569f233daf.js +1 -0
  131. package/assets/esri/core/workers/chunks/8ec5e470583b75fceae1.js +1 -0
  132. package/assets/esri/core/workers/chunks/8f2fecd8a0a972d68590.js +1 -0
  133. package/assets/esri/core/workers/chunks/9073b0f0ec93d6e243b9.js +1 -0
  134. package/assets/esri/core/workers/chunks/90ace5f9b4af1beea6bf.js +1 -0
  135. package/assets/esri/core/workers/chunks/934044f2ef6ce199b399.js +1 -0
  136. package/assets/esri/core/workers/chunks/94719ac469dadc4c05dc.js +1 -0
  137. package/assets/esri/core/workers/chunks/94e9cf8e729ec36de5be.js +1 -0
  138. package/assets/esri/core/workers/chunks/96d5fed0235558c0e348.js +1 -0
  139. package/assets/esri/core/workers/chunks/98b27cf8acbfa4259758.js +1 -0
  140. package/assets/esri/core/workers/chunks/9902fcd2070c8eb6d043.js +1 -0
  141. package/assets/esri/core/workers/chunks/99772ce7e628364434fa.js +1 -0
  142. package/assets/esri/core/workers/chunks/{b1a0eb6598309e11337f.js → 99e3aa4832ed87474ab4.js} +1 -1
  143. package/assets/esri/core/workers/chunks/9a6208ab670ad74e6f7d.js +1 -0
  144. package/assets/esri/core/workers/chunks/9a97f6cda2f36941efae.js +1 -0
  145. package/assets/esri/core/workers/chunks/9b1199104a6822ab7340.js +1 -0
  146. package/assets/esri/core/workers/chunks/9ceeae787dc7c194d60e.js +1 -0
  147. package/assets/esri/core/workers/chunks/9ebc98746b1f085b82b7.js +1 -0
  148. package/assets/esri/core/workers/chunks/9ee3741eef73f3edb18b.js +1 -0
  149. package/assets/esri/core/workers/chunks/9fb87a7dba62b527c0ba.js +1 -0
  150. package/assets/esri/core/workers/chunks/a10f63a08d976be058be.js +1 -0
  151. package/assets/esri/core/workers/chunks/a183b77854f5b42c1a86.js +1 -0
  152. package/assets/esri/core/workers/chunks/a23f4d8e7c372f5fb6d7.js +1 -0
  153. package/assets/esri/core/workers/chunks/a25f51d2d3ff6b9af7ca.js +1 -0
  154. package/assets/esri/core/workers/chunks/a27172dacdb85a774c4b.js +1 -0
  155. package/assets/esri/core/workers/chunks/a27cdf4c29dd50a6dab1.js +1 -0
  156. package/assets/esri/core/workers/chunks/a294dd12b5c708ce04af.js +1 -0
  157. package/assets/esri/core/workers/chunks/a3c882fe7599dc0f4f27.js +1 -0
  158. package/assets/esri/core/workers/chunks/a90f7b1c6c69b6033b4c.js +1 -0
  159. package/assets/esri/core/workers/chunks/a9c641bcdef161c754bf.js +1 -0
  160. package/assets/esri/core/workers/chunks/a9d391071803b1e9e8a0.js +1 -0
  161. package/assets/esri/core/workers/chunks/aaa66a04b882b0ba2961.js +1 -0
  162. package/assets/esri/core/workers/chunks/ae50b2d5e63f62c088d2.js +1 -0
  163. package/assets/esri/core/workers/chunks/af3ac4bed43e901b59c7.js +1 -0
  164. package/assets/esri/core/workers/chunks/af97e19516dbbcfb5286.js +1 -0
  165. package/assets/esri/core/workers/chunks/aff0e7761276036e029d.js +1 -0
  166. package/assets/esri/core/workers/chunks/b23d1e10fc4161d1f3eb.js +1 -0
  167. package/assets/esri/core/workers/chunks/b32bdf5730953c2fb16b.js +1 -0
  168. package/assets/esri/core/workers/chunks/b3f1a442d6b7826e917f.js +1 -0
  169. package/assets/esri/core/workers/chunks/b4047333265a2665aef9.js +1 -0
  170. package/assets/esri/core/workers/chunks/b7170816736769d3b7b0.js +1 -0
  171. package/assets/esri/core/workers/chunks/{5c63b38160c7d063b8af.js → b780514be87a22b49b01.js} +1 -1
  172. package/assets/esri/core/workers/chunks/b792857a178da2dd77d6.js +1 -0
  173. package/assets/esri/core/workers/chunks/b819a9187426d0c146df.js +1 -0
  174. package/assets/esri/core/workers/chunks/{1d92da90fbbc3f98b201.js → b8d788e110c212a879ab.js} +1 -1
  175. package/assets/esri/core/workers/chunks/b94cd7eac5ff4a78dd5b.js +1 -0
  176. package/assets/esri/core/workers/chunks/b9d6f89f9b8e9d1bc787.js +1 -0
  177. package/assets/esri/core/workers/chunks/b9f40681af1fa00b5bbe.js +1 -0
  178. package/assets/esri/core/workers/chunks/{bc547cf814d6703cef59.js → bb95922cd4631d6f17fb.js} +1 -1
  179. package/assets/esri/core/workers/chunks/bcb5017500d144b73908.js +1 -0
  180. package/assets/esri/core/workers/chunks/bd862382f72ebd446b46.js +1 -0
  181. package/assets/esri/core/workers/chunks/bdd19dab276d20d5381a.js +1 -0
  182. package/assets/esri/core/workers/chunks/bee5e738ecf8680909c4.js +1 -0
  183. package/assets/esri/core/workers/chunks/{9be4438ce2c7180adadf.js → bf287f0e2ecb4532dc00.js} +1 -1
  184. package/assets/esri/core/workers/chunks/{5115059b012ef84407cf.js → bfb6566c27c09deb0929.js} +1 -1
  185. package/assets/esri/core/workers/chunks/c055c16379f5bb56e930.js +1 -0
  186. package/assets/esri/core/workers/chunks/c13e55b9efb0b532f7ee.js +1 -0
  187. package/assets/esri/core/workers/chunks/c1845682cc9a5aac8703.js +261 -0
  188. package/assets/esri/core/workers/chunks/c369d4266f38e9ea6592.js +1 -0
  189. package/assets/esri/core/workers/chunks/c3fae4f4522604a9c17e.js +1 -0
  190. package/assets/esri/core/workers/chunks/c4c25db769a78e677e33.js +1 -0
  191. package/assets/esri/core/workers/chunks/c50e4e8c6188e64e7d45.js +1 -0
  192. package/assets/esri/core/workers/chunks/c838cc1c786368b78598.js +1 -0
  193. package/assets/esri/core/workers/chunks/c8db0a4fb5bc982dc9fc.js +1 -0
  194. package/assets/esri/core/workers/chunks/{82adfa2dbd40e1becaf4.js → c97451f75c23be979476.js} +1 -1
  195. package/assets/esri/core/workers/chunks/ca118c42c0f609ca7912.js +1 -0
  196. package/assets/esri/core/workers/chunks/ca419858910af5505d3d.js +1 -0
  197. package/assets/esri/core/workers/chunks/cb17cd8aaf77238c0236.js +1 -0
  198. package/assets/esri/core/workers/chunks/{034dd8ee5152a12412cd.js → cba3316910ff088f4d77.js} +1 -1
  199. package/assets/esri/core/workers/chunks/cc414fd2e313d89d524d.js +1 -0
  200. package/assets/esri/core/workers/chunks/{7b8466f892a38a53c600.js → cce83896093279c70449.js} +1 -1
  201. package/assets/esri/core/workers/chunks/cda04571d7623c17ada2.js +1 -0
  202. package/assets/esri/core/workers/chunks/cea4b18e7f83c02922b1.js +1 -0
  203. package/assets/esri/core/workers/chunks/cf03d391d50a4c7aca4f.js +1 -0
  204. package/assets/esri/core/workers/chunks/d03f427442bb0c287d05.js +1 -0
  205. package/assets/esri/core/workers/chunks/d082de5dd83bd73d209b.js +1 -0
  206. package/assets/esri/core/workers/chunks/d08d3c6f21e6ba8268ca.js +1 -0
  207. package/assets/esri/core/workers/chunks/d36f17d32c654b1ac7fa.js +1 -0
  208. package/assets/esri/core/workers/chunks/d36fba71c52ea4e71546.js +1 -0
  209. package/assets/esri/core/workers/chunks/{18f980465db5a86153d1.js → d37a72111dffc4c4db70.js} +1 -1
  210. package/assets/esri/core/workers/chunks/d41ab2abcfacc87809b5.js +1 -0
  211. package/assets/esri/core/workers/chunks/d4ed094962a41d756c95.js +1 -0
  212. package/assets/esri/core/workers/chunks/d5561dff043789494845.js +1 -0
  213. package/assets/esri/core/workers/chunks/d66d58ed5d66520ab1bf.js +1 -0
  214. package/assets/esri/core/workers/chunks/d79ce047afbc034f6008.js +1 -0
  215. package/assets/esri/core/workers/chunks/d847c3cb2043a983145b.js +1 -0
  216. package/assets/esri/core/workers/chunks/d849bdaf5bdfdc37531a.js +1 -0
  217. package/assets/esri/core/workers/chunks/da6134c7883531f21afe.js +1 -0
  218. package/assets/esri/core/workers/chunks/{c48dfda8dcb9551606fb.js → dad39ddf0f8dfb0bef47.js} +1 -1
  219. package/assets/esri/core/workers/chunks/dadefe369f49e89a2610.js +1 -0
  220. package/assets/esri/core/workers/chunks/dccb46c7dce68528c72b.js +1 -0
  221. package/assets/esri/core/workers/chunks/ddafe402f1bc9e8285ef.js +1 -0
  222. package/assets/esri/core/workers/chunks/de9573871f64c01e9f01.js +1 -0
  223. package/assets/esri/core/workers/chunks/dedf678490572c500a19.js +30 -0
  224. package/assets/esri/core/workers/chunks/df174346a7e9b629a392.js +1 -0
  225. package/assets/esri/core/workers/chunks/df30053a10d4930924d5.js +1 -0
  226. package/assets/esri/core/workers/chunks/dfbdc72c7ea137e3841d.js +1 -0
  227. package/assets/esri/core/workers/chunks/e21b3490bfce75405e55.js +1 -0
  228. package/assets/esri/core/workers/chunks/e2c9393bec747f7876bb.js +1 -0
  229. package/assets/esri/core/workers/chunks/e3e966777f18164afcd8.js +1 -0
  230. package/assets/esri/core/workers/chunks/e4a2eefffe16cd5bb20f.js +1 -0
  231. package/assets/esri/core/workers/chunks/{d0983cc19d19c19c3478.js → e4aacfc1617ccf60bd5a.js} +1 -1
  232. package/assets/esri/core/workers/chunks/{3a526e1d18490b99332f.js → e5bb7ee670a3ba5ba3fe.js} +1 -1
  233. package/assets/esri/core/workers/chunks/e5c75459de85a6dd2f14.js +1 -0
  234. package/assets/esri/core/workers/chunks/{757982a73174aa7ab0d1.js → e6b5c015205d38abe037.js} +1 -1
  235. package/assets/esri/core/workers/chunks/e798ca23f02a2dd65bd4.js +1 -0
  236. package/assets/esri/core/workers/chunks/e94f2d6037fba042dc6e.js +1 -0
  237. package/assets/esri/core/workers/chunks/e9511627418c6864148a.js +1 -0
  238. package/assets/esri/core/workers/chunks/ec1a2e68957fae48e60b.js +30 -0
  239. package/assets/esri/core/workers/chunks/ec2e0b2e31fd53b81d0a.js +1 -0
  240. package/assets/esri/core/workers/chunks/ed552941eca621a51f16.js +1 -0
  241. package/assets/esri/core/workers/chunks/ee58f4bbc0a1f7d03df0.js +1 -0
  242. package/assets/esri/core/workers/chunks/f04cb48fc73635d0572f.js +1 -0
  243. package/assets/esri/core/workers/chunks/f06f591680c9e93e69f6.js +1 -0
  244. package/assets/esri/core/workers/chunks/f1d3cf674b6bea89e122.js +1 -0
  245. package/assets/esri/core/workers/chunks/f2ab8e49c7f17f488aa8.js +1 -0
  246. package/assets/esri/core/workers/chunks/{6a51499c6623ddce5f00.js → f2adf1227a795604d3b8.js} +1 -1
  247. package/assets/esri/core/workers/chunks/{57c003c6745d450558a7.js → f4aed2b6e92bd0474069.js} +1 -1
  248. package/assets/esri/core/workers/chunks/f4eda59ec1e816ecc827.js +1 -0
  249. package/assets/esri/core/workers/chunks/f5d7f69047e1b1116202.js +1 -0
  250. package/assets/esri/core/workers/chunks/f5d809d30cbb56be852d.js +1 -0
  251. package/assets/esri/core/workers/chunks/{2d92f0042facb55edcff.js → f65adaaa33d9f3b131f6.js} +1 -1
  252. package/assets/esri/core/workers/chunks/f8f0de841be17cd05c8f.js +1 -0
  253. package/assets/esri/core/workers/chunks/f9b654f801cb416e9e17.js +1 -0
  254. package/assets/esri/core/workers/chunks/fb34d6d96c8c0d53fcf6.js +1 -0
  255. package/assets/esri/core/workers/chunks/fb51f823b25c827c6b29.js +1 -0
  256. package/assets/esri/core/workers/chunks/fba8065a3a6fbd877e23.js +1 -0
  257. package/assets/esri/core/workers/chunks/fd47ee8598e37fea03fe.js +1 -0
  258. package/assets/esri/core/workers/chunks/fefbde2c2e527bb716ee.js +1 -0
  259. package/assets/esri/core/workers/chunks/ff089723a27859fe18d1.js +1 -0
  260. package/assets/esri/layers/raster/formats/lerc-wasm.wasm +0 -0
  261. package/assets/esri/rest/knowledgeGraph/wasmInterface/arcgis-knowledge-client-core-simd.wasm +0 -0
  262. package/assets/esri/rest/knowledgeGraph/wasmInterface/arcgis-knowledge-client-core.wasm +0 -0
  263. package/assets/esri/themes/base/_core.scss +0 -6
  264. package/assets/esri/themes/dark/main.css +1 -1
  265. package/assets/esri/themes/light/main.css +1 -1
  266. package/assets/esri/themes/light/view.css +1 -1
  267. package/chunks/CutFillMinMaxDepth.glsl.js +2 -0
  268. package/chunks/CutFillTotalDepth.glsl.js +2 -0
  269. package/chunks/EdgeShader.glsl.js +9 -9
  270. package/chunks/GaussianSplat.glsl.js +1 -1
  271. package/chunks/arcgis-knowledge-client-core-simd.js +1 -1
  272. package/chunks/arcgis-knowledge-client-core.js +1 -1
  273. package/chunks/cameraUtilsSpherical.js +1 -1
  274. package/config.js +1 -1
  275. package/editing/geometry/coordUtils.js +1 -1
  276. package/geohash/geohashUtils.js +1 -1
  277. package/geometry/support/aaBoundingRect.js +1 -1
  278. package/geometry/support/quantizationUtils.js +1 -1
  279. package/geometry/support/sphere.js +1 -1
  280. package/interfaces.d.ts +5 -0
  281. package/intl/date.js +1 -1
  282. package/kernel.js +1 -1
  283. package/layers/AnnotationFeatureLayer.d.ts +13 -3
  284. package/layers/DimensionFeatureLayer.d.ts +10 -3
  285. package/layers/graphics/featureConversionUtils.js +1 -1
  286. package/layers/graphics/sources/support/sourceUtils.js +1 -1
  287. package/layers/raster/formats/ImageCanvasDecoder.js +1 -1
  288. package/layers/raster/formats/Lerc.js +1 -1
  289. package/layers/raster/formats/RasterCodec.js +1 -1
  290. package/layers/support/fieldUtils.js +1 -1
  291. package/package.json +3 -3
  292. package/support/revision.js +1 -1
  293. package/views/2d/engine/vectorTiles/GeometryUtils.js +1 -1
  294. package/views/2d/engine/webgl/Painter.js +1 -1
  295. package/views/2d/engine/webgl/definitions.js +1 -1
  296. package/views/2d/engine/webgl/effects/FeatureEffect.js +1 -1
  297. package/views/2d/engine/webgl/effects/HighlightEffect.js +1 -1
  298. package/views/2d/engine/webgl/effects/HittestEffect.js +1 -1
  299. package/views/2d/engine/webgl/effects/highlight/HighlightGradient.js +1 -1
  300. package/views/2d/engine/webgl/mesh/templates/segmentUtils.js +1 -1
  301. package/views/2d/engine/webgl/shaderGraph/techniques/TextureStatisticsTechnique.js +1 -1
  302. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/BitBlitShader.js +2 -0
  303. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/DebugOverlayShader.js +2 -0
  304. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/HighlightShader.js +2 -0
  305. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/WorldExtentStencilShader.js +2 -0
  306. package/views/2d/engine/webgl/shaderGraph/techniques/text/TextMeshWriter.js +1 -1
  307. package/views/2d/engine/webgl/shaderGraph/techniques/text/TextShader.js +1 -1
  308. package/views/2d/engine/webgl/shaderGraph/techniques/utility/BitBlitTechnique.js +2 -0
  309. package/views/2d/engine/webgl/shaderGraph/techniques/utility/DebugOverlayTechnique.js +2 -0
  310. package/views/2d/engine/webgl/shaderGraph/techniques/utility/HighlightTechnique.js +2 -0
  311. package/views/2d/engine/webgl/shaderGraph/techniques/utility/WorldExtentClipTechnique.js +2 -0
  312. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  313. package/views/2d/layers/features/FeatureContainer.js +1 -1
  314. package/views/2d/layers/support/DebugOverlay.js +1 -1
  315. package/views/3d/analysis/Slice/sliceToolUtils.js +1 -1
  316. package/views/3d/layers/GaussianSplatLayerView3D.js +1 -1
  317. package/views/3d/layers/I3SMeshView3D.js +1 -1
  318. package/views/3d/layers/SceneLayerWorker.js +1 -1
  319. package/views/3d/layers/SceneLayerWorkerHandle.js +1 -1
  320. package/views/3d/layers/i3s/I3SNode.js +1 -1
  321. package/views/3d/layers/i3s/SphereCone.js +1 -1
  322. package/views/3d/state/helpers/SceneIntersectionHelper.js +1 -1
  323. package/views/3d/support/cameraUtilsSpherical.js +1 -1
  324. package/views/3d/support/gaussianSplatting/GaussianSplatFadeHelper.js +1 -1
  325. package/views/3d/support/gaussianSplatting/GaussianTile.js +1 -1
  326. package/views/3d/terrain/OverlayRenderer.js +1 -1
  327. package/views/3d/webgl/RenderCamera.js +1 -1
  328. package/views/3d/webgl-engine/core/shaderLibrary/Laserline.glsl.js +2 -2
  329. package/views/3d/webgl-engine/core/shaderLibrary/util/emissionFilter.glsl.js +1 -1
  330. package/views/3d/webgl-engine/effects/WeatherFader.js +1 -1
  331. package/views/3d/webgl-engine/effects/clouds/CloudsParameters.js +1 -1
  332. package/views/3d/webgl-engine/effects/debug/RenderNodeVisualizerNode.js +1 -1
  333. package/views/3d/webgl-engine/effects/glow/Glow.js +1 -1
  334. package/views/3d/webgl-engine/effects/laserlines/LaserLineRenderer.js +1 -1
  335. package/views/3d/webgl-engine/lib/BindParameters.js +1 -1
  336. package/views/3d/webgl-engine/lib/CutFillComputation.js +1 -1
  337. package/views/3d/webgl-engine/lib/GaussianSplatShadows.js +1 -1
  338. package/views/3d/webgl-engine/lib/Intersector.js +1 -1
  339. package/views/3d/webgl-engine/lib/IntersectorInterfaces.js +1 -1
  340. package/views/3d/webgl-engine/lib/Octree.js +1 -1
  341. package/views/3d/webgl-engine/lib/PolygonIntersections2D.js +2 -0
  342. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  343. package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
  344. package/views/3d/webgl-engine/lib/SortedRenderGeometryRenderer.js +1 -1
  345. package/views/3d/webgl-engine/{shaders/sources/edgeRenderer → lib/edgeRendering}/AdjustProjectedPosition.glsl.js +1 -1
  346. package/views/3d/webgl-engine/{shaders/sources/edgeRenderer → lib/edgeRendering}/DiscardNonSilhouetteEdges.glsl.js +1 -1
  347. package/views/3d/webgl-engine/lib/edgeRendering/EdgeRenderer.js +1 -1
  348. package/views/3d/webgl-engine/lib/edgeRendering/EdgeShader.glsl.js +1 -1
  349. package/views/3d/webgl-engine/{shaders/sources/edgeRenderer → lib/edgeRendering}/EdgeUtil.glsl.js +1 -1
  350. package/views/3d/webgl-engine/{shaders/sources/edgeRenderer → lib/edgeRendering}/LineAmplitude.glsl.js +1 -1
  351. package/views/3d/webgl-engine/{shaders/sources/edgeRenderer → lib/edgeRendering}/LineOffset.glsl.js +1 -1
  352. package/views/3d/webgl-engine/{shaders/sources/edgeRenderer → lib/edgeRendering}/UnpackAttributes.glsl.js +1 -1
  353. package/views/3d/webgl-engine/lib/screenPolygonTriangleIntersections.js +1 -1
  354. package/views/3d/webgl-engine/materials/DefaultBufferWriter.js +1 -1
  355. package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
  356. package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
  357. package/views/3d/webgl-engine/materials/HeatmapDensityMaterial.js +1 -1
  358. package/views/3d/webgl-engine/materials/ImageMaterial.js +1 -1
  359. package/views/3d/webgl-engine/materials/LineCalloutMaterial.js +1 -1
  360. package/views/3d/webgl-engine/materials/LineMarkerMaterial.js +1 -1
  361. package/views/3d/webgl-engine/materials/MeasurementArrowMaterial.js +1 -1
  362. package/views/3d/webgl-engine/materials/NativeLineMaterial.js +1 -1
  363. package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
  364. package/views/3d/webgl-engine/materials/PatternMaterial.js +1 -1
  365. package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
  366. package/views/3d/webgl-engine/materials/ShadedColorMaterial.js +1 -1
  367. package/views/3d/webgl-engine/materials/TriangleMaterial.js +1 -1
  368. package/views/3d/webgl-engine/materials/renderers/BufferRange.js +1 -1
  369. package/views/3d/webgl-engine/materials/renderers/VaoWriter.js +1 -1
  370. package/views/3d/webgl-engine/parts/RenderView.js +1 -1
  371. package/views/3d/webgl-engine/shaders/CutFillMinMaxDepth.glsl.js +2 -0
  372. package/views/3d/webgl-engine/shaders/CutFillMinMaxDepthTechnique.js +2 -0
  373. package/views/3d/webgl-engine/shaders/{CutFillDepth.glsl.js → CutFillTotalDepth.glsl.js} +1 -1
  374. package/views/3d/webgl-engine/shaders/CutFillTotalDepthTechnique.js +2 -0
  375. package/views/3d/webgl-engine/shaders/OutputColorHighlightOLID.glsl.js +1 -1
  376. package/views/3d/webgl-engine/shaders/ScreenSpacePassAtmosphere.glsl.js +1 -1
  377. package/views/Viewport2DMixin.js +1 -1
  378. package/views/input/BrowserEventSource.js +1 -1
  379. package/views/input/InputManager.js +1 -1
  380. package/views/interactive/snapping/snappingUtils.js +1 -1
  381. package/views/support/euclideanLengthMeasurementUtils.js +1 -1
  382. package/views/webgl/VertexAttributeLayouts.js +1 -1
  383. package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.js +1 -1
  384. package/widgets/BatchAttributeForm/batchAttributeFormUtils.js +1 -1
  385. package/widgets/BatchAttributeForm/expressions/ExpressionsManager.js +1 -1
  386. package/widgets/BatchAttributeForm/expressions/ExpressionsModel.js +1 -1
  387. package/widgets/BatchAttributeForm/inputs/support/multipleChoiceInputUtils.js +1 -1
  388. package/widgets/BatchAttributeForm/templates/support/createBatchFormTemplate.js +1 -1
  389. package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
  390. package/widgets/Legend/support/relationshipRampUtils.js +1 -1
  391. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  392. package/widgets/OrientedImageryViewer/utils.js +1 -1
  393. package/widgets/Sketch.js +1 -1
  394. package/assets/esri/core/workers/chunks/02b043a3c5fa8bcb4c5b.js +0 -1
  395. package/assets/esri/core/workers/chunks/03437a8ef35c200dbf17.js +0 -1
  396. package/assets/esri/core/workers/chunks/0603cbd938ab619c706b.js +0 -1
  397. package/assets/esri/core/workers/chunks/08405116b5feb2d00101.js +0 -1
  398. package/assets/esri/core/workers/chunks/0a6e03263ab0906d8bcf.js +0 -1
  399. package/assets/esri/core/workers/chunks/0af6b87a3d77bb93b893.js +0 -1
  400. package/assets/esri/core/workers/chunks/0edd250159ec259601b3.js +0 -1
  401. package/assets/esri/core/workers/chunks/0f10d7d592c36ee2d1ea.js +0 -1
  402. package/assets/esri/core/workers/chunks/0f8fcbd0650b6a924f75.js +0 -1
  403. package/assets/esri/core/workers/chunks/0f976bfb7db98c2c0e05.js +0 -1
  404. package/assets/esri/core/workers/chunks/1040bce57ea63a6dbca4.js +0 -2
  405. package/assets/esri/core/workers/chunks/10510f76f8538c2dfb84.js +0 -1
  406. package/assets/esri/core/workers/chunks/1079914101d69a40b3eb.js +0 -1
  407. package/assets/esri/core/workers/chunks/11af659688cf963ea6cd.js +0 -1
  408. package/assets/esri/core/workers/chunks/15081b361fc42f40b865.js +0 -1
  409. package/assets/esri/core/workers/chunks/1599dc5309a4e60017ce.js +0 -261
  410. package/assets/esri/core/workers/chunks/181e98399732f425305d.js +0 -1
  411. package/assets/esri/core/workers/chunks/1837f97f720d255a1694.js +0 -1
  412. package/assets/esri/core/workers/chunks/18c4c437ded8bfbd3305.js +0 -1
  413. package/assets/esri/core/workers/chunks/18f4b2099299942aaf97.js +0 -1
  414. package/assets/esri/core/workers/chunks/1958facb000b6c16bfe4.js +0 -1
  415. package/assets/esri/core/workers/chunks/196e7515a43bd0026f49.js +0 -1
  416. package/assets/esri/core/workers/chunks/1a0903b1d2d5101977c6.js +0 -1
  417. package/assets/esri/core/workers/chunks/1aa7496a7dc95aae11ac.js +0 -1
  418. package/assets/esri/core/workers/chunks/1bd49e8d2657c72bf3f9.js +0 -1
  419. package/assets/esri/core/workers/chunks/1c263ffb7144e171a64f.js +0 -1
  420. package/assets/esri/core/workers/chunks/1d524690c4b66289bd20.js +0 -1
  421. package/assets/esri/core/workers/chunks/20fa2c3d4360afa5e136.js +0 -1
  422. package/assets/esri/core/workers/chunks/210ffc448c73a7bf63aa.js +0 -1
  423. package/assets/esri/core/workers/chunks/23f81f4a3d7a983eef23.js +0 -1
  424. package/assets/esri/core/workers/chunks/2540beb53f1443a070d7.js +0 -1
  425. package/assets/esri/core/workers/chunks/25c1f5e2561986330b80.js +0 -1
  426. package/assets/esri/core/workers/chunks/2757c4bf0280e27f3484.js +0 -1
  427. package/assets/esri/core/workers/chunks/294537e1ac43e8dfeaea.js +0 -1
  428. package/assets/esri/core/workers/chunks/29a1d0659bbc5a039864.js +0 -1
  429. package/assets/esri/core/workers/chunks/29df3f829006719b2680.js +0 -1
  430. package/assets/esri/core/workers/chunks/2a344bca6837ca3b5c41.js +0 -2
  431. package/assets/esri/core/workers/chunks/2a5dbed88bbd96cfac9f.js +0 -1
  432. package/assets/esri/core/workers/chunks/2b044c8fab2055a8818d.js +0 -1
  433. package/assets/esri/core/workers/chunks/2d956dacb26d71d1c174.js +0 -1
  434. package/assets/esri/core/workers/chunks/2da797ae5af9d2ede42d.js +0 -1
  435. package/assets/esri/core/workers/chunks/2dbcdfdf000226bfe746.js +0 -1
  436. package/assets/esri/core/workers/chunks/2e495a28494c2351837b.js +0 -1
  437. package/assets/esri/core/workers/chunks/2ef80e003b4f0393ac2e.js +0 -1
  438. package/assets/esri/core/workers/chunks/2fc3e43b64300014dddc.js +0 -1
  439. package/assets/esri/core/workers/chunks/30cf84a47ebefd180bb7.js +0 -1
  440. package/assets/esri/core/workers/chunks/314bc1b356d43bfa72a8.js +0 -1
  441. package/assets/esri/core/workers/chunks/34a024eda22d228e1fbe.js +0 -1
  442. package/assets/esri/core/workers/chunks/37e823202424c11076cb.js +0 -1
  443. package/assets/esri/core/workers/chunks/38a76bc4ef5c10ab0488.js +0 -1
  444. package/assets/esri/core/workers/chunks/390f2beee8e3f2a302e4.js +0 -1
  445. package/assets/esri/core/workers/chunks/3a76fffa2016c16d7989.js +0 -1398
  446. package/assets/esri/core/workers/chunks/3c2eb386c0165150e039.js +0 -1
  447. package/assets/esri/core/workers/chunks/3e4b379a6a197b9c4e6b.js +0 -1
  448. package/assets/esri/core/workers/chunks/3ec91474658eae87b832.js +0 -1
  449. package/assets/esri/core/workers/chunks/3eee32db0e9a5086b9a8.js +0 -1
  450. package/assets/esri/core/workers/chunks/406c7723e8db470822bf.js +0 -1
  451. package/assets/esri/core/workers/chunks/41aca863324387576cf8.js +0 -1
  452. package/assets/esri/core/workers/chunks/442424200e7475e9a08f.js +0 -1
  453. package/assets/esri/core/workers/chunks/4452fd0c59431904d533.js +0 -1
  454. package/assets/esri/core/workers/chunks/448e0596005cba9a4225.js +0 -1
  455. package/assets/esri/core/workers/chunks/4545cf12ad0824ce6b41.js +0 -1
  456. package/assets/esri/core/workers/chunks/45530a49fa1f09d1682e.js +0 -1
  457. package/assets/esri/core/workers/chunks/459e89d1b94a3b204d20.js +0 -30
  458. package/assets/esri/core/workers/chunks/45b2e58051f42ebd236e.js +0 -1
  459. package/assets/esri/core/workers/chunks/4611cf051c3c396fdf96.js +0 -1
  460. package/assets/esri/core/workers/chunks/46e3d33e44e5398221e2.js +0 -1
  461. package/assets/esri/core/workers/chunks/47656ec12401e53f4bd3.js +0 -1
  462. package/assets/esri/core/workers/chunks/47948c72bc01bd173c20.js +0 -2
  463. package/assets/esri/core/workers/chunks/48f1c3a7c9f16d6896f6.js +0 -1
  464. package/assets/esri/core/workers/chunks/49713dfa4c8b788079d1.js +0 -1
  465. package/assets/esri/core/workers/chunks/4a8201e09bc3ad5cc00b.js +0 -1
  466. package/assets/esri/core/workers/chunks/4ad86d6b1be07c97b6f6.js +0 -1
  467. package/assets/esri/core/workers/chunks/4be0c64bbf2449d57ea5.js +0 -1
  468. package/assets/esri/core/workers/chunks/4d57c771af4137f74bfb.js +0 -1
  469. package/assets/esri/core/workers/chunks/4f25aac84d9eb10cac83.js +0 -1
  470. package/assets/esri/core/workers/chunks/50b34e246f8eef2f6e07.js +0 -1
  471. package/assets/esri/core/workers/chunks/514ab968c0d75062e6ab.js +0 -1
  472. package/assets/esri/core/workers/chunks/51838d55d8ec4ce70398.js +0 -1
  473. package/assets/esri/core/workers/chunks/557300ec03bae84d8afc.js +0 -1
  474. package/assets/esri/core/workers/chunks/57abf838fcff0f0e2c5e.js +0 -1
  475. package/assets/esri/core/workers/chunks/57dd017fed2943d24e3d.js +0 -1
  476. package/assets/esri/core/workers/chunks/59801b2ccaaf4b394e02.js +0 -1
  477. package/assets/esri/core/workers/chunks/5a2d2dcdfa8d958f277d.js +0 -1
  478. package/assets/esri/core/workers/chunks/5a62c9f64db4fcae5e52.js +0 -1
  479. package/assets/esri/core/workers/chunks/5aebecb5c2b3e7887127.js +0 -1
  480. package/assets/esri/core/workers/chunks/5e68b74fd548c7cdba36.js +0 -1
  481. package/assets/esri/core/workers/chunks/5f360492560ae07083a6.js +0 -1
  482. package/assets/esri/core/workers/chunks/6022f43ebd58e21c737a.js +0 -1
  483. package/assets/esri/core/workers/chunks/6048c89fc4dcd2e9988d.js +0 -1
  484. package/assets/esri/core/workers/chunks/61efc7f5fab1c2b1f764.js +0 -1
  485. package/assets/esri/core/workers/chunks/62b137a795e487fa06a1.js +0 -1
  486. package/assets/esri/core/workers/chunks/632de34ebd2f44b4423d.js +0 -1
  487. package/assets/esri/core/workers/chunks/63ca17f569407c89bde1.js +0 -30
  488. package/assets/esri/core/workers/chunks/643c7506f8fe8e06acd2.js +0 -1
  489. package/assets/esri/core/workers/chunks/6596b12bb286a0b45a68.js +0 -1
  490. package/assets/esri/core/workers/chunks/65cc9a48ac95523f7aa8.js +0 -1
  491. package/assets/esri/core/workers/chunks/661f50cb97604453f942.js +0 -1
  492. package/assets/esri/core/workers/chunks/686c1a1b794ebe1a0341.js +0 -1
  493. package/assets/esri/core/workers/chunks/6896a6dd36fa91a27151.js +0 -1
  494. package/assets/esri/core/workers/chunks/68bc674affe2f7269c40.js +0 -1
  495. package/assets/esri/core/workers/chunks/6c02493a1c1deff49c7e.js +0 -1
  496. package/assets/esri/core/workers/chunks/6cdf1db30793133294dd.js +0 -1
  497. package/assets/esri/core/workers/chunks/6ff6783f89ecd3a5e752.js +0 -1
  498. package/assets/esri/core/workers/chunks/70763c7b68d8abe8d5fe.js +0 -1
  499. package/assets/esri/core/workers/chunks/716b1f073e3cd807abd3.js +0 -1
  500. package/assets/esri/core/workers/chunks/71a3f05cb86ae2920f8d.js +0 -1
  501. package/assets/esri/core/workers/chunks/71b672259bac2befd9c7.js +0 -1
  502. package/assets/esri/core/workers/chunks/71c996e1ae84d9daddf2.js +0 -1
  503. package/assets/esri/core/workers/chunks/723bb56de2324b41df4e.js +0 -1
  504. package/assets/esri/core/workers/chunks/73f61107cb7e6d30bf03.js +0 -1
  505. package/assets/esri/core/workers/chunks/752c34cee981862add89.js +0 -1
  506. package/assets/esri/core/workers/chunks/75915f81caaf9e5345a9.js +0 -1
  507. package/assets/esri/core/workers/chunks/75baf6dff6e7658b17b3.js +0 -1
  508. package/assets/esri/core/workers/chunks/760dfd585b6c2c1937ce.js +0 -1
  509. package/assets/esri/core/workers/chunks/76449e50222111ba0eb1.js +0 -1
  510. package/assets/esri/core/workers/chunks/76789f46b2c65d219cf9.js +0 -1
  511. package/assets/esri/core/workers/chunks/76bed5497f42f23a27ed.js +0 -1
  512. package/assets/esri/core/workers/chunks/7849cf0352c0a604e164.js +0 -1
  513. package/assets/esri/core/workers/chunks/7908aed639521cf572e8.js +0 -1
  514. package/assets/esri/core/workers/chunks/7d65a8ec5e1f871b9321.js +0 -1
  515. package/assets/esri/core/workers/chunks/7e4093f42795ba2f8cfd.js +0 -1
  516. package/assets/esri/core/workers/chunks/7f849c8255140be6097f.js +0 -1
  517. package/assets/esri/core/workers/chunks/804c31973f7d116523cb.js +0 -1
  518. package/assets/esri/core/workers/chunks/81726d997a2d34449bb2.js +0 -1
  519. package/assets/esri/core/workers/chunks/81883bca8a79ee2ddb00.js +0 -1
  520. package/assets/esri/core/workers/chunks/832ecc1f7d45774c4726.js +0 -1
  521. package/assets/esri/core/workers/chunks/8461f50e9875db4ccfec.js +0 -1
  522. package/assets/esri/core/workers/chunks/8598997340682113a2a5.js +0 -1
  523. package/assets/esri/core/workers/chunks/860a0f9d20f53db1caf4.js +0 -1
  524. package/assets/esri/core/workers/chunks/867e39bb444947c93586.js +0 -1
  525. package/assets/esri/core/workers/chunks/88ec63501fa2f6fdadca.js +0 -1
  526. package/assets/esri/core/workers/chunks/8980767c5b626e4dc3b9.js +0 -1
  527. package/assets/esri/core/workers/chunks/89dd1b1acb0d69264c93.js +0 -1
  528. package/assets/esri/core/workers/chunks/8a66a3e8391206f7d8aa.js +0 -1
  529. package/assets/esri/core/workers/chunks/8a8b7ac6693bdfbebf07.js +0 -1
  530. package/assets/esri/core/workers/chunks/8ad5e80e911419c1685a.js +0 -1
  531. package/assets/esri/core/workers/chunks/8b526ca2dd6fc6a7e921.js +0 -1
  532. package/assets/esri/core/workers/chunks/8e80441eddef1b5be8b9.js +0 -1
  533. package/assets/esri/core/workers/chunks/8f16a358ed83d2264415.js +0 -1
  534. package/assets/esri/core/workers/chunks/8fce15ce4cfdccf407f3.js +0 -1
  535. package/assets/esri/core/workers/chunks/8fd63cb38036f331a803.js +0 -1
  536. package/assets/esri/core/workers/chunks/91c5205d1274c7f190d5.js +0 -1
  537. package/assets/esri/core/workers/chunks/92341f36a8b15f34bcca.js +0 -1
  538. package/assets/esri/core/workers/chunks/937cf55b3b9d324eea73.js +0 -1
  539. package/assets/esri/core/workers/chunks/93d4bda22bde33fafa57.js +0 -1
  540. package/assets/esri/core/workers/chunks/9639b1dd27ccc17ee21e.js +0 -1
  541. package/assets/esri/core/workers/chunks/966d002acec8c72be56a.js +0 -1
  542. package/assets/esri/core/workers/chunks/986d8c3907aeeb18c4f6.js +0 -1
  543. package/assets/esri/core/workers/chunks/98e489c2b85feded7776.js +0 -1
  544. package/assets/esri/core/workers/chunks/9aef0b87f471626abd66.js +0 -1
  545. package/assets/esri/core/workers/chunks/9ba9a3705623679bc305.js +0 -1
  546. package/assets/esri/core/workers/chunks/a188d0767825d322f96d.js +0 -1
  547. package/assets/esri/core/workers/chunks/a4d3cbc02dc1186a9a6d.js +0 -1
  548. package/assets/esri/core/workers/chunks/a638de0102c3990403d1.js +0 -1
  549. package/assets/esri/core/workers/chunks/a6bda5f17fb1c03f7e4b.js +0 -1
  550. package/assets/esri/core/workers/chunks/a6dc01847f39413f78b8.js +0 -1
  551. package/assets/esri/core/workers/chunks/acc733b4881c3e4e503e.js +0 -1
  552. package/assets/esri/core/workers/chunks/b022debf9e0bc2bff0e2.js +0 -1
  553. package/assets/esri/core/workers/chunks/b09935d0105d50a0971b.js +0 -1
  554. package/assets/esri/core/workers/chunks/b12fc1b5a9da97346684.js +0 -1
  555. package/assets/esri/core/workers/chunks/b4323e69e624c6b51754.js +0 -1
  556. package/assets/esri/core/workers/chunks/b45e91249a8ea1559a2b.js +0 -1
  557. package/assets/esri/core/workers/chunks/b50a42a9f96515beb929.js +0 -1
  558. package/assets/esri/core/workers/chunks/b5141f240ca79729686d.js +0 -1
  559. package/assets/esri/core/workers/chunks/b549a4d4b1a34bee8beb.js +0 -1
  560. package/assets/esri/core/workers/chunks/bb89b6fd93513c61b2d3.js +0 -1
  561. package/assets/esri/core/workers/chunks/bc553ecc8cbcc1b02717.js +0 -1
  562. package/assets/esri/core/workers/chunks/bcba02f61cf0abcb5600.js +0 -1
  563. package/assets/esri/core/workers/chunks/bccc199af4e2e49f7acd.js +0 -1
  564. package/assets/esri/core/workers/chunks/bd0f488e228a75fbefb3.js +0 -30
  565. package/assets/esri/core/workers/chunks/bd155794e9bc16dd0474.js +0 -1
  566. package/assets/esri/core/workers/chunks/bf6ae205fbfbfcd1a0ee.js +0 -1
  567. package/assets/esri/core/workers/chunks/c148ad0ea9258046ac1f.js +0 -1
  568. package/assets/esri/core/workers/chunks/c228b058dd91bf0e1102.js +0 -1
  569. package/assets/esri/core/workers/chunks/c4e44fde4bc4ff89e2bc.js +0 -1
  570. package/assets/esri/core/workers/chunks/c4fc85281ca83af7abaf.js +0 -1
  571. package/assets/esri/core/workers/chunks/c610ccbfdb1c5b06c217.js +0 -1
  572. package/assets/esri/core/workers/chunks/c660a5a1086870a3a6b9.js +0 -1
  573. package/assets/esri/core/workers/chunks/c8b7ffc5cb3f1493129e.js +0 -1
  574. package/assets/esri/core/workers/chunks/c9057b0ad2c2bae4a8ce.js +0 -1
  575. package/assets/esri/core/workers/chunks/c93a68618674b38b932e.js +0 -1
  576. package/assets/esri/core/workers/chunks/c961aff385e38b081204.js +0 -1
  577. package/assets/esri/core/workers/chunks/cc0efa716b8414a44398.js +0 -1
  578. package/assets/esri/core/workers/chunks/cd66bd30f654fe571e57.js +0 -1
  579. package/assets/esri/core/workers/chunks/cd88e6f02bc2e5b67abf.js +0 -1
  580. package/assets/esri/core/workers/chunks/cf826787ab8d4b27ad80.js +0 -1
  581. package/assets/esri/core/workers/chunks/cfbbfa5edffa57bd3a8e.js +0 -1
  582. package/assets/esri/core/workers/chunks/d0217187aed8bb7038f4.js +0 -1
  583. package/assets/esri/core/workers/chunks/d1928a8c86a8966e5582.js +0 -1
  584. package/assets/esri/core/workers/chunks/d2745886ba5a86fd5c4c.js +0 -680
  585. package/assets/esri/core/workers/chunks/d4c341b15d9244276fb9.js +0 -1
  586. package/assets/esri/core/workers/chunks/d5faab9799891e5da5a8.js +0 -1
  587. package/assets/esri/core/workers/chunks/d811924acc9c0be95bba.js +0 -1
  588. package/assets/esri/core/workers/chunks/db90fb8ac96579259566.js +0 -1
  589. package/assets/esri/core/workers/chunks/dd0acd0f8b96839b4f24.js +0 -2
  590. package/assets/esri/core/workers/chunks/dd785e595cd08b2d6284.js +0 -1
  591. package/assets/esri/core/workers/chunks/e0b47b08ae2c36c76fa2.js +0 -1
  592. package/assets/esri/core/workers/chunks/e1ddb8e4977b317fd40c.js +0 -1
  593. package/assets/esri/core/workers/chunks/e4015870412edd69453c.js +0 -1
  594. package/assets/esri/core/workers/chunks/e7cb1b72f0b54e845741.js +0 -1
  595. package/assets/esri/core/workers/chunks/e7e7c7cbfd8542bd7a46.js +0 -1
  596. package/assets/esri/core/workers/chunks/e80376832050a4b6d28a.js +0 -1
  597. package/assets/esri/core/workers/chunks/e8a885b576da3ec145d3.js +0 -1
  598. package/assets/esri/core/workers/chunks/e95ee94027c1934086d8.js +0 -1
  599. package/assets/esri/core/workers/chunks/e961c6140c39921816a8.js +0 -1
  600. package/assets/esri/core/workers/chunks/eb7daa0f6610983ff8db.js +0 -1
  601. package/assets/esri/core/workers/chunks/eb842cf470ce28a73187.js +0 -1
  602. package/assets/esri/core/workers/chunks/eeea5710275c967e8d51.js +0 -1
  603. package/assets/esri/core/workers/chunks/ef32e454012f3b0e3f77.js +0 -1
  604. package/assets/esri/core/workers/chunks/f31a8e76f1dde23c0900.js +0 -1
  605. package/assets/esri/core/workers/chunks/f50bba74ae72c07e131a.js +0 -1
  606. package/assets/esri/core/workers/chunks/f58ddf37dee066a5c0d8.js +0 -1
  607. package/assets/esri/core/workers/chunks/f80cadcc2a588da63b38.js +0 -1
  608. package/assets/esri/core/workers/chunks/f83e3ad67b60744afd6d.js +0 -1
  609. package/assets/esri/core/workers/chunks/f859c53432f258af77e3.js +0 -2
  610. package/assets/esri/core/workers/chunks/f8bbb52b865a0a242140.js +0 -1
  611. package/assets/esri/core/workers/chunks/f8f3579d0c1b65762902.js +0 -1
  612. package/assets/esri/core/workers/chunks/f9592bcdd9988199a7ea.js +0 -1
  613. package/assets/esri/core/workers/chunks/fedbeb488d5d7c07c7dc.js +0 -1
  614. package/assets/esri/core/workers/chunks/ff7e1eb2366d4301d288.js +0 -1
  615. package/assets/esri/themes/base/_colorVariables.scss +0 -1
  616. package/assets/esri/themes/base/widgets/_DatePicker.scss +0 -170
  617. package/assets/esri/themes/base/widgets/_FeatureUtilityNetworkAssociationList.scss +0 -13
  618. package/assets/esri/themes/base/widgets/_TimePicker.scss +0 -15
  619. package/chunks/CutFillDepth.glsl.js +0 -2
  620. package/core/PLRUCache.js +0 -2
  621. package/views/2d/engine/webgl/BitBlitRenderer.js +0 -2
  622. package/views/2d/engine/webgl/WorldExtentClipRenderer.js +0 -2
  623. package/views/2d/engine/webgl/effects/highlight/HighlightRenderer.js +0 -2
  624. package/views/2d/engine/webgl/shaders/BitBlitPrograms.js +0 -2
  625. package/views/2d/engine/webgl/shaders/HighlightPrograms.js +0 -2
  626. package/views/2d/engine/webgl/shaders/StencilPrograms.js +0 -2
  627. package/views/3d/webgl-engine/shaders/CutFillDepthTechnique.js +0 -2
  628. package/views/3d/webgl-engine/shaders/CutFillDepthTechniqueConfiguration.js +0 -2
  629. package/views/support/euclideanAreaMeasurementUtils.js +0 -2
  630. package/widgets/ShadowCast/ShadowVisualizationType.js +0 -2
  631. /package/assets/esri/core/workers/chunks/{47948c72bc01bd173c20.js.LICENSE.txt → 24c0b3586bb6500eda53.js.LICENSE.txt} +0 -0
  632. /package/assets/esri/core/workers/chunks/{f859c53432f258af77e3.js.LICENSE.txt → 394716bd1ecfd638d708.js.LICENSE.txt} +0 -0
  633. /package/assets/esri/core/workers/chunks/{1040bce57ea63a6dbca4.js.LICENSE.txt → 55af58b6dff52dc040fe.js.LICENSE.txt} +0 -0
  634. /package/assets/esri/core/workers/chunks/{dd0acd0f8b96839b4f24.js.LICENSE.txt → 5b18696109fe84a1010a.js.LICENSE.txt} +0 -0
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import"../../../../core/has.js";import{disposeMaybe as e,destroyMaybe as t}from"../../../../core/maybe.js";import{BitBlitRenderer as s}from"./BitBlitRenderer.js";import{backbufferStencilVisible as r}from"./definitions.js";import i from"./MaterialManager.js";import{RenderingDevice as n}from"./RenderingDevice.js";import o from"./TextureManager.js";import{TextureUploadManager as a}from"./TextureUploadManager.js";import{WorldExtentRenderer as f}from"./WorldExtentClipRenderer.js";import{BlendEffect as h}from"./effects/BlendEffect.js";import{FeatureEffect as l}from"./effects/FeatureEffect.js";import c from"./effects/HighlightEffect.js";import{HittestEffect as d}from"./effects/HittestEffect.js";import{EffectManager as u}from"./effects/post-processing/EffectManager.js";import{SimpleMesh as p}from"./meshing/SimpleMesh.js";import{SizedDepthStencilFormat as b}from"../../../webgl/enums.js";import{DisposableFramebufferObject as g}from"../../../webgl/FramebufferObject.js";import{Renderbuffer as _}from"../../../webgl/Renderbuffer.js";import{RenderbufferDescriptor as m}from"../../../webgl/RenderbufferDescriptor.js";import{TextureDescriptor as w}from"../../../webgl/TextureDescriptor.js";class M{constructor(e,t){this.context=e,this._blitRenderer=new s,this._worldExtentRenderer=new f,this._lastWidth=null,this._lastHeight=null,this._blendEffect=new h,this._stencilBuf=null,this._prevBeforeLayerFBOStack=[],this._fboPool=[],this.effects={highlight:new c,hittest:new d,insideEffect:new l("inside"),outsideEffect:new l("outside")},this.materialManager=new i(e),this.textureManager=new o(t),this.textureUploadManager=new a(t),this._effectsManager=new u,this._quadMesh=p.fromVertexStream(e,[0,0,1,0,0,1,1,1]),this._renderingDevice=new n}dispose(){if(this.materialManager.dispose(),this.textureManager.dispose(),this.textureUploadManager.destroy(),this._blitRenderer=e(this._blitRenderer),this._worldExtentRenderer=e(this._worldExtentRenderer),this._quadMesh=t(this._quadMesh),this._fbos){let e;for(e in this._fbos)this._fbos[e]&&this._fbos[e].dispose()}for(const e of this._fboPool)e.dispose();if(this._fboPool.length=0,this.effects){let e;for(e in this.effects)this.effects[e]&&this.effects[e].dispose()}this._effectsManager.dispose(),this._blendEffect.dispose(this.context),this._renderingDevice.dispose()}get blitRenderer(){return this._blitRenderer}get quadMesh(){return this._quadMesh}getFbos(){if(!this._fbos)throw new Error("InternalError: Painter FBOs not initialized");return this._fbos}acquireFbo(e,t){let s;if(this._fboPool.length>0)s=this._fboPool.pop();else{const r=new w(e,t);r.samplingMode=9728,r.wrapMode=33071,s=new g(this.context,r,this._stencilBuf)}return s.width===e&&s.height===t||s.resize(e,t),s}releaseFbo(e){this._fboPool.push(e)}getSharedStencilBuffer(){return this._stencilBuf}beforeRenderPhases(e,t,s){const{context:r}=e;this._worldExtentRenderer.render(e,t,s);const{width:i,height:n}=r.getViewport();if(this.updateFBOs(i,n),this._prevFBO=r.boundFramebuffer,r.bindFramebuffer(this.getFbos().output),r.setColorMask(!0,!0,!0,!0),null!=t){const{r:e,g:s,b:i,a:n}=t;r.setClearColor(n*e/255,n*s/255,n*i/255,n)}else r.setClearColor(0,0,0,0);r.setDepthWriteEnabled(!0),r.setClearDepth(1),r.clear(16640),r.setDepthWriteEnabled(!1)}afterRenderPhases(e){const{context:t}=e;t.bindFramebuffer(this._prevFBO),t.setStencilFunction(514,r,255),t.setStencilTestEnabled(!0),t.setDepthTestEnabled(!1),this.blitTexture(t,this.getFbos().output.colorTexture,9728)}beforeRenderLayer(e,t,s){const{context:r,blendMode:i,effects:n,drawPhase:o,requireFBO:a}=e;if(r.setClearColor(0,0,0,0),a||E(o,i,n,s)){const e=r.boundFramebuffer;this._prevBeforeLayerFBOStack.push(e);const{width:t,height:s}=r.getViewport(),i=this.acquireFbo(t,s);r.bindFramebuffer(i),r.setColorMask(!0,!0,!0,!0),r.setClearColor(0,0,0,0),r.setDepthWriteEnabled(!0),r.setClearDepth(1),r.clear(16640),r.setDepthWriteEnabled(!1)}r.setDepthWriteEnabled(!1),r.setDepthTestEnabled(!1),r.setStencilTestEnabled(!0),r.setClearStencil(t),r.setStencilWriteMask(255),r.clear(1024)}afterRenderLayer(e,t){const{context:s,blendMode:r,effects:i,requireFBO:n,drawPhase:o}=e;if(n||E(o,r,i,t)){const n=s.boundFramebuffer;if(null==n)return;null!=i&&i.length>0&&1===o&&(s.setColorMask(!0,!0,!0,!0),this._applyEffects(e,i,n)),s.bindFramebuffer(this._prevBeforeLayerFBOStack.pop()),s.setStencilTestEnabled(!1),s.setStencilWriteMask(0),s.setBlendingEnabled(!0),s.setBlendFunctionSeparate(1,771,1,771),s.setColorMask(!0,!0,!0,!0);const a=null==r||16===o||2===o||128===o?"normal":r;this._blendEffect.draw(e,n.colorTexture,9728,a,t),this.releaseFbo(n)}}blitTexture(e,t,s,r=1){e.setBlendingEnabled(!0),e.setBlendFunctionSeparate(1,771,1,771),e.setColorMask(!0,!0,!0,!0),this._blitRenderer.render(e,t,s,r),this._renderingDevice.setPipelineStateNeedsUpdate(!0)}getPostProcessingEffects(e){return this._effectsManager.getPostProcessingEffects(e)}updateFBOs(e,t){if(e!==this._lastWidth||t!==this._lastHeight){if(this._lastWidth=e,this._lastHeight=t,this._fbos){let s;for(s in this._fbos)this._fbos[s].resize(e,t);return}const s=new w(e,t);s.samplingMode=9728,s.wrapMode=33071;const r=new m(b.DEPTH24_STENCIL8,e,t);this._stencilBuf=new _(this.context,r),this._fbos={output:new g(this.context,s,this._stencilBuf),effect0:new g(this.context,s,this._stencilBuf)}}}_applyEffects(e,t,s){const{context:r}=e,i=this._effectsManager.getPostProcessingEffects(t);for(const{postProcessingTechnique:n,effect:o}of i)r.bindFramebuffer(s),n.render(e,{layerFBO:s,effect:o});this._renderingDevice.setPipelineStateNeedsUpdate(!0)}setShader(e){return this._renderingDevice.setShader(e)}clearShaderCache(){this._renderingDevice.clearShaderCache()}getProgramCache(){return this._renderingDevice.getProgramCache()}setPipelineState(e){return this._renderingDevice.setPipelineState(e)}getPipelineState(){return this._renderingDevice.getPipelineState()}submitDraw(e,t,s){return this._renderingDevice.submitDraw(e,t,s)}submitDrawMesh(e,t,s,r){this._renderingDevice.submitDrawMesh(e,t,s,r)}submitDrawMeshUntyped(e,t,s,r){this._renderingDevice.submitDrawMeshUntyped(e,t,s,r)}updatePipelineState(e){return this._renderingDevice.updatePipelineState(e)}setStencilRef(e,t){return this._renderingDevice.setStencilRef(e,t)}}function E(e,t,s,r){return 4!==e&&2!==e&&16!==e&&128!==e&&(1!==r||null!=t&&"normal"!==t||null!=s&&s.length>0)}export{M as default};
2
+ import"../../../../core/has.js";import{destroyMaybe as e}from"../../../../core/maybe.js";import t from"./MaterialManager.js";import{RenderingDevice as s}from"./RenderingDevice.js";import i from"./TextureManager.js";import{TextureUploadManager as r}from"./TextureUploadManager.js";import{BlendEffect as n}from"./effects/BlendEffect.js";import{FeatureEffect as o}from"./effects/FeatureEffect.js";import a from"./effects/HighlightEffect.js";import{HittestEffect as h}from"./effects/HittestEffect.js";import{EffectManager as f}from"./effects/post-processing/EffectManager.js";import{SimpleMesh as l}from"./meshing/SimpleMesh.js";import{BitBlitTechnique as c}from"./shaderGraph/techniques/utility/BitBlitTechnique.js";import{WorldExtentClipTechnique as d}from"./shaderGraph/techniques/utility/WorldExtentClipTechnique.js";import{SizedDepthStencilFormat as u}from"../../../webgl/enums.js";import{DisposableFramebufferObject as p}from"../../../webgl/FramebufferObject.js";import{Renderbuffer as g}from"../../../webgl/Renderbuffer.js";import{RenderbufferDescriptor as b}from"../../../webgl/RenderbufferDescriptor.js";import{TextureDescriptor as _}from"../../../webgl/TextureDescriptor.js";class m{constructor(e,u){this.context=e,this._blitTechnique=new c,this._worldExtentClipTechnique=new d,this._lastWidth=null,this._lastHeight=null,this._blendEffect=new n,this._stencilBuf=null,this._prevBeforeLayerFBOStack=[],this._fboPool=[],this.effects={highlight:new a,hittest:new h,insideEffect:new o("inside"),outsideEffect:new o("outside")},this.materialManager=new t(e),this.textureManager=new i(u),this.textureUploadManager=new r(u),this._effectsManager=new f,this._quadMesh=l.fromVertexStream(e,[0,0,1,0,0,1,1,1]),this._renderingDevice=new s}dispose(){if(this.materialManager.dispose(),this.textureManager.dispose(),this.textureUploadManager.destroy(),this._blitTechnique.shutdown(),this._worldExtentClipTechnique.shutdown(),this._quadMesh=e(this._quadMesh),this._fbos){let e;for(e in this._fbos)this._fbos[e]&&this._fbos[e].dispose()}for(const e of this._fboPool)e.dispose();if(this._fboPool.length=0,this.effects){let e;for(e in this.effects)this.effects[e]&&this.effects[e].dispose()}this._effectsManager.dispose(),this._blendEffect.dispose(this.context),this._renderingDevice.dispose()}get quadMesh(){return this._quadMesh}getFbos(){if(!this._fbos)throw new Error("InternalError: Painter FBOs not initialized");return this._fbos}acquireFbo(e,t){let s;if(this._fboPool.length>0)s=this._fboPool.pop();else{const i=new _(e,t);i.samplingMode=9728,i.wrapMode=33071,s=new p(this.context,i,this._stencilBuf)}return s.width===e&&s.height===t||s.resize(e,t),s}releaseFbo(e){this._fboPool.push(e)}getSharedStencilBuffer(){return this._stencilBuf}beforeRenderPhases(e,t,s){const{context:i}=e;this._worldExtentClipTechnique.render(e,{backgroundColor:t,padding:s});const{width:r,height:n}=i.getViewport();if(this.updateFBOs(r,n),this._prevFBO=i.boundFramebuffer,i.bindFramebuffer(this.getFbos().output),i.setColorMask(!0,!0,!0,!0),null!=t){const{r:e,g:s,b:r,a:n}=t;i.setClearColor(n*e/255,n*s/255,n*r/255,n)}else i.setClearColor(0,0,0,0);i.setDepthWriteEnabled(!0),i.setClearDepth(1),i.clear(16640),i.setDepthWriteEnabled(!1)}afterRenderPhases(e){const{context:t}=e;t.bindFramebuffer(this._prevFBO),this._blitTechnique.render(e,{texture:this.getFbos().output.colorTexture,samplingMode:9728,opacity:1,clipToVisibleRegion:!0}),this._renderingDevice.setPipelineStateNeedsUpdate(!0)}beforeRenderLayer(e,t,s){const{context:i,blendMode:r,effects:n,drawPhase:o,requireFBO:a}=e;if(i.setClearColor(0,0,0,0),a||w(o,r,n,s)){const e=i.boundFramebuffer;this._prevBeforeLayerFBOStack.push(e);const{width:t,height:s}=i.getViewport(),r=this.acquireFbo(t,s);i.bindFramebuffer(r),i.setColorMask(!0,!0,!0,!0),i.setClearColor(0,0,0,0),i.setDepthWriteEnabled(!0),i.setClearDepth(1),i.clear(16640),i.setDepthWriteEnabled(!1)}i.setDepthWriteEnabled(!1),i.setDepthTestEnabled(!1),i.setStencilTestEnabled(!0),i.setClearStencil(t),i.setStencilWriteMask(255),i.clear(1024)}afterRenderLayer(e,t){const{context:s,blendMode:i,effects:r,requireFBO:n,drawPhase:o}=e;if(n||w(o,i,r,t)){const n=s.boundFramebuffer;if(null==n)return;null!=r&&r.length>0&&1===o&&(s.setColorMask(!0,!0,!0,!0),this._applyEffects(e,r,n)),s.bindFramebuffer(this._prevBeforeLayerFBOStack.pop()),s.setStencilTestEnabled(!1),s.setStencilWriteMask(0),s.setBlendingEnabled(!0),s.setBlendFunctionSeparate(1,771,1,771),s.setColorMask(!0,!0,!0,!0);const a=null==i||16===o||2===o||128===o?"normal":i;this._blendEffect.draw(e,n.colorTexture,9728,a,t),this.releaseFbo(n)}}blitTexture(e,t,s,i=1){this._blitTechnique.render(e,{texture:t,samplingMode:s,opacity:i}),this._renderingDevice.setPipelineStateNeedsUpdate(!0)}getPostProcessingEffects(e){return this._effectsManager.getPostProcessingEffects(e)}updateFBOs(e,t){if(e!==this._lastWidth||t!==this._lastHeight){if(this._lastWidth=e,this._lastHeight=t,this._fbos){let s;for(s in this._fbos)this._fbos[s].resize(e,t);return}const s=new _(e,t);s.samplingMode=9728,s.wrapMode=33071;const i=new b(u.DEPTH24_STENCIL8,e,t);this._stencilBuf=new g(this.context,i),this._fbos={output:new p(this.context,s,this._stencilBuf),effect0:new p(this.context,s,this._stencilBuf)}}}_applyEffects(e,t,s){const{context:i}=e,r=this._effectsManager.getPostProcessingEffects(t);for(const{postProcessingTechnique:n,effect:o}of r)i.bindFramebuffer(s),n.render(e,{layerFBO:s,effect:o});this._renderingDevice.setPipelineStateNeedsUpdate(!0)}setShader(e){return this._renderingDevice.setShader(e)}clearShaderCache(){this._renderingDevice.clearShaderCache()}getProgramCache(){return this._renderingDevice.getProgramCache()}setPipelineState(e){return this._renderingDevice.setPipelineState(e)}getPipelineState(){return this._renderingDevice.getPipelineState()}submitDraw(e,t,s){return this._renderingDevice.submitDraw(e,t,s)}submitDrawMesh(e,t,s,i){this._renderingDevice.submitDrawMesh(e,t,s,i)}submitDrawMeshUntyped(e,t,s,i){this._renderingDevice.submitDrawMeshUntyped(e,t,s,i)}updatePipelineState(e){return this._renderingDevice.updatePipelineState(e)}setStencilRef(e,t){return this._renderingDevice.setStencilRef(e,t)}}function w(e,t,s,i){return 4!==e&&2!==e&&16!==e&&128!==e&&(1!==i||null!=t&&"normal"!==t||null!=s&&s.length>0)}export{m as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- const t=8,e=t-2,c=1e-30,h=64,i=4294967295,o=512,a=256,d=256/360,n=128,p=16777216,r=!1,s=128,f=8,g=10,l=29,m=1,v=16,w=16,x=o/s,b=8,j=50,k=10,q=24,u=3,y=24,z=8,A=3,B=24,C=8,D=4,E={metrics:{width:15,height:17,left:0,top:-7,advance:14}},F=1024,G=0,H=0,I=0,J=1,K=2,L=3,M=4,N=5,O=6,P=12,Q=13,R=5,S=6,T=5,U=6,V=6,W=1<<V,X=W<<1,Y=!1,Z=1.05,$=3,_=1,tt=3,et=3,ct=5,ht=6,it=1.15,ot=2,at=4,dt=128,nt=256,pt=nt-2*at,rt=2,st=128,ft=1,gt=8,lt=500,mt=4,vt=128,wt=1024,xt=2,bt=0,jt=1,kt=4,qt=8,ut=16,yt=4,zt=1,At=4,Bt=8,Ct=32,Dt=64,Et=128,Ft=4,Gt=1,Ht=1<<20,It=.75,Jt=10,Kt=.75,Lt=12,Mt=256,Nt=32,Ot=512,Pt=0,Qt=1;export{Gt as MAX_TILE_RESHUFFLES_PER_FRAME,Jt as RESHUFFLING_EXEMPT_DRAW_CALLS,Ht as RESHUFFLING_EXEMPT_MEMORY_BYTES,Kt as RESHUFFLING_TARGET_DRAW_EFFICIENCY,It as RESHUFFLING_TARGET_MEMORY_EFFICIENCY,K as animationUnit,Mt as attributeStoreInitialSize,F as attributeStoreTextureSize,E as averageGlyphMosaicItem,Qt as backbufferStencilClipped,Pt as backbufferStencilVisible,Ct as bitsetFillHasPatternHeightPrecisionFactor,Dt as bitsetFillHasPatternWidthPrecisionFactor,Bt as bitsetFillHasUnresolvedReplacementColor,At as bitsetFillRandomPatternOffset,ut as bitsetGenericConsiderAlphaOnly,xt as bitsetGenericLockColor,yt as bitsetLineScaleDash,jt as bitsetMarkerAlignmentMap,bt as bitsetMarkerAlignmentScreen,kt as bitsetMarkerOutlineAllowColorOverride,qt as bitsetMarkerScaleSymbolsProportionally,zt as bitsetTypeFillOutline,vt as bufferDataMinimumSize,mt as bufferDataPoolSize,g as chartMaxFields,w as collisionBoxPadding,s as collisionBucketSize,v as collisionEarlyRejectBucketSize,m as collisionMaxZoomDelta,b as collisionPlacementPadding,x as collisionTileBoxSize,n as compressionFactorForU16,M as dataDrivenUnit0,N as dataDrivenUnit1,O as dataDrivenUnit2,r as debugLabels,dt as defaultSdfTextureSize,gt as displayRecordIntPerElement,f as dotDensityMaxFields,X as effectFlag0,Y as enableEarlyLabelDiscard,h as extrudeScale,W as filterFlag0,J as filterFlagsUnit,q as glyphSize,P as gpgpuUnit,ft as gradientTextureExternalPadding,k as heuristicGlyphsPerFeature,j as heuristicGlyphsPerLine,et as hittestSmallSymbolThreshold,_ as hittestToleranceDesktop,$ as hittestToleranceMobile,tt as hittestToleranceSmallSymbol,D as labelPlacementOffsetPadding,Q as localTimeOriginUnit,l as magicLabelLineHeight,Lt as maxGeohashLevel,ot as maxGpuUploadsPerFrame,V as maxHighlightReasons,p as maxRepresentableInt,Ot as maxTextLineWidth,Nt as minTextLineWidth,c as nanMagicNumber,d as packDegreesU8,lt as patchPixelBufferAllocSize,rt as patternFillRasterizationScale,i as pictureFillColor,wt as randomInsidePolygonTextureSize,a as rasterTileSize,st as rasterizedVectorMarkerMinSize,A as sdfBufferGlyphSDFCreator,u as sdfBufferServer,C as sdfRadiusComplex,z as sdfRadiusSimple,B as sdfSizeComplex,y as sdfSizeSimple,at as spritePadding,pt as svgSdfTextureInnerSize,nt as svgSdfTextureSize,I as textureBindingBitmap,H as textureBindingGlyphAtlas,R as textureBindingHighlight0,S as textureBindingHighlight1,T as textureBindingRenderer0,U as textureBindingRenderer1,G as textureBindingSpriteAtlas,Ft as textureUploadManagerBudget,Et as textureUploadManagerChunkSize,Z as thinLineHalfWidthThreshold,o as tileSize,L as visualVariableUnit,it as vtlHighResCutoff,ht as vtlTextureBindingUnitGlyphs,ct as vtlTextureBindingUnitSprites,e as webglMaxInnerStops,t as webglMaxStops};
2
+ const t=8,e=t-2,c=1e-30,h=64,i=4294967295,o=512,a=256,d=256/360,n=128,p=16777216,r=!1,s=128,f=8,g=10,l=29,m=10,v=1,w=16,x=16,b=o/s,j=8,k=50,q=10,u=24,y=3,z=24,A=8,B=3,C=24,D=8,E=4,F={metrics:{width:15,height:17,left:0,top:-7,advance:14}},G=1024,H=0,I=0,J=0,K=1,L=2,M=3,N=4,O=5,P=6,Q=12,R=13,S=5,T=6,U=5,V=6,W=6,X=1<<W,Y=X<<1,Z=!1,$=1.05,_=3,tt=1,et=3,ct=3,ht=5,it=6,ot=1.15,at=2,dt=4,nt=128,pt=256,rt=pt-2*dt,st=2,ft=128,gt=1,lt=8,mt=500,vt=4,wt=128,xt=1024,bt=2,jt=0,kt=1,qt=4,ut=8,yt=16,zt=4,At=1,Bt=4,Ct=8,Dt=32,Et=64,Ft=128,Gt=4,Ht=1,It=1<<20,Jt=.75,Kt=10,Lt=.75,Mt=12,Nt=256,Ot=32,Pt=512,Qt=0,Rt=1;export{Ht as MAX_TILE_RESHUFFLES_PER_FRAME,Kt as RESHUFFLING_EXEMPT_DRAW_CALLS,It as RESHUFFLING_EXEMPT_MEMORY_BYTES,Lt as RESHUFFLING_TARGET_DRAW_EFFICIENCY,Jt as RESHUFFLING_TARGET_MEMORY_EFFICIENCY,L as animationUnit,Nt as attributeStoreInitialSize,G as attributeStoreTextureSize,F as averageGlyphMosaicItem,Rt as backbufferStencilClipped,Qt as backbufferStencilVisible,Dt as bitsetFillHasPatternHeightPrecisionFactor,Et as bitsetFillHasPatternWidthPrecisionFactor,Ct as bitsetFillHasUnresolvedReplacementColor,Bt as bitsetFillRandomPatternOffset,yt as bitsetGenericConsiderAlphaOnly,bt as bitsetGenericLockColor,zt as bitsetLineScaleDash,kt as bitsetMarkerAlignmentMap,jt as bitsetMarkerAlignmentScreen,qt as bitsetMarkerOutlineAllowColorOverride,ut as bitsetMarkerScaleSymbolsProportionally,At as bitsetTypeFillOutline,wt as bufferDataMinimumSize,vt as bufferDataPoolSize,g as chartMaxFields,x as collisionBoxPadding,s as collisionBucketSize,w as collisionEarlyRejectBucketSize,v as collisionMaxZoomDelta,j as collisionPlacementPadding,b as collisionTileBoxSize,n as compressionFactorForU16,N as dataDrivenUnit0,O as dataDrivenUnit1,P as dataDrivenUnit2,r as debugLabels,nt as defaultSdfTextureSize,lt as displayRecordIntPerElement,f as dotDensityMaxFields,Y as effectFlag0,Z as enableEarlyLabelDiscard,h as extrudeScale,X as filterFlag0,K as filterFlagsUnit,u as glyphSize,Q as gpgpuUnit,gt as gradientTextureExternalPadding,q as heuristicGlyphsPerFeature,k as heuristicGlyphsPerLine,ct as hittestSmallSymbolThreshold,tt as hittestToleranceDesktop,_ as hittestToleranceMobile,et as hittestToleranceSmallSymbol,E as labelPlacementOffsetPadding,m as labelU16ZoomPrecisionFactor,R as localTimeOriginUnit,l as magicLabelLineHeight,Mt as maxGeohashLevel,at as maxGpuUploadsPerFrame,W as maxHighlightReasons,p as maxRepresentableInt,Pt as maxTextLineWidth,Ot as minTextLineWidth,c as nanMagicNumber,d as packDegreesU8,mt as patchPixelBufferAllocSize,st as patternFillRasterizationScale,i as pictureFillColor,xt as randomInsidePolygonTextureSize,a as rasterTileSize,ft as rasterizedVectorMarkerMinSize,B as sdfBufferGlyphSDFCreator,y as sdfBufferServer,D as sdfRadiusComplex,A as sdfRadiusSimple,C as sdfSizeComplex,z as sdfSizeSimple,dt as spritePadding,rt as svgSdfTextureInnerSize,pt as svgSdfTextureSize,J as textureBindingBitmap,I as textureBindingGlyphAtlas,S as textureBindingHighlight0,T as textureBindingHighlight1,U as textureBindingRenderer0,V as textureBindingRenderer1,H as textureBindingSpriteAtlas,Gt as textureUploadManagerBudget,Ft as textureUploadManagerChunkSize,$ as thinLineHalfWidthThreshold,o as tileSize,M as visualVariableUnit,ot as vtlHighResCutoff,it as vtlTextureBindingUnitGlyphs,ht as vtlTextureBindingUnitSprites,e as webglMaxInnerStops,t as webglMaxStops};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{Effect as e}from"./Effect.js";class t extends e{constructor(e){super(),this.name=this.constructor.name,this.defines=[e]}dispose(){}bind({context:e,painter:t}){this._prev=e.boundFramebuffer;const r=t.getFbos().effect0;e.bindFramebuffer(r),e.setColorMask(!0,!0,!0,!0),e.setClearColor(0,0,0,0),e.clear(16384)}unbind(){}draw(e,t){const{context:r,painter:s}=e,n=s.getPostProcessingEffects(t),o=r.boundFramebuffer;if(o){for(const{postProcessingTechnique:t,effect:r}of n)t.render(e,{layerFBO:o,effect:r});r.bindFramebuffer(this._prev),r.setStencilTestEnabled(!1),s.blitTexture(r,o.colorTexture,9728),r.setStencilTestEnabled(!0)}}}export{t as FeatureEffect};
2
+ import{Effect as e}from"./Effect.js";class t extends e{constructor(e){super(),this.name=this.constructor.name,this.defines=[e]}dispose(){}bind({context:e,painter:t}){this._prev=e.boundFramebuffer;const r=t.getFbos().effect0;e.bindFramebuffer(r),e.setColorMask(!0,!0,!0,!0),e.setClearColor(0,0,0,0),e.clear(16384)}unbind(){}draw(e,t){const{context:r,painter:s}=e,n=s.getPostProcessingEffects(t),o=r.boundFramebuffer;if(o){for(const{postProcessingTechnique:t,effect:r}of n)t.render(e,{layerFBO:o,effect:r});r.bindFramebuffer(this._prev),r.setStencilTestEnabled(!1),s.blitTexture(e,o.colorTexture,9728),r.setStencilTestEnabled(!0)}}}export{t as FeatureEffect};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import"../../../../../core/has.js";import{BitBlitRenderer as e}from"../BitBlitRenderer.js";import{Effect as t}from"./Effect.js";import s from"./highlight/HighlightRenderer.js";import r from"./highlight/HighlightSurfaces.js";const i=4,h=4/i;class d extends t{constructor(){super(...arguments),this.defines=["highlight"],this._hlRenderer=new s,this._width=void 0,this._height=void 0,this._hlSurfaces=new r,this._adjustedWidth=void 0,this._adjustedHeight=void 0,this._blitRenderer=new e}dispose(){this._hlSurfaces?.dispose(),this._hlRenderer?.dispose(),this._boundFBO=null}bind(e){const{context:t,painter:s}=e,{width:r,height:i}=t.getViewport(),h=s.getFbos().effect0;this.setup(e,r,i),t.bindFramebuffer(h),t.setColorMask(!0,!0,!0,!0),t.setClearColor(0,0,0,0),t.clear(16384)}unbind(){}setup({context:e},t,s){this._width=t,this._height=s;const r=t%i,d=s%i;t+=r<i/2?-r:i-r,s+=d<i/2?-d:i-d,this._adjustedWidth=t,this._adjustedHeight=s,this._boundFBO=e.boundFramebuffer;const l=Math.round(t*h),o=Math.round(s*h);this._hlRenderer.setup(e,l,o),this._hlSurfaces.setup(e,l,o)}draw(e){const{context:t,passOptions:s}=e,r=s.activeGradient,i=t.boundFramebuffer;t.setViewport(0,0,this._adjustedWidth*h,this._adjustedHeight*h),t.bindFramebuffer(this._hlSurfaces.sharedBlur1Fbo),t.setStencilTestEnabled(!1),t.setClearColor(0,0,0,0),t.clear(16384),this._blitRenderer.render(t,i?.colorTexture,9728,1),t.setStencilTestEnabled(!1),t.setBlendingEnabled(!1),t.setColorMask(!1,!1,!1,!0),t.bindFramebuffer(this._hlSurfaces.sharedBlur2Fbo),t.setClearColor(0,0,0,0),t.clear(16384),this._hlRenderer.preBlur(t,this._hlSurfaces.sharedBlur1Tex),t.bindFramebuffer(this._hlSurfaces.sharedBlur1Fbo),t.setClearColor(0,0,0,0),t.clear(16384),this._hlRenderer.finalBlur(t,this._hlSurfaces.sharedBlur2Tex),t.bindFramebuffer(this._boundFBO),t.setBlendingEnabled(!0),t.setColorMask(!0,!0,!0,!0),t.setViewport(0,0,this._width,this._height),this._hlRenderer.renderHighlight(t,this._hlSurfaces.sharedBlur1Tex,r),this._boundFBO=null}}export{d as default};
2
+ import{Effect as t}from"./Effect.js";import h from"./highlight/HighlightSurfaces.js";import{HighlightTechnique as i}from"../shaderGraph/techniques/utility/HighlightTechnique.js";const e=4,s=4/e;class r extends t{constructor(){super(...arguments),this.defines=["highlight"],this._hlTechnique=new i,this._width=void 0,this._height=void 0,this._hlSurfaces=new h,this._adjustedWidth=void 0,this._adjustedHeight=void 0,this._highlightWidth=void 0,this._highlightHeight=void 0}dispose(){this._hlSurfaces?.dispose(),this._hlTechnique.shutdown(),this._boundFBO=null}bind(t){const{context:h,painter:i}=t,{width:e,height:s}=h.getViewport(),r=i.getFbos().effect0;this.setup(t,e,s),h.bindFramebuffer(r),h.setColorMask(!0,!0,!0,!0),h.setClearColor(0,0,0,0),h.clear(16384)}unbind(){}setup({context:t},h,i){this._width=h,this._height=i;const r=h%e,o=i%e;h+=r<e/2?-r:e-r,i+=o<e/2?-o:e-o,this._adjustedWidth=h,this._adjustedHeight=i,this._boundFBO=t.boundFramebuffer;const u=Math.round(h*s),d=Math.round(i*s);this._highlightWidth=u,this._highlightHeight=d,this._hlSurfaces.setup(t,u,d)}draw(t){const{context:h,passOptions:i}=t,e=i.activeGradient,r=h.boundFramebuffer,o=[0,0,this._adjustedWidth*s,this._adjustedHeight*s];if(null==r?.colorTexture)throw new Error("InternalError: Highlight source framebuffer is missing a color texture");h.bindFramebuffer(this._hlSurfaces.sharedBlur1Fbo),h.setViewport(...o),h.setColorMask(!0,!0,!0,!0),h.setClearColor(0,0,0,0),h.clear(16384),this._hlTechnique.render(t,{sourceTexture:r.colorTexture,maskFbo:this._hlSurfaces.sharedBlur1Fbo,maskTexture:this._hlSurfaces.sharedBlur1Tex,partialMapFbo:this._hlSurfaces.sharedBlur2Fbo,partialMapTexture:this._hlSurfaces.sharedBlur2Tex,highlightWidth:this._highlightWidth,highlightHeight:this._highlightHeight,highlightViewport:o,outputTarget:this._boundFBO,outputViewport:[0,0,this._width,this._height],gradient:e}),this._boundFBO=null}}export{r as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import has from"../../../../../core/has.js";import{hittestSmallSymbolThreshold as t,hittestToleranceMobile as e,hittestToleranceDesktop as i,hittestToleranceSmallSymbol as s}from"../definitions.js";import{Effect as o}from"./Effect.js";import{PixelType as n}from"../../../../webgl/enums.js";class r extends o{constructor(){super(...arguments),this.name=this.constructor.name,this.defines=["hittest"]}dispose(){null!=this._fbo&&this._fbo.dispose()}createOptions({pixelRatio:o},n){if(!n.length)return null;const r=n.shift();this._outstanding=r;const l=has("esri-mobile"),a=(l?e:i)*o,h=(l?e:s)*o,c=t,{query:d}=r,u=d.hittestType;let f=[-1,-1,-1,-1],m=[],p=[-1,-1];if("rect"===u){const t=d.input;m=[[t.x,t.y],[t.x,t.y+t.height],[t.x+t.width,t.y+t.height],[t.x+t.width,t.y]];let e=1/0,i=1/0,s=-1/0,o=-1/0;for(const[n,r]of m)e=Math.min(e,n),i=Math.min(i,r),s=Math.max(s,n),o=Math.max(o,r);f=[e,i,s,o]}else if("point"===u){const t=d.input;p=[t.x,t.y]}return{type:"hittest",distance:a,smallSymbolDistance:h,smallSymbolSizeThreshold:c,position:p,tlbr:f,hittestType:u}}bind(t){const{context:e,attributeView:i}=t;if(!i.size)return;const s=i.getBlock(2);if(null==s)return;const o=s.getFBO(e);e.setViewport(0,0,i.size,i.size),e.bindFramebuffer(o),e.setColorMask(!0,!0,!0,!0),e.setClearColor(0,0,0,0),e.clear(16640)}unbind(){}draw(t){if(null==this._outstanding)return;const e=this._outstanding;this._outstanding=null,this._resolve(t,e.resolvers)}async _resolve(t,e){const{context:i,attributeView:s}=t,o=s.getBlock(2);if(null==o)return void e.forEach(t=>t.resolve({trueHitIds:[],candidateHitIds:[]}));const r=o.getFBO(i),l=new Uint8Array(r.width*r.height);try{await r.readPixelsAsync(0,0,r.width,r.height,6403,n.UNSIGNED_BYTE,l)}catch(c){return void e.forEach(t=>t.resolve({trueHitIds:[],candidateHitIds:[]}))}const a=[],h=[];for(let n=0;n<l.length;n++){const t=l[n];t>=2?a.push(n):t>=1&&h.push(n)}e.forEach(t=>t.resolve({trueHitIds:a,candidateHitIds:h}))}}export{r as HittestEffect};
2
+ import has from"../../../../../core/has.js";import{hittestSmallSymbolThreshold as t,hittestToleranceMobile as e,hittestToleranceDesktop as i,hittestToleranceSmallSymbol as s}from"../definitions.js";import{Effect as n}from"./Effect.js";import{PixelType as o}from"../../../../webgl/enums.js";class r extends n{constructor(){super(...arguments),this.name=this.constructor.name,this.defines=["hittest"]}dispose(){}createOptions({pixelRatio:n},o){if(!o.length)return null;const r=o.shift();this._outstanding=r;const a=has("esri-mobile"),l=(a?e:i)*n,c=(a?e:s)*n,h=t,{query:d}=r,u=d.hittestType;let f=[-1,-1,-1,-1],m=[],p=[-1,-1];if("rect"===u){const t=d.input;m=[[t.x,t.y],[t.x,t.y+t.height],[t.x+t.width,t.y+t.height],[t.x+t.width,t.y]];let e=1/0,i=1/0,s=-1/0,n=-1/0;for(const[o,r]of m)e=Math.min(e,o),i=Math.min(i,r),s=Math.max(s,o),n=Math.max(n,r);f=[e,i,s,n]}else if("point"===u){const t=d.input;p=[t.x,t.y]}return{type:"hittest",distance:l,smallSymbolDistance:c,smallSymbolSizeThreshold:h,position:p,tlbr:f,hittestType:u}}bind(t){const{context:e,attributeView:i}=t;if(!i.size)return;const s=i.getBlock(2);if(null==s)return;const n=s.getFBO(e);e.setViewport(0,0,i.size,i.size),e.bindFramebuffer(n),e.setColorMask(!0,!0,!0,!0),e.setClearColor(0,0,0,0),e.clear(16640)}unbind(t){t.context.setBlendEquation(32774)}draw(t){if(null==this._outstanding)return;const e=this._outstanding;this._outstanding=null,this._resolve(t,e.resolvers)}async _resolve(t,e){const{context:i,attributeView:s}=t,n=s.getBlock(2);if(null==n)return void e.forEach(t=>t.resolve({trueHitIds:[],candidateHitIds:[]}));const r=n.getFBO(i),a=new Uint8Array(r.width*r.height);try{await r.readPixelsAsync(0,0,r.width,r.height,6403,o.UNSIGNED_BYTE,a)}catch(h){return void e.forEach(t=>t.resolve({trueHitIds:[],candidateHitIds:[]}))}const l=[],c=[];for(let o=0;o<a.length;o++){const t=a[o];t>=2?l.push(o):t>=1&&c.push(o)}e.forEach(t=>t.resolve({trueHitIds:l,candidateHitIds:c}))}}export{r as HittestEffect};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import o from"../../../../../../core/Logger.js";import{textureBindingHighlight1 as i,maxHighlightReasons as t}from"../../definitions.js";import{shadeTextureSize as e,sigma as l}from"./parameters.js";import r from"../../../../../support/HighlightOptions.js";import h from"../../../../../webgl/Texture.js";import{TextureDescriptor as n}from"../../../../../webgl/TextureDescriptor.js";const s=()=>o.getLogger("esri.views.2d.engine.webgl.painter.highlight.HighlightGradient");function a(o,i){i.fillColor[0]=o.color.r/255,i.fillColor[1]=o.color.g/255,i.fillColor[2]=o.color.b/255,i.fillColor[3]=o.color.a,o.haloColor?(i.outlineColor[0]=o.haloColor.r/255,i.outlineColor[1]=o.haloColor.g/255,i.outlineColor[2]=o.haloColor.b/255,i.outlineColor[3]=o.haloColor.a):(i.outlineColor[0]=i.fillColor[0],i.outlineColor[1]=i.fillColor[1],i.outlineColor[2]=i.fillColor[2],i.outlineColor[3]=i.fillColor[3]),i.fillColor[3]*=o.fillOpacity,i.outlineColor[3]*=o.haloOpacity,i.fillColor[0]*=i.fillColor[3],i.fillColor[1]*=i.fillColor[3],i.fillColor[2]*=i.fillColor[3],i.outlineColor[0]*=i.outlineColor[3],i.outlineColor[1]*=i.outlineColor[3],i.outlineColor[2]*=i.outlineColor[3],i.outlineWidth=(1-o.haloBlur)*o.haloWidth,i.outerHaloWidth=o.haloBlur*o.haloWidth/2,i.innerHaloWidth=o.haloBlur*o.haloWidth/2,i.outlinePosition=0}const u=[0,0,0,0];class d{constructor(){this.type="single",this._highlightOptions=new r,this._convertedHighlightOptions={fillColor:[0,0,0,0],outlineColor:[0,0,0,0],outlinePosition:0,outlineWidth:0,innerHaloWidth:0,outerHaloWidth:0},this._optionsShadeTexKey="",this._texelData=new Uint8Array(4*e),this._minMaxDistance=[0,0]}setHighlightOptions(o){this._highlightOptions=o}applyHighlightOptions(o,t){this._updateGradientTexture(o),o.bindTexture(this._shadeTex,i),t.setUniform2fv("u_minMaxDistance",this._minMaxDistance)}destroy(){this._shadeTex?.dispose(),this._shadeTex=null}getReasonsWithGradients(){return[{activeReasons:(1<<t)-1,activeGradient:this}]}_updateGradientTexture(o){const i=g(this._highlightOptions);if(i===this._optionsShadeTexKey)return;this._optionsShadeTexKey=i,a(this._highlightOptions,this._convertedHighlightOptions);const t=this._convertedHighlightOptions,r=t.outlinePosition-t.outlineWidth/2-t.outerHaloWidth,d=t.outlinePosition-t.outlineWidth/2,f=t.outlinePosition+t.outlineWidth/2,p=t.outlinePosition+t.outlineWidth/2+t.innerHaloWidth,C=Math.sqrt(Math.PI/2)*l,c=Math.abs(r)>C?Math.round(10*(Math.abs(r)-C))/10:0,m=Math.abs(p)>C?Math.round(10*(Math.abs(p)-C))/10:0;let x;c&&!m?s().error("The outer rim of the highlight is "+c+"px away from the edge of the feature; consider reducing some width values or shifting the outline position towards positive values (inwards)."):!c&&m?s().error("The inner rim of the highlight is "+m+"px away from the edge of the feature; consider reducing some width values or shifting the outline position towards negative values (outwards)."):c&&m&&s().error("The highlight is "+Math.max(c,m)+"px away from the edge of the feature; consider reducing some width values.");const _=[void 0,void 0,void 0,void 0];function w(o,i,t){_[0]=(1-t)*o[0]+t*i[0],_[1]=(1-t)*o[1]+t*i[1],_[2]=(1-t)*o[2]+t*i[2],_[3]=(1-t)*o[3]+t*i[3]}const{_texelData:v}=this;for(let l=0;l<e;++l)x=r+l/(e-1)*(p-r),x<r?(_[0]=0,_[1]=0,_[2]=0,_[3]=0):x<d?w(u,t.outlineColor,(x-r)/(d-r)):x<f?[_[0],_[1],_[2],_[3]]=t.outlineColor:x<p?w(t.outlineColor,t.fillColor,(x-f)/(p-f)):[_[0],_[1],_[2],_[3]]=t.fillColor,v[4*l]=255*_[0],v[4*l+1]=255*_[1],v[4*l+2]=255*_[2],v[4*l+3]=255*_[3];if(this._minMaxDistance[0]=r,this._minMaxDistance[1]=p,!this._shadeTex){const i=new n(e,1);i.wrapMode=33071,this._shadeTex=new h(o,i)}this._shadeTex.updateData(0,0,0,e,1,this._texelData)}}function g(o){return`${o.color};${o.haloColor};${o.haloOpacity};${o.fillOpacity};${o.haloWidth};${o.haloBlur}`}export{d as default};
2
+ import o from"../../../../../../core/Logger.js";import{maxHighlightReasons as i}from"../../definitions.js";import{shadeTextureSize as t,sigma as e}from"./parameters.js";import l from"../../../../../support/HighlightOptions.js";import r from"../../../../../webgl/Texture.js";import{TextureDescriptor as h}from"../../../../../webgl/TextureDescriptor.js";const n=()=>o.getLogger("esri.views.2d.engine.webgl.painter.highlight.HighlightGradient");function s(o,i){i.fillColor[0]=o.color.r/255,i.fillColor[1]=o.color.g/255,i.fillColor[2]=o.color.b/255,i.fillColor[3]=o.color.a,o.haloColor?(i.outlineColor[0]=o.haloColor.r/255,i.outlineColor[1]=o.haloColor.g/255,i.outlineColor[2]=o.haloColor.b/255,i.outlineColor[3]=o.haloColor.a):(i.outlineColor[0]=i.fillColor[0],i.outlineColor[1]=i.fillColor[1],i.outlineColor[2]=i.fillColor[2],i.outlineColor[3]=i.fillColor[3]),i.fillColor[3]*=o.fillOpacity,i.outlineColor[3]*=o.haloOpacity,i.fillColor[0]*=i.fillColor[3],i.fillColor[1]*=i.fillColor[3],i.fillColor[2]*=i.fillColor[3],i.outlineColor[0]*=i.outlineColor[3],i.outlineColor[1]*=i.outlineColor[3],i.outlineColor[2]*=i.outlineColor[3],i.outlineWidth=(1-o.haloBlur)*o.haloWidth,i.outerHaloWidth=o.haloBlur*o.haloWidth/2,i.innerHaloWidth=o.haloBlur*o.haloWidth/2,i.outlinePosition=0}const a=[0,0,0,0];class u{constructor(){this.type="single",this._highlightOptions=new l,this._convertedHighlightOptions={fillColor:[0,0,0,0],outlineColor:[0,0,0,0],outlinePosition:0,outlineWidth:0,innerHaloWidth:0,outerHaloWidth:0},this._optionsShadeTexKey="",this._texelData=new Uint8Array(4*t),this._minMaxDistance=[0,0]}setHighlightOptions(o){this._highlightOptions=o}getProgramState(o){return this._updateGradientTexture(o),{minMaxDistance:this._minMaxDistance,shadeTexture:this._shadeTex}}destroy(){this._shadeTex?.dispose(),this._shadeTex=null}getReasonsWithGradients(){return[{activeReasons:(1<<i)-1,activeGradient:this}]}_updateGradientTexture(o){const i=d(this._highlightOptions);if(i===this._optionsShadeTexKey)return;this._optionsShadeTexKey=i,s(this._highlightOptions,this._convertedHighlightOptions);const l=this._convertedHighlightOptions,u=l.outlinePosition-l.outlineWidth/2-l.outerHaloWidth,g=l.outlinePosition-l.outlineWidth/2,f=l.outlinePosition+l.outlineWidth/2,C=l.outlinePosition+l.outlineWidth/2+l.innerHaloWidth,c=Math.sqrt(Math.PI/2)*e,p=Math.abs(u)>c?Math.round(10*(Math.abs(u)-c))/10:0,m=Math.abs(C)>c?Math.round(10*(Math.abs(C)-c))/10:0;let x;p&&!m?n().error("The outer rim of the highlight is "+p+"px away from the edge of the feature; consider reducing some width values or shifting the outline position towards positive values (inwards)."):!p&&m?n().error("The inner rim of the highlight is "+m+"px away from the edge of the feature; consider reducing some width values or shifting the outline position towards negative values (outwards)."):p&&m&&n().error("The highlight is "+Math.max(p,m)+"px away from the edge of the feature; consider reducing some width values.");const _=[void 0,void 0,void 0,void 0];function w(o,i,t){_[0]=(1-t)*o[0]+t*i[0],_[1]=(1-t)*o[1]+t*i[1],_[2]=(1-t)*o[2]+t*i[2],_[3]=(1-t)*o[3]+t*i[3]}const{_texelData:v}=this;for(let e=0;e<t;++e)x=u+e/(t-1)*(C-u),x<u?(_[0]=0,_[1]=0,_[2]=0,_[3]=0):x<g?w(a,l.outlineColor,(x-u)/(g-u)):x<f?[_[0],_[1],_[2],_[3]]=l.outlineColor:x<C?w(l.outlineColor,l.fillColor,(x-f)/(C-f)):[_[0],_[1],_[2],_[3]]=l.fillColor,v[4*e]=255*_[0],v[4*e+1]=255*_[1],v[4*e+2]=255*_[2],v[4*e+3]=255*_[3];if(this._minMaxDistance[0]=u,this._minMaxDistance[1]=C,!this._shadeTex){const i=new h(t,1);i.wrapMode=33071,this._shadeTex=new r(o,i)}this._shadeTex.updateData(0,0,0,t,1,this._texelData)}}function d(o){return`${o.color};${o.haloColor};${o.haloOpacity};${o.fillOpacity};${o.haloWidth};${o.haloBlur}`}export{u as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{tileSize as t}from"../../definitions.js";function e(t,e,n){return t[0]=e[0]-n[0],t[1]=e[1]-n[1],t}function n(t,e){return Math.sqrt(t*t+e*e)}function s(t){const e=n(t[0],t[1]);t[0]/=e,t[1]/=e}function i(t,e){return n(t[0]-e[0],t[1]-e[1])}function r(t,e){return t[e+1]}function h(t){return t.length-1}function a(t){let e=0;for(let n=0;n<h(t);n++)e+=d(t,n);return e}function d(t,e,n=1){let[s,i]=r(t,e);return[s,i]=[Math.round(s),Math.round(i)],Math.sqrt(s*s+i*i)*n}class u{constructor(t,e,n,s,i){this._segments=t,this._index=e,this._distance=n,this._xStart=s,this._yStart=i,this._done=!1}static create(t){return new u(t,0,0,t[0][0],t[0][1])}clone(){return new u(this._segments,this._index,this._distance,this.xStart,this.yStart)}equals(t){return this._index===t._index||t._index===this._index-1&&(0===this._distance||1===t._distance)||t._index===this._index+1&&(1===this._distance||0===t._distance)}leq(t){return this._index<t._index||this._index===t._index&&this._distance<=t._distance}geq(t){return this._index>t._index||this._index===t._index&&this._distance>=t._distance}get _segment(){return this._segments[this._index+1]}get angle(){const t=this.dy,e=(0*t+-1*-this.dx)/(1*this.length);let n=Math.acos(e);return t>0&&(n=2*Math.PI-n),n}get xStart(){return this._xStart}get yStart(){return this._yStart}get x(){return this.xStart+this.distance*this.dx}get y(){return this.yStart+this.distance*this.dy}get dx(){return this._segment[0]}get dy(){return this._segment[1]}get xMidpoint(){return this.xStart+.5*this.dx}get yMidpoint(){return this.yStart+.5*this.dy}get xEnd(){return this.xStart+this.dx}get yEnd(){return this.yStart+this.dy}get length(){const{dx:t,dy:e}=this;return Math.sqrt(t*t+e*e)}get remainingLength(){return this.length*(1-this._distance)}get backwardLength(){return this.length*this._distance}get distance(){return this._distance}get done(){return this._done}hasPrev(){return this._index-1>=0}hasNext(){return this._index+1<h(this._segments)}next(){return this.hasNext()?(this._xStart+=this.dx,this._yStart+=this.dy,this._distance=0,this._index+=1,this):null}prev(){return this.hasPrev()?(this._index-=1,this._xStart-=this.dx,this._yStart-=this.dy,this._distance=1,this):(this._done=!0,null)}_seekBackwards(t,e){const n=this.backwardLength;if(t<=n)return this._distance=(n-t)/this.length,this;let s=this.backwardLength;for(;this.prev();){if(s+this.length>t)return this._seekBackwards(t-s);s+=this.length}return this._distance=0,e?this:null}seek(t,e=!1){if(t<0)return this._seekBackwards(Math.abs(t),e);if(t<=this.remainingLength)return this._distance=(this.backwardLength+t)/this.length,this;let n=this.remainingLength;for(;this.next();){if(n+this.length>t)return this.seek(t-n,e);n+=this.length}return this._distance=1,e?this:null}}function c(e,n,s,i=!0){const r=a(e),h=u.create(e),d=r/2;if(!i)return h.seek(d),void(h.x<t&&h.y<t&&h.x>=0&&h.y>=0&&s(h.clone(),0,d+0*n,r));const c=Math.max((r-n)/2,0),o=Math.floor(c/n),_=d-o*n;h.seek(_);for(let a=-o;a<=o;a++)h.x<t&&h.y<t&&h.x>=0&&h.y>=0&&s(h.clone(),a,d+a*n,r),h.seek(n)}function o(t,e,n){_(n,e,a(t),u.create(t),0)}function _(t,e,n,s,i){if(n<e)return;const r=s.clone().seek(n/2);if(null==r)return;t(r.clone(),n,i),n=(n-e)/2;const h=r.seek(e/2);_(t,e,n,s,i+1),_(t,e,n,h,i+1)}function l(t,e){const n=e;for(let s=0;s<t.length;s++){let e=t[s];x(e,n);const i=[];i.push(e[0]);for(let t=1;t<e.length;t++){const[n,s]=e[t-1],[r,h]=e[t],a=r-n,d=h-s;i.push([a,d])}t[s]=i,e=i}return t}function x(t,n){const r=1e-6;if(n<=0)return;const h=t.length;if(h<3)return;const a=[];let d=0;a.push(0);for(let e=1;e<h;e++)d+=i(t[e],t[e-1]),a.push(d);n=Math.min(n,.2*d);const u=[];u.push(t[0][0]),u.push(t[0][1]);const c=t[h-1][0],o=t[h-1][1],_=e([0,0],t[0],t[1]);s(_),t[0][0]+=n*_[0],t[0][1]+=n*_[1],e(_,t[h-1],t[h-2]),s(_),t[h-1][0]+=n*_[0],t[h-1][1]+=n*_[1];for(let e=1;e<h;e++)a[e]+=n;a[h-1]+=n;const l=.5*n;for(let e=1;e<h-1;e++){let s=0,i=0,d=0;for(let h=e-1;h>=0&&!(a[h+1]<a[e]-l);h--){const u=l+a[h+1]-a[e],c=a[h+1]-a[h],o=a[e]-a[h]<l?1:u/c;if(Math.abs(o)<r)break;const _=o*o,x=o*u-.5*_*c,g=o*c/n,f=t[h+1],y=t[h][0]-f[0],k=t[h][1]-f[1];s+=g/x*(f[0]*o*u+.5*_*(u*y-c*f[0])-_*o*c*y/3),i+=g/x*(f[1]*o*u+.5*_*(u*k-c*f[1])-_*o*c*k/3),d+=g}for(let u=e+1;u<h&&!(a[u-1]>a[e]+l);u++){const h=l-a[u-1]+a[e],c=a[u]-a[u-1],o=a[u]-a[e]<l?1:h/c;if(Math.abs(o)<r)break;const _=o*o,x=o*h-.5*_*c,g=o*c/n,f=t[u-1],y=t[u][0]-f[0],k=t[u][1]-f[1];s+=g/x*(f[0]*o*h+.5*_*(h*y-c*f[0])-_*o*c*y/3),i+=g/x*(f[1]*o*h+.5*_*(h*k-c*f[1])-_*o*c*k/3),d+=g}u.push(s/d),u.push(i/d)}u.push(c),u.push(o);for(let e=0,s=0;e<h;e++)t[e][0]=u[s++],t[e][1]=u[s++]}export{u as SegmentCursor,c as pathDivide,a as pathLength,o as pathSubdivide,r as segmentAt,h as segmentCount,d as segmentLength,l as smoothPaths};
2
+ function t(t,e,n){return t[0]=e[0]-n[0],t[1]=e[1]-n[1],t}function e(t,e){return Math.sqrt(t*t+e*e)}function n(t){const n=e(t[0],t[1]);t[0]/=n,t[1]/=n}function s(t,n){return e(t[0]-n[0],t[1]-n[1])}function i(t,e){return t[e+1]}function r(t){return t.length-1}function h(t){let e=0;for(let n=0;n<r(t);n++)e+=a(t,n);return e}function a(t,e,n=1){let[s,r]=i(t,e);return[s,r]=[Math.round(s),Math.round(r)],Math.sqrt(s*s+r*r)*n}class d{constructor(t,e,n,s,i){this._segments=t,this._index=e,this._distance=n,this._xStart=s,this._yStart=i,this._done=!1}static create(t){return new d(t,0,0,t[0][0],t[0][1])}clone(){return new d(this._segments,this._index,this._distance,this.xStart,this.yStart)}equals(t){return this._index===t._index||t._index===this._index-1&&(0===this._distance||1===t._distance)||t._index===this._index+1&&(1===this._distance||0===t._distance)}leq(t){return this._index<t._index||this._index===t._index&&this._distance<=t._distance}geq(t){return this._index>t._index||this._index===t._index&&this._distance>=t._distance}get _segment(){return this._segments[this._index+1]}get angle(){const t=this.dy,e=(0*t+-1*-this.dx)/(1*this.length);let n=Math.acos(e);return t>0&&(n=2*Math.PI-n),n}get xStart(){return this._xStart}get yStart(){return this._yStart}get x(){return this.xStart+this.distance*this.dx}get y(){return this.yStart+this.distance*this.dy}get dx(){return this._segment[0]}get dy(){return this._segment[1]}get xMidpoint(){return this.xStart+.5*this.dx}get yMidpoint(){return this.yStart+.5*this.dy}get xEnd(){return this.xStart+this.dx}get yEnd(){return this.yStart+this.dy}get length(){const{dx:t,dy:e}=this;return Math.sqrt(t*t+e*e)}get remainingLength(){return this.length*(1-this._distance)}get backwardLength(){return this.length*this._distance}get distance(){return this._distance}get done(){return this._done}hasPrev(){return this._index-1>=0}hasNext(){return this._index+1<r(this._segments)}next(){return this.hasNext()?(this._xStart+=this.dx,this._yStart+=this.dy,this._distance=0,this._index+=1,this):null}prev(){return this.hasPrev()?(this._index-=1,this._xStart-=this.dx,this._yStart-=this.dy,this._distance=1,this):(this._done=!0,null)}_seekBackwards(t,e){const n=this.backwardLength;if(t<=n)return this._distance=(n-t)/this.length,this;let s=this.backwardLength;for(;this.prev();){if(s+this.length>t)return this._seekBackwards(t-s);s+=this.length}return this._distance=0,e?this:null}seek(t,e=!1){if(t<0)return this._seekBackwards(Math.abs(t),e);if(t<=this.remainingLength)return this._distance=(this.backwardLength+t)/this.length,this;let n=this.remainingLength;for(;this.next();){if(n+this.length>t)return this.seek(t-n,e);n+=this.length}return this._distance=1,e?this:null}}function u(t,e,n,s=!0){const i=h(t),r=d.create(t),a=i/2;if(!s)return r.seek(a),void n(r.clone(),0,a+0*e,i);const u=Math.max((i-e)/2,0),c=Math.floor(u/e),_=a-c*e;r.seek(_);for(let h=-c;h<=c;h++)n(r.clone(),h,a+h*e,i),r.seek(e)}function c(t,e){const n=e;for(let s=0;s<t.length;s++){let e=t[s];_(e,n);const i=[];i.push(e[0]);for(let t=1;t<e.length;t++){const[n,s]=e[t-1],[r,h]=e[t],a=r-n,d=h-s;i.push([a,d])}t[s]=i,e=i}return t}function _(e,i){const r=1e-6;if(i<=0)return;const h=e.length;if(h<3)return;const a=[];let d=0;a.push(0);for(let t=1;t<h;t++)d+=s(e[t],e[t-1]),a.push(d);i=Math.min(i,.2*d);const u=[];u.push(e[0][0]),u.push(e[0][1]);const c=e[h-1][0],_=e[h-1][1],o=t([0,0],e[0],e[1]);n(o),e[0][0]+=i*o[0],e[0][1]+=i*o[1],t(o,e[h-1],e[h-2]),n(o),e[h-1][0]+=i*o[0],e[h-1][1]+=i*o[1];for(let t=1;t<h;t++)a[t]+=i;a[h-1]+=i;const g=.5*i;for(let t=1;t<h-1;t++){let n=0,s=0,d=0;for(let h=t-1;h>=0&&!(a[h+1]<a[t]-g);h--){const u=g+a[h+1]-a[t],c=a[h+1]-a[h],_=a[t]-a[h]<g?1:u/c;if(Math.abs(_)<r)break;const o=_*_,l=_*u-.5*o*c,x=_*c/i,f=e[h+1],y=e[h][0]-f[0],S=e[h][1]-f[1];n+=x/l*(f[0]*_*u+.5*o*(u*y-c*f[0])-o*_*c*y/3),s+=x/l*(f[1]*_*u+.5*o*(u*S-c*f[1])-o*_*c*S/3),d+=x}for(let u=t+1;u<h&&!(a[u-1]>a[t]+g);u++){const h=g-a[u-1]+a[t],c=a[u]-a[u-1],_=a[u]-a[t]<g?1:h/c;if(Math.abs(_)<r)break;const o=_*_,l=_*h-.5*o*c,x=_*c/i,f=e[u-1],y=e[u][0]-f[0],S=e[u][1]-f[1];n+=x/l*(f[0]*_*h+.5*o*(h*y-c*f[0])-o*_*c*y/3),s+=x/l*(f[1]*_*h+.5*o*(h*S-c*f[1])-o*_*c*S/3),d+=x}u.push(n/d),u.push(s/d)}u.push(c),u.push(_);for(let t=0,n=0;t<h;t++)e[t][0]=u[n++],e[t][1]=u[n++]}export{d as SegmentCursor,u as pathDivide,h as pathLength,i as segmentAt,r as segmentCount,a as segmentLength,c as smoothPaths};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import"../../../../../../core/has.js";import{isPowerOfTwo as e,nextPowerOfTwo as t}from"../../../../../../core/mathUtils.js";import{disposeMaybe as r}from"../../../../../../core/maybe.js";import{simplePipelineState as s}from"../utils.js";import{Technique as u}from"./Technique.js";import{TextureStatisticsDiffShader as o}from"./shaders/TextureStatisticsDiffShader.js";import{TextureStatisticsMinMaxSumShader as i}from"./shaders/TextureStatisticsMinMaxSumShader.js";import{TextureStatisticsStdDevShader as a}from"./shaders/TextureStatisticsStdDevShader.js";import{TextureStatisticsSumOfSquaredDiffShader as n}from"./shaders/TextureStatisticsSumOfSquaredDiffShader.js";import{getWebGLCapabilities as f}from"../../../../../webgl/capabilities.js";import{ColorAttachment2 as l,ColorAttachment3 as h,ColorAttachment0 as m,ColorAttachment1 as x,SizedPixelFormat as c,PixelType as T}from"../../../../../webgl/enums.js";import{DisposableFramebufferObject as d}from"../../../../../webgl/FramebufferObject.js";import p from"../../../../../webgl/Texture.js";import{TextureDescriptor as b}from"../../../../../webgl/TextureDescriptor.js";const _=1048576;class F extends u{constructor(){super(...arguments),this.type=36,this._width=0,this._height=0,this._framebuffers=null,this._minTexture=null,this._maxTexture=null,this._sumTexture=null,this._numOfNoDataTexture=null,this._resultsFramebuffer=null,this._startFramebuffer=null,this._diffFramebuffer=null,this._scaleFbo=null,this.shaders={textureStatisticsMinMaxSum:new i,textureStatisticsSum:new n,textureStatisticsDiff:new o,textureStatisticsStdDev:new a}}dispose(){this.shaders.textureStatisticsMinMaxSum=null,this._framebuffers&&(this._framebuffers.forEach(e=>r(e)),this._framebuffers=null),r(this._resultsFramebuffer),r(this._startFramebuffer),r(this._diffFramebuffer),r(this._scaleFbo),r(this._minTexture),r(this._maxTexture),r(this._sumTexture),r(this._numOfNoDataTexture)}get minValuesTexture(){return this._minTexture||null}get maxValuesTexture(){return this._maxTexture||null}get meanValuesTexture(){return this._resultsFramebuffer?.getColorTexture(l)||null}get stdDevValuesTexture(){return this._resultsFramebuffer?.getColorTexture(h)||null}get statsFbo(){return this._resultsFramebuffer}render(t,r){const{context:u,painter:o}=t;let i=r.fbo.width,a=r.fbo.height,n=r.fbo;const f=u.gl,l=u.boundFramebuffer;if(i*a>_||!e(i)||!e(a)){const t=i/a;if(i*a>_){const e=Math.max(Math.floor(Math.sqrt(_/t)),1);i=Math.max(Math.floor(t*e),1),a=e}if(e(i)||(i=S(i)),e(a)||(a=S(a)),this._scaleFbo)this._scaleFbo.resize(i,a);else{const{dataType:e,internalFormat:t}=r.fbo.getColorTexture(m).descriptor,s=t??c.RGBA8;this._scaleFbo=w(u,i,a,e,s)}u.bindFramebuffer(this._scaleFbo),u.setViewport(0,0,i,a),o.blitTexture(u,n.getColorTexture(m),9728),n=this._scaleFbo}this._updateResources(t,n),o.setPipelineState({...s,color:{write:[!0,!0,!0,!0],blendMode:"none"}});const h=this._applyReductionPass(t);f.readBuffer(f.COLOR_ATTACHMENT3),h.copyToTexture(0,0,1,1,0,0,this._numOfNoDataTexture),f.readBuffer(f.COLOR_ATTACHMENT2),h.copyToTexture(0,0,1,1,0,0,this._sumTexture),f.readBuffer(f.COLOR_ATTACHMENT1),h.copyToTexture(0,0,1,1,0,0,this._maxTexture),f.readBuffer(f.COLOR_ATTACHMENT0),h.copyToTexture(0,0,1,1,0,0,this._minTexture);const x=r.fbo.getColorTexture(m);if(!x)throw new Error("Start buffer color texture is not available, cannot compute diff.");this._computeDiff(t,x,this._sumTexture,this._numOfNoDataTexture,i,a);const T=this._applySecondReductionPass(t,i,a).getColorTexture(m);this._computeSdtDev(t,this._minTexture,this._maxTexture,this._sumTexture,this._numOfNoDataTexture,T,i,a),u.bindFramebuffer(l),u.setViewport(0,0,r.fbo.width,r.fbo.height),o.setPipelineState(s)}_applyReductionPass(e){const{context:t,painter:r}=e,s=this.shaders.textureStatisticsMinMaxSum,u=this._framebuffers;if(null===u)throw new Error("Framebuffers are not initialized, cannot apply reduction pass.");const o=this._startFramebuffer;let i=o.getColorTexture(m),a=o.getColorTexture(x),n=o.getColorTexture(l),f=o.getColorTexture(h);const c=u;let T=0;for(const d of c){t.setViewport(0,0,d.width,d.height),t.bindFramebuffer(d),t.setClearColor(0,0,0,0),t.clear(16384);const e={shader:s,uniforms:{config:{width:d.width,height:d.height,isFirstPass:0===T?1:0}},textures:{minTexture:{texture:i,unit:1},maxTexture:{texture:a,unit:2},sumTexture:{texture:n,unit:3},numOfNoDataTexture:{texture:f,unit:4}},defines:null,optionalAttributes:null,useComputeBuffer:!1};r.submitDrawMesh(t,e,r.quadMesh),i=d.getColorTexture(m),a=d.getColorTexture(x),n=d.getColorTexture(l),f=d.getColorTexture(h),T++}return u.at(-1)}_applySecondReductionPass(e,t,r){const{context:s,painter:u}=e,o=this.shaders.textureStatisticsSum,i=this._framebuffers;if(null===i||null==this._diffFramebuffer)throw new Error("Framebuffers are not initialized, cannot apply reduction pass.");let a=this._diffFramebuffer.getColorTexture(m);const n=i;for(const f of n){s.setViewport(0,0,f.width,f.height),s.bindFramebuffer(f),s.setClearColor(0,0,0,0),s.clear(16384);const e={shader:o,uniforms:{config:{width:f.width,height:f.height}},textures:{sumTexture:{texture:a,unit:2}},defines:null,optionalAttributes:null,useComputeBuffer:!1};u.submitDrawMesh(s,e,u.quadMesh),a=f.getColorTexture(m)}return i.at(-1)}_updateResources(e,t){const{context:r}=e,s=t.width,u=t.height;if(null===this._startFramebuffer){if(!f().supportsColorBufferFloat)throw new Error("WebGL does not support color buffer float, cannot compute texture statistics.");const e=t.getColorTexture(m);if(!e)throw new Error("Input FBO does not have a color attachment 0, cannot compute texture statistics.");const o=e.descriptor,{dataType:i,internalFormat:a}=o,n=w(r,s,u,i,a??c.RGBA8,4),d=n.getColorTexture(m),p=n.getColorTexture(x),b=n.getColorTexture(l),_=n.getColorTexture(h);t.copyToTexture(0,0,s,u,0,0,d),t.copyToTexture(0,0,s,u,0,0,p),t.copyToTexture(0,0,s,u,0,0,b),t.copyToTexture(0,0,s,u,0,0,_),this._startFramebuffer=n,this._diffFramebuffer=w(r,s,u,T.FLOAT,c.RGBA32F),this._resultsFramebuffer=w(r,1,1,T.FLOAT,c.RGBA32F,4),this._minTexture=C(r,1,1,T.FLOAT,c.RGBA32F),this._maxTexture=C(r,1,1,T.FLOAT,c.RGBA32F),this._sumTexture=C(r,1,1,T.FLOAT,c.RGBA32F),this._numOfNoDataTexture=C(r,1,1,T.FLOAT,c.R32F)}else{const e=this._startFramebuffer;e.resize(s,u);const r=e.getColorTexture(m),o=e.getColorTexture(x),i=e.getColorTexture(l),a=e.getColorTexture(h);t.copyToTexture(0,0,s,u,0,0,r),t.copyToTexture(0,0,s,u,0,0,o),t.copyToTexture(0,0,s,u,0,0,i),t.copyToTexture(0,0,s,u,0,0,a),this._diffFramebuffer.resize(s,u)}if(this._width===s&&this._height===u&&null!==this._framebuffers)return;const o=(this._framebuffers||[]).reverse();this._framebuffers=null,this._width=s,this._height=u,this._framebuffers=this._updateFramebuffers(r,s,u,o,4)}_updateFramebuffers(e,t,s,u,o=1){const i=[];let a=t,n=s;for(;a>1||n>1;){const t=Math.max(1,Math.floor(a/2)),r=Math.max(1,Math.floor(n/2)),s=g(e,t,r,u,o);i.push(s),a=t,n=r}return i.at(-1),u.forEach(e=>r(e)),u.length=0,i}_computeDiff(e,t,r,s,u,o){const{context:i,painter:a}=e;i.bindFramebuffer(this._diffFramebuffer),i.setViewport(0,0,u,o),i.setClearColor(0,0,0,0),i.clear(16384);const n={shader:this.shaders.textureStatisticsDiff,uniforms:{config:{numTexels:u*o}},textures:{inputTexture:{texture:t,unit:1},sumTexture:{texture:r,unit:2},numOfNoDataTexture:{texture:s,unit:3}},defines:null,optionalAttributes:null,useComputeBuffer:!1};a.submitDrawMesh(i,n,a.quadMesh)}_computeSdtDev(e,t,r,s,u,o,i,a){const{context:n,painter:f}=e;n.bindFramebuffer(this._resultsFramebuffer),n.setViewport(0,0,1,1),n.setClearColor(0,0,0,0),n.clear(16384);const l={shader:this.shaders.textureStatisticsStdDev,uniforms:{config:{numTexels:i*a}},textures:{minTexture:{texture:t,unit:1},maxTexture:{texture:r,unit:2},sumTexture:{texture:s,unit:3},numOfNoDataTexture:{texture:u,unit:4},diffSqTexture:{texture:o,unit:5}},defines:null,optionalAttributes:null,useComputeBuffer:!1};f.submitDrawMesh(n,l,f.quadMesh)}}function g(e,t,r,s,u=1){let o=s.pop();return void 0!==o?o.resize(t,r):o=w(e,t,r,T.FLOAT,c.RGBA32F,u),o}function w(e,t,r,s,u,o=1){if(o<1||o>4)throw new Error("Number of color attachments must be between 1 and 4.");const i=new d(e,C(e,t,r,s,u));for(let a=1;a<o;a++){const o=C(e,t,r,s,u);i.attachColorTexture(o,m+a)}return i}function C(e,t,r,s,u){const o=new b(t,r);return o.samplingMode=9728,o.wrapMode=33071,o.pixelFormat=6408,o.dataType=s,o.internalFormat=u,new p(e,o)}function S(e){const r=t(e),s=r/2;return Math.abs(r-e)<Math.abs(s-e)?r:s}export{F as TextureStatisticsTechnique};
2
+ import"../../../../../../core/has.js";import{isPowerOfTwo as e,nextPowerOfTwo as t}from"../../../../../../core/mathUtils.js";import{disposeMaybe as r}from"../../../../../../core/maybe.js";import{simplePipelineState as s}from"../utils.js";import{Technique as u}from"./Technique.js";import{TextureStatisticsDiffShader as o}from"./shaders/TextureStatisticsDiffShader.js";import{TextureStatisticsMinMaxSumShader as i}from"./shaders/TextureStatisticsMinMaxSumShader.js";import{TextureStatisticsStdDevShader as a}from"./shaders/TextureStatisticsStdDevShader.js";import{TextureStatisticsSumOfSquaredDiffShader as n}from"./shaders/TextureStatisticsSumOfSquaredDiffShader.js";import{getWebGLCapabilities as f}from"../../../../../webgl/capabilities.js";import{ColorAttachment2 as l,ColorAttachment3 as h,ColorAttachment0 as m,ColorAttachment1 as x,SizedPixelFormat as c,PixelType as T}from"../../../../../webgl/enums.js";import{DisposableFramebufferObject as d}from"../../../../../webgl/FramebufferObject.js";import p from"../../../../../webgl/Texture.js";import{TextureDescriptor as b}from"../../../../../webgl/TextureDescriptor.js";const _=1048576;class F extends u{constructor(){super(...arguments),this.type=36,this._width=0,this._height=0,this._framebuffers=null,this._minTexture=null,this._maxTexture=null,this._sumTexture=null,this._numOfNoDataTexture=null,this._resultsFramebuffer=null,this._startFramebuffer=null,this._diffFramebuffer=null,this._scaleFbo=null,this.shaders={textureStatisticsMinMaxSum:new i,textureStatisticsSum:new n,textureStatisticsDiff:new o,textureStatisticsStdDev:new a}}dispose(){this.shaders.textureStatisticsMinMaxSum=null,this._framebuffers&&(this._framebuffers.forEach(e=>r(e)),this._framebuffers=null),r(this._resultsFramebuffer),r(this._startFramebuffer),r(this._diffFramebuffer),r(this._scaleFbo),r(this._minTexture),r(this._maxTexture),r(this._sumTexture),r(this._numOfNoDataTexture)}get minValuesTexture(){return this._minTexture||null}get maxValuesTexture(){return this._maxTexture||null}get meanValuesTexture(){return this._resultsFramebuffer?.getColorTexture(l)||null}get stdDevValuesTexture(){return this._resultsFramebuffer?.getColorTexture(h)||null}get statsFbo(){return this._resultsFramebuffer}render(t,r){const{context:u,painter:o}=t;let i=r.fbo.width,a=r.fbo.height,n=r.fbo;const f=u.gl,l=u.boundFramebuffer;if(i*a>_||!e(i)||!e(a)){const s=i/a;if(i*a>_){const e=Math.max(Math.floor(Math.sqrt(_/s)),1);i=Math.max(Math.floor(s*e),1),a=e}if(e(i)||(i=S(i)),e(a)||(a=S(a)),this._scaleFbo)this._scaleFbo.resize(i,a);else{const{dataType:e,internalFormat:t}=r.fbo.getColorTexture(m).descriptor,s=t??c.RGBA8;this._scaleFbo=w(u,i,a,e,s)}u.bindFramebuffer(this._scaleFbo),u.setViewport(0,0,i,a),o.blitTexture(t,n.getColorTexture(m),9728),n=this._scaleFbo}this._updateResources(t,n),o.setPipelineState({...s,color:{write:[!0,!0,!0,!0],blendMode:"none"}});const h=this._applyReductionPass(t);f.readBuffer(f.COLOR_ATTACHMENT3),h.copyToTexture(0,0,1,1,0,0,this._numOfNoDataTexture),f.readBuffer(f.COLOR_ATTACHMENT2),h.copyToTexture(0,0,1,1,0,0,this._sumTexture),f.readBuffer(f.COLOR_ATTACHMENT1),h.copyToTexture(0,0,1,1,0,0,this._maxTexture),f.readBuffer(f.COLOR_ATTACHMENT0),h.copyToTexture(0,0,1,1,0,0,this._minTexture);const x=r.fbo.getColorTexture(m);if(!x)throw new Error("Start buffer color texture is not available, cannot compute diff.");this._computeDiff(t,x,this._sumTexture,this._numOfNoDataTexture,i,a);const T=this._applySecondReductionPass(t,i,a).getColorTexture(m);this._computeSdtDev(t,this._minTexture,this._maxTexture,this._sumTexture,this._numOfNoDataTexture,T,i,a),u.bindFramebuffer(l),u.setViewport(0,0,r.fbo.width,r.fbo.height),o.setPipelineState(s)}_applyReductionPass(e){const{context:t,painter:r}=e,s=this.shaders.textureStatisticsMinMaxSum,u=this._framebuffers;if(null===u)throw new Error("Framebuffers are not initialized, cannot apply reduction pass.");const o=this._startFramebuffer;let i=o.getColorTexture(m),a=o.getColorTexture(x),n=o.getColorTexture(l),f=o.getColorTexture(h);const c=u;let T=0;for(const d of c){t.setViewport(0,0,d.width,d.height),t.bindFramebuffer(d),t.setClearColor(0,0,0,0),t.clear(16384);const e={shader:s,uniforms:{config:{width:d.width,height:d.height,isFirstPass:0===T?1:0}},textures:{minTexture:{texture:i,unit:1},maxTexture:{texture:a,unit:2},sumTexture:{texture:n,unit:3},numOfNoDataTexture:{texture:f,unit:4}},defines:null,optionalAttributes:null,useComputeBuffer:!1};r.submitDrawMesh(t,e,r.quadMesh),i=d.getColorTexture(m),a=d.getColorTexture(x),n=d.getColorTexture(l),f=d.getColorTexture(h),T++}return u.at(-1)}_applySecondReductionPass(e,t,r){const{context:s,painter:u}=e,o=this.shaders.textureStatisticsSum,i=this._framebuffers;if(null===i||null==this._diffFramebuffer)throw new Error("Framebuffers are not initialized, cannot apply reduction pass.");let a=this._diffFramebuffer.getColorTexture(m);const n=i;for(const f of n){s.setViewport(0,0,f.width,f.height),s.bindFramebuffer(f),s.setClearColor(0,0,0,0),s.clear(16384);const e={shader:o,uniforms:{config:{width:f.width,height:f.height}},textures:{sumTexture:{texture:a,unit:2}},defines:null,optionalAttributes:null,useComputeBuffer:!1};u.submitDrawMesh(s,e,u.quadMesh),a=f.getColorTexture(m)}return i.at(-1)}_updateResources(e,t){const{context:r}=e,s=t.width,u=t.height;if(null===this._startFramebuffer){if(!f().supportsColorBufferFloat)throw new Error("WebGL does not support color buffer float, cannot compute texture statistics.");const e=t.getColorTexture(m);if(!e)throw new Error("Input FBO does not have a color attachment 0, cannot compute texture statistics.");const o=e.descriptor,{dataType:i,internalFormat:a}=o,n=w(r,s,u,i,a??c.RGBA8,4),d=n.getColorTexture(m),p=n.getColorTexture(x),b=n.getColorTexture(l),_=n.getColorTexture(h);t.copyToTexture(0,0,s,u,0,0,d),t.copyToTexture(0,0,s,u,0,0,p),t.copyToTexture(0,0,s,u,0,0,b),t.copyToTexture(0,0,s,u,0,0,_),this._startFramebuffer=n,this._diffFramebuffer=w(r,s,u,T.FLOAT,c.RGBA32F),this._resultsFramebuffer=w(r,1,1,T.FLOAT,c.RGBA32F,4),this._minTexture=C(r,1,1,T.FLOAT,c.RGBA32F),this._maxTexture=C(r,1,1,T.FLOAT,c.RGBA32F),this._sumTexture=C(r,1,1,T.FLOAT,c.RGBA32F),this._numOfNoDataTexture=C(r,1,1,T.FLOAT,c.R32F)}else{const e=this._startFramebuffer;e.resize(s,u);const r=e.getColorTexture(m),o=e.getColorTexture(x),i=e.getColorTexture(l),a=e.getColorTexture(h);t.copyToTexture(0,0,s,u,0,0,r),t.copyToTexture(0,0,s,u,0,0,o),t.copyToTexture(0,0,s,u,0,0,i),t.copyToTexture(0,0,s,u,0,0,a),this._diffFramebuffer.resize(s,u)}if(this._width===s&&this._height===u&&null!==this._framebuffers)return;const o=(this._framebuffers||[]).reverse();this._framebuffers=null,this._width=s,this._height=u,this._framebuffers=this._updateFramebuffers(r,s,u,o,4)}_updateFramebuffers(e,t,s,u,o=1){const i=[];let a=t,n=s;for(;a>1||n>1;){const t=Math.max(1,Math.floor(a/2)),r=Math.max(1,Math.floor(n/2)),s=g(e,t,r,u,o);i.push(s),a=t,n=r}return i.at(-1),u.forEach(e=>r(e)),u.length=0,i}_computeDiff(e,t,r,s,u,o){const{context:i,painter:a}=e;i.bindFramebuffer(this._diffFramebuffer),i.setViewport(0,0,u,o),i.setClearColor(0,0,0,0),i.clear(16384);const n={shader:this.shaders.textureStatisticsDiff,uniforms:{config:{numTexels:u*o}},textures:{inputTexture:{texture:t,unit:1},sumTexture:{texture:r,unit:2},numOfNoDataTexture:{texture:s,unit:3}},defines:null,optionalAttributes:null,useComputeBuffer:!1};a.submitDrawMesh(i,n,a.quadMesh)}_computeSdtDev(e,t,r,s,u,o,i,a){const{context:n,painter:f}=e;n.bindFramebuffer(this._resultsFramebuffer),n.setViewport(0,0,1,1),n.setClearColor(0,0,0,0),n.clear(16384);const l={shader:this.shaders.textureStatisticsStdDev,uniforms:{config:{numTexels:i*a}},textures:{minTexture:{texture:t,unit:1},maxTexture:{texture:r,unit:2},sumTexture:{texture:s,unit:3},numOfNoDataTexture:{texture:u,unit:4},diffSqTexture:{texture:o,unit:5}},defines:null,optionalAttributes:null,useComputeBuffer:!1};f.submitDrawMesh(n,l,f.quadMesh)}}function g(e,t,r,s,u=1){let o=s.pop();return void 0!==o?o.resize(t,r):o=w(e,t,r,T.FLOAT,c.RGBA32F,u),o}function w(e,t,r,s,u,o=1){if(o<1||o>4)throw new Error("Number of color attachments must be between 1 and 4.");const i=new d(e,C(e,t,r,s,u));for(let a=1;a<o;a++){const o=C(e,t,r,s,u);i.attachColorTexture(o,m+a)}return i}function C(e,t,r,s,u){const o=new b(t,r);return o.samplingMode=9728,o.wrapMode=33071,o.pixelFormat=6408,o.dataType=s,o.internalFormat=u,new p(e,o)}function S(e){const r=t(e),s=r/2;return Math.abs(r-e)<Math.abs(s-e)?r:s}export{F as TextureStatisticsTechnique};
@@ -0,0 +1,2 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
+ import{__decorate as t,__param as o}from"tslib";import{location as e,uniform as r,texture as p,input as s,VertexInput as i,UniformGroup as l,GraphShaderModule as n,FragmentOutput as a,FragmentInput as d}from"../../GraphShaderModule.js";import{Vec2 as u,Float as c,Sampler2D as x,Vec4 as y,texture2D as m}from"../../graph/glsl.js";class v extends i{}t([e(0,u)],v.prototype,"pos",void 0),t([e(1,u)],v.prototype,"tex",void 0);class f extends d{}class g extends l{}t([r(c)],g.prototype,"opacity",void 0);class h extends n{constructor(){super(...arguments),this.type="BitBlitShader"}vertex(t){return{glPosition:new y(t.pos,0,1),uv:t.tex}}fragment(t){const o=new a;return o.fragColor=m(this.texture,t.uv).multiply(this.config.opacity),o}}t([r(g)],h.prototype,"config",void 0),t([p(x)],h.prototype,"texture",void 0),t([o(0,s(v))],h.prototype,"vertex",null),t([o(0,s(f))],h.prototype,"fragment",null);export{h as BitBlitShader};
@@ -0,0 +1,2 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
+ import{__decorate as o,__param as t}from"tslib";import{location as e,uniform as s,input as r,VertexInput as i,UniformGroup as n,GraphShaderModule as p,FragmentOutput as l,FragmentInput as a}from"../../GraphShaderModule.js";import{Vec3 as d,Mat3 as c,FixedArray as g,Vec4 as y,Float as f,Int as v,mod as m,floor as u}from"../../graph/glsl.js";class x extends i{}o([e(0,d)],x.prototype,"positionAndFlags",void 0);class h extends a{}class w extends n{}o([s(c)],w.prototype,"dvsMat3",void 0),o([s(g.ofType(y,4))],w.prototype,"colors",void 0),o([s(g.ofType(f,4))],w.prototype,"opacities",void 0);class A extends p{constructor(){super(...arguments),this.type="DebugOverlayShader"}vertex(o){const t=o.positionAndFlags.z,e=new v(m(t,new f(4))),s=new v(m(u(t.divide(4)),new f(4))),r=this.config.colors.get(e).multiply(this.config.opacities.get(s)),i=this.config.dvsMat3.multiply(new d(o.positionAndFlags.xy,1));return{glPosition:new y(i.xy,0,1),color:r}}fragment(o){const t=new l;return t.fragColor=o.color,t}}o([s(w)],A.prototype,"config",void 0),o([t(0,r(x))],A.prototype,"vertex",null),o([t(0,r(h))],A.prototype,"fragment",null);export{A as DebugOverlayShader};
@@ -0,0 +1,2 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
+ import{__decorate as t,__param as i}from"tslib";import{uniform as e,texture as o,input as r,UniformGroup as s,FragmentOutput as n}from"../../GraphShaderModule.js";import{Vec4 as a,Mat4 as p,Float as d,Sampler2D as l,Vec2 as c,texture2D as u,exp as g,sqrt as m,clamp as h}from"../../graph/glsl.js";import{PostProcessingFragmentInput as y,PostProcessingShader as f}from"./PostProcessingShader.js";class v extends s{}t([e(a)],v.prototype,"direction",void 0),t([e(p)],v.prototype,"channelSelector",void 0),t([e(d)],v.prototype,"sigma",void 0);class x extends f{constructor(){super(...arguments),this.type="HighlightBlurShader"}fragment(t){let i=new d(0),e=new d(0);for(let r=-5;r<=5;r++){const o=new d(r),s=this._gauss(o.multiply(this.config.direction.xy)),n=this.config.channelSelector.multiply(u(this.texture,t.uv.add(o.multiply(this.config.direction.zw))));i=i.add(n.a.multiply(s)),e=e.add(s)}const o=new n;return o.fragColor=new a(0,0,0,i.divide(e)),o}_gauss(t){return g(t.multiply(t).x.add(t.multiply(t).y).multiply(-1).divide(this.config.sigma.multiply(this.config.sigma).multiply(2)))}}t([e(v)],x.prototype,"config",void 0),t([o(l)],x.prototype,"texture",void 0),t([i(0,r(y))],x.prototype,"fragment",null);class w extends s{}t([e(d)],w.prototype,"sigma",void 0),t([e(c)],w.prototype,"minMaxDistance",void 0);class S extends f{constructor(){super(...arguments),this.type="HighlightShadeShader"}fragment(t){const i=u(this.texture,t.uv).a,e=new d(1).divide(m(new d(6.283)).multiply(this.config.sigma)),o=i.subtract(.5).divide(e),r=h(o.subtract(this.config.minMaxDistance.x).divide(this.config.minMaxDistance.y.subtract(this.config.minMaxDistance.x)),new d(0),new d(1)),s=new n;return s.fragColor=u(this.shade,new c(r,.5)),s}}t([o(l)],S.prototype,"texture",void 0),t([o(l)],S.prototype,"shade",void 0),t([e(w)],S.prototype,"config",void 0),t([i(0,r(y))],S.prototype,"fragment",null);export{x as HighlightBlurShader,S as HighlightShadeShader};
@@ -0,0 +1,2 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
+ import{__decorate as t,__param as o}from"tslib";import{location as e,uniform as r,input as n,FragmentInput as s,VertexInput as p,UniformGroup as i,GraphShaderModule as l,FragmentOutput as d}from"../../GraphShaderModule.js";import{Vec2 as a,Mat3 as c,Vec3 as m,Vec4 as x}from"../../graph/glsl.js";class f extends p{}t([e(0,a)],f.prototype,"position",void 0);class g extends i{}t([r(c)],g.prototype,"worldExtent",void 0);class u extends l{constructor(){super(...arguments),this.type="WorldExtentStencilShader"}vertex(t){const o=this.config.worldExtent.multiply(new m(t.position,1));return{glPosition:new x(o,1)}}fragment(t){const o=new d;return o.fragColor=new x(1,1,1,1),o}}t([r(g)],u.prototype,"config",void 0),t([o(0,n(f))],u.prototype,"vertex",null),t([o(0,n(s))],u.prototype,"fragment",null);export{u as WorldExtentStencilShader};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{clamp as t}from"../../../../../../../core/mathUtils.js";import{pt2px as e}from"../../../../../../../core/screenUtils.js";import{GeometryCursor as o}from"../../../../../../../geometry/GeometryCursor.js";import{asCIMGeometryCursor as i}from"../../../../../../../symbols/cim/utils.js";import{CIMMarkerPlacementHelper as r}from"../../../../../../../symbols/cim/placements/CIMMarkerPlacementHelper.js";import{getXDirection as s,getYDirection as n}from"../../../alignmentUtils.js";import{maxTextLineWidth as a,minTextLineWidth as l,magicLabelLineHeight as d,packDegreesU8 as c}from"../../../definitions.js";import{shapeGlyphs as h,shapeGlyphsForMultipoint as f}from"../../../mesh/templates/shapingUtils.js";import{getMinMaxZoom as u,processColorInput as m,packBitset as p}from"../fill/meshWriterUtils.js";import{MeshWriter as g}from"../mesh/MeshWriter.js";import{bitsetTextIsBackground as x,bitsetTextIsMapAligned as y}from"../shaders/constants.js";import{TextMeshTransformProps as S}from"./TextParams.js";import{DataType as z}from"../../../../../../webgl/enums.js";const b=28,_=[4,4],P=[16,4],M={topLeft:P,topRight:P,bottomLeft:P,bottomRight:P},L=[4,2],B=[4,6],R={topLeft:L,topRight:L,bottomLeft:B,bottomRight:B},T={topLeft:L,topRight:B,bottomLeft:L,bottomRight:B},k={topLeft:B,topRight:B,bottomLeft:_,bottomRight:_},A={topLeft:_,topRight:_,bottomLeft:B,bottomRight:B},v={topLeft:B,topRight:_,bottomLeft:B,bottomRight:_},w={topLeft:_,topRight:B,bottomLeft:_,bottomRight:B};function I(t){return{backgroundColor:t.boxBackgroundColor??t.backgroundColor??null,borderLineColor:t.boxBorderLineColor??t.borderLineColor??null,borderLineSize:t.boxBorderLineSize>0?t.boxBorderLineSize:t.borderLineWidth??0}}const C={createComputedParams:t=>t,optionalAttributes:{zoomRange:{type:z.HALF_FLOAT,count:2,packTessellation:({minZoom:t,maxZoom:e})=>[t||0,e||b]},clipAngle:{type:z.UNSIGNED_BYTE,count:1,packTessellation:({clipAngle:t})=>E(t||0)},referenceSymbol:{type:z.BYTE,count:4,packTessellation:(t,o)=>{const i=t.isLineLabel||!t.referenceBounds,r=s(i?"center":o.horizontalAlignment),a=n(i?"middle":o.verticalAlignment),{offsetX:l,offsetY:d,size:c}=i?{offsetX:0,offsetY:0,size:0}:t.referenceBounds;return[e(l),-e(d),Math.round(e(c)),r+1<<2|a+1]}},visibility:{type:z.FLOAT,count:1,otherSource:!0}},attributes:{pos:{type:z.SHORT,count:2,pack:"position",packPrecisionFactor:10},id:{type:z.UNSIGNED_BYTE,count:3,pack:"id"},bitset:{type:z.UNSIGNED_BYTE,count:1,packTessellation:({isBackground:t,mapAligned:e})=>p([[x,t],[y,!!e]])},offset:{type:z.SHORT,count:2,packPrecisionFactor:8,packAlternating:{count:4,packTessellation:({offsets:t})=>{const{bottomLeft:e,bottomRight:o,topLeft:i,topRight:r}=t;return[i,r,e,o]}}},textureUV:{type:z.UNSIGNED_SHORT,count:2,packAlternating:{count:4,packTessellation:({texcoords:t})=>{const{bottomLeft:e,bottomRight:o,topLeft:i,topRight:r}=t;return[i,r,e,o]}}},color:{type:z.UNSIGNED_BYTE,count:4,normalized:!0,packTessellation:({color:t})=>t},fontAndReferenceSize:{type:z.UNSIGNED_SHORT,count:4,packPrecisionFactor:4,packTessellation:({fontSize:t,sdfSize:o,sdfRadius:i},{referenceSize:r})=>[Math.round(e(t)),Math.round(e(r||t)),o,i]},outlineColor:{type:z.UNSIGNED_BYTE,count:4,normalized:!0,pack:({outlineColor:t})=>m(t)},haloColor:{type:z.UNSIGNED_BYTE,count:4,normalized:!0,pack:({haloColor:t})=>m(t)},outlineAndHaloSize:{type:z.UNSIGNED_SHORT,count:2,packPrecisionFactor:4,packTessellation:({outlineSize:t,haloSize:o})=>[Math.round(e(t)),Math.round(e(o))]}}};class G extends g{constructor(){super(...arguments),this.vertexSpec=C,this._textMeshParamsPropsInitialized=!1}ensurePacked(t,e,o){super.ensurePacked(t,e,o),this._textMeshParamsPropsInitialized&&!this._evaluator.hasDynamicProperties||(this._textMeshTransformProps=new S(this.evaluatedMeshParams),this._textMeshParamsPropsInitialized=!0)}_write(t,{target:e,effectGeometry:o}){const r=this._getShaping();if(!r)return;const s=1===this.evaluatedMeshParams.alignment,n=e.getDisplayId(),{placement:a}=this.evaluatedMeshParams;if(null!=a){if("PrivatePlacementMultipoint"!==a.type)this._writePlacedTextMarkers(t,e,r,i(o));else{const r=this._getMultipointShaping();r&&this._writeMultipointText(t,e,r,i(o))}return}if(o?.nextPath())return o.nextPoint(),this._writeGlyphs(t,n,o.x,o.y,r,0,void 0,{mapAligned:s});if("esriGeometryPolygon"===e.geometryType){const o=e.readCentroidForDisplay();if(!o)return;const[i,a]=o.coords;return this._writeGlyphs(t,n,i,a,r,0,void 0,{mapAligned:s})}if("esriGeometryMultipoint"===e.geometryType){const o=e.readGeometryForDisplay();return void o?.forEachVertex((e,o)=>this._writeGlyphs(t,n,e,o,r,0,void 0,{mapAligned:s}))}const l=e.readXForDisplay(),d=e.readYForDisplay();return this._writeGlyphs(t,n,l,d,r,0,void 0,{mapAligned:s})}_writePlacedTextMarkers(t,i,s,n){const a=n??o.fromFeatureSetReaderCIM(i);if(!a)return;const l=-1,d=r.getPlacement(a,l,this.evaluatedMeshParams.placement,e(1),t.id);if(!d)return;const c=i.getDisplayId();let h=d.next();for(;null!=h;){const e=-h.getAngle(),o=h.tx,i=-h.ty;this._writeGlyphs(t,c,o,i,s,e,void 0,{mapAligned:1===this.evaluatedMeshParams.alignment}),h=d.next()}}_writeMultipointText(t,i,s,n){const a=n??o.fromFeatureSetReaderCIM(i);if(!a)return;const l=-1,d=r.getPlacement(a,l,this.evaluatedMeshParams.placement,e(1),t.id);if(!d)return;const c=i.getDisplayId();let h=d.next(),f=0;for(;null!=h;){const e=h.tx,o=-h.ty,i=-h.getAngle();if(f>=s.glyphs.length)break;this._writeGlyph(t,c,e,o,s,f,i,void 0,{mapAligned:1===this.evaluatedMeshParams.alignment}),h=d.next(),f++}}_getShaping(o){const i=this._textMeshTransformProps,r=this.evaluatedMeshParams;if(!r.glyphs?.glyphs.length)return null;const s=e(i.fontSize),n=e(i.offsetX),c=e(i.offsetY),f=r.glyphs.sdfSize,u=t(e(r.lineWidth),l,a),m=f/24*d*t(r.lineHeightRatio,.25,4),{backgroundColor:p,borderLineSize:g}=I(r);return h(r.glyphs,{scale:s/f,angle:i.postAngle,xOffset:n,yOffset:c,horizontalAlignment:r.horizontalAlignment,verticalAlignment:o||r.verticalAlignment,maxLineWidth:u,lineHeight:m,decoration:r.decoration,borderLineSizePx:e(g),hasBackground:!!p,useCIMAngleBehavior:r.useCIMAngleBehavior})}_getMultipointShaping(){const o=this._textMeshTransformProps,i=this.evaluatedMeshParams;if(!i.glyphs?.glyphs.length)return null;const r=e(o.fontSize),s=e(o.offsetX),n=e(o.offsetY),c=i.glyphs.sdfSize,h=t(e(i.lineWidth),l,a),u=c/24*d*t(i.lineHeightRatio,.25,4),{backgroundColor:m,borderLineSize:p}=I(i);return f(i.glyphs,{scale:r/c,angle:o.postAngle,xOffset:s,yOffset:n,horizontalAlignment:i.horizontalAlignment,verticalAlignment:i.verticalAlignment,maxLineWidth:h,lineHeight:u,decoration:i.decoration,borderLineSizePx:e(p),hasBackground:!!m,useCIMAngleBehavior:i.useCIMAngleBehavior})}_writeGlyphs(t,o,i,r,s,n,a,l,d=!0){const c=this.evaluatedMeshParams,h=this._textMeshTransformProps,f=e(h.fontSize),p=h.haloSize,g=h.outlineSize,x=e(h.offsetX),y=e(h.offsetY),{sdfSize:S,sdfRadius:z}=c.glyphs,[b,_]=u(c.scaleInfo,this.getTileInfo());0!==n&&s.setRotation(n);const P=s.bounds,M=i+P.x+x,L=r+P.y-y,B=2*(c.minPixelBuffer?c.minPixelBuffer/f:1),R=Math.max(P.width,P.height)*B;s.textBox&&(t.recordStart(this.instanceId,this.attributeLayout,s.glyphs[0].textureBinding),d&&t.recordBounds(M,L,R,R),this._writeTextBox(t,o,i,r,s.textBox,a,l),t.recordEnd());for(const e of s.glyphs){t.recordStart(this.instanceId,this.attributeLayout,e.textureBinding),d&&t.recordBounds(M,L,R,R);const{texcoords:s,offsets:n}=e;this._writeQuad(t,o,i,r,{texcoords:s,offsets:n,fontSize:f,haloSize:p,outlineSize:g,sdfSize:S,sdfRadius:z,color:m(c.color),isBackground:!1,referenceBounds:a,minZoom:b,maxZoom:_,...l}),t.recordEnd()}0!==n&&s.setRotation(-n)}_writeGlyph(t,o,i,r,s,n,a,l,d,c=!0){const h=this.evaluatedMeshParams,f=this._textMeshTransformProps,u=e(f.fontSize),p=f.haloSize,g=f.outlineSize,x=e(f.offsetX),y=e(f.offsetY),{sdfSize:S,sdfRadius:z}=h.glyphs;0!==a&&s.setRotation(a);const b=s.bounds,_=i+b.x+x,P=r+b.y-y,M=2*(h.minPixelBuffer?h.minPixelBuffer/u:1),L=Math.max(b.width,b.height)*M,B=s.glyphs[n];t.recordStart(this.instanceId,this.attributeLayout,B.textureBinding),c&&t.recordBounds(_,P,L,L);const{texcoords:R,offsets:T}=B;this._writeQuad(t,o,i,r,{texcoords:R,offsets:T,fontSize:u,haloSize:p,outlineSize:g,sdfSize:S,sdfRadius:z,color:m(h.color),isBackground:!1,referenceBounds:l,minZoom:0,maxZoom:30,...d}),t.recordEnd(),0!==a&&s.setRotation(-a)}_writeTextBox(t,e,o,i,r,s,n){const a=this.evaluatedMeshParams,{fontSize:l,haloSize:d,outlineSize:c}=this._textMeshTransformProps,{backgroundColor:h,borderLineColor:f,borderLineSize:u}=I(a),{sdfSize:p,sdfRadius:g}=a.glyphs,x=!!f&&u>0,y={isBackground:!0,fontSize:l,haloSize:d,outlineSize:c,referenceBounds:s,sdfSize:p,sdfRadius:g,...n};h&&(this._writeQuad(t,e,o,i,{texcoords:M,offsets:r.main,color:m(h),...y}),x||(this._writeQuad(t,e,o,i,{texcoords:k,offsets:r.top,color:m(h),...y}),this._writeQuad(t,e,o,i,{texcoords:A,offsets:r.bot,color:m(h),...y}),this._writeQuad(t,e,o,i,{texcoords:v,offsets:r.left,color:m(h),...y}),this._writeQuad(t,e,o,i,{texcoords:w,offsets:r.right,color:m(h),...y}))),x&&(this._writeQuad(t,e,o,i,{texcoords:R,offsets:r.top,color:m(f),...y}),this._writeQuad(t,e,o,i,{texcoords:R,offsets:r.bot,color:m(f),...y}),this._writeQuad(t,e,o,i,{texcoords:T,offsets:r.left,color:m(f),...y}),this._writeQuad(t,e,o,i,{texcoords:T,offsets:r.right,color:m(f),...y}))}_writeQuad(t,e,o,i,r){const s=t.vertexCount();this._writeVertex(t,e,o,i,r),t.indexWrite(s+0),t.indexWrite(s+1),t.indexWrite(s+2),t.indexWrite(s+1),t.indexWrite(s+3),t.indexWrite(s+2)}}const E=t=>Math.round(t*c);export{G as TextMeshWriter,C as TextVertexSpec,I as getTextBoxStyle,b as maxLabelZoom};
2
+ import{clamp as t}from"../../../../../../../core/mathUtils.js";import{pt2px as e}from"../../../../../../../core/screenUtils.js";import{GeometryCursor as o}from"../../../../../../../geometry/GeometryCursor.js";import{asCIMGeometryCursor as i}from"../../../../../../../symbols/cim/utils.js";import{CIMMarkerPlacementHelper as r}from"../../../../../../../symbols/cim/placements/CIMMarkerPlacementHelper.js";import{getXDirection as s,getYDirection as n}from"../../../alignmentUtils.js";import{labelU16ZoomPrecisionFactor as a,maxTextLineWidth as l,minTextLineWidth as c,magicLabelLineHeight as d,packDegreesU8 as h}from"../../../definitions.js";import{shapeGlyphs as f,shapeGlyphsForMultipoint as u}from"../../../mesh/templates/shapingUtils.js";import{getMinMaxZoom as p,processColorInput as m,packBitset as g}from"../fill/meshWriterUtils.js";import{MeshWriter as x}from"../mesh/MeshWriter.js";import{bitsetTextIsBackground as y,bitsetTextIsMapAligned as S}from"../shaders/constants.js";import{TextMeshTransformProps as z}from"./TextParams.js";import{DataType as b}from"../../../../../../webgl/enums.js";const _=28,P=[4,4],M=[16,4],R={topLeft:M,topRight:M,bottomLeft:M,bottomRight:M},B=[4,2],L=[4,6],T={topLeft:B,topRight:B,bottomLeft:L,bottomRight:L},k={topLeft:B,topRight:L,bottomLeft:B,bottomRight:L},v={topLeft:L,topRight:L,bottomLeft:P,bottomRight:P},A={topLeft:P,topRight:P,bottomLeft:L,bottomRight:L},w={topLeft:L,topRight:P,bottomLeft:L,bottomRight:P},I={topLeft:P,topRight:L,bottomLeft:P,bottomRight:L};function C(t){return{backgroundColor:t.boxBackgroundColor??t.backgroundColor??null,borderLineColor:t.boxBorderLineColor??t.borderLineColor??null,borderLineSize:t.boxBorderLineSize>0?t.boxBorderLineSize:t.borderLineWidth??0}}const G={createComputedParams:t=>t,optionalAttributes:{zoomRange:{type:b.UNSIGNED_SHORT,count:2,packPrecisionFactor:a,packTessellation:({minZoom:t,maxZoom:e})=>[t||0,e||_]},clipAngle:{type:b.UNSIGNED_BYTE,count:1,packTessellation:({clipAngle:t})=>N(t||0)},referenceSymbol:{type:b.BYTE,count:4,packTessellation:(t,o)=>{const i=t.isLineLabel||!t.referenceBounds,r=s(i?"center":o.horizontalAlignment),a=n(i?"middle":o.verticalAlignment),{offsetX:l,offsetY:c,size:d}=i?{offsetX:0,offsetY:0,size:0}:t.referenceBounds;return[e(l),-e(c),Math.round(e(d)),r+1<<2|a+1]}},visibility:{type:b.FLOAT,count:1,otherSource:!0}},attributes:{pos:{type:b.SHORT,count:2,pack:"position",packPrecisionFactor:10},id:{type:b.UNSIGNED_BYTE,count:3,pack:"id"},bitset:{type:b.UNSIGNED_BYTE,count:1,packTessellation:({isBackground:t,mapAligned:e})=>g([[y,t],[S,!!e]])},offset:{type:b.SHORT,count:2,packPrecisionFactor:8,packAlternating:{count:4,packTessellation:({offsets:t})=>{const{bottomLeft:e,bottomRight:o,topLeft:i,topRight:r}=t;return[i,r,e,o]}}},textureUV:{type:b.UNSIGNED_SHORT,count:2,packAlternating:{count:4,packTessellation:({texcoords:t})=>{const{bottomLeft:e,bottomRight:o,topLeft:i,topRight:r}=t;return[i,r,e,o]}}},color:{type:b.UNSIGNED_BYTE,count:4,normalized:!0,packTessellation:({color:t})=>t},fontAndReferenceSize:{type:b.UNSIGNED_SHORT,count:4,packPrecisionFactor:4,packTessellation:({fontSize:t,sdfSize:o,sdfRadius:i},{referenceSize:r})=>[Math.round(e(t)),Math.round(e(r||t)),o,i]},outlineColor:{type:b.UNSIGNED_BYTE,count:4,normalized:!0,pack:({outlineColor:t})=>m(t)},haloColor:{type:b.UNSIGNED_BYTE,count:4,normalized:!0,pack:({haloColor:t})=>m(t)},outlineAndHaloSize:{type:b.UNSIGNED_SHORT,count:2,packPrecisionFactor:4,packTessellation:({outlineSize:t,haloSize:o})=>[Math.round(e(t)),Math.round(e(o))]}}};class E extends x{constructor(){super(...arguments),this.vertexSpec=G,this._textMeshParamsPropsInitialized=!1}ensurePacked(t,e,o){super.ensurePacked(t,e,o),this._textMeshParamsPropsInitialized&&!this._evaluator.hasDynamicProperties||(this._textMeshTransformProps=new z(this.evaluatedMeshParams),this._textMeshParamsPropsInitialized=!0)}_write(t,{target:e,effectGeometry:o}){const r=this._getShaping();if(!r)return;const s=1===this.evaluatedMeshParams.alignment,n=e.getDisplayId(),{placement:a}=this.evaluatedMeshParams;if(null!=a){if("PrivatePlacementMultipoint"!==a.type)this._writePlacedTextMarkers(t,e,r,i(o));else{const r=this._getMultipointShaping();r&&this._writeMultipointText(t,e,r,i(o))}return}if(o?.nextPath())return o.nextPoint(),this._writeGlyphs(t,n,o.x,o.y,r,0,void 0,{mapAligned:s});if("esriGeometryPolygon"===e.geometryType){const o=e.readCentroidForDisplay();if(!o)return;const[i,a]=o.coords;return this._writeGlyphs(t,n,i,a,r,0,void 0,{mapAligned:s})}if("esriGeometryMultipoint"===e.geometryType){const o=e.readGeometryForDisplay();return void o?.forEachVertex((e,o)=>this._writeGlyphs(t,n,e,o,r,0,void 0,{mapAligned:s}))}const l=e.readXForDisplay(),c=e.readYForDisplay();return this._writeGlyphs(t,n,l,c,r,0,void 0,{mapAligned:s})}_writePlacedTextMarkers(t,i,s,n){const a=n??o.fromFeatureSetReaderCIM(i);if(!a)return;const l=-1,c=r.getPlacement(a,l,this.evaluatedMeshParams.placement,e(1),t.id);if(!c)return;const d=i.getDisplayId();let h=c.next();for(;null!=h;){const e=-h.getAngle(),o=h.tx,i=-h.ty;this._writeGlyphs(t,d,o,i,s,e,void 0,{mapAligned:1===this.evaluatedMeshParams.alignment}),h=c.next()}}_writeMultipointText(t,i,s,n){const a=n??o.fromFeatureSetReaderCIM(i);if(!a)return;const l=-1,c=r.getPlacement(a,l,this.evaluatedMeshParams.placement,e(1),t.id);if(!c)return;const d=i.getDisplayId();let h=c.next(),f=0;for(;null!=h;){const e=h.tx,o=-h.ty,i=-h.getAngle();if(f>=s.glyphs.length)break;this._writeGlyph(t,d,e,o,s,f,i,void 0,{mapAligned:1===this.evaluatedMeshParams.alignment}),h=c.next(),f++}}_getShaping(o){const i=this._textMeshTransformProps,r=this.evaluatedMeshParams;if(!r.glyphs?.glyphs.length)return null;const s=e(i.fontSize),n=e(i.offsetX),a=e(i.offsetY),h=r.glyphs.sdfSize,u=t(e(r.lineWidth),c,l),p=h/24*d*t(r.lineHeightRatio,.25,4),{backgroundColor:m,borderLineSize:g}=C(r);return f(r.glyphs,{scale:s/h,angle:i.postAngle,xOffset:n,yOffset:a,horizontalAlignment:r.horizontalAlignment,verticalAlignment:o||r.verticalAlignment,maxLineWidth:u,lineHeight:p,decoration:r.decoration,borderLineSizePx:e(g),hasBackground:!!m,useCIMAngleBehavior:r.useCIMAngleBehavior})}_getMultipointShaping(){const o=this._textMeshTransformProps,i=this.evaluatedMeshParams;if(!i.glyphs?.glyphs.length)return null;const r=e(o.fontSize),s=e(o.offsetX),n=e(o.offsetY),a=i.glyphs.sdfSize,h=t(e(i.lineWidth),c,l),f=a/24*d*t(i.lineHeightRatio,.25,4),{backgroundColor:p,borderLineSize:m}=C(i);return u(i.glyphs,{scale:r/a,angle:o.postAngle,xOffset:s,yOffset:n,horizontalAlignment:i.horizontalAlignment,verticalAlignment:i.verticalAlignment,maxLineWidth:h,lineHeight:f,decoration:i.decoration,borderLineSizePx:e(m),hasBackground:!!p,useCIMAngleBehavior:i.useCIMAngleBehavior})}_writeGlyphs(t,o,i,r,s,n,a,l,c=!0){const d=this.evaluatedMeshParams,h=this._textMeshTransformProps,f=e(h.fontSize),u=h.haloSize,g=h.outlineSize,x=e(h.offsetX),y=e(h.offsetY),{sdfSize:S,sdfRadius:z}=d.glyphs,[b,_]=p(d.scaleInfo,this.getTileInfo());0!==n&&s.setRotation(n);const P=s.bounds,M=i+P.x+x,R=r+P.y-y,B=2*(d.minPixelBuffer?d.minPixelBuffer/f:1),L=Math.max(P.width,P.height)*B;s.textBox&&(t.recordStart(this.instanceId,this.attributeLayout,s.glyphs[0].textureBinding),c&&t.recordBounds(M,R,L,L),this._writeTextBox(t,o,i,r,s.textBox,a,l),t.recordEnd());for(const e of s.glyphs){t.recordStart(this.instanceId,this.attributeLayout,e.textureBinding),c&&t.recordBounds(M,R,L,L);const{texcoords:s,offsets:n}=e;this._writeQuad(t,o,i,r,{texcoords:s,offsets:n,fontSize:f,haloSize:u,outlineSize:g,sdfSize:S,sdfRadius:z,color:m(d.color),isBackground:!1,referenceBounds:a,minZoom:b,maxZoom:_,...l}),t.recordEnd()}0!==n&&s.setRotation(-n)}_writeGlyph(t,o,i,r,s,n,a,l,c,d=!0){const h=this.evaluatedMeshParams,f=this._textMeshTransformProps,u=e(f.fontSize),p=f.haloSize,g=f.outlineSize,x=e(f.offsetX),y=e(f.offsetY),{sdfSize:S,sdfRadius:z}=h.glyphs;0!==a&&s.setRotation(a);const b=s.bounds,_=i+b.x+x,P=r+b.y-y,M=2*(h.minPixelBuffer?h.minPixelBuffer/u:1),R=Math.max(b.width,b.height)*M,B=s.glyphs[n];t.recordStart(this.instanceId,this.attributeLayout,B.textureBinding),d&&t.recordBounds(_,P,R,R);const{texcoords:L,offsets:T}=B;this._writeQuad(t,o,i,r,{texcoords:L,offsets:T,fontSize:u,haloSize:p,outlineSize:g,sdfSize:S,sdfRadius:z,color:m(h.color),isBackground:!1,referenceBounds:l,minZoom:0,maxZoom:30,...c}),t.recordEnd(),0!==a&&s.setRotation(-a)}_writeTextBox(t,e,o,i,r,s,n){const a=this.evaluatedMeshParams,{fontSize:l,haloSize:c,outlineSize:d}=this._textMeshTransformProps,{backgroundColor:h,borderLineColor:f,borderLineSize:u}=C(a),{sdfSize:p,sdfRadius:g}=a.glyphs,x=!!f&&u>0,y={isBackground:!0,fontSize:l,haloSize:c,outlineSize:d,referenceBounds:s,sdfSize:p,sdfRadius:g,...n};h&&(this._writeQuad(t,e,o,i,{texcoords:R,offsets:r.main,color:m(h),...y}),x||(this._writeQuad(t,e,o,i,{texcoords:v,offsets:r.top,color:m(h),...y}),this._writeQuad(t,e,o,i,{texcoords:A,offsets:r.bot,color:m(h),...y}),this._writeQuad(t,e,o,i,{texcoords:w,offsets:r.left,color:m(h),...y}),this._writeQuad(t,e,o,i,{texcoords:I,offsets:r.right,color:m(h),...y}))),x&&(this._writeQuad(t,e,o,i,{texcoords:T,offsets:r.top,color:m(f),...y}),this._writeQuad(t,e,o,i,{texcoords:T,offsets:r.bot,color:m(f),...y}),this._writeQuad(t,e,o,i,{texcoords:k,offsets:r.left,color:m(f),...y}),this._writeQuad(t,e,o,i,{texcoords:k,offsets:r.right,color:m(f),...y}))}_writeQuad(t,e,o,i,r){const s=t.vertexCount();this._writeVertex(t,e,o,i,r),t.indexWrite(s+0),t.indexWrite(s+1),t.indexWrite(s+2),t.indexWrite(s+1),t.indexWrite(s+3),t.indexWrite(s+2)}}const N=t=>Math.round(t*h);export{E as TextMeshWriter,G as TextVertexSpec,C as getTextBoxStyle,_ as maxLabelZoom};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
- import{__decorate as t,__param as e}from"tslib";import{labelPlacementOffsetPadding as i,packDegreesU8 as o}from"../../../definitions.js";import{location as s,option as l,uniform as a,texture as r,define as n,input as p,ComputeVertexInput as d}from"../../GraphShaderModule.js";import{Vec4 as u,Vec2 as y,Float as m,Sampler2D as c,mod as h,step as v,and as f,lessThan as w,greaterThanEqual as b,Vec3 as x,Mat3 as V,ifElse as S,equal as g,greaterThan as z,Bool as R,texture2D as j,smoothstep as A,Int as M,bitRShift as C,bitAnd as O}from"../../graph/glsl.js";import{FeatureVertexInput as T,AFeatureShader as H,FeatureFragmentInput as L}from"../shaders/AFeatureShader.js";import{bitsetTextIsBackground as P,bitsetTextIsMapAligned as F,noHit as N,trueHit as U}from"../shaders/constants.js";import{isRectHittest as _,distPointTriangle as k,hittestScreenRect as q}from"../shaders/hittestUtils.js";import{MosaicInfo as D}from"../shaders/MosaicInfo.js";import{getBit as I}from"../shaders/utils.js";import{VisualVariableColor as B}from"../shaders/VisualVariableColor.js";import{VisualVariableOpacity as E}from"../shaders/VisualVariableOpacity.js";import{VisualVariableRotation as W}from"../shaders/VisualVariableRotation.js";import{VisualVariableSizeMinMaxValue as G}from"../shaders/VisualVariableSizeMinMaxValue.js";import{VisualVariableSizeScaleStops as Z}from"../shaders/VisualVariableSizeScaleStops.js";import{VisualVariableSizeStops as J}from"../shaders/VisualVariableSizeStops.js";import{VisualVariableSizeUnitValue as K}from"../shaders/VisualVariableSizeUnitValue.js";import{getVisualVariableSize as Q,getVisualVariableRotation as X}from"../shaders/vvUtils.js";const Y=1/o;class $ extends T{}t([s(3,u)],$.prototype,"color",void 0),t([s(4,y)],$.prototype,"offset",void 0),t([s(5,y)],$.prototype,"textureUV",void 0),t([s(6,u)],$.prototype,"fontAndReferenceSize",void 0),t([s(7,u)],$.prototype,"outlineColor",void 0),t([s(8,u)],$.prototype,"haloColor",void 0),t([s(9,y)],$.prototype,"outlineAndHaloSize",void 0),t([s(10,y)],$.prototype,"zoomRange",void 0),t([s(11,m)],$.prototype,"clipAngle",void 0),t([s(12,u)],$.prototype,"referenceSymbol",void 0),t([s(15,m)],$.prototype,"visibility",void 0);class tt extends d{}t([s(13,y)],tt.prototype,"offsetNextVertex1",void 0),t([s(14,y)],tt.prototype,"offsetNextVertex2",void 0);class et extends L{}class it extends H{constructor(){super(...arguments),this.type="TextShader",this.computeAttributes={offset:["offsetNextVertex1","offsetNextVertex2"]},this.textRenderPassType=0,this.isBackgroundPass=!1,this.isLabel=!1}clipLabel(t,e){const{clipAngle:i,zoomRange:o,visibility:s}=t,l=i.multiply(Y),a=h(l.subtract(this.view.rotation),new m(360));let r=new m(0);const n=this.view.currentZoom,p=o.x,d=o.y,u=new m(1).subtract(v(p,n)).multiply(2),y=new m(f(b(a,new m(90)),w(a,new m(270)))).multiply(2),c=new m(2).multiply(new m(1).subtract(v(n,d)));return r=r.add(e.multiply(u)),r=r.add(e.multiply(y)),r=r.add(c),s&&(r=r.add(s)),r}vertex(t,e){const o=I(t.bitset,P),s=new m(1).subtract(o);let l=t.fontAndReferenceSize[0];const a=t.fontAndReferenceSize[1],r=t.fontAndReferenceSize[2],n=t.fontAndReferenceSize[3];let p=l.divide(r);const d=1===this.textRenderPassType?t.outlineColor:2===this.textRenderPassType?t.haloColor:this._getVertexColor(t),c=this.view.displayViewScreenMat3.multiply(new x(t.pos,1));let h=t.offset,v=new m(1),f=V.identity(),w=new y(0);if(this.isLabel){if(!t.referenceSymbol)throw new Error("InternalError: Optional attribute 'referenceSymbol' expected for labels");const e=t.referenceSymbol,o=e.xy,s=e.z,l=this._unpackDirection(e.w),a=Q(this,t.id,s).divide(2),r=l.multiply(a.add(i));w=o.add(r),h=h.add(w)}else{v=Q(this,t.id,a).divide(a),l=l.multiply(v),p=p.multiply(v),h=h.multiply(v),f=X(this,t.id),h=f.multiply(new x(h,0)).xy}const b=I(t.bitset,F),j=this._getViewRotationMatrix(b).multiply(new x(h,0)).multiply(this.view.scaleFactor);let A=this.isLabel?this.clipLabel(t,b):this.clip(t.id,t.zoomRange);A=this.isBackgroundPass?A.add(s.multiply(2)):A.add(o.multiply(2));let M=new m(0);if(1===this.textRenderPassType){A=A.add(S(g(t.outlineAndHaloSize.x,new m(0)),new m(2),new m(0)));M=new m(t.outlineAndHaloSize.x).divide(p).divide(n)}if(2===this.textRenderPassType){const e=t.outlineAndHaloSize.x,i=new m(t.outlineAndHaloSize.y);A=A.add(S(g(i,new m(0)),new m(2),new m(0)));M=i.add(e).divide(p).divide(n)}const C=this.isLabel?z(A,new m(1)):new R(!1);return{glPosition:new u(c.xy.add(j.xy),A,1),color:d,size:p,textureUV:t.textureUV.divide(this.mosaicInfo.size),antialiasingWidth:new m(.105).multiply(r).divide(l).divide(this.view.pixelRatio),outlineDistanceOffset:M,...this.maybeRunHittest(t,e,{vvSizeAdjustment:v,vvRotation:f,labelOffset:w,labelClipped:C,scaleFactor:this.view.scaleFactor})}}_getViewRotationMatrix(t){const e=this.view.displayViewMat3,i=this.view.displayMat3,o=new m(1).subtract(t);return e.multiply(t).add(i.multiply(o))}_getHittestAlignmentMatrix(t){const e=this.view.viewMat3.multiply(this.view.tileMat3),i=this.view.tileMat3,o=new m(1).subtract(t);return e.multiply(t).add(i.multiply(o))}fragment(t){const e=new m(2/8),i=new m(1).subtract(e),o=j(this.mosaicTexture,t.textureUV).a;let s=i.subtract(t.outlineDistanceOffset);this.highlight&&(s=s.divide(2));const l=t.antialiasingWidth,a=A(s.subtract(l),s.add(l),o);return this.getFragmentOutput(t.color.multiply(a),t)}computeHittestTriangle(t,e,{vvSizeAdjustment:i,vvRotation:o,labelOffset:s,scaleFactor:l}){let a,r,n;this.isLabel?(a=new x(t.offset.multiply(l).add(s),0),r=new x(e.offsetNextVertex1.multiply(l).add(s),0),n=new x(e.offsetNextVertex2.multiply(l).add(s),0)):(a=o.multiply(new x(t.offset.multiply(l).multiply(i),0)),r=o.multiply(new x(e.offsetNextVertex1.multiply(l).multiply(i),0)),n=o.multiply(new x(e.offsetNextVertex2.multiply(l).multiply(i),0)));const{viewMat3:p,tileMat3:d}=this.view,u=p.multiply(d).multiply(new x(t.pos,1)),y=I(t.bitset,F),m=this._getHittestAlignmentMatrix(y);return{pos0:u.add(m.multiply(a)).xy,pos1:u.add(m.multiply(r)).xy,pos2:u.add(m.multiply(n)).xy}}hittest(t,e,i){const{vvSizeAdjustment:o,vvRotation:s,labelOffset:l,labelClipped:a,scaleFactor:r}=i,n=_(this.hittestRequest),{pos0:p,pos1:d,pos2:u}=this.computeHittestTriangle(t,e,{vvSizeAdjustment:o,vvRotation:s,labelOffset:l,scaleFactor:r});return S(n,()=>{const{tlbr:t}=this.hittestRequest;return this.isLabel?S(a,new m(N),q(p,d,u,t)):q(p,d,u,t)},()=>{const t=k(this.hittestRequest.position,p,d,u),e=this.isLabel?a:new R(!1);return S(e,new m(N),S(z(t,this.hittestRequest.distance),new m(N),new m(U)))})}_unpackDirection(t){const e=new M(t),i=C(e,new M(2)),o=O(e,new M(3));return new y(new m(i).subtract(1),new m(o).subtract(1))}_getVertexColor(t){let e=t.color;if(this.visualVariableColor){const i=this.getColorValue(t.id);e=this.visualVariableColor.getColor(i,t.color,new R(!1))}if(this.visualVariableOpacity){const i=this.getOpacityValue(t.id),o=this.visualVariableOpacity.getOpacity(i);e=e.multiply(o)}return e}}t([l(B)],it.prototype,"visualVariableColor",void 0),t([l(E)],it.prototype,"visualVariableOpacity",void 0),t([l(W)],it.prototype,"visualVariableRotation",void 0),t([l(G)],it.prototype,"visualVariableSizeMinMaxValue",void 0),t([l(Z)],it.prototype,"visualVariableSizeScaleStops",void 0),t([l(J)],it.prototype,"visualVariableSizeStops",void 0),t([l(K)],it.prototype,"visualVariableSizeUnitValue",void 0),t([a(D)],it.prototype,"mosaicInfo",void 0),t([r(c)],it.prototype,"mosaicTexture",void 0),t([n],it.prototype,"textRenderPassType",void 0),t([n],it.prototype,"isBackgroundPass",void 0),t([n],it.prototype,"isLabel",void 0),t([e(0,p($)),e(1,p(tt))],it.prototype,"vertex",null),t([e(0,p(et))],it.prototype,"fragment",null);export{et as TextFragmentInput,it as TextShader,$ as TextVertexInput};
2
+ import{__decorate as t,__param as e}from"tslib";import{labelU16ZoomPrecisionFactor as i,labelPlacementOffsetPadding as o,packDegreesU8 as s}from"../../../definitions.js";import{location as l,option as a,uniform as r,texture as n,define as p,input as d,ComputeVertexInput as u}from"../../GraphShaderModule.js";import{Vec4 as y,Vec2 as m,Float as c,Sampler2D as h,mod as v,floor as f,step as w,and as b,lessThan as x,greaterThanEqual as V,Vec3 as S,Mat3 as g,ifElse as z,equal as R,greaterThan as j,Bool as A,texture2D as M,smoothstep as C,Int as O,bitRShift as T,bitAnd as H}from"../../graph/glsl.js";import{FeatureVertexInput as L,AFeatureShader as P,FeatureFragmentInput as F}from"../shaders/AFeatureShader.js";import{bitsetTextIsBackground as N,bitsetTextIsMapAligned as U,noHit as _,trueHit as k}from"../shaders/constants.js";import{isRectHittest as q,distPointTriangle as D,hittestScreenRect as I}from"../shaders/hittestUtils.js";import{MosaicInfo as B}from"../shaders/MosaicInfo.js";import{getBit as E}from"../shaders/utils.js";import{VisualVariableColor as W}from"../shaders/VisualVariableColor.js";import{VisualVariableOpacity as G}from"../shaders/VisualVariableOpacity.js";import{VisualVariableRotation as Z}from"../shaders/VisualVariableRotation.js";import{VisualVariableSizeMinMaxValue as J}from"../shaders/VisualVariableSizeMinMaxValue.js";import{VisualVariableSizeScaleStops as K}from"../shaders/VisualVariableSizeScaleStops.js";import{VisualVariableSizeStops as Q}from"../shaders/VisualVariableSizeStops.js";import{VisualVariableSizeUnitValue as X}from"../shaders/VisualVariableSizeUnitValue.js";import{getVisualVariableSize as Y,getVisualVariableRotation as $}from"../shaders/vvUtils.js";const tt=1/s;class et extends L{}t([l(3,y)],et.prototype,"color",void 0),t([l(4,m)],et.prototype,"offset",void 0),t([l(5,m)],et.prototype,"textureUV",void 0),t([l(6,y)],et.prototype,"fontAndReferenceSize",void 0),t([l(7,y)],et.prototype,"outlineColor",void 0),t([l(8,y)],et.prototype,"haloColor",void 0),t([l(9,m)],et.prototype,"outlineAndHaloSize",void 0),t([l(10,m)],et.prototype,"zoomRange",void 0),t([l(11,c)],et.prototype,"clipAngle",void 0),t([l(12,y)],et.prototype,"referenceSymbol",void 0),t([l(15,c)],et.prototype,"visibility",void 0);class it extends u{}t([l(13,m)],it.prototype,"offsetNextVertex1",void 0),t([l(14,m)],it.prototype,"offsetNextVertex2",void 0);class ot extends F{}class st extends P{constructor(){super(...arguments),this.type="TextShader",this.computeAttributes={offset:["offsetNextVertex1","offsetNextVertex2"]},this.textRenderPassType=0,this.isBackgroundPass=!1,this.isLabel=!1}clipLabel(t,e){const{clipAngle:o,zoomRange:s,visibility:l}=t,a=o.multiply(tt),r=v(a.subtract(this.view.rotation),new c(360));let n=new c(0);const p=i,d=f(this.view.currentZoom.multiply(p)).divide(p),u=s.x,y=s.y,m=new c(1).subtract(w(u,d)).multiply(2),h=new c(b(V(r,new c(90)),x(r,new c(270)))).multiply(2),S=new c(2).multiply(new c(1).subtract(w(d,y)));return n=n.add(e.multiply(m)),n=n.add(e.multiply(h)),n=n.add(S),l&&(n=n.add(l)),n}vertex(t,e){const i=E(t.bitset,N),s=new c(1).subtract(i);let l=t.fontAndReferenceSize[0];const a=t.fontAndReferenceSize[1],r=t.fontAndReferenceSize[2],n=t.fontAndReferenceSize[3];let p=l.divide(r);const d=1===this.textRenderPassType?t.outlineColor:2===this.textRenderPassType?t.haloColor:this._getVertexColor(t),u=this.view.displayViewScreenMat3.multiply(new S(t.pos,1));let h=t.offset,v=new c(1),f=g.identity(),w=new m(0);if(this.isLabel){if(!t.referenceSymbol)throw new Error("InternalError: Optional attribute 'referenceSymbol' expected for labels");const e=t.referenceSymbol,i=e.xy,s=e.z,l=this._unpackDirection(e.w),a=Y(this,t.id,s).divide(2),r=l.multiply(a.add(o));w=i.add(r),h=h.add(w)}else{v=Y(this,t.id,a).divide(a),l=l.multiply(v),p=p.multiply(v),h=h.multiply(v),f=$(this,t.id),h=f.multiply(new S(h,0)).xy}const b=E(t.bitset,U),x=this._getViewRotationMatrix(b).multiply(new S(h,0)).multiply(this.view.scaleFactor);let V=this.isLabel?this.clipLabel(t,b):this.clip(t.id,t.zoomRange);V=this.isBackgroundPass?V.add(s.multiply(2)):V.add(i.multiply(2));let M=new c(0);if(1===this.textRenderPassType){V=V.add(z(R(t.outlineAndHaloSize.x,new c(0)),new c(2),new c(0)));M=new c(t.outlineAndHaloSize.x).divide(p).divide(n)}if(2===this.textRenderPassType){const e=t.outlineAndHaloSize.x,i=new c(t.outlineAndHaloSize.y);V=V.add(z(R(i,new c(0)),new c(2),new c(0)));M=i.add(e).divide(p).divide(n)}const C=this.isLabel?j(V,new c(1)):new A(!1);return{glPosition:new y(u.xy.add(x.xy),V,1),color:d,size:p,textureUV:t.textureUV.divide(this.mosaicInfo.size),antialiasingWidth:new c(.105).multiply(r).divide(l).divide(this.view.pixelRatio),outlineDistanceOffset:M,...this.maybeRunHittest(t,e,{vvSizeAdjustment:v,vvRotation:f,labelOffset:w,labelClipped:C,scaleFactor:this.view.scaleFactor})}}_getViewRotationMatrix(t){const e=this.view.displayViewMat3,i=this.view.displayMat3,o=new c(1).subtract(t);return e.multiply(t).add(i.multiply(o))}_getHittestAlignmentMatrix(t){const e=this.view.viewMat3.multiply(this.view.tileMat3),i=this.view.tileMat3,o=new c(1).subtract(t);return e.multiply(t).add(i.multiply(o))}fragment(t){const e=new c(2/8),i=new c(1).subtract(e),o=M(this.mosaicTexture,t.textureUV).a;let s=i.subtract(t.outlineDistanceOffset);this.highlight&&(s=s.divide(2));const l=t.antialiasingWidth,a=C(s.subtract(l),s.add(l),o);return this.getFragmentOutput(t.color.multiply(a),t)}computeHittestTriangle(t,e,{vvSizeAdjustment:i,vvRotation:o,labelOffset:s,scaleFactor:l}){let a,r,n;this.isLabel?(a=new S(t.offset.multiply(l).add(s),0),r=new S(e.offsetNextVertex1.multiply(l).add(s),0),n=new S(e.offsetNextVertex2.multiply(l).add(s),0)):(a=o.multiply(new S(t.offset.multiply(l).multiply(i),0)),r=o.multiply(new S(e.offsetNextVertex1.multiply(l).multiply(i),0)),n=o.multiply(new S(e.offsetNextVertex2.multiply(l).multiply(i),0)));const{viewMat3:p,tileMat3:d}=this.view,u=p.multiply(d).multiply(new S(t.pos,1)),y=E(t.bitset,U),m=this._getHittestAlignmentMatrix(y);return{pos0:u.add(m.multiply(a)).xy,pos1:u.add(m.multiply(r)).xy,pos2:u.add(m.multiply(n)).xy}}hittest(t,e,i){const{vvSizeAdjustment:o,vvRotation:s,labelOffset:l,labelClipped:a,scaleFactor:r}=i,n=q(this.hittestRequest),{pos0:p,pos1:d,pos2:u}=this.computeHittestTriangle(t,e,{vvSizeAdjustment:o,vvRotation:s,labelOffset:l,scaleFactor:r});return z(n,()=>{const{tlbr:t}=this.hittestRequest;return this.isLabel?z(a,new c(_),I(p,d,u,t)):I(p,d,u,t)},()=>{const t=D(this.hittestRequest.position,p,d,u),e=this.isLabel?a:new A(!1);return z(e,new c(_),z(j(t,this.hittestRequest.distance),new c(_),new c(k)))})}_unpackDirection(t){const e=new O(t),i=T(e,new O(2)),o=H(e,new O(3));return new m(new c(i).subtract(1),new c(o).subtract(1))}_getVertexColor(t){let e=t.color;if(this.visualVariableColor){const i=this.getColorValue(t.id);e=this.visualVariableColor.getColor(i,t.color,new A(!1))}if(this.visualVariableOpacity){const i=this.getOpacityValue(t.id),o=this.visualVariableOpacity.getOpacity(i);e=e.multiply(o)}return e}}t([a(W)],st.prototype,"visualVariableColor",void 0),t([a(G)],st.prototype,"visualVariableOpacity",void 0),t([a(Z)],st.prototype,"visualVariableRotation",void 0),t([a(J)],st.prototype,"visualVariableSizeMinMaxValue",void 0),t([a(K)],st.prototype,"visualVariableSizeScaleStops",void 0),t([a(Q)],st.prototype,"visualVariableSizeStops",void 0),t([a(X)],st.prototype,"visualVariableSizeUnitValue",void 0),t([r(B)],st.prototype,"mosaicInfo",void 0),t([n(h)],st.prototype,"mosaicTexture",void 0),t([p],st.prototype,"textRenderPassType",void 0),t([p],st.prototype,"isBackgroundPass",void 0),t([p],st.prototype,"isLabel",void 0),t([e(0,d(et)),e(1,d(it))],st.prototype,"vertex",null),t([e(0,d(ot))],st.prototype,"fragment",null);export{ot as TextFragmentInput,st as TextShader,et as TextVertexInput};
@@ -0,0 +1,2 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
+ import{destroyMaybe as e}from"../../../../../../../core/maybe.js";import{backbufferStencilVisible as t}from"../../../definitions.js";import{SimpleMesh as s}from"../../../meshing/SimpleMesh.js";import{Technique as i}from"../Technique.js";import{BitBlitShader as r}from"../shaders/BitBlitShader.js";import{DataType as o,PrimitiveType as n}from"../../../../../../webgl/enums.js";const m={write:!1,test:{compare:514,op:{fail:7680,zFail:7680,zPass:7680},mask:255}};class h extends i{constructor(){super(...arguments),this.type=5,this.shaders={bitBlit:new r},this._mesh=null}shutdown(){this._mesh=e(this._mesh)}render(e,s){const{context:i,painter:r}=e,o=s.opacity??1,n=!0===s.clipToVisibleRegion;s.texture.setSamplingMode(s.samplingMode);const h={color:{write:[!0,!0,!0,!0],blendMode:"custom",blendParameters:{srcRGB:1,dstRGB:771,srcAlpha:1,dstAlpha:771}},depth:!1,stencil:!!n&&m};r.setPipelineState(h);const a=n?{stencilRef:t}:void 0;r.submitDrawMesh(i,{shader:this.shaders.bitBlit,uniforms:{config:{opacity:o}},textures:{texture:{texture:s.texture,unit:0}},defines:null,optionalAttributes:null,useComputeBuffer:!1},this._getMesh(e),a)}_getMesh(e){return this._mesh??=s.createForShader(e.context,{primitive:n.TRIANGLE_STRIP,vertex:new Int8Array([-1,-1,0,0,1,-1,1,0,-1,1,0,1,1,1,1,1]),layout:{pos:{type:o.BYTE,count:2},tex:{type:o.BYTE,count:2}}}),this._mesh}}export{h as BitBlitTechnique};
@@ -0,0 +1,2 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
+ import{destroyMaybe as e}from"../../../../../../../core/maybe.js";import{Mesh as t}from"../../../meshing/Mesh.js";import{Technique as s}from"../Technique.js";import{DebugOverlayShader as i}from"../shaders/DebugOverlayShader.js";import{PrimitiveType as r,DataType as o}from"../../../../../../webgl/enums.js";import{VertexElementDescriptor as n}from"../../../../../../webgl/VertexElementDescriptor.js";class a extends s{constructor(){super(...arguments),this.type=27,this.shaders={debugOverlay:new i},this._mesh=null}shutdown(){this._mesh=e(this._mesh)}render(e,t){const{context:s,painter:i}=e,r=this._getMesh(e,t.mesh);i.setPipelineState({color:{write:[!0,!0,!0,!0],blendMode:"composite"},depth:!1,stencil:!1}),i.submitDrawMeshUntyped(s,{shader:this.shaders.debugOverlay,uniforms:{config:{dvsMat3:t.dvsMat3,colors:h(t.colors),opacities:t.opacities}},textures:void 0,defines:void 0,optionalAttributes:void 0,useComputeBuffer:!1},r)}_getMesh(e,s){return this._mesh?(this._mesh.vertexBuffers.get("vertices")?.setData(s.vertexData),this._mesh.indexBuffers.get("indices")?.setData(s.indexData),this._mesh.parts[0].count=s.indexData.length):this._mesh=new t(e.context,{vertex:{vertices:{data:s.vertexData,layout:[new n("positionAndFlags",3,o.SHORT,0,6)]}},index:{indices:{data:s.indexData}},groups:[{index:"indices",primitive:r.TRIANGLES}],parts:[{group:0,start:0,count:s.indexData.length}]}),this._mesh}}function h(e){return[[e[0],e[1],e[2],e[3]],[e[4],e[5],e[6],e[7]],[e[8],e[9],e[10],e[11]],[e[12],e[13],e[14],e[15]]]}export{a as DebugOverlayTechnique};
@@ -0,0 +1,2 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
+ import"../../../../../../../core/has.js";import{textureBindingHighlight0 as e,textureBindingHighlight1 as t}from"../../../definitions.js";import{alphaToRgbaChannelSelectorMatrix as r,rgbaToRgbaChannelSelectorMatrix as i,sigma as s}from"../../../effects/highlight/parameters.js";import{Technique as o}from"../Technique.js";import{HighlightShadeShader as n,HighlightBlurShader as a}from"../shaders/HighlightShader.js";import{BitBlitTechnique as h}from"./BitBlitTechnique.js";const u=[!1,!1,!1,!0];class l extends o{constructor(){super(...arguments),this.type=7,this.shaders={blur:new a,shade:new n},this._bitBlitTechnique=new h}shutdown(){this._bitBlitTechnique.shutdown()}render(e,t){this._prepareTarget(e,{target:t.maskFbo,viewport:t.highlightViewport}),this._bitBlitTechnique.render(e,{texture:t.sourceTexture,samplingMode:9728}),this._preBlur(e,{texture:t.maskTexture,size:t.highlightWidth,target:t.partialMapFbo,viewport:t.highlightViewport}),this._finalBlur(e,{texture:t.partialMapTexture,size:t.highlightHeight,target:t.maskFbo,viewport:t.highlightViewport}),this._shade(e,{texture:t.maskTexture,gradient:t.gradient,target:t.outputTarget,viewport:t.outputViewport})}_preBlur(e,t){this._renderBlur(e,{...t,direction:[1,0,1/t.size,0],channelSelector:r,colorWrite:t.colorWrite??u})}_finalBlur(e,t){this._renderBlur(e,{...t,direction:[0,1,0,1/t.size],channelSelector:i,colorWrite:t.colorWrite??u})}_shade(e,t){this._renderShade(e,t)}_renderBlur(t,r){const{context:i,painter:o}=t,n={color:{write:r.colorWrite,blendMode:"none"},depth:!1,stencil:!1};o.setPipelineState(n),this._prepareTarget(t,r),o.submitDrawMesh(i,{shader:this.shaders.blur,uniforms:{config:{direction:r.direction,channelSelector:r.channelSelector,sigma:s}},textures:{texture:{unit:e,texture:r.texture}},defines:null,optionalAttributes:null,useComputeBuffer:!1},o.quadMesh)}_renderShade(r,i){const{context:o,painter:n}=r,a=i.gradient.getProgramState(o),h={color:{write:[!0,!0,!0,!0],blendMode:"custom",blendParameters:{srcRGB:1,dstRGB:771,srcAlpha:1,dstAlpha:771}},depth:!1,stencil:!1};n.setPipelineState(h),this._prepareTarget(r,i),n.submitDrawMesh(o,{shader:this.shaders.shade,uniforms:{config:{sigma:s,minMaxDistance:a.minMaxDistance}},textures:{texture:{unit:e,texture:i.texture},shade:{unit:t,texture:a.shadeTexture}},defines:null,optionalAttributes:null,useComputeBuffer:!1},n.quadMesh)}_prepareTarget(e,t){const{context:r}=e;null!=t.viewport&&r.setViewport(...t.viewport),r.bindFramebuffer(t.target)}}export{l as HighlightTechnique};
@@ -0,0 +1,2 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
2
+ import{toRadian as t}from"../../../../../../../core/libs/gl-matrix-2/math/common.js";import{fromTranslation as e,scale as r,rotate as s,translate as i}from"../../../../../../../core/libs/gl-matrix-2/math/mat3.js";import{create as o}from"../../../../../../../core/libs/gl-matrix-2/factories/mat3f32.js";import{fromValues as a}from"../../../../../../../core/libs/gl-matrix-2/factories/vec2f64.js";import{set as n}from"../../../../../../../core/libs/gl-matrix-2/math/vec3.js";import{create as c}from"../../../../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{backbufferStencilClipped as l,backbufferStencilVisible as m}from"../../../definitions.js";import{Technique as d}from"../Technique.js";import{WorldExtentStencilShader as h}from"../shaders/WorldExtentStencilShader.js";const f=a(-.5,-.5);class p extends d{constructor(){super(...arguments),this.type=35,this.shaders={stencil:new h},this._centerNdc=c(),this._pxToNdc=c(),this._worldDimensionsPx=c(),this._mat3=o()}render(t,e){const{context:r}=t,s=this._updateGeometry(t,e.padding);this._clearBackbuffer(r,e.backgroundColor,s),s&&this._renderWorldExtent(t)}_clearBackbuffer(t,e,r){if(null!=e){const{r,g:s,b:i,a:o}=e;t.setClearColor(o*r/255,o*s/255,o*i/255,o)}else t.setClearColor(0,0,0,0);t.setStencilFunction(519,0,255),t.setStencilWriteMask(255),t.setClearStencil(r?l:m),t.clear(17408)}_renderWorldExtent(t){const{context:e,painter:r}=t;r.setPipelineState({color:!1,depth:!1,stencil:{write:{mask:255},test:{compare:519,op:{fail:7680,zFail:7680,zPass:7681},mask:255}}}),r.submitDrawMesh(e,{shader:this.shaders.stencil,uniforms:{config:{worldExtent:this._mat3}},textures:void 0,defines:void 0,optionalAttributes:void 0,useComputeBuffer:!1},r.quadMesh,{stencilRef:m})}_updateGeometry(o,a){const{state:c,pixelRatio:l}=o,{size:m,rotation:d}=c,h=Math.round(m[0]*l),p=Math.round(m[1]*l);if(!c.spatialReference.isWrappable)return!1;const u=t(d),x=Math.abs(Math.cos(u)),_=Math.abs(Math.sin(u)),b=Math.round(h*x+p*_),g=Math.round(l*c.worldScreenWidth);if(b<=g)return!1;const M=h*_+p*x,j=(a.left-a.right)*l/h,w=(a.bottom-a.top)*l/p;n(this._worldDimensionsPx,g,M,1),n(this._pxToNdc,2/h,-2/p,1),n(this._centerNdc,j,w,1);const C=this._mat3;return e(C,this._centerNdc),r(C,C,this._pxToNdc),0!==d&&s(C,C,u),r(C,C,this._worldDimensionsPx),i(C,C,f),!0}}export{p as WorldExtentClipTechnique};