@arcgis/core 4.23.0-next.20220118 → 4.23.0-next.20220126

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 (359) hide show
  1. package/Graphic.js +1 -1
  2. package/assets/esri/core/workers/RemoteClient.js +1 -1
  3. package/assets/esri/core/workers/chunks/00c5bb5eecb0e89266df.js +1 -0
  4. package/assets/esri/core/workers/chunks/021a37e2b191298e80b7.js +1 -0
  5. package/assets/esri/core/workers/chunks/1370c92c40fd6271553c.js +1 -0
  6. package/assets/esri/core/workers/chunks/199670a3a564ebe3bd79.js +1 -0
  7. package/assets/esri/core/workers/chunks/1e4d37c2b9dc83d20a11.js +1 -0
  8. package/assets/esri/core/workers/chunks/1fbcc8424452d0256bd6.js +1 -0
  9. package/assets/esri/core/workers/chunks/{7c9d2638693d5f798b23.js → 23b15e7c2f96d260e16c.js} +1 -1
  10. package/assets/esri/core/workers/chunks/{b2ae5fc4f787ea568b88.js → 2460f3b6ada6ae900dec.js} +1 -1
  11. package/assets/esri/core/workers/chunks/{99f0d896c17dd09cd285.js → 2629adf79e7fd9f25f07.js} +1 -1
  12. package/assets/esri/core/workers/chunks/2792ca40f1e92849247c.js +1 -0
  13. package/assets/esri/core/workers/chunks/2a96f1bba9ce6883e5e0.js +1 -0
  14. package/assets/esri/core/workers/chunks/2e899ef5881b4ec6fa55.js +1 -0
  15. package/assets/esri/core/workers/chunks/3231ee3e090bb4cac3fc.js +1 -0
  16. package/assets/esri/core/workers/chunks/{0c3e3a5baf54bd5e210c.js → 36e250278b5622ccf068.js} +1 -1
  17. package/assets/esri/core/workers/chunks/395ba088d4864588ff66.js +1 -0
  18. package/assets/esri/core/workers/chunks/3cc77692b2eee27b9c9e.js +1 -0
  19. package/assets/esri/core/workers/chunks/3f343f792fd9f44d6f25.js +1 -0
  20. package/assets/esri/core/workers/chunks/{8a250ec51097f16feb66.js → 40a1e713f63ec77110c0.js} +1 -1
  21. package/assets/esri/core/workers/chunks/422537fc3df707bb62c9.js +1 -0
  22. package/assets/esri/core/workers/chunks/{ba6fdaed6c315dc13981.js → 434b16731c6a81f868ef.js} +1 -1
  23. package/assets/esri/core/workers/chunks/4385a268c2a64281d1c1.js +1 -0
  24. package/assets/esri/core/workers/chunks/{44b01d42d4ec72913229.js → 438f0b5ae5c53ae4f06a.js} +1 -1
  25. package/assets/esri/core/workers/chunks/{4d539878bfbd7c549e60.js → 46b4bb66a54bbd8e2e57.js} +1 -1
  26. package/assets/esri/core/workers/chunks/4c76146014dc15143ba3.js +1 -0
  27. package/assets/esri/core/workers/chunks/5a4a5585ec8027079f32.js +1 -0
  28. package/assets/esri/core/workers/chunks/5d991b74d958005c26c4.js +1 -0
  29. package/assets/esri/core/workers/chunks/5dfe1f8d520025e2118b.js +1 -0
  30. package/assets/esri/core/workers/chunks/601e697dc7414bda128a.js +1 -0
  31. package/assets/esri/core/workers/chunks/663ad15b86936eb06b69.js +1 -0
  32. package/assets/esri/core/workers/chunks/68a59ce98177d8513337.js +1 -0
  33. package/assets/esri/core/workers/chunks/{9cdaba126ac7fa5f33f0.js → 6cd5e4380d29b9a3c344.js} +1 -1
  34. package/assets/esri/core/workers/chunks/{a7b1b75643ed31489495.js → 6f50a9647f026a8d4729.js} +1 -1
  35. package/assets/esri/core/workers/chunks/{47395d225229d237f0ac.js → 7bc5cc5dbf1b7b70ddac.js} +1 -1
  36. package/assets/esri/core/workers/chunks/7d661129a0d8c466eeec.js +1 -0
  37. package/assets/esri/core/workers/chunks/{64276aacaafa4c8a15bd.js → 7dcf52d3db3903c8eb9f.js} +1 -1
  38. package/assets/esri/core/workers/chunks/8070972c0efb78523b68.js +1 -0
  39. package/assets/esri/core/workers/chunks/8fa0a14165d43ffe87a5.js +1 -0
  40. package/assets/esri/core/workers/chunks/94515fb3ef38067eeadd.js +1 -0
  41. package/assets/esri/core/workers/chunks/94b8dbf859df71858d1c.js +1 -0
  42. package/assets/esri/core/workers/chunks/97a28641b3b2fd31bea2.js +1 -0
  43. package/assets/esri/core/workers/chunks/{d1454155ee1b8a421cbb.js → 97ec9eef0048760fa260.js} +1 -1
  44. package/assets/esri/core/workers/chunks/98986e6601b0366376b4.js +1 -0
  45. package/assets/esri/core/workers/chunks/9cdcf9309d6feda70185.js +1 -0
  46. package/assets/esri/core/workers/chunks/a78757b9c7e8cbea08fa.js +1 -0
  47. package/assets/esri/core/workers/chunks/aa04b90b82bf70caaae4.js +1 -0
  48. package/assets/esri/core/workers/chunks/{b10fcbe1393c812fc219.js → aa861b8eae6c85f3dad4.js} +1 -1
  49. package/assets/esri/core/workers/chunks/aace7e1fef256bb961c9.js +1 -0
  50. package/assets/esri/core/workers/chunks/{ed0297fc61014e848c18.js → af5694b4d278cf1db2d9.js} +1 -1
  51. package/assets/esri/core/workers/chunks/afbb4f802ca5774f0326.js +1 -0
  52. package/assets/esri/core/workers/chunks/b0b036ad3ad3cd956747.js +1 -0
  53. package/assets/esri/core/workers/chunks/b2c5f92e3d7606297ca9.js +1 -0
  54. package/assets/esri/core/workers/chunks/b2d2de935487257c568b.js +1 -0
  55. package/assets/esri/core/workers/chunks/b2ebe4f6d100e15b512d.js +1 -0
  56. package/assets/esri/core/workers/chunks/b8316c6469a543029bc6.js +1 -0
  57. package/assets/esri/core/workers/chunks/{4b69129c0557852d9b3d.js → ba5eb394f098968c22d2.js} +1 -1
  58. package/assets/esri/core/workers/chunks/bf0a65b4be31959f921d.js +1 -0
  59. package/assets/esri/core/workers/chunks/bf6dda4a2af14c4b7716.js +1 -0
  60. package/assets/esri/core/workers/chunks/c890c7fca27170e3341f.js +1 -0
  61. package/assets/esri/core/workers/chunks/{573dc3064e84ca86844d.js → c959e0d1cf7dce0421b9.js} +1 -1
  62. package/assets/esri/core/workers/chunks/c976785f2391c77d8a30.js +1 -0
  63. package/assets/esri/core/workers/chunks/{1fd48459afb58a6cf14f.js → ca2f5faa01d99c21ec14.js} +1 -1
  64. package/assets/esri/core/workers/chunks/{7aa543a97f055cddea99.js → cc146c57bbdac8029fd8.js} +1 -1
  65. package/assets/esri/core/workers/chunks/{d39b7983b68d6e5b404d.js → cdbc005eebec1503b99d.js} +1 -1
  66. package/assets/esri/core/workers/chunks/{7e596478507466953e65.js → cef4af64860ebbfc1c47.js} +1 -1
  67. package/assets/esri/core/workers/chunks/d72488db62fcf39447b6.js +1 -0
  68. package/assets/esri/core/workers/chunks/de6cff7b6cbbf99b20d1.js +981 -0
  69. package/assets/esri/core/workers/chunks/e4b84ca8ddfd48dd79b1.js +1 -0
  70. package/assets/esri/core/workers/chunks/e4e2036373166c1d5cf5.js +1 -0
  71. package/assets/esri/core/workers/chunks/e4f93c55eaefab4192b5.js +1 -0
  72. package/assets/esri/core/workers/chunks/e6165e17fbb07bfc40a1.js +1 -0
  73. package/assets/esri/core/workers/chunks/e9e5196b44b6923be1a3.js +1 -0
  74. package/assets/esri/core/workers/chunks/{f678293de9a6d8f5b5db.js → ec89466f76d0ba22525e.js} +1 -1
  75. package/assets/esri/core/workers/chunks/ee45618c45806ab654cb.js +1 -0
  76. package/assets/esri/core/workers/chunks/f4baa5ea2e42b1317941.js +1 -0
  77. package/assets/esri/core/workers/chunks/f760a3e030b0f358a92a.js +1 -0
  78. package/assets/esri/core/workers/chunks/face43cf5abcd2f5bd9d.js +1 -0
  79. package/assets/esri/libs/vxl/vxlLayer.wasm +0 -0
  80. package/assets/esri/themes/base/_mixins.scss +4 -1
  81. package/assets/esri/themes/base/icons/style.scss +11 -2
  82. package/assets/esri/themes/base/widgets/_BasemapLayerList.scss +13 -10
  83. package/assets/esri/themes/base/widgets/_CoordinateConversion.scss +4 -2
  84. package/assets/esri/themes/base/widgets/_Directions.scss +5 -3
  85. package/assets/esri/themes/base/widgets/_Editor.scss +5 -2
  86. package/assets/esri/themes/base/widgets/_ElevationProfile.scss +6 -4
  87. package/assets/esri/themes/base/widgets/_FeatureTable.scss +6 -0
  88. package/assets/esri/themes/base/widgets/_ItemList.scss +1 -1
  89. package/assets/esri/themes/base/widgets/_LayerList.scss +13 -9
  90. package/assets/esri/themes/base/widgets/_Popup.scss +4 -2
  91. package/assets/esri/themes/base/widgets/_Print.scss +24 -11
  92. package/assets/esri/themes/base/widgets/_Search.scss +4 -2
  93. package/assets/esri/themes/base/widgets/_TableList.scss +9 -7
  94. package/assets/esri/themes/base/widgets/_Weather.scss +12 -0
  95. package/assets/esri/themes/base/widgets/_Widget.scss +18 -9
  96. package/assets/esri/themes/dark/main.css +1 -1
  97. package/assets/esri/themes/dark-blue/main.css +1 -1
  98. package/assets/esri/themes/dark-green/main.css +1 -1
  99. package/assets/esri/themes/dark-purple/main.css +1 -1
  100. package/assets/esri/themes/dark-red/main.css +1 -1
  101. package/assets/esri/themes/light/main.css +1 -1
  102. package/assets/esri/themes/light/view.css +1 -1
  103. package/assets/esri/themes/light-blue/main.css +1 -1
  104. package/assets/esri/themes/light-green/main.css +1 -1
  105. package/assets/esri/themes/light-purple/main.css +1 -1
  106. package/assets/esri/themes/light-red/main.css +1 -1
  107. package/assets/esri/widgets/Weather/t9n/Weather.json +1 -1
  108. package/assets/esri/widgets/Weather/t9n/Weather_en.json +1 -1
  109. package/chunks/CloudsComposition.glsl.js +4 -4
  110. package/chunks/ComponentShader.glsl.js +19 -19
  111. package/chunks/DefaultMaterial.glsl.js +2 -2
  112. package/chunks/Terrain.glsl.js +11 -11
  113. package/chunks/WaterSurface.glsl.js +21 -21
  114. package/chunks/pe.js +1 -1
  115. package/chunks/vec3.js +1 -1
  116. package/chunks/vxlLayer.js +1 -1
  117. package/core/accessorSupport/ensureType.js +1 -1
  118. package/core/accessorSupport/get.js +1 -1
  119. package/core/accessorSupport/read.js +1 -1
  120. package/core/accessorSupport/set.js +1 -1
  121. package/core/accessorSupport/write.js +1 -1
  122. package/core/has.js +1 -1
  123. package/core/libs/gl-matrix-2/math/vec3.js +1 -1
  124. package/core/typedArrayUtil.js +1 -1
  125. package/core/workers/workerFactory.js +1 -1
  126. package/geometry/pe.js +1 -1
  127. package/geometry/support/axisAngleDegrees.js +1 -1
  128. package/geometry/support/heightModelInfoUtils.js +1 -1
  129. package/interfaces.d.ts +315 -78
  130. package/layers/RouteLayer.js +1 -1
  131. package/layers/VoxelLayer.js +1 -1
  132. package/layers/VoxelWasmPerScene.js +1 -1
  133. package/layers/mixins/OperationalLayer.js +1 -1
  134. package/layers/support/RasterWorker.js +1 -1
  135. package/layers/support/rasterDatasets/BaseRaster.js +1 -1
  136. package/layers/support/rasterFunctions/rasterProjectionHelper.js +1 -1
  137. package/libs/vxl/enums.js +1 -1
  138. package/package.json +2 -2
  139. package/popup/content/AttachmentsContent.js +1 -1
  140. package/popup/content/support/mediaInfoTypes.js +1 -1
  141. package/portal/schemas/buildingSceneLayerItem.js +1 -1
  142. package/portal/schemas/definitions.js +1 -1
  143. package/portal/schemas/integratedMeshLayerItem.js +1 -1
  144. package/portal/schemas/pointCloudLayerItem.js +1 -1
  145. package/portal/schemas/sceneLayerItem.js +1 -1
  146. package/portal/schemas/webScene.js +1 -1
  147. package/rasterRenderers.js +1 -1
  148. package/rest/find.js +1 -1
  149. package/rest/geometryService/generalize.js +1 -1
  150. package/rest/geometryService/lengths.js +1 -1
  151. package/rest/geometryService/offset.js +1 -1
  152. package/rest/geometryService/relation.js +1 -1
  153. package/rest/geometryService/trimExtend.js +1 -1
  154. package/rest/identify.js +1 -1
  155. package/{tasks → rest}/operations/find.js +0 -0
  156. package/{tasks → rest}/operations/generalize.js +0 -0
  157. package/rest/operations/identify.js +5 -0
  158. package/{tasks → rest}/operations/lengths.js +0 -0
  159. package/{tasks → rest}/operations/offset.js +0 -0
  160. package/{tasks → rest}/operations/relation.js +0 -0
  161. package/{tasks → rest}/operations/trimExtend.js +0 -0
  162. package/{tasks → rest}/operations/urlUtils.js +0 -0
  163. package/rest/print.js +1 -1
  164. package/rest/query/operations/query.js +1 -1
  165. package/rest/query/operations/queryAttachments.js +1 -1
  166. package/rest/query/operations/queryRelatedRecords.js +1 -1
  167. package/rest/query/operations/queryTopFeatures.js +1 -1
  168. package/rest/route/utils.js +1 -1
  169. package/rest/support/NetworkServiceDescription.js +1 -1
  170. package/rest/support/RouteInfo.js +1 -1
  171. package/rest/support/RouteParameters.js +1 -1
  172. package/rest/support/RouteSettings.js +5 -0
  173. package/rest/support/Stop.js +1 -1
  174. package/rest/support/networkEnums.js +1 -1
  175. package/support/revision.js +1 -1
  176. package/symbols/Font.js +1 -1
  177. package/symbols/LabelSymbol3D.js +1 -1
  178. package/symbols/PointSymbol3D.js +1 -1
  179. package/symbols/TextSymbol.js +1 -1
  180. package/symbols/TextSymbol3DLayer.js +1 -1
  181. package/symbols/cim/CIMSymbolHelper.js +1 -1
  182. package/symbols/cim/CIMSymbolRasterizer.js +1 -1
  183. package/symbols/cim/cimAnalyzer.js +1 -1
  184. package/symbols/cim/placements/PlacementAlongLineSameSize.js +1 -1
  185. package/symbols/support/Symbol3DVerticalOffset.js +1 -1
  186. package/symbols/support/cimSymbolUtils.js +1 -1
  187. package/symbols/support/previewCIMSymbol.js +1 -1
  188. package/symbols/support/previewSymbol2D.js +1 -1
  189. package/symbols/support/previewSymbol3D.js +1 -1
  190. package/symbols/support/previewWebStyleSymbol.js +1 -1
  191. package/symbols/support/svgUtils.js +1 -1
  192. package/symbols/support/textUtils.js +5 -0
  193. package/symbols.js +1 -1
  194. package/views/2d/engine/vectorTiles/style/VectorTilesRequestManager.js +1 -1
  195. package/views/2d/engine/webgl/brushes/raster/BrushRasterBitmap.js +1 -1
  196. package/views/2d/engine/webgl/mesh/templates/WGLFillTemplate.js +1 -1
  197. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  198. package/views/2d/layers/features/sources/BaseFeatureSource.js +1 -1
  199. package/views/2d/layers/imagery/BaseImageryTileSubView2D.js +1 -1
  200. package/views/2d/support/engineHelpers.js +1 -1
  201. package/views/3d/environment/CloudsComposition.glsl.js +1 -1
  202. package/views/3d/environment/CloudsComposition.js +1 -1
  203. package/views/3d/environment/CloudsGenerator.js +1 -1
  204. package/views/3d/environment/EnvironmentRenderer.js +1 -1
  205. package/views/3d/environment/Fog.js +1 -1
  206. package/views/3d/environment/SceneViewEnvironmentManager.js +1 -1
  207. package/views/3d/environment/weather.js +1 -1
  208. package/views/3d/interactive/editingTools/transformGraphic/ScaleRotateMeshAdapter.js +1 -1
  209. package/views/3d/layers/FeatureLayerViewBase3D.js +1 -1
  210. package/views/3d/layers/FeatureLikeLayerView3D.js +1 -1
  211. package/views/3d/layers/GraphicsLayerView3D.js +1 -1
  212. package/views/3d/layers/GraphicsView3D.js +1 -1
  213. package/views/3d/layers/SceneLayerGraphicsView3D.js +1 -1
  214. package/views/3d/layers/VoxelLayerView3D.js +1 -1
  215. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  216. package/views/3d/layers/graphics/Graphics3DDrapedGraphicLayer.js +1 -1
  217. package/views/3d/layers/graphics/Graphics3DElevationAlignment.js +1 -1
  218. package/views/3d/layers/graphics/Graphics3DFeatureProcessor.js +5 -0
  219. package/views/3d/layers/graphics/Graphics3DFrustumVisibility.js +1 -1
  220. package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
  221. package/views/3d/layers/graphics/Graphics3DLineSymbolLayer.js +1 -1
  222. package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
  223. package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
  224. package/views/3d/layers/graphics/Graphics3DScaleVisibility.js +1 -1
  225. package/views/3d/layers/graphics/Graphics3DSymbolCreationContext.js +1 -1
  226. package/views/3d/layers/graphics/Graphics3DSymbolLayer.js +1 -1
  227. package/views/3d/layers/graphics/Graphics3DTextSymbolLayer.js +1 -1
  228. package/views/3d/layers/graphics/Graphics3DWaterSymbolLayer.js +1 -1
  229. package/views/3d/layers/graphics/{Graphics3DGraphicLikeLayerView.js → GraphicsProcessor.js} +1 -1
  230. package/views/3d/layers/graphics/QueryEngine.js +1 -1
  231. package/views/3d/support/pointsOfInterest/Focus.js +1 -1
  232. package/views/3d/terrain/OverlayRenderer.js +1 -1
  233. package/views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js +7 -1
  234. package/views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js +28 -24
  235. package/views/3d/webgl-engine/core/shaderLibrary/shading/Water.glsl.js +21 -13
  236. package/views/3d/webgl-engine/core/shaderLibrary/terrain/Overlay.glsl.js +2 -2
  237. package/views/3d/webgl-engine/core/shaderLibrary/util/CloudsParallaxShading.glsl.js +12 -14
  238. package/views/3d/webgl-engine/lib/OffscreenRendering.js +1 -1
  239. package/views/3d/webgl-engine/lib/RenderGeometry.js +1 -1
  240. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  241. package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
  242. package/views/3d/webgl-engine/lib/TextRenderParameters.js +1 -1
  243. package/views/3d/webgl-engine/lib/TextRenderer.js +1 -1
  244. package/views/3d/webgl-engine/lib/intersectorUtilsConversions.js +1 -1
  245. package/views/3d/webgl-engine/lib/lodRendering/LodRenderer.js +1 -1
  246. package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
  247. package/views/3d/webgl-engine/materials/WaterTechnique.js +1 -1
  248. package/views/3d/webgl-engine/parts/Model.js +1 -1
  249. package/views/3d/webgl-engine/parts/ScreenshotManager.js +1 -1
  250. package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
  251. package/views/3d/webgl-engine/shaders/RealisticTreeTechnique.js +1 -1
  252. package/views/3d/webgl-engine/shaders/WaterSurface.glsl.js +1 -1
  253. package/views/SceneView.js +1 -1
  254. package/views/interactive/dragEventPipeline.js +1 -1
  255. package/views/interactive/editGeometry/operations/OffsetEdgeVertex.js +1 -1
  256. package/views/support/DefaultsFromMap.js +1 -1
  257. package/views/webgl/ContextState.js +1 -1
  258. package/views/webgl/FramebufferObject.js +1 -1
  259. package/views/webgl/Renderbuffer.js +1 -1
  260. package/views/webgl/RenderingContext.js +1 -1
  261. package/views/webgl/Texture.js +1 -1
  262. package/views/webgl/Util.js +1 -1
  263. package/views/webgl/enums.js +1 -1
  264. package/views/webgl/rasterUtils.js +1 -1
  265. package/views/webgl/testFloatBufferBlend.js +1 -1
  266. package/widgets/Attachments.js +1 -1
  267. package/widgets/Editor/workflowUtils.js +1 -1
  268. package/widgets/Feature/FeatureExpression.js +1 -1
  269. package/widgets/Feature/FeatureMedia/FeatureMediaViewModel.js +1 -1
  270. package/widgets/Feature/FeatureMedia.js +1 -1
  271. package/widgets/Feature/FeatureViewModel.js +1 -1
  272. package/widgets/FeatureForm/InputField.js +1 -1
  273. package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
  274. package/widgets/FeatureTable/Grid/Grid.js +1 -1
  275. package/widgets/FeatureTable.js +1 -1
  276. package/widgets/LayerList/LayerListViewModel.js +1 -1
  277. package/widgets/Popup/PopupViewModel.js +1 -1
  278. package/widgets/Popup/actionUtils.js +1 -1
  279. package/widgets/Slice/SliceViewModel.js +1 -1
  280. package/widgets/Slider/SliderViewModel.js +1 -1
  281. package/widgets/Slider.js +1 -1
  282. package/widgets/Weather/WeatherViewModel.js +1 -1
  283. package/widgets/Weather/css.js +1 -1
  284. package/widgets/Weather.js +1 -1
  285. package/widgets/support/InteractiveAnalysisViewModel.js +1 -1
  286. package/widgets/support/InteractiveToolViewModel.js +1 -1
  287. package/widgets/support/geolocationUtils.js +1 -1
  288. package/assets/components/assets/calcite-icon/checkSquareF16.json +0 -1
  289. package/assets/components/assets/calcite-icon/checkSquareF24.json +0 -1
  290. package/assets/components/assets/calcite-icon/checkSquareF32.json +0 -1
  291. package/assets/components/assets/calcite-icon/lineSolid4.json +0 -1
  292. package/assets/components/assets/calcite-icon/squareF16.json +0 -1
  293. package/assets/components/assets/calcite-icon/squareF24.json +0 -1
  294. package/assets/components/assets/calcite-icon/squareF32.json +0 -1
  295. package/assets/components/assets/calcite-icon/xHexagon16.json +0 -1
  296. package/assets/components/assets/calcite-icon/xHexagon24.json +0 -1
  297. package/assets/components/assets/calcite-icon/xHexagon32.json +0 -1
  298. package/assets/components/assets/calcite-icon/xHexagonF16.json +0 -1
  299. package/assets/components/assets/calcite-icon/xHexagonF24.json +0 -1
  300. package/assets/components/assets/calcite-icon/xHexagonF32.json +0 -1
  301. package/assets/components/assets/calcite-icon/xOctagonF16.json +0 -1
  302. package/assets/components/assets/calcite-icon/xOctagonF24.json +0 -1
  303. package/assets/components/assets/calcite-icon/xOctagonF32.json +0 -1
  304. package/assets/esri/core/workers/chunks/01ef8de7f76a8c61b464.js +0 -1
  305. package/assets/esri/core/workers/chunks/09da224052976e290828.js +0 -1
  306. package/assets/esri/core/workers/chunks/0f254c3e91e8fee55f28.js +0 -1
  307. package/assets/esri/core/workers/chunks/20411bb8e04703962ce6.js +0 -1
  308. package/assets/esri/core/workers/chunks/21a77eed1a4ef5b0ff08.js +0 -1
  309. package/assets/esri/core/workers/chunks/23745a5ab47c840dc452.js +0 -1
  310. package/assets/esri/core/workers/chunks/2416f8bf8bbd2ec786ab.js +0 -1
  311. package/assets/esri/core/workers/chunks/2d947080a27db6ce0d75.js +0 -1
  312. package/assets/esri/core/workers/chunks/2e445a8735ea2adb641a.js +0 -1
  313. package/assets/esri/core/workers/chunks/32f8c4af7e70ebdcb19e.js +0 -1
  314. package/assets/esri/core/workers/chunks/3564e14010953def6df9.js +0 -1
  315. package/assets/esri/core/workers/chunks/390d9021169e65c10eb8.js +0 -1
  316. package/assets/esri/core/workers/chunks/3a9740dccda6a733313c.js +0 -1
  317. package/assets/esri/core/workers/chunks/403c7d64f12f00330d88.js +0 -1
  318. package/assets/esri/core/workers/chunks/4409d77c9734de4e82a7.js +0 -1
  319. package/assets/esri/core/workers/chunks/4c301ca9c493b96df746.js +0 -1
  320. package/assets/esri/core/workers/chunks/60371c0f750cde87656d.js +0 -1
  321. package/assets/esri/core/workers/chunks/615aa2d3ecafe30c80c0.js +0 -1
  322. package/assets/esri/core/workers/chunks/631c5b514bb73782c570.js +0 -1
  323. package/assets/esri/core/workers/chunks/6c1e92ff4c732dfda756.js +0 -1
  324. package/assets/esri/core/workers/chunks/722a10c65456844d72b9.js +0 -1
  325. package/assets/esri/core/workers/chunks/75d53b28afe732c459b2.js +0 -1
  326. package/assets/esri/core/workers/chunks/85b34d91cf07567d6873.js +0 -1
  327. package/assets/esri/core/workers/chunks/8967288145f8fbd20e7d.js +0 -1
  328. package/assets/esri/core/workers/chunks/89de05207744149fb58b.js +0 -1
  329. package/assets/esri/core/workers/chunks/8fdd5bca3716816d359b.js +0 -1
  330. package/assets/esri/core/workers/chunks/987182b3a578fc7de251.js +0 -1
  331. package/assets/esri/core/workers/chunks/99a777693e4539f0b03b.js +0 -1
  332. package/assets/esri/core/workers/chunks/9d9dffc8884d66a258e4.js +0 -1
  333. package/assets/esri/core/workers/chunks/a28b53c61bddefb6616e.js +0 -1
  334. package/assets/esri/core/workers/chunks/a6ff3db3493543df81bc.js +0 -1
  335. package/assets/esri/core/workers/chunks/a8c13529367c037cdd94.js +0 -1
  336. package/assets/esri/core/workers/chunks/a960074644c3722be71e.js +0 -1
  337. package/assets/esri/core/workers/chunks/ac8dca61ade28c542ae2.js +0 -1
  338. package/assets/esri/core/workers/chunks/b99e69302ea701fff0ea.js +0 -971
  339. package/assets/esri/core/workers/chunks/b9de831ac379cf1d2969.js +0 -1
  340. package/assets/esri/core/workers/chunks/bc790b2f964144d10abe.js +0 -1
  341. package/assets/esri/core/workers/chunks/be2b7cce79fd41627931.js +0 -1
  342. package/assets/esri/core/workers/chunks/c13dfdd548dcb1bdb294.js +0 -1
  343. package/assets/esri/core/workers/chunks/c3eca92d02958732e141.js +0 -1
  344. package/assets/esri/core/workers/chunks/c6bd943fe8fd13bb4806.js +0 -1
  345. package/assets/esri/core/workers/chunks/c6f94b92e866b881d9b9.js +0 -1
  346. package/assets/esri/core/workers/chunks/cb68db7169b9dfd1c3ff.js +0 -1
  347. package/assets/esri/core/workers/chunks/cc96608b2802fbfe7a08.js +0 -1
  348. package/assets/esri/core/workers/chunks/cd02fe27eb07681cb366.js +0 -1
  349. package/assets/esri/core/workers/chunks/d52108864136c5a8a618.js +0 -1
  350. package/assets/esri/core/workers/chunks/da1c2873bdbc0956dca0.js +0 -1
  351. package/assets/esri/core/workers/chunks/dd433c160f7a0c120b82.js +0 -1
  352. package/assets/esri/core/workers/chunks/de03439ca2c9782bf325.js +0 -1
  353. package/assets/esri/core/workers/chunks/e2d68bcd2f99a65387bf.js +0 -1
  354. package/assets/esri/core/workers/chunks/ef8b75b92cf549e0507e.js +0 -1
  355. package/assets/esri/core/workers/chunks/f7fc4c993536e62f7f3e.js +0 -1
  356. package/assets/esri/core/workers/chunks/fd3e5d823dc7917f4b8f.js +0 -1
  357. package/symbols/support/constants.js +0 -5
  358. package/tasks/operations/identify.js +0 -5
  359. package/views/3d/layers/graphics/Graphics3DFeatureLikeLayerView.js +0 -5
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{_ as r}from"../../chunks/tslib.es6.js";import{JSONSupport as e}from"../../core/JSONSupport.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import"../../core/accessorSupport/ensureType.js";import{subclass as t}from"../../core/accessorSupport/decorators/subclass.js";import{screenSizeProperty as s}from"./materialUtils.js";var p;let n=p=class extends e{constructor(){super(...arguments),this.screenLength=0,this.minWorldLength=0}clone(){return new p({screenLength:this.screenLength,minWorldLength:this.minWorldLength,maxWorldLength:this.maxWorldLength})}};r([o(s)],n.prototype,"screenLength",void 0),r([o({type:Number,json:{write:!0,default:0}})],n.prototype,"minWorldLength",void 0),r([o({type:Number,json:{write:!0}})],n.prototype,"maxWorldLength",void 0),n=p=r([t("esri.symbols.support.Symbol3DVerticalOffset")],n);const i=n;export{n as Symbol3DVerticalOffset,i as default};
5
+ import{_ as r}from"../../chunks/tslib.es6.js";import{JSONSupport as e}from"../../core/JSONSupport.js";import{property as o}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import"../../core/accessorSupport/ensureType.js";import{subclass as t}from"../../core/accessorSupport/decorators/subclass.js";import{screenSizeProperty as s}from"./materialUtils.js";var p;let i=p=class extends e{constructor(){super(...arguments),this.screenLength=0,this.minWorldLength=0}clone(){return new p({screenLength:this.screenLength,minWorldLength:this.minWorldLength,maxWorldLength:this.maxWorldLength})}};r([o(s)],i.prototype,"screenLength",void 0),r([o({type:Number,json:{write:!0,default:0}})],i.prototype,"minWorldLength",void 0),r([o({type:Number,json:{write:!0}})],i.prototype,"maxWorldLength",void 0),i=p=r([t("esri.symbols.support.Symbol3DVerticalOffset")],i);export{i as Symbol3DVerticalOffset};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../Color.js";import{toCIMSymbolJSON as t,isCIMMarker as o,isCIMStroke as r,isCIMFill as a,isCIMMarkerStrokePlacement as c,fromCIMColor as s}from"../cim/utils.js";function n(e){const c=t(e);if("CIMTextSymbol"===c.type)return c.height;let s=0;if(c.symbolLayers)for(const t of c.symbolLayers)o(t)&&t.size>s?s=t.size:r(t)&&t.width>s?s=t.width:a(t);return s}function i(e,o,r){const a=t(e),c=n(e);if(0===c)return void l(a,o);f(a,o/c,!1,r)}function l(e,t){if("CIMTextSymbol"!==e.type){if(e.symbolLayers)for(const o of e.symbolLayers)switch(o.type){case"CIMPictureMarker":case"CIMVectorMarker":o.size=t;break;case"CIMPictureStroke":case"CIMSolidStroke":o.width=t}}else e.height=t}function f(e,t,o,r){if("CIMTextSymbol"!==e.type){if(o&&e.effects)for(const o of e.effects)y(o,t);if(e.symbolLayers)for(const o of e.symbolLayers)switch(o.type){case"CIMPictureMarker":case"CIMVectorMarker":m(o,t,r);break;case"CIMPictureStroke":case"CIMSolidStroke":null!=r&&r.preserveOutlineWidth||(o.width*=t);break;case"CIMPictureFill":o.height*=t,o.offsetX*=t,o.offsetY*=t;break;case"CIMHatchFill":f(o.lineSymbol,t,!0,{...r,preserveOutlineWidth:!1}),o.offsetX*=t,o.offsetY*=t,o.separation*=t}}else e.height*=t}function m(e,t,o){if(e.markerPlacement&&M(e.markerPlacement,t),e.offsetX*=t,e.offsetY*=t,e.anchorPoint&&"Absolute"===e.anchorPointUnits&&(e.anchorPoint={x:e.anchorPoint.x*t,y:e.anchorPoint.y*t}),e.size*=t,"CIMVectorMarker"===e.type&&e.markerGraphics)for(const r of e.markerGraphics)e.scaleSymbolsProportionally||f(r.symbol,t,!0,o)}function M(e,t){switch(c(e)&&(e.offset*=t),e.type){case"CIMMarkerPlacementAlongLineRandomSize":case"CIMMarkerPlacementAlongLineSameSize":if(e.customEndingOffset*=t,e.offsetAlongLine*=t,e.placementTemplate&&e.placementTemplate.length){const o=e.placementTemplate.map((e=>e*t));e.placementTemplate=o}break;case"CIMMarkerPlacementAlongLineVariableSize":if(e.maxRandomOffset*=t,e.placementTemplate&&e.placementTemplate.length){const o=e.placementTemplate.map((e=>e*t));e.placementTemplate=o}break;case"CIMMarkerPlacementOnLine":e.startPointOffset*=t;break;case"CIMMarkerPlacementAtExtremities":e.offsetAlongLine*=t;break;case"CIMMarkerPlacementAtMeasuredUnits":case"CIMMarkerPlacementOnVertices":break;case"CIMMarkerPlacementAtRatioPositions":e.beginPosition*=t,e.endPosition*=t;break;case"CIMMarkerPlacementPolygonCenter":e.offsetX*=t,e.offsetY*=t;break;case"CIMMarkerPlacementInsidePolygon":e.offsetX*=t,e.offsetY*=t,e.stepX*=t,e.stepY*=t}}function y(e,t){switch(e.type){case"CIMGeometricEffectArrow":case"CIMGeometricEffectDonut":e.width*=t;break;case"CIMGeometricEffectBuffer":e.size*=t;break;case"CIMGeometricEffectCut":e.beginCut*=t,e.endCut*=t,e.middleCut*=t;break;case"CIMGeometricEffectDashes":if(e.customEndingOffset*=t,e.offsetAlongLine*=t,e.dashTemplate&&e.dashTemplate.length){const o=e.dashTemplate.map((e=>e*t));e.dashTemplate=o}break;case"CIMGeometricEffectExtension":case"CIMGeometricEffectJog":case"CIMGeometricEffectRadial":e.length*=t;break;case"CIMGeometricEffectMove":e.offsetX*=t,e.offsetY*=t;break;case"CIMGeometricEffectOffset":case"CIMGeometricEffectOffsetTangent":e.offset*=t;break;case"CIMGeometricEffectRegularPolygon":e.radius*=t;break;case"CIMGeometricEffectTaperedPolygon":e.fromWidth*=t,e.length*=t,e.toWidth*=t;break;case"CIMGeometricEffectWave":e.amplitude*=t,e.period*=t}}function C(o){const r=[];return k(t(o),r),r.length?new e(s(r[0])):null}function k(e,t){let a;a="CIMTextSymbol"===e.type?e.symbol:e;const s="CIMPolygonSymbol"===e.type;if(a.symbolLayers)for(const n of a.symbolLayers)if(!(n.colorLocked||s&&(r(n)||o(n)&&n.markerPlacement&&c(n.markerPlacement))))switch(n.type){case"CIMPictureMarker":case"CIMPictureStroke":case"CIMPictureFill":n.tintColor&&b(t,n.tintColor);break;case"CIMVectorMarker":n.markerGraphics.forEach((e=>{k(e.symbol,t)}));break;case"CIMSolidStroke":case"CIMSolidFill":b(t,n.color);break;case"CIMHatchFill":k(n.lineSymbol,t)}}function b(e,t){for(const o of e)if(o.join(".")===t.join("."))return;e.push(t)}function I(o,r,a){r instanceof e||(r=new e(r));const c=t(o);c&&p(c,r,a)}function p(e,t,s){let n;n="CIMTextSymbol"===e.type?e.symbol:e;const i="CIMPolygonSymbol"===n.type;if(n.symbolLayers)for(const l of n.symbolLayers){if(l.colorLocked)continue;if(i)if(s){const{layersToColor:e}=s;if((r(l)||o(l)&&l.markerPlacement&&c(l.markerPlacement))&&"fill"===e||a(l)&&"outline"===e)continue}else if(r(l)||o(l)&&l.markerPlacement&&c(l.markerPlacement))continue;const e=t.toArray();switch(l.type){case"CIMPictureMarker":case"CIMPictureStroke":case"CIMPictureFill":l.tintColor=e;break;case"CIMVectorMarker":l.markerGraphics.forEach((e=>{p(e.symbol,t,s)}));break;case"CIMSolidStroke":case"CIMSolidFill":l.color=e;break;case"CIMHatchFill":p(l.lineSymbol,t,s)}}}function u(e,o=!1){const r=t(e);return"CIMTextSymbol"===r.type||"CIMPointSymbol"===r.type?o&&0!==r.angle?360-r.angle:r.angle||0:0}function h(e,r,a=!1){const c=t(e);if(a&&0!==r&&(r=360-r),"CIMTextSymbol"!==c.type){if("CIMPointSymbol"===c.type&&c.symbolLayers){const e=r-(c.angle||0);for(const t of c.symbolLayers)if(o(t)){let o=t.rotation||0;t.rotateClockwise?o-=e:o+=e,t.rotation=o}c.angle=r}}else c.angle=r}export{I as applyCIMSymbolColor,h as applyCIMSymbolRotation,C as getCIMSymbolColor,u as getCIMSymbolRotation,n as getCIMSymbolSize,m as scaleCIMMarker,i as scaleCIMSymbolTo};
5
+ import e from"../../Color.js";import{toCIMSymbolJSON as t,isCIMMarker as o,isCIMStroke as a,isCIMFill as r,isCIMMarkerStrokePlacement as s,fromCIMColor as n}from"../cim/utils.js";function i(e){const s=t(e);if("CIMTextSymbol"===s.type)return s.height;let n=0;if(s.symbolLayers)for(const t of s.symbolLayers)o(t)&&t.size>n?n=t.size:a(t)&&t.width>n?n=t.width:r(t);return n}function c(e,o,a){const r=t(e),s=i(e);if(0===s)return void f(r,o);l(r,o/s,!1,a)}function f(e,t){if("CIMTextSymbol"!==e.type){if(e.symbolLayers)for(const o of e.symbolLayers)switch(o.type){case"CIMPictureMarker":case"CIMVectorMarker":o.size=t;break;case"CIMPictureStroke":case"CIMSolidStroke":o.width=t}}else e.height=t}function l(e,t,o,a){if("CIMTextSymbol"!==e.type){if(o&&e.effects)for(const o of e.effects)C(o,t);if(e.symbolLayers)for(const o of e.symbolLayers)switch(o.type){case"CIMPictureMarker":case"CIMVectorMarker":m(o,t,a);break;case"CIMPictureStroke":case"CIMSolidStroke":null!=a&&a.preserveOutlineWidth||!o.width||(o.width*=t);break;case"CIMPictureFill":o.height&&(o.height*=t),o.offsetX&&(o.offsetX*=t),o.offsetY&&(o.offsetY*=t);break;case"CIMHatchFill":l(o.lineSymbol,t,!0,{...a,preserveOutlineWidth:!1}),o.offsetX&&(o.offsetX*=t),o.offsetY&&(o.offsetY*=t),o.separation&&(o.separation*=t)}}else e.height*=t}function m(e,t,o){if(e.markerPlacement&&M(e.markerPlacement,t),e.offsetX&&(e.offsetX*=t),e.offsetY&&(e.offsetY*=t),e.anchorPoint&&"Absolute"===e.anchorPointUnits&&(e.anchorPoint={x:e.anchorPoint.x*t,y:e.anchorPoint.y*t}),e.size*=t,"CIMVectorMarker"===e.type&&e.markerGraphics)for(const a of e.markerGraphics)e.scaleSymbolsProportionally||l(a.symbol,t,!0,o)}function M(e,t){switch(s(e)&&e.offset&&(e.offset*=t),e.type){case"CIMMarkerPlacementAlongLineRandomSize":case"CIMMarkerPlacementAlongLineSameSize":if(e.customEndingOffset&&(e.customEndingOffset*=t),e.offsetAlongLine&&(e.offsetAlongLine*=t),e.placementTemplate&&e.placementTemplate.length){const o=e.placementTemplate.map((e=>e*t));e.placementTemplate=o}break;case"CIMMarkerPlacementAlongLineVariableSize":if(e.maxRandomOffset&&(e.maxRandomOffset*=t),e.placementTemplate&&e.placementTemplate.length){const o=e.placementTemplate.map((e=>e*t));e.placementTemplate=o}break;case"CIMMarkerPlacementOnLine":e.startPointOffset&&(e.startPointOffset*=t);break;case"CIMMarkerPlacementAtExtremities":e.offsetAlongLine&&(e.offsetAlongLine*=t);break;case"CIMMarkerPlacementAtMeasuredUnits":case"CIMMarkerPlacementOnVertices":break;case"CIMMarkerPlacementAtRatioPositions":e.beginPosition&&(e.beginPosition*=t),e.endPosition&&(e.endPosition*=t);break;case"CIMMarkerPlacementPolygonCenter":e.offsetX&&(e.offsetX*=t),e.offsetY&&(e.offsetY*=t);break;case"CIMMarkerPlacementInsidePolygon":e.offsetX&&(e.offsetX*=t),e.offsetY&&(e.offsetY*=t),e.stepX&&(e.stepX*=t),e.stepY&&(e.stepY*=t)}}function C(e,t){switch(e.type){case"CIMGeometricEffectArrow":case"CIMGeometricEffectDonut":e.width&&(e.width*=t);break;case"CIMGeometricEffectBuffer":e.size&&(e.size*=t);break;case"CIMGeometricEffectCut":e.beginCut&&(e.beginCut*=t),e.endCut&&(e.endCut*=t),e.middleCut&&(e.middleCut*=t);break;case"CIMGeometricEffectDashes":if(e.customEndingOffset&&(e.customEndingOffset*=t),e.offsetAlongLine&&(e.offsetAlongLine*=t),e.dashTemplate&&e.dashTemplate.length){const o=e.dashTemplate.map((e=>e*t));e.dashTemplate=o}break;case"CIMGeometricEffectExtension":case"CIMGeometricEffectJog":case"CIMGeometricEffectRadial":e.length&&(e.length*=t);break;case"CIMGeometricEffectMove":e.offsetX&&(e.offsetX*=t),e.offsetY&&(e.offsetY*=t);break;case"CIMGeometricEffectOffset":case"CIMGeometricEffectOffsetTangent":e.offset&&(e.offset*=t);break;case"CIMGeometricEffectRegularPolygon":e.radius&&(e.radius*=t);break;case"CIMGeometricEffectTaperedPolygon":e.fromWidth&&(e.fromWidth*=t),e.length&&(e.length*=t),e.toWidth&&(e.toWidth*=t);break;case"CIMGeometricEffectWave":e.amplitude&&(e.amplitude*=t),e.period&&(e.period*=t)}}function y(o){const a=[];return k(t(o),a),a.length?new e(n(a[0])):null}function k(e,t){let r;r="CIMTextSymbol"===e.type?e.symbol:e;const n="CIMPolygonSymbol"===e.type;if(r.symbolLayers)for(const i of r.symbolLayers)if(!(i.colorLocked||n&&(a(i)||o(i)&&i.markerPlacement&&s(i.markerPlacement))))switch(i.type){case"CIMPictureMarker":case"CIMPictureStroke":case"CIMPictureFill":i.tintColor&&b(t,i.tintColor);break;case"CIMVectorMarker":i.markerGraphics.forEach((e=>{k(e.symbol,t)}));break;case"CIMSolidStroke":case"CIMSolidFill":b(t,i.color);break;case"CIMHatchFill":k(i.lineSymbol,t)}}function b(e,t){for(const o of e)if(o.join(".")===t.join("."))return;e.push(t)}function p(o,a,r){a instanceof e||(a=new e(a));const s=t(o);s&&u(s,a,r)}function u(e,t,n){let i;i="CIMTextSymbol"===e.type?e.symbol:e;const c="CIMPolygonSymbol"===i.type;if(i.symbolLayers)for(const f of i.symbolLayers){if(f.colorLocked)continue;if(c)if(n){const{layersToColor:e}=n;if((a(f)||o(f)&&f.markerPlacement&&s(f.markerPlacement))&&"fill"===e||r(f)&&"outline"===e)continue}else if(a(f)||o(f)&&f.markerPlacement&&s(f.markerPlacement))continue;const e=t.toArray();switch(f.type){case"CIMPictureMarker":case"CIMPictureStroke":case"CIMPictureFill":f.tintColor=e;break;case"CIMVectorMarker":f.markerGraphics.forEach((e=>{u(e.symbol,t,n)}));break;case"CIMSolidStroke":case"CIMSolidFill":f.color=e;break;case"CIMHatchFill":u(f.lineSymbol,t,n)}}}function I(e,o=!1){const a=t(e);return"CIMTextSymbol"===a.type||"CIMPointSymbol"===a.type?o&&0!==a.angle?360-a.angle:a.angle||0:0}function h(e,a,r=!1){const s=t(e);if(r&&0!==a&&(a=360-a),"CIMTextSymbol"!==s.type){if("CIMPointSymbol"===s.type&&s.symbolLayers){const e=a-(s.angle||0);for(const t of s.symbolLayers)if(o(t)){let o=t.rotation||0;t.rotateClockwise?o-=e:o+=e,t.rotation=o}s.angle=a}}else s.angle=a}export{p as applyCIMSymbolColor,h as applyCIMSymbolRotation,y as getCIMSymbolColor,I as getCIMSymbolRotation,i as getCIMSymbolSize,m as scaleCIMMarker,c as scaleCIMSymbolTo};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{px2pt as e}from"../../core/screenUtils.js";import{CIMSymbolRasterizer as t}from"../cim/CIMSymbolRasterizer.js";import{getCIMSymbolSize as i,scaleCIMSymbolTo as l}from"./cimSymbolUtils.js";import{SymbolSizeDefaults as a}from"./previewUtils.js";import{renderSymbol as o}from"./renderUtils.js";const s=new t(null,!0),n=a.maxSize;async function c(t,a={}){const{size:c,maxSize:r,node:m,opacity:f}=a,p=a.cimOptions||a,{feature:h,fieldMap:y,geometryType:d,style:u}=p,g=i(t),w=Math.min(null!=c?c:g,null!=r?r:e(n));w!==g&&(t=t.clone(),l(t,w,{preserveOutlineWidth:!0}));let M=3;t&&t.data&&t.data.symbol&&"CIMPointSymbol"!==t.data.symbol.type&&(M=1);const b=await s.rasterizeCIMSymbolAsync(t,h,y,d,{scaleFactor:M,style:u}),S=document.createElement("canvas");S.width=b.imageData.width,S.height=b.imageData.height;S.getContext("2d").putImageData(b.imageData,0,0);let j=S.width/M,v=S.height/M;if(null!=c&&(null==(null==a?void 0:a.scale)||(null==a?void 0:a.scale))){const e=j/v;j=e<=1?Math.ceil(w*e):w,v=e<=1?w:Math.ceil(w/e)}const x=new Image(j,v);x.src=S.toDataURL(),null!=f&&(x.style.opacity=`${f}`);let z=x;if(null!=a.effectView){const e={shape:{type:"image",x:0,y:0,width:j,height:v,src:x.src},fill:null,stroke:null,offset:[0,0]};z=o([[e]],[j,v],{effectView:a.effectView})}return m&&m.appendChild(z),z}export{c as previewCIMSymbol};
5
+ import{px2pt as e}from"../../core/screenUtils.js";import{CIMSymbolRasterizer as t}from"../cim/CIMSymbolRasterizer.js";import{getCIMSymbolSize as l,scaleCIMSymbolTo as i}from"./cimSymbolUtils.js";import{SymbolSizeDefaults as a}from"./previewUtils.js";import{renderSymbol as o}from"./renderUtils.js";const n=new t(null,!0),s=a.maxSize;async function r(t,a={}){const{size:r,maxSize:c,node:m,opacity:f}=a,p=a.cimOptions||a,{feature:u,fieldMap:y,geometryType:h,style:d}=p,g=l(t),w="number"==typeof r?r:null,b=Math.min(null!=w?w:g,null!=c?c:e(s));b!==g&&(t=t.clone(),i(t,b,{preserveOutlineWidth:!0}));let M=3;t&&t.data&&t.data.symbol&&"CIMPointSymbol"!==t.data.symbol.type&&(M=1);const S=await n.rasterizeCIMSymbolAsync(t,u,y,h,{scaleFactor:M,style:d}),j=document.createElement("canvas");j.width=S.imageData.width,j.height=S.imageData.height;j.getContext("2d").putImageData(S.imageData,0,0);let v=j.width/M,x=j.height/M;if(null!=r&&(null==(null==a?void 0:a.scale)||(null==a?void 0:a.scale))){const e=v/x;v=e<=1?Math.ceil(b*e):b,x=e<=1?b:Math.ceil(b/e)}const z=new Image(v,x);z.src=j.toDataURL(),null!=f&&(z.style.opacity=`${f}`);let C=z;if(null!=a.effectView){const e={shape:{type:"image",x:0,y:0,width:v,height:x,src:z.src},fill:null,stroke:null,offset:[0,0]};C=o([[e]],[v,x],{effectView:a.effectView})}return m&&m.appendChild(C),C}export{r as previewCIMSymbol};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../Color.js";import t from"../../core/Error.js";import{pt2px as a,px2pt as l}from"../../core/screenUtils.js";import{getFill as n,getStroke as o,getPatternUrlWithColor as s}from"./gfxUtils.js";import{SymbolSizeDefaults as i,shapes as r,adjustColorBrightness as c}from"./previewUtils.js";import{renderSymbol as m}from"./renderUtils.js";const u="picture-fill",p="picture-marker",h="simple-fill",d="simple-line",f="simple-marker",v="text",y="Aa",w=i.size,g=i.maxSize,M=i.maxOutlineSize,b=i.lineWidth,x=document.createElement("canvas");function k(e,t){const a=x.getContext("2d"),l=[];return t&&(t.weight&&l.push(t.weight),t.size&&l.push(t.size+"px"),t.family&&l.push(t.family)),a.font=l.join(" "),a.measureText(e).width}const z=7.2/2.54,L=72/2.54;function j(e){if(0===e.length)return 0;if(e.length>2){const t=l(1),a=parseFloat(e);switch(e.slice(-2)){case"px":return a;case"pt":return a*t;case"in":return 72*a*t;case"pc":return 12*a*t;case"mm":return a*z*t;case"cm":return a*L*t}}return parseFloat(e)}function C(l,i){var x,z;const L=null!=(null==i?void 0:i.size)?a(i.size):null,C=null!=(null==i?void 0:i.maxSize)?a(i.maxSize):null,S=null!=(null==i?void 0:i.opacity)?i.opacity:null,F=null!=(null==i?void 0:i.rotation)?i.rotation:"angle"in l?l.angle:null,E=n(l);let P=o(l);if(E&&!P){const t="type"in E?null:new e(E);"#ffffff"===(t?t.toHex():null)&&(P={color:"#bdc3c7",width:.75})}const U={shape:null,fill:null,stroke:P,offset:[0,0]};null!=(x=P)&&x.width&&(P.width=Math.min(P.width,M));const q=(null==(z=P)?void 0:z.width)||0;let Z=null!=L&&(null==(null==i?void 0:i.scale)||(null==i?void 0:i.scale)),H=0,T=0,V=!1;switch(l.type){case f:{const e=l.style,t=Math.min(null!=L?L:a(l.size),C||g);switch(H=t,T=t,e){case"circle":U.shape={type:"circle",cx:0,cy:0,r:.5*t},Z||(H+=q,T+=q);break;case"cross":U.shape={type:"path",path:[{command:"M",values:[0,.5*T]},{command:"L",values:[H,.5*T]},{command:"M",values:[.5*H,0]},{command:"L",values:[.5*H,T]}]};break;case"diamond":U.shape={type:"path",path:[{command:"M",values:[0,.5*T]},{command:"L",values:[.5*H,0]},{command:"L",values:[H,.5*T]},{command:"L",values:[.5*H,T]},{command:"Z",values:[]}]},Z||(H+=q,T+=q);break;case"square":U.shape={type:"path",path:[{command:"M",values:[0,0]},{command:"L",values:[H,0]},{command:"L",values:[H,T]},{command:"L",values:[0,T]},{command:"Z",values:[]}]},Z||(H+=q,T+=q),F&&(V=!0);break;case"triangle":U.shape={type:"path",path:[{command:"M",values:[.5*H,0]},{command:"L",values:[H,T]},{command:"L",values:[0,T]},{command:"Z",values:[]}]},Z||(H+=q,T+=q),F&&(V=!0);break;case"x":U.shape={type:"path",path:[{command:"M",values:[0,0]},{command:"L",values:[H,T]},{command:"M",values:[H,0]},{command:"L",values:[0,T]}]},F&&(V=!0);break;case"path":U.shape={type:"path",path:l.path||""},Z||(H+=q,T+=q),F&&(V=!0),Z=!0}break}case d:{const e=Math.min(null!=L?L:q,C||M),t=e>w?2*e:b;P.width=e,H=t,T=e,U.shape={type:"path",path:[{command:"M",values:[0,T]},{command:"L",values:[H,T]}]};break}case u:case h:H=Math.min(null!=L?L:w,C||g)+q,T=H,Z=!0,U.shape="object"==typeof(null==i?void 0:i.symbolConfig)&&null!=i&&i.symbolConfig.isSquareFill?r.squareFill[0]:r.fill[0];break;case p:{let e=a(l.width),t=a(l.height);const n=null!=L?L:Math.max(e,t),o=e/t;e=o<=1?Math.ceil(n*o):n,t=o<=1?n:Math.ceil(n/o),H=Math.min(e,C||g),T=Math.min(t,C||g),U.shape={type:"image",x:-Math.round(H/2),y:-Math.round(T/2),width:H,height:T,src:l.url||""},F&&(V=!0);break}case v:{const e=l,t=e.text||y,n=e.font,o=Math.min(null!=L?L:a(n.size),C||g),s=k(t,{weight:n.weight,size:o,family:n.family}),i=/[\uE600-\uE6FF]/.test(t);H=i?o:s,T=o;let r=.25*j((n?o:0).toString());i&&(r+=5),U.shape={type:"text",text:t,x:0,y:r,align:"middle",decoration:n&&n.decoration,rotated:e.rotated,kerning:e.kerning},U.font=n&&{size:o,style:n.style,decoration:n.decoration,weight:n.weight,family:n.family};break}}if(!U.shape)return Promise.reject(new t("symbolPreview: renderPreviewHTML2D","symbol not supported."));const A=E,D=l.color;let O=null;return A&&"pattern"===A.type&&D&&l.type!==u?O=s(A.src,D.toCss(!0)).then((e=>(A.src=e,U.fill=A,U))):(U.fill=E,O=Promise.resolve(U)),O.then((e=>{const t=[[e]];if("object"==typeof(null==i?void 0:i.symbolConfig)&&null!=i&&i.symbolConfig.applyColorModulation){const a=.6*H;t.unshift([{...e,offset:[-a,0],fill:c(E,-.3)}]),t.push([{...e,offset:[a,0],fill:c(E,.3)}]),H+=2*a}return m(t,[H,T],{node:i&&i.node,scale:Z,opacity:S,rotation:F,useRotationSize:V,effectView:null==i?void 0:i.effectView})}))}export{C as previewSymbol2D};
5
+ import e from"../../Color.js";import t from"../../core/Error.js";import{pt2px as l,px2pt as a}from"../../core/screenUtils.js";import{getFill as n,getStroke as o,getPatternUrlWithColor as i}from"./gfxUtils.js";import{SymbolSizeDefaults as s,shapes as c,adjustColorBrightness as m}from"./previewUtils.js";import{renderSymbol as u}from"./renderUtils.js";const r="picture-fill",h="picture-marker",p="simple-fill",d="simple-line",f="simple-marker",v="text",y="Aa",w=s.size,g=s.maxSize,M=s.maxOutlineSize,b=s.lineWidth,x=document.createElement("canvas");function L(e,t){const l=x.getContext("2d"),a=[];return t&&(t.weight&&a.push(t.weight),t.size&&a.push(t.size+"px"),t.family&&a.push(t.family)),l.font=a.join(" "),l.measureText(e).width}const k=7.2/2.54,z=72/2.54;function j(e){if(0===e.length)return 0;if(e.length>2){const t=a(1),l=parseFloat(e);switch(e.slice(-2)){case"px":return l;case"pt":return l*t;case"in":return 72*l*t;case"pc":return 12*l*t;case"mm":return l*k*t;case"cm":return l*z*t}}return parseFloat(e)}function C(e){const t=null==e?void 0:e.size;return{width:null!=t&&"object"==typeof t&&"width"in t?l(t.width):null,height:null!=t&&"object"==typeof t&&"height"in t?l(t.height):null}}function S(a,s){var x,k;const z="number"==typeof(null==s?void 0:s.size)?null==s?void 0:s.size:null,S=null!=z?l(z):null,F=null!=(null==s?void 0:s.maxSize)?l(s.maxSize):null,E=null!=(null==s?void 0:s.opacity)?s.opacity:null,P=null!=(null==s?void 0:s.rotation)?s.rotation:"angle"in a?a.angle:null,U=n(a);let Z=o(a);if(U&&!Z){const t="type"in U?null:new e(U);"#ffffff"===(t?t.toHex():null)&&(Z={color:"#bdc3c7",width:.75})}const q={shape:null,fill:null,stroke:Z,offset:[0,0]};null!=(x=Z)&&x.width&&(Z.width=Math.min(Z.width,M));const H=(null==(k=Z)?void 0:k.width)||0;let T=null!=(null==s?void 0:s.size)&&(null==(null==s?void 0:s.scale)||(null==s?void 0:s.scale)),V=0,A=0,D=!1;switch(a.type){case f:{const e=a.style,t=Math.min(null!=S?S:l(a.size),F||g);switch(V=t,A=t,e){case"circle":q.shape={type:"circle",cx:0,cy:0,r:.5*t},T||(V+=H,A+=H);break;case"cross":q.shape={type:"path",path:[{command:"M",values:[0,.5*A]},{command:"L",values:[V,.5*A]},{command:"M",values:[.5*V,0]},{command:"L",values:[.5*V,A]}]};break;case"diamond":q.shape={type:"path",path:[{command:"M",values:[0,.5*A]},{command:"L",values:[.5*V,0]},{command:"L",values:[V,.5*A]},{command:"L",values:[.5*V,A]},{command:"Z",values:[]}]},T||(V+=H,A+=H);break;case"square":q.shape={type:"path",path:[{command:"M",values:[0,0]},{command:"L",values:[V,0]},{command:"L",values:[V,A]},{command:"L",values:[0,A]},{command:"Z",values:[]}]},T||(V+=H,A+=H),P&&(D=!0);break;case"triangle":q.shape={type:"path",path:[{command:"M",values:[.5*V,0]},{command:"L",values:[V,A]},{command:"L",values:[0,A]},{command:"Z",values:[]}]},T||(V+=H,A+=H),P&&(D=!0);break;case"x":q.shape={type:"path",path:[{command:"M",values:[0,0]},{command:"L",values:[V,A]},{command:"M",values:[V,0]},{command:"L",values:[0,A]}]},P&&(D=!0);break;case"path":q.shape={type:"path",path:a.path||""},T||(V+=H,A+=H),P&&(D=!0),T=!0}break}case d:{const{width:e,height:t}=C(s),l=null!=t?t:Math.min(null!=S?S:H,F||M),n=null!=e?e:l>w?2*l:b;Z.width=l,V=n,A=l;const o="round"===a.cap;q.shape={type:"path",path:[{command:"M",values:[o?l/2:0,A]},{command:"L",values:[o?V-l/2:V,A]}]};break}case r:case p:{const e="object"==typeof(null==s?void 0:s.symbolConfig)&&(null==s?void 0:s.symbolConfig.isSquareFill),{width:t,height:l}=C(s);V=e&&null!=t?Math.min(t,F||g):Math.min(null!=S?S:w,F||g),A=e&&null!=l?Math.min(l,F||g):V,T||(V+=H,A+=H),T=!0,q.shape=e?{type:"path",path:[{command:"M",values:[0,0]},{command:"L",values:[V,0]},{command:"L",values:[V,A]},{command:"L",values:[0,A]},{command:"L",values:[0,0]},{command:"Z",values:[]}]}:c.fill[0];break}case h:{let e=l(a.width),t=l(a.height);const n=null!=S?S:Math.max(e,t),o=e/t;e=o<=1?Math.ceil(n*o):n,t=o<=1?n:Math.ceil(n/o),V=Math.min(e,F||g),A=Math.min(t,F||g),q.shape={type:"image",x:-Math.round(V/2),y:-Math.round(A/2),width:V,height:A,src:a.url||""},P&&(D=!0);break}case v:{const e=a,t=e.text||y,n=e.font,o=Math.min(null!=S?S:l(n.size),F||g),i=L(t,{weight:n.weight,size:o,family:n.family}),s=/[\uE600-\uE6FF]/.test(t);V=s?o:i,A=o;let c=.25*j((n?o:0).toString());s&&(c+=5),q.shape={type:"text",text:t,x:0,y:c,align:"middle",decoration:n&&n.decoration,rotated:e.rotated,kerning:e.kerning},q.font=n&&{size:o,style:n.style,decoration:n.decoration,weight:n.weight,family:n.family};break}}if(!q.shape)return Promise.reject(new t("symbolPreview: renderPreviewHTML2D","symbol not supported."));const O=U,R=a.color;let W=null;return O&&"pattern"===O.type&&R&&a.type!==r?W=i(O.src,R.toCss(!0)).then((e=>(O.src=e,q.fill=O,q))):(q.fill=U,W=Promise.resolve(q)),W.then((e=>{const t=[[e]];if("object"==typeof(null==s?void 0:s.symbolConfig)&&null!=s&&s.symbolConfig.applyColorModulation){const l=.6*V;t.unshift([{...e,offset:[-l,0],fill:m(U,-.3)}]),t.push([{...e,offset:[l,0],fill:m(U,.3)}]),V+=2*l,T=!1}return u(t,[V,A],{node:s&&s.node,scale:T,opacity:E,rotation:P,useRotationSize:D,effectView:null==s?void 0:s.effectView})}))}export{S as previewSymbol2D};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{getAssetUrl as e}from"../../assets.js";import{toHSV as t,toRGB as s}from"../../core/colorUtils.js";import"../../core/has.js";import r from"../../core/Error.js";import a from"../../core/Logger.js";import{isNone as o,isSome as n}from"../../core/maybe.js";import{eachAlways as l}from"../../core/promiseUtils.js";import{pt2px as i}from"../../core/screenUtils.js";import{defaultThematicColor as c,getPatternUrlWithColor as p,dekebabifyLineStyle as u}from"./gfxUtils.js";import{defaultPrimitive as h}from"./IconSymbol3DLayerResource.js";import{defaultPrimitive as m}from"./ObjectSymbol3DLayerResource.js";import{SymbolSizeDefaults as f,adjustColorComponentBrightness as y,getPathSymbolShapes as d,shapes as b,getExtrudeSymbolShapes as v,getTetrahedronShapes as g,getDiamondShapes as k,getCylinderShapes as w,getCubeShapes as x,getInvertedConeShapes as M,getConeShapes as j,getWaterSymbolShapes as L}from"./previewUtils.js";import{renderSymbol as z,tintImageWithColor as S}from"./renderUtils.js";import{isVolumetricSymbol as P,getIconHref as U}from"./utils.js";import{resolveWebStyleSymbol as D}from"./webStyleSymbolUtils.js";const O=f.size,C=f.maxSize,I=f.maxOutlineSize,R=f.lineWidth,E=f.tallSymbolWidth,Z=a.getLogger("esri.symbols.support.previewSymbol3D");function q(e){const t=e.outline,s=n(e.material)?e.material.color:null,r=n(s)?s.toHex():null;if(o(t)||"pattern"in t&&n(t.pattern)&&"style"===t.pattern.type&&"none"===t.pattern.style)return"fill"===e.type&&"#ffffff"===r?{color:"#bdc3c7",width:.75}:null;const a=i(t.size)||0;return{color:"rgba("+(n(t.color)?t.color.toRgba():"255,255,255,1")+")",width:Math.min(a,I),style:"pattern"in t&&n(t.pattern)&&"style"===t.pattern.type?u(t.pattern.style):null,join:"butt",cap:"patternCap"in t?t.patternCap:"butt"}}function A(t,s){const r=s&&s.resource,a=r&&r.href;if(t.thumbnail&&t.thumbnail.url)return Promise.resolve(t.thumbnail.url);if(a&&"object"!==s.type)return Promise.resolve(U(t,s));const o=e("esri/images/Legend/legend3dsymboldefault.png");return t.styleOrigin&&(t.styleOrigin.styleName||t.styleOrigin.styleUrl)?D(t.styleOrigin,{portal:t.styleOrigin.portal},"webRef").catch((e=>e)).then((e=>{var t;return(null==e||null==(t=e.thumbnail)?void 0:t.url)||o})):Promise.resolve(o)}function H(e,r=1){const a=e.a,o=t(e),n=o.h,l=o.s/r,i=100-(100-o.v)/r,{r:c,g:p,b:u}=s({h:n,s:l,v:i});return[c,p,u,a]}function N(e){return"water"===e.type?o(e.color)?null:e.color:o(e.material)||o(e.material.color)?null:e.material.color}function T(e,t=0){const s=N(e);if(!s){if("fill"===e.type)return null;const s=c.r,r=y(s,t);return[r,r,r,100]}const r=s.toRgba();for(let a=0;a<3;a++)r[a]=y(r[a],t);return r}async function W(t,s){const r=t.style;if("none"===r)return null;return{type:"pattern",x:0,y:0,src:await p(e(`esri/symbols/patterns/${r}.png`),s.toCss(!0)),width:5,height:5}}function $(e){return e.outline?q(e):{color:"rgba(0, 0, 0, 1)",width:1.5}}function B(e,t){const s=N(e);if(!s)return null;let r="rgba(";return r+=y(s.r,t)+",",r+=y(s.g,t)+",",r+=y(s.b,t)+",",r+s.a+");"}function F(e,t){const s=B(e,t);if(!s)return{};if("pattern"in e&&n(e.pattern)&&"style"===e.pattern.type&&"none"===e.pattern.style)return null;return{color:s,width:Math.min(e.size?i(e.size):.75,I),style:"pattern"in e&&n(e.pattern)&&"style"===e.pattern.type?u(e.pattern.style):null,cap:"cap"in e?e.cap:null,join:"join"in e?"miter"===e.join?i(2):e.join:null}}function G(e,t,s){const r=.75*s;return{type:"linear",x1:r?.25*r:0,y1:r?.5*r:0,x2:r||4,y2:r?.5*r:4,colors:[{color:e,offset:0},{color:t,offset:1}]}}function J(e){const t=e.depth,s=e.height,r=e.width;return r&&t&&s&&r===t&&r<s}function K(e,t,s){const r=[];if(!e)return r;switch(e.type){case"icon":{const s=0,a=0,o=t,n=t;switch(e.resource&&e.resource.primitive||h){case"circle":r.push({shape:{type:"circle",cx:0,cy:0,r:.5*t},fill:T(e,0),stroke:q(e)});break;case"square":r.push({shape:{type:"path",path:[{command:"M",values:[s,n]},{command:"L",values:[s,a]},{command:"L",values:[o,a]},{command:"L",values:[o,n]},{command:"Z",values:[]}]},fill:T(e,0),stroke:q(e)});break;case"triangle":r.push({shape:{type:"path",path:[{command:"M",values:[s,n]},{command:"L",values:[.5*o,a]},{command:"L",values:[o,n]},{command:"Z",values:[]}]},fill:T(e,0),stroke:q(e)});break;case"cross":r.push({shape:{type:"path",path:[{command:"M",values:[.5*o,a]},{command:"L",values:[.5*o,n]},{command:"M",values:[s,.5*n]},{command:"L",values:[o,.5*n]}]},stroke:$(e)});break;case"x":r.push({shape:{type:"path",path:[{command:"M",values:[s,a]},{command:"L",values:[o,n]},{command:"M",values:[o,a]},{command:"L",values:[s,n]}]},stroke:$(e)});break;case"kite":r.push({shape:{type:"path",path:[{command:"M",values:[s,.5*n]},{command:"L",values:[.5*o,a]},{command:"L",values:[o,.5*n]},{command:"L",values:[.5*o,n]},{command:"Z",values:[]}]},fill:T(e,0),stroke:q(e)})}break}case"object":switch(e.resource&&e.resource.primitive||m){case"cone":{const a=G(T(e,0),T(e,-.6),s?E:t),o=j(t,s);r.push({shape:o[0],fill:a}),r.push({shape:o[1],fill:a});break}case"inverted-cone":{const s=T(e,0),a=G(s,T(e,-.6),t),o=M(t);r.push({shape:o[0],fill:a}),r.push({shape:o[1],fill:s});break}case"cube":{const a=x(t,s);r.push({shape:a[0],fill:T(e,0)}),r.push({shape:a[1],fill:T(e,-.3)}),r.push({shape:a[2],fill:T(e,-.5)});break}case"cylinder":{const a=G(T(e,0),T(e,-.6),s?E:t),o=w(t,s);r.push({shape:o[0],fill:a}),r.push({shape:o[1],fill:a}),r.push({shape:o[2],fill:T(e,0)});break}case"diamond":{const s=k(t);r.push({shape:s[0],fill:T(e,-.3)}),r.push({shape:s[1],fill:T(e,0)}),r.push({shape:s[2],fill:T(e,-.3)}),r.push({shape:s[3],fill:T(e,-.7)});break}case"sphere":{const s=G(T(e,0),T(e,-.6));s.x1=0,s.y1=0,s.x2=.25*t,s.y2=.25*t,r.push({shape:{type:"circle",cx:0,cy:0,r:.5*t},fill:s});break}case"tetrahedron":{const s=g(t);r.push({shape:s[0],fill:T(e,-.3)}),r.push({shape:s[1],fill:T(e,0)}),r.push({shape:s[2],fill:T(e,-.6)});break}}break}return r}function Q(e){return"icon"===e.type?"multiply":"tint"}function V(e,t){const s=t&&t.size?i(t.size):null,r=t&&t.maxSize?i(t.maxSize):null,a=t&&t.disableUpsampling,o=e.symbolLayers,n=[];let c=0,p=0;const u=o.getItemAt(o.length-1);let h;return u&&"icon"===u.type&&(h=u.size&&i(u.size)),o.forEach((o=>{if("icon"!==o.type&&"object"!==o.type)return;const l="icon"===o.type?o.size&&i(o.size):0,u=s||l?Math.ceil(Math.min(s||l,r||C)):O;if(o&&o.resource&&o.resource.href){const t=A(e,o).then((function(e){const t=o.get("material.color"),s=Q(o);return S(e,u,t,s,a)})).then((function(e){const t=e.width,s=e.height;return c=Math.max(c,t),p=Math.max(p,s),[{shape:{type:"image",x:0,y:0,width:t,height:s,src:e.url},fill:null,stroke:null}]}));n.push(t)}else{var m;let e=u;"icon"===o.type&&h&&s&&(e=u*(l/h));const r="tall"===(null==t?void 0:t.symbolConfig)||(null==t||null==(m=t.symbolConfig)?void 0:m.isTall)||"object"===o.type&&J(o);c=Math.max(c,r?E:e),p=Math.max(p,e),n.push(Promise.resolve(K(o,e,r)))}})),l(n).then((function(e){const s=[];return e.forEach((function(e){e.value?s.push(e.value):e.error&&Z.warn("error while building swatchInfo!",e.error)})),z(s,[c,p],{node:t&&t.node,scale:!1,opacity:t&&t.opacity})}))}function X(e,t){const s=e.symbolLayers,r=[],a=P(e),n=t&&t.size?i(t.size):null,l=(t&&t.maxSize?i(t.maxSize):null)||I;let c,p=0,u=0;return s.forEach(((e,t)=>{if(!e)return;if("line"!==e.type&&"path"!==e.type)return;const s=[];switch(e.type){case"line":{const r=F(e,0);if(o(r))break;const a=r&&r.width||0;0===t&&(c=a);const i=Math.min(n||a,l),h=0===t?i:n?i*(a/c):i,m=h>R/2?2*h:R;u=Math.max(u,h),p=Math.max(p,m),r.width=h,s.push({shape:{type:"path",path:[{command:"M",values:[0,.5*u]},{command:"L",values:[p,.5*u]}]},stroke:r});break}case"path":{const t=Math.min(n||O,l),r=T(e,0),a=T(e,-.2),o=B(e,-.4),i=o?{color:o,width:1}:{};if("quad"===e.profile){const t=e.width,o=e.height,n=d(t&&o?t/o:1,0===o,0===t),l={...i,join:"bevel"};s.push({shape:n[0],fill:a,stroke:l}),s.push({shape:n[1],fill:a,stroke:l}),s.push({shape:n[2],fill:r,stroke:l})}else s.push({shape:b.pathSymbol3DLayer[0],fill:a,stroke:i}),s.push({shape:b.pathSymbol3DLayer[1],fill:r,stroke:i});u=Math.max(u,t),p=u}}r.push(s)})),Promise.resolve(z(r,[p,u],{node:t&&t.node,scale:a,opacity:t&&t.opacity}))}async function Y(e,t){const s="mesh-3d"===e.type,r=e.symbolLayers,a=t&&t.size?i(t.size):null,l=t&&t.maxSize?i(t.maxSize):null,c=a||O,p=[];let u=0,h=0,m=!1;for(let i=0;i<r.length;i++){const e=r.getItemAt(i),t=[];if(s&&"fill"!==e.type)continue;const a=b.fill[0];switch(e.type){case"fill":{const r=q(e),o=Math.min(c,l||C);u=Math.max(u,o),h=Math.max(h,o),m=!0;let i=T(e,0);const p="pattern"in e&&e.pattern,f=N(e);!s&&n(p)&&"style"===p.type&&"solid"!==p.style&&f&&(i=await W(p,f)),t.push({shape:a,fill:i,stroke:r});break}case"line":{const s=F(e,0);if(o(s))break;const r={stroke:s,shape:a};u=Math.max(u,O),h=Math.max(h,O),t.push(r);break}case"extrude":{const s={join:"round",width:1,...F(e,-.4)},r=T(e,0),a=T(e,-.2),o=Math.min(c,l||C),n=v(o);s.width=1,t.push({shape:n[0],fill:a,stroke:s}),t.push({shape:n[1],fill:a,stroke:s}),t.push({shape:n[2],fill:r,stroke:s});const i=O,p=.7*O+.5*o;u=Math.max(u,i),h=Math.max(h,p);break}case"water":{const s=N(e),r=H(s),a=H(s,2),o=H(s,3),n=L();m=!0,t.push({shape:n[0],fill:r}),t.push({shape:n[1],fill:a}),t.push({shape:n[2],fill:o});const i=Math.min(c,l||C);u=Math.max(u,i),h=Math.max(h,i);break}}p.push(t)}return Promise.resolve(z(p,[u,h],{node:t&&t.node,scale:m,opacity:t&&t.opacity}))}function _(e,t){if(0===e.symbolLayers.length)return Promise.reject(new r("symbolPreview: renderPreviewHTML3D","No symbolLayers in the symbol."));switch(e.type){case"point-3d":return V(e,t);case"line-3d":return X(e,t);case"polygon-3d":case"mesh-3d":return Y(e,t)}return Promise.reject(new r("symbolPreview: swatchInfo3D","symbol not supported."))}export{W as getPatternDescriptor,T as getSymbolLayerFill,_ as previewSymbol3D};
5
+ import{getAssetUrl as e}from"../../assets.js";import{toHSV as t,toRGB as s}from"../../core/colorUtils.js";import"../../core/has.js";import r from"../../core/Error.js";import o from"../../core/Logger.js";import{isNone as n,isSome as a}from"../../core/maybe.js";import{eachAlways as l}from"../../core/promiseUtils.js";import{pt2px as i}from"../../core/screenUtils.js";import{defaultThematicColor as c,getPatternUrlWithColor as p,dekebabifyLineStyle as u}from"./gfxUtils.js";import{defaultPrimitive as h}from"./IconSymbol3DLayerResource.js";import{defaultPrimitive as m}from"./ObjectSymbol3DLayerResource.js";import{SymbolSizeDefaults as f,adjustColorComponentBrightness as y,getPathSymbolShapes as d,shapes as b,getExtrudeSymbolShapes as v,getTetrahedronShapes as g,getDiamondShapes as k,getCylinderShapes as w,getCubeShapes as x,getInvertedConeShapes as M,getConeShapes as j,getWaterSymbolShapes as L}from"./previewUtils.js";import{renderSymbol as z,tintImageWithColor as S}from"./renderUtils.js";import{isVolumetricSymbol as P,getIconHref as U}from"./utils.js";import{resolveWebStyleSymbol as D}from"./webStyleSymbolUtils.js";const O=f.size,C=f.maxSize,I=f.maxOutlineSize,R=f.lineWidth,E=f.tallSymbolWidth,Z=o.getLogger("esri.symbols.support.previewSymbol3D");function q(e){const t=e.outline,s=a(e.material)?e.material.color:null,r=a(s)?s.toHex():null;if(n(t)||"pattern"in t&&a(t.pattern)&&"style"===t.pattern.type&&"none"===t.pattern.style)return"fill"===e.type&&"#ffffff"===r?{color:"#bdc3c7",width:.75}:null;const o=i(t.size)||0;return{color:"rgba("+(a(t.color)?t.color.toRgba():"255,255,255,1")+")",width:Math.min(o,I),style:"pattern"in t&&a(t.pattern)&&"style"===t.pattern.type?u(t.pattern.style):null,join:"butt",cap:"patternCap"in t?t.patternCap:"butt"}}function A(t,s){const r=s&&s.resource,o=r&&r.href;if(t.thumbnail&&t.thumbnail.url)return Promise.resolve(t.thumbnail.url);if(o&&"object"!==s.type)return Promise.resolve(U(t,s));const n=e("esri/images/Legend/legend3dsymboldefault.png");return t.styleOrigin&&(t.styleOrigin.styleName||t.styleOrigin.styleUrl)?D(t.styleOrigin,{portal:t.styleOrigin.portal},"webRef").catch((e=>e)).then((e=>{var t;return(null==e||null==(t=e.thumbnail)?void 0:t.url)||n})):Promise.resolve(n)}function H(e,r=1){const o=e.a,n=t(e),a=n.h,l=n.s/r,i=100-(100-n.v)/r,{r:c,g:p,b:u}=s({h:a,s:l,v:i});return[c,p,u,o]}function N(e){return"water"===e.type?n(e.color)?null:e.color:n(e.material)||n(e.material.color)?null:e.material.color}function T(e,t=0){const s=N(e);if(!s){if("fill"===e.type)return null;const s=c.r,r=y(s,t);return[r,r,r,100]}const r=s.toRgba();for(let o=0;o<3;o++)r[o]=y(r[o],t);return r}async function W(t,s){const r=t.style;if("none"===r)return null;return{type:"pattern",x:0,y:0,src:await p(e(`esri/symbols/patterns/${r}.png`),s.toCss(!0)),width:5,height:5}}function $(e){return e.outline?q(e):{color:"rgba(0, 0, 0, 1)",width:1.5}}function B(e,t){const s=N(e);if(!s)return null;let r="rgba(";return r+=y(s.r,t)+",",r+=y(s.g,t)+",",r+=y(s.b,t)+",",r+s.a+");"}function F(e,t){const s=B(e,t);if(!s)return{};if("pattern"in e&&a(e.pattern)&&"style"===e.pattern.type&&"none"===e.pattern.style)return null;return{color:s,width:Math.min(e.size?i(e.size):.75,I),style:"pattern"in e&&a(e.pattern)&&"style"===e.pattern.type?u(e.pattern.style):null,cap:"cap"in e?e.cap:null,join:"join"in e?"miter"===e.join?i(2):e.join:null}}function G(e,t,s){const r=.75*s;return{type:"linear",x1:r?.25*r:0,y1:r?.5*r:0,x2:r||4,y2:r?.5*r:4,colors:[{color:e,offset:0},{color:t,offset:1}]}}function J(e){const t=e.depth,s=e.height,r=e.width;return r&&t&&s&&r===t&&r<s}function K(e,t,s){const r=[];if(!e)return r;switch(e.type){case"icon":{const s=0,o=0,n=t,a=t;switch(e.resource&&e.resource.primitive||h){case"circle":r.push({shape:{type:"circle",cx:0,cy:0,r:.5*t},fill:T(e,0),stroke:q(e)});break;case"square":r.push({shape:{type:"path",path:[{command:"M",values:[s,a]},{command:"L",values:[s,o]},{command:"L",values:[n,o]},{command:"L",values:[n,a]},{command:"Z",values:[]}]},fill:T(e,0),stroke:q(e)});break;case"triangle":r.push({shape:{type:"path",path:[{command:"M",values:[s,a]},{command:"L",values:[.5*n,o]},{command:"L",values:[n,a]},{command:"Z",values:[]}]},fill:T(e,0),stroke:q(e)});break;case"cross":r.push({shape:{type:"path",path:[{command:"M",values:[.5*n,o]},{command:"L",values:[.5*n,a]},{command:"M",values:[s,.5*a]},{command:"L",values:[n,.5*a]}]},stroke:$(e)});break;case"x":r.push({shape:{type:"path",path:[{command:"M",values:[s,o]},{command:"L",values:[n,a]},{command:"M",values:[n,o]},{command:"L",values:[s,a]}]},stroke:$(e)});break;case"kite":r.push({shape:{type:"path",path:[{command:"M",values:[s,.5*a]},{command:"L",values:[.5*n,o]},{command:"L",values:[n,.5*a]},{command:"L",values:[.5*n,a]},{command:"Z",values:[]}]},fill:T(e,0),stroke:q(e)})}break}case"object":switch(e.resource&&e.resource.primitive||m){case"cone":{const o=G(T(e,0),T(e,-.6),s?E:t),n=j(t,s);r.push({shape:n[0],fill:o}),r.push({shape:n[1],fill:o});break}case"inverted-cone":{const s=T(e,0),o=G(s,T(e,-.6),t),n=M(t);r.push({shape:n[0],fill:o}),r.push({shape:n[1],fill:s});break}case"cube":{const o=x(t,s);r.push({shape:o[0],fill:T(e,0)}),r.push({shape:o[1],fill:T(e,-.3)}),r.push({shape:o[2],fill:T(e,-.5)});break}case"cylinder":{const o=G(T(e,0),T(e,-.6),s?E:t),n=w(t,s);r.push({shape:n[0],fill:o}),r.push({shape:n[1],fill:o}),r.push({shape:n[2],fill:T(e,0)});break}case"diamond":{const s=k(t);r.push({shape:s[0],fill:T(e,-.3)}),r.push({shape:s[1],fill:T(e,0)}),r.push({shape:s[2],fill:T(e,-.3)}),r.push({shape:s[3],fill:T(e,-.7)});break}case"sphere":{const s=G(T(e,0),T(e,-.6));s.x1=0,s.y1=0,s.x2=.25*t,s.y2=.25*t,r.push({shape:{type:"circle",cx:0,cy:0,r:.5*t},fill:s});break}case"tetrahedron":{const s=g(t);r.push({shape:s[0],fill:T(e,-.3)}),r.push({shape:s[1],fill:T(e,0)}),r.push({shape:s[2],fill:T(e,-.6)});break}}break}return r}function Q(e){const t="number"==typeof(null==e?void 0:e.size)?null==e?void 0:e.size:null;return t?i(t):null}function V(e){return"icon"===e.type?"multiply":"tint"}function X(e,t){const s=Q(t),r=t&&t.maxSize?i(t.maxSize):null,o=t&&t.disableUpsampling,n=e.symbolLayers,a=[];let c=0,p=0;const u=n.getItemAt(n.length-1);let h;return u&&"icon"===u.type&&(h=u.size&&i(u.size)),n.forEach((n=>{if("icon"!==n.type&&"object"!==n.type)return;const l="icon"===n.type?n.size&&i(n.size):0,u=s||l?Math.ceil(Math.min(s||l,r||C)):O;if(n&&n.resource&&n.resource.href){const t=A(e,n).then((function(e){const t=n.get("material.color"),s=V(n);return S(e,u,t,s,o)})).then((function(e){const t=e.width,s=e.height;return c=Math.max(c,t),p=Math.max(p,s),[{shape:{type:"image",x:0,y:0,width:t,height:s,src:e.url},fill:null,stroke:null}]}));a.push(t)}else{var m;let e=u;"icon"===n.type&&h&&s&&(e=u*(l/h));const r="tall"===(null==t?void 0:t.symbolConfig)||(null==t||null==(m=t.symbolConfig)?void 0:m.isTall)||"object"===n.type&&J(n);c=Math.max(c,r?E:e),p=Math.max(p,e),a.push(Promise.resolve(K(n,e,r)))}})),l(a).then((function(e){const s=[];return e.forEach((function(e){e.value?s.push(e.value):e.error&&Z.warn("error while building swatchInfo!",e.error)})),z(s,[c,p],{node:t&&t.node,scale:!1,opacity:t&&t.opacity})}))}function Y(e,t){const s=e.symbolLayers,r=[],o=P(e),a=Q(t),l=(t&&t.maxSize?i(t.maxSize):null)||I;let c,p=0,u=0;return s.forEach(((e,t)=>{if(!e)return;if("line"!==e.type&&"path"!==e.type)return;const s=[];switch(e.type){case"line":{const r=F(e,0);if(n(r))break;const o=r&&r.width||0;0===t&&(c=o);const i=Math.min(a||o,l),h=0===t?i:a?i*(o/c):i,m=h>R/2?2*h:R;u=Math.max(u,h),p=Math.max(p,m),r.width=h,s.push({shape:{type:"path",path:[{command:"M",values:[0,.5*u]},{command:"L",values:[p,.5*u]}]},stroke:r});break}case"path":{const t=Math.min(a||O,l),r=T(e,0),o=T(e,-.2),n=B(e,-.4),i=n?{color:n,width:1}:{};if("quad"===e.profile){const t=e.width,n=e.height,a=d(t&&n?t/n:1,0===n,0===t),l={...i,join:"bevel"};s.push({shape:a[0],fill:o,stroke:l}),s.push({shape:a[1],fill:o,stroke:l}),s.push({shape:a[2],fill:r,stroke:l})}else s.push({shape:b.pathSymbol3DLayer[0],fill:o,stroke:i}),s.push({shape:b.pathSymbol3DLayer[1],fill:r,stroke:i});u=Math.max(u,t),p=u}}r.push(s)})),Promise.resolve(z(r,[p,u],{node:t&&t.node,scale:o,opacity:t&&t.opacity}))}async function _(e,t){const s="mesh-3d"===e.type,r=e.symbolLayers,o=Q(t),l=t&&t.maxSize?i(t.maxSize):null,c=o||O,p=[];let u=0,h=0,m=!1;for(let i=0;i<r.length;i++){const e=r.getItemAt(i),t=[];if(s&&"fill"!==e.type)continue;const o=b.fill[0];switch(e.type){case"fill":{const r=q(e),n=Math.min(c,l||C);u=Math.max(u,n),h=Math.max(h,n),m=!0;let i=T(e,0);const p="pattern"in e&&e.pattern,f=N(e);!s&&a(p)&&"style"===p.type&&"solid"!==p.style&&f&&(i=await W(p,f)),t.push({shape:o,fill:i,stroke:r});break}case"line":{const s=F(e,0);if(n(s))break;const r={stroke:s,shape:o};u=Math.max(u,O),h=Math.max(h,O),t.push(r);break}case"extrude":{const s={join:"round",width:1,...F(e,-.4)},r=T(e,0),o=T(e,-.2),n=Math.min(c,l||C),a=v(n);s.width=1,t.push({shape:a[0],fill:o,stroke:s}),t.push({shape:a[1],fill:o,stroke:s}),t.push({shape:a[2],fill:r,stroke:s});const i=O,p=.7*O+.5*n;u=Math.max(u,i),h=Math.max(h,p);break}case"water":{const s=N(e),r=H(s),o=H(s,2),n=H(s,3),a=L();m=!0,t.push({shape:a[0],fill:r}),t.push({shape:a[1],fill:o}),t.push({shape:a[2],fill:n});const i=Math.min(c,l||C);u=Math.max(u,i),h=Math.max(h,i);break}}p.push(t)}return Promise.resolve(z(p,[u,h],{node:t&&t.node,scale:m,opacity:t&&t.opacity}))}function ee(e,t){if(0===e.symbolLayers.length)return Promise.reject(new r("symbolPreview: renderPreviewHTML3D","No symbolLayers in the symbol."));switch(e.type){case"point-3d":return X(e,t);case"line-3d":return Y(e,t);case"polygon-3d":case"mesh-3d":return _(e,t)}return Promise.reject(new r("symbolPreview: swatchInfo3D","symbol not supported."))}export{W as getPatternDescriptor,Q as getSizeFromOptions,T as getSymbolLayerFill,ee as previewSymbol3D};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import t from"../../request.js";import{pt2px as e}from"../../core/screenUtils.js";import{SymbolSizeDefaults as i}from"./previewUtils.js";function n(e,i,n){const s=e.thumbnail&&e.thumbnail.url;return s?t(s,{responseType:"image"}).then((t=>{const e=h(t.data,n);return n&&n.node?(n.node.appendChild(e),n.node):e})):e.fetchSymbol().then((t=>i(t,n)))}function h(t,n){const h=!/\\.svg$/i.test(t.src)&&n&&n.disableUpsampling,s=Math.max(t.width,t.height);let o=n&&null!=n.maxSize?e(n.maxSize):i.maxSize;h&&(o=Math.min(s,o));const r=Math.min(o,n&&null!=n.size?e(n.size):s);if(r!==s){const e=0!==t.width&&0!==t.height?t.width/t.height:1;e>=1?(t.width=r,t.height=r/e):(t.width=r*e,t.height=r)}return t}export{n as previewWebStyleSymbol};
5
+ import t from"../../request.js";import{pt2px as e}from"../../core/screenUtils.js";import{SymbolSizeDefaults as i}from"./previewUtils.js";function n(e,i,n){const o=e.thumbnail&&e.thumbnail.url;return o?t(o,{responseType:"image"}).then((t=>{const e=h(t.data,n);return n&&n.node?(n.node.appendChild(e),n.node):e})):e.fetchSymbol().then((t=>i(t,n)))}function h(t,n){const h=!/\\.svg$/i.test(t.src)&&n&&n.disableUpsampling,o=Math.max(t.width,t.height);let r=n&&null!=n.maxSize?e(n.maxSize):i.maxSize;h&&(r=Math.min(o,r));const s="number"==typeof(null==n?void 0:n.size)?null==n?void 0:n.size:null,l=Math.min(r,null!=s?e(s):o);if(l!==o){const e=0!==t.width&&0!==t.height?t.width/t.height:1;e>=1?(t.width=l,t.height=l/e):(t.width=l*e,t.height=l)}return t}export{n as previewWebStyleSymbol};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import t from"../../Color.js";import e from"../../core/has.js";import{c as i}from"../../chunks/mat2df32.js";import{m as r,t as o,c as n,s,r as l}from"../../chunks/mat2d.js";import"../../widgets/support/widgetUtils.js";import"../../core/Logger.js";import{tsx as a}from"../../widgets/support/jsxFactory.js";const h="http://www.w3.org/2000/svg";let c=0,f=0;const d=e("android"),u=e("chrome")||d&&d>=4?"auto":"optimizeLegibility",y={m:2,l:2,h:1,v:1,c:6,s:4,q:4,t:2,a:7,z:0},p=/([A-DF-Za-df-z])|([-+]?\d*[.]?\d+(?:[eE][-+]?\d+)?)/g;let g={},x={};const m={solid:"none",shortdash:[4,1],shortdot:[1,1],shortdashdot:[4,1,1,1],shortdashdotdot:[4,1,1,1,1,1],dot:[1,3],dash:[4,3],longdash:[8,3],dashdot:[4,3,1,3],longdashdot:[8,3,1,3],longdashdotdot:[8,3,1,3,1,3]},w=Math.PI;let k=1;function b(t,e){const i=t*(w/180);return Math.abs(e*Math.sin(i))+Math.abs(e*Math.cos(i))}function v(t){return t.map((t=>`${t.command} ${t.values.join(" ")}`)).join(" ").trim()}function j(t,e,i,r){if(t){if("circle"===t.type)return a("circle",{fill:e,"fill-rule":"evenodd",stroke:i.color,"stroke-width":i.width,"stroke-linecap":i.cap,"stroke-linejoin":i.join,"stroke-dasharray":i.dashArray,"stroke-miterlimit":"4",cx:t.cx,cy:t.cy,r:t.r});if("ellipse"===t.type)return a("ellipse",{fill:e,"fill-rule":"evenodd",stroke:i.color,"stroke-width":i.width,"stroke-linecap":i.cap,"stroke-linejoin":i.join,"stroke-dasharray":i.dashArray,"stroke-miterlimit":"4",cx:t.cx,cy:t.cy,rx:t.rx,ry:t.ry});if("rect"===t.type)return a("rect",{fill:e,"fill-rule":"evenodd",stroke:i.color,"stroke-width":i.width,"stroke-linecap":i.cap,"stroke-linejoin":i.join,"stroke-dasharray":i.dashArray,"stroke-miterlimit":"4",x:t.x,y:t.y,width:t.width,height:t.height});if("image"===t.type)return a("image",{href:t.src,x:t.x,y:t.y,width:t.width,height:t.height,preserveAspectRatio:"none"});if("path"===t.type){const r="string"!=typeof t.path?v(t.path):t.path;return a("path",{fill:e,"fill-rule":"evenodd",stroke:i.color,"stroke-width":i.width,"stroke-linecap":i.cap,"stroke-linejoin":i.join,"stroke-dasharray":i.dashArray,"stroke-miterlimit":"4",d:r})}if("text"===t.type)return a("text",{fill:e,"fill-rule":"evenodd",stroke:i.color,"stroke-width":i.width,"stroke-linecap":i.cap,"stroke-linejoin":i.join,"stroke-dasharray":i.dashArray,"stroke-miterlimit":"4","text-anchor":r.align,"text-decoration":r.decoration,kerning:r.kerning,rotate:r.rotate,"text-rendering":u,"font-style":r.font.style,"font-variant":r.font.variant,"font-weight":r.font.weight,"font-size":r.font.size,"font-family":r.font.family,x:t.x,y:t.y},t.text)}return null}function M(e){const i={fill:"none",pattern:null,linearGradient:null};if(e)if("type"in e&&"pattern"===e.type){const t="patternId-"+ ++c;i.fill=`url(#${t})`,i.pattern={id:t,x:e.x,y:e.y,width:e.width,height:e.height,image:{x:0,y:0,width:e.width,height:e.height,href:e.src}}}else if("type"in e&&"linear"===e.type){const r="linearGradientId-"+ ++f;i.fill=`url(#${r})`,i.linearGradient={id:r,x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2,stops:e.colors.map((e=>({offset:e.offset,color:e.color&&new t(e.color).toString()})))}}else if(e){const r=new t(e);i.fill=r.toString()}return i}function A(e){const i={color:"none",width:1,cap:"butt",join:"4",dashArray:"none"};if(e&&(null!=e.width&&(i.width=e.width),e.cap&&(i.cap=e.cap),e.join&&(i.join=e.join.toString()),e.color&&(i.color=new t(e.color).toString()),e.style)){let t=null;if(e.style in m&&(t=m[e.style]),Array.isArray(t)){t=t.slice(0);for(let i=0;i<t.length;++i)t[i]*=e.width;if("butt"!==e.cap){for(let i=0;i<t.length;i+=2)t[i]-=e.width,t[i]<1&&(t[i]=1);for(let i=1;i<t.length;i+=2)t[i]+=e.width}t=t.join(",")}i.dashArray=t}return i}function N(t,e){const i={align:null,decoration:null,kerning:null,rotate:null,font:{style:null,variant:null,weight:null,size:null,family:null}};return t&&(i.align=t.align,i.decoration=t.decoration,i.kerning=t.kerning?"auto":"0",i.rotate=t.rotated?"90":"0",i.font.style=e.style||"normal",i.font.variant=e.variant||"normal",i.font.weight=e.weight||"normal",i.font.size=e.size&&e.size.toString()||"10pt",i.font.family=e.family||"serif"),i}function G(t){const{pattern:e,linearGradient:i}=t;if(e)return a("pattern",{id:e.id,patternUnits:"userSpaceOnUse",x:e.x,y:e.y,width:e.width,height:e.height},a("image",{x:e.image.x,y:e.image.y,width:e.image.width,height:e.image.height,href:e.image.href}));if(i){const t=i.stops.map(((t,e)=>a("stop",{key:`${e}-stop`,offset:t.offset,"stop-color":t.color})));return a("linearGradient",{id:i.id,gradientUnits:"userSpaceOnUse",x1:i.x1,y1:i.y1,x2:i.x2,y2:i.y2},t)}return null}function S(t,e,i){return o(t,n(t),[e,i])}function $(t,e,i,r,o){return s(t,n(t),[e,i]),t[4]=t[4]*e-r*e+r,t[5]=t[5]*i-o*i+o,t}function I(t,e,i,r){const o=e%360*Math.PI/180;l(t,n(t),o);const s=Math.cos(o),a=Math.sin(o),h=t[4],c=t[5];return t[4]=h*s-c*a+r*a-i*s+i,t[5]=c*s+h*a-i*a-r*s+r,t}function z(t,e){g&&"left"in g?(g.left>t&&(g.left=t),g.right<t&&(g.right=t),g.top>e&&(g.top=e),g.bottom<e&&(g.bottom=e)):g={left:t,bottom:e,right:t,top:e}}function B(t){const e=t.args,i=e.length;let r;switch(t.action){case"M":case"L":case"C":case"S":case"Q":case"T":for(r=0;r<i;r+=2)z(e[r],e[r+1]);x.x=e[i-2],x.y=e[i-1];break;case"H":for(r=0;r<i;++r)z(e[r],x.y);x.x=e[i-1];break;case"V":for(r=0;r<i;++r)z(x.x,e[r]);x.y=e[i-1];break;case"m":{let t=0;"x"in x||(z(x.x=e[0],x.y=e[1]),t=2);for(r=t;r<i;r+=2)z(x.x+=e[r],x.y+=e[r+1]);break}case"l":case"t":for(r=0;r<i;r+=2)z(x.x+=e[r],x.y+=e[r+1]);break;case"h":for(r=0;r<i;++r)z(x.x+=e[r],x.y);break;case"v":for(r=0;r<i;++r)z(x.x,x.y+=e[r]);break;case"c":for(r=0;r<i;r+=6)z(x.x+e[r],x.y+e[r+1]),z(x.x+e[r+2],x.y+e[r+3]),z(x.x+=e[r+4],x.y+=e[r+5]);break;case"s":case"q":for(r=0;r<i;r+=4)z(x.x+e[r],x.y+e[r+1]),z(x.x+=e[r+2],x.y+=e[r+3]);break;case"A":for(r=0;r<i;r+=7)z(e[r+5],e[r+6]);x.x=e[i-2],x.y=e[i-1];break;case"a":for(r=0;r<i;r+=7)z(x.x+=e[r+5],x.y+=e[r+6])}}function F(t,e,i){const r=y[t.toLowerCase()];let o;"number"==typeof r&&(r?e.length>=r&&(o={action:t,args:e.slice(0,e.length-e.length%r)},i.push(o),B(o)):(o={action:t,args:[]},i.push(o),B(o)))}function U(t){const e=("string"!=typeof t.path?v(t.path):t.path).match(p),i=[];if(g={},x={},!e)return null;let r="",o=[];const n=e.length;for(let l=0;l<n;++l){const t=e[l],n=parseFloat(t);isNaN(n)?(r&&F(r,o,i),o=[],r=t):o.push(n)}F(r,o,i);const s={x:0,y:0,width:0,height:0};return g&&"left"in g&&(s.x=g.left,s.y=g.top,s.width=g.right-g.left,s.height=g.bottom-g.top),s}function T(t){const e={x:0,y:0,width:0,height:0};if("circle"===t.type)e.x=t.cx-t.r,e.y=t.cy-t.r,e.width=2*t.r,e.height=2*t.r;else if("ellipse"===t.type)e.x=t.cx-t.rx,e.y=t.cy-t.ry,e.width=2*t.rx,e.height=2*t.ry;else if("image"===t.type||"rect"===t.type)e.x=t.x,e.y=t.y,e.width=t.width,e.height=t.height;else if("path"===t.type){const i=U(t);e.x=i.x,e.y=i.y,e.width=i.width,e.height=i.height}return e}function E(t){const e={x:0,y:0,width:0,height:0};let i=null,r=Number.NEGATIVE_INFINITY,o=Number.NEGATIVE_INFINITY;for(const n of t)i?(i.x=Math.min(i.x,n.x),i.y=Math.min(i.y,n.y),r=Math.max(r,n.x+n.width),o=Math.max(o,n.y+n.height)):(i=e,i.x=n.x,i.y=n.y,r=n.x+n.width,o=n.y+n.height);return i&&(i.width=r-i.x,i.height=o-i.y),i}function V(t,e,o,n,s,l,a,h,c){let f=(a&&l?b(l,e):e)/2,d=(a&&l?b(l,o):o)/2;if(c){const t=c[0],e=c[1];f=(a&&l?b(l,t):t)/2,d=(a&&l?b(l,e):e)/2}const u=t.width+n,y=t.height+n,p=i(),g=i();let x=!1;if(s&&0!==u&&0!==y){const t=u/y,i=e>o?e:o;let n=1,s=1;isNaN(i)||(t>1?(n=i/u,s=i/t/y):(s=i/y,n=i*t/u)),r(g,g,$(p,n,s,f,d)),x=!0}const m=t.x+(u-n)/2,w=t.y+(y-n)/2;if(r(g,g,S(p,f-m,d-w)),!x&&(u>e||y>o)){const t=u/e>y/o,i=(t?e:o)/(t?u:y);r(g,g,$(p,i,i,m,w))}return l&&r(g,g,I(p,l,m,w)),h&&r(g,g,S(p,h[0],h[1])),`matrix(${g[0]},${g[1]},${g[2]},${g[3]},${g[4]},${g[5]})`}function C(t,e,i){const r=null==t?void 0:t.effects.find((t=>"bloom"===t.type));if(!r)return null;const{strength:o,radius:n}=r,s=o>0?n:0,l=(o+s)*e,h=4*o+1;return a("filter",{id:`bloom${i}`,x:"-100%",y:"-100%",width:"300%",height:"300%",filterUnits:"userSpaceOnUse"},a("feMorphology",{operator:"dilate",radius:(o+.5*s)*(5**(e/100)*(.4+e/100)),in:"SourceGraphic",result:"dilate"}),a("feGaussianBlur",{in:"dilate",stdDeviation:l/25,result:"blur"}),a("feGaussianBlur",{in:"blur",stdDeviation:l/50,result:"intensityBlur"}),a("feComponentTransfer",{in:"SourceGraphic",result:"intensityBrightness"},a("feFuncR",{type:"linear",slope:h}),a("feFuncG",{type:"linear",slope:h}),a("feFuncB",{type:"linear",slope:h})),a("feMerge",null,a("feMergeNode",{in:"intensityBlur"}),a("feMergeNode",{in:"intensityBrightness"}),a("feGaussianBlur",{stdDeviation:o/10})))}function D(t,e,i,r){const o=[],n=[],s=++k,l=C(null==r?void 0:r.effectView,e,s);let c=null;if(l){var f;const t=null==r||null==(f=r.effectView)?void 0:f.effects.find((t=>"bloom"===t.type)),o=(t.strength?t.strength+t.radius/2:0)/3,n=e+e*o,s=i+i*o;c=[Math.max(n,10),Math.max(s,10)]}for(const h of t){const t=[],s=[];let l=0,f=0,d=0;for(const e of h){const{shape:i,fill:r,stroke:n,font:a,offset:h}=e;l+=n&&n.width||0;const c=M(r),u=A(n),y="text"===i.type?N(i,a):null;o.push(G(c)),t.push(j(i,c.fill,u,y)),s.push(T(i)),h&&(f+=h[0],d+=h[1])}const u=V(E(s),e,i,l,null==r?void 0:r.scale,null==r?void 0:r.rotation,null==r?void 0:r.useRotationSize,[f,d],c);n.push(a("g",{transform:u},t))}return null!=r&&r.useRotationSize&&null!=r&&r.rotation&&(e=b(null==r?void 0:r.rotation,e),i=b(null==r?void 0:r.rotation,i)),l&&(e=c[0],i=c[1]),a("svg",{xmlns:h,width:e,height:i},l,a("defs",null,o),l?a("g",{filter:`url(#bloom${s})`},n):n)}export{E as computeBBox,M as generateFillAttributes,A as generateStrokeAttributes,N as generateTextAttributes,T as getBoundingBox,V as getTransformMatrix,G as renderDef,D as renderSVG,j as renderShape};
5
+ import t from"../../Color.js";import e from"../../core/has.js";import{c as i}from"../../chunks/mat2df32.js";import{m as r,t as o,c as n,s,r as l}from"../../chunks/mat2d.js";import"../../widgets/support/widgetUtils.js";import"../../core/Logger.js";import{tsx as a}from"../../widgets/support/jsxFactory.js";const h="http://www.w3.org/2000/svg";let c=0,f=0;const d=e("android"),u=e("chrome")||d&&d>=4?"auto":"optimizeLegibility",y={m:2,l:2,h:1,v:1,c:6,s:4,q:4,t:2,a:7,z:0},p=/([A-DF-Za-df-z])|([-+]?\d*[.]?\d+(?:[eE][-+]?\d+)?)/g;let g={},x={};const m={solid:"none",shortdash:[4,1],shortdot:[1,1],shortdashdot:[4,1,1,1],shortdashdotdot:[4,1,1,1,1,1],dot:[1,3],dash:[4,3],longdash:[8,3],dashdot:[4,3,1,3],longdashdot:[8,3,1,3],longdashdotdot:[8,3,1,3,1,3]},w=Math.PI;let k=1;function b(t,e){const i=t*(w/180);return Math.abs(e*Math.sin(i))+Math.abs(e*Math.cos(i))}function v(t){return t.map((t=>`${t.command} ${t.values.join(" ")}`)).join(" ").trim()}function j(t,e,i,r){if(t){if("circle"===t.type)return a("circle",{fill:e,"fill-rule":"evenodd",stroke:i.color,"stroke-width":i.width,"stroke-linecap":i.cap,"stroke-linejoin":i.join,"stroke-dasharray":i.dashArray,"stroke-miterlimit":"4",cx:t.cx,cy:t.cy,r:t.r});if("ellipse"===t.type)return a("ellipse",{fill:e,"fill-rule":"evenodd",stroke:i.color,"stroke-width":i.width,"stroke-linecap":i.cap,"stroke-linejoin":i.join,"stroke-dasharray":i.dashArray,"stroke-miterlimit":"4",cx:t.cx,cy:t.cy,rx:t.rx,ry:t.ry});if("rect"===t.type)return a("rect",{fill:e,"fill-rule":"evenodd",stroke:i.color,"stroke-width":i.width,"stroke-linecap":i.cap,"stroke-linejoin":i.join,"stroke-dasharray":i.dashArray,"stroke-miterlimit":"4",x:t.x,y:t.y,width:t.width,height:t.height});if("image"===t.type)return a("image",{href:t.src,x:t.x,y:t.y,width:t.width,height:t.height,preserveAspectRatio:"none"});if("path"===t.type){const r="string"!=typeof t.path?v(t.path):t.path;return a("path",{fill:e,"fill-rule":"evenodd",stroke:i.color,"stroke-width":i.width,"stroke-linecap":i.cap,"stroke-linejoin":i.join,"stroke-dasharray":i.dashArray,"stroke-miterlimit":"4",d:r})}if("text"===t.type)return a("text",{fill:e,"fill-rule":"evenodd",stroke:i.color,"stroke-width":i.width,"stroke-linecap":i.cap,"stroke-linejoin":i.join,"stroke-dasharray":i.dashArray,"stroke-miterlimit":"4","text-anchor":r.align,"text-decoration":r.decoration,kerning:r.kerning,rotate:r.rotate,"text-rendering":u,"font-style":r.font.style,"font-variant":r.font.variant,"font-weight":r.font.weight,"font-size":r.font.size,"font-family":r.font.family,x:t.x,y:t.y},t.text)}return null}function M(e){const i={fill:"none",pattern:null,linearGradient:null};if(e)if("type"in e&&"pattern"===e.type){const t="patternId-"+ ++c;i.fill=`url(#${t})`,i.pattern={id:t,x:e.x,y:e.y,width:e.width,height:e.height,image:{x:0,y:0,width:e.width,height:e.height,href:e.src}}}else if("type"in e&&"linear"===e.type){const r="linearGradientId-"+ ++f;i.fill=`url(#${r})`,i.linearGradient={id:r,x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2,stops:e.colors.map((e=>({offset:e.offset,color:e.color&&new t(e.color).toString()})))}}else if(e){const r=new t(e);i.fill=r.toString()}return i}function A(e){const i={color:"none",width:1,cap:"butt",join:"4",dashArray:"none"};if(e&&(null!=e.width&&(i.width=e.width),e.cap&&(i.cap=e.cap),e.join&&(i.join=e.join.toString()),e.color&&(i.color=new t(e.color).toString()),e.style)){let t=null;if(e.style in m&&(t=m[e.style]),Array.isArray(t)){t=t.slice(0);for(let i=0;i<t.length;++i)t[i]*=e.width;if("butt"!==e.cap){for(let i=0;i<t.length;i+=2)t[i]-=e.width,t[i]<1&&(t[i]=1);for(let i=1;i<t.length;i+=2)t[i]+=e.width}t=t.join(",")}i.dashArray=t}return i}function N(t,e){const i={align:null,decoration:null,kerning:null,rotate:null,font:{style:null,variant:null,weight:null,size:null,family:null}};return t&&(i.align=t.align,i.decoration=t.decoration,i.kerning=t.kerning?"auto":"0",i.rotate=t.rotated?"90":"0",i.font.style=e.style||"normal",i.font.variant=e.variant||"normal",i.font.weight=e.weight||"normal",i.font.size=e.size&&e.size.toString()||"10pt",i.font.family=e.family||"serif"),i}function G(t){const{pattern:e,linearGradient:i}=t;if(e)return a("pattern",{id:e.id,patternUnits:"userSpaceOnUse",x:e.x,y:e.y,width:e.width,height:e.height},a("image",{x:e.image.x,y:e.image.y,width:e.image.width,height:e.image.height,href:e.image.href}));if(i){const t=i.stops.map(((t,e)=>a("stop",{key:`${e}-stop`,offset:t.offset,"stop-color":t.color})));return a("linearGradient",{id:i.id,gradientUnits:"userSpaceOnUse",x1:i.x1,y1:i.y1,x2:i.x2,y2:i.y2},t)}return null}function S(t,e,i){return o(t,n(t),[e,i])}function $(t,e,i,r,o){return s(t,n(t),[e,i]),t[4]=t[4]*e-r*e+r,t[5]=t[5]*i-o*i+o,t}function I(t,e,i,r){const o=e%360*Math.PI/180;l(t,n(t),o);const s=Math.cos(o),a=Math.sin(o),h=t[4],c=t[5];return t[4]=h*s-c*a+r*a-i*s+i,t[5]=c*s+h*a-i*a-r*s+r,t}function z(t,e){g&&"left"in g?(g.left>t&&(g.left=t),g.right<t&&(g.right=t),g.top>e&&(g.top=e),g.bottom<e&&(g.bottom=e)):g={left:t,bottom:e,right:t,top:e}}function B(t){const e=t.args,i=e.length;let r;switch(t.action){case"M":case"L":case"C":case"S":case"Q":case"T":for(r=0;r<i;r+=2)z(e[r],e[r+1]);x.x=e[i-2],x.y=e[i-1];break;case"H":for(r=0;r<i;++r)z(e[r],x.y);x.x=e[i-1];break;case"V":for(r=0;r<i;++r)z(x.x,e[r]);x.y=e[i-1];break;case"m":{let t=0;"x"in x||(z(x.x=e[0],x.y=e[1]),t=2);for(r=t;r<i;r+=2)z(x.x+=e[r],x.y+=e[r+1]);break}case"l":case"t":for(r=0;r<i;r+=2)z(x.x+=e[r],x.y+=e[r+1]);break;case"h":for(r=0;r<i;++r)z(x.x+=e[r],x.y);break;case"v":for(r=0;r<i;++r)z(x.x,x.y+=e[r]);break;case"c":for(r=0;r<i;r+=6)z(x.x+e[r],x.y+e[r+1]),z(x.x+e[r+2],x.y+e[r+3]),z(x.x+=e[r+4],x.y+=e[r+5]);break;case"s":case"q":for(r=0;r<i;r+=4)z(x.x+e[r],x.y+e[r+1]),z(x.x+=e[r+2],x.y+=e[r+3]);break;case"A":for(r=0;r<i;r+=7)z(e[r+5],e[r+6]);x.x=e[i-2],x.y=e[i-1];break;case"a":for(r=0;r<i;r+=7)z(x.x+=e[r+5],x.y+=e[r+6])}}function F(t,e,i){const r=y[t.toLowerCase()];let o;"number"==typeof r&&(r?e.length>=r&&(o={action:t,args:e.slice(0,e.length-e.length%r)},i.push(o),B(o)):(o={action:t,args:[]},i.push(o),B(o)))}function U(t){const e=("string"!=typeof t.path?v(t.path):t.path).match(p),i=[];if(g={},x={},!e)return null;let r="",o=[];const n=e.length;for(let l=0;l<n;++l){const t=e[l],n=parseFloat(t);isNaN(n)?(r&&F(r,o,i),o=[],r=t):o.push(n)}F(r,o,i);const s={x:0,y:0,width:0,height:0};return g&&"left"in g&&(s.x=g.left,s.y=g.top,s.width=g.right-g.left,s.height=g.bottom-g.top),s}function T(t){const e={x:0,y:0,width:0,height:0};if("circle"===t.type)e.x=t.cx-t.r,e.y=t.cy-t.r,e.width=2*t.r,e.height=2*t.r;else if("ellipse"===t.type)e.x=t.cx-t.rx,e.y=t.cy-t.ry,e.width=2*t.rx,e.height=2*t.ry;else if("image"===t.type||"rect"===t.type)e.x=t.x,e.y=t.y,e.width=t.width,e.height=t.height;else if("path"===t.type){const i=U(t);e.x=i.x,e.y=i.y,e.width=i.width,e.height=i.height}return e}function E(t){const e={x:0,y:0,width:0,height:0};let i=null,r=Number.NEGATIVE_INFINITY,o=Number.NEGATIVE_INFINITY;for(const n of t)i?(i.x=Math.min(i.x,n.x),i.y=Math.min(i.y,n.y),r=Math.max(r,n.x+n.width),o=Math.max(o,n.y+n.height)):(i=e,i.x=n.x,i.y=n.y,r=n.x+n.width,o=n.y+n.height);return i&&(i.width=r-i.x,i.height=o-i.y),i}function V(t,e,o,n,s,l,a,h,c){let f=(a&&l?b(l,e):e)/2,d=(a&&l?b(l,o):o)/2;if(c){const t=c[0],e=c[1];f=(a&&l?b(l,t):t)/2,d=(a&&l?b(l,e):e)/2}const u=t.width+n,y=t.height+n,p=i(),g=i();let x=!1;if(s&&0!==u&&0!==y){const t=e!==o?e/o:u/y,i=e>o?e:o;let n=1,s=1;isNaN(i)||(t>1?(n=i/u,s=i/t/y):(s=i/y,n=i*t/u)),r(g,g,$(p,n,s,f,d)),x=!0}const m=t.x+(u-n)/2,w=t.y+(y-n)/2;if(r(g,g,S(p,f-m,d-w)),!x&&(u>e||y>o)){const t=u/e>y/o,i=(t?e:o)/(t?u:y);r(g,g,$(p,i,i,m,w))}return l&&r(g,g,I(p,l,m,w)),h&&r(g,g,S(p,h[0],h[1])),`matrix(${g[0]},${g[1]},${g[2]},${g[3]},${g[4]},${g[5]})`}function C(t,e,i){const r=null==t?void 0:t.effects.find((t=>"bloom"===t.type));if(!r)return null;const{strength:o,radius:n}=r,s=o>0?n:0,l=(o+s)*e,h=4*o+1;return a("filter",{id:`bloom${i}`,x:"-100%",y:"-100%",width:"300%",height:"300%",filterUnits:"userSpaceOnUse"},a("feMorphology",{operator:"dilate",radius:(o+.5*s)*(5**(e/100)*(.4+e/100)),in:"SourceGraphic",result:"dilate"}),a("feGaussianBlur",{in:"dilate",stdDeviation:l/25,result:"blur"}),a("feGaussianBlur",{in:"blur",stdDeviation:l/50,result:"intensityBlur"}),a("feComponentTransfer",{in:"SourceGraphic",result:"intensityBrightness"},a("feFuncR",{type:"linear",slope:h}),a("feFuncG",{type:"linear",slope:h}),a("feFuncB",{type:"linear",slope:h})),a("feMerge",null,a("feMergeNode",{in:"intensityBlur"}),a("feMergeNode",{in:"intensityBrightness"}),a("feGaussianBlur",{stdDeviation:o/10})))}function D(t,e,i,r){const o=[],n=[],s=++k,l=C(null==r?void 0:r.effectView,e,s);let c=null;if(l){var f;const t=null==r||null==(f=r.effectView)?void 0:f.effects.find((t=>"bloom"===t.type)),o=(t.strength?t.strength+t.radius/2:0)/3,n=e+e*o,s=i+i*o;c=[Math.max(n,10),Math.max(s,10)]}for(const h of t){const t=[],s=[];let l=0,f=0,d=0;for(const e of h){const{shape:i,fill:r,stroke:n,font:a,offset:h}=e;l+=n&&n.width||0;const c=M(r),u=A(n),y="text"===i.type?N(i,a):null;o.push(G(c)),t.push(j(i,c.fill,u,y)),s.push(T(i)),h&&(f+=h[0],d+=h[1])}const u=V(E(s),e,i,l,null==r?void 0:r.scale,null==r?void 0:r.rotation,null==r?void 0:r.useRotationSize,[f,d],c);n.push(a("g",{transform:u},t))}return null!=r&&r.useRotationSize&&null!=r&&r.rotation&&(e=b(null==r?void 0:r.rotation,e),i=b(null==r?void 0:r.rotation,i)),l&&(e=c[0],i=c[1]),a("svg",{xmlns:h,width:e,height:i},l,a("defs",null,o),l?a("g",{filter:`url(#bloom${s})`},n):n)}export{E as computeBBox,M as generateFillAttributes,A as generateStrokeAttributes,N as generateTextAttributes,T as getBoundingBox,V as getTransformMatrix,G as renderDef,D as renderSVG,j as renderShape};
@@ -0,0 +1,5 @@
1
+ /*
2
+ All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
+ */
5
+ import{clamp as o}from"../../core/mathUtils.js";import{ensureNumber as r}from"../../core/accessorSupport/ensureType.js";const e=["none","underline","line-through"],t=["normal","italic","oblique"],l=["normal","lighter","bold","bolder"],n={type:Number,cast:e=>{const t=r(e);return 0===t?1:o(t,.1,4)},nonNullable:!0};export{e as FONT_DECORATIONS,t as FONT_STYLES,l as FONT_WEIGHTS,n as lineHeightProperty};
package/symbols.js CHANGED
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{ensureOneOfType as e}from"./core/accessorSupport/ensureType.js";import{createTypeReader as o}from"./core/accessorSupport/extensions/serializableProperty/reader.js";import l from"./symbols/CIMSymbol.js";export{default as CIMSymbol}from"./symbols/CIMSymbol.js";export{default as ExtrudeSymbol3DLayer}from"./symbols/ExtrudeSymbol3DLayer.js";export{default as BaseFillSymbol}from"./symbols/FillSymbol.js";export{default as FillSymbol3DLayer}from"./symbols/FillSymbol3DLayer.js";export{default as Font}from"./symbols/Font.js";export{default as IconSymbol3DLayer}from"./symbols/IconSymbol3DLayer.js";import s from"./symbols/LabelSymbol3D.js";export{default as LabelSymbol3D}from"./symbols/LabelSymbol3D.js";import m from"./symbols/LineSymbol3D.js";export{default as LineSymbol3D}from"./symbols/LineSymbol3D.js";export{default as LineSymbol3DLayer}from"./symbols/LineSymbol3DLayer.js";export{default as BaseMarkerSymbol}from"./symbols/MarkerSymbol.js";import r from"./symbols/MeshSymbol3D.js";export{default as MeshSymbol3D}from"./symbols/MeshSymbol3D.js";export{default as ObjectSymbol3DLayer}from"./symbols/ObjectSymbol3DLayer.js";export{default as PathSymbol3DLayer}from"./symbols/PathSymbol3DLayer.js";import t from"./symbols/PictureFillSymbol.js";export{default as PictureFillSymbol}from"./symbols/PictureFillSymbol.js";import y from"./symbols/PictureMarkerSymbol.js";export{default as PictureMarkerSymbol}from"./symbols/PictureMarkerSymbol.js";import a from"./symbols/PointSymbol3D.js";export{default as PointSymbol3D}from"./symbols/PointSymbol3D.js";import b from"./symbols/PolygonSymbol3D.js";export{default as PolygonSymbol3D}from"./symbols/PolygonSymbol3D.js";import p from"./symbols/SimpleFillSymbol.js";export{default as SimpleFillSymbol}from"./symbols/SimpleFillSymbol.js";import i from"./symbols/SimpleLineSymbol.js";export{default as SimpleLineSymbol}from"./symbols/SimpleLineSymbol.js";import f from"./symbols/SimpleMarkerSymbol.js";export{default as SimpleMarkerSymbol}from"./symbols/SimpleMarkerSymbol.js";import S from"./symbols/Symbol.js";export{default as BaseSymbol}from"./symbols/Symbol.js";export{default as BaseSymbol3D}from"./symbols/Symbol3D.js";export{default as BaseSymbol3DLayer}from"./symbols/Symbol3DLayer.js";import n from"./symbols/TextSymbol.js";export{default as TextSymbol}from"./symbols/TextSymbol.js";export{default as TextSymbol3DLayer}from"./symbols/TextSymbol3DLayer.js";export{default as WaterSymbol3DLayer}from"./symbols/WaterSymbol3DLayer.js";import u from"./symbols/WebStyleSymbol.js";export{default as WebStyleSymbol}from"./symbols/WebStyleSymbol.js";export{default as LineCallout3D}from"./symbols/callouts/LineCallout3D.js";export{L as LineCallout3DBorder}from"./chunks/LineCallout3DBorder.js";export{Symbol3DVerticalOffset}from"./symbols/support/Symbol3DVerticalOffset.js";function d(e){return e instanceof S}function c(e){if(!e)return!1;switch(e.type){case"picture-fill":case"picture-marker":case"simple-fill":case"simple-line":case"simple-marker":case"text":case"cim":return!0;default:return!1}}function x(e){if(!e)return!1;switch(e.type){case"label-3d":case"line-3d":case"mesh-3d":case"point-3d":case"polygon-3d":return!0;default:return!1}}const j={base:S,key:"type",typeMap:{"simple-fill":p,"picture-fill":t,"picture-marker":y,"simple-line":i,"simple-marker":f,text:n,"label-3d":s,"line-3d":m,"mesh-3d":r,"point-3d":a,"polygon-3d":b,"web-style":u,cim:l},errorContext:"symbol"},D={base:S,key:"type",typeMap:{"picture-marker":y,"simple-marker":f,text:n,"web-style":u,cim:l},errorContext:"symbol"},k=o({types:j}),M={base:S,key:"type",typeMap:{"simple-fill":p,"picture-fill":t,"picture-marker":y,"simple-line":i,"simple-marker":f,text:n,"line-3d":m,"mesh-3d":r,"point-3d":a,"polygon-3d":b,"web-style":u,cim:l},errorContext:"symbol"},P={base:S,key:"type",typeMap:{text:n,"label-3d":s},errorContext:"symbol"},C={base:S,key:"type",typeMap:{"label-3d":s,"line-3d":m,"mesh-3d":r,"point-3d":a,"polygon-3d":b,"web-style":u},errorContext:"symbol"},h={base:S,key:"type",typeMap:{"line-3d":m,"mesh-3d":r,"point-3d":a,"polygon-3d":b,"web-style":u,cim:l},errorContext:"symbol"},F={base:S,key:"type",typeMap:{"label-3d":s},errorContext:"symbol"},g=e(j);export{g as ensureType,d as isSymbol,c as isSymbol2D,x as isSymbol3D,k as readSymbol,j as symbolTypes,C as symbolTypes3D,D as symbolTypesCluster,P as symbolTypesLabel,F as symbolTypesLabel3D,M as symbolTypesRenderer,h as symbolTypesRenderer3D};
5
+ import{ensureOneOfType as e}from"./core/accessorSupport/ensureType.js";import{createTypeReader as o}from"./core/accessorSupport/extensions/serializableProperty/reader.js";import l from"./symbols/CIMSymbol.js";export{default as CIMSymbol}from"./symbols/CIMSymbol.js";export{default as ExtrudeSymbol3DLayer}from"./symbols/ExtrudeSymbol3DLayer.js";export{default as BaseFillSymbol}from"./symbols/FillSymbol.js";export{default as FillSymbol3DLayer}from"./symbols/FillSymbol3DLayer.js";export{default as Font}from"./symbols/Font.js";export{default as IconSymbol3DLayer}from"./symbols/IconSymbol3DLayer.js";import s from"./symbols/LabelSymbol3D.js";export{default as LabelSymbol3D}from"./symbols/LabelSymbol3D.js";import m from"./symbols/LineSymbol3D.js";export{default as LineSymbol3D}from"./symbols/LineSymbol3D.js";export{default as LineSymbol3DLayer}from"./symbols/LineSymbol3DLayer.js";export{default as BaseMarkerSymbol}from"./symbols/MarkerSymbol.js";import r from"./symbols/MeshSymbol3D.js";export{default as MeshSymbol3D}from"./symbols/MeshSymbol3D.js";export{default as ObjectSymbol3DLayer}from"./symbols/ObjectSymbol3DLayer.js";export{default as PathSymbol3DLayer}from"./symbols/PathSymbol3DLayer.js";import t from"./symbols/PictureFillSymbol.js";export{default as PictureFillSymbol}from"./symbols/PictureFillSymbol.js";import y from"./symbols/PictureMarkerSymbol.js";export{default as PictureMarkerSymbol}from"./symbols/PictureMarkerSymbol.js";import a from"./symbols/PointSymbol3D.js";export{default as PointSymbol3D}from"./symbols/PointSymbol3D.js";import b from"./symbols/PolygonSymbol3D.js";export{default as PolygonSymbol3D}from"./symbols/PolygonSymbol3D.js";import p from"./symbols/SimpleFillSymbol.js";export{default as SimpleFillSymbol}from"./symbols/SimpleFillSymbol.js";import i from"./symbols/SimpleLineSymbol.js";export{default as SimpleLineSymbol}from"./symbols/SimpleLineSymbol.js";import f from"./symbols/SimpleMarkerSymbol.js";export{default as SimpleMarkerSymbol}from"./symbols/SimpleMarkerSymbol.js";import S from"./symbols/Symbol.js";export{default as BaseSymbol}from"./symbols/Symbol.js";export{default as BaseSymbol3D}from"./symbols/Symbol3D.js";export{default as BaseSymbol3DLayer}from"./symbols/Symbol3DLayer.js";import n from"./symbols/TextSymbol.js";export{default as TextSymbol}from"./symbols/TextSymbol.js";export{default as TextSymbol3DLayer}from"./symbols/TextSymbol3DLayer.js";export{default as WaterSymbol3DLayer}from"./symbols/WaterSymbol3DLayer.js";import u from"./symbols/WebStyleSymbol.js";export{default as WebStyleSymbol}from"./symbols/WebStyleSymbol.js";export{default as LineCallout3D}from"./symbols/callouts/LineCallout3D.js";export{L as LineCallout3DBorder}from"./chunks/LineCallout3DBorder.js";function d(e){return e instanceof S}function x(e){if(!e)return!1;switch(e.type){case"picture-fill":case"picture-marker":case"simple-fill":case"simple-line":case"simple-marker":case"text":case"cim":return!0;default:return!1}}function c(e){if(!e)return!1;switch(e.type){case"label-3d":case"line-3d":case"mesh-3d":case"point-3d":case"polygon-3d":return!0;default:return!1}}const j={base:S,key:"type",typeMap:{"simple-fill":p,"picture-fill":t,"picture-marker":y,"simple-line":i,"simple-marker":f,text:n,"label-3d":s,"line-3d":m,"mesh-3d":r,"point-3d":a,"polygon-3d":b,"web-style":u,cim:l},errorContext:"symbol"},D={base:S,key:"type",typeMap:{"picture-marker":y,"simple-marker":f,text:n,"web-style":u,cim:l},errorContext:"symbol"},k=o({types:j}),M={base:S,key:"type",typeMap:{"simple-fill":p,"picture-fill":t,"picture-marker":y,"simple-line":i,"simple-marker":f,text:n,"line-3d":m,"mesh-3d":r,"point-3d":a,"polygon-3d":b,"web-style":u,cim:l},errorContext:"symbol"},P={base:S,key:"type",typeMap:{text:n,"label-3d":s},errorContext:"symbol"},C={base:S,key:"type",typeMap:{"label-3d":s,"line-3d":m,"mesh-3d":r,"point-3d":a,"polygon-3d":b,"web-style":u},errorContext:"symbol"},h={base:S,key:"type",typeMap:{"line-3d":m,"mesh-3d":r,"point-3d":a,"polygon-3d":b,"web-style":u,cim:l},errorContext:"symbol"},F={base:S,key:"type",typeMap:{"label-3d":s},errorContext:"symbol"},g=e(j);export{g as ensureType,d as isSymbol,x as isSymbol2D,c as isSymbol3D,k as readSymbol,j as symbolTypes,C as symbolTypes3D,D as symbolTypesCluster,P as symbolTypesLabel,F as symbolTypesLabel3D,M as symbolTypesRenderer,h as symbolTypesRenderer3D};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import e from"../../../../../request.js";import{cloneArray as t}from"../../../../../core/typedArrayUtil.js";const r=new Map;function n(e,n,c,i,a){const p=e.replace(/\{z\}/gi,n.toString()).replace(/\{y\}/gi,c.toString()).replace(/\{x\}/gi,i.toString()),s=r.get(p);return s?s.then((e=>t(e))):o(p,a)}function o(t,n){const o=e(t,{responseType:"array-buffer",...n}).then((({data:e})=>(r.delete(t),e))).catch((e=>{throw r.delete(t),e}));return r.set(t,o),o}export{n as request};
5
+ import e from"../../../../../request.js";import{clone as t}from"../../../../../core/lang.js";const r=new Map;function n(e,t,r,n,c){return o(e.replace(/\{z\}/gi,t.toString()).replace(/\{y\}/gi,r.toString()).replace(/\{x\}/gi,n.toString()),c)}function o(n,o){const c=r.get(n);if(c)return c.then((e=>t(e)));const i=e(n,{responseType:"array-buffer",...o}).then((({data:e})=>(r.delete(n),e))).catch((e=>{throw r.delete(n),e}));return r.set(n,i),i}export{n as request};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{hasSource as t}from"../../../RasterBitmap.js";import e from"../../VertexStream.js";import r from"../WGLBrush.js";import{BlendFactor as s,CompareFunction as a}from"../../../../../webgl/enums.js";import{setTextures as i,getCommonUniforms as o,setUniforms as n,getColormapUniforms as h,getStretchUniforms as l,getShadedReliefUniforms as c,getUniformLocationInfos as d,getBasicGridUniforms as p}from"../../../../../webgl/rasterUtils.js";class u extends r{constructor(){super(...arguments),this._desc={lut:{vsPath:"raster/lut",fsPath:"raster/lut",attributes:new Map([["a_position",0],["a_texcoord",1]])},stretch:{vsPath:"raster/stretch",fsPath:"raster/stretch",attributes:new Map([["a_position",0],["a_texcoord",1]])},hillshade:{vsPath:"raster/hillshade",fsPath:"raster/hillshade",attributes:new Map([["a_position",0],["a_texcoord",1]])}},this._rendererUniformInfos=new Map}dispose(){this._quad&&this._quad.dispose()}prepareState({context:t},e){t.setBlendingEnabled(!0),t.setBlendFunctionSeparate(s.ONE,s.ONE_MINUS_SRC_ALPHA,s.ONE,s.ONE_MINUS_SRC_ALPHA),t.setColorMask(!0,!0,!0,!0),t.setStencilWriteMask(0),t.setStencilTestEnabled(!0),t.setStencilFunction(a.EQUAL,e.stencilRef,255)}draw(e,r){var s;if(!t(r)||r.suspended)return;e.timeline.begin(this.name);const a=!(null!=(s=e.context.capabilities.textureFloat)&&s.textureFloatLinear);r.updateTexture(e);const i=this._getShaderVariations(r,a),o=e.painter.materialManager.getProgram(e,this._desc[r.symbolizerParameters.type],i);this._drawWithProgram(e.context,o,r),e.timeline.end(this.name)}_drawWithProgram(t,r,s,a=1,d=[0,0],u=!1){this._quad||(this._quad=new e(t,[0,0,1,0,0,1,1,1]));const{symbolizerParameters:m,transformGrid:f,width:_,height:g,opacity:b}=s,P=m.type;t.useProgram(r);const S=this._getShaderVariations(s),x=this._getUniformInfos(P,t,r,S),{names:w,textures:y}=s.getTextures();i(t,r,w,y);const M=p(a,d),U=o(f,[_,g],[s.source.width,s.source.height],b,u);if(n(r,x,{u_coordScale:s.coordScale,u_dvsMat3:s.transforms.dvs,...M,...U}),m.colormap){const{colormap:t,colormapOffset:e}=m,s=h(t,e);n(r,x,s)}if("stretch"===m.type){const t=l(m);n(r,x,t)}else if("hillshade"===m.type){const t=c(m);n(r,x,t)}this._quad.draw()}_getUniformInfos(t,e,r,s){const a=s.length>0?t+"-"+s.join("-"):t;if(this._rendererUniformInfos.has(a))return this._rendererUniformInfos.get(a);const i=d(e,r);return this._rendererUniformInfos.set(a,i),i}_getShaderVariations(t,e=!1){const r=[],{interpolation:s}=t,{type:a,colormap:i}=t.symbolizerParameters;return"cubic"===s?r.push("bicubic"):"bilinear"===s&&"stretch"===a&&null!=i?(r.push("bilinear"),r.push("nnedge")):e&&"bilinear"===s&&r.push("bilinear"),t.isRendereredSource?r.push("noop"):i&&r.push("applyColormap"),t.transformGrid&&r.push("applyProjection"),r}}export{u as default};
5
+ import{hasSource as t}from"../../../RasterBitmap.js";import e from"../../VertexStream.js";import r from"../WGLBrush.js";import{BlendFactor as s,CompareFunction as a}from"../../../../../webgl/enums.js";import{setTextures as i,getCommonUniforms as o,setUniforms as n,getColormapUniforms as h,getStretchUniforms as l,getShadedReliefUniforms as c,getUniformLocationInfos as p,getBasicGridUniforms as d}from"../../../../../webgl/rasterUtils.js";class u extends r{constructor(){super(...arguments),this._desc={lut:{vsPath:"raster/lut",fsPath:"raster/lut",attributes:new Map([["a_position",0],["a_texcoord",1]])},stretch:{vsPath:"raster/stretch",fsPath:"raster/stretch",attributes:new Map([["a_position",0],["a_texcoord",1]])},hillshade:{vsPath:"raster/hillshade",fsPath:"raster/hillshade",attributes:new Map([["a_position",0],["a_texcoord",1]])}},this._rendererUniformInfos=new Map}dispose(){this._quad&&this._quad.dispose()}prepareState({context:t},e){t.setBlendingEnabled(!0),t.setBlendFunctionSeparate(s.ONE,s.ONE_MINUS_SRC_ALPHA,s.ONE,s.ONE_MINUS_SRC_ALPHA),t.setColorMask(!0,!0,!0,!0),t.setStencilWriteMask(0),t.setStencilTestEnabled(!0),t.setStencilFunction(a.EQUAL,e.stencilRef,255)}draw(e,r){var s;if(!t(r)||r.suspended)return;e.timeline.begin(this.name);const a=!(null!=(s=e.context.capabilities.textureFloat)&&s.textureFloatLinear);r.updateTexture(e);const i=this._getShaderVariations(r,a),o=e.painter.materialManager.getProgram(e,this._desc[r.symbolizerParameters.type],i);this._drawWithProgram(e.context,o,r),e.timeline.end(this.name)}_drawWithProgram(t,r,s,a=1,p=[0,0],u=!1){this._quad||(this._quad=new e(t,[0,0,1,0,0,1,1,1]));const{symbolizerParameters:m,transformGrid:f,width:_,height:g,opacity:b}=s,P=m.type;t.useProgram(r);const S=this._getShaderVariations(s),x=this._getUniformInfos(P,t,r,S),{names:w,textures:y}=s.getTextures();i(t,r,w,y);const M=d(a,p),U=o(f,[_,g],[s.source.width,s.source.height],b,u);if(n(r,x,{u_coordScale:s.coordScale,u_dvsMat3:s.transforms.dvs,...M,...U}),m.colormap){const{colormap:t,colormapOffset:e}=m,s=h(t,e);n(r,x,s)}if("stretch"===m.type){const t=l(m);n(r,x,t)}else if("hillshade"===m.type){const t=c(m);n(r,x,t)}this._quad.draw()}_getUniformInfos(t,e,r,s){const a=s.length>0?t+"-"+s.join("-"):t;if(this._rendererUniformInfos.has(a))return this._rendererUniformInfos.get(a);const i=p(e,r);return this._rendererUniformInfos.set(a,i),i}_getShaderVariations(t,e=!1){const r=[],{interpolation:s}=t,{type:a,colormap:i}=t.symbolizerParameters;return"cubic"===s?r.push("bicubic"):"bilinear"===s&&"stretch"===a&&null!=i?(r.push("bilinear"),r.push("nnedge")):e&&"bilinear"===s&&r.push("bilinear"),t.isRendereredSource?r.push("noop"):i&&r.push("applyColormap"),t.transformGrid&&(r.push("applyProjection"),1===t.transformGrid.spacing[0]&&r.push("lookupProjection")),r}}export{u as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{pt2px as t}from"../../../../../../core/screenUtils.js";import{premultiplyAlphaRGBAArray as e,premultiplyAlphaRGBA as o}from"../../color.js";import{MIN_MAX_ZOOM_PRECISION_FACTOR as r,SPRITE_PADDING as l,BITSET_GENERIC_LOCK_COLOR as i,PICTURE_FILL_COLOR as s}from"../../definitions.js";import{degToByte as n}from"../../GeometryUtils.js";import{i8888to32 as a,i1616to32 as m}from"../../number.js";import{FillMaterialKey as c}from"../../materialKey/MaterialKey.js";import{getMinMaxZoom as f,DEFAULT_MIN_ZOOM as h,DEFAULT_MAX_ZOOM as u}from"./util.js";import d from"./WGLBaseFillTemplate.js";import p from"./WGLMeshTemplate.js";const y=128;class x extends(d(p)){constructor(t,e,o,l,i,s,n,f,h,u,d,p,y,x,M,j){super(),this._effects=x;const w=c.load(t);e&&(w.sdf=e.sdf,w.pattern=!0,w.textureBinding=e.textureBinding),this.fillColor=o,this.tl=l,this.br=i,this.aux2=a(s,n,f,h),this.aux3=a(u,d,p,0),this._bitset=y,this._minMaxZoom=m(Math.round(M*r),Math.round(j*r)),this._materialKey=w.data}static fromCIMFill(e,r,i){const s=e.color,a=s&&o(s)||0,c=e.materialKey,[h,u]=f(e.scaleInfo,i);if(!r)return new x(c,null,a,0,0,0,0,0,0,0,0,0,e.colorLocked?1:0,e.effects,h,u);const{rect:d,width:p,height:M}=r,j=e.scaleX||1,w=d.x+l,g=d.y+l,K=w+p,L=g+M,_=e.height,b=j*_;let F=Math.round(_);F>255?F=255:F<=0&&(F=L-g);let T=Math.round(b);T>255?T=255:T<=0&&(T=K-w);let B=t(e.offsetX||0)+y;B>255&&(B=255);let G=t(-e.offsetY||0)+y;G>255&&(G=255);const S=m(w,g),k=m(K,L);return new x(c,r,a,S,k,T,F,B,G,y,y,n(e.angle),e.colorLocked?1:0,e.effects,h,u)}static fromSimpleFill(t,o,r=!1){const{color:s}=t,n=s&&"esriSFSNull"!==t.style&&e(s)||0,a=r?i:0,c=t.materialKey;let f;if(o){const{rect:t,width:e,height:r}=o,i=t.x+l,s=t.y+l,d=i+e,p=s+r,M=m(i,s),j=m(d,p);f=new x(c,o,n,M,j,e,r,0,0,y,y,0,a,null,h,u)}else f=new x(c,null,n,0,0,0,0,0,0,0,0,0,a,null,h,u);return f._maybeAddLineTemplate(t),f}static fromPictureFill(e,o,r=!1){const n=s,{rect:a,width:c,height:f}=o,d=a.x+l,p=a.y+l,M=d+c,j=p+f,w=m(d,p),g=m(M,j);let K=Math.round(t(e.width));K>255&&(K=255);let L=Math.round(t(e.height));L>255&&(L=255);let _=t(e.xoffset)+y;_>255&&(_=255);let b=t(-e.yoffset)+y;b>255&&(b=255);const F=e.materialKey,T=r?i:0,B=new x(F,o,n,w,g,K,L,_,b,y*e.xscale,y*e.yscale,0,T,null,h,u);return B._maybeAddLineTemplate(e),B}}export{x as default};
5
+ import{pt2px as t}from"../../../../../../core/screenUtils.js";import{premultiplyAlphaRGBAArray as e,premultiplyAlphaRGBA as o}from"../../color.js";import{MIN_MAX_ZOOM_PRECISION_FACTOR as r,BITSET_GENERIC_LOCK_COLOR as l,SPRITE_PADDING as i,PICTURE_FILL_COLOR as s}from"../../definitions.js";import{degToByte as n}from"../../GeometryUtils.js";import{i8888to32 as a,i1616to32 as m}from"../../number.js";import{FillMaterialKey as c}from"../../materialKey/MaterialKey.js";import{getMinMaxZoom as f,DEFAULT_MIN_ZOOM as h,DEFAULT_MAX_ZOOM as u}from"./util.js";import d from"./WGLBaseFillTemplate.js";import p from"./WGLMeshTemplate.js";const y=128;class x extends(d(p)){constructor(t,e,o,l,i,s,n,f,h,u,d,p,y,x,M,j){super(),this._effects=x;const w=c.load(t);e&&(w.sdf=e.sdf,w.pattern=!0,w.textureBinding=e.textureBinding),this.fillColor=o,this.tl=l,this.br=i,this.aux2=a(s,n,f,h),this.aux3=a(u,d,p,0),this._bitset=y,this._minMaxZoom=m(Math.round(M*r),Math.round(j*r)),this._materialKey=w.data}static fromCIMFill(e,r,s){const a=e.color,c=a&&o(a)||0,h=e.materialKey,[u,d]=f(e.scaleInfo,s);if(!r)return new x(h,null,c,0,0,0,0,0,0,0,0,0,e.colorLocked?l:0,e.effects,u,d);const{rect:p,width:M,height:j}=r,w=e.scaleX||1,g=p.x+i,K=p.y+i,L=g+M,_=K+j,b=e.height,F=w*b;let T=Math.round(b);T>255?T=255:T<=0&&(T=_-K);let B=Math.round(F);B>255?B=255:B<=0&&(B=L-g);let G=t(e.offsetX||0)+y;G>255&&(G=255);let S=t(-e.offsetY||0)+y;S>255&&(S=255);const k=m(g,K),A=m(L,_);return new x(h,r,c,k,A,B,T,G,S,y,y,n(e.angle),e.colorLocked?l:0,e.effects,u,d)}static fromSimpleFill(t,o,r=!1){const{color:s}=t,n=s&&"esriSFSNull"!==t.style&&e(s)||0,a=r?l:0,c=t.materialKey;let f;if(o){const{rect:t,width:e,height:r}=o,l=t.x+i,s=t.y+i,d=l+e,p=s+r,M=m(l,s),j=m(d,p);f=new x(c,o,n,M,j,e,r,0,0,y,y,0,a,null,h,u)}else f=new x(c,null,n,0,0,0,0,0,0,0,0,0,a,null,h,u);return f._maybeAddLineTemplate(t),f}static fromPictureFill(e,o,r=!1){const n=s,{rect:a,width:c,height:f}=o,d=a.x+i,p=a.y+i,M=d+c,j=p+f,w=m(d,p),g=m(M,j);let K=Math.round(t(e.width));K>255&&(K=255);let L=Math.round(t(e.height));L>255&&(L=255);let _=t(e.xoffset)+y;_>255&&(_=255);let b=t(-e.yoffset)+y;b>255&&(b=255);const F=e.materialKey,T=r?l:0,B=new x(F,o,n,w,g,K,L,_,b,y*e.xscale,y*e.yscale,0,T,null,h,u);return B._maybeAddLineTemplate(e),B}}export{x as default};