@arcgis/core 5.1.0-next.127 → 5.1.0-next.129

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 (658) hide show
  1. package/applications/Urban/editingSessionUtils.js +1 -1
  2. package/arcade/featureSetUtils.js +1 -1
  3. package/arcade/featureset/sources/FeatureLayerDynamic.js +1 -1
  4. package/arcade/featureset/sources/FeatureLayerParquet.js +2 -0
  5. package/arcade/featureset/support/FeatureSet.js +1 -1
  6. package/arcade/featureset/support/shared.js +1 -1
  7. package/arcade.d.ts +2 -1
  8. package/arcgisGlobal.d.ts +3 -1
  9. package/assets/esri/core/t9n/Units_ar.json +1 -1
  10. package/assets/esri/core/t9n/Units_bg.json +1 -1
  11. package/assets/esri/core/t9n/Units_bs.json +1 -1
  12. package/assets/esri/core/t9n/Units_ca.json +1 -1
  13. package/assets/esri/core/t9n/Units_cs.json +1 -1
  14. package/assets/esri/core/t9n/Units_da.json +1 -1
  15. package/assets/esri/core/t9n/Units_de.json +1 -1
  16. package/assets/esri/core/t9n/Units_el.json +1 -1
  17. package/assets/esri/core/t9n/Units_es.json +1 -1
  18. package/assets/esri/core/t9n/Units_et.json +1 -1
  19. package/assets/esri/core/t9n/Units_fi.json +1 -1
  20. package/assets/esri/core/t9n/Units_fr.json +1 -1
  21. package/assets/esri/core/t9n/Units_he.json +1 -1
  22. package/assets/esri/core/t9n/Units_hr.json +1 -1
  23. package/assets/esri/core/t9n/Units_hu.json +1 -1
  24. package/assets/esri/core/t9n/Units_id.json +1 -1
  25. package/assets/esri/core/t9n/Units_it.json +1 -1
  26. package/assets/esri/core/t9n/Units_ja.json +1 -1
  27. package/assets/esri/core/t9n/Units_ko.json +1 -1
  28. package/assets/esri/core/t9n/Units_lt.json +1 -1
  29. package/assets/esri/core/t9n/Units_lv.json +1 -1
  30. package/assets/esri/core/t9n/Units_nl.json +1 -1
  31. package/assets/esri/core/t9n/Units_no.json +1 -1
  32. package/assets/esri/core/t9n/Units_pl.json +1 -1
  33. package/assets/esri/core/t9n/Units_pt-BR.json +1 -1
  34. package/assets/esri/core/t9n/Units_pt-PT.json +1 -1
  35. package/assets/esri/core/t9n/Units_ro.json +1 -1
  36. package/assets/esri/core/t9n/Units_ru.json +1 -1
  37. package/assets/esri/core/t9n/Units_sk.json +1 -1
  38. package/assets/esri/core/t9n/Units_sl.json +1 -1
  39. package/assets/esri/core/t9n/Units_sr.json +1 -1
  40. package/assets/esri/core/t9n/Units_sv.json +1 -1
  41. package/assets/esri/core/t9n/Units_th.json +1 -1
  42. package/assets/esri/core/t9n/Units_tr.json +1 -1
  43. package/assets/esri/core/t9n/Units_uk.json +1 -1
  44. package/assets/esri/core/t9n/Units_vi.json +1 -1
  45. package/assets/esri/core/t9n/Units_zh-CN.json +1 -1
  46. package/assets/esri/core/t9n/Units_zh-HK.json +1 -1
  47. package/assets/esri/core/t9n/Units_zh-TW.json +1 -1
  48. package/assets/esri/core/workers/RemoteClient.js +1 -1
  49. package/assets/esri/core/workers/chunks/01ba5319cac3e0f14205.js +1 -0
  50. package/assets/esri/core/workers/chunks/0418b5c9d06f3585c035.js +2 -0
  51. package/assets/esri/core/workers/chunks/{b045bffb4f2eb9203183.js → 05e1f1628a3726eca03d.js} +1 -1
  52. package/assets/esri/core/workers/chunks/08dfe61c75f0032db4d4.js +1 -0
  53. package/assets/esri/core/workers/chunks/0b45d34938fa7862f746.js +1 -0
  54. package/assets/esri/core/workers/chunks/0e94786db78770868c63.js +2 -0
  55. package/assets/esri/core/workers/chunks/{81e3bd1a0634ddc2b833.js → 0f10d7d592c36ee2d1ea.js} +1 -1
  56. package/assets/esri/core/workers/chunks/{38cfedce779dd75bd217.js → 10b668186063770d63bd.js} +1 -1
  57. package/assets/esri/core/workers/chunks/11c3b1e8ca21ad62fdd1.js +1 -0
  58. package/assets/esri/core/workers/chunks/152193072c9d3487b47a.js +1 -0
  59. package/assets/esri/core/workers/chunks/{c187bc997bad61b6c6e9.js → 18d1ac2165a84c42e98f.js} +1 -1
  60. package/assets/esri/core/workers/chunks/{0b169bb1969f86232a1a.js → 1b03e10a6b721365acbb.js} +1 -1
  61. package/assets/esri/core/workers/chunks/1bd49e8d2657c72bf3f9.js +1 -0
  62. package/assets/esri/core/workers/chunks/1d2609ce6220b5af5526.js +1 -0
  63. package/assets/esri/core/workers/chunks/1d38b2fcd85ac9ebd7c6.js +1 -0
  64. package/assets/esri/core/workers/chunks/{c2cd80b712f29e8cbb8d.js → 1ff57bf19f021f5fd246.js} +1 -1
  65. package/assets/esri/core/workers/chunks/{287f1441819c345f389e.js → 268243ee64d001009f78.js} +1 -1
  66. package/assets/esri/core/workers/chunks/26aa8190ac439f634c5b.js +1 -0
  67. package/assets/esri/core/workers/chunks/{73c355b895fd6a34fcb8.js → 2a8d791aef3123e6a3c4.js} +1 -1
  68. package/assets/esri/core/workers/chunks/2b781de7b467c61849b2.js +1 -0
  69. package/assets/esri/core/workers/chunks/{0e774f14ba274832f390.js → 2f5970e87e1e77f8362b.js} +1 -1
  70. package/assets/esri/core/workers/chunks/317bf48a4d513a9a2ff3.js +2 -0
  71. package/assets/esri/core/workers/chunks/33838536a7436b1d449e.js +1 -0
  72. package/assets/esri/core/workers/chunks/{03e93c18efc67a25ca63.js → 35c4037b8eea067d9638.js} +1 -1
  73. package/assets/esri/core/workers/chunks/{640abe600fa069ed7640.js → 395736b49abaaa1c3405.js} +1 -1
  74. package/assets/esri/core/workers/chunks/39a10b2092a98083f4cf.js +1 -0
  75. package/assets/esri/core/workers/chunks/3b74749db78bcba2bc16.js +1 -0
  76. package/assets/esri/core/workers/chunks/3b9174de370b187a0985.js +1 -0
  77. package/assets/esri/core/workers/chunks/3bd32387af52fa48d747.js +1 -0
  78. package/assets/esri/core/workers/chunks/3d4ad7c728e02aa90551.js +1 -0
  79. package/assets/esri/core/workers/chunks/3d4bb539bf939fcdeef9.js +1 -0
  80. package/assets/esri/core/workers/chunks/3dc6e9494af16f7b8009.js +1 -0
  81. package/assets/esri/core/workers/chunks/{d36b407f5ad5eabac530.js → 4d43619c73721946441b.js} +29 -29
  82. package/assets/esri/core/workers/chunks/4e59e5a5d0ff887ff899.js +1 -0
  83. package/assets/esri/core/workers/chunks/4efef5fa8bf23aaf34cd.js +1 -0
  84. package/assets/esri/core/workers/chunks/511b9c12a7479d39dac0.js +1 -0
  85. package/assets/esri/core/workers/chunks/51a53011478e0cf96e0b.js +1 -0
  86. package/assets/esri/core/workers/chunks/5481af25fd46914498df.js +1 -0
  87. package/assets/esri/core/workers/chunks/599bd80379423c99799d.js +1 -0
  88. package/assets/esri/core/workers/chunks/609edb4da427ec37bcf7.js +1 -0
  89. package/assets/esri/core/workers/chunks/60d4a3f770bb1e01cd10.js +1 -0
  90. package/assets/esri/core/workers/chunks/65cc9a48ac95523f7aa8.js +1 -0
  91. package/assets/esri/core/workers/chunks/66392ff750c28064040a.js +1 -0
  92. package/assets/esri/core/workers/chunks/668d84dc512b3085a960.js +1 -0
  93. package/assets/esri/core/workers/chunks/68b77b36daae2b4b4237.js +1 -0
  94. package/assets/esri/core/workers/chunks/6a54dddafb6763bf287e.js +1 -0
  95. package/assets/esri/core/workers/chunks/{f0556a695d080454b8da.js → 6af021050d5d04be7a20.js} +1 -1
  96. package/assets/esri/core/workers/chunks/6f5a82388a5eb5fcf1b7.js +1 -0
  97. package/assets/esri/core/workers/chunks/70b5e0fce22122a7ccc2.js +1 -0
  98. package/assets/esri/core/workers/chunks/{8244b74e9c3a30d8d2f6.js → 7361ca78a605eda41a2f.js} +2 -2
  99. package/assets/esri/core/workers/chunks/73b0edabddbb72fe1104.js +1 -0
  100. package/assets/esri/core/workers/chunks/{8b0a01ebc86ab226f01f.js → 75b4c27ca02b124a713c.js} +1 -1
  101. package/assets/esri/core/workers/chunks/7a997ac153181a8f71ef.js +1 -0
  102. package/assets/esri/core/workers/chunks/7f849c8255140be6097f.js +1 -0
  103. package/assets/esri/core/workers/chunks/831455798b177678720c.js +1 -0
  104. package/assets/esri/core/workers/chunks/84a0bb53fcbd99b5aa0c.js +1 -0
  105. package/assets/esri/core/workers/chunks/{9331969046f2b277d620.js → 8a39dd585742960d3ca2.js} +1 -1
  106. package/assets/esri/core/workers/chunks/{5cb1b950249d651f3837.js → 8dcb3e77f76d8396706b.js} +1 -1
  107. package/assets/esri/core/workers/chunks/8f25d91ea7b99597124e.js +1 -0
  108. package/assets/esri/core/workers/chunks/92341f36a8b15f34bcca.js +1 -0
  109. package/assets/esri/core/workers/chunks/{bf706a5d065a357de51b.js → 993fee0e91303eb1f01f.js} +1 -1
  110. package/assets/esri/core/workers/chunks/9da1a514e042eb642d35.js +1 -0
  111. package/assets/esri/core/workers/chunks/9f93c29af2a18f7cb160.js +1 -0
  112. package/assets/esri/core/workers/chunks/{f25bb204cf6727f6fdef.js → a0876a52a3c2ad849370.js} +1 -1
  113. package/assets/esri/core/workers/chunks/a1509e2e7809b6754b4f.js +1 -0
  114. package/assets/esri/core/workers/chunks/a18cb809dd56c5537b3b.js +1 -0
  115. package/assets/esri/core/workers/chunks/{52175ff9e8c2c136f90a.js → a3ecde3794a7db3cf283.js} +1 -1
  116. package/assets/esri/core/workers/chunks/{bfd1aef8ac795e1ce227.js → a892b3be70f482bef0ba.js} +1 -1
  117. package/assets/esri/core/workers/chunks/a8ef7acb6d3d1f45e14c.js +1 -0
  118. package/assets/esri/core/workers/chunks/{1436e378d975345686aa.js → aac27340f93ab69f3a9c.js} +1 -1
  119. package/assets/esri/core/workers/chunks/ac16016964be3b684e98.js +30 -0
  120. package/assets/esri/core/workers/chunks/ac7ecd90330090c90005.js +1 -0
  121. package/assets/esri/core/workers/chunks/b076e0ca68ea80bc2559.js +1 -0
  122. package/assets/esri/core/workers/chunks/b1524f23e6cee5301a14.js +1 -0
  123. package/assets/esri/core/workers/chunks/{c983e5ce0ff952b65d7f.js → b2b342b06d502fc61ea5.js} +1 -1
  124. package/assets/esri/core/workers/chunks/{b7e363c14919698f5b65.js → b5017e83a99a8051f212.js} +1 -1
  125. package/assets/esri/core/workers/chunks/b75a4753cea6544da8bb.js +1 -0
  126. package/assets/esri/core/workers/chunks/b775a0d8894930af4983.js +1 -0
  127. package/assets/esri/core/workers/chunks/bb012e02ae197bd1d9de.js +1 -0
  128. package/assets/esri/core/workers/chunks/bbcad2fde838819ffc7b.js +1 -0
  129. package/assets/esri/core/workers/chunks/bc893c95c0ab7d4bb91e.js +1 -0
  130. package/assets/esri/core/workers/chunks/be1d2c3a61e6447fbbc7.js +1 -0
  131. package/assets/esri/core/workers/chunks/bf67e0f6064fb9d94ac8.js +1 -0
  132. package/assets/esri/core/workers/chunks/{97a654e8054302582a3b.js → bfa6f4c08e7571bb1f37.js} +1 -1
  133. package/assets/esri/core/workers/chunks/c2cbc2a920e6e199533a.js +1 -0
  134. package/assets/esri/core/workers/chunks/c9057b0ad2c2bae4a8ce.js +1 -0
  135. package/assets/esri/core/workers/chunks/cf9a132c4c37e62de3d7.js +1 -0
  136. package/assets/esri/core/workers/chunks/d2e94ecf08a56dd43311.js +1 -0
  137. package/assets/esri/core/workers/chunks/{03354e9256b2f77fd4f2.js → d6145cd7e7c5346f62ec.js} +1 -1
  138. package/assets/esri/core/workers/chunks/d6911e9453532501f460.js +1 -0
  139. package/assets/esri/core/workers/chunks/{886ae23a1d8fa21e531f.js → d750e4abeb777caa8c36.js} +1 -1
  140. package/assets/esri/core/workers/chunks/d7acbc2ddff4cee8a465.js +30 -0
  141. package/assets/esri/core/workers/chunks/d8242cf6fec7c7bb614c.js +261 -0
  142. package/assets/esri/core/workers/chunks/{d97c0c18202b8c578f8c.js → e5471373f89fd7cb9844.js} +1 -1
  143. package/assets/esri/core/workers/chunks/e9acc05b0cf9e05f31a8.js +1 -0
  144. package/assets/esri/core/workers/chunks/e9cd84ad0054e9fea448.js +1 -0
  145. package/assets/esri/core/workers/chunks/f321eaf3390ab443b14c.js +1 -0
  146. package/assets/esri/core/workers/chunks/f64241d613f56fbcd981.js +30 -0
  147. package/assets/esri/core/workers/chunks/f955b35337a08f9f747d.js +1 -0
  148. package/assets/esri/core/workers/chunks/{f75295cdd5e84eb97d5a.js → f9d583785b3b09ace222.js} +1 -1
  149. package/assets/esri/core/workers/chunks/fc4641f3c93f43c8c193.js +2 -0
  150. package/assets/esri/core/workers/chunks/fc73de97c618ca11eacb.js +1 -0
  151. package/assets/esri/core/workers/chunks/fe6385115d76e16e8da0.js +1 -0
  152. package/assets/esri/libs/parquet/pkg/bundle_bg.wasm +0 -0
  153. package/assets/esri/themes/base/widgets/_BatchAttributeForm.scss +62 -90
  154. package/assets/esri/themes/base/widgets/_OrientedImageryViewer.scss +0 -2
  155. package/assets/esri/themes/dark/main.css +1 -1
  156. package/assets/esri/themes/light/main.css +1 -1
  157. package/assets/esri/themes/light/view.css +1 -1
  158. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_ar.json +1 -1
  159. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_bg.json +1 -1
  160. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_bs.json +1 -1
  161. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_ca.json +1 -1
  162. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_cs.json +1 -1
  163. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_da.json +1 -1
  164. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_de.json +1 -1
  165. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_el.json +1 -1
  166. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_es.json +1 -1
  167. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_et.json +1 -1
  168. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_fi.json +1 -1
  169. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_fr.json +1 -1
  170. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_he.json +1 -1
  171. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_hr.json +1 -1
  172. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_hu.json +1 -1
  173. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_id.json +1 -1
  174. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_it.json +1 -1
  175. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_ja.json +1 -1
  176. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_ko.json +1 -1
  177. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_lt.json +1 -1
  178. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_lv.json +1 -1
  179. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_nl.json +1 -1
  180. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_no.json +1 -1
  181. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_pl.json +1 -1
  182. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_pt-BR.json +1 -1
  183. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_pt-PT.json +1 -1
  184. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_ro.json +1 -1
  185. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_ru.json +1 -1
  186. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_sk.json +1 -1
  187. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_sl.json +1 -1
  188. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_sr.json +1 -1
  189. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_sv.json +1 -1
  190. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_th.json +1 -1
  191. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_tr.json +1 -1
  192. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_uk.json +1 -1
  193. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_vi.json +1 -1
  194. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_zh-CN.json +1 -1
  195. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_zh-HK.json +1 -1
  196. package/assets/esri/views/3d/analysis/ShadowCast/t9n/ShadowCastAnalysis_zh-TW.json +1 -1
  197. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_ar.json +1 -1
  198. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_bg.json +1 -1
  199. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_bs.json +1 -1
  200. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_ca.json +1 -1
  201. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_cs.json +1 -1
  202. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_da.json +1 -1
  203. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_de.json +1 -1
  204. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_el.json +1 -1
  205. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_es.json +1 -1
  206. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_et.json +1 -1
  207. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_fi.json +1 -1
  208. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_fr.json +1 -1
  209. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_he.json +1 -1
  210. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_hr.json +1 -1
  211. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_hu.json +1 -1
  212. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_id.json +1 -1
  213. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_it.json +1 -1
  214. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_ja.json +1 -1
  215. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_ko.json +1 -1
  216. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_lt.json +1 -1
  217. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_lv.json +1 -1
  218. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_nl.json +1 -1
  219. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_no.json +1 -1
  220. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_pl.json +1 -1
  221. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_pt-BR.json +1 -1
  222. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_pt-PT.json +1 -1
  223. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_ro.json +1 -1
  224. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_ru.json +1 -1
  225. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_sk.json +1 -1
  226. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_sl.json +1 -1
  227. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_sr.json +1 -1
  228. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_sv.json +1 -1
  229. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_th.json +1 -1
  230. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_tr.json +1 -1
  231. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_uk.json +1 -1
  232. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_vi.json +1 -1
  233. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_zh-CN.json +1 -1
  234. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_zh-HK.json +1 -1
  235. package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_zh-TW.json +1 -1
  236. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ar.json +1 -1
  237. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_bg.json +1 -1
  238. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_bs.json +1 -1
  239. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ca.json +1 -1
  240. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_cs.json +1 -1
  241. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_da.json +1 -1
  242. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_de.json +1 -1
  243. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_el.json +1 -1
  244. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_es.json +1 -1
  245. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_et.json +1 -1
  246. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_fi.json +1 -1
  247. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_fr.json +1 -1
  248. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_he.json +1 -1
  249. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_hr.json +1 -1
  250. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_hu.json +1 -1
  251. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_id.json +1 -1
  252. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_it.json +1 -1
  253. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ja.json +1 -1
  254. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ko.json +1 -1
  255. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_lt.json +1 -1
  256. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_lv.json +1 -1
  257. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_nl.json +1 -1
  258. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_no.json +1 -1
  259. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_pl.json +1 -1
  260. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_pt-BR.json +1 -1
  261. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_pt-PT.json +1 -1
  262. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ro.json +1 -1
  263. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_ru.json +1 -1
  264. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sk.json +1 -1
  265. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sl.json +1 -1
  266. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sr.json +1 -1
  267. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_sv.json +1 -1
  268. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_th.json +1 -1
  269. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_tr.json +1 -1
  270. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_uk.json +1 -1
  271. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_vi.json +1 -1
  272. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_zh-CN.json +1 -1
  273. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_zh-HK.json +1 -1
  274. package/assets/esri/widgets/BatchAttributeForm/t9n/BatchAttributeForm_zh-TW.json +1 -1
  275. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_ar.json +1 -1
  276. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_bg.json +1 -1
  277. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_bs.json +1 -1
  278. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_ca.json +1 -1
  279. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_cs.json +1 -1
  280. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_da.json +1 -1
  281. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_de.json +1 -1
  282. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_el.json +1 -1
  283. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_es.json +1 -1
  284. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_et.json +1 -1
  285. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_fi.json +1 -1
  286. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_fr.json +1 -1
  287. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_he.json +1 -1
  288. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_hr.json +1 -1
  289. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_hu.json +1 -1
  290. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_id.json +1 -1
  291. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_it.json +1 -1
  292. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_ja.json +1 -1
  293. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_ko.json +1 -1
  294. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_lt.json +1 -1
  295. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_lv.json +1 -1
  296. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_nl.json +1 -1
  297. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_no.json +1 -1
  298. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_pl.json +1 -1
  299. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_pt-BR.json +1 -1
  300. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_pt-PT.json +1 -1
  301. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_ro.json +1 -1
  302. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_ru.json +1 -1
  303. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_sk.json +1 -1
  304. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_sl.json +1 -1
  305. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_sr.json +1 -1
  306. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_sv.json +1 -1
  307. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_th.json +1 -1
  308. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_tr.json +1 -1
  309. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_uk.json +1 -1
  310. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_vi.json +1 -1
  311. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_zh-CN.json +1 -1
  312. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_zh-HK.json +1 -1
  313. package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_zh-TW.json +1 -1
  314. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ar.json +1 -1
  315. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_bg.json +1 -1
  316. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_bs.json +1 -1
  317. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ca.json +1 -1
  318. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_cs.json +1 -1
  319. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_da.json +1 -1
  320. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_de.json +1 -1
  321. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_el.json +1 -1
  322. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_es.json +1 -1
  323. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_et.json +1 -1
  324. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_fi.json +1 -1
  325. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_fr.json +1 -1
  326. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_he.json +1 -1
  327. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_hr.json +1 -1
  328. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_hu.json +1 -1
  329. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_id.json +1 -1
  330. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_it.json +1 -1
  331. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ja.json +1 -1
  332. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ko.json +1 -1
  333. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_lt.json +1 -1
  334. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_lv.json +1 -1
  335. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_nl.json +1 -1
  336. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_no.json +1 -1
  337. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pl.json +1 -1
  338. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pt-BR.json +1 -1
  339. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_pt-PT.json +1 -1
  340. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ro.json +1 -1
  341. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_ru.json +1 -1
  342. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sk.json +1 -1
  343. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sl.json +1 -1
  344. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sr.json +1 -1
  345. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_sv.json +1 -1
  346. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_th.json +1 -1
  347. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_tr.json +1 -1
  348. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_uk.json +1 -1
  349. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_vi.json +1 -1
  350. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-CN.json +1 -1
  351. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-HK.json +1 -1
  352. package/assets/esri/widgets/OrientedImageryViewer/t9n/OrientedImageryViewer_zh-TW.json +1 -1
  353. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_ar.json +1 -1
  354. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_bg.json +1 -1
  355. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_bs.json +1 -1
  356. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_ca.json +1 -1
  357. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_cs.json +1 -1
  358. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_da.json +1 -1
  359. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_de.json +1 -1
  360. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_el.json +1 -1
  361. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_es.json +1 -1
  362. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_et.json +1 -1
  363. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_fi.json +1 -1
  364. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_fr.json +1 -1
  365. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_he.json +1 -1
  366. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_hr.json +1 -1
  367. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_hu.json +1 -1
  368. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_id.json +1 -1
  369. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_it.json +1 -1
  370. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_ja.json +1 -1
  371. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_ko.json +1 -1
  372. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_lt.json +1 -1
  373. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_lv.json +1 -1
  374. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_nl.json +1 -1
  375. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_no.json +1 -1
  376. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_pl.json +1 -1
  377. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_pt-BR.json +1 -1
  378. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_pt-PT.json +1 -1
  379. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_ro.json +1 -1
  380. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_ru.json +1 -1
  381. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_sk.json +1 -1
  382. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_sl.json +1 -1
  383. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_sr.json +1 -1
  384. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_sv.json +1 -1
  385. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_th.json +1 -1
  386. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_tr.json +1 -1
  387. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_uk.json +1 -1
  388. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_vi.json +1 -1
  389. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_zh-CN.json +1 -1
  390. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_zh-HK.json +1 -1
  391. package/assets/esri/widgets/VideoPlayer/t9n/VideoPlayer_zh-TW.json +1 -1
  392. package/chunks/ComponentShader.glsl.js +11 -11
  393. package/chunks/GaussianSplatComposition.glsl.js +1 -1
  394. package/chunks/GlobalIlluminationBlur.glsl.js +8 -8
  395. package/chunks/GlowComposition.glsl.js +1 -1
  396. package/chunks/OITBlend.glsl.js +1 -24
  397. package/chunks/OITBlendEmission.glsl.js +9 -9
  398. package/chunks/OITDimOpaque.glsl.js +3 -9
  399. package/chunks/bundle2.js +1 -1
  400. package/chunks/languageUtils.js +1 -1
  401. package/config.js +1 -1
  402. package/core/reactiveUtils.d.ts +410 -109
  403. package/core/screenUtils.js +1 -1
  404. package/editing/types.d.ts +2 -2
  405. package/form/elements/UtilityNetworkAssociationsElement.d.ts +0 -1
  406. package/geometry/support/aaBoundingRect.js +1 -1
  407. package/graphic/AnnotationFeatureGraphicOrigin.d.ts +5 -2
  408. package/graphic/AnnotationFeatureGraphicOrigin.js +1 -1
  409. package/graphic/DimensionFeatureGraphicOrigin.js +1 -1
  410. package/graphic/graphicOrigins.js +1 -1
  411. package/graphic/isAnnotationFeatureGraphicOrigin.d.ts +29 -0
  412. package/graphic/isAnnotationFeatureGraphicOrigin.js +2 -0
  413. package/graphic/isDimensionFeatureGraphicOrigin.d.ts +29 -0
  414. package/graphic/isDimensionFeatureGraphicOrigin.js +2 -0
  415. package/interfaces.d.ts +3 -3
  416. package/kernel.js +1 -1
  417. package/layers/AnnotationFeatureLayer.d.ts +73 -0
  418. package/layers/AnnotationFeatureLayer.js +1 -1
  419. package/layers/Lyr3DWasmPerSceneView.js +1 -1
  420. package/layers/ParquetLayer.js +1 -1
  421. package/layers/graphics/applyEditsUtils.js +1 -1
  422. package/layers/graphics/data/QueryEngine.js +1 -1
  423. package/layers/graphics/sources/MemorySource.js +1 -1
  424. package/layers/graphics/sources/ParquetSource.js +1 -1
  425. package/layers/graphics/sources/parquet/ParquetFileStatistics.js +1 -1
  426. package/layers/graphics/sources/support/ParquetSourceWorker.js +1 -1
  427. package/layers/graphics/sources/support/parquetIdUtils.js +1 -1
  428. package/layers/mixins/OperationalLayer.js +1 -1
  429. package/layers/support/{AnnotationSublayer.d.ts → AnnotationFeatureSublayer.d.ts} +12 -12
  430. package/layers/support/AnnotationFeatureSublayer.js +2 -0
  431. package/layers/support/ExportImageServiceParameters.js +1 -1
  432. package/layers/support/ParquetPortalItemData.js +1 -1
  433. package/layers/support/layerUtils.js +1 -1
  434. package/layers/support/layersMapping.js +1 -1
  435. package/layers/support/parquetUtils.js +1 -1
  436. package/package.json +4 -4
  437. package/popup/Feature.d.ts +57 -6
  438. package/popup/Features.d.ts +86 -7
  439. package/popup/content/UtilityNetworkAssociationsContent.d.ts +0 -1
  440. package/popup/support/UtilityNetworkAssociationType.d.ts +0 -1
  441. package/rest/print.js +1 -1
  442. package/smartMapping/renderers/location.js +1 -1
  443. package/smartMapping/renderers/predominance.js +1 -1
  444. package/smartMapping/renderers/support/regenerateUtils.js +1 -1
  445. package/smartMapping/renderers/support/rendererUtils.d.ts +3 -1
  446. package/smartMapping/renderers/support/rendererUtils.js +1 -1
  447. package/support/revision.js +1 -1
  448. package/symbols/WebStyleSymbol.js +1 -1
  449. package/symbols/support/symbolUtils.js +1 -1
  450. package/symbols/support/webStyleSymbolCache.js +2 -0
  451. package/undoredo/support/ApplySet.js +1 -1
  452. package/undoredo/support/ApplySetItem.js +1 -1
  453. package/views/2d/analysis/AreaMeasurement/AreaMeasurementTool.js +1 -1
  454. package/views/2d/engine/vectorTiles/VectorTileContainer.js +1 -1
  455. package/views/2d/engine/webgl/TextureManager.js +1 -1
  456. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AAnimatedShader.js +1 -1
  457. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedMarkerMeshWriter.js +1 -1
  458. package/views/2d/engine/webgl/shaderGraph/techniques/animated/attributes.js +1 -1
  459. package/views/2d/engine/webgl/shaderGraph/techniques/vectorTiles/VTLTechniqueBackground.js +1 -1
  460. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  461. package/views/2d/engine/webgl/util/AnnotationMatcher.js +1 -1
  462. package/views/2d/layers/features/layerAdapters/AnnotationLayerAdapter.js +1 -1
  463. package/views/2d/layers/support/annodime/annotationGraphic.js +1 -1
  464. package/views/2d/layers/support/annodime/cimAnnotations.js +1 -1
  465. package/views/2d/layers/support/annodime/utils.js +1 -1
  466. package/views/2d/support/hitTestUtils.js +1 -1
  467. package/views/2d/unitBezier.js +1 -1
  468. package/views/3d/interactive/visualElements/DrapedVisualElementResources.js +1 -1
  469. package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
  470. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  471. package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
  472. package/views/3d/layers/graphics/Graphics3DSymbol.js +1 -1
  473. package/views/3d/layers/graphics/SymbolComplexity.js +1 -1
  474. package/views/3d/layers/graphics/defaultSymbolComplexity.js +1 -1
  475. package/views/3d/support/GaussianSplatSortWorker.js +1 -1
  476. package/views/3d/support/GaussianSplatWorkerHandle.js +1 -1
  477. package/views/3d/support/QualityProfile.js +1 -1
  478. package/views/3d/support/gaussianSplatting/GaussianSplatDataStore.js +1 -1
  479. package/views/3d/support/gaussianSplatting/GaussianSplatOrderTexture.js +1 -1
  480. package/views/3d/support/gaussianSplatting/GaussianSplatTextureAtlas.js +1 -1
  481. package/views/3d/webgl-engine/collections/Component/Material/ComponentShader.glsl.js +1 -1
  482. package/views/3d/webgl-engine/collections/Component/Material/ComponentTechnique.js +1 -1
  483. package/views/3d/webgl-engine/core/shaderLibrary/ShaderOutput.js +1 -1
  484. package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathEvaluate.glsl.js +14 -6
  485. package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexPosition.glsl.js +2 -1
  486. package/views/3d/webgl-engine/core/shaderLibrary/shading/Gamma.glsl.js +2 -2
  487. package/views/3d/webgl-engine/core/shaderLibrary/util/EmissionDimming.glsl.js +1 -1
  488. package/views/3d/webgl-engine/core/shaderLibrary/util/GaussianSplatTextureFetch.glsl.js +6 -8
  489. package/views/3d/webgl-engine/core/shaderTechnique/ShaderTechniqueRepository.js +1 -1
  490. package/views/3d/webgl-engine/effects/fog/FogTechniqueConfiguration.js +1 -1
  491. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationBlur.glsl.js +1 -1
  492. package/views/3d/webgl-engine/effects/glow/Glow.js +1 -1
  493. package/views/3d/webgl-engine/effects/glow/GlowBlurTechniqueConfiguration.js +1 -1
  494. package/views/3d/webgl-engine/effects/glow/GlowCompositionTechniqueConfiguration.js +1 -1
  495. package/views/3d/webgl-engine/effects/smaa/SMAA.js +1 -1
  496. package/views/3d/webgl-engine/effects/transparency/OITBlend.glsl.js +1 -1
  497. package/views/3d/webgl-engine/effects/transparency/OITBlend.js +1 -1
  498. package/views/3d/webgl-engine/effects/transparency/OITBlendEmission.glsl.js +1 -1
  499. package/views/3d/webgl-engine/effects/transparency/OITBlendEmissionTechnique.js +1 -1
  500. package/views/3d/webgl-engine/effects/transparency/OITBlendFragmentTechniqueConfiguration.js +2 -0
  501. package/views/3d/webgl-engine/effects/transparency/OITBlendTechnique.js +1 -1
  502. package/views/3d/webgl-engine/effects/transparency/OITBlendTechniqueConfiguration.js +1 -1
  503. package/views/3d/webgl-engine/effects/transparency/OITDimOpaque.glsl.js +1 -1
  504. package/views/3d/webgl-engine/effects/transparency/OITDimOpaqueTechnique.js +1 -1
  505. package/views/3d/webgl-engine/effects/transparency/oitBlendFragment.glsl.js +2 -0
  506. package/views/3d/webgl-engine/lib/Compositor.js +1 -1
  507. package/views/3d/webgl-engine/lib/GaussianSplatRenderNode.js +1 -1
  508. package/views/3d/webgl-engine/lib/Material.js +1 -1
  509. package/views/3d/webgl-engine/lib/OrderIndependentTransparency.js +1 -1
  510. package/views/3d/webgl-engine/lib/PathEvaluator.js +1 -1
  511. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  512. package/views/3d/webgl-engine/lib/lodRendering/LodComponentData.js +1 -1
  513. package/views/3d/webgl-engine/lib/lodRendering/LodLevel.js +1 -1
  514. package/views/3d/webgl-engine/lib/lodRendering/LodRenderer.js +1 -1
  515. package/views/3d/webgl-engine/materials/ColorMaterial.js +1 -1
  516. package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
  517. package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
  518. package/views/3d/webgl-engine/materials/PathTechnique.js +1 -1
  519. package/views/3d/webgl-engine/materials/PatternMaterial.js +1 -1
  520. package/views/3d/webgl-engine/materials/PolygonOffset.js +1 -1
  521. package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
  522. package/views/3d/webgl-engine/materials/renderers/MergedRenderer.js +1 -1
  523. package/views/3d/webgl-engine/shaders/GaussianSplatCompositionTechniqueConfiguration.js +1 -1
  524. package/views/3d/webgl-engine/shaders/HUDMaterialTechnique.js +1 -1
  525. package/views/3d/webgl-engine/shaders/OutputColorHighlightOLID.glsl.js +9 -10
  526. package/views/3d/webgl-engine/shaders/alphaCutoff.glsl.js +1 -1
  527. package/views/3d/webgl-engine/shaders/ditherNoise.glsl.js +1 -1
  528. package/views/3d/webgl-engine/shaders/oitResolution.glsl.js +1 -1
  529. package/views/LinkChartView.d.ts +3 -1
  530. package/views/View2D.d.ts +5 -4
  531. package/views/draw/support/editingSessionUtils.js +1 -1
  532. package/webdoc/support/writeUtils.js +1 -1
  533. package/webscene/support/AlphaCutoff.js +1 -1
  534. package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.js +1 -1
  535. package/widgets/BatchAttributeForm/attachmentUtils.d.ts +9 -0
  536. package/widgets/BatchAttributeForm/attachmentUtils.js +1 -1
  537. package/widgets/BatchAttributeForm/css.js +1 -1
  538. package/widgets/BatchAttributeForm/inputs/AttachmentElementInput.d.ts +2 -2
  539. package/widgets/BatchAttributeForm/inputs/AttachmentElementInput.js +1 -1
  540. package/widgets/BatchAttributeForm/inputs/FieldInput.js +1 -1
  541. package/widgets/BatchAttributeForm/inputs/InputBase.js +1 -1
  542. package/widgets/BatchAttributeForm/inputs/RelationshipElementInput.js +1 -1
  543. package/widgets/BatchAttributeForm/inputs/support/attachmentValidationCriteriaState.d.ts +1 -1
  544. package/widgets/BatchAttributeForm/templates/support/createBatchFormTemplate.js +1 -1
  545. package/widgets/BatchAttributeForm/types.d.ts +91 -5
  546. package/widgets/BatchAttributeForm.js +1 -1
  547. package/widgets/Editor/CreateFeaturesWorkflow.js +1 -1
  548. package/widgets/Editor/Edits.js +1 -1
  549. package/widgets/Editor/MergeFeaturesWorkflow.js +1 -1
  550. package/widgets/Editor/SplitFeatureWorkflow.js +1 -1
  551. package/widgets/Editor/UpdateFeatureWorkflow.js +1 -1
  552. package/widgets/Editor/UpdateFeaturesWorkflow.js +1 -1
  553. package/widgets/Editor/support/SketchController.js +1 -1
  554. package/widgets/Editor/workflowUtils.js +1 -1
  555. package/widgets/Editor.js +1 -1
  556. package/widgets/Feature/FeatureViewModel.d.ts +0 -1
  557. package/widgets/FeatureForm/UtilityNetworkAssociationInput.d.ts +0 -1
  558. package/widgets/Features/FeaturesViewModel.d.ts +0 -1
  559. package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
  560. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  561. package/widgets/OrientedImageryViewer.js +1 -1
  562. package/widgets/Print/PrintViewModel.d.ts +11 -1
  563. package/widgets/Print/PrintViewModel.js +1 -1
  564. package/widgets/Sketch/SketchViewModel.d.ts +10 -1
  565. package/widgets/Sketch/SketchViewModel.js +1 -1
  566. package/assets/components/assets/icon/orientedImageryFullSuperimpose16.json +0 -1
  567. package/assets/components/assets/icon/orientedImageryFullSuperimpose24.json +0 -1
  568. package/assets/components/assets/icon/orientedImageryFullSuperimpose32.json +0 -1
  569. package/assets/components/assets/icon/orientedImageryHalfSuperimpose16.json +0 -1
  570. package/assets/components/assets/icon/orientedImageryHalfSuperimpose24.json +0 -1
  571. package/assets/components/assets/icon/orientedImageryHalfSuperimpose32.json +0 -1
  572. package/assets/components/assets/icon/orientedImagerySceneOnly16.json +0 -1
  573. package/assets/components/assets/icon/orientedImagerySceneOnly24.json +0 -1
  574. package/assets/components/assets/icon/orientedImagerySceneOnly32.json +0 -1
  575. package/assets/components/assets/icon/parquetFeatureLayer16.json +0 -1
  576. package/assets/components/assets/icon/parquetFeatureLayer24.json +0 -1
  577. package/assets/components/assets/icon/parquetFeatureLayer32.json +0 -1
  578. package/assets/esri/core/workers/chunks/02a94efda13d9b683272.js +0 -1
  579. package/assets/esri/core/workers/chunks/0803f022b5191171bc9c.js +0 -1
  580. package/assets/esri/core/workers/chunks/0acf8df4e9556d05136c.js +0 -1
  581. package/assets/esri/core/workers/chunks/0ded58ccb83f624f1460.js +0 -1
  582. package/assets/esri/core/workers/chunks/152f1c08197955224ad3.js +0 -1
  583. package/assets/esri/core/workers/chunks/19dcae83be0fc0aced02.js +0 -1
  584. package/assets/esri/core/workers/chunks/1a95370ddc22729ab3c6.js +0 -1
  585. package/assets/esri/core/workers/chunks/23d50c4478f40a7d62bf.js +0 -1
  586. package/assets/esri/core/workers/chunks/2623cd08487fdc9a94f1.js +0 -1
  587. package/assets/esri/core/workers/chunks/2b00229c238aae70b948.js +0 -1
  588. package/assets/esri/core/workers/chunks/2b814bb51704a5b4fdc2.js +0 -30
  589. package/assets/esri/core/workers/chunks/30f1909c5ef1835b8507.js +0 -1
  590. package/assets/esri/core/workers/chunks/3172d7fc23787a287191.js +0 -1
  591. package/assets/esri/core/workers/chunks/39596715e84d0da2f803.js +0 -30
  592. package/assets/esri/core/workers/chunks/3bdef4b9f86711ae48b3.js +0 -2
  593. package/assets/esri/core/workers/chunks/426b8e1e2eef2460851d.js +0 -1
  594. package/assets/esri/core/workers/chunks/44e52fe98ffafe6a2807.js +0 -1
  595. package/assets/esri/core/workers/chunks/4d09ef7c57ab7f9782fe.js +0 -1
  596. package/assets/esri/core/workers/chunks/5022413f5a41b5d435ea.js +0 -1
  597. package/assets/esri/core/workers/chunks/52afd43bbe23e358efb5.js +0 -1
  598. package/assets/esri/core/workers/chunks/59a60fa09b19a0b2f473.js +0 -1
  599. package/assets/esri/core/workers/chunks/59dafa1e1340ea4043e6.js +0 -1
  600. package/assets/esri/core/workers/chunks/6284eafe2c3b45a0e72a.js +0 -1
  601. package/assets/esri/core/workers/chunks/65f02eca694cc1c9f5a7.js +0 -1
  602. package/assets/esri/core/workers/chunks/6cab67fc7044ee9b863b.js +0 -1
  603. package/assets/esri/core/workers/chunks/6d616b66fb32904b55a1.js +0 -1
  604. package/assets/esri/core/workers/chunks/6d696beddcc5fbed5875.js +0 -1
  605. package/assets/esri/core/workers/chunks/6f125b4ed06c0022dee6.js +0 -1
  606. package/assets/esri/core/workers/chunks/6f4825c3ef1fe202ab82.js +0 -1
  607. package/assets/esri/core/workers/chunks/6f7193b9ff5942c0d354.js +0 -1
  608. package/assets/esri/core/workers/chunks/70737052bab29fcaa120.js +0 -1
  609. package/assets/esri/core/workers/chunks/72d67cc3a382e83bf1a2.js +0 -1
  610. package/assets/esri/core/workers/chunks/7cadb872b9ca96eedca5.js +0 -1
  611. package/assets/esri/core/workers/chunks/8486ef6c7076baf0348b.js +0 -1
  612. package/assets/esri/core/workers/chunks/851705cf276eae8d4d37.js +0 -1
  613. package/assets/esri/core/workers/chunks/882ee7ed8a3a0215f9b9.js +0 -1
  614. package/assets/esri/core/workers/chunks/8c443c52c846a096a250.js +0 -1
  615. package/assets/esri/core/workers/chunks/972ba277a27704d28357.js +0 -1
  616. package/assets/esri/core/workers/chunks/97d2bdbea39cbcf8fd0f.js +0 -1
  617. package/assets/esri/core/workers/chunks/9d27cc631bab8aa7479e.js +0 -1
  618. package/assets/esri/core/workers/chunks/9d5f7573bfe3b051daf1.js +0 -1
  619. package/assets/esri/core/workers/chunks/a0c00c6fe60db49b3ab9.js +0 -1
  620. package/assets/esri/core/workers/chunks/a2d7e8147dee6642029a.js +0 -2
  621. package/assets/esri/core/workers/chunks/a643a4751bbf4430bde2.js +0 -262
  622. package/assets/esri/core/workers/chunks/a9003fe5975cd554ba24.js +0 -1
  623. package/assets/esri/core/workers/chunks/aa02458ceb839b555ee1.js +0 -1
  624. package/assets/esri/core/workers/chunks/ab62724b80b3c478a597.js +0 -1
  625. package/assets/esri/core/workers/chunks/b44cf254585210578eab.js +0 -1
  626. package/assets/esri/core/workers/chunks/b9935cc8e2bd4045058a.js +0 -1
  627. package/assets/esri/core/workers/chunks/c216cd5d6b5d4fe4bab3.js +0 -2
  628. package/assets/esri/core/workers/chunks/c2a65de34f6a6c89c652.js +0 -1
  629. package/assets/esri/core/workers/chunks/c32430e99e8cd6e5f688.js +0 -1
  630. package/assets/esri/core/workers/chunks/c6d0b4875b6b8d6bc25a.js +0 -1
  631. package/assets/esri/core/workers/chunks/c80fc1b3048e8d58a1f8.js +0 -1
  632. package/assets/esri/core/workers/chunks/ca8c08659d82019d775d.js +0 -1
  633. package/assets/esri/core/workers/chunks/cf8ce21dc649021e97f6.js +0 -1
  634. package/assets/esri/core/workers/chunks/d1ccc5f2d8892328ab01.js +0 -2
  635. package/assets/esri/core/workers/chunks/d41caf20c26f80385265.js +0 -1
  636. package/assets/esri/core/workers/chunks/d52864823067e57a719a.js +0 -1
  637. package/assets/esri/core/workers/chunks/d5c35a75fd4c41def420.js +0 -1
  638. package/assets/esri/core/workers/chunks/d9d0a07245ee5117d2a0.js +0 -1
  639. package/assets/esri/core/workers/chunks/dd920a6f6422fa213eba.js +0 -1
  640. package/assets/esri/core/workers/chunks/df18b0a653b328d8d052.js +0 -1
  641. package/assets/esri/core/workers/chunks/e1505ec80b068011bdc5.js +0 -1
  642. package/assets/esri/core/workers/chunks/e16710ef178d64606a55.js +0 -1
  643. package/assets/esri/core/workers/chunks/e33d2ede6c9f1527d51b.js +0 -1
  644. package/assets/esri/core/workers/chunks/e5ef06c205d34df1e4bc.js +0 -1
  645. package/assets/esri/core/workers/chunks/e912b515704e20313e53.js +0 -1
  646. package/assets/esri/core/workers/chunks/eabeaab5c4810f999a4d.js +0 -1
  647. package/assets/esri/core/workers/chunks/ec723f8777b935c5e81a.js +0 -1
  648. package/assets/esri/core/workers/chunks/f590db684d88e72bd79b.js +0 -1
  649. package/assets/esri/core/workers/chunks/f622ae3887c85535e8ab.js +0 -30
  650. package/assets/esri/core/workers/chunks/fa3faec65882c5b6f1a0.js +0 -1
  651. package/layers/support/AnnotationSublayer.js +0 -2
  652. package/views/3d/webgl-engine/effects/transparency/OITBlendEmissionTechniqueConfiguration.js +0 -2
  653. package/views/3d/webgl-engine/effects/transparency/OITDimOpaqueTechniqueConfiguration.js +0 -2
  654. /package/assets/esri/core/workers/chunks/{3bdef4b9f86711ae48b3.js.LICENSE.txt → 0418b5c9d06f3585c035.js.LICENSE.txt} +0 -0
  655. /package/assets/esri/core/workers/chunks/{c216cd5d6b5d4fe4bab3.js.LICENSE.txt → 0e94786db78770868c63.js.LICENSE.txt} +0 -0
  656. /package/assets/esri/core/workers/chunks/{d1ccc5f2d8892328ab01.js.LICENSE.txt → 317bf48a4d513a9a2ff3.js.LICENSE.txt} +0 -0
  657. /package/assets/esri/core/workers/chunks/{8244b74e9c3a30d8d2f6.js.LICENSE.txt → 7361ca78a605eda41a2f.js.LICENSE.txt} +0 -0
  658. /package/assets/esri/core/workers/chunks/{a2d7e8147dee6642029a.js.LICENSE.txt → fc4641f3c93f43c8c193.js.LICENSE.txt} +0 -0
package/rest/print.js CHANGED
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{id as e}from"../kernel.js";import t from"../request.js";import{JSONMap as a}from"../core/jsonMap.js";import{createScreenPoint as i,pt2px as r,px2pt as n}from"../core/screenUtils.js";import{dataComponents as o,normalize as s}from"../core/urlUtils.js";import l from"../geometry/Polygon.js";import{collectLabelingFields as u}from"../layers/support/fieldUtils.js";import{getFloorFilterClause as c}from"../layers/support/floorFilterUtils.js";import{getSizeRangeAtScale as y}from"../renderers/visualVariables/support/visualVariableUtils.js";import{asValidOptions as f,findToken as p}from"./utils.js";import{execute as d}from"./geoprocessor/execute.js";import{submitJob as m}from"./geoprocessor/submitJob.js";import{formatJsonMap as g}from"./support/fileFormat.js";import{toJSON as b}from"./support/layoutTemplate.js";import{getVisibleLayerViews as h,isScreenshotRequired as w,isBingMapsLayer as S,isBlendLayer as I,getCopyright as x,getSelectionSymbol as v,createPointLayer as D,getContextBoundingBox as L,createPolygonLayer as T,createPolylineLayer as O,createMultipointLayer as V}from"./support/printTaskUtils.js";import E from"./support/PrintTemplate.js";import{toJSON as P}from"./support/reportTemplate.js";import M from"../symbols/WebStyleSymbol.js";import F from"../views/support/HighlightOptions.js";const k={Feet:"ft",Kilometers:"km",Meters:"m",Miles:"mi"},N=new a({esriFeet:"Feet",esriKilometers:"Kilometers",esriMeters:"Meters",esriMiles:"Miles"}),J=new a({esriExecutionTypeSynchronous:"sync",esriExecutionTypeAsynchronous:"async"}),R=new Map;async function j(e,t,a){const i=await U(e,a),r=await z(t,i);if("sync"===await A(e,a)){const{results:t}=await d(e,r,void 0,a);return t?.[0]?.value}const n=await m(e,r,void 0,a);await n.waitForJobCompletion({interval:t.updateDelay});const{value:o}=await n.fetchResultData("Output_File",null,a);return o}async function U(e,a){const i=G(e),r=R.get(i)??{gpServerUrl:i,legendLayerNameMap:{},legendLayers:[],screenshotLayers:[]};return r.gpMetadata??=(await t(i,f({f:"json"},a))).data,r.cimVersion=r.gpMetadata.cimVersion,r.webStyleCache??=new Map,R.set(i,r),r}async function A(e,t){return ve(await U(e,t))}async function C(e,a){const i=await U(e,a),r=i.gpMetadata.tasks,n=i.gpServerUrl;if(i.taskInfos)return i.taskInfos;const o=(await t(e,f({f:"json"},a))).data;i.taskInfos={ExportWebMap:o};const s=r?.filter(e=>e!==o.name)??[];return await Promise.all(s.map(async e=>{const r=(await t(`${n}/${e}`,f({f:"json"},a))).data,o=r.name.startsWith("GetLayoutTemplatesInfo")?"GetLayoutTemplatesInfo":null;o&&(i.taskInfos[o]??=r)})),i.taskInfos}async function q(e,t,a){return(await C(e,a))[t]??null}async function _(e,t,a){const i=await q(e,t,a);return i?.executionType?J.fromJSON(i.executionType):"sync"}async function z(t,a){a=a||{is11xService:!1,legendLayerNameMap:{},legendLayers:[]};const i=t.template||new E;let r;null==i.showLabels&&(i.showLabels=!0),"pdf"===i.format&&(r={enablePdfAccessibility:!0});const n=b(i.layout),o=i.exportOptions;if(o){const e=o.dpi;if(r??={},r.dpi=e,"map_only"===n?.toLowerCase()||""===n){const{width:e,height:t}=o;r.outputSize=null!=e&&null!=t?[e,t]:void 0}}const s=i.layoutOptions;let l;if(s){let e,t;"Miles"===s.scalebarUnit||"Kilometers"===s.scalebarUnit?(e="Kilometers",t="Miles"):"Meters"!==s.scalebarUnit&&"Feet"!==s.scalebarUnit||(e="Meters",t="Feet"),l={titleText:s.titleText,authorText:s.authorText,copyrightText:s.copyrightText,customTextElements:s.customTextElements,elementOverrides:s.elementOverrides,scaleBarOptions:e||t?{metricUnit:N.toJSON(e)??void 0,metricLabel:e?k[e]:void 0,nonMetricUnit:N.toJSON(t)??void 0,nonMetricLabel:t?k[t]:void 0}:void 0}}const u=await $(t,i,a);if(u.operationalLayers){const e=new RegExp("[\\u4E00-\\u9FFF\\u0E00-\\u0E7F\\u0900-\\u097F\\u3040-\\u309F\\u30A0-\\u30FF\\u31F0-\\u31FF]"),t=/[\u0600-\u06FF]/,a=a=>{const i=a.text,r=a.font,n=r?.family?.toLowerCase();i&&r&&("arial"===n||"arial unicode ms"===n)&&(r.family=e.test(i)?"Arial Unicode MS":"Arial","normal"!==r.style&&t.test(i)&&(r.family="Arial Unicode MS"))};for(const i of u.operationalLayers)if(i.featureCollection?.layers)for(const e of i.featureCollection.layers){if(e.layerDefinition?.drawingInfo?.renderer?.symbol){const t=e.layerDefinition.drawingInfo.renderer;"esriTS"===t.symbol.type&&a(t.symbol)}if(e.featureSet?.features)for(const t of e.featureSet.features)t.symbol&&"esriTS"===t.symbol.type&&a(t.symbol)}}let c=null;s?.legendLayers&&(c=s.legendLayers.filter(e=>!a.screenshotLayers.includes(e.layerId)).map(e=>{const t=e.layerId;a.legendLayerNameMap[t]=e.title;const i={id:t};if(e.subLayerIds){i.subLayerIds=e.subLayerIds;const t=e.dynamicLegend;null!=t&&(i.subLayerDynamicLegends=e.subLayerIds.map(()=>t))}return null!=e.dynamicLegend&&(i.dynamicLegend=e.dynamicLegend),i})),t.outSpatialReference&&(u.mapOptions.spatialReference=t.outSpatialReference.toJSON()),t.datumTransformations?.length&&(u.mapOptions.datumTransformations=t.datumTransformations.map(e=>e.toJSON())),Object.assign(u,{exportOptions:r,layoutOptions:l||{}}),Object.assign(u.layoutOptions,{legendOptions:{operationalLayers:null!=c?c:a.legendLayers.slice()}}),a.legendLayers.length=0,a.screenshotLayers.length=0,R.set(a.gpServerUrl,a);const y={Web_Map_as_JSON:JSON.stringify(u),Format:g.toJSON(i.format),Layout_Template:n,Layout_Item_ID:void 0,Report_Template:P(i.report),Report_Item_ID:void 0};if(i.layoutItem){delete y.Layout_Template;const t=i.layoutItem;await t.load(),"public"!==t.access&&e&&await e.getCredential(a.gpServerUrl),y.Layout_Item_ID=JSON.stringify({id:t.id})}if(i.reportItem){delete y.Report_Template;const t=i.reportItem;await t.load(),"public"!==t.access&&e&&await e.getCredential(a.gpServerUrl),y.Report_Item_ID=JSON.stringify({id:t.id})}return t.extraParameters&&Object.assign(y,t.extraParameters),y}async function $(e,t,a){const i=e.view;let r=i.spatialReference;const n={operationalLayers:await W(i,t,a)};t.includeTables&&(n.tables=await ue(i));let o=e.extent||a.ssExtent||i.extent;if(r?.isWrappable&&(o=o.clone()._normalize(!0),r=o.spatialReference),n.mapOptions={extent:o&&o.toJSON(),spatialReference:r&&r.toJSON(),showAttribution:t.attributionVisible},a.ssExtent=null,i.background&&(n.background=i.background.toJSON()),i.rotation&&(n.mapOptions.rotation=-i.rotation),t.scalePreserved&&(n.mapOptions.scale=t.outScale||i.scale),null!=i.timeExtent){const e=null!=i.timeExtent.start?i.timeExtent.start.getTime():null,t=null!=i.timeExtent.end?i.timeExtent.end.getTime():null;n.mapOptions.time=[e,t]}return t.reportOptions&&(n.reportOptions=t.reportOptions),n}function G(e){let t=e;const a=t.lastIndexOf("/GPServer/");return a>0&&(t=t.slice(0,a+9)),t}async function W(e,t,a){const i=[];let r=0;t.scalePreserved&&(r=t.outScale||e.scale);const n={layerView:null,outScale:r,printTemplate:t,view:e},o=h(e,r);for(const s of o){const e=s.layer;if(!e.loaded||"layers"in e)continue;let t;n.layerView=s,t=w(s)?await oe(e,n,a):S(e)?B(e):"csv"===e?.type?await H(e,n,a):"catalog-footprint"===e?.type?await K(e,n,a):"feature"===e?.type?await X(e,n,a):"geojson"===e?.type?await Y(e,n,a):"graphics"===e?.type?await Z(e,n,a):"imagery"===e?.type?ee(e,a):"imagery-tile"===e?.type?await te(e,n,a):"kml"===e?.type?await ae(e,n,a):"map-image"===e?.type?ie(e,n,a):"map-notes"===e?.type?await re(n,a):"open-street-map"===e?.type?ne():"stream"===e?.type?await se(e,n,a):"subtype-group"===e?.type?await le(e,a):"tile"===e?.type?ce(e,a):"vector-tile"===e?.type?await ye(e,n,a):"web-tile"===e?.type?fe(e):"wfs"===e?.type?await pe(e,n,a):"wms"===e?.type?de(e,a):"wmts"===e?.type?me(e):await oe(e,n,a),t&&(Array.isArray(t)?i.push(...t):(t.id=e.id,t.title=a.legendLayerNameMap[e.id]||e.title,t.opacity=s.fullOpacity,t.minScale=e.minScale||0,t.maxScale=e.maxScale||0,I(e)&&e.blendMode&&"normal"!==e.blendMode&&(t.blendMode=e.blendMode),i.push(t)))}if(r)for(const s of i)s.minScale=0,s.maxScale=0;if(e.graphics?.length){const r=await Q(null,e.graphics,t,a);r&&i.push(r)}return i}function B(e){return{culture:e.culture,key:e.key,type:"BingMaps"+("aerial"===e.style?"Aerial":"hybrid"===e.style?"Hybrid":"Road")}}async function K(e,{layerView:t,printTemplate:a},i){if(parseFloat(i.cimVersion)<3.1){return Q(e,await Ie(t),a,i)}const r=e.parent,n={id:(o=xe(r,"web-map")).id,url:o.url,layerType:o.layerType,customParameters:o.customParameters,dynamicGroupLayer:{visibility:!1},footprintLayer:o.footprintLayer,layerDefinition:o.layerDefinition};var o;return ge(n,r),n}async function H(e,t,a){e.legendEnabled&&a.legendLayers.push({id:e.id});const i=t.layerView,r=t.printTemplate;if(!(i.filter||e.portalItem&&"public"!==e.portalItem.access)){const t=xe(e,"web-map");return t.type="CSV",delete t.popupInfo,delete t.layerType,t.showLabels=r.showLabels&&e.labelsVisible,t}return Q(e,await Ie(i),r,a)}async function Q(e,t,a,i){let r;const n=T(),o=O(),s=D(),c=V(),y=D();if(y.layerDefinition.name="textLayer",delete y.layerDefinition.drawingInfo,e){if("esri.layers.FeatureLayer"===e.declaredClass||"esri.layers.StreamLayer"===e.declaredClass?n.layerDefinition.name=o.layerDefinition.name=s.layerDefinition.name=c.layerDefinition.name=i.legendLayerNameMap[e.id]||e.arcgisProps?.title||e.title:"esri.layers.GraphicsLayer"===e.declaredClass&&(t=e.graphics.items),e.renderer){const t=e.renderer.toJSON(),a=n.layerDefinition.drawingInfo;a&&(a.renderer=t);const i=o.layerDefinition.drawingInfo;i&&(i.renderer=t);const r=s.layerDefinition.drawingInfo;r&&(r.renderer=t);const l=c.layerDefinition.drawingInfo;l&&(l.renderer=t)}if(a.showLabels&&e.labelsVisible&&"function"==typeof e.write){const t=xe(e),a=t.layerDefinition?.drawingInfo?.labelingInfo;if(a){r=!0;const e=n.layerDefinition.drawingInfo;e&&(e.labelingInfo=a);const t=o.layerDefinition.drawingInfo;t&&(t.labelingInfo=a);const i=s.layerDefinition.drawingInfo;i&&(i.labelingInfo=a);const l=c.layerDefinition.drawingInfo;l&&(l.labelingInfo=a)}}}let f;e?.renderer||r||(delete n.layerDefinition.drawingInfo,delete o.layerDefinition.drawingInfo,delete s.layerDefinition.drawingInfo,delete c.layerDefinition.drawingInfo);const p=e?.fieldsIndex,d=e?.renderer;if(p){const t=new Set;r&&await u(t,e),d&&"function"==typeof d.collectRequiredFields&&await d.collectRequiredFields(t,p),f=Array.from(t);const a=p.fields.map(e=>e.toJSON());n.layerDefinition.fields=a,o.layerDefinition.fields=a,s.layerDefinition.fields=a,c.layerDefinition.fields=a}const m=t?.length;let g;for(let u=0;u<m;u++){const e=t[u]||t.at(u);if(!1!==e.visible&&e.geometry){if(g=e.toJSON(),g.hasOwnProperty("popupTemplate")&&delete g.popupTemplate,g.geometry?.z&&delete g.geometry.z,g.symbol&&(g.symbol.angle||delete g.symbol.angle,De(g.symbol)?g.symbol=await be(g.symbol,i):g.symbol.text&&delete g.attributes),(!a||!a.forceFeatureAttributes)&&f?.length){const e={};for(const t of f)g.attributes?.hasOwnProperty(t)&&(e[t]=g.attributes[t]);g.attributes=e}"polygon"===e.geometry.type?n.featureSet.features.push(g):"polyline"===e.geometry.type?o.featureSet.features.push(g):"point"===e.geometry.type?g.symbol?.text?y.featureSet.features.push(g):s.featureSet.features.push(g):"multipoint"===e.geometry.type?c.featureSet.features.push(g):"extent"===e.geometry.type&&(g.geometry=l.fromExtent(e.geometry).toJSON(),n.featureSet.features.push(g))}}const b=[n,o,c,s,y].filter(e=>e.featureSet.features.length>0);for(const l of b){const e=l.featureSet.features.every(e=>e.symbol);if(e&&(!a||!a.forceFeatureAttributes))for(const t of l.featureSet.features)delete t.attributes;e&&delete l.layerDefinition.drawingInfo,l.layerDefinition.drawingInfo?.renderer&&(await Se(l.layerDefinition.drawingInfo.renderer,i),await he(l.layerDefinition.drawingInfo.renderer,i))}return b.length?{featureCollection:{layers:b},showLabels:r}:null}async function X(e,t,a){let i;const r=e.renderer,n=parseFloat(a.cimVersion);if("binning"===e.featureReduction?.type||"cluster"===e.featureReduction?.type&&(n<2.9||"pie-chart"===e.featureReduction.renderer?.type)||"pie-chart"===r?.type&&n<3.1||"dot-density"===r?.type&&n<2.6||"polygon"===e.geometryType&&r?.authoringInfo?.visualVariables?.some(e=>"spike"===e.theme))return oe(e,t,a);e.legendEnabled&&a.legendLayers.push({id:e.id});const o=t.layerView,{printTemplate:s,view:l}=t,u="feature-layer"!==e.source?.type&&"ogc-feature"!==e.source?.type;if(o.filter||u||!r||"field"in r&&null!=r.field&&!e.getField(r.field)){const t=await Ie(o);i=await Q(e,t,s,a)}else{if(i={id:(f=xe(e)).id,title:f.title,url:f.url,layerType:f.layerType,customParameters:f.customParameters,layerDefinition:f.layerDefinition,charts:s.includeCharts?f.charts:void 0},s.attributionVisible&&(i.credits=x(e)),i.showLabels=s.showLabels&&e.labelsVisible&&!!e.labelingInfo&&e.labelingInfo.length>0,ge(i,e),delete i.layerDefinition?.featureReduction?.disablePopup,delete i.layerDefinition?.featureReduction?.popupInfo,o.displayFilterEnabled||delete i.layerDefinition?.displayFilterInfo,i.layerDefinition?.drawingInfo?.renderer&&(delete i.layerDefinition.minScale,delete i.layerDefinition.maxScale,await Se(i.layerDefinition.drawingInfo.renderer,a),await he(i.layerDefinition.drawingInfo.renderer,a),"visualVariables"in r&&r.visualVariables?.[0])){const e=r.visualVariables[0];if("size"===e.type&&e.maxSize&&"number"!=typeof e.maxSize&&e.minSize&&"number"!=typeof e.minSize){const t=y(e,l.scale);i.layerDefinition.drawingInfo.renderer.visualVariables[0].minSize=t.minSize,i.layerDefinition.drawingInfo.renderer.visualVariables[0].maxSize=t.maxSize}}const t=c(o);if(t&&(i.layerDefinition??={},i.layerDefinition.definitionExpression=i.layerDefinition.definitionExpression?`(${i.layerDefinition.definitionExpression}) AND (${t})`:t),e.gdbVersion&&(i.layerDefinition??={},i.layerDefinition.gdbVersion=e.gdbVersion),o.hasHighlight&&"highlightIds"in o){const t=o;i.selectionObjectIds=t.highlightIds;const a=t.highlightOptions??l.defaultHighlight??new F;i.selectionSymbol=v(e.geometryType,a)}}var f;return i}async function Y(e,t,a){if("binning"===e.featureReduction?.type||"cluster"===e.featureReduction?.type)return oe(e,t,a);e.legendEnabled&&a.legendLayers.push({id:e.id});return Q(e,await Ie(t.layerView),t.printTemplate,a)}async function Z(e,{printTemplate:t},a){return Q(e,null,t,a)}function ee(e,t){e.legendEnabled&&t.legendLayers.push({id:e.id});const a={layerType:(i=xe(e)).layerType,customParameters:i.customParameters};var i;return a.bandIds=e.bandIds,a.compressionQuality=e.compressionQuality,a.format=e.format,a.interpolation=e.interpolation,(e.mosaicRule||e.definitionExpression)&&(a.mosaicRule=e.exportImageServiceParameters.mosaicRule.toJSON()),e.rasterFunction&&(a.renderingRule=e.rasterFunction.toJSON()),e.renderer&&(a.layerDefinition??={},a.layerDefinition.drawingInfo??={},a.layerDefinition.drawingInfo.renderer=e.renderer.toJSON()),ge(a,e),a}async function te(e,t,a){if("flow"===e.renderer?.type||!e.supportsWrite())return oe(e,t,a);e.legendEnabled&&a.legendLayers.push({id:e.id});const i={bandIds:(r=xe(e)).bandIds,customParameters:r.customParameters,interpolation:r.interpolation,layerDefinition:r.layerDefinition};var r;return i.layerType="ArcGISImageServiceLayer",ge(i,e),i}async function ae(e,t,a){const i=t.printTemplate;if(!e.portalItem||"public"===e.portalItem.access){const t=xe(e,"web-map");return t.type="kml",delete t.layerType,t.url=s(e.url),t}const r=[],n=t.layerView,o="data:image/png;base64,";n.allVisibleMapImages.forEach((t,a)=>{const i={id:`${e.id}_image${a}`,type:"image",title:e.id,minScale:e.minScale||0,maxScale:e.maxScale||0,opacity:n.fullOpacity,extent:t.extent};t.href.startsWith(o)?i.imageData=t.href.slice(o.length):i.url=t.href,r.push(i)});const l=[...n.allVisiblePoints.items,...n.allVisiblePolylines.items,...n.allVisiblePolygons.items],u={id:e.id,...await Q(null,l,i,a)};return r.push(u),r}function ie(e,{outScale:t,printTemplate:a,view:i},r){let n;const o={id:e.id,subLayerIds:[]};let s=[];const l=t||i.scale,u=e=>{const t=0===l,a=0===e.minScale||l<=e.minScale,i=0===e.maxScale||l>=e.maxScale;if(e.visible&&(t||a&&i))if(e.sublayers)e.sublayers.forEach(u);else{const t=e.toExportImageJSON(),a={id:e.id,name:e.title,layerDefinition:{definitionExpression:t.definitionExpression,drawingInfo:t.drawingInfo,orderBy:t.orderBy,source:t.source}};s.unshift(a),o.subLayerIds.push(e.id)}};var c;return e.sublayers?.forEach(u),s.length&&(s=s.map(({id:e,name:t,layerDefinition:a})=>({id:e,name:t,layerDefinition:a})),n={layerType:(c=xe(e)).layerType,customParameters:c.customParameters},n.layers=s,n.visibleLayers=e.capabilities?.exportMap?.supportsDynamicLayers?void 0:o.subLayerIds,a.attributionVisible&&(n.credits=x(e)),e.gdbVersion&&(n.gdbVersion=e.gdbVersion),ge(n,e),e.legendEnabled&&r.legendLayers.push(o)),n}async function re({layerView:e,printTemplate:t},a){const i=[],r=e.layer;if(null!=r.featureCollections)for(const n of r.featureCollections){const e=await Q(n,n.source,t,a);e&&i.push(...e.featureCollection.layers)}else if(null!=r.sublayers)for(const n of r.sublayers){const e=await Q(null,n.graphics,t,a);e&&i.push(...e.featureCollection.layers)}return{featureCollection:{layers:i}}}function ne(){return{type:"OpenStreetMap"}}async function oe(e,{printTemplate:t,view:a},r){const n={type:"image"};r.screenshotLayers.push(e.id);const s={format:"png",ignoreBackground:!0,ignorePadding:!0,layers:[e]};0!==a.rotation&&(s.rotation=0);const l=r.ssExtent||a.state.extent.clone();let u=96,c=!0,y=!0;if(t.exportOptions){const e=t.exportOptions;null!=e.dpi&&e.dpi>0&&(u=e.dpi),null!=e.width&&e.width>0&&(c=e.width%2==a.width%2),null!=e.height&&e.height>0&&(y=e.height%2==a.height%2)}if("map-only"===t.layout&&t.scalePreserved&&(!t.outScale||t.outScale===a.scale)&&96===u&&(!c||!y)&&a.state.extent.equals(a.extent)&&(s.area={x:0,y:0,width:a.width,height:a.height},c||(s.area.width-=1),y||(s.area.height-=1),!r.ssExtent)){const e=a.toMap(i(s.area.width,s.area.height));l.ymin=e.y,l.xmax=e.x,r.ssExtent=l}n.extent=l.clone()._normalize(!0).toJSON();const f=await a.takeScreenshot(s);return n.imageData=o(f.dataUrl)?.data,n}async function se(e,{layerView:t,printTemplate:a},i){e.legendEnabled&&i.legendLayers.push({id:e.id});return Q(e,await Ie(t),a,i)}async function le(e,t){if(e.legendEnabled)for(const r of e.sublayers)r.legendEnabled&&t.legendLayers.push({id:r.id});const a={customParameters:(i=xe(e)).customParameters,effect:i.effect,layerDefinition:i.layerDefinition,layerType:i.layerType,layers:i.layers,url:i.url};var i;if(ge(a,e),Array.isArray(a.layers)){for(const e of a.layers)delete e.popupInfo;a.token&&a.layers.length>0&&(a.layers[a.layers.length-1].token=a.token,delete a.token)}return a}async function ue(e){const t=[],a=[];for(const i of e.map.allTables)"feature"!==i.type||i.loaded||a.push(i.load());a.length&&await Promise.allSettled(a);for(const i of e.map.allTables)if("feature"===i.type&&i.loaded&&i.isTable&&"feature-layer"===i.source?.type){const e=(e=>({id:e.id,title:e.title,customParameters:e.customParameters,layerDefinition:{definitionExpression:e.layerDefinition?.definitionExpression},url:e.url}))(xe(i));ge(e,i),t.push(e)}return t.length?t:void 0}function ce(e,t){e.legendEnabled&&t.legendLayers.push({id:e.id});const a={layerType:(i=xe(e)).layerType,customParameters:i.customParameters};var i;return ge(a,e),a}async function ye(e,t,a){const i=t.layerView;if(e.serviceUrl&&e.styleUrl&&!i.spriteSourceChanged&&!i.styleChanged){const t=p(e.styleUrl,e.apiKey),i=p(e.serviceUrl,e.apiKey);if(!t&&!i||"2.1.0"!==a.cimVersion){const a={type:"VectorTileLayer"};return a.styleUrl=s(e.styleUrl),a.token=t,i!==t&&(a.additionalTokens=[{url:e.serviceUrl,token:i}]),a}}return oe(e,t,a)}function fe(e){const t=e.urlTemplate?.replaceAll("${","{"),a={type:"WebTiledLayer",urlTemplate:t,credits:e.copyright};return e.subDomains&&e.subDomains.length>0&&(a.subDomains=e.subDomains),a}async function pe(e,t,a){return parseFloat(a.cimVersion)<3.5?oe(e,t,a):(e.legendEnabled&&a.legendLayers.push({id:e.id}),{layerType:(i=xe(e,"web-map")).layerType,layerDefinition:i.layerDefinition,url:i.url,wfsInfo:i.wfsInfo});var i}function de(e,t){let a;const i=[],r=e=>{e.visible&&(e.sublayers?e.sublayers.forEach(r):e.name&&i.unshift(e.name))};return e.sublayers&&e.sublayers.forEach(r),i.length&&(e.legendEnabled&&t.legendLayers.push({id:e.id,subLayerIds:i}),a={type:"wms",customLayerParameters:e.customLayerParameters,customParameters:e.customParameters,transparentBackground:e.imageTransparency,visibleLayers:i,url:s(e.url),version:e.version}),a}function me(e){const t=e.activeLayer;return{type:"wmts",customLayerParameters:e.customLayerParameters,customParameters:e.customParameters,format:t.imageFormat,layer:t.id,style:t.styleId,tileMatrixSet:t.tileMatrixSetId,url:s(e.url)}}function ge(e,t){t.url&&(e.url=s(e.url||t.url),e.token=p(e.url,t.apiKey))}async function be(e,a){a.canvas||(a.canvas=document.createElement("canvas"));const i=1024;a.canvas.width=i,a.canvas.height=i;const o=a.canvas.getContext("2d");let s,l;if(e.path){const t=new Path2D(e.path);t.closePath(),o.fillStyle=Array.isArray(e.color)?`rgba(${e.color[0]},${e.color[1]},${e.color[2]},${e.color[3]/255})`:"rgb(0,0,0)",o.fill(t);const a=L(o);if(!a)return null;o.clearRect(0,0,i,i);const n=r(e.size)/Math.max(a.width,a.height);o.scale(n,n);const u=i/n,c=u/2-a.width/2-a.x,y=u/2-a.height/2-a.y;if(o.translate(c,y),Array.isArray(e.color)&&o.fill(t),e.outline?.width&&Array.isArray(e.outline.color)){const i=e.outline;o.lineWidth=r(i.width)/n,o.lineJoin="round",o.strokeStyle=`rgba(${i.color[0]},${i.color[1]},${i.color[2]},${i.color[3]/255})`,o.stroke(t),a.width+=o.lineWidth,a.height+=o.lineWidth}a.width*=n,a.height*=n;const f=o.getImageData(i/2-a.width/2,i/2-a.height/2,Math.ceil(a.width),Math.ceil(a.height));s=f.width,l=f.height,o.canvas.width=s,o.canvas.height=l,o.putImageData(f,0,0)}else{const a="image/svg+xml"===e.contentType?"data:image/svg+xml;base64,"+e.imageData:e.url,i=(await t(a,{responseType:"image"})).data;s=r(e.width),l=r(e.height),o.canvas.width=s,o.canvas.height=l,o.drawImage(i,0,0,o.canvas.width,o.canvas.height)}return{type:"esriPMS",imageData:o.canvas.toDataURL("image/png").slice(22),angle:e.angle,contentType:"image/png",height:n(l),width:n(s),xoffset:e.xoffset,yoffset:e.yoffset}}async function he(e,t){const a=e.type;if("simple"===a&&De(e.symbol))e.symbol=await be(e.symbol,t)??{type:"esriSMS",color:[0,0,0,0],size:0,style:"esriSMSSquare"};else if("uniqueValue"===a){if(De(e.defaultSymbol)&&(e.defaultSymbol=await be(e.defaultSymbol,t)),"uniqueValueInfos"in e&&e.uniqueValueInfos)for(const a of e.uniqueValueInfos)De(a.symbol)&&(a.symbol=await be(a.symbol,t));if("uniqueValueGroups"in e&&e.uniqueValueGroups)for(const a of e.uniqueValueGroups)for(const e of a.classes)De(e.symbol)&&(e.symbol=await be(e.symbol,t))}else if("classBreaks"===a){De(e.defaultSymbol)&&(e.defaultSymbol=await be(e.defaultSymbol,t));for(const a of e.classBreakInfos)De(a.symbol)&&(a.symbol=await be(a.symbol,t))}}async function we(e,t){if("styleSymbolReference"!==e?.type)return e;try{const a=await M.fromJSON(e).fetchSymbol({cache:t.webStyleCache});return a?.toJSON()??e}catch{return e}}async function Se(e,t){if("simple"===e.type&&e.symbol)e.symbol=await we(e.symbol,t);else if("uniqueValue"===e.type){if(e.defaultSymbol=await we(e.defaultSymbol,t),"uniqueValueInfos"in e&&e.uniqueValueInfos)for(const a of e.uniqueValueInfos)a.symbol=await we(a.symbol,t);if("uniqueValueGroups"in e&&e.uniqueValueGroups)for(const a of e.uniqueValueGroups)for(const e of a.classes)e.symbol=await we(e.symbol,t)}else if("classBreaks"===e.type){e.defaultSymbol=await we(e.defaultSymbol,t);for(const a of e.classBreakInfos)a.symbol=await we(a.symbol,t)}}async function Ie(e){return e.queryFeatures(e.createQuery()).then(e=>e.features)}function xe(e,t){return e.write({},{ignorePersistenceEnabled:!0,origin:t})??{}}function ve(e){return e.gpMetadata?.executionType?J.fromJSON(e.gpMetadata.executionType):"sync"}function De(e){return e&&(e.path||"image/svg+xml"===e.contentType||e.url?.endsWith(".svg"))}export{j as execute,z as getGpPrintParams,G as getGpServerUrl,A as getMode,_ as getTaskExecutionMode,q as getTaskInfo,C as getTaskInfos,R as printCacheMap};
2
+ import{id as e}from"../kernel.js";import t from"../request.js";import{JSONMap as a}from"../core/jsonMap.js";import{createScreenPoint as i,pt2px as r,px2pt as n}from"../core/screenUtils.js";import{dataComponents as o,normalize as s}from"../core/urlUtils.js";import l from"../geometry/Polygon.js";import{collectLabelingFields as u}from"../layers/support/fieldUtils.js";import{getFloorFilterClause as c}from"../layers/support/floorFilterUtils.js";import{getSizeRangeAtScale as y}from"../renderers/visualVariables/support/visualVariableUtils.js";import{asValidOptions as f,findToken as p}from"./utils.js";import{execute as d}from"./geoprocessor/execute.js";import{submitJob as m}from"./geoprocessor/submitJob.js";import{formatJsonMap as g}from"./support/fileFormat.js";import{toJSON as b}from"./support/layoutTemplate.js";import{getVisibleLayerViews as h,isScreenshotRequired as w,isBingMapsLayer as S,isBlendLayer as I,getCopyright as x,getSelectionSymbol as v,createPointLayer as D,getContextBoundingBox as L,createPolygonLayer as T,createPolylineLayer as O,createMultipointLayer as V}from"./support/printTaskUtils.js";import E from"./support/PrintTemplate.js";import{toJSON as P}from"./support/reportTemplate.js";import M from"../symbols/WebStyleSymbol.js";import F from"../views/support/HighlightOptions.js";const k={Feet:"ft",Kilometers:"km",Meters:"m",Miles:"mi"},N=new a({esriFeet:"Feet",esriKilometers:"Kilometers",esriMeters:"Meters",esriMiles:"Miles"}),J=new a({esriExecutionTypeSynchronous:"sync",esriExecutionTypeAsynchronous:"async"}),R=new Map;async function j(e,t,a){const i=await U(e,a),r=await z(t,i);if("sync"===await A(e,a)){const{results:t}=await d(e,r,void 0,a);return t?.[0]?.value}const n=await m(e,r,void 0,a);await n.waitForJobCompletion({interval:t.updateDelay});const{value:o}=await n.fetchResultData("Output_File",null,a);return o}async function U(e,a){const i=G(e),r=R.get(i)??{gpServerUrl:i,legendLayerNameMap:{},legendLayers:[],screenshotLayers:[]};return r.gpMetadata??=(await t(i,f({f:"json"},a))).data,r.cimVersion=r.gpMetadata.cimVersion,R.set(i,r),r}async function A(e,t){return ve(await U(e,t))}async function C(e,a){const i=await U(e,a),r=i.gpMetadata.tasks,n=i.gpServerUrl;if(i.taskInfos)return i.taskInfos;const o=(await t(e,f({f:"json"},a))).data;i.taskInfos={ExportWebMap:o};const s=r?.filter(e=>e!==o.name)??[];return await Promise.all(s.map(async e=>{const r=(await t(`${n}/${e}`,f({f:"json"},a))).data,o=r.name.startsWith("GetLayoutTemplatesInfo")?"GetLayoutTemplatesInfo":null;o&&(i.taskInfos[o]??=r)})),i.taskInfos}async function q(e,t,a){return(await C(e,a))[t]??null}async function _(e,t,a){const i=await q(e,t,a);return i?.executionType?J.fromJSON(i.executionType):"sync"}async function z(t,a){a=a||{is11xService:!1,legendLayerNameMap:{},legendLayers:[]};const i=t.template||new E;let r;null==i.showLabels&&(i.showLabels=!0),"pdf"===i.format&&(r={enablePdfAccessibility:!0});const n=b(i.layout),o=i.exportOptions;if(o){const e=o.dpi;if(r??={},r.dpi=e,"map_only"===n?.toLowerCase()||""===n){const{width:e,height:t}=o;r.outputSize=null!=e&&null!=t?[e,t]:void 0}}const s=i.layoutOptions;let l;if(s){let e,t;"Miles"===s.scalebarUnit||"Kilometers"===s.scalebarUnit?(e="Kilometers",t="Miles"):"Meters"!==s.scalebarUnit&&"Feet"!==s.scalebarUnit||(e="Meters",t="Feet"),l={titleText:s.titleText,authorText:s.authorText,copyrightText:s.copyrightText,customTextElements:s.customTextElements,elementOverrides:s.elementOverrides,scaleBarOptions:e||t?{metricUnit:N.toJSON(e)??void 0,metricLabel:e?k[e]:void 0,nonMetricUnit:N.toJSON(t)??void 0,nonMetricLabel:t?k[t]:void 0}:void 0}}const u=await $(t,i,a);if(u.operationalLayers){const e=new RegExp("[\\u4E00-\\u9FFF\\u0E00-\\u0E7F\\u0900-\\u097F\\u3040-\\u309F\\u30A0-\\u30FF\\u31F0-\\u31FF]"),t=/[\u0600-\u06FF]/,a=a=>{const i=a.text,r=a.font,n=r?.family?.toLowerCase();i&&r&&("arial"===n||"arial unicode ms"===n)&&(r.family=e.test(i)?"Arial Unicode MS":"Arial","normal"!==r.style&&t.test(i)&&(r.family="Arial Unicode MS"))};for(const i of u.operationalLayers)if(i.featureCollection?.layers)for(const e of i.featureCollection.layers){if(e.layerDefinition?.drawingInfo?.renderer?.symbol){const t=e.layerDefinition.drawingInfo.renderer;"esriTS"===t.symbol.type&&a(t.symbol)}if(e.featureSet?.features)for(const t of e.featureSet.features)t.symbol&&"esriTS"===t.symbol.type&&a(t.symbol)}}let c=null;s?.legendLayers&&(c=s.legendLayers.filter(e=>!a.screenshotLayers.includes(e.layerId)).map(e=>{const t=e.layerId;a.legendLayerNameMap[t]=e.title;const i={id:t};if(e.subLayerIds){i.subLayerIds=e.subLayerIds;const t=e.dynamicLegend;null!=t&&(i.subLayerDynamicLegends=e.subLayerIds.map(()=>t))}return null!=e.dynamicLegend&&(i.dynamicLegend=e.dynamicLegend),i})),t.outSpatialReference&&(u.mapOptions.spatialReference=t.outSpatialReference.toJSON()),t.datumTransformations?.length&&(u.mapOptions.datumTransformations=t.datumTransformations.map(e=>e.toJSON())),Object.assign(u,{exportOptions:r,layoutOptions:l||{}}),Object.assign(u.layoutOptions,{legendOptions:{operationalLayers:null!=c?c:a.legendLayers.slice()}}),a.legendLayers.length=0,a.screenshotLayers.length=0,R.set(a.gpServerUrl,a);const y={Web_Map_as_JSON:JSON.stringify(u),Format:g.toJSON(i.format),Layout_Template:n,Layout_Item_ID:void 0,Report_Template:P(i.report),Report_Item_ID:void 0};if(i.layoutItem){delete y.Layout_Template;const t=i.layoutItem;await t.load(),"public"!==t.access&&e&&await e.getCredential(a.gpServerUrl),y.Layout_Item_ID=JSON.stringify({id:t.id})}if(i.reportItem){delete y.Report_Template;const t=i.reportItem;await t.load(),"public"!==t.access&&e&&await e.getCredential(a.gpServerUrl),y.Report_Item_ID=JSON.stringify({id:t.id})}return t.extraParameters&&Object.assign(y,t.extraParameters),y}async function $(e,t,a){const i=e.view;let r=i.spatialReference;const n={operationalLayers:await W(i,t,a)};t.includeTables&&(n.tables=await ue(i));let o=e.extent||a.ssExtent||i.extent;if(r?.isWrappable&&(o=o.clone()._normalize(!0),r=o.spatialReference),n.mapOptions={extent:o&&o.toJSON(),spatialReference:r&&r.toJSON(),showAttribution:t.attributionVisible},a.ssExtent=null,i.background&&(n.background=i.background.toJSON()),i.rotation&&(n.mapOptions.rotation=-i.rotation),t.scalePreserved&&(n.mapOptions.scale=t.outScale||i.scale),null!=i.timeExtent){const e=null!=i.timeExtent.start?i.timeExtent.start.getTime():null,t=null!=i.timeExtent.end?i.timeExtent.end.getTime():null;n.mapOptions.time=[e,t]}return t.reportOptions&&(n.reportOptions=t.reportOptions),n}function G(e){let t=e;const a=t.lastIndexOf("/GPServer/");return a>0&&(t=t.slice(0,a+9)),t}async function W(e,t,a){const i=[];let r=0;t.scalePreserved&&(r=t.outScale||e.scale);const n={layerView:null,outScale:r,printTemplate:t,view:e},o=h(e,r);for(const s of o){const e=s.layer;if(!e.loaded||"layers"in e)continue;let t;n.layerView=s,t=w(s)?await oe(e,n,a):S(e)?B(e):"csv"===e?.type?await H(e,n,a):"catalog-footprint"===e?.type?await K(e,n,a):"feature"===e?.type?await X(e,n,a):"geojson"===e?.type?await Y(e,n,a):"graphics"===e?.type?await Z(e,n,a):"imagery"===e?.type?ee(e,a):"imagery-tile"===e?.type?await te(e,n,a):"kml"===e?.type?await ae(e,n,a):"map-image"===e?.type?ie(e,n,a):"map-notes"===e?.type?await re(n,a):"open-street-map"===e?.type?ne():"stream"===e?.type?await se(e,n,a):"subtype-group"===e?.type?await le(e,a):"tile"===e?.type?ce(e,a):"vector-tile"===e?.type?await ye(e,n,a):"web-tile"===e?.type?fe(e):"wfs"===e?.type?await pe(e,n,a):"wms"===e?.type?de(e,a):"wmts"===e?.type?me(e):await oe(e,n,a),t&&(Array.isArray(t)?i.push(...t):(t.id=e.id,t.title=a.legendLayerNameMap[e.id]||e.title,t.opacity=s.fullOpacity,t.minScale=e.minScale||0,t.maxScale=e.maxScale||0,I(e)&&e.blendMode&&"normal"!==e.blendMode&&(t.blendMode=e.blendMode),i.push(t)))}if(r)for(const s of i)s.minScale=0,s.maxScale=0;if(e.graphics?.length){const r=await Q(null,e.graphics,t,a);r&&i.push(r)}return i}function B(e){return{culture:e.culture,key:e.key,type:"BingMaps"+("aerial"===e.style?"Aerial":"hybrid"===e.style?"Hybrid":"Road")}}async function K(e,{layerView:t,printTemplate:a},i){if(parseFloat(i.cimVersion)<3.1){return Q(e,await Ie(t),a,i)}const r=e.parent,n={id:(o=xe(r,"web-map")).id,url:o.url,layerType:o.layerType,customParameters:o.customParameters,dynamicGroupLayer:{visibility:!1},footprintLayer:o.footprintLayer,layerDefinition:o.layerDefinition};var o;return ge(n,r),n}async function H(e,t,a){e.legendEnabled&&a.legendLayers.push({id:e.id});const i=t.layerView,r=t.printTemplate;if(!(i.filter||e.portalItem&&"public"!==e.portalItem.access)){const t=xe(e,"web-map");return t.type="CSV",delete t.popupInfo,delete t.layerType,t.showLabels=r.showLabels&&e.labelsVisible,t}return Q(e,await Ie(i),r,a)}async function Q(e,t,a,i){let r;const n=T(),o=O(),s=D(),c=V(),y=D();if(y.layerDefinition.name="textLayer",delete y.layerDefinition.drawingInfo,e){if("esri.layers.FeatureLayer"===e.declaredClass||"esri.layers.StreamLayer"===e.declaredClass?n.layerDefinition.name=o.layerDefinition.name=s.layerDefinition.name=c.layerDefinition.name=i.legendLayerNameMap[e.id]||e.arcgisProps?.title||e.title:"esri.layers.GraphicsLayer"===e.declaredClass&&(t=e.graphics.items),e.renderer){const t=e.renderer.toJSON(),a=n.layerDefinition.drawingInfo;a&&(a.renderer=t);const i=o.layerDefinition.drawingInfo;i&&(i.renderer=t);const r=s.layerDefinition.drawingInfo;r&&(r.renderer=t);const l=c.layerDefinition.drawingInfo;l&&(l.renderer=t)}if(a.showLabels&&e.labelsVisible&&"function"==typeof e.write){const t=xe(e),a=t.layerDefinition?.drawingInfo?.labelingInfo;if(a){r=!0;const e=n.layerDefinition.drawingInfo;e&&(e.labelingInfo=a);const t=o.layerDefinition.drawingInfo;t&&(t.labelingInfo=a);const i=s.layerDefinition.drawingInfo;i&&(i.labelingInfo=a);const l=c.layerDefinition.drawingInfo;l&&(l.labelingInfo=a)}}}let f;e?.renderer||r||(delete n.layerDefinition.drawingInfo,delete o.layerDefinition.drawingInfo,delete s.layerDefinition.drawingInfo,delete c.layerDefinition.drawingInfo);const p=e?.fieldsIndex,d=e?.renderer;if(p){const t=new Set;r&&await u(t,e),d&&"function"==typeof d.collectRequiredFields&&await d.collectRequiredFields(t,p),f=Array.from(t);const a=p.fields.map(e=>e.toJSON());n.layerDefinition.fields=a,o.layerDefinition.fields=a,s.layerDefinition.fields=a,c.layerDefinition.fields=a}const m=t?.length;let g;for(let u=0;u<m;u++){const e=t[u]||t.at(u);if(!1!==e.visible&&e.geometry){if(g=e.toJSON(),g.hasOwnProperty("popupTemplate")&&delete g.popupTemplate,g.geometry?.z&&delete g.geometry.z,g.symbol&&(g.symbol.angle||delete g.symbol.angle,De(g.symbol)?g.symbol=await be(g.symbol,i):g.symbol.text&&delete g.attributes),(!a||!a.forceFeatureAttributes)&&f?.length){const e={};for(const t of f)g.attributes?.hasOwnProperty(t)&&(e[t]=g.attributes[t]);g.attributes=e}"polygon"===e.geometry.type?n.featureSet.features.push(g):"polyline"===e.geometry.type?o.featureSet.features.push(g):"point"===e.geometry.type?g.symbol?.text?y.featureSet.features.push(g):s.featureSet.features.push(g):"multipoint"===e.geometry.type?c.featureSet.features.push(g):"extent"===e.geometry.type&&(g.geometry=l.fromExtent(e.geometry).toJSON(),n.featureSet.features.push(g))}}const b=[n,o,c,s,y].filter(e=>e.featureSet.features.length>0);for(const l of b){const e=l.featureSet.features.every(e=>e.symbol);if(e&&(!a||!a.forceFeatureAttributes))for(const t of l.featureSet.features)delete t.attributes;e&&delete l.layerDefinition.drawingInfo,l.layerDefinition.drawingInfo?.renderer&&(await Se(l.layerDefinition.drawingInfo.renderer),await he(l.layerDefinition.drawingInfo.renderer,i))}return b.length?{featureCollection:{layers:b},showLabels:r}:null}async function X(e,t,a){let i;const r=e.renderer,n=parseFloat(a.cimVersion);if("binning"===e.featureReduction?.type||"cluster"===e.featureReduction?.type&&(n<2.9||"pie-chart"===e.featureReduction.renderer?.type)||"pie-chart"===r?.type&&n<3.1||"dot-density"===r?.type&&n<2.6||"polygon"===e.geometryType&&r?.authoringInfo?.visualVariables?.some(e=>"spike"===e.theme))return oe(e,t,a);e.legendEnabled&&a.legendLayers.push({id:e.id});const o=t.layerView,{printTemplate:s,view:l}=t,u="feature-layer"!==e.source?.type&&"ogc-feature"!==e.source?.type;if(o.filter||u||!r||"field"in r&&null!=r.field&&!e.getField(r.field)){const t=await Ie(o);i=await Q(e,t,s,a)}else{if(i={id:(f=xe(e)).id,title:f.title,url:f.url,layerType:f.layerType,customParameters:f.customParameters,layerDefinition:f.layerDefinition,charts:s.includeCharts?f.charts:void 0},s.attributionVisible&&(i.credits=x(e)),i.showLabels=s.showLabels&&e.labelsVisible&&!!e.labelingInfo&&e.labelingInfo.length>0,ge(i,e),delete i.layerDefinition?.featureReduction?.disablePopup,delete i.layerDefinition?.featureReduction?.popupInfo,o.displayFilterEnabled||delete i.layerDefinition?.displayFilterInfo,i.layerDefinition?.drawingInfo?.renderer&&(delete i.layerDefinition.minScale,delete i.layerDefinition.maxScale,await Se(i.layerDefinition.drawingInfo.renderer),await he(i.layerDefinition.drawingInfo.renderer,a),"visualVariables"in r&&r.visualVariables?.[0])){const e=r.visualVariables[0];if("size"===e.type&&e.maxSize&&"number"!=typeof e.maxSize&&e.minSize&&"number"!=typeof e.minSize){const t=y(e,l.scale);i.layerDefinition.drawingInfo.renderer.visualVariables[0].minSize=t.minSize,i.layerDefinition.drawingInfo.renderer.visualVariables[0].maxSize=t.maxSize}}const t=c(o);if(t&&(i.layerDefinition??={},i.layerDefinition.definitionExpression=i.layerDefinition.definitionExpression?`(${i.layerDefinition.definitionExpression}) AND (${t})`:t),e.gdbVersion&&(i.layerDefinition??={},i.layerDefinition.gdbVersion=e.gdbVersion),o.hasHighlight&&"highlightIds"in o){const t=o;i.selectionObjectIds=t.highlightIds;const a=t.highlightOptions??l.defaultHighlight??new F;i.selectionSymbol=v(e.geometryType,a)}}var f;return i}async function Y(e,t,a){if("binning"===e.featureReduction?.type||"cluster"===e.featureReduction?.type)return oe(e,t,a);e.legendEnabled&&a.legendLayers.push({id:e.id});return Q(e,await Ie(t.layerView),t.printTemplate,a)}async function Z(e,{printTemplate:t},a){return Q(e,null,t,a)}function ee(e,t){e.legendEnabled&&t.legendLayers.push({id:e.id});const a={layerType:(i=xe(e)).layerType,customParameters:i.customParameters};var i;return a.bandIds=e.bandIds,a.compressionQuality=e.compressionQuality,a.format=e.format,a.interpolation=e.interpolation,(e.mosaicRule||e.definitionExpression)&&(a.mosaicRule=e.exportImageServiceParameters.mosaicRule.toJSON()),e.rasterFunction&&(a.renderingRule=e.rasterFunction.toJSON()),e.renderer&&(a.layerDefinition??={},a.layerDefinition.drawingInfo??={},a.layerDefinition.drawingInfo.renderer=e.renderer.toJSON()),ge(a,e),a}async function te(e,t,a){if("flow"===e.renderer?.type||!e.supportsWrite())return oe(e,t,a);e.legendEnabled&&a.legendLayers.push({id:e.id});const i={bandIds:(r=xe(e)).bandIds,customParameters:r.customParameters,interpolation:r.interpolation,layerDefinition:r.layerDefinition};var r;return i.layerType="ArcGISImageServiceLayer",ge(i,e),i}async function ae(e,t,a){const i=t.printTemplate;if(!e.portalItem||"public"===e.portalItem.access){const t=xe(e,"web-map");return t.type="kml",delete t.layerType,t.url=s(e.url),t}const r=[],n=t.layerView,o="data:image/png;base64,";n.allVisibleMapImages.forEach((t,a)=>{const i={id:`${e.id}_image${a}`,type:"image",title:e.id,minScale:e.minScale||0,maxScale:e.maxScale||0,opacity:n.fullOpacity,extent:t.extent};t.href.startsWith(o)?i.imageData=t.href.slice(o.length):i.url=t.href,r.push(i)});const l=[...n.allVisiblePoints.items,...n.allVisiblePolylines.items,...n.allVisiblePolygons.items],u={id:e.id,...await Q(null,l,i,a)};return r.push(u),r}function ie(e,{outScale:t,printTemplate:a,view:i},r){let n;const o={id:e.id,subLayerIds:[]};let s=[];const l=t||i.scale,u=e=>{const t=0===l,a=0===e.minScale||l<=e.minScale,i=0===e.maxScale||l>=e.maxScale;if(e.visible&&(t||a&&i))if(e.sublayers)e.sublayers.forEach(u);else{const t=e.toExportImageJSON(),a={id:e.id,name:e.title,layerDefinition:{definitionExpression:t.definitionExpression,drawingInfo:t.drawingInfo,orderBy:t.orderBy,source:t.source}};s.unshift(a),o.subLayerIds.push(e.id)}};var c;return e.sublayers?.forEach(u),s.length&&(s=s.map(({id:e,name:t,layerDefinition:a})=>({id:e,name:t,layerDefinition:a})),n={layerType:(c=xe(e)).layerType,customParameters:c.customParameters},n.layers=s,n.visibleLayers=e.capabilities?.exportMap?.supportsDynamicLayers?void 0:o.subLayerIds,a.attributionVisible&&(n.credits=x(e)),e.gdbVersion&&(n.gdbVersion=e.gdbVersion),ge(n,e),e.legendEnabled&&r.legendLayers.push(o)),n}async function re({layerView:e,printTemplate:t},a){const i=[],r=e.layer;if(null!=r.featureCollections)for(const n of r.featureCollections){const e=await Q(n,n.source,t,a);e&&i.push(...e.featureCollection.layers)}else if(null!=r.sublayers)for(const n of r.sublayers){const e=await Q(null,n.graphics,t,a);e&&i.push(...e.featureCollection.layers)}return{featureCollection:{layers:i}}}function ne(){return{type:"OpenStreetMap"}}async function oe(e,{printTemplate:t,view:a},r){const n={type:"image"};r.screenshotLayers.push(e.id);const s={format:"png",ignoreBackground:!0,ignorePadding:!0,layers:[e]};0!==a.rotation&&(s.rotation=0);const l=r.ssExtent||a.state.extent.clone();let u=96,c=!0,y=!0;if(t.exportOptions){const e=t.exportOptions;null!=e.dpi&&e.dpi>0&&(u=e.dpi),null!=e.width&&e.width>0&&(c=e.width%2==a.width%2),null!=e.height&&e.height>0&&(y=e.height%2==a.height%2)}if("map-only"===t.layout&&t.scalePreserved&&(!t.outScale||t.outScale===a.scale)&&96===u&&(!c||!y)&&a.state.extent.equals(a.extent)&&(s.area={x:0,y:0,width:a.width,height:a.height},c||(s.area.width-=1),y||(s.area.height-=1),!r.ssExtent)){const e=a.toMap(i(s.area.width,s.area.height));l.ymin=e.y,l.xmax=e.x,r.ssExtent=l}n.extent=l.clone()._normalize(!0).toJSON();const f=await a.takeScreenshot(s);return n.imageData=o(f.dataUrl)?.data,n}async function se(e,{layerView:t,printTemplate:a},i){e.legendEnabled&&i.legendLayers.push({id:e.id});return Q(e,await Ie(t),a,i)}async function le(e,t){if(e.legendEnabled)for(const r of e.sublayers)r.legendEnabled&&t.legendLayers.push({id:r.id});const a={customParameters:(i=xe(e)).customParameters,effect:i.effect,layerDefinition:i.layerDefinition,layerType:i.layerType,layers:i.layers,url:i.url};var i;if(ge(a,e),Array.isArray(a.layers)){for(const e of a.layers)delete e.popupInfo;a.token&&a.layers.length>0&&(a.layers[a.layers.length-1].token=a.token,delete a.token)}return a}async function ue(e){const t=[],a=[];for(const i of e.map.allTables)"feature"!==i.type||i.loaded||a.push(i.load());a.length&&await Promise.allSettled(a);for(const i of e.map.allTables)if("feature"===i.type&&i.loaded&&i.isTable&&"feature-layer"===i.source?.type){const e=(e=>({id:e.id,title:e.title,customParameters:e.customParameters,layerDefinition:{definitionExpression:e.layerDefinition?.definitionExpression},url:e.url}))(xe(i));ge(e,i),t.push(e)}return t.length?t:void 0}function ce(e,t){e.legendEnabled&&t.legendLayers.push({id:e.id});const a={layerType:(i=xe(e)).layerType,customParameters:i.customParameters};var i;return ge(a,e),a}async function ye(e,t,a){const i=t.layerView;if(e.serviceUrl&&e.styleUrl&&!i.spriteSourceChanged&&!i.styleChanged){const t=p(e.styleUrl,e.apiKey),i=p(e.serviceUrl,e.apiKey);if(!t&&!i||"2.1.0"!==a.cimVersion){const a={type:"VectorTileLayer"};return a.styleUrl=s(e.styleUrl),a.token=t,i!==t&&(a.additionalTokens=[{url:e.serviceUrl,token:i}]),a}}return oe(e,t,a)}function fe(e){const t=e.urlTemplate?.replaceAll("${","{"),a={type:"WebTiledLayer",urlTemplate:t,credits:e.copyright};return e.subDomains&&e.subDomains.length>0&&(a.subDomains=e.subDomains),a}async function pe(e,t,a){return parseFloat(a.cimVersion)<3.5?oe(e,t,a):(e.legendEnabled&&a.legendLayers.push({id:e.id}),{layerType:(i=xe(e,"web-map")).layerType,layerDefinition:i.layerDefinition,url:i.url,wfsInfo:i.wfsInfo});var i}function de(e,t){let a;const i=[],r=e=>{e.visible&&(e.sublayers?e.sublayers.forEach(r):e.name&&i.unshift(e.name))};return e.sublayers&&e.sublayers.forEach(r),i.length&&(e.legendEnabled&&t.legendLayers.push({id:e.id,subLayerIds:i}),a={type:"wms",customLayerParameters:e.customLayerParameters,customParameters:e.customParameters,transparentBackground:e.imageTransparency,visibleLayers:i,url:s(e.url),version:e.version}),a}function me(e){const t=e.activeLayer;return{type:"wmts",customLayerParameters:e.customLayerParameters,customParameters:e.customParameters,format:t.imageFormat,layer:t.id,style:t.styleId,tileMatrixSet:t.tileMatrixSetId,url:s(e.url)}}function ge(e,t){t.url&&(e.url=s(e.url||t.url),e.token=p(e.url,t.apiKey))}async function be(e,a){a.canvas||(a.canvas=document.createElement("canvas"));const i=1024;a.canvas.width=i,a.canvas.height=i;const o=a.canvas.getContext("2d");let s,l;if(e.path){const t=new Path2D(e.path);t.closePath(),o.fillStyle=Array.isArray(e.color)?`rgba(${e.color[0]},${e.color[1]},${e.color[2]},${e.color[3]/255})`:"rgb(0,0,0)",o.fill(t);const a=L(o);if(!a)return null;o.clearRect(0,0,i,i);const n=r(e.size)/Math.max(a.width,a.height);o.scale(n,n);const u=i/n,c=u/2-a.width/2-a.x,y=u/2-a.height/2-a.y;if(o.translate(c,y),Array.isArray(e.color)&&o.fill(t),e.outline?.width&&Array.isArray(e.outline.color)){const i=e.outline;o.lineWidth=r(i.width)/n,o.lineJoin="round",o.strokeStyle=`rgba(${i.color[0]},${i.color[1]},${i.color[2]},${i.color[3]/255})`,o.stroke(t),a.width+=o.lineWidth,a.height+=o.lineWidth}a.width*=n,a.height*=n;const f=o.getImageData(i/2-a.width/2,i/2-a.height/2,Math.ceil(a.width),Math.ceil(a.height));s=f.width,l=f.height,o.canvas.width=s,o.canvas.height=l,o.putImageData(f,0,0)}else{const a="image/svg+xml"===e.contentType?"data:image/svg+xml;base64,"+e.imageData:e.url,i=(await t(a,{responseType:"image"})).data;s=r(e.width),l=r(e.height),o.canvas.width=s,o.canvas.height=l,o.drawImage(i,0,0,o.canvas.width,o.canvas.height)}return{type:"esriPMS",imageData:o.canvas.toDataURL("image/png").slice(22),angle:e.angle,contentType:"image/png",height:n(l),width:n(s),xoffset:e.xoffset,yoffset:e.yoffset}}async function he(e,t){const a=e.type;if("simple"===a&&De(e.symbol))e.symbol=await be(e.symbol,t)??{type:"esriSMS",color:[0,0,0,0],size:0,style:"esriSMSSquare"};else if("uniqueValue"===a){if(De(e.defaultSymbol)&&(e.defaultSymbol=await be(e.defaultSymbol,t)),"uniqueValueInfos"in e&&e.uniqueValueInfos)for(const a of e.uniqueValueInfos)De(a.symbol)&&(a.symbol=await be(a.symbol,t));if("uniqueValueGroups"in e&&e.uniqueValueGroups)for(const a of e.uniqueValueGroups)for(const e of a.classes)De(e.symbol)&&(e.symbol=await be(e.symbol,t))}else if("classBreaks"===a){De(e.defaultSymbol)&&(e.defaultSymbol=await be(e.defaultSymbol,t));for(const a of e.classBreakInfos)De(a.symbol)&&(a.symbol=await be(a.symbol,t))}}async function we(e){if("styleSymbolReference"!==e?.type)return e;try{const t=await M.fromJSON(e).fetchSymbol();return t?.toJSON()??e}catch{return e}}async function Se(e){if("simple"===e.type&&e.symbol)e.symbol=await we(e.symbol);else if("uniqueValue"===e.type){if(e.defaultSymbol=await we(e.defaultSymbol),"uniqueValueInfos"in e&&e.uniqueValueInfos)for(const t of e.uniqueValueInfos)t.symbol=await we(t.symbol);if("uniqueValueGroups"in e&&e.uniqueValueGroups)for(const t of e.uniqueValueGroups)for(const e of t.classes)e.symbol=await we(e.symbol)}else if("classBreaks"===e.type){e.defaultSymbol=await we(e.defaultSymbol);for(const t of e.classBreakInfos)t.symbol=await we(t.symbol)}}async function Ie(e){return e.queryFeatures(e.createQuery()).then(e=>e.features)}function xe(e,t){return e.write({},{ignorePersistenceEnabled:!0,origin:t})??{}}function ve(e){return e.gpMetadata?.executionType?J.fromJSON(e.gpMetadata.executionType):"sync"}function De(e){return e&&(e.path||"image/svg+xml"===e.contentType||e.url?.endsWith(".svg"))}export{j as execute,z as getGpPrintParams,G as getGpServerUrl,A as getMode,U as getPrintCache,_ as getTaskExecutionMode,q as getTaskInfo,C as getTaskInfos,R as printCacheMap};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import e from"../../core/Error.js";import i from"../../renderers/SimpleRenderer.js";import o from"../heuristics/outline.js";import r from"../heuristics/sizeRange.js";import{errorCallback as a,createSymbol as n,getSymbolOutlineFromScheme as l,getSymbolSizeFromScheme as t,getBasemapInfo as s}from"./support/utils.js";import{verifyBinningParams as m}from"../support/binningUtils.js";import{binningCapableLayerTypes as p,featureCapableLayerTypes as c,createLayerAdapter as u,getLayerTypeLabels as y}from"../support/adapters/support/layerUtils.js";import{cloneScheme as d,getSchemes as b}from"../symbology/location.js";async function f(i){if(!i?.layer)throw new e("location-renderer:missing-parameters","'layer' parameter is required");i.forBinning&&m(i,"location-renderer");const o={...i,layer:i.layer};o.symbolType=o.symbolType||"2d";const r=i.forBinning?p:c,a=u(o.layer,r,i.forBinning);if(!a)throw new e("location-renderer:invalid-parameters","'layer' must be one of these types: "+y(r).join(", "));o.layer=a;const n=null!=o.signal?{signal:o.signal}:null;await a.load(n);const l=a.geometryType;o.outlineOptimizationEnabled="polygon"===l&&o.outlineOptimizationEnabled;const t="featureReduction"in i.layer&&"cluster"===i.layer.featureReduction?.type;if(o.sizeOptimizationEnabled=!("point"!==l&&"multipoint"!==l&&"polyline"!==l||t)&&o.sizeOptimizationEnabled,"mesh"===l)o.symbolType="3d-volumetric",o.colorMixMode=o.colorMixMode||"replace",o.edgesType=o.edgesType||"none";else{if("3d-volumetric-uniform"===o.symbolType&&"point"!==l)throw new e("location-renderer:not-supported","3d-volumetric-uniform symbols are supported for point layers only");if(o.symbolType.includes("3d-volumetric")&&"3d"!==o.view?.type)throw new e("location-renderer:invalid-parameters","'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or '3d-volumetric-uniform'")}return o}async function h(e,i){let o=e.locationScheme,r=null,a=null;const n=await s(e.basemap,e.view);if(r=null!=n.basemapId?n.basemapId:null,a=null!=n.basemapTheme?n.basemapTheme:null,o)return{scheme:d(o),basemapId:r,basemapTheme:a};const l=b({basemapTheme:a,geometryType:i,worldScale:!!e.symbolType?.includes("3d-volumetric"),view:e.view});return l&&(o=l.primaryScheme,r=l.basemapId,a=l.basemapTheme),{scheme:o,basemapId:r,basemapTheme:a}}async function w(s){const m=await f(s),p=m.layer.geometryType,c=await h(m,p),u=c.scheme;if(!u)throw new e("location-renderer:insufficient-info","Unable to find location scheme");const{view:y,layer:b,signal:w,filter:v}=m,[T,g]=await Promise.all([m.outlineOptimizationEnabled?o({view:y,layer:b,signal:w,filter:v}).catch(a):null,m.sizeOptimizationEnabled?r({view:y,layer:b,signal:w,filter:v}).catch(a):null]),z=T?.opacity,j=new i({symbol:n(p,{type:m.symbolType,color:u.color,size:t(u,p),outline:l(u,p,z),meshInfo:{colorMixMode:m.colorMixMode,edgesType:m.edgesType}})});return T?.visualVariables.length&&(j.visualVariables=T.visualVariables.map(e=>e.clone())),g?.minSize&&(j.visualVariables?j.visualVariables.push(g.minSize):j.visualVariables=[g.minSize]),{renderer:j,locationScheme:d(u),basemapId:c.basemapId,basemapTheme:c.basemapTheme}}export{w as createRenderer};
2
+ import e from"../../core/Error.js";import i from"../../renderers/SimpleRenderer.js";import a from"../heuristics/outline.js";import o from"../heuristics/sizeRange.js";import{getRendererToUpdate as r,spliceVisualVariables as n,findOutlineVVIndex as l,findScaleDependentSizeVVIndex as t}from"./support/regenerateUtils.js";import{errorCallback as s,createSymbol as m,getSymbolOutlineFromScheme as p,getSymbolSizeFromScheme as c,getBasemapInfo as u}from"./support/utils.js";import{verifyBinningParams as y}from"../support/binningUtils.js";import{binningCapableLayerTypes as d,featureCapableLayerTypes as b,createLayerAdapter as f,getLayerTypeLabels as h}from"../support/adapters/support/layerUtils.js";import{cloneScheme as w,getSchemes as v}from"../symbology/location.js";async function g(i){if(!i?.layer)throw new e("location-renderer:missing-parameters","'layer' parameter is required");i.forBinning&&y(i,"location-renderer");const a={...i,layer:i.layer};a.symbolType=a.symbolType||"2d";const o=i.forBinning?d:b,r=f(a.layer,o,i.forBinning);if(!r)throw new e("location-renderer:invalid-parameters","'layer' must be one of these types: "+h(o).join(", "));a.layer=r;const n=null!=a.signal?{signal:a.signal}:null;await r.load(n);const l=r.geometryType;a.outlineOptimizationEnabled="polygon"===l&&a.outlineOptimizationEnabled;const t="featureReduction"in i.layer&&"cluster"===i.layer.featureReduction?.type;if(a.sizeOptimizationEnabled=!("point"!==l&&"multipoint"!==l&&"polyline"!==l||t)&&a.sizeOptimizationEnabled,"mesh"===l)a.symbolType="3d-volumetric",a.colorMixMode=a.colorMixMode||"replace",a.edgesType=a.edgesType||"none";else{if("3d-volumetric-uniform"===a.symbolType&&"point"!==l)throw new e("location-renderer:not-supported","3d-volumetric-uniform symbols are supported for point layers only");if(a.symbolType.includes("3d-volumetric")&&"3d"!==a.view?.type)throw new e("location-renderer:invalid-parameters","'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or '3d-volumetric-uniform'")}return a}async function T(e,i){let a=e.locationScheme,o=null,r=null;const n=await u(e.basemap,e.view);if(o=null!=n.basemapId?n.basemapId:null,r=null!=n.basemapTheme?n.basemapTheme:null,a)return{scheme:w(a),basemapId:o,basemapTheme:r};const l=v({basemapTheme:r,geometryType:i,worldScale:!!e.symbolType?.includes("3d-volumetric"),view:e.view});return l&&(a=l.primaryScheme,o=l.basemapId,r=l.basemapTheme),{scheme:a,basemapId:o,basemapTheme:r}}async function z(r){const n=await g(r),l=n.layer.geometryType,t=await T(n,l),u=t.scheme;if(!u)throw new e("location-renderer:insufficient-info","Unable to find location scheme");const{view:y,layer:d,signal:b,filter:f}=n,[h,v]=await Promise.all([n.outlineOptimizationEnabled?a({view:y,layer:d,signal:b,filter:f}).catch(s):null,n.sizeOptimizationEnabled?o({view:y,layer:d,signal:b,filter:f}).catch(s):null]),z=h?.opacity,S=new i({symbol:m(l,{type:n.symbolType,color:u.color,size:c(u,l),outline:p(u,l,z),meshInfo:{colorMixMode:n.colorMixMode,edgesType:n.edgesType}})});return h?.visualVariables.length&&(S.visualVariables=h.visualVariables.map(e=>e.clone())),v?.minSize&&(S.visualVariables?S.visualVariables.push(v.minSize):S.visualVariables=[v.minSize]),{renderer:S,locationScheme:w(u),basemapId:t.basemapId,basemapTheme:t.basemapTheme}}async function S(i){const m=await r(i),p=await g({...i,view:i.view}),c=p.layer.geometryType,u=await T(p,c),y=u.scheme;if(!y)throw new e("location-renderer:insufficient-info","Unable to find location scheme");const{view:d,layer:b,signal:f,filter:h}=p,[v,z]=await Promise.all([p.outlineOptimizationEnabled?a({view:d,layer:b,signal:f,filter:h}).catch(s):null,p.sizeOptimizationEnabled?o({view:d,layer:b,signal:f,filter:h}).catch(s):null]);return n(m,v?.visualVariables,l),n(m,z?.minSize,t),{renderer:m,locationScheme:w(y),basemapId:u.basemapId,basemapTheme:u.basemapTheme}}export{z as createRenderer,S as regenerateRenderer};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{createUniqueColors as e}from"../../core/colorUtils.js";import i from"../../core/Error.js";import{fetchMessageBundle as a}from"../../intl/messages.js";import r from"../../renderers/support/AuthoringInfo.js";import n from"../../renderers/support/AuthoringInfoVisualVariable.js";import{round as l}from"../../renderers/support/numberUtils.js";import s from"../../renderers/visualVariables/OpacityVariable.js";import o from"../../renderers/visualVariables/support/OpacityStop.js";import t from"../../renderers/visualVariables/support/VisualVariableLegendOptions.js";import p from"../heuristics/outline.js";import{createVisualVariables as m}from"./size.js";import{createRenderer as d}from"./type.js";import{spliceVisualVariables as u,updateAuthoringInfoVisualVariable as c,processRegenerateParams as y,getRendererToUpdate as f,getStyleType as b,hasOutlineVV as g,hasScaleDependentSizeVV as h,isSizeVV as v,findOutlineVVIndex as w,findSizeVVIndex as z,findOpacityVVIndex as V}from"./support/regenerateUtils.js";import{errorCallback as T,verifyBasicFieldValidity as E,getBasemapInfo as S,createSymbol as O,getSymbolOutlineFromScheme as I,getSummaryStatistics as x}from"./support/utils.js";import j from"../statistics/predominantCategories.js";import{getPredominanceExpressions as M}from"../statistics/support/predominanceUtils.js";import{verifyBinningParams as q}from"../support/binningUtils.js";import{binningCapableLayerTypes as C,featureCapableLayerTypes as B,createLayerAdapter as U,getLayerTypeLabels as P}from"../support/adapters/support/layerUtils.js";import{cloneScheme as A,getSchemes as Q}from"../symbology/predominance.js";async function R(e){if(!(e?.layer&&e.view&&e.fields?.length))throw new i("predominance-renderer:missing-parameters","'layer', 'view' and 'fields' parameters are required");if(e.fields.length<2)throw new i("predominance-renderer:invalid-parameters","Minimum 2 fields are required");if(e.fields.length>10)throw new i("predominance-renderer:invalid-parameters","Maximum 10 fields are supported");e.forBinning&&q(e,"predominance-renderer");const a={...e,layer:e.layer,fields:e.fields};a.symbolType=a.symbolType||"2d",a.defaultSymbolEnabled??=!0,a.includeOpacityVariable=e.includeOpacityVariable||!1,a.includeSizeVariable=e.includeSizeVariable||!1,a.sortBy??="count";const r=e.forBinning?C:B,n=U(a.layer,r,e.forBinning);if(!n)throw new i("predominance-renderer:invalid-parameters","'layer' must be one of these types: "+P(B).join(", "));const l=null!=a.signal?{signal:a.signal}:null;await n.load(l);const s=n.geometryType,o=a.symbolType.includes("3d");if(a.outlineOptimizationEnabled="polygon"===s&&a.outlineOptimizationEnabled,!a.includeSizeVariable){const i="featureReduction"in e.layer&&"cluster"===e.layer.featureReduction?.type;a.sizeOptimizationEnabled=!("point"!==s&&"multipoint"!==s&&"polyline"!==s||i)&&a.sizeOptimizationEnabled}if("mesh"===s)a.symbolType="3d-volumetric",a.colorMixMode=a.colorMixMode||"replace",a.edgesType=a.edgesType||"none",a.sizeOptimizationEnabled=!1;else{if(o&&("polyline"===s||"polygon"===s))throw new i("predominance-renderer:not-supported","3d symbols are not supported for polyline and polygon layers");if(a.symbolType.includes("3d-volumetric")&&"3d"!==a.view?.type)throw new i("predominance-renderer:invalid-parameters","'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or '3d-volumetric-uniform'")}const t=a.fields.map(e=>e.name),p=E(n,t,"predominance-renderer:invalid-parameters");if(p)throw p;return{...a,layer:n}}async function W(e){const a="regenerate-predominance-renderer",r=e.includedParts?.includes("size-variable")??!0;await y(e,a);const n=await f(e);if("predominance"!==b(n))throw new i(`${a}:invalid-parameters`,"Renderer is invalid");const{visualVariables:l}=n,{layer:s,forBinning:o,filter:t,view:p,signal:m}=e,d=g(n),u=h(n),c=r&&l?.some(v),w=l?.some(e=>"opacity"===e.type),z=n.authoringInfo,V=z?.fields?.map(e=>({name:e}));if(!V?.length)throw new i(`${a}:invalid-parameters`,"Fields are required");const T=await R({layer:s,fields:V,outlineOptimizationEnabled:d,sizeOptimizationEnabled:u,includeSizeVariable:c,includeOpacityVariable:w,forBinning:o,filter:t,view:p,signal:m});return{...e,creatorParameters:T,renderer:n}}async function k(e){let i=e.predominanceScheme,a=null,r=null;const n=await S(e.basemap,e.view);if(a=null!=n.basemapId?n.basemapId:null,r=null!=n.basemapTheme?n.basemapTheme:null,i)return{scheme:A(i),basemapId:a,basemapTheme:r};const l=Q({basemapTheme:r,geometryType:e.geometryType,numColors:e.numColors,theme:e.theme,worldScale:e.worldScale,view:e.view});return l&&(i=l.primaryScheme,a=l.basemapId,r=l.basemapTheme),{scheme:i,basemapId:a,basemapTheme:r}}async function F(i,n,l,s){const o=await a("esri/smartMapping/t9n/smartMapping"),t=i.layer,{view:m,filter:u,signal:c}=i,[y,f]=await Promise.all([j({layer:t,fields:s,view:m,filter:u,signal:c}),i.outlineOptimizationEnabled?p({layer:t,view:m,filter:u,signal:c}).catch(T):null]);let b=y;y?.predominantCategoryInfos||(b={predominantCategoryInfos:s.map(e=>({value:e,count:0}))});const g=f?.opacity,h=await d({layer:t,basemap:i.basemap,valueExpression:n.valueExpression,valueExpressionTitle:o.predominantCategory,numTypes:-1,defaultSymbolEnabled:i.defaultSymbolEnabled,sortBy:i.sortBy,typeScheme:l,statistics:{uniqueValueInfos:b.predominantCategoryInfos},legendOptions:i.legendOptions,outlineOptimizationEnabled:!1,sizeOptimizationEnabled:(!i.includeSizeVariable||!i.sizeOptimizationEnabled)&&i.sizeOptimizationEnabled,symbolType:i.symbolType,colorMixMode:i.colorMixMode,edgesType:i.edgesType,filter:i.filter,view:i.view,signal:i.signal}),{renderer:v,basemapId:w,basemapTheme:z,uniqueValueInfos:V,excludedUniqueValueInfos:E}=h,S=v.uniqueValueInfos??[],x={};for(const e of i.fields){const i=t.getField(e.name);x[i.name]=e.label||i&&i.alias||e.name}if(S.forEach((e,i)=>{const a=x[e.value];e.label=a,V[i].label=a}),i.includeSizeVariable){let a=t.geometryType,r=null;if("polygon"===a){const e=l.sizeScheme,n=e.background;v.backgroundFillSymbol=O(a,{type:i.symbolType,color:n.color,outline:I(n,a,g)}),r=e.marker.size,a="point"}else if("polyline"===a){r=l.width}else{r=l.size}const n=e(l.colors,S.length);S.forEach((e,s)=>{const o=O(a,{type:i.symbolType,color:n[s],size:r,outline:I(l,a,g),meshInfo:{colorMixMode:i.colorMixMode,edgesType:i.edgesType}});e.symbol=o,V[s].symbol=o.clone()})}return f?.visualVariables.length&&(v.visualVariables=f.visualVariables.map(e=>e.clone())),v.authoringInfo=new r({type:"predominance",fields:[...s]}),{renderer:v,predominantCategoryInfos:V,excludedCategoryInfos:E,predominanceScheme:l,basemapId:w,basemapTheme:z}}async function $(e,i,r){const n=await a("esri/smartMapping/t9n/smartMapping");return m({layer:e.layer,basemap:e.basemap,valueExpression:i.valueExpression,sqlExpression:i.statisticsQuery.sqlExpression,sqlWhere:i.statisticsQuery.sqlWhere,sizeScheme:r,sizeOptimizationEnabled:e.sizeOptimizationEnabled,worldScale:!!e.symbolType?.includes("3d-volumetric"),legendOptions:{title:n.sumOfCategories},filter:e.filter,view:e.view,signal:e.signal})}async function L(e,i){const p=await a("esri/smartMapping/t9n/smartMapping"),m=await x({layer:e.layer,valueExpression:i.valueExpression,sqlExpression:i.statisticsQuery.sqlExpression,sqlWhere:i.statisticsQuery.sqlWhere,filter:e.filter,view:e.view,signal:e.signal}),{avg:d,stddev:u}=m,c=null==d||null==u,y=1/e.fields.length*100;let f=c?100:d+1.285*u;f>100&&(f=100);const b=l([y,f],{strictBounds:!0}),g=new s({valueExpression:i.valueExpression,stops:[new o({value:b[0],opacity:.15}),new o({value:b[1],opacity:1})],legendOptions:new t({title:p.strengthOfPredominance})}),h=new n({type:"opacity",minSliderValue:m.min,maxSliderValue:m.max});return{visualVariable:g,statistics:m,defaultValuesUsed:c,authoringInfo:new r({visualVariables:[h]})}}async function D(e){const i=await R(e),a=i.layer,n=(await k({basemap:i.basemap,geometryType:a.geometryType,numColors:i.fields.length,predominanceScheme:i.predominanceScheme,worldScale:!!i.symbolType?.includes("3d-volumetric"),view:i.view})).scheme,l=i.fields.map(e=>e.name),s=M(a,l),o=F(i,s.predominantCategory,n,l),t=i.includeSizeVariable?$(i,s.size,n.sizeScheme):null,p=i.includeOpacityVariable?L(i,s.opacity):null,[m,d,u]=await Promise.all([o,t,p]),c=[],y=[];if(d&&(Array.prototype.push.apply(c,d.visualVariables.map(e=>e.clone())),delete d.sizeScheme,m.size=d,Array.prototype.push.apply(y,d.authoringInfo.visualVariables.map(e=>e.clone()))),u&&(c.push(u.visualVariable.clone()),m.opacity=u,Array.prototype.push.apply(y,u.authoringInfo.visualVariables.map(e=>e.clone()))),c.length){const e=m.renderer.visualVariables||[];Array.prototype.push.apply(e,c),m.renderer.visualVariables=e,m.renderer.authoringInfo??=new r,m.renderer.authoringInfo.visualVariables=y}return m}async function G(e){const{creatorParameters:i,view:a,signal:r,filter:n,renderer:l}=await W(e),{layer:s,fields:o,outlineOptimizationEnabled:t,includeSizeVariable:m,includeOpacityVariable:d}=i,y=o.map(e=>e.name),f=M(s,y),b=(await k({geometryType:s.geometryType,numColors:i.fields.length,view:i.view})).scheme,g=b&&"sizeScheme"in b?b.sizeScheme:null,[h,v,E]=await Promise.all([t?p({layer:s,view:a,signal:r,filter:n}).catch(T):null,m?$(i,f.size,g):null,d?L(i,f.opacity):null]);return u(l,h?.visualVariables,w),u(l,v?.visualVariables,z),u(l,E?.visualVariable,V),c(l,v?.authoringInfo,"size"),c(l,E?.authoringInfo,"opacity"),{renderer:l}}export{D as createRenderer,G as regenerateRenderer};
2
+ import{createUniqueColors as e}from"../../core/colorUtils.js";import i from"../../core/Error.js";import{fetchMessageBundle as a}from"../../intl/messages.js";import r from"../../renderers/support/AuthoringInfo.js";import n from"../../renderers/support/AuthoringInfoVisualVariable.js";import{round as l}from"../../renderers/support/numberUtils.js";import s from"../../renderers/visualVariables/OpacityVariable.js";import o from"../../renderers/visualVariables/support/OpacityStop.js";import t from"../../renderers/visualVariables/support/VisualVariableLegendOptions.js";import p from"../heuristics/outline.js";import{createVisualVariables as m}from"./size.js";import{createRenderer as d}from"./type.js";import{spliceVisualVariables as u,updateAuthoringInfoVisualVariable as c,processRegenerateParams as y,getRendererToUpdate as f,getStyleType as b,hasOutlineVV as g,hasScaleDependentSizeVV as h,isSizeVV as v,findOutlineVVIndex as w,findSizeVVIndex as z,findOpacityVVIndex as V}from"./support/regenerateUtils.js";import{errorCallback as T,verifyBasicFieldValidity as E,getBasemapInfo as S,createSymbol as O,getSymbolOutlineFromScheme as I,getSummaryStatistics as x}from"./support/utils.js";import j from"../statistics/predominantCategories.js";import{getPredominanceExpressions as M}from"../statistics/support/predominanceUtils.js";import{verifyBinningParams as q}from"../support/binningUtils.js";import{binningCapableLayerTypes as C,featureCapableLayerTypes as B,createLayerAdapter as P,getLayerTypeLabels as U}from"../support/adapters/support/layerUtils.js";import{cloneScheme as A,getSchemes as Q}from"../symbology/predominance.js";async function R(e){if(!(e?.layer&&e.view&&e.fields?.length))throw new i("predominance-renderer:missing-parameters","'layer', 'view' and 'fields' parameters are required");if(e.fields.length<2)throw new i("predominance-renderer:invalid-parameters","Minimum 2 fields are required");if(e.fields.length>10)throw new i("predominance-renderer:invalid-parameters","Maximum 10 fields are supported");e.forBinning&&q(e,"predominance-renderer");const a={...e,layer:e.layer,fields:e.fields};a.symbolType=a.symbolType||"2d",a.defaultSymbolEnabled??=!0,a.includeOpacityVariable=e.includeOpacityVariable||!1,a.includeSizeVariable=e.includeSizeVariable||!1,a.sortBy??="count";const r=e.forBinning?C:B,n=P(a.layer,r,e.forBinning);if(!n)throw new i("predominance-renderer:invalid-parameters","'layer' must be one of these types: "+U(B).join(", "));const l=null!=a.signal?{signal:a.signal}:null;await n.load(l);const s=n.geometryType,o=a.symbolType.includes("3d");if(a.outlineOptimizationEnabled="polygon"===s&&a.outlineOptimizationEnabled,!a.includeSizeVariable){const i="featureReduction"in e.layer&&"cluster"===e.layer.featureReduction?.type;a.sizeOptimizationEnabled=!("point"!==s&&"multipoint"!==s&&"polyline"!==s||i)&&a.sizeOptimizationEnabled}if("mesh"===s)a.symbolType="3d-volumetric",a.colorMixMode=a.colorMixMode||"replace",a.edgesType=a.edgesType||"none",a.sizeOptimizationEnabled=!1;else{if(o&&("polyline"===s||"polygon"===s))throw new i("predominance-renderer:not-supported","3d symbols are not supported for polyline and polygon layers");if(a.symbolType.includes("3d-volumetric")&&"3d"!==a.view?.type)throw new i("predominance-renderer:invalid-parameters","'view' parameter should be an instance of SceneView when 'symbolType' parameter is '3d-volumetric' or '3d-volumetric-uniform'")}const t=a.fields.map(e=>e.name),p=E(n,t,"predominance-renderer:invalid-parameters");if(p)throw p;return{...a,layer:n}}async function W(e){const a="regenerate-predominance-renderer",r=e.includedParts?.includes("size-variable")??!0,n=e.includedParts?.includes("opacity-variable")??!0;await y(e,a);const l=await f(e);if("predominance"!==b(l))throw new i(`${a}:invalid-parameters`,"Renderer is invalid");const{visualVariables:s}=l,{layer:o,forBinning:t,filter:p,view:m,signal:d}=e,u=g(l),c=h(l),w=r&&s?.some(v),z=n&&s?.some(e=>"opacity"===e.type),V=l.authoringInfo,T=V?.fields?.map(e=>({name:e}));if(!T?.length)throw new i(`${a}:invalid-parameters`,"Fields are required");const E=await R({layer:o,fields:T,outlineOptimizationEnabled:u,sizeOptimizationEnabled:c,includeSizeVariable:w,includeOpacityVariable:z,forBinning:t,filter:p,view:m,signal:d});return{...e,creatorParameters:E,renderer:l}}async function k(e){let i=e.predominanceScheme,a=null,r=null;const n=await S(e.basemap,e.view);if(a=null!=n.basemapId?n.basemapId:null,r=null!=n.basemapTheme?n.basemapTheme:null,i)return{scheme:A(i),basemapId:a,basemapTheme:r};const l=Q({basemapTheme:r,geometryType:e.geometryType,numColors:e.numColors,theme:e.theme,worldScale:e.worldScale,view:e.view});return l&&(i=l.primaryScheme,a=l.basemapId,r=l.basemapTheme),{scheme:i,basemapId:a,basemapTheme:r}}async function F(i,n,l,s){const o=await a("esri/smartMapping/t9n/smartMapping"),t=i.layer,{view:m,filter:u,signal:c}=i,[y,f]=await Promise.all([j({layer:t,fields:s,view:m,filter:u,signal:c}),i.outlineOptimizationEnabled?p({layer:t,view:m,filter:u,signal:c}).catch(T):null]);let b=y;y?.predominantCategoryInfos||(b={predominantCategoryInfos:s.map(e=>({value:e,count:0}))});const g=f?.opacity,h=await d({layer:t,basemap:i.basemap,valueExpression:n.valueExpression,valueExpressionTitle:o.predominantCategory,numTypes:-1,defaultSymbolEnabled:i.defaultSymbolEnabled,sortBy:i.sortBy,typeScheme:l,statistics:{uniqueValueInfos:b.predominantCategoryInfos},legendOptions:i.legendOptions,outlineOptimizationEnabled:!1,sizeOptimizationEnabled:(!i.includeSizeVariable||!i.sizeOptimizationEnabled)&&i.sizeOptimizationEnabled,symbolType:i.symbolType,colorMixMode:i.colorMixMode,edgesType:i.edgesType,filter:i.filter,view:i.view,signal:i.signal}),{renderer:v,basemapId:w,basemapTheme:z,uniqueValueInfos:V,excludedUniqueValueInfos:E}=h,S=v.uniqueValueInfos??[],x={};for(const e of i.fields){const i=t.getField(e.name);x[i.name]=e.label||i&&i.alias||e.name}if(S.forEach((e,i)=>{const a=x[e.value];e.label=a,V[i].label=a}),i.includeSizeVariable){let a=t.geometryType,r=null;if("polygon"===a){const e=l.sizeScheme,n=e.background;v.backgroundFillSymbol=O(a,{type:i.symbolType,color:n.color,outline:I(n,a,g)}),r=e.marker.size,a="point"}else if("polyline"===a){r=l.width}else{r=l.size}const n=e(l.colors,S.length);S.forEach((e,s)=>{const o=O(a,{type:i.symbolType,color:n[s],size:r,outline:I(l,a,g),meshInfo:{colorMixMode:i.colorMixMode,edgesType:i.edgesType}});e.symbol=o,V[s].symbol=o.clone()})}return f?.visualVariables.length&&(v.visualVariables=f.visualVariables.map(e=>e.clone())),v.authoringInfo=new r({type:"predominance",fields:[...s]}),{renderer:v,predominantCategoryInfos:V,excludedCategoryInfos:E,predominanceScheme:l,basemapId:w,basemapTheme:z}}async function $(e,i,r){const n=await a("esri/smartMapping/t9n/smartMapping");return m({layer:e.layer,basemap:e.basemap,valueExpression:i.valueExpression,sqlExpression:i.statisticsQuery.sqlExpression,sqlWhere:i.statisticsQuery.sqlWhere,sizeScheme:r,sizeOptimizationEnabled:e.sizeOptimizationEnabled,worldScale:!!e.symbolType?.includes("3d-volumetric"),legendOptions:{title:n.sumOfCategories},filter:e.filter,view:e.view,signal:e.signal})}async function L(e,i){const p=await a("esri/smartMapping/t9n/smartMapping"),m=await x({layer:e.layer,valueExpression:i.valueExpression,sqlExpression:i.statisticsQuery.sqlExpression,sqlWhere:i.statisticsQuery.sqlWhere,filter:e.filter,view:e.view,signal:e.signal}),{avg:d,stddev:u}=m,c=null==d||null==u,y=1/e.fields.length*100;let f=c?100:d+1.285*u;f>100&&(f=100);const b=l([y,f],{strictBounds:!0}),g=new s({valueExpression:i.valueExpression,stops:[new o({value:b[0],opacity:.15}),new o({value:b[1],opacity:1})],legendOptions:new t({title:p.strengthOfPredominance})}),h=new n({type:"opacity",minSliderValue:m.min,maxSliderValue:m.max});return{visualVariable:g,statistics:m,defaultValuesUsed:c,authoringInfo:new r({visualVariables:[h]})}}async function D(e){const i=await R(e),a=i.layer,n=(await k({basemap:i.basemap,geometryType:a.geometryType,numColors:i.fields.length,predominanceScheme:i.predominanceScheme,worldScale:!!i.symbolType?.includes("3d-volumetric"),view:i.view})).scheme,l=i.fields.map(e=>e.name),s=M(a,l),o=F(i,s.predominantCategory,n,l),t=i.includeSizeVariable?$(i,s.size,n.sizeScheme):null,p=i.includeOpacityVariable?L(i,s.opacity):null,[m,d,u]=await Promise.all([o,t,p]),c=[],y=[];if(d&&(Array.prototype.push.apply(c,d.visualVariables.map(e=>e.clone())),delete d.sizeScheme,m.size=d,Array.prototype.push.apply(y,d.authoringInfo.visualVariables.map(e=>e.clone()))),u&&(c.push(u.visualVariable.clone()),m.opacity=u,Array.prototype.push.apply(y,u.authoringInfo.visualVariables.map(e=>e.clone()))),c.length){const e=m.renderer.visualVariables||[];Array.prototype.push.apply(e,c),m.renderer.visualVariables=e,m.renderer.authoringInfo??=new r,m.renderer.authoringInfo.visualVariables=y}return m}async function G(e){const{creatorParameters:i,view:a,signal:r,filter:n,renderer:l}=await W(e),{layer:s,fields:o,outlineOptimizationEnabled:t,includeSizeVariable:m,includeOpacityVariable:d}=i,y=o.map(e=>e.name),f=M(s,y),b=(await k({geometryType:s.geometryType,numColors:i.fields.length,view:i.view})).scheme,g=b&&"sizeScheme"in b?b.sizeScheme:null,[h,v,E]=await Promise.all([t?p({layer:s,view:a,signal:r,filter:n}).catch(T):null,m?$(i,f.size,g):null,d?L(i,f.opacity):null]);return u(l,h?.visualVariables,w),u(l,v?.visualVariables,z),u(l,E?.visualVariable,V),c(l,v?.authoringInfo,"size"),c(l,E?.authoringInfo,"opacity"),{renderer:l}}export{D as createRenderer,G as regenerateRenderer};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import e from"../../../core/Error.js";async function n(n,r){const{layer:i,view:t,forBinning:a,filter:s}=n;if(!i||!t)throw new e(`${r}:missing-parameters`,"'layer' and 'view' parameters are required");await i.load();const o="featureReduction"in i?i.featureReduction:null;if(a){if("binning"!==o?.type)throw new e(`${r}:invalid-parameters`,"'layer' must have 'featureReduction' property defined with 'binning' type when 'forBinning' parameter is true");if(s)throw new e(`${r}:invalid-parameters`,"'filter' parameter is not supported when 'forBinning' parameter is true")}return n}async function r(n){const{layer:r,forBinning:i,renderer:t}=n;await r.load();const a="featureReduction"in r?r.featureReduction:null,s=t?.clone()??(i&&"binning"===a?.type?a?.renderer?.clone():"renderer"in r?r.renderer?.clone():null);if(!s)throw new e("get-renderer-to-update:invalid-parameters","renderer not available");return s}function i(e,n,r){const i=e?.authoringInfo?.visualVariables;return i?.find(e=>"reference-size"===r?e.type===n&&"reference-size"===e.theme:"spike"===r?e.type===n&&"spike"===e.theme:e.type===n)}function t(e){if(!e)return null;const n=e.type,r="visualVariables"in e?e.visualVariables:null,t=r?.find(p),a=r?.find(y),s=e.authoringInfo,o=i(e,"color"),u=i(e,"size"),l=i(e,"size","reference-size"),c=i(e,"size","spike");if("class-breaks"===n){if("univariate-color-size"===s?.type)return"univariate-color-size";if(t)return a?u?.units?"color-size-age":o?.units?"color-age-size":"color-size":o?.units?"color-age":l||c?"color-size":"color-continuous";if(a)return u?.units?"size-age":"size-continuous";if(e.classBreakInfos.length>1)return"class-breaks-color"===s?.type?"color-class-breaks":"class-breaks-size"===s?.type?"size-class-breaks":null;if(l||c)return"size-continuous"}return"unique-value"===n?e.valueExpression?"predominance"===s?.type?"predominance":"relationship"===s?.type?a||l||c?"relationship-size":"relationship":a||l||c?"type-size":"type":a?u?.units?"type-size-age":"type-size":l||c?"type-size":"type":"pie-chart"===n?"pie-chart":"dot-density"===n?"dot-density":"heatmap"===n?"heatmap":null}function a(e){return!!e.visualVariables?.some(z)}function s(e){return!!e.visualVariables?.some(m)}function o(e){return e?.findIndex(z)??-1}function u(e){return e?.findIndex(y)??-1}function l(e){return e?.findIndex(p)??-1}function c(e){return e?.findIndex(d)??-1}function f(e){return e?.findIndex(m)??-1}function p(e){return"color"===e.type}function d(e){return"opacity"===e.type}function y(e){return"size"===e.type&&"outline"!==e.target&&"$view.scale"!==e.valueExpression}function z(e){return"size"===e.type&&"outline"===e.target}function m(e){return"size"===e.type&&"$view.scale"===e.valueExpression&&"outline"!==e.target&&Array.isArray(e.stops)}function h(e,n,r){const i=e.visualVariables,t=r(i);if(!n||Array.isArray(n)&&!n.length)return;Array.isArray(n)||(n=[n]);const a=n.map(e=>e.clone());i?t>-1?i.splice(t,1,...a):i.push(...a):e.visualVariables=a}function v(e,n,r){const t=n?.visualVariables.find(e=>e.type===r),a=i(e,r);a&&t&&(a.dataSeriesName=t.dataSeriesName,a.minSliderValue=t.minSliderValue,a.maxSliderValue=t.maxSliderValue,"size"===r&&("reference-size"!==a.theme&&"spike"!==a.theme||(a.sizeStops=t.sizeStops?.map(e=>e.clone()),"reference-size"===a.theme&&(a.referenceSizeScale=t.referenceSizeScale))))}export{l as findColorVVIndex,c as findOpacityVVIndex,o as findOutlineVVIndex,f as findScaleDependentSizeVVIndex,u as findSizeVVIndex,i as getAuthoringInfoVisualVariable,r as getRendererToUpdate,t as getStyleType,a as hasOutlineVV,s as hasScaleDependentSizeVV,p as isColorVV,d as isOpacityVV,z as isOutlineVV,m as isScaleDependentSizeVV,y as isSizeVV,n as processRegenerateParams,h as spliceVisualVariables,v as updateAuthoringInfoVisualVariable};
2
+ import e from"../../../core/Error.js";async function n(n,r){const{layer:i,view:t,forBinning:a,filter:s}=n;if(!i||!t)throw new e(`${r}:missing-parameters`,"'layer' and 'view' parameters are required");await i.load();const o="featureReduction"in i?i.featureReduction:null;if(a){if("binning"!==o?.type)throw new e(`${r}:invalid-parameters`,"'layer' must have 'featureReduction' property defined with 'binning' type when 'forBinning' parameter is true");if(s)throw new e(`${r}:invalid-parameters`,"'filter' parameter is not supported when 'forBinning' parameter is true")}return n}async function r(n){const{layer:r,forBinning:i,renderer:t}=n;await r.load();const a="featureReduction"in r?r.featureReduction:null,s=t?.clone()??(i&&"binning"===a?.type?a?.renderer?.clone():"renderer"in r?r.renderer?.clone():null);if(!s)throw new e("get-renderer-to-update:invalid-parameters","renderer not available");return s}function i(e,n,r){const i=e?.authoringInfo?.visualVariables;return i?.find(e=>"reference-size"===r?e.type===n&&"reference-size"===e.theme:"spike"===r?e.type===n&&"spike"===e.theme:e.type===n)}function t(e){if(!e)return null;const n=e.type,r="visualVariables"in e?e.visualVariables:null,t=r?.find(d),a=r?.find(z),s=e.authoringInfo,o=i(e,"color"),u=i(e,"size"),l=i(e,"size","reference-size"),c=i(e,"size","spike");if("class-breaks"===n){if("univariate-color-size"===s?.type)return"univariate-color-size";if(t)return a?u?.units?"color-size-age":o?.units?"color-age-size":"color-size":o?.units?"color-age":l||c?"color-size":"color-continuous";if(a)return u?.units?"size-age":"size-continuous";if(e.classBreakInfos.length>1)return"class-breaks-color"===s?.type?"color-class-breaks":"class-breaks-size"===s?.type?"size-class-breaks":null;if(l||c)return"size-continuous"}return"unique-value"===n?e.valueExpression?"predominance"===s?.type?"predominance":"relationship"===s?.type?a||l||c?"relationship-size":"relationship":a||l||c?"type-size":"type":a?u?.units?"type-size-age":"type-size":l||c?"type-size":"type":"pie-chart"===n?"pie-chart":"dot-density"===n?"dot-density":"heatmap"===n?"heatmap":"simple"===n?"simple":null}function a(e){return!!e.visualVariables?.some(h)}function s(e){return!!e.visualVariables?.some(v)}function o(e){return e?.findIndex(h)??-1}function u(e){return e?.findIndex(z)??-1}function l(e){return e?.findIndex(d)??-1}function c(e){return e?.findIndex(y)??-1}function f(e){return e?.findIndex(m)??-1}function p(e){return e?.findIndex(v)??-1}function d(e){return"color"===e.type}function y(e){return"opacity"===e.type}function m(e){return"rotation"===e.type}function z(e){return"size"===e.type&&"outline"!==e.target&&"$view.scale"!==e.valueExpression}function h(e){return"size"===e.type&&"outline"===e.target}function v(e){return"size"===e.type&&"$view.scale"===e.valueExpression&&"outline"!==e.target&&Array.isArray(e.stops)}function g(e,n,r){const i=e.visualVariables,t=r(i);if(!n||Array.isArray(n)&&!n.length)return;Array.isArray(n)||(n=[n]);const a=n.map(e=>e.clone());i?t>-1?i.splice(t,1,...a):i.push(...a):e.visualVariables=a}function b(e,n,r){const t=n?.visualVariables.find(e=>e.type===r),a=i(e,r);a&&t&&(a.dataSeriesName=t.dataSeriesName,a.minSliderValue=t.minSliderValue,a.maxSliderValue=t.maxSliderValue,"size"===r&&("reference-size"!==a.theme&&"spike"!==a.theme||(a.sizeStops=t.sizeStops?.map(e=>e.clone()),"reference-size"===a.theme&&(a.referenceSizeScale=t.referenceSizeScale))))}export{l as findColorVVIndex,c as findOpacityVVIndex,o as findOutlineVVIndex,f as findRotationVVIndex,p as findScaleDependentSizeVVIndex,u as findSizeVVIndex,i as getAuthoringInfoVisualVariable,r as getRendererToUpdate,t as getStyleType,a as hasOutlineVV,s as hasScaleDependentSizeVV,d as isColorVV,y as isOpacityVV,h as isOutlineVV,m as isRotationVV,v as isScaleDependentSizeVV,z as isSizeVV,n as processRegenerateParams,g as spliceVisualVariables,b as updateAuthoringInfoVisualVariable};
@@ -51,9 +51,11 @@ export interface RegenerateRendererParameters extends AbortOptions {
51
51
  * If not provided, all parts are included by default. The available options are:
52
52
  * - `color-variable`: Only regenerate the color visual variable.
53
53
  * - `size-variable`: Only regenerate the size visual variable.
54
+ * - `opacity-variable`: Only regenerate the opacity visual variable.
55
+ * - `rotation-variable`: Only regenerate the rotation visual variable.
54
56
  * - `class-breaks`: Regenerate the class breaks for the renderer.
55
57
  *
56
58
  * @since 4.33
57
59
  */
58
- includedParts?: ("color-variable" | "size-variable" | "class-breaks")[];
60
+ includedParts?: ("color-variable" | "size-variable" | "opacity-variable" | "rotation-variable" | "class-breaks")[];
59
61
  }
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import e from"../../../core/Error.js";import{getRendererToUpdate as r,getStyleType as a,spliceVisualVariables as t,findSizeVVIndex as n,updateAuthoringInfoVisualVariable as i,getAuthoringInfoVisualVariable as s,hasScaleDependentSizeVV as o}from"./regenerateUtils.js";async function c(t){const n=await r(t),i=a(n),s=t.includedParts,o=s?.includes("size-variable")??!0,c=s?.includes("color-variable")??!0,u=s?.includes("class-breaks")??!0;switch(i){case"color-continuous":{if(!c)return n;const{regenerateContinuousRenderer:e}=await import("../color.js");return(await e(t)).renderer}case"color-class-breaks":{if(!u)return n;const{regenerateClassBreaksRenderer:e}=await import("../color.js");return(await e(t)).renderer}case"color-age":{if(!c)return n;const{regenerateAgeRenderer:e}=await import("../color.js");return(await e(t)).renderer}case"size-continuous":{if(!o)return n;const{regenerateContinuousRenderer:e}=await import("../size.js");return(await e(t)).renderer}case"size-class-breaks":{if(!u)return n;const{regenerateClassBreaksRenderer:e}=await import("../size.js");return(await e(t)).renderer}case"size-age":{if(!o)return n;const{regenerateAgeRenderer:e}=await import("../size.js");return(await e(t)).renderer}case"color-size":{let e=n;if(c){const{regenerateContinuousRenderer:r}=await import("../color.js");e=(await r(t)).renderer}return o?await d(t,e):e}case"type":{const{regenerateRenderer:e}=await import("../type.js");return(await e(t)).renderer}case"type-size":{const{regenerateRenderer:e}=await import("../type.js"),{renderer:r}=await e(t);return o?await d(t,r):r}case"predominance":{const{regenerateRenderer:e}=await import("../predominance.js");return(await e(t)).renderer}case"relationship":{if(!u)return n;const{regenerateRenderer:e}=await import("../relationship.js");return(await e(t)).renderer}case"relationship-size":{let e=n;if(u){const{regenerateRenderer:r}=await import("../relationship.js"),{renderer:a}=await r(t);e=a}return o?await d(t,e):e}case"pie-chart":{const{regenerateRenderer:e}=await import("../pieChart.js");return(await e(t)).renderer}case"dot-density":{const{regenerateRenderer:e}=await import("../dotDensity.js");return(await e(t)).renderer}case"heatmap":{const{regenerateRenderer:e}=await import("../heatmap.js");return(await e(t)).renderer}case"univariate-color-size":{const{regenerateRenderer:e}=await import("../univariateColorSize.js");return(await e(t)).renderer}default:throw new e("regenerate-renderer:invalid-parameters","renderer type not supported")}}async function d(e,r){const{regenerateVisualVariables:a,updateRendererWithReferenceSize:c,updateRendererWithSpike:d}=await import("../size.js"),{visualVariables:u,authoringInfo:p,isGrid:w}=await a({...e,renderer:r});t(r,u,n),i(r,p,"size");const l=s(r,"size","reference-size"),g=s(r,"size","spike");return l||g?g?await d({layer:e.layer,renderer:r,sizeStops:g.sizeStops,forBinning:e.forBinning}):await c({layer:e.layer,renderer:r,sizeStops:l.sizeStops,view:e.view,forBinning:e.forBinning,sizeOptimizationEnabled:o(r),isGrid:w}):r}export{c as regenerateRenderer};
2
+ import e from"../../../core/Error.js";import r from"../../../renderers/visualVariables/RotationVariable.js";import{createVisualVariable as i}from"../opacity.js";import{getRendererToUpdate as a,getStyleType as n,spliceVisualVariables as t,findOpacityVVIndex as s,updateAuthoringInfoVisualVariable as o,findRotationVVIndex as l,findSizeVVIndex as u,getAuthoringInfoVisualVariable as c,hasScaleDependentSizeVV as d}from"./regenerateUtils.js";import{resolveDataSeriesInfo as p}from"./timeSeriesUtils.js";async function w(r){let i=await a(r);const t=n(i),s=r.includedParts,o=s?.includes("size-variable")??!0,l=s?.includes("color-variable")??!0,u=s?.includes("class-breaks")??!0,c=s?.includes("opacity-variable")??!0,d=s?.includes("rotation-variable")??!0;switch(i=(r=await m(r,i,t,c,d)).renderer??i,t){case"color-continuous":{if(!l)return i;const{regenerateContinuousRenderer:e}=await import("../color.js");return(await e(r)).renderer}case"color-class-breaks":{if(!u)return i;const{regenerateClassBreaksRenderer:e}=await import("../color.js");return(await e(r)).renderer}case"color-age":{if(!l)return i;const{regenerateAgeRenderer:e}=await import("../color.js");return(await e(r)).renderer}case"size-continuous":{if(!o)return i;const{regenerateContinuousRenderer:e}=await import("../size.js");return(await e(r)).renderer}case"size-class-breaks":{if(!u)return i;const{regenerateClassBreaksRenderer:e}=await import("../size.js");return(await e(r)).renderer}case"size-age":{if(!o)return i;const{regenerateAgeRenderer:e}=await import("../size.js");return(await e(r)).renderer}case"color-size":{let e=i;if(l){const{regenerateContinuousRenderer:i}=await import("../color.js");e=(await i(r)).renderer}return o?await f(r,e):e}case"type":{const{regenerateRenderer:e}=await import("../type.js");return(await e(r)).renderer}case"type-size":{const{regenerateRenderer:e}=await import("../type.js"),{renderer:i}=await e(r);return o?await f(r,i):i}case"predominance":{const{regenerateRenderer:e}=await import("../predominance.js");return(await e(r)).renderer}case"relationship":{if(!u)return i;const{regenerateRenderer:e}=await import("../relationship.js");return(await e(r)).renderer}case"relationship-size":{let e=i;if(u){const{regenerateRenderer:i}=await import("../relationship.js"),{renderer:a}=await i(r);e=a}return o?await f(r,e):e}case"pie-chart":{const{regenerateRenderer:e}=await import("../pieChart.js");return(await e(r)).renderer}case"dot-density":{const{regenerateRenderer:e}=await import("../dotDensity.js");return(await e(r)).renderer}case"heatmap":{const{regenerateRenderer:e}=await import("../heatmap.js");return(await e(r)).renderer}case"simple":{const{regenerateRenderer:e}=await import("../location.js");return(await e(r)).renderer}case"univariate-color-size":{const{regenerateRenderer:e}=await import("../univariateColorSize.js");return(await e(r)).renderer}default:throw new e("regenerate-renderer:invalid-parameters","renderer type not supported")}}async function f(e,r){const{regenerateVisualVariables:i,updateRendererWithReferenceSize:a,updateRendererWithSpike:n}=await import("../size.js"),{visualVariables:s,authoringInfo:l,isGrid:p}=await i({...e,renderer:r});t(r,s,u),o(r,l,"size");const w=c(r,"size","reference-size"),f=c(r,"size","spike");return w||f?f?await n({layer:e.layer,renderer:r,sizeStops:f.sizeStops,forBinning:e.forBinning}):await a({layer:e.layer,renderer:r,sizeStops:w.sizeStops,view:e.view,forBinning:e.forBinning,sizeOptimizationEnabled:d(r),isGrid:p}):r}async function m(e,r,i,a,n){if(!("visualVariables"in r))return e;if(a&&"predominance"!==i){const i=await g(e,r);t(r,i?.visualVariable,s),o(r,i?.authoringInfo,"opacity")}if(n){const i=await v(e,r);t(r,i,l)}return{...e,renderer:r}}async function g(e,r){const a=r.visualVariables?.find(e=>"opacity"===e.type),n=c(r,"opacity");if(!a||"opacity"!==a.type)return null;const t=await i({layer:e.layer,view:e.view,filter:e.filter,signal:e.signal,forBinning:e.forBinning,field:a.field??null,normalizationField:a.normalizationField??null,dataSeriesName:n?.dataSeriesName??null,valueExpression:a.valueExpression??null,valueExpressionTitle:a.valueExpressionTitle??null,minValue:n?.minSliderValue??null,maxValue:n?.maxSliderValue??null});return a.legendOptions&&(t.visualVariable.legendOptions=a.legendOptions.clone()),t}async function v(e,i){const a=i.visualVariables?.find(e=>"rotation"===e.type),n=c(i,"rotation");if(!a||!("rotationType"in a)||!("axis"in a))return null;const t=new r({axis:a.axis,rotationType:a.rotationType,field:a.field,valueExpression:a.valueExpression,valueExpressionTitle:a.valueExpressionTitle,legendOptions:a.legendOptions?.clone()});if(!n?.dataSeriesName)return t;const s=p({layer:e.layer,view:e.view,field:t.field??null,dataSeriesName:n.dataSeriesName,valueExpression:t.valueExpression??null,valueExpressionTitle:t.valueExpressionTitle??null});return t.field=s.field??null,t.valueExpression=s.valueExpression??null,t.valueExpressionTitle=s.valueExpressionTitle??null,t}export{w as regenerateRenderer};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- const d="20260609",e="3499d3048dfeade16d9d05f79b915da23576dc0e";export{d as buildDate,e as commitHash};
2
+ const d="20260611",e="77628013751448de28c1a5248ae1dd9d3220b3e4";export{d as buildDate,e as commitHash};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{__decorate as t}from"tslib";import e from"../core/Logger.js";import{throwIfAborted as o}from"../core/promiseUtils.js";import{property as r,subclass as l}from"../core/accessorSupport/decorators.js";import s from"../portal/Portal.js";import{w as i,r as p}from"../chunks/persistableUrlUtils.js";import a from"./Symbol.js";import{Thumbnail as n}from"./support/Thumbnail.js";import{enumeration as y}from"../core/accessorSupport/decorators/enumeration.js";var m;let c=m=class extends a{constructor(t){super(t),this.color=null,this.styleName=null,this.portal=null,this.styleUrl=null,this.thumbnail=null,this.name=null,this.type="web-style"}get _fetchCacheKey(){const t=null!=this.portal?this.portal:s.getDefault(),e=t.user?t.user.username:null;return`${this.styleName}:${this.styleUrl}:${this.name}:${e}:${t.url}`}read(t,e){this.portal=e?.portal,super.read(t,e)}clone(){return new m({name:this.name,styleUrl:this.styleUrl,styleName:this.styleName,portal:this.portal})}fetchSymbol(t){return this._fetchSymbol(t)}async _fetchSymbol(t){const r=null!=t?t.cache:null,l=r?this._fetchCacheKey:null;if(null!=r){const t=l&&r.get(l);if(t)return t.clone()}const{resolveWebStyleSymbol:s}=await import("./support/webStyleSymbolUtils.js");o(t);const i=s(this,{portal:this.portal},t);i.catch(t=>{e.getLogger(this).error("#fetchSymbol()","Failed to create symbol from style",t)});const p=await i;return null!=r&&r.set(l,p.clone()),p}};t([r({json:{write:!1}})],c.prototype,"color",void 0),t([r({type:String,json:{write:!0}})],c.prototype,"styleName",void 0),t([r({type:s,json:{write:!1}})],c.prototype,"portal",void 0),t([r({type:String,json:{read:p,write:i}})],c.prototype,"styleUrl",void 0),t([r({type:n,json:{read:!1}})],c.prototype,"thumbnail",void 0),t([r({type:String,json:{write:!0}})],c.prototype,"name",void 0),t([y({styleSymbolReference:"web-style"},{readOnly:!0})],c.prototype,"type",void 0),t([r()],c.prototype,"_fetchCacheKey",null),c=m=t([l("esri.symbols.WebStyleSymbol")],c);export{c as default};
2
+ import{__decorate as t}from"tslib";import e from"../core/Logger.js";import{throwIfAborted as o}from"../core/promiseUtils.js";import{property as r,subclass as s}from"../core/accessorSupport/decorators.js";import l from"../portal/Portal.js";import{w as i,r as p}from"../chunks/persistableUrlUtils.js";import a from"./Symbol.js";import{Thumbnail as m}from"./support/Thumbnail.js";import{webStyleSymbolCache as y}from"./support/webStyleSymbolCache.js";import{enumeration as n}from"../core/accessorSupport/decorators/enumeration.js";var c;let h=c=class extends a{constructor(t){super(t),this.color=null,this.styleName=null,this.portal=null,this.styleUrl=null,this.thumbnail=null,this.name=null,this.type="web-style"}get _fetchCacheKey(){const t=null!=this.portal?this.portal:l.getDefault(),e=t.user?t.user.username:null;return`${this.styleName}:${this.styleUrl}:${this.name}:${e}:${t.url}`}read(t,e){this.portal=e?.portal,super.read(t,e)}clone(){return new c({name:this.name,styleUrl:this.styleUrl,styleName:this.styleName,portal:this.portal})}fetchSymbol(t){return this._fetchSymbol(t)}async _fetchSymbol(t){const r=y,s=this._fetchCacheKey,l=r.get(s);if(l)return l.clone();const{resolveWebStyleSymbol:i}=await import("./support/webStyleSymbolUtils.js");o(t);const p=i(this,{portal:this.portal},t);p.catch(t=>{e.getLogger(this).error("#fetchSymbol()","Failed to create symbol from style",t)});const a=await p;return r.put(s,a.clone()),a}};t([r({json:{write:!1}})],h.prototype,"color",void 0),t([r({type:String,json:{write:!0}})],h.prototype,"styleName",void 0),t([r({type:l,json:{write:!1}})],h.prototype,"portal",void 0),t([r({type:String,json:{read:p,write:i}})],h.prototype,"styleUrl",void 0),t([r({type:m,json:{read:!1}})],h.prototype,"thumbnail",void 0),t([r({type:String,json:{write:!0}})],h.prototype,"name",void 0),t([n({styleSymbolReference:"web-style"},{readOnly:!0})],h.prototype,"type",void 0),t([r()],h.prototype,"_fetchCacheKey",null),h=c=t([s("esri.symbols.WebStyleSymbol")],h);export{h as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{pt2px as e,toPt as t,px2pt as l}from"../../core/screenUtils.js";import{isSubtypeGroupLayer as a}from"../../layers/support/layerUtils.js";import{loadArcade as i}from"../../support/loadArcade.js";import{getStroke as r}from"./gfxUtils.js";import{renderSymbol as s,renderOnce as o}from"./renderUtils.js";import{isSymbol3D as n}from"./typeUtils.js";import{applyColorToSymbol as c,applySizesToSymbol as u,applyRotationToSymbol as p,getColorFromSymbol as f,applyOpacityToColor as y}from"./utils.js";import{renderRelationshipRamp as h}from"../../widgets/Legend/styles/support/relationshipUtils.js";import{getRelationshipRampElement as m}from"../../widgets/Legend/support/relationshipRampUtils.js";let d=null;const b=[255,255,255];function g(e,t){return Math.floor(Math.random()*(t-e+1)+e)}function w(e,t,l){const{backgroundColor:a,outline:i,dotSize:r}=e,s=l?.swatchSize||22,o=.8,n=Math.round(s*s/Math.max(r,.5)**2*o),c=window.devicePixelRatio,u=document.createElement("canvas"),p=s*c;u.width=p,u.height=p,u.style.width=u.width/c+"px",u.style.height=u.height/c+"px";const f=u.getContext("2d");if(a&&(f.fillStyle=a.toCss(!0),f.fillRect(0,0,p,p),f.fill()),f.fillStyle=t?.toCss(!0)??"",d&&d.length/2===n)for(let h=0;h<2*n;h+=2){const e=d[h],t=d[h+1];f.fillRect(e,t,r*c,r*c),f.fill()}else{d=[];for(let e=0;e<2*n;e+=2){const e=g(0,p),t=g(0,p);d.push(e,t),f.fillRect(e,t,r*c,r*c),f.fill()}}i&&(i.color&&(f.strokeStyle=i.color.toCss(!0)),f.lineWidth=i.width,f.strokeRect(0,0,p,p));const y=new Image(s,s);return y.src=u.toDataURL(),y.ariaLabel=l?.ariaLabel??null,y.alt=l?.ariaLabel??"",y}function S(e,t={}){const l=t.radius||40,a=2*Math.PI*l,i=e.length,o=a/i,n=[],c=r(t.outline);null!=c?.width&&(c.width*=2),(c||t.backgroundColor)&&n.push({shape:{type:"circle",cx:l,cy:l,r:l},fill:t.backgroundColor,stroke:c,offset:[0,0]});const u=t.values,p=u?.length===i&&100===u.reduce((e,t)=>e+t,0),f=[0];for(let r=0;r<i;r++){let t=null;p&&(t=u[r]*a/100,f.push(t+f[r])),n.push({shape:{type:"circle",cx:l,cy:l,r:l/2},fill:[0,0,0,0],stroke:{width:l,dashArray:`${(t??o)/2} ${a}`,dashoffset:"-"+(p?f[r]/2:r*(o/2)),color:e[r]},offset:[0,0]})}let y=null;const h=2*l+(c?.width||0),m=t.holePercentage;if(m){c&&n.push({shape:{type:"circle",cx:l,cy:l,r:l*m},fill:null,stroke:c,offset:[0,0]});const e=h/2;y=[[{shape:{type:"circle",cx:e,cy:e,r:e},fill:b,stroke:c?{...c,color:b}:null,offset:[0,0]},{shape:{type:"circle",cx:e,cy:e,r:l*m},fill:[0,0,0],stroke:null,offset:[0,0]}]]}return s([n],[h,h],{cssEffectFilter:t.cssEffectFilter,ignoreStrokeWidth:!0,masking:y,rotations:[-90],ariaLabel:t.ariaLabel})}function v(e,t={}){const l=e?.authoringInfo;if(!("relationship"===l?.type)||!l?.numClasses||!e.uniqueValueInfos)return null;const{focus:a,numClasses:i}=l,r=m({focus:a,numClasses:i,infos:e.uniqueValueInfos}),s=t?.node||document.createElement("div");return o(s,()=>h(r,t.id||"relationship",{opacity:t.opacity||1,cssEffectFilter:t.cssEffectFilter,ariaLabel:t.ariaLabel})),s}function V(e,t={}){const l=24,a=75,i="horizontal"===t.align,r=i?a:l,s=i?l:a,o=t.width??r,n=t.height??s,c=t.gradient??!0,u=window.devicePixelRatio,p=o*u,f=n*u,y=document.createElement("canvas");y.width=p,y.height=f,y.ariaLabel=t.ariaLabel??null,y.style.width=`${o}px`,y.style.height=`${n}px`;const h=y.getContext("2d"),m=i?p:0,d=i?0:f;if(c){const t=h.createLinearGradient(0,0,m,d),l=e.length,a=1===l?0:1/(l-1);e.forEach((e,l)=>t.addColorStop(l*a,e.toString())),h.fillStyle=t,h.fillRect(0,0,p,f)}else{const t=i?p/e.length:p,l=i?f:f/e.length;let a=0,r=0;for(const s of e)h.fillStyle=s.toString(),h.fillRect(a,r,t,l),a=i?a+t:0,r=i?0:r+l}const b=document.createElement("div");return b.style.width=`${o}px`,b.style.height=`${n}px`,x(b,t?.cssEffectFilter),b.appendChild(y),b}function k(e){const t=e.match(/drop-shadow\(\s*([^\s]+)\s+[^\s]+\s+[^\s]+\s+.+?\)/);return t?t[1]:null}function x(l,a){if(!a)return;l.style.filter=a;const i=k(a);if(i){const a=e(t(i));a<0?l.style.marginLeft=`${Math.abs(a)}px`:l.style.marginRight=`${a}px`}}async function F(e,t){switch(e.type){case"web-style":{const{previewWebStyleSymbol:l}=await import("./previewWebStyleSymbol.js");return l(e,F,t)}case"label-3d":case"line-3d":case"mesh-3d":case"point-3d":case"polygon-3d":{const{previewSymbol3D:l}=await import("./previewSymbol3D.js");return l(e,t)}case"simple-marker":case"simple-line":case"simple-fill":case"picture-marker":case"picture-fill":case"text":{const{previewSymbol2D:l}=await import("./previewSymbol2D.js");return l(e,t)}case"cim":{const{previewCIMSymbol:l}=await import("./previewCIMSymbol.js");return l(e,t)}default:return}}function L(e){return e&&void 0!==e.opacity?e.opacity*("parent"in e?L(e.parent):1):1}async function R(e,t){if(!e)return;const l=e.sourceLayer,a=(null!=t&&t.useSourceLayer?l:e.layer)??l,r=t?.ignoreOpacity?1:L(a);if(null!=e.symbol&&(null==t||!0!==t.ignoreGraphicSymbol)){const l="web-style"===e.symbol.type?await e.symbol.fetchSymbol({...t,acceptedFormats:t?.webStyleAcceptedFormats,cache:t?.webStyleCache}):e.symbol.clone();return c(l,null,{add:r}),l}const s=t?.renderer??I(a);let o=s&&"getSymbolAsync"in s?await s.getSymbolAsync(e,t):null;if(!o)return;if(o="web-style"===o.type?await o.fetchSymbol({...t,acceptedFormats:t?.webStyleAcceptedFormats,cache:t?.webStyleCache}):o.clone(),!(s&&"visualVariables"in s&&s.visualVariables?.length&&j(o)))return c(o,null,{add:r}),o;if("arcadeRequiredForVisualVariables"in s&&s.arcadeRequiredForVisualVariables&&null==t?.arcade){const e={...t};e.arcade=await i(),t=e}const{getColor:n,getOpacity:f,getAllSizes:y,getRotationAngle:h}=await import("../../renderers/visualVariables/support/visualVariableUtils.js"),m=[],d=[],b=[],g=[];for(const i of s.visualVariables)switch(i.type){case"color":m.push(i);break;case"opacity":d.push(i);break;case"rotation":g.push(i);break;case"size":i.target||b.push(i)}const w=!!m.length&&m[m.length-1],S=w?n(w,e,t):null,v=!!t?.ignoreOpacity,V=!!d.length&&d[d.length-1],k=V?f(V,e,t):null;if(c(o,S,v?void 0:{override:k,add:r}),b.length&&!0!==t?.ignoreSizeVariables){const l=y(b,e,t);await u(o,l)}if(!0!==t?.ignoreRotationVariables)for(const i of g)p(o,h(i,e,t),i.axis);return o}async function C(e,t){if(!e)return;const{layer:l,sourceLayer:a}=e,r=L(l??a);if(null!=e.symbol&&(null==t||!0!==t.ignoreGraphicSymbol)){const l="web-style"===e.symbol.type?await e.symbol.fetchSymbol({...t,acceptedFormats:t?.webStyleAcceptedFormats}):e.symbol.clone();return f(l,r)}const s=t?.renderer??I(l)??I(a);let o=s&&"getSymbolAsync"in s?await s.getSymbolAsync(e,t):void 0;if(!o)return;o="web-style"===o.type?await o.fetchSymbol({...t,acceptedFormats:t?.webStyleAcceptedFormats}):o.clone();const n=f(o,void 0);if(!s||!("visualVariables"in s)||"visualVariables"in s&&!s.visualVariables||"visualVariables"in s&&!s.visualVariables?.length||!j(o))return n?y(n,r):void 0;if("arcadeRequiredForVisualVariables"in s&&s.arcadeRequiredForVisualVariables&&null==t?.arcade){const e={...t};e.arcade=await i(),t=e}const{getColor:c,getOpacity:u}=await import("../../renderers/visualVariables/support/visualVariableUtils.js"),p=[],h=[];if(s.visualVariables)for(const i of s.visualVariables)switch(i.type){case"color":p.push(i);break;case"opacity":h.push(i)}const m=p.length>0?p[p.length-1]:null,d=(m?c(m,e,t):void 0)??n,b=h.length>0?h[h.length-1]:null,g=b?u(b,e,t):null;return null!=d&&null!=g&&(d.a=g),d?y(d,r):null}function j(e){return!n(e)||"water"!==e.symbolLayers.at(0)?.type}function I(e){if(e)return"renderer"in e?e.renderer:void 0}async function z(e,t,l){if(!e)return;const{layer:a,sourceLayer:i}=e,r=l?.renderer??I(a)??I(i);if(!r)return null;if("visualVariables"in r&&r.visualVariables?.length){const{getRampStops:i}=await import("../../widgets/Legend/support/colorRampUtils.js"),{getRampStops:s}=await import("../../widgets/Legend/support/sizeRampUtils.js"),{getFormatOptionsForVisualVariable:o}=await import("../../widgets/Legend/support/utils.js");let n=null;for(const c of r.visualVariables){const u=t?o(a,c,t.timeZone):null;let p=null;switch(c.type){case"color":p=await i(c,null,u);break;case"opacity":p=await i(c);break;case"size":c.target||(p=await s(r,c,null,l?.scale||t?.scale,t,u))}if(p?.length){const t=p.find((t,l)=>{const a=e.attributes[c.field];return 0===l?a>=t.value:l===p?.length-1?a<=t.value:t.value===a});if(t){n=t.label;break}}}if(n)return n}switch(r.type){case"class-breaks":{const t="getClassBreakInfo"in r?await r.getClassBreakInfo(e,l):null;return t?.label??(t&&r.classBreakInfos?.length>1)?`${t.minValue} - ${t.maxValue}`:null}case"unique-value":{const t="getUniqueValueInfo"in r?await r.getUniqueValueInfo(e,l):null;return t?.label}}return null}async function U(e,t){e?.layer&&a(e.layer)&&((e=e.cloneShallow()).layer=e.layer.findSublayerForFeature(e)??null);const i=null===e?t?.fallbackSymbol??null:await R(e,{ignoreGraphicSymbol:!!e.layer,ignoreOpacity:t?.ignoreOpacity??!0,ignoreRotationVariables:t?.ignoreRotationVariables??!0,ignoreSizeVariables:t?.ignoreSizeVariables??!0})??t?.fallbackSymbol??null;if(!i)return null;let r=!t.useGeometryForShape||!e?.geometry;r&&"polygon"===e?.layer?.geometryType&&(r=!1);const s=await F(i,{geometry:t.useGeometryForShape?e?.geometry??null:null,useMarkerSymbolSize:!1!==t.useMarkerSymbolSize,...r?{maxSize:l(t.widthInPixels??16)}:{size:{width:l(t.widthInPixels??16),height:l(t.heightInPixels??16)}},..."cim"===i?.type?{cimOptions:{feature:{attributes:e?.attributes??{}}}}:{}});if(!s)return null;return"element"===(t?.format??"element")?s:s.outerHTML}export{C as getDisplayedColor,R as getDisplayedSymbol,z as getLegendLabel,U as previewGraphic,V as renderColorRampPreviewHTML,w as renderDotDensityPreviewHTML,S as renderPieChartPreviewHTML,F as renderPreviewHTML,v as renderRelationshipRampPreviewHTML};
2
+ import{pt2px as e,toPt as t,px2pt as l}from"../../core/screenUtils.js";import{isSubtypeGroupLayer as a}from"../../layers/support/layerUtils.js";import{loadArcade as i}from"../../support/loadArcade.js";import{getStroke as r}from"./gfxUtils.js";import{renderSymbol as s,renderOnce as o}from"./renderUtils.js";import{isSymbol3D as n}from"./typeUtils.js";import{applyColorToSymbol as c,applySizesToSymbol as u,applyRotationToSymbol as p,getColorFromSymbol as f,applyOpacityToColor as y}from"./utils.js";import{renderRelationshipRamp as m}from"../../widgets/Legend/styles/support/relationshipUtils.js";import{getRelationshipRampElement as d}from"../../widgets/Legend/support/relationshipRampUtils.js";let h=null;const b=[255,255,255];function g(e,t){return Math.floor(Math.random()*(t-e+1)+e)}function w(e,t,l){const{backgroundColor:a,outline:i,dotSize:r}=e,s=l?.swatchSize||22,o=.8,n=Math.round(s*s/Math.max(r,.5)**2*o),c=window.devicePixelRatio,u=document.createElement("canvas"),p=s*c;u.width=p,u.height=p,u.style.width=u.width/c+"px",u.style.height=u.height/c+"px";const f=u.getContext("2d");if(a&&(f.fillStyle=a.toCss(!0),f.fillRect(0,0,p,p),f.fill()),f.fillStyle=t?.toCss(!0)??"",h&&h.length/2===n)for(let m=0;m<2*n;m+=2){const e=h[m],t=h[m+1];f.fillRect(e,t,r*c,r*c),f.fill()}else{h=[];for(let e=0;e<2*n;e+=2){const e=g(0,p),t=g(0,p);h.push(e,t),f.fillRect(e,t,r*c,r*c),f.fill()}}i&&(i.color&&(f.strokeStyle=i.color.toCss(!0)),f.lineWidth=i.width,f.strokeRect(0,0,p,p));const y=new Image(s,s);return y.src=u.toDataURL(),y.ariaLabel=l?.ariaLabel??null,y.alt=l?.ariaLabel??"",y}function S(e,t={}){const l=t.radius||40,a=2*Math.PI*l,i=e.length,o=a/i,n=[],c=r(t.outline);null!=c?.width&&(c.width*=2),(c||t.backgroundColor)&&n.push({shape:{type:"circle",cx:l,cy:l,r:l},fill:t.backgroundColor,stroke:c,offset:[0,0]});const u=t.values,p=u?.length===i&&100===u.reduce((e,t)=>e+t,0),f=[0];for(let r=0;r<i;r++){let t=null;p&&(t=u[r]*a/100,f.push(t+f[r])),n.push({shape:{type:"circle",cx:l,cy:l,r:l/2},fill:[0,0,0,0],stroke:{width:l,dashArray:`${(t??o)/2} ${a}`,dashoffset:"-"+(p?f[r]/2:r*(o/2)),color:e[r]},offset:[0,0]})}let y=null;const m=2*l+(c?.width||0),d=t.holePercentage;if(d){c&&n.push({shape:{type:"circle",cx:l,cy:l,r:l*d},fill:null,stroke:c,offset:[0,0]});const e=m/2;y=[[{shape:{type:"circle",cx:e,cy:e,r:e},fill:b,stroke:c?{...c,color:b}:null,offset:[0,0]},{shape:{type:"circle",cx:e,cy:e,r:l*d},fill:[0,0,0],stroke:null,offset:[0,0]}]]}return s([n],[m,m],{cssEffectFilter:t.cssEffectFilter,ignoreStrokeWidth:!0,masking:y,rotations:[-90],ariaLabel:t.ariaLabel})}function v(e,t={}){const l=e?.authoringInfo;if(!("relationship"===l?.type)||!l?.numClasses||!e.uniqueValueInfos)return null;const{focus:a,numClasses:i}=l,r=d({focus:a,numClasses:i,infos:e.uniqueValueInfos}),s=t?.node||document.createElement("div");return o(s,()=>m(r,t.id||"relationship",{opacity:t.opacity||1,cssEffectFilter:t.cssEffectFilter,ariaLabel:t.ariaLabel})),s}function V(e,t={}){const l=24,a=75,i="horizontal"===t.align,r=i?a:l,s=i?l:a,o=t.width??r,n=t.height??s,c=t.gradient??!0,u=window.devicePixelRatio,p=o*u,f=n*u,y=document.createElement("canvas");y.width=p,y.height=f,y.ariaLabel=t.ariaLabel??null,y.style.width=`${o}px`,y.style.height=`${n}px`;const m=y.getContext("2d"),d=i?p:0,h=i?0:f;if(c){const t=m.createLinearGradient(0,0,d,h),l=e.length,a=1===l?0:1/(l-1);e.forEach((e,l)=>t.addColorStop(l*a,e.toString())),m.fillStyle=t,m.fillRect(0,0,p,f)}else{const t=i?p/e.length:p,l=i?f:f/e.length;let a=0,r=0;for(const s of e)m.fillStyle=s.toString(),m.fillRect(a,r,t,l),a=i?a+t:0,r=i?0:r+l}const b=document.createElement("div");return b.style.width=`${o}px`,b.style.height=`${n}px`,x(b,t?.cssEffectFilter),b.appendChild(y),b}function k(e){const t=e.match(/drop-shadow\(\s*([^\s]+)\s+[^\s]+\s+[^\s]+\s+.+?\)/);return t?t[1]:null}function x(l,a){if(!a)return;l.style.filter=a;const i=k(a);if(i){const a=e(t(i));a<0?l.style.marginLeft=`${Math.abs(a)}px`:l.style.marginRight=`${a}px`}}async function F(e,t){switch(e.type){case"web-style":{const{previewWebStyleSymbol:l}=await import("./previewWebStyleSymbol.js");return l(e,F,t)}case"label-3d":case"line-3d":case"mesh-3d":case"point-3d":case"polygon-3d":{const{previewSymbol3D:l}=await import("./previewSymbol3D.js");return l(e,t)}case"simple-marker":case"simple-line":case"simple-fill":case"picture-marker":case"picture-fill":case"text":{const{previewSymbol2D:l}=await import("./previewSymbol2D.js");return l(e,t)}case"cim":{const{previewCIMSymbol:l}=await import("./previewCIMSymbol.js");return l(e,t)}default:return}}function L(e){return e&&void 0!==e.opacity?e.opacity*("parent"in e?L(e.parent):1):1}async function R(e,t){if(!e)return;const l=e.sourceLayer,a=(null!=t&&t.useSourceLayer?l:e.layer)??l,r=t?.ignoreOpacity?1:L(a);if(null!=e.symbol&&(null==t||!0!==t.ignoreGraphicSymbol)){const l="web-style"===e.symbol.type?await e.symbol.fetchSymbol({...t,acceptedFormats:t?.webStyleAcceptedFormats}):e.symbol.clone();return c(l,null,{add:r}),l}const s=t?.renderer??I(a);let o=s&&"getSymbolAsync"in s?await s.getSymbolAsync(e,t):null;if(!o)return;if(o="web-style"===o.type?await o.fetchSymbol({...t,acceptedFormats:t?.webStyleAcceptedFormats}):o.clone(),!(s&&"visualVariables"in s&&s.visualVariables?.length&&j(o)))return c(o,null,{add:r}),o;if("arcadeRequiredForVisualVariables"in s&&s.arcadeRequiredForVisualVariables&&null==t?.arcade){const e={...t};e.arcade=await i(),t=e}const{getColor:n,getOpacity:f,getAllSizes:y,getRotationAngle:m}=await import("../../renderers/visualVariables/support/visualVariableUtils.js"),d=[],h=[],b=[],g=[];for(const i of s.visualVariables)switch(i.type){case"color":d.push(i);break;case"opacity":h.push(i);break;case"rotation":g.push(i);break;case"size":i.target||b.push(i)}const w=!!d.length&&d[d.length-1],S=w?n(w,e,t):null,v=!!t?.ignoreOpacity,V=!!h.length&&h[h.length-1],k=V?f(V,e,t):null;if(c(o,S,v?void 0:{override:k,add:r}),b.length&&!0!==t?.ignoreSizeVariables){const l=y(b,e,t);await u(o,l)}if(!0!==t?.ignoreRotationVariables)for(const i of g)p(o,m(i,e,t),i.axis);return o}async function C(e,t){if(!e)return;const{layer:l,sourceLayer:a}=e,r=L(l??a);if(null!=e.symbol&&(null==t||!0!==t.ignoreGraphicSymbol)){const l="web-style"===e.symbol.type?await e.symbol.fetchSymbol({...t,acceptedFormats:t?.webStyleAcceptedFormats}):e.symbol.clone();return f(l,r)}const s=t?.renderer??I(l)??I(a);let o=s&&"getSymbolAsync"in s?await s.getSymbolAsync(e,t):void 0;if(!o)return;o="web-style"===o.type?await o.fetchSymbol({...t,acceptedFormats:t?.webStyleAcceptedFormats}):o.clone();const n=f(o,void 0);if(!s||!("visualVariables"in s)||"visualVariables"in s&&!s.visualVariables||"visualVariables"in s&&!s.visualVariables?.length||!j(o))return n?y(n,r):void 0;if("arcadeRequiredForVisualVariables"in s&&s.arcadeRequiredForVisualVariables&&null==t?.arcade){const e={...t};e.arcade=await i(),t=e}const{getColor:c,getOpacity:u}=await import("../../renderers/visualVariables/support/visualVariableUtils.js"),p=[],m=[];if(s.visualVariables)for(const i of s.visualVariables)switch(i.type){case"color":p.push(i);break;case"opacity":m.push(i)}const d=p.length>0?p[p.length-1]:null,h=(d?c(d,e,t):void 0)??n,b=m.length>0?m[m.length-1]:null,g=b?u(b,e,t):null;return null!=h&&null!=g&&(h.a=g),h?y(h,r):null}function j(e){return!n(e)||"water"!==e.symbolLayers.at(0)?.type}function I(e){if(e)return"renderer"in e?e.renderer:void 0}async function z(e,t,l){if(!e)return;const{layer:a,sourceLayer:i}=e,r=l?.renderer??I(a)??I(i);if(!r)return null;if("visualVariables"in r&&r.visualVariables?.length){const{getRampStops:i}=await import("../../widgets/Legend/support/colorRampUtils.js"),{getRampStops:s}=await import("../../widgets/Legend/support/sizeRampUtils.js"),{getFormatOptionsForVisualVariable:o}=await import("../../widgets/Legend/support/utils.js");let n=null;for(const c of r.visualVariables){const u=t?o(a,c,t.timeZone):null;let p=null;switch(c.type){case"color":p=await i(c,null,u);break;case"opacity":p=await i(c);break;case"size":c.target||(p=await s(r,c,null,l?.scale||t?.scale,t,u))}if(p?.length){const t=p.find((t,l)=>{const a=e.attributes[c.field];return 0===l?a>=t.value:l===p?.length-1?a<=t.value:t.value===a});if(t){n=t.label;break}}}if(n)return n}switch(r.type){case"class-breaks":{const t="getClassBreakInfo"in r?await r.getClassBreakInfo(e,l):null;return t?.label??(t&&r.classBreakInfos?.length>1)?`${t.minValue} - ${t.maxValue}`:null}case"unique-value":{const t="getUniqueValueInfo"in r?await r.getUniqueValueInfo(e,l):null;return t?.label}}return null}async function U(e,t){e?.layer&&a(e.layer)&&((e=e.cloneShallow()).layer=e.layer.findSublayerForFeature(e)??null);const i=null===e?t?.fallbackSymbol??null:await R(e,{ignoreGraphicSymbol:!!e.layer,ignoreOpacity:t?.ignoreOpacity??!0,ignoreRotationVariables:t?.ignoreRotationVariables??!0,ignoreSizeVariables:t?.ignoreSizeVariables??!0})??t?.fallbackSymbol??null;if(!i)return null;let r=!t.useGeometryForShape||!e?.geometry;r&&"polygon"===e?.layer?.geometryType&&(r=!1);const s=await F(i,{geometry:t.useGeometryForShape?e?.geometry??null:null,useMarkerSymbolSize:!1!==t.useMarkerSymbolSize,...r?{maxSize:l(t.widthInPixels??16)}:{size:{width:l(t.widthInPixels??16),height:l(t.heightInPixels??16)}},..."cim"===i?.type?{cimOptions:{feature:{attributes:e?.attributes??{}}}}:{}});if(!s)return null;return"element"===(t?.format??"element")?s:s.outerHTML}export{C as getDisplayedColor,R as getDisplayedSymbol,z as getLegendLabel,U as previewGraphic,V as renderColorRampPreviewHTML,w as renderDotDensityPreviewHTML,S as renderPieChartPreviewHTML,F as renderPreviewHTML,v as renderRelationshipRampPreviewHTML};
@@ -0,0 +1,2 @@
1
+ /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
+ import{LRUCache as o}from"../../core/LRUCache.js";const e=new o(500);export{e as webStyleSymbolCache};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{isDeleteItem as t,isAddAttachmentItem as e,isDeleteAttachmentItem as a,isModifyAttachmentItem as s,isAddItem as r,isModifyItem as h}from"./ApplySetItem.js";class p{constructor(){this.applyItems=new Map,this.featureState=null}get items(){return[...this.applyItems.values()]}get deleteItems(){return this.items.filter(t)}_add(t){this.applyItems.set(t.featureChangeId,t)}revert(){this.featureState?.clearAll(),this.applyItems.clear()}push(p){if(e(p))return void this._add(p);const i=this.applyItems.get(p.featureChangeId);i?(r(i)&&t(p)&&(this.applyItems.delete(i.featureChangeId),this.featureState?.removeLocalState(i)),r(i)&&h(p)&&(i.graphic=p.graphic,this.featureState?.updateLocalState(i)),h(i)&&t(p)&&(this.applyItems.delete(i.featureChangeId),p.graphic=i.revertGraphic,this._add(p),this.featureState?.removeLocalState(i),this.featureState?.applyLocalState(p)),h(i)&&h(p)&&(i.graphic=p.graphic,this.featureState?.updateLocalState(i)),s(i)&&a(p)&&(this.applyItems.delete(i.featureChangeId),this._add(p)),s(i)&&s(p)&&(i.attachmentData=p.attachmentData)):(this._add(p),a(p)||s(p)||this.featureState?.applyLocalState(p))}}export{p as ApplySet};
2
+ import{isDeleteItem as t,isAddAttachmentItem as e,isDeleteAttachmentItem as a,isModifyAttachmentItem as s,isAddItem as r,isModifyItem as h}from"./ApplySetItem.js";class p{constructor(){this.applyItems=new Map,this.featureState=null}get items(){return[...this.applyItems.values()]}get deleteItems(){return this.items.filter(t)}_add(t){this.applyItems.set(t.featureChangeId,t)}revert(){this.featureState?.clearAll(),this.applyItems.clear()}push(p){if(e(p))return void this._add(p);const i=this.applyItems.get(p.featureChangeId);i?(r(i)&&t(p)&&(this.applyItems.delete(i.featureChangeId),this.featureState?.removeLocalState(i)),r(i)&&h(p)&&(i.graphic=p.graphic,this.featureState?.updateLocalState(i)),h(i)&&t(p)&&(this.applyItems.delete(i.featureChangeId),p.graphic=i.revertGraphic,this._add(p),this.featureState?.removeLocalState(i),this.featureState?.applyLocalState(p)),h(i)&&h(p)&&(i.graphic=p.graphic,this.featureState?.updateLocalState(i)),s(i)&&a(p)&&(this.applyItems.delete(i.featureChangeId),this._add(p)),s(i)&&s(p)&&(i.attachmentData=p.attachmentData)):(this._add(p),a(p)||s(p)||this.featureState?.applyLocalState(p))}remove(t){this.applyItems.has(t.featureChangeId)&&(this.applyItems.delete(t.featureChangeId),e(t)||a(t)||s(t)||this.featureState&&this.featureState.removeLocalState(t))}}export{p as ApplySet};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- let t=-1383920;function e(t,e=""){""!==e&&t.reasonsIncluded.add(e)}function a(t){return"delete"===t.type}function n(t){return"modify"===t.type}function r(t){return"add"===t.type}function s(t){return"addAttachment"===t.type}function i(t){return"deleteAttachment"===t.type}function c(t){return"modifyAttachment"===t.type}class h{constructor(t){this.reasonsIncluded=new Set,this.graphic=t.graphic.clone(),this.layer=t.layer,e(this,t.reason)}get featureChangeId(){return`${this.layer.id}:${this.graphic.attributes[this.layer.objectIdField].toString()}`}}class d extends h{constructor(t){super(t),this.type="delete"}}class o extends h{constructor(e){super(e),this.type="add";const a=t--;e.graphic.attributes[e.layer.objectIdField]=a,this.graphic.attributes[e.layer.objectIdField]=a}}class u extends h{constructor(t){super(t),this.type="modify",this.revertGraphic=t.originalGraphic.clone()}}class l extends h{constructor(t){super(t),this.type="addAttachment",this.attachmentData=null,this.attachmentData=t.attachmentData}}class p extends h{constructor(t){super(t),this.type="deleteAttachment",this.attachment=t.attachment}get featureChangeId(){return`${this.layer.id}:attach:${this.attachment.id.toString()}`}}class y extends h{constructor(t){super(t),this.type="modifyAttachment",this.attachmentData=null,this.attachmentData=t.attachmentData,this.originalAttachment=t.originalAttachment}get featureChangeId(){return`${this.layer.id}:attach:${this.originalAttachment?.id.toString()}`}}export{l as ApplySetAddAttachmentItem,o as ApplySetAddItem,p as ApplySetDeleteAttachmentItem,d as ApplySetDeleteItem,h as ApplySetItemBase,y as ApplySetModifyAttachmentItem,u as ApplySetModifyItem,s as isAddAttachmentItem,r as isAddItem,i as isDeleteAttachmentItem,a as isDeleteItem,c as isModifyAttachmentItem,n as isModifyItem};
2
+ let t=-1383920;function e(t,e=""){""!==e&&t.reasonsIncluded.add(e)}function a(t){return"delete"===t.type}function n(t){return"modify"===t.type}function r(t){return"add"===t.type}function i(t){return"addAttachment"===t.type}function s(t){return"deleteAttachment"===t.type}function c(t){return"modifyAttachment"===t.type}class h{constructor(t){this.reasonsIncluded=new Set,this.graphic=t.graphic.clone(),this.layer=t.layer,e(this,t.reason)}get featureChangeId(){return`${this.layer.id}:${this.graphic.attributes[this.layer.objectIdField].toString()}`}}class d extends h{constructor(t){super(t),this.type="delete"}}class o extends h{constructor(e){super(e),this.type="add";const a=t--;e.graphic.attributes[e.layer.objectIdField]=a,this.graphic.attributes[e.layer.objectIdField]=a}}class u extends h{constructor(t){super(t),this.type="modify",this.revertGraphic=t.originalGraphic.clone()}}class l extends h{constructor(t){super(t),this.type="addAttachment",this.attachmentData=null,this.attachmentData=t.attachmentData}get featureChangeId(){let e=this.attachmentData?.globalId??"";return""===e&&(t--,e=`att${t}`),`${this.layer.id}:${this.graphic.attributes[this.layer.objectIdField].toString()}-attachment-${e}`}}class p extends h{constructor(t){super(t),this.type="deleteAttachment",this.attachment=t.attachment}get featureChangeId(){return`${this.layer.id}:attach:${this.attachment.id.toString()}`}}class y extends h{constructor(t){super(t),this.type="modifyAttachment",this.attachmentData=null,this.attachmentData=t.attachmentData,this.originalAttachment=t.originalAttachment}get featureChangeId(){return`${this.layer.id}:attach:${this.originalAttachment?.id.toString()}`}}export{l as ApplySetAddAttachmentItem,o as ApplySetAddItem,p as ApplySetDeleteAttachmentItem,d as ApplySetDeleteItem,h as ApplySetItemBase,y as ApplySetModifyAttachmentItem,u as ApplySetModifyItem,i as isAddAttachmentItem,r as isAddItem,s as isDeleteAttachmentItem,a as isDeleteItem,c as isModifyAttachmentItem,n as isModifyItem};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{__decorate as e}from"tslib";import t from"../../../../core/Accessor.js";import{multiplyOpacity as i}from"../../../../core/colorUtils.js";import{makeHandle as s}from"../../../../core/handleUtils.js";import{ignoreAbortErrors as a,isAborted as r}from"../../../../core/promiseUtils.js";import{watch as o,initial as n}from"../../../../core/reactiveUtils.js";import{property as l,subclass as h}from"../../../../core/accessorSupport/decorators.js";import{UpdatingHandles as c}from"../../../../core/support/UpdatingHandles.js";import p from"../../../../symbols/SimpleFillSymbol.js";import m from"../../../../symbols/SimpleLineSymbol.js";import{ExclusiveOperationManager as d}from"../../../analysis/ExclusiveOperationManager.js";import u from"../../../../widgets/Sketch/SketchViewModel.js";function y(e){return"polygon"===e?.type}let w=class extends t{constructor(e){super(e),this._invisibleAreaSymbol=new p({color:null,outline:null}),this._operationManager=new d,this._updatingHandles=new c}initialize(){this._sketchViewModel=new u({defaultCreateOptions:{mode:"click"},defaultUpdateOptions:{enableMoveAllGraphics:!1,enableRotation:!1,enableScaling:!1,enableZ:!1,highlightOptions:{enabled:!1},multipleSelectionEnabled:!1,reshapeOptions:{edgeOperation:"none",shapeOperation:"none"},toggleToolOnClick:!1,tool:"reshape"},updateOnGraphicClick:!1,view:this.view}),this.addHandles([o(()=>({interactive:this.measurementViewData.interactive,visible:this.measurementViewData.visible}),({interactive:e,visible:t})=>{t&&e&&this._analysis.geometry?"place"!==this._operationManager.currentOperationType&&a(this.reshape()):this._operationManager.stop()}),o(()=>this.measurementViewData.analysis.geometry,e=>{e||(this._operationManager.stop(),this._sketchViewModel?.cancel(),this.measurementViewData.sketchGraphicsLayer?.removeAll())}),o(()=>this.measurementViewData.snappingOptions,e=>{this._sketchViewModel&&(this._sketchViewModel.snappingOptions=e)},n),o(()=>this.view.effectiveTheme.accentColor,e=>{this._areaSymbol=new p({color:i(e,.3),outline:new m({color:e,width:2})})},n)])}destroy(){this._areaSymbol?.destroy(),this._invisibleAreaSymbol.destroy(),this._operationManager.destroy(),this._sketchViewModel?.destroy(),this._updatingHandles.destroy()}get state(){if(!this.measurementViewData.visible||!this._operationManager.currentOperationType)return"idle";switch(this._operationManager.currentOperationType){case"place":return"placing";case"reshape":return"reshaping"}}get updating(){return!this._sketchViewModel||this._sketchViewModel.updating||this._updatingHandles.updating}async place(e){return this._operationManager.start("place",async t=>{if(!this._sketchViewModel||!this.measurementViewData.sketchGraphicsLayer)return;const i=this._analysis.clone(),o=e=>{const i="state"in e?e.state:"active",s="graphic"in e?e.graphic:e.graphics?.at(0);switch(i){case"start":case"active":{const e=s?.geometry;"polygon"===e?.type&&(this._analysis.geometry=e);break}case"cancel":case"complete":t.stop(),this.reshape()}},n=this._sketchViewModel.on(["create","undo","redo"],o);t.handles.push(n,s(()=>{n.remove(),this._sketchViewModel?.cancel(),this.measurementViewData.sketchGraphicsLayer?.removeAll();const s=this._analysis;return s.valid?r(e)||i.equals(s)?t.reject():void t.resolve({}):(s.clear(),t.reject())})),this._sketchViewModel.polygonSymbol=this._invisibleAreaSymbol,this._sketchViewModel.layer=this.measurementViewData.sketchGraphicsLayer,this._updatingHandles.consumePromise(a(this._sketchViewModel.create("polygon")))},e)}async reshape(e){return this._operationManager.start("reshape",async t=>{if(!this._sketchViewModel)return;const i=()=>this._areaSymbol&&this._sketchViewModel&&this.measurementViewData.manipulatorGraphic&&this.measurementViewData.manipulatorGraphicsLayer?(this._sketchViewModel.polygonSymbol=this._areaSymbol,this._sketchViewModel.layer=this.measurementViewData.manipulatorGraphicsLayer,this._updatingHandles.addPromise(a(this._sketchViewModel.update(this.measurementViewData.manipulatorGraphic,{tool:"reshape"})))):Promise.resolve(),o=this._sketchViewModel.on("update",e=>{const s=e.graphics[0]?.geometry;this._analysis.geometry=y(s)?s:null,"complete"===e.state&&(this.measurementViewData.interactive?i():t.stop())});t.handles.push(o,s(()=>{if(o.remove(),this._sketchViewModel?.cancel(),r(e))return t.reject();t.resolve()})),await i()},e)}get _analysis(){return this.measurementViewData.analysis}};e([l()],w.prototype,"_sketchViewModel",void 0),e([l()],w.prototype,"measurementViewData",void 0),e([l()],w.prototype,"state",null),e([l()],w.prototype,"updating",null),e([l()],w.prototype,"view",void 0),w=e([h("esri.views.2d.analysis.AreaMeasurement.AreaMeasurementTool")],w);export{w as AreaMeasurementTool};
2
+ import{__decorate as e}from"tslib";import t from"../../../../core/Accessor.js";import{multiplyOpacity as i}from"../../../../core/colorUtils.js";import{makeHandle as s}from"../../../../core/handleUtils.js";import{ignoreAbortErrors as a,isAborted as r}from"../../../../core/promiseUtils.js";import{watch as o,initial as n}from"../../../../core/reactiveUtils.js";import{property as l,subclass as h}from"../../../../core/accessorSupport/decorators.js";import{UpdatingHandles as c}from"../../../../core/support/UpdatingHandles.js";import p from"../../../../symbols/SimpleFillSymbol.js";import m from"../../../../symbols/SimpleLineSymbol.js";import{ExclusiveOperationManager as d}from"../../../analysis/ExclusiveOperationManager.js";import u from"../../../../widgets/Sketch/SketchViewModel.js";function y(e){return"polygon"===e?.type}let w=class extends t{constructor(e){super(e),this._invisibleAreaSymbol=new p({color:null,outline:null}),this._operationManager=new d,this._updatingHandles=new c}initialize(){this._sketchViewModel=new u({defaultCreateOptions:{mode:"click"},defaultUpdateOptions:{enableMoveAllGraphics:!1,enableRotation:!1,enableScaling:!1,enableZ:!1,highlightOptions:{enabled:!1},multipleSelectionEnabled:!1,reshapeOptions:{edgeOperation:"none",shapeOperation:"none"},toggleToolOnClick:!1,tool:"reshape"},updateOnGraphicClick:!1,cancelUpdateOnClickAway:!1,view:this.view}),this.addHandles([o(()=>({interactive:this.measurementViewData.interactive,visible:this.measurementViewData.visible}),({interactive:e,visible:t})=>{t&&e&&this._analysis.geometry?"place"!==this._operationManager.currentOperationType&&a(this.reshape()):this._operationManager.stop()}),o(()=>this.measurementViewData.analysis.geometry,e=>{e||(this._operationManager.stop(),this._sketchViewModel?.cancel(),this.measurementViewData.sketchGraphicsLayer?.removeAll())}),o(()=>this.measurementViewData.snappingOptions,e=>{this._sketchViewModel&&(this._sketchViewModel.snappingOptions=e)},n),o(()=>this.view.effectiveTheme.accentColor,e=>{this._areaSymbol=new p({color:i(e,.3),outline:new m({color:e,width:2})})},n)])}destroy(){this._areaSymbol?.destroy(),this._invisibleAreaSymbol.destroy(),this._operationManager.destroy(),this._sketchViewModel?.destroy(),this._updatingHandles.destroy()}get state(){if(!this.measurementViewData.visible||!this._operationManager.currentOperationType)return"idle";switch(this._operationManager.currentOperationType){case"place":return"placing";case"reshape":return"reshaping"}}get updating(){return!this._sketchViewModel||this._sketchViewModel.updating||this._updatingHandles.updating}async place(e){return this._operationManager.start("place",async t=>{if(!this._sketchViewModel||!this.measurementViewData.sketchGraphicsLayer)return;const i=this._analysis.clone(),o=e=>{const i="state"in e?e.state:"active",s="graphic"in e?e.graphic:e.graphics?.at(0);switch(i){case"start":case"active":{const e=s?.geometry;"polygon"===e?.type&&(this._analysis.geometry=e);break}case"cancel":case"complete":t.stop(),this.reshape()}},n=this._sketchViewModel.on(["create","undo","redo"],o);t.handles.push(n,s(()=>{n.remove(),this._sketchViewModel?.cancel(),this.measurementViewData.sketchGraphicsLayer?.removeAll();const s=this._analysis;return s.valid?r(e)||i.equals(s)?t.reject():void t.resolve({}):(s.clear(),t.reject())})),this._sketchViewModel.polygonSymbol=this._invisibleAreaSymbol,this._sketchViewModel.layer=this.measurementViewData.sketchGraphicsLayer,this._updatingHandles.consumePromise(a(this._sketchViewModel.create("polygon")))},e)}async reshape(e){return this._operationManager.start("reshape",async t=>{if(!this._sketchViewModel)return;const i=()=>this._areaSymbol&&this._sketchViewModel&&this.measurementViewData.manipulatorGraphic&&this.measurementViewData.manipulatorGraphicsLayer?(this._sketchViewModel.polygonSymbol=this._areaSymbol,this._sketchViewModel.layer=this.measurementViewData.manipulatorGraphicsLayer,this._updatingHandles.addPromise(a(this._sketchViewModel.update(this.measurementViewData.manipulatorGraphic,{tool:"reshape"})))):Promise.resolve(),o=this._sketchViewModel.on("update",e=>{const s=e.graphics[0]?.geometry;this._analysis.geometry=y(s)?s:null,"complete"===e.state&&(this.measurementViewData.interactive?i():t.stop())});t.handles.push(o,s(()=>{if(o.remove(),this._sketchViewModel?.cancel(),r(e))return t.reject();t.resolve()})),await i()},e)}get _analysis(){return this.measurementViewData.analysis}};e([l()],w.prototype,"_sketchViewModel",void 0),e([l()],w.prototype,"measurementViewData",void 0),e([l()],w.prototype,"state",null),e([l()],w.prototype,"updating",null),e([l()],w.prototype,"view",void 0),w=e([h("esri.views.2d.analysis.AreaMeasurement.AreaMeasurementTool")],w);export{w as AreaMeasurementTool};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{create as e}from"../../../../geometry/support/aaBoundingRect.js";import t from"../../../../layers/support/TileInfo.js";import{tileSizeInTileUnits as s,tileSizeInPixels as r}from"./constants.js";import{SymbolFader as i}from"./decluttering/SymbolFader.js";import{writeOpacityToBuffers as o}from"./decluttering/util.js";import{RenderableTile as l}from"../webgl/RenderableTile.js";import n from"../webgl/TileContainer.js";import{simplePipelineState as a}from"../webgl/shaderGraph/utils.js";import{VTLTechniquesRepo as d}from"../webgl/shaderGraph/techniques/vectorTiles/VTLTechniques.js";import h from"../../tiling/TileCoverage.js";import c from"../../tiling/TileKey.js";const u=1e-6;function y(e,t){if(e){const s=e.getLayoutProperty("visibility");if(!s||1!==s.getValue()&&(void 0===e.minzoom||e.minzoom<t+u)&&(void 0===e.maxzoom||e.maxzoom>=t-u))return!0}return!1}class m extends n{constructor(e){super(e),this._backgroundTiles=[],this._techniques=new d,this._computeDisplayInfoView(e),this._techniques.startup()}destroy(){super.destroy(),this.removeAllChildren(),this._spriteMosaic?.dispose(),this._spriteMosaic=null,this._glyphMosaic?.dispose(),this._glyphMosaic=null,null!=this._symbolFader&&(this._symbolFader.clear(),this._symbolFader=null);const e=this.stage?.context;e&&this._techniques.shutdown(e),this._styleRepository=null,this._backgroundTiles=[]}get fading(){return this._symbolFader?.fading??!1}get symbolFader(){return this._symbolFader}get symbolRepository(){return this._symbolFader?.symbolRepository}setStyleResources(e,t,r,l){if(this._spriteMosaic=e,this._glyphMosaic=t,this._styleRepository=r,this.tilingScheme=l,this._computeDisplayInfoView(l),null==this._symbolFader){const e=(e,t)=>{e.allSymbolsFadingOut=!0,e.lastOpacityUpdate=t,o(e,t,!0),e.decluttered=!0,e.requestRender()};this._symbolFader=new i("vector-tile",this._styleRepository,e,this.children,s)}this._symbolFader.styleRepository=r}setSpriteMosaic(e){this._spriteMosaic?.dispose(),this._spriteMosaic=e}deleteStyleLayers(e){null!=this._symbolFader&&this._symbolFader.deleteStyleLayers(e)}createRenderParams(e){return{...super.createRenderParams(e),renderPass:null,styleLayer:null,styleLayerUID:-1,glyphMosaic:this._glyphMosaic,spriteMosaic:this._spriteMosaic}}doRender(e){const{drawPhase:t}=e,s=1===t||64===t;this.visible&&s&&void 0!==this._spriteMosaic&&super.doRender(e)}addChild(e){return super.addChild(e),null!=this._symbolFader?this._symbolFader.addTile(e):e.decluttered=!0,this.requestRender(),e}removeChild(e){return null!=this._symbolFader&&this._symbolFader.removeTile(e),this.requestRender(),super.removeChild(e)}renderChildren(e){const{drawPhase:t}=e;64!==t?this._doRender(e):super.renderChildren(e)}removeAllChildren(){for(let e=0;e<this.children.length;e++){const t=this.children[e];null!=this._symbolFader&&this._symbolFader.removeTile(t),t.dispose()}super.removeAllChildren()}getStencilTarget(){return this.children.filter(e=>e.neededForCoverage&&e.hasData())}restartDeclutter(){null!=this._symbolFader&&this._symbolFader.restartDeclutter()}_doRender(e){const{context:t,painter:s,state:r}=e,i=this._styleRepository;if(!i)return;const o=i.layers,l=this._displayInfo.scaleToZoom(r.scale);this.children.forEach(e=>e.disposeLayerData()),super.renderChildren(e),i.backgroundBucketIds.length>0&&(e.renderPass="background",this._renderBackgroundLayers(e,i.backgroundBucketIds,l)),1===e.drawPhase&&this._fade(l,r);const n=this.children.filter(t=>(1===e.drawPhase&&t.fader.fade()<1&&this.requestRender(),t.visible&&t.hasData()));if(n&&0!==n.length){for(const e of n)e.triangleCount=0;t.setClearDepth(1),t.clear(256),s.setPipelineState({color:{write:[!0,!0,!0,!0],blendMode:"composite"},stencil:{write:!1,test:{compare:514,op:{fail:7680,zFail:7680,zPass:7681},mask:255}},depth:{write:!1,test:515}}),e.renderPass="translucent";for(let t=0;t<o.length;t++)this._renderStyleLayer(o[t],e,n);t.bindVAO(null),s.setPipelineState(a);for(const e of n)e.debugInfo.display.triangleCount=e.triangleCount}else t.bindVAO(null)}_fade(e,t){null!=this._symbolFader&&(this._symbolFader.update(e,t)||this.requestRender())}_renderStyleLayer(e,t,s){const{displayLevel:r,renderPass:i}=t;if(void 0===e)return;const o=e.getLayoutProperty("visibility");if(o&&1===o.getValue())return;switch(e.type){case 0:return;case 1:case 2:case 4:case 3:if("translucent"!==i)return}if(s=3===e.type?s.filter(e=>e.decluttered):s.filter(e=>e.neededForCoverage),3!==e.type&&(0===s.length||void 0!==e.minzoom&&e.minzoom>=r+u||void 0!==e.maxzoom&&e.maxzoom<r-u))return;const l=e.uid;t.styleLayerUID=l,t.styleLayer=e;const n=this._techniques.getTechnique(e.type);null!=n&&n.render(t,{tiles:s})}_renderBackgroundLayers(t,i,o){const{state:n}=t,a=this._styleRepository;let d=!1;for(const e of i){const t=a.getLayerById(e);if(t&&0===t.type&&y(a.getLayerById(e),o)){d=!0;break}}if(!d)return;const u=this.tilingScheme,m=u.getTileCoverage(t.state,0,!0,"smallest"),{spans:p,lodInfo:g}=m,{level:f}=g,_=e(),b=[],F=this._backgroundTiles;let R,v=0;for(const{row:h,colFrom:y,colTo:C}of p)for(let t=y;t<=C;t++){if(v<F.length)R=F[v],R.key.set(f,h,g.normalizeCol(t),g.getWorldForColumn(t)),u.getTileBounds(_,R.key,!1),R.x=_[0],R.y=_[3],R.resolution=u.getTileResolution(f);else{const i=new c(f,h,g.normalizeCol(t),g.getWorldForColumn(t)),o=u.getTileBounds(e(),i),n=u.getTileResolution(f);R=new l(i,n,o[0],o[3],r,r,s,s),F.push(R)}R.setTransform(n),b.push(R),v++}const T=this._techniques.getTechnique(0);for(const e of i){const s=a.getLayerById(e);0===s.type&&y(s,o)&&(t.styleLayerUID=s.uid,t.styleLayer=s,T.render(t,{tiles:b}))}h.pool.release(m)}_computeDisplayInfoView(e){let s=e.tileInfo.lods[0].scale;const i=Math.max(25,e.tileInfo.lods.length),o=[];for(let t=0;t<=i;t++)o.push(s),s/=2;this._displayInfo=t.create({scales:o,size:r,spatialReference:e.spatialReference,numLODs:i})}}export{m as VectorTileContainer};
2
+ import{create as e}from"../../../../geometry/support/aaBoundingRect.js";import t from"../../../../layers/support/TileInfo.js";import{tileSizeInTileUnits as s,tileSizeInPixels as r}from"./constants.js";import{SymbolFader as i}from"./decluttering/SymbolFader.js";import{writeOpacityToBuffers as o}from"./decluttering/util.js";import{RenderableTile as l}from"../webgl/RenderableTile.js";import n from"../webgl/TileContainer.js";import{simplePipelineState as a}from"../webgl/shaderGraph/utils.js";import{VTLTechniquesRepo as d}from"../webgl/shaderGraph/techniques/vectorTiles/VTLTechniques.js";import h from"../../tiling/TileCoverage.js";import c from"../../tiling/TileKey.js";const u=1e-6;function y(e,t){if(e){const s=e.getLayoutProperty("visibility");if(!s||1!==s.getValue()&&(void 0===e.minzoom||e.minzoom<t+u)&&(void 0===e.maxzoom||e.maxzoom>=t-u))return!0}return!1}class m extends n{constructor(e){super(e),this._backgroundTiles=[],this._techniques=new d,this._computeDisplayInfoView(e),this._techniques.startup()}destroy(){super.destroy(),this.removeAllChildren(),this._spriteMosaic?.dispose(),this._spriteMosaic=null,this._glyphMosaic?.dispose(),this._glyphMosaic=null,null!=this._symbolFader&&(this._symbolFader.clear(),this._symbolFader=null);const e=this.stage?.context;e&&this._techniques.shutdown(e),this._styleRepository=null,this._backgroundTiles=[]}get fading(){return this._symbolFader?.fading??!1}get symbolFader(){return this._symbolFader}get symbolRepository(){return this._symbolFader?.symbolRepository}setStyleResources(e,t,r,l){if(this._spriteMosaic=e,this._glyphMosaic=t,this._styleRepository=r,this.tilingScheme=l,this._computeDisplayInfoView(l),null==this._symbolFader){const e=(e,t)=>{e.allSymbolsFadingOut=!0,e.lastOpacityUpdate=t,o(e,t,!0),e.decluttered=!0,e.requestRender()};this._symbolFader=new i("vector-tile",this._styleRepository,e,this.children,s)}this._symbolFader.styleRepository=r}setSpriteMosaic(e){this._spriteMosaic?.dispose(),this._spriteMosaic=e}deleteStyleLayers(e){null!=this._symbolFader&&this._symbolFader.deleteStyleLayers(e)}createRenderParams(e){return{...super.createRenderParams(e),renderPass:null,styleLayer:null,styleLayerUID:-1,glyphMosaic:this._glyphMosaic,spriteMosaic:this._spriteMosaic}}doRender(e){const{drawPhase:t}=e,s=1===t||64===t;this.visible&&s&&void 0!==this._spriteMosaic&&super.doRender(e)}addChild(e){return super.addChild(e),null!=this._symbolFader?this._symbolFader.addTile(e):e.decluttered=!0,this.requestRender(),e}removeChild(e){return null!=this._symbolFader&&this._symbolFader.removeTile(e),this.requestRender(),super.removeChild(e)}renderChildren(e){const{drawPhase:t}=e;64!==t?this._doRender(e):super.renderChildren(e)}removeAllChildren(){for(let e=0;e<this.children.length;e++){const t=this.children[e];null!=this._symbolFader&&this._symbolFader.removeTile(t),t.dispose()}super.removeAllChildren()}getStencilTarget(){return this.children.filter(e=>e.neededForCoverage&&e.hasData())}restartDeclutter(){null!=this._symbolFader&&this._symbolFader.restartDeclutter()}_doRender(e){const{context:t,painter:s,state:r}=e,i=this._styleRepository;if(!i)return;const o=i.layers,l=this._displayInfo.scaleToZoom(r.scale);this.children.forEach(e=>e.disposeLayerData()),super.renderChildren(e),i.backgroundBucketIds.length>0&&(e.renderPass="background",this._renderBackgroundLayers(e,i.backgroundBucketIds,l)),1===e.drawPhase&&this._fade(l,r);const n=this.children.filter(t=>(1===e.drawPhase&&t.fader.fade()<1&&this.requestRender(),t.visible&&t.hasData()));if(n&&0!==n.length){for(const e of n)e.triangleCount=0;t.setClearDepth(1),t.clear(256),s.setPipelineState({color:{write:[!0,!0,!0,!0],blendMode:"composite"},stencil:{write:!1,test:{compare:514,op:{fail:7680,zFail:7680,zPass:7681},mask:255}},depth:{write:!1,test:515}}),e.renderPass="translucent";for(let t=0;t<o.length;t++)this._renderStyleLayer(o[t],e,n);t.bindVAO(null),s.setPipelineState(a);for(const e of n)e.debugInfo.display.triangleCount=e.triangleCount}else t.bindVAO(null)}_fade(e,t){null!=this._symbolFader&&(this._symbolFader.update(e,t)||this.requestRender())}_renderStyleLayer(e,t,s){const{displayLevel:r,renderPass:i}=t;if(void 0===e)return;const o=e.getLayoutProperty("visibility");if(o&&1===o.getValue())return;switch(e.type){case 0:return;case 1:case 2:case 4:case 3:if("translucent"!==i)return}if(s=3===e.type?s.filter(e=>e.decluttered):s.filter(e=>e.neededForCoverage),3!==e.type&&(0===s.length||void 0!==e.minzoom&&e.minzoom>=r+u||void 0!==e.maxzoom&&e.maxzoom<r-u))return;const l=e.uid;t.styleLayerUID=l,t.styleLayer=e;const n=this._techniques.getTechnique(e.type);null!=n&&n.render(t,{tiles:s})}_renderBackgroundLayers(t,i,o){const{displayLevel:n,state:a}=t,d=this._styleRepository;let m=!1;for(const e of i){const t=d.getLayerById(e);if(t&&0===t.type&&y(d.getLayerById(e),o)){m=!0;break}}if(!m)return;const p=this.tilingScheme,g=p.getTileCoverage(t.state,0,!0,"smallest"),{spans:f,lodInfo:_}=g,{level:b}=_,F=e(),v=[],R=this._backgroundTiles;let T,C=0;for(const{row:h,colFrom:u,colTo:y}of f)for(let t=u;t<=y;t++){if(C<R.length)T=R[C],T.key.set(b,h,_.normalizeCol(t),_.getWorldForColumn(t)),p.getTileBounds(F,T.key,!1),T.x=F[0],T.y=F[3],T.resolution=p.getTileResolution(b);else{const i=new c(b,h,_.normalizeCol(t),_.getWorldForColumn(t)),o=p.getTileBounds(e(),i),n=p.getTileResolution(b);T=new l(i,n,o[0],o[3],r,r,s,s),R.push(T)}T.setTransform(a),v.push(T),C++}const L=this._techniques.getTechnique(0);for(const e of i){const s=d.getLayerById(e);0!==s.type||!y(s,o)||void 0!==s.minzoom&&s.minzoom>=n+u||void 0!==s.maxzoom&&s.maxzoom<n-u||(t.styleLayerUID=s.uid,t.styleLayer=s,L.render(t,{tiles:v}))}h.pool.release(g)}_computeDisplayInfoView(e){let s=e.tileInfo.lods[0].scale;const i=Math.max(25,e.tileInfo.lods.length),o=[];for(let t=0;t<=i;t++)o.push(s),s/=2;this._displayInfo=t.create({scales:o,size:r,spatialReference:e.spatialReference,numLODs:i})}}export{m as VectorTileContainer};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import e from"../../../../config.js";import t from"../../../../request.js";import i from"../../../../core/Error.js";import{getFullyQualifiedFontName as r}from"../../../../core/fontUtils.js";import has from"../../../../core/has.js";import s from"../../../../core/Logger.js";import{throwIfAborted as a,isAbortError as n}from"../../../../core/promiseUtils.js";import{QueueProcessor as o}from"../../../../core/QueueProcessor.js";import{pt2px as c}from"../../../../core/screenUtils.js";import{numericHash as l}from"../../../../core/string.js";import h from"../../../../symbols/cim/CIMResourceManager.js";import{CIMSymbolHelper as u}from"../../../../symbols/cim/CIMSymbolHelper.js";import m from"../../../../symbols/cim/Rasterizer.js";import{normalizeDashTemplate as p}from"../../../../symbols/cim/utils.js";import{svgSdfTextureInnerSize as d,textureBindingSpriteAtlas as g,textureBindingGlyphAtlas as y}from"./definitions.js";import f from"./GlyphMosaic.js";import M from"./GlyphSource.js";import _ from"./Rect.js";import S from"./SDFConverter.js";import I from"./SpriteMosaic.js";import{discardUrlIfHasUrlHash as w}from"./urlUtils.js";import{getCIMMarkerPlacementHash as z,isSVGImage as T}from"./Utils.js";import{AnimatableTextureResource as b}from"./animatedFormats/AnimatableTextureResource.js";import{AnimationStore as C}from"./animations/store/AnimationStore.js";const P="arial-unicode-ms-regular",R=/[\u0695\u0698\u06a9\u06af\u06b5\u06be\u06c6\u06cc\u06ce\u06d5\u06ca]|\p{Script=Thai}|\p{Script=Lao}|\p{Script=Tamil}|\p{Script=Khmer}/u,x=new Set(["Noto Sans Khmer","Noto Sans Lao","Noto Sans Myanmar","Noto Sans Thai"]),v=()=>s.getLogger("esri.views.MapView"),$=(e,t,r)=>v().error(new i(e,t,r)),A=(e,t="")=>v().warnOnce(e,t);class j{static fromMosaic(e,t){return new j(e,t.page,t.sdf,t.samplingMode)}constructor(e,t,i,r){this.mosaicType=e,this.page=t,this.sdf=i,this.samplingMode=r}}class k{constructor(r){this._requestRender=r,this._resourceManager=new h,this._invalidFonts=new Set,this._sdfConverter=new S(d),this._bindingInfos=new Array,this._hashToBindingIndex=new Map,this._ongoingRasterizations=new Map,this._imageRequestQueue=new o({concurrency:10,process:async(e,r)=>{a(r);try{return await t(e,{responseType:"image",signal:r})}catch(s){if(!n(s))throw new i("mapview-invalid-resource",`Could not fetch requested resource at ${e}`,s);throw s}}}),this.animationStore=new C,this._spriteMosaic=new I(2048,2048,500),this._glyphSource=new M(`${e.fontsUrl}/{fontstack}/{range}.pbf`),this._glyphMosaic=new f(1024,1024,this._glyphSource),this._rasterizer=new m(this.resourceManager)}dispose(){this._spriteMosaic.dispose(),this._glyphMosaic.dispose(),this._rasterizer.dispose(),this._sdfConverter.dispose(),this._spriteMosaic=null,this._glyphMosaic=null,this._sdfConverter=null,this._hashToBindingIndex.clear(),this._hashToBindingIndex=null,this._bindingInfos=null,this._ongoingRasterizations.clear(),this._ongoingRasterizations=null,this._imageRequestQueue.clear(),this._imageRequestQueue=null,this._resourceManager.destroy(),this.animationStore.destroy()}get sprites(){return this._spriteMosaic}get glyphs(){return this._glyphMosaic}get resourceManager(){return this._resourceManager}async rasterizeItem(e,t){if(null==e)return $("mapview-null-resource","Unable to rasterize null resource"),null;if("animation-info"===e.type){const{resource:t}=e,i=this.animationStore.add(t),{location:r}=i;return{rect:new _(r.column,r.row,t.length,1),page:r.page,type:"sprite",width:t.length,height:1,rasterizationScale:1,sdfPaddingRatio:.5,samplingMode:"Linear",sdfDecodeCoeff:1,simplePattern:!1}}if("cim-rasterization-info"!==e.type)return $("mapview-unexpected-resource","Unable to rasterize resource"),null;const{resource:i}=e;if("text"===i.type){const e=await this._rasterizeText(i,t);for(const t of e.glyphs)this._setTextureBinding(1,t.mosaicItem);return e}const r=await this._rasterizeSprite(i,t);return r&&this._setTextureBinding(0,r),r}getMosaicInfo(e,t,i=!1){const r=this._getTextureBindingInfo(e,t,i);return r?{size:r.size}:($("mapview-invalid-resource",`Unable to find resource for ${t}`),{size:[0,0]})}getMosaicTexture(e,t,i=!1){const r=this._getTextureBindingInfo(e,t,i);return r?{texture:r.texture,unit:"sprite"===r.type?g:y}:($("mapview-invalid-resource",`Unable to find resource for ${t}`),null)}_getTextureBindingInfo(e,t,i){const{context:r}=e,s=this._bindingInfos[t-1],a=s.page,n="Nearest"===s.samplingMode?9728:i?9987:9729;switch(s.mosaicType){case 0:{const t=[this.sprites.getWidth(a),this.sprites.getHeight(a)],i=this._spriteMosaic.getTexture(e,a);return i.setSamplingMode(n),{type:"sprite",texture:i,size:t}}case 1:{const e=[this.glyphs.width,this.glyphs.height],t=this._glyphMosaic.getTexture(r,a);return this._glyphMosaic.bind(r,n,a,y),t.setSamplingMode(n),{type:"glyph",texture:t,size:e}}default:return $("mapview-texture-manager",`Cannot handle unknown type ${s.mosaicType}`),null}}_hashMosaic(e,t){return 1|e<<1|(t.sdf?1:0)<<2|("Nearest"===t.samplingMode?1:0)<<3|t.page<<4}_setTextureBinding(e,t){const i=this._hashMosaic(e,t);if(!this._hashToBindingIndex.has(i)){const r=j.fromMosaic(e,t),s=this._bindingInfos.length+1;this._hashToBindingIndex.set(i,s),this._bindingInfos.push(r)}t.textureBinding=this._hashToBindingIndex.get(i)}async _rasterizeText(e,t){const{font:i,textString:s}=e,a=r(i),n=this._invalidFonts.has(a),o=!!has("esri-2d-force-complex-shaping"),c=!!has("esri-2d-complex-shaping")&&R.test(s),l=x.has(i.family),h=o||c||l,u=n?P:a;has("esri-2d-stabilize-glyphs")&&await this._glyphMosaic.preloadASCIIGlyphCache(u).catch(()=>{});let m=await this._glyphMosaic.getGlyphItems(s,h,u,t);return m||(A(`Font ${a} is not available on the web, using "Arial Unicode MS Regular"`),this._invalidFonts.add(a),m=await this._glyphMosaic.getGlyphItems(s,h,P,t)),m}_hashSpriteResource(e){switch(e.type){case"path":return`path:${e.path}.${e.asFill?1:0}`;case"CIMPictureMarker":return`${e.type}:${e.url}:${e.size}:${z(e.markerPlacement)}`;case"CIMPictureFill":return`${e.type}:${e.url}:${e.height}`;case"CIMPictureStroke":return`${e.type}:${e.url}:${e.width}`;case"dash":return`dash:${e.capStyle}.${p(e.dashTemplate).join("")}`;case"sdf":return`sdf:${JSON.stringify(e.geometry)}.${e.sdfTextureSize}.${e.asFill?1:0}`;case"fill-style":return`fill_style:${e.style}`;case"animated":return JSON.stringify(w(e));case"CIMGradientFill":case"CIMGradientStroke":return`gradient:${JSON.stringify(e.colorRamp)}.${e.gradientType}.${e.interval}`;case"CIMHatchFill":case"CIMVectorMarker":return JSON.stringify(e)}}async _rasterizeSprite(e,t){if(!e)return null;const i=l(this._hashSpriteResource(e));if(this._spriteMosaic.has(i))return this._spriteMosaic.getSpriteItem(i);if("url"in e&&e.url&&"animated"!==e.type||"CIMPictureFill"===e.type||"CIMPictureStroke"===e.type||"CIMPictureMarker"===e.type||"CIMVectorMarker"===e.type){const t={type:"CIMPointSymbol",symbolLayers:[e]};await u.normalizeSymbolAndFetchResources(t,this._resourceManager)}switch(e.type){case"CIMPictureMarker":return"CIMMarkerPlacementInsidePolygon"===e.markerPlacement?.type?this._rasterizeJSONResource(i,e):this._handleAsyncResource(i,e,t);case"animated":case"CIMPictureFill":case"CIMPictureStroke":case"path":return this._handleAsyncResource(i,e,t);case"CIMGradientFill":case"CIMGradientStroke":case"CIMHatchFill":case"CIMVectorMarker":case"dash":case"fill-style":case"sdf":return this._rasterizeJSONResource(i,e)}}_rasterizeJSONResource(e,t){const i=this._rasterizer.rasterizeJSONResource(t);if(i){const{size:r,image:s,sdf:a,simplePattern:n,rasterizationScale:o,samplingMode:c,sdfPaddingRatio:l,sdfDecodeCoeff:h}=i;return this._addItemToMosaic(e,r,{type:"static",data:s},G(t),a,n,o,c,l,h)}return null}async _handleAsyncResource(e,t,i){if(this._ongoingRasterizations.has(e))return this._ongoingRasterizations.get(e);let r;return r="path"===t.type?this._handleSVG(t,e,i):this._handleImage(t,e,i),this._ongoingRasterizations.set(e,r),r.finally(()=>this._ongoingRasterizations.delete(e)),r}async _handleSVG(e,t,i){const r=[d,d],{asFill:s}=e,a=await this._sdfConverter.draw(e.path,s,i);return this._addItemToMosaic(t,r,{type:"static",data:new Uint32Array(a.buffer)},!1,!0,!0)}_handleGIFOrPNG(e,t,i){const r=e.url,s=this.resourceManager.getResource(r);if(null==s)return null;const{width:a,height:n}=s;if(s instanceof HTMLImageElement){if("animated"===e.type)return $("mapview-unexpected-resource","Attempt to configure animations for a non-animated image."),null;const i="colorSubstitutions"in e?e.colorSubstitutions:void 0,{size:r,sdf:o,image:c}=this._rasterizer.rasterizeImageResource(a,n,s,i);return this._addItemToMosaic(t,r,{type:"static",data:c},G(e),o,!1)}let o,c;const l=F(e);"animated"===e.type?(o=!1,c=e.startGroup||0):"CIMPictureMarker"===e.type?(o=!1,c=0):(o=G(e),c=0);const h=new b(s,this._requestRender,l,c);return this._addItemToMosaic(t,[h.width,h.height],{type:"animated",data:h},o,!1,!1)}async _handleImage(e,t,r){const s=e.url;if(O(s)||U(s))return this._handleGIFOrPNG(e,t,r);if("animated"===e.type)return $("mapview-unexpected-resource","Attempt to configure animations for a non-animated image."),null;try{let i;const a=this.resourceManager.getResource(s);if(null!=a&&a instanceof HTMLImageElement)i=a;else{const{data:e}=await this._imageRequestQueue.push(s,{...r});i=e}if(T(s))if("width"in e&&"height"in e)i.width=c(e.width),i.height=c(e.height);else if("cim"in e){const t=e;i.width=c(t.width??t.scaleX*t.size),i.height=c(t.size)}if(!i.width||!i.height)return null;const n=i.width,o=i.height,l="colorSubstitutions"in e?e.colorSubstitutions:void 0,{size:h,sdf:u,image:m}=this._rasterizer.rasterizeImageResource(n,o,i,l);return this._addItemToMosaic(t,h,{type:"static",data:m},G(e),u,!1)}catch($){if(!n($))throw new i("mapview-invalid-resource",`Could not fetch requested resource at ${s}. ${$.message}`);throw $}}_addItemToMosaic(e,t,i,r,s,a,n,o,c,l){return this._spriteMosaic.addSpriteItem(e,t,i,r,s,a,n,o,c,l)}}function F(e){return"animated"===e.type?{type:"CIMAnimatedSymbolProperties",playAnimation:e.playAnimation,reverseAnimation:e.reverseAnimation,randomizeStartTime:e.randomizeStartTime,randomizeStartSeed:e.randomizeStartSeed,startTimeOffset:e.startTimeOffset,duration:e.duration,repeatType:e.repeatType,repeatDelay:e.repeatDelay}:"CIMPictureMarker"===e.type?e.animatedSymbolProperties?{type:"CIMAnimatedSymbolProperties",playAnimation:e.animatedSymbolProperties.playAnimation??!1,reverseAnimation:e.animatedSymbolProperties.reverseAnimation,randomizeStartTime:e.animatedSymbolProperties.randomizeStartTime,randomizeStartSeed:e.animatedSymbolProperties.randomizeStartSeed,startTimeOffset:e.animatedSymbolProperties.startTimeOffset,duration:e.animatedSymbolProperties.duration,repeatType:e.animatedSymbolProperties.repeatType,repeatDelay:e.animatedSymbolProperties.repeatDelay}:{type:"CIMAnimatedSymbolProperties",playAnimation:!1}:{type:"CIMAnimatedSymbolProperties",playAnimation:!0}}function G(e){switch(e.type){case"CIMVectorMarker":case"CIMPictureMarker":return q(e);default:return!0}}const N=e=>null!=e&&e.startsWith("data:image/gif"),O=e=>e&&(e.includes(".gif")||N(e)),B=e=>null!=e&&e.startsWith("data:image/png"),U=e=>e&&(e.includes(".png")||B(e)),q=e=>e&&"markerPlacement"in e&&e.markerPlacement&&"CIMMarkerPlacementInsidePolygon"===e.markerPlacement.type;export{k as default};
2
+ import e from"../../../../config.js";import t from"../../../../request.js";import i from"../../../../core/Error.js";import{getFullyQualifiedFontName as r}from"../../../../core/fontUtils.js";import has from"../../../../core/has.js";import s from"../../../../core/Logger.js";import{throwIfAborted as a,isAbortError as n}from"../../../../core/promiseUtils.js";import{QueueProcessor as o}from"../../../../core/QueueProcessor.js";import{pt2px as c}from"../../../../core/screenUtils.js";import{numericHash as h}from"../../../../core/string.js";import l from"../../../../symbols/cim/CIMResourceManager.js";import{CIMSymbolHelper as u}from"../../../../symbols/cim/CIMSymbolHelper.js";import p from"../../../../symbols/cim/Rasterizer.js";import{normalizeDashTemplate as m}from"../../../../symbols/cim/utils.js";import{svgSdfTextureInnerSize as d,textureBindingSpriteAtlas as g,textureBindingGlyphAtlas as f}from"./definitions.js";import y from"./GlyphMosaic.js";import M from"./GlyphSource.js";import _ from"./Rect.js";import I from"./SDFConverter.js";import w from"./SpriteMosaic.js";import{discardUrlIfHasUrlHash as S}from"./urlUtils.js";import{getCIMMarkerPlacementHash as z,isSVGImage as T}from"./Utils.js";import{AnimatableTextureResource as C}from"./animatedFormats/AnimatableTextureResource.js";import{AnimationStore as R}from"./animations/store/AnimationStore.js";const x="arial-unicode-ms-regular",b=/[\u0695\u0698\u06a9\u06af\u06b5\u06be\u06c6\u06cc\u06ce\u06d5\u06ca]|\p{Script=Thai}|\p{Script=Lao}|\p{Script=Tamil}|\p{Script=Khmer}/u,P=new Set(["Noto Sans Khmer","Noto Sans Lao","Noto Sans Myanmar","Noto Sans Thai"]),$=()=>s.getLogger("esri.views.MapView"),v=(e,t,r)=>$().error(new i(e,t,r)),j=(e,t="")=>$().warnOnce(e,t);class k{static fromMosaic(e,t){return new k(e,t.page,t.sdf,t.samplingMode)}constructor(e,t,i,r){this.mosaicType=e,this.page=t,this.sdf=i,this.samplingMode=r}}class A{constructor(r){this._requestRender=r,this._resourceManager=new l,this._invalidFonts=new Set,this._sdfConverter=new I(d),this._bindingInfos=new Array,this._hashToBindingIndex=new Map,this._ongoingRasterizations=new Map,this._imageRequestQueue=new o({concurrency:10,process:async(e,r)=>{a(r);try{return await t(e,{responseType:"image",signal:r})}catch(s){if(!n(s))throw new i("mapview-invalid-resource",`Could not fetch requested resource at ${e}`,s);throw s}}}),this.animationStore=new R,this._spriteMosaic=new w(2048,2048,500),this._glyphSource=new M(`${e.fontsUrl}/{fontstack}/{range}.pbf`),this._glyphMosaic=new y(1024,1024,this._glyphSource),this._rasterizer=new p(this.resourceManager)}dispose(){this._spriteMosaic.dispose(),this._glyphMosaic.dispose(),this._rasterizer.dispose(),this._sdfConverter.dispose(),this._spriteMosaic=null,this._glyphMosaic=null,this._sdfConverter=null,this._hashToBindingIndex.clear(),this._hashToBindingIndex=null,this._bindingInfos=null,this._ongoingRasterizations.clear(),this._ongoingRasterizations=null,this._imageRequestQueue.clear(),this._imageRequestQueue=null,this._resourceManager.destroy(),this.animationStore.destroy()}get sprites(){return this._spriteMosaic}get glyphs(){return this._glyphMosaic}get resourceManager(){return this._resourceManager}async rasterizeItem(e,t){if(null==e)return v("mapview-null-resource","Unable to rasterize null resource"),null;if("animation-info"===e.type){const{resource:t}=e,i=this.animationStore.add(t),{location:r}=i;return{rect:new _(r.column,r.row,t.length,1),page:r.page,type:"sprite",width:t.length,height:1,rasterizationScale:1,sdfPaddingRatio:.5,samplingMode:"Linear",sdfDecodeCoeff:1,simplePattern:!1}}if("cim-rasterization-info"!==e.type)return v("mapview-unexpected-resource","Unable to rasterize resource"),null;const{resource:i}=e;if("text"===i.type){const e=await this._rasterizeText(i,t);for(const t of e.glyphs)this._setTextureBinding(1,t.mosaicItem);return e}const r=await this._rasterizeSprite(i,t);return r&&this._setTextureBinding(0,r),r}getMosaicInfo(e,t,i=!1){const r=this._getTextureBindingInfo(e,t,i);return r?{size:r.size}:(v("mapview-invalid-resource",`Unable to find resource for ${t}`),{size:[0,0]})}getMosaicTexture(e,t,i=!1){const r=this._getTextureBindingInfo(e,t,i);return r?{texture:r.texture,unit:"sprite"===r.type?g:f}:(v("mapview-invalid-resource",`Unable to find resource for ${t}`),null)}_getTextureBindingInfo(e,t,i){const{context:r}=e,s=this._bindingInfos[t-1],a=s.page,n="Nearest"===s.samplingMode?9728:i?9987:9729;switch(s.mosaicType){case 0:{const t=[this.sprites.getWidth(a),this.sprites.getHeight(a)],i=this._spriteMosaic.getTexture(e,a);return i.setSamplingMode(n),{type:"sprite",texture:i,size:t}}case 1:{const e=[this.glyphs.width,this.glyphs.height],t=this._glyphMosaic.getTexture(r,a);return this._glyphMosaic.bind(r,n,a,f),t.setSamplingMode(n),{type:"glyph",texture:t,size:e}}default:return v("mapview-texture-manager",`Cannot handle unknown type ${s.mosaicType}`),null}}_hashMosaic(e,t){return 1|e<<1|(t.sdf?1:0)<<2|("Nearest"===t.samplingMode?1:0)<<3|t.page<<4}_setTextureBinding(e,t){const i=this._hashMosaic(e,t);if(!this._hashToBindingIndex.has(i)){const r=k.fromMosaic(e,t),s=this._bindingInfos.length+1;this._hashToBindingIndex.set(i,s),this._bindingInfos.push(r)}t.textureBinding=this._hashToBindingIndex.get(i)}async _rasterizeText(e,t){const{font:i,textString:s}=e,a=r(i),n=this._invalidFonts.has(a),o=!!has("esri-2d-force-complex-shaping"),c=!!has("esri-2d-complex-shaping")&&b.test(s),h=P.has(i.family),l=o||c||h,u=n?x:a;has("esri-2d-stabilize-glyphs")&&await this._glyphMosaic.preloadASCIIGlyphCache(u).catch(()=>{});let p=await this._glyphMosaic.getGlyphItems(s,l,u,t);return p||(j(`Font ${a} is not available on the web, using "Arial Unicode MS Regular"`),this._invalidFonts.add(a),p=await this._glyphMosaic.getGlyphItems(s,l,x,t)),p}_hashSpriteResource(e){switch(e.type){case"path":return`path:${e.path}.${e.asFill?1:0}`;case"CIMPictureMarker":return`${e.type}:${e.url}:${e.size}:${z(e.markerPlacement)}`;case"CIMPictureFill":return`${e.type}:${e.url}:${e.height}`;case"CIMPictureStroke":return`${e.type}:${e.url}:${e.width}`;case"dash":return`dash:${e.capStyle}.${m(e.dashTemplate).join("")}`;case"sdf":return`sdf:${JSON.stringify(e.geometry)}.${e.sdfTextureSize}.${e.asFill?1:0}`;case"fill-style":return`fill_style:${e.style}`;case"animated":return JSON.stringify(S(e));case"CIMGradientFill":case"CIMGradientStroke":return`gradient:${JSON.stringify(e.colorRamp)}.${e.gradientType}.${e.interval}`;case"CIMHatchFill":case"CIMVectorMarker":return JSON.stringify(e)}}async _rasterizeSprite(e,t){if(!e)return null;const i=h(this._hashSpriteResource(e));if(this._spriteMosaic.has(i))return this._spriteMosaic.getSpriteItem(i);if("url"in e&&e.url&&"animated"!==e.type||"CIMPictureFill"===e.type||"CIMPictureStroke"===e.type||"CIMPictureMarker"===e.type||"CIMVectorMarker"===e.type){const t={type:"CIMPointSymbol",symbolLayers:[e]};await u.normalizeSymbolAndFetchResources(t,this._resourceManager)}switch(e.type){case"CIMPictureMarker":return"CIMMarkerPlacementInsidePolygon"===e.markerPlacement?.type?this._rasterizeJSONResource(i,e):this._handleAsyncResource(i,e,t);case"animated":case"CIMPictureFill":case"CIMPictureStroke":case"path":return this._handleAsyncResource(i,e,t);case"CIMGradientFill":case"CIMGradientStroke":case"CIMHatchFill":case"CIMVectorMarker":case"dash":case"fill-style":case"sdf":return this._rasterizeJSONResource(i,e)}}_rasterizeJSONResource(e,t){const i=this._rasterizer.rasterizeJSONResource(t);if(i){const{size:r,image:s,sdf:a,simplePattern:n,rasterizationScale:o,samplingMode:c,sdfPaddingRatio:h,sdfDecodeCoeff:l}=i;return this._addItemToMosaic(e,r,{type:"static",data:s},F(t),a,n,o,c,h,l)}return null}async _handleAsyncResource(e,t,i){if(this._ongoingRasterizations.has(e))return this._ongoingRasterizations.get(e);let r;return r="path"===t.type?this._handleSVG(t,e,i):this._handleImage(t,e,i),this._ongoingRasterizations.set(e,r),r.finally(()=>this._ongoingRasterizations.delete(e)),r}async _handleSVG(e,t,i){const r=[d,d],{asFill:s}=e,a=await this._sdfConverter.draw(e.path,s,i);return this._addItemToMosaic(t,r,{type:"static",data:new Uint32Array(a.buffer)},!1,!0,!0)}_handleGIFOrPNG(e,t,i){const r=e.url,s=this.resourceManager.getResource(r);if(null==s)return null;const{width:a,height:n}=s;if(s instanceof HTMLImageElement){if("animated"===e.type)return v("mapview-unexpected-resource","Attempt to configure animations for a non-animated image."),null;const i="colorSubstitutions"in e?e.colorSubstitutions:void 0,{size:r,sdf:o,image:c}=this._rasterizer.rasterizeImageResource(a,n,s,i);return this._addItemToMosaic(t,r,{type:"static",data:c},F(e),o,!1)}let o,c,h;"animated"===e.type?(o=!1,c={type:"CIMAnimatedSymbolProperties",playAnimation:e.playAnimation,reverseAnimation:e.reverseAnimation,randomizeStartTime:e.randomizeStartTime,randomizeStartSeed:e.randomizeStartSeed,startTimeOffset:e.startTimeOffset,duration:e.duration,repeatType:e.repeatType,repeatDelay:e.repeatDelay},h=e.startGroup||0):(o=F(e),c={type:"CIMAnimatedSymbolProperties",playAnimation:!0},h=0);const l=new C(s,this._requestRender,c,h);return this._addItemToMosaic(t,[l.width,l.height],{type:"animated",data:l},o,!1,!1)}async _handleImage(e,t,r){const s=e.url;if(N(s)||O(s))return this._handleGIFOrPNG(e,t,r);if("animated"===e.type)return v("mapview-unexpected-resource","Attempt to configure animations for a non-animated image."),null;try{let i;const a=this.resourceManager.getResource(s);if(null!=a&&a instanceof HTMLImageElement)i=a;else{const{data:e}=await this._imageRequestQueue.push(s,{...r});i=e}if(T(s))if("width"in e&&"height"in e)i.width=c(e.width),i.height=c(e.height);else if("cim"in e){const t=e;i.width=c(t.width??t.scaleX*t.size),i.height=c(t.size)}if(!i.width||!i.height)return null;const n=i.width,o=i.height,h="colorSubstitutions"in e?e.colorSubstitutions:void 0,{size:l,sdf:u,image:p}=this._rasterizer.rasterizeImageResource(n,o,i,h);return this._addItemToMosaic(t,l,{type:"static",data:p},F(e),u,!1)}catch(v){if(!n(v))throw new i("mapview-invalid-resource",`Could not fetch requested resource at ${s}. ${v.message}`);throw v}}_addItemToMosaic(e,t,i,r,s,a,n,o,c,h){return this._spriteMosaic.addSpriteItem(e,t,i,r,s,a,n,o,c,h)}}function F(e){switch(e.type){case"CIMVectorMarker":case"CIMPictureMarker":return U(e);default:return!0}}const G=e=>null!=e&&e.startsWith("data:image/gif"),N=e=>e&&(e.includes(".gif")||G(e)),B=e=>null!=e&&e.startsWith("data:image/png"),O=e=>e&&(e.includes(".png")||B(e)),U=e=>e&&"markerPlacement"in e&&e.markerPlacement&&"CIMMarkerPlacementInsidePolygon"===e.markerPlacement.type;export{A as default};
@@ -1,2 +1,2 @@
1
1
  /* COPYRIGHT Esri - https://js.arcgis.com/5.1/LICENSE.txt */
2
- import{__decorate as i}from"tslib";import{animationDebugFlags as t}from"../../../../../../../symbols/cim/animationDebugFlags.js";import{generateVirtualMachineSource as e}from"../../../animations/instructions.js";import{location as o,uniform as a,texture as r,option as s}from"../../GraphShaderModule.js";import{Vec2 as l,Vec4 as n,Float as m,Sampler2D as p,step as u,negate as d,cond as c,equal as y,Mat2 as f,cos as v,sin as b,Mat3 as S,Vec3 as h,lessThanEqual as w,ifElse as g,texture2D as x,clamp as V,abs as z,block as T}from"../../graph/glsl.js";import{AnimationUniformInfo as P}from"./AnimationUniformInfo.js";import{MarkerConstants as j}from"../markers/markerConstants.js";import{FeatureVertexInput as _,AFeatureShader as O,FeatureFragmentInput as I}from"../shaders/AFeatureShader.js";import{c256ToRad as C,softEdgeRatio as M}from"../shaders/constants.js";import{LocalTileOffset as D}from"../shaders/LocalTileOffset.js";import{MosaicInfo as A}from"../shaders/MosaicInfo.js";import{getBit as F,rgba2float as L}from"../shaders/utils.js";import{VisualVariableColor as R}from"../shaders/VisualVariableColor.js";import{VisualVariableOpacity as k}from"../shaders/VisualVariableOpacity.js";import{VisualVariableRotation as U}from"../shaders/VisualVariableRotation.js";import{VisualVariableSizeMinMaxValue as E}from"../shaders/VisualVariableSizeMinMaxValue.js";import{VisualVariableSizeScaleStops as B}from"../shaders/VisualVariableSizeScaleStops.js";import{VisualVariableSizeStops as G}from"../shaders/VisualVariableSizeStops.js";import{VisualVariableSizeUnitValue as N}from"../shaders/VisualVariableSizeUnitValue.js";import{getVisualVariableSize as W,getVisualVariableAngle as q}from"../shaders/vvUtils.js";class H extends _{}i([o(3,l)],H.prototype,"offset",void 0),i([o(4,n)],H.prototype,"sizing",void 0),i([o(5,n)],H.prototype,"value1Position2Value2",void 0),i([o(6,n)],H.prototype,"animationPointerAndBaseSizeAndReferenceSize",void 0),i([o(7,l)],H.prototype,"zoomRange",void 0),i([o(8,m)],H.prototype,"lineLength",void 0);class J extends I{}class K extends O{_vertexPreamble(i,t,e){const{id:o,offset:a,animationPointerAndBaseSizeAndReferenceSize:r,sizing:s}=i,l=r.xy,n=r.z,p=r.w,S=s.xy,h=this._getEvalParams(i,S,e);let w,g;if(i.value1Position2Value2){const t=Q(l,6,h).a,e=i.pos,o=i.value1Position2Value2.yz,a=i.value1Position2Value2.x,r=i.value1Position2Value2.w,s=t.subtract(a).divide(r.subtract(a));g=e.add(o.subtract(e).multiply(s)),w=u(new m(1),s).add(u(new m(0),d(s)))}else g=i.pos,w=new m(0);const x=s.z,V=F(i.bitset,j.bitset.isStroke),z=s.w,T=F(i.bitset,j.bitset.scaleSymbolsProportionally),P=Q(l,0,h),_=c([y(F(i.bitset,j.bitset.isMapAligned),new m(1)),this.view.rotation.divide(180).multiply(Math.PI)],[!0,new m(0)]),O=new f(v(_),b(_.multiply(-1)),b(_),v(_)).multiply(P.xy),I=P.z.subtract(_).subtract(t.multiply(C)),M=P.w,D=F(i.bitset,j.bitset.isSDF),A=W(this,o,new m(p)).divide(new m(p));return{baseSize:n,animationPointer:l,strokeWidth:x,isOutline:V,unscaledDistanceToPx:z,scaleSymbolsProportionally:T,isSDF:D,position:this._getScreenPosition({id:o,pos:g,offset:a,referenceSize:p,translation:O,rotation:I,scale:M,vvScale:A}),evalParams:h,vvScale:A,scale:M,clip:w}}_getScreenPosition(i){const{pos:t,translation:e,rotation:o,scale:a,offset:r,id:s,vvScale:l}=i,n=q(this,s).multiply(Math.PI/180),p=e.x.multiply(4/3),u=e.y.multiply(-1).multiply(4/3),c=b(n),y=v(n),f=y.multiply(p).add(d(c).multiply(u)),w=c.multiply(p).add(y.multiply(u)),g=b(o.subtract(n)),x=v(o.subtract(n)),V=new m(0),z=new m(1),{pixelRatio:T}=this.animationInfo,P=new S(z,V,V,V,z,V,f.multiply(T),w.multiply(T),z),j=new S(x,g.multiply(-1),V,g,x,V,0,0,z),_=a.multiply(l).multiply(T).multiply(4/3),O=j.multiply(_),I=this.animationInfo.toScreen.multiply(new h(t,1)),C=P.multiply(I).xy,M=O.multiply(new h(r,0)).xy;return C.add(M)}_clip(i,e){let o=super.clip(i,e);const a=w(this._getLocalTimeOrigin(i),new m(0));return t.forceGlobalTimeOrigin||(o=o.add(c([a,()=>new m(2)],[!0,()=>new m(0)]))),o}_getLocalTimeOrigin(i){return this.getLocalTimeOrigin(i)}_toNdc(i){return this.animationInfo.toNdc.multiply(new h(i,1)).xy}_getEvalParams(i,t,e){const{globalTime:o,animationTextureSize:a}=this.animationInfo;return{globalTime:o,localTimeOrigin:this._getLocalTimeOrigin(i.id),animationTextureSize:a,animationTexture:this.animationTexture,pixelDimensions:t,lineLength:e}}_getColor(i,t){return g(y(t.isSDF,new m(1)),this._getSDFColor(i,t),this._getSpriteColor(i,t))}_getSpriteColor(i,t){return x(this.mosaicTexture,i).multiply(t.color)}_getSDFColor(i,t){const e=x(this.mosaicTexture,i),o=new m(.5).subtract(L(e)).multiply(t.distanceToPx).multiply(M),a=V(new m(.5).subtract(o),new m(0),new m(1)),r=t.color.multiply(a),s=t.outlineSize.multiply(.5),l=z(o).subtract(s),n=V(new m(.5).subtract(l),new m(0),new m(1)),p=t.outlineColor.multiply(n);return new m(1).subtract(p.a).multiply(r).add(p)}}function Q(i,t,o){const a=i.add(new l(t,0)),r=x(o.animationTexture,a.add(.5).divide(o.animationTextureSize)).xy;return i=i.add(r),T({animationPointer:i,...o},n,null,i=>{const{out:t}=i;if(!t)throw new Error("out is null");return e({...i,out:t})})}i([a(A)],K.prototype,"mosaicInfo",void 0),i([a(P)],K.prototype,"animationInfo",void 0),i([a(D)],K.prototype,"localTileOffset",void 0),i([r(p)],K.prototype,"mosaicTexture",void 0),i([s(R)],K.prototype,"visualVariableColor",void 0),i([s(k)],K.prototype,"visualVariableOpacity",void 0),i([s(E)],K.prototype,"visualVariableSizeMinMaxValue",void 0),i([s(B)],K.prototype,"visualVariableSizeScaleStops",void 0),i([s(G)],K.prototype,"visualVariableSizeStops",void 0),i([s(N)],K.prototype,"visualVariableSizeUnitValue",void 0),i([s(U)],K.prototype,"visualVariableRotation",void 0),i([r(p)],K.prototype,"animationTexture",void 0);export{J as AAnimatedFragmentInput,K as AAnimatedShader,H as AAnimatedVertexInput,Q as getValue};
2
+ import{__decorate as i}from"tslib";import{animationDebugFlags as t}from"../../../../../../../symbols/cim/animationDebugFlags.js";import{generateVirtualMachineSource as e}from"../../../animations/instructions.js";import{location as o,uniform as a,texture as r,option as s}from"../../GraphShaderModule.js";import{Vec2 as l,Vec4 as n,Float as m,Sampler2D as p,step as u,negate as d,cond as c,equal as y,Mat2 as f,cos as v,sin as b,Mat3 as S,Vec3 as h,lessThanEqual as w,ifElse as g,texture2D as x,clamp as V,abs as z,block as T}from"../../graph/glsl.js";import{AnimationUniformInfo as P}from"./AnimationUniformInfo.js";import{MarkerConstants as j}from"../markers/markerConstants.js";import{FeatureVertexInput as _,AFeatureShader as O,FeatureFragmentInput as I}from"../shaders/AFeatureShader.js";import{softEdgeRatio as C}from"../shaders/constants.js";import{LocalTileOffset as M}from"../shaders/LocalTileOffset.js";import{MosaicInfo as D}from"../shaders/MosaicInfo.js";import{getBit as A,rgba2float as F}from"../shaders/utils.js";import{VisualVariableColor as L}from"../shaders/VisualVariableColor.js";import{VisualVariableOpacity as R}from"../shaders/VisualVariableOpacity.js";import{VisualVariableRotation as k}from"../shaders/VisualVariableRotation.js";import{VisualVariableSizeMinMaxValue as U}from"../shaders/VisualVariableSizeMinMaxValue.js";import{VisualVariableSizeScaleStops as E}from"../shaders/VisualVariableSizeScaleStops.js";import{VisualVariableSizeStops as B}from"../shaders/VisualVariableSizeStops.js";import{VisualVariableSizeUnitValue as G}from"../shaders/VisualVariableSizeUnitValue.js";import{getVisualVariableSize as N,getVisualVariableAngle as W}from"../shaders/vvUtils.js";class q extends _{}i([o(3,l)],q.prototype,"offset",void 0),i([o(4,n)],q.prototype,"sizing",void 0),i([o(5,n)],q.prototype,"value1Position2Value2",void 0),i([o(6,n)],q.prototype,"animationPointerAndBaseSizeAndReferenceSize",void 0),i([o(7,l)],q.prototype,"zoomRange",void 0),i([o(8,m)],q.prototype,"lineLength",void 0);class H extends I{}class J extends O{_vertexPreamble(i,t,e){const{id:o,offset:a,animationPointerAndBaseSizeAndReferenceSize:r,sizing:s}=i,l=r.xy,n=r.z,p=r.w,S=s.xy,h=this._getEvalParams(i,S,e);let w,g;if(i.value1Position2Value2){const t=K(l,6,h).a,e=i.pos,o=i.value1Position2Value2.yz,a=i.value1Position2Value2.x,r=i.value1Position2Value2.w,s=t.subtract(a).divide(r.subtract(a));g=e.add(o.subtract(e).multiply(s)),w=u(new m(1),s).add(u(new m(0),d(s)))}else g=i.pos,w=new m(0);const x=s.z,V=A(i.bitset,j.bitset.isStroke),z=s.w,T=A(i.bitset,j.bitset.scaleSymbolsProportionally),P=K(l,0,h),_=c([y(A(i.bitset,j.bitset.isMapAligned),new m(1)),this.view.rotation.divide(180).multiply(Math.PI)],[!0,new m(0)]),O=new f(v(_),b(_.multiply(-1)),b(_),v(_)).multiply(P.xy),I=P.z.subtract(_).subtract(t),C=P.w,M=A(i.bitset,j.bitset.isSDF),D=N(this,o,new m(p)).divide(new m(p));return{baseSize:n,animationPointer:l,strokeWidth:x,isOutline:V,unscaledDistanceToPx:z,scaleSymbolsProportionally:T,isSDF:M,position:this._getScreenPosition({id:o,pos:g,offset:a,referenceSize:p,translation:O,rotation:I,scale:C,vvScale:D}),evalParams:h,vvScale:D,scale:C,clip:w}}_getScreenPosition(i){const{pos:t,translation:e,rotation:o,scale:a,offset:r,id:s,vvScale:l}=i,n=W(this,s).multiply(Math.PI/180),p=e.x.multiply(4/3),u=e.y.multiply(-1).multiply(4/3),c=b(n),y=v(n),f=y.multiply(p).add(d(c).multiply(u)),w=c.multiply(p).add(y.multiply(u)),g=b(o.subtract(n)),x=v(o.subtract(n)),V=new m(0),z=new m(1),{pixelRatio:T}=this.animationInfo,P=new S(z,V,V,V,z,V,f.multiply(T),w.multiply(T),z),j=new S(x,g.multiply(-1),V,g,x,V,0,0,z),_=a.multiply(l).multiply(T).multiply(4/3),O=j.multiply(_),I=this.animationInfo.toScreen.multiply(new h(t,1)),C=P.multiply(I).xy,M=O.multiply(new h(r,0)).xy;return C.add(M)}_clip(i,e){let o=super.clip(i,e);const a=w(this._getLocalTimeOrigin(i),new m(0));return t.forceGlobalTimeOrigin||(o=o.add(c([a,()=>new m(2)],[!0,()=>new m(0)]))),o}_getLocalTimeOrigin(i){return this.getLocalTimeOrigin(i)}_toNdc(i){return this.animationInfo.toNdc.multiply(new h(i,1)).xy}_getEvalParams(i,t,e){const{globalTime:o,animationTextureSize:a}=this.animationInfo;return{globalTime:o,localTimeOrigin:this._getLocalTimeOrigin(i.id),animationTextureSize:a,animationTexture:this.animationTexture,pixelDimensions:t,lineLength:e}}_getColor(i,t){return g(y(t.isSDF,new m(1)),this._getSDFColor(i,t),this._getSpriteColor(i,t))}_getSpriteColor(i,t){return x(this.mosaicTexture,i).multiply(t.color)}_getSDFColor(i,t){const e=x(this.mosaicTexture,i),o=new m(.5).subtract(F(e)).multiply(t.distanceToPx).multiply(C),a=V(new m(.5).subtract(o),new m(0),new m(1)),r=t.color.multiply(a),s=t.outlineSize.multiply(.5),l=z(o).subtract(s),n=V(new m(.5).subtract(l),new m(0),new m(1)),p=t.outlineColor.multiply(n);return new m(1).subtract(p.a).multiply(r).add(p)}}function K(i,t,o){const a=i.add(new l(t,0)),r=x(o.animationTexture,a.add(.5).divide(o.animationTextureSize)).xy;return i=i.add(r),T({animationPointer:i,...o},n,null,i=>{const{out:t}=i;if(!t)throw new Error("out is null");return e({...i,out:t})})}i([a(D)],J.prototype,"mosaicInfo",void 0),i([a(P)],J.prototype,"animationInfo",void 0),i([a(M)],J.prototype,"localTileOffset",void 0),i([r(p)],J.prototype,"mosaicTexture",void 0),i([s(L)],J.prototype,"visualVariableColor",void 0),i([s(R)],J.prototype,"visualVariableOpacity",void 0),i([s(U)],J.prototype,"visualVariableSizeMinMaxValue",void 0),i([s(E)],J.prototype,"visualVariableSizeScaleStops",void 0),i([s(B)],J.prototype,"visualVariableSizeStops",void 0),i([s(G)],J.prototype,"visualVariableSizeUnitValue",void 0),i([s(k)],J.prototype,"visualVariableRotation",void 0),i([r(p)],J.prototype,"animationTexture",void 0);export{H as AAnimatedFragmentInput,J as AAnimatedShader,q as AAnimatedVertexInput,K as getValue};