@itwin/map-layers-formats 3.5.0-dev.33

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 (247) hide show
  1. package/.nycrc +10 -0
  2. package/.rush/temp/package-deps_build_ci.json +33 -0
  3. package/.rush/temp/package-deps_cover.json +33 -0
  4. package/.rush/temp/package-deps_docs.json +33 -0
  5. package/.rush/temp/shrinkwrap-deps.json +352 -0
  6. package/README.md +11 -0
  7. package/lib/cjs/ArcGisFeature/ArcGisFeatureFormat.d.ts +9 -0
  8. package/lib/cjs/ArcGisFeature/ArcGisFeatureFormat.d.ts.map +1 -0
  9. package/lib/cjs/ArcGisFeature/ArcGisFeatureFormat.js +15 -0
  10. package/lib/cjs/ArcGisFeature/ArcGisFeatureFormat.js.map +1 -0
  11. package/lib/cjs/ArcGisFeature/ArcGisFeatureJSON.d.ts +15 -0
  12. package/lib/cjs/ArcGisFeature/ArcGisFeatureJSON.d.ts.map +1 -0
  13. package/lib/cjs/ArcGisFeature/ArcGisFeatureJSON.js +135 -0
  14. package/lib/cjs/ArcGisFeature/ArcGisFeatureJSON.js.map +1 -0
  15. package/lib/cjs/ArcGisFeature/ArcGisFeaturePBF.d.ts +15 -0
  16. package/lib/cjs/ArcGisFeature/ArcGisFeaturePBF.d.ts.map +1 -0
  17. package/lib/cjs/ArcGisFeature/ArcGisFeaturePBF.js +206 -0
  18. package/lib/cjs/ArcGisFeature/ArcGisFeaturePBF.js.map +1 -0
  19. package/lib/cjs/ArcGisFeature/ArcGisFeatureProvider.d.ts +43 -0
  20. package/lib/cjs/ArcGisFeature/ArcGisFeatureProvider.d.ts.map +1 -0
  21. package/lib/cjs/ArcGisFeature/ArcGisFeatureProvider.js +412 -0
  22. package/lib/cjs/ArcGisFeature/ArcGisFeatureProvider.js.map +1 -0
  23. package/lib/cjs/ArcGisFeature/ArcGisFeatureQuery.d.ts +94 -0
  24. package/lib/cjs/ArcGisFeature/ArcGisFeatureQuery.d.ts.map +1 -0
  25. package/lib/cjs/ArcGisFeature/ArcGisFeatureQuery.js +91 -0
  26. package/lib/cjs/ArcGisFeature/ArcGisFeatureQuery.js.map +1 -0
  27. package/lib/cjs/ArcGisFeature/ArcGisFeatureReader.d.ts +18 -0
  28. package/lib/cjs/ArcGisFeature/ArcGisFeatureReader.d.ts.map +1 -0
  29. package/lib/cjs/ArcGisFeature/ArcGisFeatureReader.js +34 -0
  30. package/lib/cjs/ArcGisFeature/ArcGisFeatureReader.js.map +1 -0
  31. package/lib/cjs/ArcGisFeature/ArcGisFeatureRenderer.d.ts +33 -0
  32. package/lib/cjs/ArcGisFeature/ArcGisFeatureRenderer.d.ts.map +1 -0
  33. package/lib/cjs/ArcGisFeature/ArcGisFeatureRenderer.js +143 -0
  34. package/lib/cjs/ArcGisFeature/ArcGisFeatureRenderer.js.map +1 -0
  35. package/lib/cjs/ArcGisFeature/ArcGisFeatureResponse.d.ts +17 -0
  36. package/lib/cjs/ArcGisFeature/ArcGisFeatureResponse.d.ts.map +1 -0
  37. package/lib/cjs/ArcGisFeature/ArcGisFeatureResponse.js +44 -0
  38. package/lib/cjs/ArcGisFeature/ArcGisFeatureResponse.js.map +1 -0
  39. package/lib/cjs/ArcGisFeature/ArcGisSymbologyRenderer.d.ts +86 -0
  40. package/lib/cjs/ArcGisFeature/ArcGisSymbologyRenderer.d.ts.map +1 -0
  41. package/lib/cjs/ArcGisFeature/ArcGisSymbologyRenderer.js +190 -0
  42. package/lib/cjs/ArcGisFeature/ArcGisSymbologyRenderer.js.map +1 -0
  43. package/lib/cjs/ArcGisFeature/esriPBuffer.gen.d.ts +1064 -0
  44. package/lib/cjs/ArcGisFeature/esriPBuffer.gen.d.ts.map +1 -0
  45. package/lib/cjs/ArcGisFeature/esriPBuffer.gen.js +2271 -0
  46. package/lib/cjs/ArcGisFeature/esriPBuffer.gen.js.map +1 -0
  47. package/lib/cjs/map-layers-formats.d.ts +9 -0
  48. package/lib/cjs/map-layers-formats.d.ts.map +1 -0
  49. package/lib/cjs/map-layers-formats.js +25 -0
  50. package/lib/cjs/map-layers-formats.js.map +1 -0
  51. package/lib/cjs/mapLayersFormats.d.ts +11 -0
  52. package/lib/cjs/mapLayersFormats.d.ts.map +1 -0
  53. package/lib/cjs/mapLayersFormats.js +29 -0
  54. package/lib/cjs/mapLayersFormats.js.map +1 -0
  55. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureFeatureFormats.test.d.ts +2 -0
  56. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureFeatureFormats.test.d.ts.map +1 -0
  57. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureFeatureFormats.test.js +35 -0
  58. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureFeatureFormats.test.js.map +1 -0
  59. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureJSON.test.d.ts +2 -0
  60. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureJSON.test.d.ts.map +1 -0
  61. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureJSON.test.js +162 -0
  62. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureJSON.test.js.map +1 -0
  63. package/lib/cjs/test/ArcGisFeature/ArcGisFeaturePBF.test.d.ts +2 -0
  64. package/lib/cjs/test/ArcGisFeature/ArcGisFeaturePBF.test.d.ts.map +1 -0
  65. package/lib/cjs/test/ArcGisFeature/ArcGisFeaturePBF.test.js +168 -0
  66. package/lib/cjs/test/ArcGisFeature/ArcGisFeaturePBF.test.js.map +1 -0
  67. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureProvider.test.d.ts +2 -0
  68. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureProvider.test.d.ts.map +1 -0
  69. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureProvider.test.js +657 -0
  70. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureProvider.test.js.map +1 -0
  71. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureQuery.test.d.ts +2 -0
  72. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureQuery.test.d.ts.map +1 -0
  73. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureQuery.test.js +109 -0
  74. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureQuery.test.js.map +1 -0
  75. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureRenderer.test.d.ts +2 -0
  76. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureRenderer.test.d.ts.map +1 -0
  77. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureRenderer.test.js +215 -0
  78. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureRenderer.test.js.map +1 -0
  79. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureResponse.test.d.ts +2 -0
  80. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureResponse.test.d.ts.map +1 -0
  81. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureResponse.test.js +95 -0
  82. package/lib/cjs/test/ArcGisFeature/ArcGisFeatureResponse.test.js.map +1 -0
  83. package/lib/cjs/test/ArcGisFeature/ArcGisSymbologyRenderer.test.d.ts +2 -0
  84. package/lib/cjs/test/ArcGisFeature/ArcGisSymbologyRenderer.test.d.ts.map +1 -0
  85. package/lib/cjs/test/ArcGisFeature/ArcGisSymbologyRenderer.test.js +60 -0
  86. package/lib/cjs/test/ArcGisFeature/ArcGisSymbologyRenderer.test.js.map +1 -0
  87. package/lib/cjs/test/ArcGisFeature/Mocks.d.ts +7 -0
  88. package/lib/cjs/test/ArcGisFeature/Mocks.d.ts.map +1 -0
  89. package/lib/cjs/test/ArcGisFeature/Mocks.js +19 -0
  90. package/lib/cjs/test/ArcGisFeature/Mocks.js.map +1 -0
  91. package/lib/cjs/test/ArcGisFeature/NewYorkDataset.d.ts +56 -0
  92. package/lib/cjs/test/ArcGisFeature/NewYorkDataset.d.ts.map +1 -0
  93. package/lib/cjs/test/ArcGisFeature/NewYorkDataset.js +420 -0
  94. package/lib/cjs/test/ArcGisFeature/NewYorkDataset.js.map +1 -0
  95. package/lib/cjs/test/ArcGisFeature/PhillyLandmarksDataset.d.ts +1043 -0
  96. package/lib/cjs/test/ArcGisFeature/PhillyLandmarksDataset.d.ts.map +1 -0
  97. package/lib/cjs/test/ArcGisFeature/PhillyLandmarksDataset.js +427 -0
  98. package/lib/cjs/test/ArcGisFeature/PhillyLandmarksDataset.js.map +1 -0
  99. package/lib/cjs/test/coverage/.nyc_output/4a4a8f53-a85f-4448-a46a-5812eb4f4c28.json +1 -0
  100. package/lib/cjs/test/coverage/.nyc_output/c25e0b2e-c348-49c1-990c-2c062e25b38f.json +1 -0
  101. package/lib/cjs/test/coverage/.nyc_output/processinfo/4a4a8f53-a85f-4448-a46a-5812eb4f4c28.json +1 -0
  102. package/lib/cjs/test/coverage/.nyc_output/processinfo/c25e0b2e-c348-49c1-990c-2c062e25b38f.json +1 -0
  103. package/lib/cjs/test/coverage/.nyc_output/processinfo/index.json +1 -0
  104. package/lib/cjs/test/coverage/cobertura-coverage.xml +1162 -0
  105. package/lib/cjs/test/coverage/lcov-report/base.css +224 -0
  106. package/lib/cjs/test/coverage/lcov-report/block-navigation.js +87 -0
  107. package/lib/cjs/test/coverage/lcov-report/favicon.png +0 -0
  108. package/lib/cjs/test/coverage/lcov-report/index.html +131 -0
  109. package/lib/cjs/test/coverage/lcov-report/prettify.css +1 -0
  110. package/lib/cjs/test/coverage/lcov-report/prettify.js +2 -0
  111. package/lib/cjs/test/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  112. package/lib/cjs/test/coverage/lcov-report/sorter.js +196 -0
  113. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/ArcGisFeatureFormat.ts.html +133 -0
  114. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/ArcGisFeatureJSON.ts.html +550 -0
  115. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/ArcGisFeaturePBF.ts.html +736 -0
  116. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/ArcGisFeatureProvider.ts.html +1513 -0
  117. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/ArcGisFeatureQuery.ts.html +793 -0
  118. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/ArcGisFeatureReader.ts.html +223 -0
  119. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/ArcGisFeatureRenderer.ts.html +598 -0
  120. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/ArcGisFeatureResponse.ts.html +301 -0
  121. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/ArcGisSymbologyRenderer.ts.html +823 -0
  122. package/lib/cjs/test/coverage/lcov-report/src/ArcGisFeature/index.html +236 -0
  123. package/lib/cjs/test/coverage/lcov-report/src/index.html +131 -0
  124. package/lib/cjs/test/coverage/lcov-report/src/map-layers-formats.ts.html +130 -0
  125. package/lib/cjs/test/coverage/lcov-report/src/mapLayersFormats.ts.html +163 -0
  126. package/lib/cjs/test/coverage/lcov.info +1503 -0
  127. package/lib/cjs/tsconfig.tsbuildinfo +1 -0
  128. package/lib/esm/ArcGisFeature/ArcGisFeatureFormat.d.ts +9 -0
  129. package/lib/esm/ArcGisFeature/ArcGisFeatureFormat.d.ts.map +1 -0
  130. package/lib/esm/ArcGisFeature/ArcGisFeatureFormat.js +11 -0
  131. package/lib/esm/ArcGisFeature/ArcGisFeatureFormat.js.map +1 -0
  132. package/lib/esm/ArcGisFeature/ArcGisFeatureJSON.d.ts +15 -0
  133. package/lib/esm/ArcGisFeature/ArcGisFeatureJSON.d.ts.map +1 -0
  134. package/lib/esm/ArcGisFeature/ArcGisFeatureJSON.js +131 -0
  135. package/lib/esm/ArcGisFeature/ArcGisFeatureJSON.js.map +1 -0
  136. package/lib/esm/ArcGisFeature/ArcGisFeaturePBF.d.ts +15 -0
  137. package/lib/esm/ArcGisFeature/ArcGisFeaturePBF.d.ts.map +1 -0
  138. package/lib/esm/ArcGisFeature/ArcGisFeaturePBF.js +202 -0
  139. package/lib/esm/ArcGisFeature/ArcGisFeaturePBF.js.map +1 -0
  140. package/lib/esm/ArcGisFeature/ArcGisFeatureProvider.d.ts +43 -0
  141. package/lib/esm/ArcGisFeature/ArcGisFeatureProvider.d.ts.map +1 -0
  142. package/lib/esm/ArcGisFeature/ArcGisFeatureProvider.js +408 -0
  143. package/lib/esm/ArcGisFeature/ArcGisFeatureProvider.js.map +1 -0
  144. package/lib/esm/ArcGisFeature/ArcGisFeatureQuery.d.ts +94 -0
  145. package/lib/esm/ArcGisFeature/ArcGisFeatureQuery.d.ts.map +1 -0
  146. package/lib/esm/ArcGisFeature/ArcGisFeatureQuery.js +87 -0
  147. package/lib/esm/ArcGisFeature/ArcGisFeatureQuery.js.map +1 -0
  148. package/lib/esm/ArcGisFeature/ArcGisFeatureReader.d.ts +18 -0
  149. package/lib/esm/ArcGisFeature/ArcGisFeatureReader.d.ts.map +1 -0
  150. package/lib/esm/ArcGisFeature/ArcGisFeatureReader.js +30 -0
  151. package/lib/esm/ArcGisFeature/ArcGisFeatureReader.js.map +1 -0
  152. package/lib/esm/ArcGisFeature/ArcGisFeatureRenderer.d.ts +33 -0
  153. package/lib/esm/ArcGisFeature/ArcGisFeatureRenderer.d.ts.map +1 -0
  154. package/lib/esm/ArcGisFeature/ArcGisFeatureRenderer.js +139 -0
  155. package/lib/esm/ArcGisFeature/ArcGisFeatureRenderer.js.map +1 -0
  156. package/lib/esm/ArcGisFeature/ArcGisFeatureResponse.d.ts +17 -0
  157. package/lib/esm/ArcGisFeature/ArcGisFeatureResponse.d.ts.map +1 -0
  158. package/lib/esm/ArcGisFeature/ArcGisFeatureResponse.js +40 -0
  159. package/lib/esm/ArcGisFeature/ArcGisFeatureResponse.js.map +1 -0
  160. package/lib/esm/ArcGisFeature/ArcGisSymbologyRenderer.d.ts +86 -0
  161. package/lib/esm/ArcGisFeature/ArcGisSymbologyRenderer.d.ts.map +1 -0
  162. package/lib/esm/ArcGisFeature/ArcGisSymbologyRenderer.js +183 -0
  163. package/lib/esm/ArcGisFeature/ArcGisSymbologyRenderer.js.map +1 -0
  164. package/lib/esm/ArcGisFeature/esriPBuffer.gen.d.ts +1064 -0
  165. package/lib/esm/ArcGisFeature/esriPBuffer.gen.d.ts.map +1 -0
  166. package/lib/esm/ArcGisFeature/esriPBuffer.gen.js +2268 -0
  167. package/lib/esm/ArcGisFeature/esriPBuffer.gen.js.map +1 -0
  168. package/lib/esm/map-layers-formats.d.ts +9 -0
  169. package/lib/esm/map-layers-formats.d.ts.map +1 -0
  170. package/lib/esm/map-layers-formats.js +13 -0
  171. package/lib/esm/map-layers-formats.js.map +1 -0
  172. package/lib/esm/mapLayersFormats.d.ts +11 -0
  173. package/lib/esm/mapLayersFormats.d.ts.map +1 -0
  174. package/lib/esm/mapLayersFormats.js +25 -0
  175. package/lib/esm/mapLayersFormats.js.map +1 -0
  176. package/lib/esm/test/ArcGisFeature/ArcGisFeatureFeatureFormats.test.d.ts +2 -0
  177. package/lib/esm/test/ArcGisFeature/ArcGisFeatureFeatureFormats.test.d.ts.map +1 -0
  178. package/lib/esm/test/ArcGisFeature/ArcGisFeatureFeatureFormats.test.js +33 -0
  179. package/lib/esm/test/ArcGisFeature/ArcGisFeatureFeatureFormats.test.js.map +1 -0
  180. package/lib/esm/test/ArcGisFeature/ArcGisFeatureJSON.test.d.ts +2 -0
  181. package/lib/esm/test/ArcGisFeature/ArcGisFeatureJSON.test.d.ts.map +1 -0
  182. package/lib/esm/test/ArcGisFeature/ArcGisFeatureJSON.test.js +160 -0
  183. package/lib/esm/test/ArcGisFeature/ArcGisFeatureJSON.test.js.map +1 -0
  184. package/lib/esm/test/ArcGisFeature/ArcGisFeaturePBF.test.d.ts +2 -0
  185. package/lib/esm/test/ArcGisFeature/ArcGisFeaturePBF.test.d.ts.map +1 -0
  186. package/lib/esm/test/ArcGisFeature/ArcGisFeaturePBF.test.js +166 -0
  187. package/lib/esm/test/ArcGisFeature/ArcGisFeaturePBF.test.js.map +1 -0
  188. package/lib/esm/test/ArcGisFeature/ArcGisFeatureProvider.test.d.ts +2 -0
  189. package/lib/esm/test/ArcGisFeature/ArcGisFeatureProvider.test.d.ts.map +1 -0
  190. package/lib/esm/test/ArcGisFeature/ArcGisFeatureProvider.test.js +655 -0
  191. package/lib/esm/test/ArcGisFeature/ArcGisFeatureProvider.test.js.map +1 -0
  192. package/lib/esm/test/ArcGisFeature/ArcGisFeatureQuery.test.d.ts +2 -0
  193. package/lib/esm/test/ArcGisFeature/ArcGisFeatureQuery.test.d.ts.map +1 -0
  194. package/lib/esm/test/ArcGisFeature/ArcGisFeatureQuery.test.js +107 -0
  195. package/lib/esm/test/ArcGisFeature/ArcGisFeatureQuery.test.js.map +1 -0
  196. package/lib/esm/test/ArcGisFeature/ArcGisFeatureRenderer.test.d.ts +2 -0
  197. package/lib/esm/test/ArcGisFeature/ArcGisFeatureRenderer.test.d.ts.map +1 -0
  198. package/lib/esm/test/ArcGisFeature/ArcGisFeatureRenderer.test.js +213 -0
  199. package/lib/esm/test/ArcGisFeature/ArcGisFeatureRenderer.test.js.map +1 -0
  200. package/lib/esm/test/ArcGisFeature/ArcGisFeatureResponse.test.d.ts +2 -0
  201. package/lib/esm/test/ArcGisFeature/ArcGisFeatureResponse.test.d.ts.map +1 -0
  202. package/lib/esm/test/ArcGisFeature/ArcGisFeatureResponse.test.js +93 -0
  203. package/lib/esm/test/ArcGisFeature/ArcGisFeatureResponse.test.js.map +1 -0
  204. package/lib/esm/test/ArcGisFeature/ArcGisSymbologyRenderer.test.d.ts +2 -0
  205. package/lib/esm/test/ArcGisFeature/ArcGisSymbologyRenderer.test.d.ts.map +1 -0
  206. package/lib/esm/test/ArcGisFeature/ArcGisSymbologyRenderer.test.js +58 -0
  207. package/lib/esm/test/ArcGisFeature/ArcGisSymbologyRenderer.test.js.map +1 -0
  208. package/lib/esm/test/ArcGisFeature/Mocks.d.ts +7 -0
  209. package/lib/esm/test/ArcGisFeature/Mocks.d.ts.map +1 -0
  210. package/lib/esm/test/ArcGisFeature/Mocks.js +16 -0
  211. package/lib/esm/test/ArcGisFeature/Mocks.js.map +1 -0
  212. package/lib/esm/test/ArcGisFeature/NewYorkDataset.d.ts +56 -0
  213. package/lib/esm/test/ArcGisFeature/NewYorkDataset.d.ts.map +1 -0
  214. package/lib/esm/test/ArcGisFeature/NewYorkDataset.js +416 -0
  215. package/lib/esm/test/ArcGisFeature/NewYorkDataset.js.map +1 -0
  216. package/lib/esm/test/ArcGisFeature/PhillyLandmarksDataset.d.ts +1043 -0
  217. package/lib/esm/test/ArcGisFeature/PhillyLandmarksDataset.d.ts.map +1 -0
  218. package/lib/esm/test/ArcGisFeature/PhillyLandmarksDataset.js +423 -0
  219. package/lib/esm/test/ArcGisFeature/PhillyLandmarksDataset.js.map +1 -0
  220. package/lib/esm/tsconfig.tsbuildinfo +1 -0
  221. package/lib/test/junit_results.xml +161 -0
  222. package/map-layers-formats.build.log +30 -0
  223. package/package.json +103 -0
  224. package/src/ArcGisFeature/ArcGisFeatureFormat.ts +16 -0
  225. package/src/ArcGisFeature/ArcGisFeatureJSON.ts +155 -0
  226. package/src/ArcGisFeature/ArcGisFeaturePBF.ts +217 -0
  227. package/src/ArcGisFeature/ArcGisFeatureProvider.ts +476 -0
  228. package/src/ArcGisFeature/ArcGisFeatureQuery.ts +236 -0
  229. package/src/ArcGisFeature/ArcGisFeatureReader.ts +46 -0
  230. package/src/ArcGisFeature/ArcGisFeatureRenderer.ts +171 -0
  231. package/src/ArcGisFeature/ArcGisFeatureResponse.ts +72 -0
  232. package/src/ArcGisFeature/ArcGisSymbologyRenderer.ts +246 -0
  233. package/src/ArcGisFeature/esriPBuffer.gen.ts +2615 -0
  234. package/src/map-layers-formats.ts +15 -0
  235. package/src/mapLayersFormats.ts +26 -0
  236. package/src/test/ArcGisFeature/ArcGisFeatureFeatureFormats.test.ts +46 -0
  237. package/src/test/ArcGisFeature/ArcGisFeatureJSON.test.ts +202 -0
  238. package/src/test/ArcGisFeature/ArcGisFeaturePBF.test.ts +227 -0
  239. package/src/test/ArcGisFeature/ArcGisFeatureProvider.test.ts +776 -0
  240. package/src/test/ArcGisFeature/ArcGisFeatureQuery.test.ts +124 -0
  241. package/src/test/ArcGisFeature/ArcGisFeatureRenderer.test.ts +296 -0
  242. package/src/test/ArcGisFeature/ArcGisFeatureResponse.test.ts +109 -0
  243. package/src/test/ArcGisFeature/ArcGisSymbologyRenderer.test.ts +77 -0
  244. package/src/test/ArcGisFeature/Mocks.ts +19 -0
  245. package/src/test/ArcGisFeature/NewYorkDataset.ts +423 -0
  246. package/src/test/ArcGisFeature/PhillyLandmarksDataset.ts +455 -0
  247. package/tsconfig.json +21 -0
@@ -0,0 +1,823 @@
1
+
2
+ <!doctype html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <title>Code coverage report for src/ArcGisFeature/ArcGisSymbologyRenderer.ts</title>
7
+ <meta charset="utf-8" />
8
+ <link rel="stylesheet" href="../../prettify.css" />
9
+ <link rel="stylesheet" href="../../base.css" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
11
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
12
+ <style type='text/css'>
13
+ .coverage-summary .sorter {
14
+ background-image: url(../../sort-arrow-sprite.png);
15
+ }
16
+ </style>
17
+ </head>
18
+
19
+ <body>
20
+ <div class='wrapper'>
21
+ <div class='pad1'>
22
+ <h1><a href="../../index.html">All files</a> / <a href="index.html">src/ArcGisFeature</a> ArcGisSymbologyRenderer.ts</h1>
23
+ <div class='clearfix'>
24
+
25
+ <div class='fl pad1y space-right2'>
26
+ <span class="strong">89.58% </span>
27
+ <span class="quiet">Statements</span>
28
+ <span class='fraction'>86/96</span>
29
+ </div>
30
+
31
+
32
+ <div class='fl pad1y space-right2'>
33
+ <span class="strong">78.26% </span>
34
+ <span class="quiet">Branches</span>
35
+ <span class='fraction'>72/92</span>
36
+ </div>
37
+
38
+
39
+ <div class='fl pad1y space-right2'>
40
+ <span class="strong">93.33% </span>
41
+ <span class="quiet">Functions</span>
42
+ <span class='fraction'>28/30</span>
43
+ </div>
44
+
45
+
46
+ <div class='fl pad1y space-right2'>
47
+ <span class="strong">89.47% </span>
48
+ <span class="quiet">Lines</span>
49
+ <span class='fraction'>85/95</span>
50
+ </div>
51
+
52
+
53
+ </div>
54
+ <p class="quiet">
55
+ Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
+ </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
63
+ </div>
64
+ <div class='status-line high'></div>
65
+ <pre><table class="coverage">
66
+ <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
+ <a name='L2'></a><a href='#L2'>2</a>
68
+ <a name='L3'></a><a href='#L3'>3</a>
69
+ <a name='L4'></a><a href='#L4'>4</a>
70
+ <a name='L5'></a><a href='#L5'>5</a>
71
+ <a name='L6'></a><a href='#L6'>6</a>
72
+ <a name='L7'></a><a href='#L7'>7</a>
73
+ <a name='L8'></a><a href='#L8'>8</a>
74
+ <a name='L9'></a><a href='#L9'>9</a>
75
+ <a name='L10'></a><a href='#L10'>10</a>
76
+ <a name='L11'></a><a href='#L11'>11</a>
77
+ <a name='L12'></a><a href='#L12'>12</a>
78
+ <a name='L13'></a><a href='#L13'>13</a>
79
+ <a name='L14'></a><a href='#L14'>14</a>
80
+ <a name='L15'></a><a href='#L15'>15</a>
81
+ <a name='L16'></a><a href='#L16'>16</a>
82
+ <a name='L17'></a><a href='#L17'>17</a>
83
+ <a name='L18'></a><a href='#L18'>18</a>
84
+ <a name='L19'></a><a href='#L19'>19</a>
85
+ <a name='L20'></a><a href='#L20'>20</a>
86
+ <a name='L21'></a><a href='#L21'>21</a>
87
+ <a name='L22'></a><a href='#L22'>22</a>
88
+ <a name='L23'></a><a href='#L23'>23</a>
89
+ <a name='L24'></a><a href='#L24'>24</a>
90
+ <a name='L25'></a><a href='#L25'>25</a>
91
+ <a name='L26'></a><a href='#L26'>26</a>
92
+ <a name='L27'></a><a href='#L27'>27</a>
93
+ <a name='L28'></a><a href='#L28'>28</a>
94
+ <a name='L29'></a><a href='#L29'>29</a>
95
+ <a name='L30'></a><a href='#L30'>30</a>
96
+ <a name='L31'></a><a href='#L31'>31</a>
97
+ <a name='L32'></a><a href='#L32'>32</a>
98
+ <a name='L33'></a><a href='#L33'>33</a>
99
+ <a name='L34'></a><a href='#L34'>34</a>
100
+ <a name='L35'></a><a href='#L35'>35</a>
101
+ <a name='L36'></a><a href='#L36'>36</a>
102
+ <a name='L37'></a><a href='#L37'>37</a>
103
+ <a name='L38'></a><a href='#L38'>38</a>
104
+ <a name='L39'></a><a href='#L39'>39</a>
105
+ <a name='L40'></a><a href='#L40'>40</a>
106
+ <a name='L41'></a><a href='#L41'>41</a>
107
+ <a name='L42'></a><a href='#L42'>42</a>
108
+ <a name='L43'></a><a href='#L43'>43</a>
109
+ <a name='L44'></a><a href='#L44'>44</a>
110
+ <a name='L45'></a><a href='#L45'>45</a>
111
+ <a name='L46'></a><a href='#L46'>46</a>
112
+ <a name='L47'></a><a href='#L47'>47</a>
113
+ <a name='L48'></a><a href='#L48'>48</a>
114
+ <a name='L49'></a><a href='#L49'>49</a>
115
+ <a name='L50'></a><a href='#L50'>50</a>
116
+ <a name='L51'></a><a href='#L51'>51</a>
117
+ <a name='L52'></a><a href='#L52'>52</a>
118
+ <a name='L53'></a><a href='#L53'>53</a>
119
+ <a name='L54'></a><a href='#L54'>54</a>
120
+ <a name='L55'></a><a href='#L55'>55</a>
121
+ <a name='L56'></a><a href='#L56'>56</a>
122
+ <a name='L57'></a><a href='#L57'>57</a>
123
+ <a name='L58'></a><a href='#L58'>58</a>
124
+ <a name='L59'></a><a href='#L59'>59</a>
125
+ <a name='L60'></a><a href='#L60'>60</a>
126
+ <a name='L61'></a><a href='#L61'>61</a>
127
+ <a name='L62'></a><a href='#L62'>62</a>
128
+ <a name='L63'></a><a href='#L63'>63</a>
129
+ <a name='L64'></a><a href='#L64'>64</a>
130
+ <a name='L65'></a><a href='#L65'>65</a>
131
+ <a name='L66'></a><a href='#L66'>66</a>
132
+ <a name='L67'></a><a href='#L67'>67</a>
133
+ <a name='L68'></a><a href='#L68'>68</a>
134
+ <a name='L69'></a><a href='#L69'>69</a>
135
+ <a name='L70'></a><a href='#L70'>70</a>
136
+ <a name='L71'></a><a href='#L71'>71</a>
137
+ <a name='L72'></a><a href='#L72'>72</a>
138
+ <a name='L73'></a><a href='#L73'>73</a>
139
+ <a name='L74'></a><a href='#L74'>74</a>
140
+ <a name='L75'></a><a href='#L75'>75</a>
141
+ <a name='L76'></a><a href='#L76'>76</a>
142
+ <a name='L77'></a><a href='#L77'>77</a>
143
+ <a name='L78'></a><a href='#L78'>78</a>
144
+ <a name='L79'></a><a href='#L79'>79</a>
145
+ <a name='L80'></a><a href='#L80'>80</a>
146
+ <a name='L81'></a><a href='#L81'>81</a>
147
+ <a name='L82'></a><a href='#L82'>82</a>
148
+ <a name='L83'></a><a href='#L83'>83</a>
149
+ <a name='L84'></a><a href='#L84'>84</a>
150
+ <a name='L85'></a><a href='#L85'>85</a>
151
+ <a name='L86'></a><a href='#L86'>86</a>
152
+ <a name='L87'></a><a href='#L87'>87</a>
153
+ <a name='L88'></a><a href='#L88'>88</a>
154
+ <a name='L89'></a><a href='#L89'>89</a>
155
+ <a name='L90'></a><a href='#L90'>90</a>
156
+ <a name='L91'></a><a href='#L91'>91</a>
157
+ <a name='L92'></a><a href='#L92'>92</a>
158
+ <a name='L93'></a><a href='#L93'>93</a>
159
+ <a name='L94'></a><a href='#L94'>94</a>
160
+ <a name='L95'></a><a href='#L95'>95</a>
161
+ <a name='L96'></a><a href='#L96'>96</a>
162
+ <a name='L97'></a><a href='#L97'>97</a>
163
+ <a name='L98'></a><a href='#L98'>98</a>
164
+ <a name='L99'></a><a href='#L99'>99</a>
165
+ <a name='L100'></a><a href='#L100'>100</a>
166
+ <a name='L101'></a><a href='#L101'>101</a>
167
+ <a name='L102'></a><a href='#L102'>102</a>
168
+ <a name='L103'></a><a href='#L103'>103</a>
169
+ <a name='L104'></a><a href='#L104'>104</a>
170
+ <a name='L105'></a><a href='#L105'>105</a>
171
+ <a name='L106'></a><a href='#L106'>106</a>
172
+ <a name='L107'></a><a href='#L107'>107</a>
173
+ <a name='L108'></a><a href='#L108'>108</a>
174
+ <a name='L109'></a><a href='#L109'>109</a>
175
+ <a name='L110'></a><a href='#L110'>110</a>
176
+ <a name='L111'></a><a href='#L111'>111</a>
177
+ <a name='L112'></a><a href='#L112'>112</a>
178
+ <a name='L113'></a><a href='#L113'>113</a>
179
+ <a name='L114'></a><a href='#L114'>114</a>
180
+ <a name='L115'></a><a href='#L115'>115</a>
181
+ <a name='L116'></a><a href='#L116'>116</a>
182
+ <a name='L117'></a><a href='#L117'>117</a>
183
+ <a name='L118'></a><a href='#L118'>118</a>
184
+ <a name='L119'></a><a href='#L119'>119</a>
185
+ <a name='L120'></a><a href='#L120'>120</a>
186
+ <a name='L121'></a><a href='#L121'>121</a>
187
+ <a name='L122'></a><a href='#L122'>122</a>
188
+ <a name='L123'></a><a href='#L123'>123</a>
189
+ <a name='L124'></a><a href='#L124'>124</a>
190
+ <a name='L125'></a><a href='#L125'>125</a>
191
+ <a name='L126'></a><a href='#L126'>126</a>
192
+ <a name='L127'></a><a href='#L127'>127</a>
193
+ <a name='L128'></a><a href='#L128'>128</a>
194
+ <a name='L129'></a><a href='#L129'>129</a>
195
+ <a name='L130'></a><a href='#L130'>130</a>
196
+ <a name='L131'></a><a href='#L131'>131</a>
197
+ <a name='L132'></a><a href='#L132'>132</a>
198
+ <a name='L133'></a><a href='#L133'>133</a>
199
+ <a name='L134'></a><a href='#L134'>134</a>
200
+ <a name='L135'></a><a href='#L135'>135</a>
201
+ <a name='L136'></a><a href='#L136'>136</a>
202
+ <a name='L137'></a><a href='#L137'>137</a>
203
+ <a name='L138'></a><a href='#L138'>138</a>
204
+ <a name='L139'></a><a href='#L139'>139</a>
205
+ <a name='L140'></a><a href='#L140'>140</a>
206
+ <a name='L141'></a><a href='#L141'>141</a>
207
+ <a name='L142'></a><a href='#L142'>142</a>
208
+ <a name='L143'></a><a href='#L143'>143</a>
209
+ <a name='L144'></a><a href='#L144'>144</a>
210
+ <a name='L145'></a><a href='#L145'>145</a>
211
+ <a name='L146'></a><a href='#L146'>146</a>
212
+ <a name='L147'></a><a href='#L147'>147</a>
213
+ <a name='L148'></a><a href='#L148'>148</a>
214
+ <a name='L149'></a><a href='#L149'>149</a>
215
+ <a name='L150'></a><a href='#L150'>150</a>
216
+ <a name='L151'></a><a href='#L151'>151</a>
217
+ <a name='L152'></a><a href='#L152'>152</a>
218
+ <a name='L153'></a><a href='#L153'>153</a>
219
+ <a name='L154'></a><a href='#L154'>154</a>
220
+ <a name='L155'></a><a href='#L155'>155</a>
221
+ <a name='L156'></a><a href='#L156'>156</a>
222
+ <a name='L157'></a><a href='#L157'>157</a>
223
+ <a name='L158'></a><a href='#L158'>158</a>
224
+ <a name='L159'></a><a href='#L159'>159</a>
225
+ <a name='L160'></a><a href='#L160'>160</a>
226
+ <a name='L161'></a><a href='#L161'>161</a>
227
+ <a name='L162'></a><a href='#L162'>162</a>
228
+ <a name='L163'></a><a href='#L163'>163</a>
229
+ <a name='L164'></a><a href='#L164'>164</a>
230
+ <a name='L165'></a><a href='#L165'>165</a>
231
+ <a name='L166'></a><a href='#L166'>166</a>
232
+ <a name='L167'></a><a href='#L167'>167</a>
233
+ <a name='L168'></a><a href='#L168'>168</a>
234
+ <a name='L169'></a><a href='#L169'>169</a>
235
+ <a name='L170'></a><a href='#L170'>170</a>
236
+ <a name='L171'></a><a href='#L171'>171</a>
237
+ <a name='L172'></a><a href='#L172'>172</a>
238
+ <a name='L173'></a><a href='#L173'>173</a>
239
+ <a name='L174'></a><a href='#L174'>174</a>
240
+ <a name='L175'></a><a href='#L175'>175</a>
241
+ <a name='L176'></a><a href='#L176'>176</a>
242
+ <a name='L177'></a><a href='#L177'>177</a>
243
+ <a name='L178'></a><a href='#L178'>178</a>
244
+ <a name='L179'></a><a href='#L179'>179</a>
245
+ <a name='L180'></a><a href='#L180'>180</a>
246
+ <a name='L181'></a><a href='#L181'>181</a>
247
+ <a name='L182'></a><a href='#L182'>182</a>
248
+ <a name='L183'></a><a href='#L183'>183</a>
249
+ <a name='L184'></a><a href='#L184'>184</a>
250
+ <a name='L185'></a><a href='#L185'>185</a>
251
+ <a name='L186'></a><a href='#L186'>186</a>
252
+ <a name='L187'></a><a href='#L187'>187</a>
253
+ <a name='L188'></a><a href='#L188'>188</a>
254
+ <a name='L189'></a><a href='#L189'>189</a>
255
+ <a name='L190'></a><a href='#L190'>190</a>
256
+ <a name='L191'></a><a href='#L191'>191</a>
257
+ <a name='L192'></a><a href='#L192'>192</a>
258
+ <a name='L193'></a><a href='#L193'>193</a>
259
+ <a name='L194'></a><a href='#L194'>194</a>
260
+ <a name='L195'></a><a href='#L195'>195</a>
261
+ <a name='L196'></a><a href='#L196'>196</a>
262
+ <a name='L197'></a><a href='#L197'>197</a>
263
+ <a name='L198'></a><a href='#L198'>198</a>
264
+ <a name='L199'></a><a href='#L199'>199</a>
265
+ <a name='L200'></a><a href='#L200'>200</a>
266
+ <a name='L201'></a><a href='#L201'>201</a>
267
+ <a name='L202'></a><a href='#L202'>202</a>
268
+ <a name='L203'></a><a href='#L203'>203</a>
269
+ <a name='L204'></a><a href='#L204'>204</a>
270
+ <a name='L205'></a><a href='#L205'>205</a>
271
+ <a name='L206'></a><a href='#L206'>206</a>
272
+ <a name='L207'></a><a href='#L207'>207</a>
273
+ <a name='L208'></a><a href='#L208'>208</a>
274
+ <a name='L209'></a><a href='#L209'>209</a>
275
+ <a name='L210'></a><a href='#L210'>210</a>
276
+ <a name='L211'></a><a href='#L211'>211</a>
277
+ <a name='L212'></a><a href='#L212'>212</a>
278
+ <a name='L213'></a><a href='#L213'>213</a>
279
+ <a name='L214'></a><a href='#L214'>214</a>
280
+ <a name='L215'></a><a href='#L215'>215</a>
281
+ <a name='L216'></a><a href='#L216'>216</a>
282
+ <a name='L217'></a><a href='#L217'>217</a>
283
+ <a name='L218'></a><a href='#L218'>218</a>
284
+ <a name='L219'></a><a href='#L219'>219</a>
285
+ <a name='L220'></a><a href='#L220'>220</a>
286
+ <a name='L221'></a><a href='#L221'>221</a>
287
+ <a name='L222'></a><a href='#L222'>222</a>
288
+ <a name='L223'></a><a href='#L223'>223</a>
289
+ <a name='L224'></a><a href='#L224'>224</a>
290
+ <a name='L225'></a><a href='#L225'>225</a>
291
+ <a name='L226'></a><a href='#L226'>226</a>
292
+ <a name='L227'></a><a href='#L227'>227</a>
293
+ <a name='L228'></a><a href='#L228'>228</a>
294
+ <a name='L229'></a><a href='#L229'>229</a>
295
+ <a name='L230'></a><a href='#L230'>230</a>
296
+ <a name='L231'></a><a href='#L231'>231</a>
297
+ <a name='L232'></a><a href='#L232'>232</a>
298
+ <a name='L233'></a><a href='#L233'>233</a>
299
+ <a name='L234'></a><a href='#L234'>234</a>
300
+ <a name='L235'></a><a href='#L235'>235</a>
301
+ <a name='L236'></a><a href='#L236'>236</a>
302
+ <a name='L237'></a><a href='#L237'>237</a>
303
+ <a name='L238'></a><a href='#L238'>238</a>
304
+ <a name='L239'></a><a href='#L239'>239</a>
305
+ <a name='L240'></a><a href='#L240'>240</a>
306
+ <a name='L241'></a><a href='#L241'>241</a>
307
+ <a name='L242'></a><a href='#L242'>242</a>
308
+ <a name='L243'></a><a href='#L243'>243</a>
309
+ <a name='L244'></a><a href='#L244'>244</a>
310
+ <a name='L245'></a><a href='#L245'>245</a>
311
+ <a name='L246'></a><a href='#L246'>246</a>
312
+ <a name='L247'></a><a href='#L247'>247</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
313
+ <span class="cline-any cline-neutral">&nbsp;</span>
314
+ <span class="cline-any cline-neutral">&nbsp;</span>
315
+ <span class="cline-any cline-neutral">&nbsp;</span>
316
+ <span class="cline-any cline-neutral">&nbsp;</span>
317
+ <span class="cline-any cline-yes">1x</span>
318
+ <span class="cline-any cline-yes">1x</span>
319
+ <span class="cline-any cline-neutral">&nbsp;</span>
320
+ <span class="cline-any cline-neutral">&nbsp;</span>
321
+ <span class="cline-any cline-neutral">&nbsp;</span>
322
+ <span class="cline-any cline-neutral">&nbsp;</span>
323
+ <span class="cline-any cline-yes">36x</span>
324
+ <span class="cline-any cline-neutral">&nbsp;</span>
325
+ <span class="cline-any cline-yes">36x</span>
326
+ <span class="cline-any cline-neutral">&nbsp;</span>
327
+ <span class="cline-any cline-no">&nbsp;</span>
328
+ <span class="cline-any cline-neutral">&nbsp;</span>
329
+ <span class="cline-any cline-neutral">&nbsp;</span>
330
+ <span class="cline-any cline-yes">1x</span>
331
+ <span class="cline-any cline-neutral">&nbsp;</span>
332
+ <span class="cline-any cline-neutral">&nbsp;</span>
333
+ <span class="cline-any cline-neutral">&nbsp;</span>
334
+ <span class="cline-any cline-neutral">&nbsp;</span>
335
+ <span class="cline-any cline-neutral">&nbsp;</span>
336
+ <span class="cline-any cline-neutral">&nbsp;</span>
337
+ <span class="cline-any cline-neutral">&nbsp;</span>
338
+ <span class="cline-any cline-neutral">&nbsp;</span>
339
+ <span class="cline-any cline-neutral">&nbsp;</span>
340
+ <span class="cline-any cline-neutral">&nbsp;</span>
341
+ <span class="cline-any cline-neutral">&nbsp;</span>
342
+ <span class="cline-any cline-neutral">&nbsp;</span>
343
+ <span class="cline-any cline-neutral">&nbsp;</span>
344
+ <span class="cline-any cline-neutral">&nbsp;</span>
345
+ <span class="cline-any cline-neutral">&nbsp;</span>
346
+ <span class="cline-any cline-neutral">&nbsp;</span>
347
+ <span class="cline-any cline-neutral">&nbsp;</span>
348
+ <span class="cline-any cline-neutral">&nbsp;</span>
349
+ <span class="cline-any cline-neutral">&nbsp;</span>
350
+ <span class="cline-any cline-yes">1x</span>
351
+ <span class="cline-any cline-neutral">&nbsp;</span>
352
+ <span class="cline-any cline-neutral">&nbsp;</span>
353
+ <span class="cline-any cline-yes">28x</span>
354
+ <span class="cline-any cline-yes">22x</span>
355
+ <span class="cline-any cline-yes">15x</span>
356
+ <span class="cline-any cline-yes">4x</span>
357
+ <span class="cline-any cline-neutral">&nbsp;</span>
358
+ <span class="cline-any cline-neutral">&nbsp;</span>
359
+ <span class="cline-any cline-yes">18x</span>
360
+ <span class="cline-any cline-neutral">&nbsp;</span>
361
+ <span class="cline-any cline-neutral">&nbsp;</span>
362
+ <span class="cline-any cline-neutral">&nbsp;</span>
363
+ <span class="cline-any cline-yes">18x</span>
364
+ <span class="cline-any cline-neutral">&nbsp;</span>
365
+ <span class="cline-any cline-neutral">&nbsp;</span>
366
+ <span class="cline-any cline-neutral">&nbsp;</span>
367
+ <span class="cline-any cline-neutral">&nbsp;</span>
368
+ <span class="cline-any cline-neutral">&nbsp;</span>
369
+ <span class="cline-any cline-neutral">&nbsp;</span>
370
+ <span class="cline-any cline-neutral">&nbsp;</span>
371
+ <span class="cline-any cline-neutral">&nbsp;</span>
372
+ <span class="cline-any cline-neutral">&nbsp;</span>
373
+ <span class="cline-any cline-neutral">&nbsp;</span>
374
+ <span class="cline-any cline-neutral">&nbsp;</span>
375
+ <span class="cline-any cline-neutral">&nbsp;</span>
376
+ <span class="cline-any cline-neutral">&nbsp;</span>
377
+ <span class="cline-any cline-neutral">&nbsp;</span>
378
+ <span class="cline-any cline-neutral">&nbsp;</span>
379
+ <span class="cline-any cline-neutral">&nbsp;</span>
380
+ <span class="cline-any cline-yes">1x</span>
381
+ <span class="cline-any cline-neutral">&nbsp;</span>
382
+ <span class="cline-any cline-neutral">&nbsp;</span>
383
+ <span class="cline-any cline-neutral">&nbsp;</span>
384
+ <span class="cline-any cline-yes">4x</span>
385
+ <span class="cline-any cline-no">&nbsp;</span>
386
+ <span class="cline-any cline-yes">13x</span>
387
+ <span class="cline-any cline-yes">11x</span>
388
+ <span class="cline-any cline-yes">2x</span>
389
+ <span class="cline-any cline-yes">13x</span>
390
+ <span class="cline-any cline-yes">8x</span>
391
+ <span class="cline-any cline-yes">8x</span>
392
+ <span class="cline-any cline-yes">2x</span>
393
+ <span class="cline-any cline-yes">2x</span>
394
+ <span class="cline-any cline-no">&nbsp;</span>
395
+ <span class="cline-any cline-neutral">&nbsp;</span>
396
+ <span class="cline-any cline-neutral">&nbsp;</span>
397
+ <span class="cline-any cline-yes">11x</span>
398
+ <span class="cline-any cline-yes">11x</span>
399
+ <span class="cline-any cline-yes">11x</span>
400
+ <span class="cline-any cline-neutral">&nbsp;</span>
401
+ <span class="cline-any cline-neutral">&nbsp;</span>
402
+ <span class="cline-any cline-neutral">&nbsp;</span>
403
+ <span class="cline-any cline-yes">11x</span>
404
+ <span class="cline-any cline-neutral">&nbsp;</span>
405
+ <span class="cline-any cline-neutral">&nbsp;</span>
406
+ <span class="cline-any cline-neutral">&nbsp;</span>
407
+ <span class="cline-any cline-neutral">&nbsp;</span>
408
+ <span class="cline-any cline-neutral">&nbsp;</span>
409
+ <span class="cline-any cline-neutral">&nbsp;</span>
410
+ <span class="cline-any cline-neutral">&nbsp;</span>
411
+ <span class="cline-any cline-neutral">&nbsp;</span>
412
+ <span class="cline-any cline-neutral">&nbsp;</span>
413
+ <span class="cline-any cline-neutral">&nbsp;</span>
414
+ <span class="cline-any cline-neutral">&nbsp;</span>
415
+ <span class="cline-any cline-neutral">&nbsp;</span>
416
+ <span class="cline-any cline-neutral">&nbsp;</span>
417
+ <span class="cline-any cline-yes">1x</span>
418
+ <span class="cline-any cline-neutral">&nbsp;</span>
419
+ <span class="cline-any cline-neutral">&nbsp;</span>
420
+ <span class="cline-any cline-neutral">&nbsp;</span>
421
+ <span class="cline-any cline-yes">8x</span>
422
+ <span class="cline-any cline-yes">9x</span>
423
+ <span class="cline-any cline-yes">4x</span>
424
+ <span class="cline-any cline-yes">12x</span>
425
+ <span class="cline-any cline-neutral">&nbsp;</span>
426
+ <span class="cline-any cline-yes">5x</span>
427
+ <span class="cline-any cline-yes">5x</span>
428
+ <span class="cline-any cline-yes">5x</span>
429
+ <span class="cline-any cline-neutral">&nbsp;</span>
430
+ <span class="cline-any cline-neutral">&nbsp;</span>
431
+ <span class="cline-any cline-neutral">&nbsp;</span>
432
+ <span class="cline-any cline-yes">5x</span>
433
+ <span class="cline-any cline-neutral">&nbsp;</span>
434
+ <span class="cline-any cline-neutral">&nbsp;</span>
435
+ <span class="cline-any cline-neutral">&nbsp;</span>
436
+ <span class="cline-any cline-neutral">&nbsp;</span>
437
+ <span class="cline-any cline-yes">1x</span>
438
+ <span class="cline-any cline-neutral">&nbsp;</span>
439
+ <span class="cline-any cline-neutral">&nbsp;</span>
440
+ <span class="cline-any cline-yes">1x</span>
441
+ <span class="cline-any cline-neutral">&nbsp;</span>
442
+ <span class="cline-any cline-neutral">&nbsp;</span>
443
+ <span class="cline-any cline-neutral">&nbsp;</span>
444
+ <span class="cline-any cline-neutral">&nbsp;</span>
445
+ <span class="cline-any cline-neutral">&nbsp;</span>
446
+ <span class="cline-any cline-neutral">&nbsp;</span>
447
+ <span class="cline-any cline-neutral">&nbsp;</span>
448
+ <span class="cline-any cline-neutral">&nbsp;</span>
449
+ <span class="cline-any cline-yes">1x</span>
450
+ <span class="cline-any cline-neutral">&nbsp;</span>
451
+ <span class="cline-any cline-neutral">&nbsp;</span>
452
+ <span class="cline-any cline-neutral">&nbsp;</span>
453
+ <span class="cline-any cline-neutral">&nbsp;</span>
454
+ <span class="cline-any cline-neutral">&nbsp;</span>
455
+ <span class="cline-any cline-neutral">&nbsp;</span>
456
+ <span class="cline-any cline-yes">1x</span>
457
+ <span class="cline-any cline-neutral">&nbsp;</span>
458
+ <span class="cline-any cline-neutral">&nbsp;</span>
459
+ <span class="cline-any cline-neutral">&nbsp;</span>
460
+ <span class="cline-any cline-neutral">&nbsp;</span>
461
+ <span class="cline-any cline-neutral">&nbsp;</span>
462
+ <span class="cline-any cline-neutral">&nbsp;</span>
463
+ <span class="cline-any cline-neutral">&nbsp;</span>
464
+ <span class="cline-any cline-yes">51x</span>
465
+ <span class="cline-any cline-yes">28x</span>
466
+ <span class="cline-any cline-yes">23x</span>
467
+ <span class="cline-any cline-yes">1x</span>
468
+ <span class="cline-any cline-neutral">&nbsp;</span>
469
+ <span class="cline-any cline-neutral">&nbsp;</span>
470
+ <span class="cline-any cline-yes">51x</span>
471
+ <span class="cline-any cline-yes">29x</span>
472
+ <span class="cline-any cline-yes">5x</span>
473
+ <span class="cline-any cline-yes">24x</span>
474
+ <span class="cline-any cline-yes">13x</span>
475
+ <span class="cline-any cline-yes">11x</span>
476
+ <span class="cline-any cline-yes">11x</span>
477
+ <span class="cline-any cline-neutral">&nbsp;</span>
478
+ <span class="cline-any cline-neutral">&nbsp;</span>
479
+ <span class="cline-any cline-neutral">&nbsp;</span>
480
+ <span class="cline-any cline-neutral">&nbsp;</span>
481
+ <span class="cline-any cline-neutral">&nbsp;</span>
482
+ <span class="cline-any cline-neutral">&nbsp;</span>
483
+ <span class="cline-any cline-yes">51x</span>
484
+ <span class="cline-any cline-yes">22x</span>
485
+ <span class="cline-any cline-yes">22x</span>
486
+ <span class="cline-any cline-yes">2x</span>
487
+ <span class="cline-any cline-yes">20x</span>
488
+ <span class="cline-any cline-yes">2x</span>
489
+ <span class="cline-any cline-yes">18x</span>
490
+ <span class="cline-any cline-yes">1x</span>
491
+ <span class="cline-any cline-neutral">&nbsp;</span>
492
+ <span class="cline-any cline-yes">17x</span>
493
+ <span class="cline-any cline-neutral">&nbsp;</span>
494
+ <span class="cline-any cline-neutral">&nbsp;</span>
495
+ <span class="cline-any cline-neutral">&nbsp;</span>
496
+ <span class="cline-any cline-neutral">&nbsp;</span>
497
+ <span class="cline-any cline-neutral">&nbsp;</span>
498
+ <span class="cline-any cline-yes">5x</span>
499
+ <span class="cline-any cline-no">&nbsp;</span>
500
+ <span class="cline-any cline-neutral">&nbsp;</span>
501
+ <span class="cline-any cline-yes">5x</span>
502
+ <span class="cline-any cline-yes">4x</span>
503
+ <span class="cline-any cline-yes">4x</span>
504
+ <span class="cline-any cline-yes">4x</span>
505
+ <span class="cline-any cline-neutral">&nbsp;</span>
506
+ <span class="cline-any cline-no">&nbsp;</span>
507
+ <span class="cline-any cline-neutral">&nbsp;</span>
508
+ <span class="cline-any cline-neutral">&nbsp;</span>
509
+ <span class="cline-any cline-neutral">&nbsp;</span>
510
+ <span class="cline-any cline-neutral">&nbsp;</span>
511
+ <span class="cline-any cline-neutral">&nbsp;</span>
512
+ <span class="cline-any cline-yes">14x</span>
513
+ <span class="cline-any cline-no">&nbsp;</span>
514
+ <span class="cline-any cline-neutral">&nbsp;</span>
515
+ <span class="cline-any cline-neutral">&nbsp;</span>
516
+ <span class="cline-any cline-yes">14x</span>
517
+ <span class="cline-any cline-yes">4x</span>
518
+ <span class="cline-any cline-yes">4x</span>
519
+ <span class="cline-any cline-yes">4x</span>
520
+ <span class="cline-any cline-neutral">&nbsp;</span>
521
+ <span class="cline-any cline-yes">10x</span>
522
+ <span class="cline-any cline-yes">10x</span>
523
+ <span class="cline-any cline-neutral">&nbsp;</span>
524
+ <span class="cline-any cline-neutral">&nbsp;</span>
525
+ <span class="cline-any cline-yes">14x</span>
526
+ <span class="cline-any cline-yes">14x</span>
527
+ <span class="cline-any cline-yes">14x</span>
528
+ <span class="cline-any cline-yes">14x</span>
529
+ <span class="cline-any cline-neutral">&nbsp;</span>
530
+ <span class="cline-any cline-neutral">&nbsp;</span>
531
+ <span class="cline-any cline-neutral">&nbsp;</span>
532
+ <span class="cline-any cline-neutral">&nbsp;</span>
533
+ <span class="cline-any cline-yes">2x</span>
534
+ <span class="cline-any cline-no">&nbsp;</span>
535
+ <span class="cline-any cline-neutral">&nbsp;</span>
536
+ <span class="cline-any cline-yes">2x</span>
537
+ <span class="cline-any cline-yes">2x</span>
538
+ <span class="cline-any cline-yes">2x</span>
539
+ <span class="cline-any cline-yes">2x</span>
540
+ <span class="cline-any cline-no">&nbsp;</span>
541
+ <span class="cline-any cline-yes">2x</span>
542
+ <span class="cline-any cline-no">&nbsp;</span>
543
+ <span class="cline-any cline-neutral">&nbsp;</span>
544
+ <span class="cline-any cline-yes">2x</span>
545
+ <span class="cline-any cline-neutral">&nbsp;</span>
546
+ <span class="cline-any cline-yes">2x</span>
547
+ <span class="cline-any cline-yes">2x</span>
548
+ <span class="cline-any cline-neutral">&nbsp;</span>
549
+ <span class="cline-any cline-yes">2x</span>
550
+ <span class="cline-any cline-neutral">&nbsp;</span>
551
+ <span class="cline-any cline-no">&nbsp;</span>
552
+ <span class="cline-any cline-neutral">&nbsp;</span>
553
+ <span class="cline-any cline-neutral">&nbsp;</span>
554
+ <span class="cline-any cline-neutral">&nbsp;</span>
555
+ <span class="cline-any cline-neutral">&nbsp;</span>
556
+ <span class="cline-any cline-neutral">&nbsp;</span>
557
+ <span class="cline-any cline-neutral">&nbsp;</span>
558
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">/*---------------------------------------------------------------------------------------------
559
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
560
+ * See LICENSE.md in the project root for license terms and full copyright notice.
561
+ *--------------------------------------------------------------------------------------------*/
562
+ &nbsp;
563
+ import { Logger } from "@itwin/core-bentley";
564
+ import { ColorDef } from "@itwin/core-common";
565
+ import { ArcGisFeatureGeometryType } from "./ArcGisFeatureQuery";
566
+ &nbsp;
567
+ // Convert a channel array [r, g, b, a] to ColorDef
568
+ function colorFromArray(channels?: number[]) {
569
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (channels &amp;&amp; channels.length === 4) {
570
+ // Alpha channel is reversed, 255 = opaque
571
+ return ColorDef.from(channels[0], channels[1], channels[2], 255 - channels[3]);
572
+ }
573
+ <span class="cstat-no" title="statement not covered" > return undefined;</span>
574
+ }
575
+ &nbsp;
576
+ const loggerCategory = "MapLayersFormats.ArcGISFeature";
577
+ &nbsp;
578
+ /** @internal */
579
+ export type EsriSymbolType = "esriSFS" | "esriPMS" | "esriSLS" | "esriSMS" | "esriTS" | "CIMSymbolReference";
580
+ interface EsriSymbol {
581
+ type: EsriSymbolType;
582
+ }
583
+ &nbsp;
584
+ /** @internal */
585
+ export type EsriSLSStyle = "esriSLSDash" | "esriSLSDashDot" | "esriSLSDashDotDot" | "esriSLSDot" | "esriSLSLongDash" | "esriSLSLongDashDot" |
586
+ "esriSLSNull" | "esriSLSShortDash" | "esriSLSShortDashDot" | "esriSLSShortDashDotDot" | "esriSLSShortDot" | "esriSLSSolid";
587
+ &nbsp;
588
+ interface EsriSLSProps {
589
+ color: number[];
590
+ type: EsriSymbolType;
591
+ width: number;
592
+ style: EsriSLSStyle;
593
+ }
594
+ &nbsp;
595
+ /** @internal */
596
+ export class EsriSLS implements EsriSymbol {
597
+ public readonly props: EsriSLSProps;
598
+ &nbsp;
599
+ public get color() { return colorFromArray(this.props.color); }
600
+ public get type() { return this.props.type; }
601
+ public get width() { return this.props.width; }
602
+ public get style() { return this.props.style; }
603
+ &nbsp;
604
+ constructor(json: EsriSLSProps) {
605
+ this.props = json;
606
+ }
607
+ &nbsp;
608
+ public static fromJSON(json: EsriSLSProps) {
609
+ return new EsriSLS(json);
610
+ }
611
+ }
612
+ &nbsp;
613
+ interface EsriPMSProps {
614
+ type: EsriSymbolType;
615
+ url: string;
616
+ imageData: string;
617
+ contentType: string;
618
+ width?: number;
619
+ height?: number;
620
+ xoffset?: number;
621
+ yoffset?: number;
622
+ angle?: number;
623
+ }
624
+ &nbsp;
625
+ /** @internal */
626
+ export class EsriPMS implements EsriSymbol {
627
+ public readonly props: EsriPMSProps;
628
+ private _image: HTMLImageElement;
629
+ &nbsp;
630
+ public get type() { return this.props.type; }
631
+ <span class="fstat-no" title="function not covered" > public get u</span>rl() { <span class="cstat-no" title="statement not covered" >return this.props.url; </span>}
632
+ public get imageData() { return this.props.imageData; }
633
+ public get imageUrl() { return `data:${this.contentType};base64,${this.imageData}`; }
634
+ public get image() { return this._image; }
635
+ public get contentType() { return this.props.contentType; }
636
+ public get width() { return this.props.width; }
637
+ public get height() { return this.props.height; }
638
+ public get xoffset() { return this.props.xoffset; }
639
+ public get yoffset() { return this.props.yoffset; }
640
+ <span class="fstat-no" title="function not covered" > public get a</span>ngle() { <span class="cstat-no" title="statement not covered" >return this.props.angle; </span>}
641
+ &nbsp;
642
+ constructor(json: EsriPMSProps) {
643
+ this.props = json;
644
+ this._image = new Image();
645
+ this._image.src = this.imageUrl;
646
+ }
647
+ &nbsp;
648
+ public static fromJSON(json: EsriPMSProps) {
649
+ return new EsriPMS(json);
650
+ }
651
+ }
652
+ &nbsp;
653
+ /** @internal */
654
+ export type EsriSFSStyleProps = "esriSFSBackwardDiagonal" | "esriSFSCross" | "esriSFSDiagonalCross" | "esriSFSForwardDiagonal" | "esriSFSHorizontal" | "esriSFSNull" | "esriSFSSolid" | "esriSFSVertical";
655
+ interface EsriSFSProps {
656
+ color?: number[];
657
+ type: EsriSymbolType;
658
+ style: EsriSFSStyleProps;
659
+ outline?: EsriSLSProps;
660
+ }
661
+ &nbsp;
662
+ /** @internal */
663
+ export class EsriSFS implements EsriSymbol {
664
+ public readonly props: EsriSFSProps;
665
+ private _outline: EsriSLS | undefined;
666
+ &nbsp;
667
+ public get color() { return colorFromArray(this.props.color); }
668
+ public get type() { return this.props.type; }
669
+ public get style() { return this.props.style; }
670
+ public get outline() { return this._outline; }
671
+ constructor(json: EsriSFSProps) {
672
+ this.props = json;
673
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (json.outline)
674
+ this._outline = EsriSLS.fromJSON(json.outline);
675
+ }
676
+ &nbsp;
677
+ public static fromJSON(json: EsriSFSProps): EsriSFS {
678
+ return new EsriSFS(json);
679
+ }
680
+ }
681
+ &nbsp;
682
+ /** @internal */
683
+ export class ArcGisSymbologyRenderer {
684
+ private _symbol: EsriSymbol | undefined;
685
+ &nbsp;
686
+ private static readonly defaultPMS: EsriPMSProps = {
687
+ type: "esriPMS",
688
+ url: "",
689
+ contentType: "image/png",
690
+ imageData: "iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAAXNSR0IB2cksfwAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAT9JREFUOI2t1E8rRGEUx/HvMHViIm5ZXGt/3gFlwdKGhYjyAmxs7IassDHFyguwwkbZYJKNslVWJDZT1C3psRv9NMpmJk/Tvc3MHWf3/PuccxbPyfKPkW1wPmBmQ5L6giB4d849Al+tYjNAHpiQ1AHgnAMoA+dhGG5HUfTQCOsCDoGlhCTdwGIURfPVZPtJWCdwBkwntVF3d6+K78Rh+SYhP7bM7FbSjY8FwHqLEEBGUgEY97E5oCcFBjAGDAMvNWwyJVSLKR8L28QG4a/N7zYx+VipTazkY0VgNSVUAa597MrMniWNpMBOAOdjFUlrwAWQaQFywGZt4f+AIrAB7DYJlc1sQdJrHAZQAN6AA6A/STGzp1wut+ycu/f340bQEXAJrACzwCjQC3wAd8CppGNJP/UPk+bZZ7XKQlJ1cfEL1AZaAcKna+kAAAAASUVORK5CYII=",
691
+ width: 14,
692
+ height: 14,
693
+ };
694
+ &nbsp;
695
+ private static readonly defaultSLS: EsriSLSProps = {
696
+ type: "esriSLS",
697
+ color: [0, 0.0],
698
+ width: 1,
699
+ style: "esriSLSSolid",
700
+ };
701
+ &nbsp;
702
+ private static readonly defaultSFS: EsriSFSProps = {
703
+ type: "esriSFS",
704
+ color: [0, 0.0],
705
+ style: "esriSFSSolid",
706
+ };
707
+ &nbsp;
708
+ constructor(geometryType: ArcGisFeatureGeometryType, rendererDefinition: any) {
709
+ let symbol;
710
+ if (rendererDefinition?.symbol !== undefined) {
711
+ symbol = rendererDefinition.symbol;
712
+ } else if (rendererDefinition?.defaultSymbol !== undefined) {
713
+ symbol = rendererDefinition<span class="branch-0 cbranch-no" title="branch not covered" >?.d</span>efaultSymbol;
714
+ }
715
+ &nbsp;
716
+ if (symbol !== undefined) {
717
+ if (symbol.type === "esriSFS") {
718
+ this._symbol = EsriSFS.fromJSON(symbol);
719
+ } else if (symbol.type === "esriSLS") {
720
+ this._symbol = EsriSLS.fromJSON(symbol);
721
+ } else <span class="missing-if-branch" title="else path not taken" >E</span>if (symbol.type === "esriPMS") {
722
+ this._symbol = EsriPMS.fromJSON(symbol);
723
+ }
724
+ }
725
+ &nbsp;
726
+ // If '_symbol' is still undefined at this point, that means we could not find
727
+ // any symbology definition from the metadata, let's use some default symbology
728
+ // so that we display at least something.
729
+ if (this._symbol === undefined) {
730
+ Logger.logWarning(loggerCategory, "Symbology definition not supported, using default symbology");
731
+ if (geometryType === "esriGeometryPoint" || geometryType === "esriGeometryMultipoint") {
732
+ this._symbol = ArcGisSymbologyRenderer.defaultPMS;
733
+ } else if (geometryType === "esriGeometryLine" || geometryType === "esriGeometryPolyline") {
734
+ this._symbol = ArcGisSymbologyRenderer.defaultSLS;
735
+ } else if (geometryType === "esriGeometryPolygon") {
736
+ this._symbol = ArcGisSymbologyRenderer.defaultSFS;
737
+ } else {
738
+ Logger.logError(loggerCategory, "Could not determine default symbology: geometry type not supported");
739
+ }
740
+ }
741
+ }
742
+ &nbsp;
743
+ public applyFillStyle(context: CanvasRenderingContext2D) {
744
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (!context)
745
+ <span class="cstat-no" title="statement not covered" > return;</span>
746
+ &nbsp;
747
+ if (this._symbol<span class="branch-0 cbranch-no" title="branch not covered" >?.t</span>ype === "esriSFS") {
748
+ const sfs = this._symbol as EsriSFS;
749
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (sfs.style === "esriSFSSolid" &amp;&amp; sfs.color) {
750
+ context.fillStyle = sfs.color.toRgbaString();
751
+ } else {
752
+ <span class="cstat-no" title="statement not covered" > context.fillStyle = ColorDef.from(200, 0, 0, 100).toRgbaString(); </span> // default color is red?
753
+ }
754
+ }
755
+ }
756
+ &nbsp;
757
+ public applyStrokeStyle(context: CanvasRenderingContext2D) {
758
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (!context)
759
+ <span class="cstat-no" title="statement not covered" > return;</span>
760
+ &nbsp;
761
+ let sls: EsriSLS | undefined;
762
+ if (this._symbol<span class="branch-0 cbranch-no" title="branch not covered" >?.t</span>ype === "esriSFS") {
763
+ const sfs = this._symbol as EsriSFS;
764
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (sfs.outline &amp;&amp; sfs.outline.style === "esriSLSSolid") {
765
+ sls = sfs.outline;
766
+ }
767
+ } else <span class="missing-if-branch" title="else path not taken" >E</span>if (this._symbol<span class="branch-0 cbranch-no" title="branch not covered" >?.t</span>ype === "esriSLS") {
768
+ sls = this._symbol as EsriSLS;
769
+ }
770
+ &nbsp;
771
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (sls) {
772
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (sls.color)
773
+ context.strokeStyle = sls.color.toRgbaString();
774
+ context.lineWidth = sls.width; // TODO: Should we scale this value here?
775
+ }
776
+ }
777
+ &nbsp;
778
+ public drawPoint(context: CanvasRenderingContext2D, ptX: number, ptY: number) {
779
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (!context)
780
+ <span class="cstat-no" title="statement not covered" > return;</span>
781
+ &nbsp;
782
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (this._symbol<span class="branch-0 cbranch-no" title="branch not covered" >?.t</span>ype === "esriPMS") {
783
+ const pms = this._symbol as EsriPMS;
784
+ let xOffset = 0, yOffset = 0;
785
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (pms.xoffset)
786
+ <span class="cstat-no" title="statement not covered" > xOffset = pms.xoffset;</span>
787
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (pms.yoffset)
788
+ <span class="cstat-no" title="statement not covered" > yOffset = pms.yoffset;</span>
789
+ &nbsp;
790
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (pms.width &amp;&amp; pms.height) {
791
+ // // make sure the marker is centered on the point
792
+ xOffset += pms.width * -0.5;
793
+ yOffset += pms.height * -0.5;
794
+ &nbsp;
795
+ context.drawImage(pms.image, ptX + xOffset, ptY + yOffset, pms.width, pms.height);
796
+ } else {
797
+ <span class="cstat-no" title="statement not covered" > context.drawImage(pms.image, ptX + xOffset, ptY + yOffset);</span>
798
+ }
799
+ &nbsp;
800
+ // TODO: marker rotation angle
801
+ }
802
+ }
803
+ }
804
+ &nbsp;</pre></td></tr></table></pre>
805
+
806
+ <div class='push'></div><!-- for sticky footer -->
807
+ </div><!-- /wrapper -->
808
+ <div class='footer quiet pad2 space-top1 center small'>
809
+ Code coverage generated by
810
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
811
+ at 2022-11-01T05:16:36.750Z
812
+ </div>
813
+ <script src="../../prettify.js"></script>
814
+ <script>
815
+ window.onload = function () {
816
+ prettyPrint();
817
+ };
818
+ </script>
819
+ <script src="../../sorter.js"></script>
820
+ <script src="../../block-navigation.js"></script>
821
+ </body>
822
+ </html>
823
+