@loaders.gl/wms 3.4.0-alpha.1 → 3.4.0-alpha.3

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 (428) hide show
  1. package/dist/csw-capabilities-loader.d.ts +29 -0
  2. package/dist/csw-capabilities-loader.d.ts.map +1 -0
  3. package/dist/csw-capabilities-loader.js +31 -0
  4. package/dist/csw-domain-loader.d.ts +28 -0
  5. package/dist/csw-domain-loader.d.ts.map +1 -0
  6. package/dist/csw-domain-loader.js +31 -0
  7. package/dist/csw-records-loader.d.ts +12 -0
  8. package/dist/csw-records-loader.d.ts.map +1 -0
  9. package/dist/csw-records-loader.js +30 -0
  10. package/dist/dist.min.js +3951 -3986
  11. package/dist/es5/csw-capabilities-loader.js +51 -0
  12. package/dist/es5/csw-capabilities-loader.js.map +1 -0
  13. package/dist/es5/csw-domain-loader.js +51 -0
  14. package/dist/es5/csw-domain-loader.js.map +1 -0
  15. package/dist/es5/csw-records-loader.js +49 -0
  16. package/dist/es5/csw-records-loader.js.map +1 -0
  17. package/dist/es5/{wip/gml-loader.js → gml-loader.js} +9 -12
  18. package/dist/es5/gml-loader.js.map +1 -0
  19. package/dist/es5/index.js +39 -11
  20. package/dist/es5/index.js.map +1 -1
  21. package/dist/es5/lerc-loader.js +17 -22
  22. package/dist/es5/lerc-loader.js.map +1 -1
  23. package/dist/es5/lib/{data-sources/create-image-source.js → create-image-source.js} +5 -6
  24. package/dist/es5/lib/create-image-source.js.map +1 -0
  25. package/dist/es5/lib/parsers/csw/parse-csw-capabilities.js +24 -0
  26. package/dist/es5/lib/parsers/csw/parse-csw-capabilities.js.map +1 -0
  27. package/dist/es5/lib/parsers/csw/parse-csw-domain.js +42 -0
  28. package/dist/es5/lib/parsers/csw/parse-csw-domain.js.map +1 -0
  29. package/dist/es5/lib/parsers/csw/parse-csw-records.js +75 -0
  30. package/dist/es5/lib/parsers/csw/parse-csw-records.js.map +1 -0
  31. package/dist/es5/lib/parsers/csw/parse-exception-report.js +16 -0
  32. package/dist/es5/lib/parsers/csw/parse-exception-report.js.map +1 -0
  33. package/dist/es5/lib/{gml → parsers/gml}/deep-strict-equal.js +0 -8
  34. package/dist/es5/lib/parsers/gml/deep-strict-equal.js.map +1 -0
  35. package/dist/es5/lib/{gml → parsers/gml}/parse-gml.js +1 -13
  36. package/dist/es5/lib/parsers/gml/parse-gml.js.map +1 -0
  37. package/dist/es5/lib/parsers/lerc/lerc-types.js.map +1 -0
  38. package/dist/es5/lib/parsers/wms/parse-wms-capabilities.js +237 -0
  39. package/dist/es5/lib/parsers/wms/parse-wms-capabilities.js.map +1 -0
  40. package/dist/es5/lib/parsers/wms/parse-wms-error.js +15 -0
  41. package/dist/es5/lib/parsers/wms/parse-wms-error.js.map +1 -0
  42. package/dist/es5/lib/parsers/wms/parse-wms-features.js +32 -0
  43. package/dist/es5/lib/parsers/wms/parse-wms-features.js.map +1 -0
  44. package/dist/es5/lib/parsers/wms/parse-wms-layer-description.js +12 -0
  45. package/dist/es5/lib/parsers/wms/parse-wms-layer-description.js.map +1 -0
  46. package/dist/es5/lib/parsers/xml/parse-xml-helpers.js +67 -0
  47. package/dist/es5/lib/parsers/xml/parse-xml-helpers.js.map +1 -0
  48. package/dist/es5/lib/{data-sources/image-services → services/arcgis}/arcgis-image-service.js +68 -80
  49. package/dist/es5/lib/services/arcgis/arcgis-image-service.js.map +1 -0
  50. package/dist/es5/lib/services/arcgis/arcgis-server.js +111 -0
  51. package/dist/es5/lib/services/arcgis/arcgis-server.js.map +1 -0
  52. package/dist/es5/lib/{data-sources/adhoc-image-service.js → services/generic/image-service.js} +44 -50
  53. package/dist/es5/lib/services/generic/image-service.js.map +1 -0
  54. package/dist/es5/lib/services/generic/tile-service.js +2 -0
  55. package/dist/es5/lib/services/generic/tile-service.js.map +1 -0
  56. package/dist/es5/lib/services/ogc/csw-service.js +359 -0
  57. package/dist/es5/lib/services/ogc/csw-service.js.map +1 -0
  58. package/dist/es5/lib/services/ogc/wms-service.js +486 -0
  59. package/dist/es5/lib/services/ogc/wms-service.js.map +1 -0
  60. package/dist/es5/lib/services/ogc/wmts-service.ts.disabled +348 -0
  61. package/dist/es5/lib/sources/data-source.js +39 -0
  62. package/dist/es5/lib/sources/data-source.js.map +1 -0
  63. package/dist/es5/lib/sources/image-source.js +26 -0
  64. package/dist/es5/lib/sources/image-source.js.map +1 -0
  65. package/dist/es5/lib/sources/tile-source.js +26 -0
  66. package/dist/es5/lib/sources/tile-source.js.map +1 -0
  67. package/dist/es5/lib/sources/utils/utils.js +36 -0
  68. package/dist/es5/lib/sources/utils/utils.js.map +1 -0
  69. package/dist/es5/wip/arcgis-feature-service.js +2 -7
  70. package/dist/es5/wip/arcgis-feature-service.js.map +1 -1
  71. package/dist/es5/wip/data-source.js +0 -2
  72. package/dist/es5/{lib/wfs/parse-wfs.js → wip/lib/wcs/parse-wcs-capabilities.js} +7 -29
  73. package/dist/es5/wip/lib/wcs/parse-wcs-capabilities.js.map +1 -0
  74. package/dist/es5/{lib/wcs/parse-wcs.js → wip/lib/wfs/parse-wfs-capabilities.js} +7 -28
  75. package/dist/es5/wip/lib/wfs/parse-wfs-capabilities.js.map +1 -0
  76. package/dist/es5/{lib/wmts/parse-wmts.js → wip/lib/wmts/parse-wmts-capabilities.js} +7 -28
  77. package/dist/es5/wip/lib/wmts/parse-wmts-capabilities.js.map +1 -0
  78. package/dist/es5/wip/wcs-capabilities-loader.js +9 -12
  79. package/dist/es5/wip/wcs-capabilities-loader.js.map +1 -1
  80. package/dist/es5/wip/wfs-capabilities-loader.js +9 -12
  81. package/dist/es5/wip/wfs-capabilities-loader.js.map +1 -1
  82. package/dist/es5/wip/wms-feature-info-loader.js +8 -10
  83. package/dist/es5/wip/wms-feature-info-loader.js.map +1 -1
  84. package/dist/es5/wip/wms-layer-description-loader.js +8 -10
  85. package/dist/es5/wip/wms-layer-description-loader.js.map +1 -1
  86. package/dist/es5/wip/wmts-capabilities-loader.js +9 -12
  87. package/dist/es5/wip/wmts-capabilities-loader.js.map +1 -1
  88. package/dist/es5/wms-capabilities-loader.js +9 -12
  89. package/dist/es5/wms-capabilities-loader.js.map +1 -1
  90. package/dist/es5/wms-error-loader.js +9 -11
  91. package/dist/es5/wms-error-loader.js.map +1 -1
  92. package/dist/esm/bundle.js +0 -2
  93. package/dist/esm/bundle.js.map +1 -1
  94. package/dist/esm/csw-capabilities-loader.js +22 -0
  95. package/dist/esm/csw-capabilities-loader.js.map +1 -0
  96. package/dist/esm/csw-domain-loader.js +22 -0
  97. package/dist/esm/csw-domain-loader.js.map +1 -0
  98. package/dist/esm/csw-records-loader.js +21 -0
  99. package/dist/esm/csw-records-loader.js.map +1 -0
  100. package/dist/esm/{wip/gml-loader.js → gml-loader.js} +3 -6
  101. package/dist/esm/gml-loader.js.map +1 -0
  102. package/dist/esm/index.js +11 -14
  103. package/dist/esm/index.js.map +1 -1
  104. package/dist/esm/lerc-loader.js +1 -4
  105. package/dist/esm/lerc-loader.js.map +1 -1
  106. package/dist/esm/lib/{data-sources/create-image-source.js → create-image-source.js} +4 -7
  107. package/dist/esm/lib/create-image-source.js.map +1 -0
  108. package/dist/esm/lib/parsers/csw/parse-csw-capabilities.js +16 -0
  109. package/dist/esm/lib/parsers/csw/parse-csw-capabilities.js.map +1 -0
  110. package/dist/esm/lib/parsers/csw/parse-csw-domain.js +22 -0
  111. package/dist/esm/lib/parsers/csw/parse-csw-domain.js.map +1 -0
  112. package/dist/esm/lib/parsers/csw/parse-csw-records.js +43 -0
  113. package/dist/esm/lib/parsers/csw/parse-csw-records.js.map +1 -0
  114. package/dist/esm/lib/parsers/csw/parse-exception-report.js +10 -0
  115. package/dist/esm/lib/parsers/csw/parse-exception-report.js.map +1 -0
  116. package/dist/esm/lib/{gml → parsers/gml}/deep-strict-equal.js +0 -9
  117. package/dist/esm/lib/parsers/gml/deep-strict-equal.js.map +1 -0
  118. package/dist/esm/lib/{gml → parsers/gml}/parse-gml.js +0 -14
  119. package/dist/esm/lib/parsers/gml/parse-gml.js.map +1 -0
  120. package/dist/esm/lib/parsers/lerc/lerc-types.js.map +1 -0
  121. package/dist/esm/lib/parsers/wms/parse-wms-capabilities.js +174 -0
  122. package/dist/esm/lib/parsers/wms/parse-wms-capabilities.js.map +1 -0
  123. package/dist/esm/lib/parsers/wms/parse-wms-error.js +9 -0
  124. package/dist/esm/lib/parsers/wms/parse-wms-error.js.map +1 -0
  125. package/dist/esm/lib/parsers/wms/parse-wms-features.js +24 -0
  126. package/dist/esm/lib/parsers/wms/parse-wms-features.js.map +1 -0
  127. package/dist/esm/lib/parsers/wms/parse-wms-layer-description.js +6 -0
  128. package/dist/esm/lib/parsers/wms/parse-wms-layer-description.js.map +1 -0
  129. package/dist/esm/lib/parsers/xml/parse-xml-helpers.js +53 -0
  130. package/dist/esm/lib/parsers/xml/parse-xml-helpers.js.map +1 -0
  131. package/dist/esm/lib/services/arcgis/arcgis-image-service.js +58 -0
  132. package/dist/esm/lib/services/arcgis/arcgis-image-service.js.map +1 -0
  133. package/dist/esm/lib/services/arcgis/arcgis-server.js +33 -0
  134. package/dist/esm/lib/services/arcgis/arcgis-server.js.map +1 -0
  135. package/dist/esm/lib/{data-sources/adhoc-image-service.js → services/generic/image-service.js} +11 -13
  136. package/dist/esm/lib/services/generic/image-service.js.map +1 -0
  137. package/dist/esm/lib/services/generic/tile-service.js +2 -0
  138. package/dist/esm/lib/services/generic/tile-service.js.map +1 -0
  139. package/dist/esm/lib/services/ogc/csw-service.js +151 -0
  140. package/dist/esm/lib/services/ogc/csw-service.js.map +1 -0
  141. package/dist/esm/lib/services/ogc/wms-service.js +205 -0
  142. package/dist/esm/lib/services/ogc/wms-service.js.map +1 -0
  143. package/dist/esm/lib/services/ogc/wmts-service.ts.disabled +348 -0
  144. package/dist/esm/lib/sources/data-source.js +23 -0
  145. package/dist/esm/lib/sources/data-source.js.map +1 -0
  146. package/dist/esm/lib/sources/image-source.js +3 -0
  147. package/dist/esm/lib/sources/image-source.js.map +1 -0
  148. package/dist/esm/lib/sources/tile-source.js +3 -0
  149. package/dist/esm/lib/sources/tile-source.js.map +1 -0
  150. package/dist/esm/lib/sources/utils/utils.js +21 -0
  151. package/dist/esm/lib/sources/utils/utils.js.map +1 -0
  152. package/dist/esm/wip/arcgis-feature-service.js +0 -3
  153. package/dist/esm/wip/arcgis-feature-service.js.map +1 -1
  154. package/dist/esm/wip/lib/wcs/parse-wcs-capabilities.js +13 -0
  155. package/dist/esm/wip/lib/wcs/parse-wcs-capabilities.js.map +1 -0
  156. package/dist/esm/wip/lib/wfs/parse-wfs-capabilities.js +14 -0
  157. package/dist/esm/wip/lib/wfs/parse-wfs-capabilities.js.map +1 -0
  158. package/dist/esm/wip/lib/wmts/parse-wmts-capabilities.js +14 -0
  159. package/dist/esm/wip/lib/wmts/parse-wmts-capabilities.js.map +1 -0
  160. package/dist/esm/wip/wcs-capabilities-loader.js +4 -7
  161. package/dist/esm/wip/wcs-capabilities-loader.js.map +1 -1
  162. package/dist/esm/wip/wfs-capabilities-loader.js +2 -5
  163. package/dist/esm/wip/wfs-capabilities-loader.js.map +1 -1
  164. package/dist/esm/wip/wms-feature-info-loader.js +1 -4
  165. package/dist/esm/wip/wms-feature-info-loader.js.map +1 -1
  166. package/dist/esm/wip/wms-layer-description-loader.js +1 -4
  167. package/dist/esm/wip/wms-layer-description-loader.js.map +1 -1
  168. package/dist/esm/wip/wmts-capabilities-loader.js +2 -5
  169. package/dist/esm/wip/wmts-capabilities-loader.js.map +1 -1
  170. package/dist/esm/wms-capabilities-loader.js +4 -7
  171. package/dist/esm/wms-capabilities-loader.js.map +1 -1
  172. package/dist/esm/wms-error-loader.js +2 -5
  173. package/dist/esm/wms-error-loader.js.map +1 -1
  174. package/dist/gml-loader.d.ts.map +1 -0
  175. package/dist/{wip/gml-loader.js → gml-loader.js} +2 -2
  176. package/dist/index.d.ts +24 -18
  177. package/dist/index.d.ts.map +1 -1
  178. package/dist/index.js +28 -18
  179. package/dist/lerc-loader.d.ts +1 -1
  180. package/dist/lerc-loader.d.ts.map +1 -1
  181. package/dist/lib/create-image-source.d.ts +17 -0
  182. package/dist/lib/create-image-source.d.ts.map +1 -0
  183. package/dist/lib/{data-sources/create-image-source.js → create-image-source.js} +5 -5
  184. package/dist/lib/{wmts/wmts-types.d.ts → parsers/csw/parse-csw-capabilities.d.ts} +9 -3
  185. package/dist/lib/parsers/csw/parse-csw-capabilities.d.ts.map +1 -0
  186. package/dist/lib/parsers/csw/parse-csw-capabilities.js +24 -0
  187. package/dist/lib/parsers/csw/parse-csw-domain.d.ts +17 -0
  188. package/dist/lib/parsers/csw/parse-csw-domain.d.ts.map +1 -0
  189. package/dist/lib/parsers/csw/parse-csw-domain.js +33 -0
  190. package/dist/lib/parsers/csw/parse-csw-records.d.ts +33 -0
  191. package/dist/lib/parsers/csw/parse-csw-records.d.ts.map +1 -0
  192. package/dist/lib/parsers/csw/parse-csw-records.js +58 -0
  193. package/dist/lib/parsers/csw/parse-exception-report.d.ts +6 -0
  194. package/dist/lib/parsers/csw/parse-exception-report.d.ts.map +1 -0
  195. package/dist/lib/parsers/csw/parse-exception-report.js +30 -0
  196. package/dist/lib/parsers/gml/deep-strict-equal.d.ts.map +1 -0
  197. package/dist/lib/parsers/gml/parse-gml.d.ts.map +1 -0
  198. package/dist/lib/parsers/lerc/lerc-types.d.ts.map +1 -0
  199. package/dist/lib/parsers/wms/parse-wms-capabilities.d.ts +103 -0
  200. package/dist/lib/parsers/wms/parse-wms-capabilities.d.ts.map +1 -0
  201. package/dist/lib/parsers/wms/parse-wms-capabilities.js +198 -0
  202. package/dist/lib/parsers/wms/parse-wms-error.d.ts +8 -0
  203. package/dist/lib/parsers/wms/parse-wms-error.d.ts.map +1 -0
  204. package/dist/lib/parsers/wms/parse-wms-error.js +22 -0
  205. package/dist/lib/parsers/wms/parse-wms-features.d.ts +20 -0
  206. package/dist/lib/parsers/wms/parse-wms-features.d.ts.map +1 -0
  207. package/dist/lib/parsers/wms/parse-wms-features.js +27 -0
  208. package/dist/lib/parsers/wms/parse-wms-layer-description.d.ts +10 -0
  209. package/dist/lib/parsers/wms/parse-wms-layer-description.d.ts.map +1 -0
  210. package/dist/lib/parsers/wms/parse-wms-layer-description.js +15 -0
  211. package/dist/lib/parsers/xml/parse-xml-helpers.d.ts +11 -0
  212. package/dist/lib/parsers/xml/parse-xml-helpers.d.ts.map +1 -0
  213. package/dist/lib/parsers/xml/parse-xml-helpers.js +68 -0
  214. package/dist/lib/{data-sources/image-services → services/arcgis}/arcgis-image-service.d.ts +25 -13
  215. package/dist/lib/services/arcgis/arcgis-image-service.d.ts.map +1 -0
  216. package/dist/lib/{data-sources → services/arcgis}/arcgis-image-service.js +33 -23
  217. package/dist/lib/services/arcgis/arcgis-server.d.ts +15 -0
  218. package/dist/lib/services/arcgis/arcgis-server.d.ts.map +1 -0
  219. package/dist/lib/services/arcgis/arcgis-server.js +42 -0
  220. package/dist/lib/{data-sources/image-services → services/generic}/image-service.d.ts +3 -13
  221. package/dist/lib/services/generic/image-service.d.ts.map +1 -0
  222. package/dist/lib/{data-sources/adhoc-image-service.js → services/generic/image-service.js} +12 -10
  223. package/dist/lib/services/generic/tile-service.d.ts +1 -0
  224. package/dist/lib/services/generic/tile-service.d.ts.map +1 -0
  225. package/dist/lib/services/generic/tile-service.js +1 -0
  226. package/dist/lib/services/ogc/csw-service.d.ts +115 -0
  227. package/dist/lib/services/ogc/csw-service.d.ts.map +1 -0
  228. package/dist/lib/services/ogc/csw-service.js +170 -0
  229. package/dist/lib/{data-sources/image-services → services/ogc}/wms-service.d.ts +88 -64
  230. package/dist/lib/services/ogc/wms-service.d.ts.map +1 -0
  231. package/dist/lib/services/ogc/wms-service.js +266 -0
  232. package/dist/lib/sources/data-source.d.ts +22 -0
  233. package/dist/lib/sources/data-source.d.ts.map +1 -0
  234. package/dist/lib/sources/data-source.js +34 -0
  235. package/dist/lib/{data-sources → sources}/image-source.d.ts +7 -10
  236. package/dist/lib/sources/image-source.d.ts.map +1 -0
  237. package/dist/lib/{data-sources → sources}/image-source.js +2 -1
  238. package/dist/lib/sources/tile-source.d.ts +54 -0
  239. package/dist/lib/sources/tile-source.d.ts.map +1 -0
  240. package/dist/lib/sources/tile-source.js +13 -0
  241. package/dist/lib/sources/utils/utils.d.ts +13 -0
  242. package/dist/lib/sources/utils/utils.d.ts.map +1 -0
  243. package/dist/lib/sources/utils/utils.js +38 -0
  244. package/dist/{lib/wfs/wfs-types.d.ts → wip/lib/wcs/parse-wcs-capabilities.d.ts} +8 -3
  245. package/dist/wip/lib/wcs/parse-wcs-capabilities.d.ts.map +1 -0
  246. package/dist/wip/lib/wcs/parse-wcs-capabilities.js +15 -0
  247. package/dist/{lib/wcs/wcs-types.d.ts → wip/lib/wfs/parse-wfs-capabilities.d.ts} +6 -1
  248. package/dist/wip/lib/wfs/parse-wfs-capabilities.d.ts.map +1 -0
  249. package/dist/wip/lib/wfs/parse-wfs-capabilities.js +19 -0
  250. package/dist/wip/lib/wmts/parse-wmts-capabilities.d.ts +87 -0
  251. package/dist/wip/lib/wmts/parse-wmts-capabilities.d.ts.map +1 -0
  252. package/dist/wip/lib/wmts/parse-wmts-capabilities.js +77 -0
  253. package/dist/wip/wcs-capabilities-loader.d.ts +4 -3
  254. package/dist/wip/wcs-capabilities-loader.d.ts.map +1 -1
  255. package/dist/wip/wcs-capabilities-loader.js +3 -3
  256. package/dist/wip/wfs-capabilities-loader.d.ts +4 -3
  257. package/dist/wip/wfs-capabilities-loader.d.ts.map +1 -1
  258. package/dist/wip/wfs-capabilities-loader.js +3 -3
  259. package/dist/wip/wms-feature-info-loader.d.ts +4 -2
  260. package/dist/wip/wms-feature-info-loader.d.ts.map +1 -1
  261. package/dist/wip/wms-feature-info-loader.js +3 -3
  262. package/dist/wip/wms-layer-description-loader.d.ts +5 -3
  263. package/dist/wip/wms-layer-description-loader.d.ts.map +1 -1
  264. package/dist/wip/wms-layer-description-loader.js +3 -3
  265. package/dist/wip/wmts-capabilities-loader.d.ts +2 -2
  266. package/dist/wip/wmts-capabilities-loader.d.ts.map +1 -1
  267. package/dist/wip/wmts-capabilities-loader.js +4 -3
  268. package/dist/wms-capabilities-loader.d.ts +10 -4
  269. package/dist/wms-capabilities-loader.d.ts.map +1 -1
  270. package/dist/wms-capabilities-loader.js +3 -3
  271. package/dist/wms-error-loader.js +2 -2
  272. package/package.json +7 -7
  273. package/src/csw-capabilities-loader.ts +46 -0
  274. package/src/csw-domain-loader.ts +44 -0
  275. package/src/csw-records-loader.ts +42 -0
  276. package/src/{wip/gml-loader.ts → gml-loader.ts} +2 -2
  277. package/src/index.ts +49 -30
  278. package/src/lerc-loader.ts +1 -1
  279. package/src/lib/{data-sources/create-image-source.ts → create-image-source.ts} +12 -10
  280. package/src/lib/parsers/csw/parse-csw-capabilities.ts +103 -0
  281. package/src/lib/parsers/csw/parse-csw-domain.ts +45 -0
  282. package/src/lib/parsers/csw/parse-csw-records.ts +90 -0
  283. package/src/lib/parsers/csw/parse-exception-report.ts +31 -0
  284. package/src/lib/parsers/wms/parse-wms-capabilities.ts +361 -0
  285. package/src/lib/parsers/wms/parse-wms-error.ts +22 -0
  286. package/src/lib/parsers/wms/parse-wms-features.ts +39 -0
  287. package/src/lib/parsers/wms/parse-wms-layer-description.ts +18 -0
  288. package/src/lib/parsers/xml/parse-xml-helpers.ts +65 -0
  289. package/src/lib/{data-sources/image-services → services/arcgis}/arcgis-image-service.ts +44 -26
  290. package/src/lib/services/arcgis/arcgis-server.ts +59 -0
  291. package/src/lib/{data-sources/adhoc-image-service.ts → services/generic/image-service.ts} +18 -12
  292. package/src/lib/services/generic/tile-service.ts +0 -0
  293. package/src/lib/services/ogc/csw-service.ts +251 -0
  294. package/src/lib/services/ogc/wms-service.ts +450 -0
  295. package/src/lib/services/ogc/wmts-service.ts.disabled +348 -0
  296. package/src/lib/sources/data-source.ts +46 -0
  297. package/src/lib/{data-sources → sources}/image-source.ts +8 -10
  298. package/src/lib/sources/tile-source.ts +59 -0
  299. package/src/lib/sources/utils/utils.ts +42 -0
  300. package/src/{lib/wmts/wmts-types.ts → wip/lib/wcs/parse-wcs-capabilities.ts} +15 -3
  301. package/src/{lib/wcs/wcs-types.ts → wip/lib/wfs/parse-wfs-capabilities.ts} +18 -1
  302. package/src/wip/lib/wmts/parse-wmts-capabilities.ts +170 -0
  303. package/src/wip/wcs-capabilities-loader.ts +6 -3
  304. package/src/wip/wfs-capabilities-loader.ts +4 -1
  305. package/src/wip/wms-feature-info-loader.ts +5 -1
  306. package/src/wip/wms-layer-description-loader.ts +7 -2
  307. package/src/wip/wmts-capabilities-loader.ts +4 -1
  308. package/src/wms-capabilities-loader.ts +14 -4
  309. package/src/wms-error-loader.ts +1 -1
  310. package/dist/es5/lib/data-sources/adhoc-image-service.js.map +0 -1
  311. package/dist/es5/lib/data-sources/arcgis-image-service.js +0 -180
  312. package/dist/es5/lib/data-sources/arcgis-image-service.js.map +0 -1
  313. package/dist/es5/lib/data-sources/create-image-source.js.map +0 -1
  314. package/dist/es5/lib/data-sources/image-services/arcgis-image-service.js.map +0 -1
  315. package/dist/es5/lib/data-sources/image-services/image-service.js +0 -163
  316. package/dist/es5/lib/data-sources/image-services/image-service.js.map +0 -1
  317. package/dist/es5/lib/data-sources/image-services/wms-service.js +0 -400
  318. package/dist/es5/lib/data-sources/image-services/wms-service.js.map +0 -1
  319. package/dist/es5/lib/data-sources/image-source.js +0 -14
  320. package/dist/es5/lib/data-sources/image-source.js.map +0 -1
  321. package/dist/es5/lib/gml/deep-strict-equal.js.map +0 -1
  322. package/dist/es5/lib/gml/parse-gml.js.map +0 -1
  323. package/dist/es5/lib/lerc/lerc-types.js.map +0 -1
  324. package/dist/es5/lib/wcs/parse-wcs.js.map +0 -1
  325. package/dist/es5/lib/wcs/wcs-types.js +0 -2
  326. package/dist/es5/lib/wcs/wcs-types.js.map +0 -1
  327. package/dist/es5/lib/wfs/parse-wfs.js.map +0 -1
  328. package/dist/es5/lib/wfs/wfs-types.js +0 -2
  329. package/dist/es5/lib/wfs/wfs-types.js.map +0 -1
  330. package/dist/es5/lib/wms/parse-wms.js +0 -135
  331. package/dist/es5/lib/wms/parse-wms.js.map +0 -1
  332. package/dist/es5/lib/wms/wms-types.js +0 -2
  333. package/dist/es5/lib/wms/wms-types.js.map +0 -1
  334. package/dist/es5/lib/wmts/parse-wmts.js.map +0 -1
  335. package/dist/es5/lib/wmts/wmts-types.js +0 -2
  336. package/dist/es5/lib/wmts/wmts-types.js.map +0 -1
  337. package/dist/es5/wip/gml-loader.js.map +0 -1
  338. package/dist/esm/lib/data-sources/adhoc-image-service.js.map +0 -1
  339. package/dist/esm/lib/data-sources/arcgis-image-service.js +0 -62
  340. package/dist/esm/lib/data-sources/arcgis-image-service.js.map +0 -1
  341. package/dist/esm/lib/data-sources/create-image-source.js.map +0 -1
  342. package/dist/esm/lib/data-sources/image-services/arcgis-image-service.js +0 -61
  343. package/dist/esm/lib/data-sources/image-services/arcgis-image-service.js.map +0 -1
  344. package/dist/esm/lib/data-sources/image-services/image-service.js +0 -72
  345. package/dist/esm/lib/data-sources/image-services/image-service.js.map +0 -1
  346. package/dist/esm/lib/data-sources/image-services/wms-service.js +0 -190
  347. package/dist/esm/lib/data-sources/image-services/wms-service.js.map +0 -1
  348. package/dist/esm/lib/data-sources/image-source.js +0 -4
  349. package/dist/esm/lib/data-sources/image-source.js.map +0 -1
  350. package/dist/esm/lib/gml/deep-strict-equal.js.map +0 -1
  351. package/dist/esm/lib/gml/parse-gml.js.map +0 -1
  352. package/dist/esm/lib/lerc/lerc-types.js.map +0 -1
  353. package/dist/esm/lib/wcs/parse-wcs.js +0 -32
  354. package/dist/esm/lib/wcs/parse-wcs.js.map +0 -1
  355. package/dist/esm/lib/wcs/wcs-types.js +0 -2
  356. package/dist/esm/lib/wcs/wcs-types.js.map +0 -1
  357. package/dist/esm/lib/wfs/parse-wfs.js +0 -32
  358. package/dist/esm/lib/wfs/parse-wfs.js.map +0 -1
  359. package/dist/esm/lib/wfs/wfs-types.js +0 -2
  360. package/dist/esm/lib/wfs/wfs-types.js.map +0 -1
  361. package/dist/esm/lib/wms/parse-wms.js +0 -101
  362. package/dist/esm/lib/wms/parse-wms.js.map +0 -1
  363. package/dist/esm/lib/wms/wms-types.js +0 -2
  364. package/dist/esm/lib/wms/wms-types.js.map +0 -1
  365. package/dist/esm/lib/wmts/parse-wmts.js +0 -32
  366. package/dist/esm/lib/wmts/parse-wmts.js.map +0 -1
  367. package/dist/esm/lib/wmts/wmts-types.js +0 -2
  368. package/dist/esm/lib/wmts/wmts-types.js.map +0 -1
  369. package/dist/esm/wip/gml-loader.js.map +0 -1
  370. package/dist/lib/data-sources/adhoc-image-service.d.ts +0 -24
  371. package/dist/lib/data-sources/adhoc-image-service.d.ts.map +0 -1
  372. package/dist/lib/data-sources/arcgis-image-service.d.ts +0 -79
  373. package/dist/lib/data-sources/arcgis-image-service.d.ts.map +0 -1
  374. package/dist/lib/data-sources/create-image-source.d.ts +0 -16
  375. package/dist/lib/data-sources/create-image-source.d.ts.map +0 -1
  376. package/dist/lib/data-sources/image-services/arcgis-image-service.d.ts.map +0 -1
  377. package/dist/lib/data-sources/image-services/arcgis-image-service.js +0 -85
  378. package/dist/lib/data-sources/image-services/image-service.d.ts.map +0 -1
  379. package/dist/lib/data-sources/image-services/image-service.js +0 -82
  380. package/dist/lib/data-sources/image-services/wms-service.d.ts.map +0 -1
  381. package/dist/lib/data-sources/image-services/wms-service.js +0 -218
  382. package/dist/lib/data-sources/image-source.d.ts.map +0 -1
  383. package/dist/lib/gml/deep-strict-equal.d.ts.map +0 -1
  384. package/dist/lib/gml/parse-gml.d.ts.map +0 -1
  385. package/dist/lib/lerc/lerc-types.d.ts.map +0 -1
  386. package/dist/lib/wcs/parse-wcs.d.ts +0 -7
  387. package/dist/lib/wcs/parse-wcs.d.ts.map +0 -1
  388. package/dist/lib/wcs/parse-wcs.js +0 -36
  389. package/dist/lib/wcs/wcs-types.d.ts.map +0 -1
  390. package/dist/lib/wcs/wcs-types.js +0 -3
  391. package/dist/lib/wfs/parse-wfs.d.ts +0 -7
  392. package/dist/lib/wfs/parse-wfs.d.ts.map +0 -1
  393. package/dist/lib/wfs/parse-wfs.js +0 -36
  394. package/dist/lib/wfs/wfs-types.d.ts.map +0 -1
  395. package/dist/lib/wfs/wfs-types.js +0 -3
  396. package/dist/lib/wms/parse-wms.d.ts +0 -24
  397. package/dist/lib/wms/parse-wms.d.ts.map +0 -1
  398. package/dist/lib/wms/parse-wms.js +0 -115
  399. package/dist/lib/wms/wms-types.d.ts +0 -100
  400. package/dist/lib/wms/wms-types.d.ts.map +0 -1
  401. package/dist/lib/wms/wms-types.js +0 -1908
  402. package/dist/lib/wmts/parse-wmts.d.ts +0 -7
  403. package/dist/lib/wmts/parse-wmts.d.ts.map +0 -1
  404. package/dist/lib/wmts/parse-wmts.js +0 -36
  405. package/dist/lib/wmts/wmts-types.d.ts.map +0 -1
  406. package/dist/lib/wmts/wmts-types.js +0 -3
  407. package/dist/wip/gml-loader.d.ts.map +0 -1
  408. package/src/lib/data-sources/arcgis-image-service.ts +0 -146
  409. package/src/lib/data-sources/image-services/image-service.ts +0 -105
  410. package/src/lib/data-sources/image-services/wms-service.ts +0 -351
  411. package/src/lib/wcs/parse-wcs.ts +0 -39
  412. package/src/lib/wfs/parse-wfs.ts +0 -39
  413. package/src/lib/wfs/wfs-types.ts +0 -78
  414. package/src/lib/wms/parse-wms.ts +0 -142
  415. package/src/lib/wms/wms-types.ts +0 -2053
  416. package/src/lib/wmts/parse-wmts.ts +0 -39
  417. /package/dist/es5/lib/{lerc → parsers/lerc}/lerc-types.js +0 -0
  418. /package/dist/esm/lib/{lerc → parsers/lerc}/lerc-types.js +0 -0
  419. /package/dist/{wip/gml-loader.d.ts → gml-loader.d.ts} +0 -0
  420. /package/dist/lib/{gml → parsers/gml}/deep-strict-equal.d.ts +0 -0
  421. /package/dist/lib/{gml → parsers/gml}/deep-strict-equal.js +0 -0
  422. /package/dist/lib/{gml → parsers/gml}/parse-gml.d.ts +0 -0
  423. /package/dist/lib/{gml → parsers/gml}/parse-gml.js +0 -0
  424. /package/dist/lib/{lerc → parsers/lerc}/lerc-types.d.ts +0 -0
  425. /package/dist/lib/{lerc → parsers/lerc}/lerc-types.js +0 -0
  426. /package/src/lib/{gml → parsers/gml}/deep-strict-equal.ts +0 -0
  427. /package/src/lib/{gml → parsers/gml}/parse-gml.ts +0 -0
  428. /package/src/lib/{lerc → parsers/lerc}/lerc-types.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-gml.d.ts","sourceRoot":"","sources":["../../../../src/lib/parsers/gml/parse-gml.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAIV,QAAQ,EACR,QAAQ,EAST,MAAM,oBAAoB,CAAC;AAU5B,MAAM,MAAM,eAAe,GAAG;IAC5B,eAAe,CAAC,EAAE,QAAQ,CAAC;IAC3B,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB,CAAC;AAEF;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,KAAA,mBAQ7C;AAED,4CAA4C;AAC5C,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,GAAG,EACb,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,eAAe,GACvB,QAAQ,GAAG,IAAI,CAuDjB;AAsBD,wBAAgB,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,eAAe,cASxF;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,eAAe,GAAG,QAAQ,CAa/F;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,eAAe,GAAG,MAAM,EAAE,CASjG;AAED,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,eAAe,GACvB,QAAQ,EAAE,CA4BZ;AAED,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,eAAe,GACvB,QAAQ,EAAE,CA0BZ;AAED,wBAAgB,SAAS,CACvB,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,eAAe,GACvB,QAAQ,EAAE,CAuCZ;AAED,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,eAAe,GACvB,QAAQ,EAAE,CAYZ;AAED,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,eAAe,GACvB,QAAQ,EAAE,EAAE,CAoBd;AAED,wBAAgB,YAAY,CAC1B,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,eAAe,GACvB,QAAQ,EAAE,EAAE,EAAE,CA0BhB;AAED,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,eAAe,GACvB,QAAQ,EAAE,EAAE,EAAE,CAyBhB;AAED,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,eAAe,GACvB,QAAQ,EAAE,EAAE,EAAE,CAmChB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lerc-types.d.ts","sourceRoot":"","sources":["../../../../src/lib/parsers/lerc/lerc-types.ts"],"names":[],"mappings":"AAEA,mCAAmC;AACnC,MAAM,MAAM,QAAQ,GAAG;IACrB,6BAA6B;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,8BAA8B;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,SAAS,EAAE,aAAa,CAAC;IACzB,mHAAmH;IACnH,UAAU,EAAE,SAAS,EAAE,CAAC;IACxB,kFAAkF;IAClF,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,+EAA+E;IAC/E,IAAI,EAAE,UAAU,CAAC;IACjB,mBAAmB;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,iGAAiG;IACjG,SAAS,CAAC,EAAE,UAAU,EAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAExF,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE;QACX,SAAS,EAAE,YAAY,CAAC;QACxB,SAAS,EAAE,YAAY,CAAC;KACzB,CAAC;CACH;AAED,MAAM,MAAM,UAAU,GAClB,SAAS,GACT,UAAU,GACV,iBAAiB,GACjB,UAAU,GACV,WAAW,GACX,UAAU,GACV,WAAW,GACX,YAAY,GACZ,YAAY,CAAC"}
@@ -0,0 +1,103 @@
1
+ /** All capabilities of a WMS service - response to a WMS `GetCapabilities` data structure extracted from XML */
2
+ export type WMSCapabilities = {
3
+ /** Version of the WMS service */
4
+ version?: string;
5
+ /** A short name for the service */
6
+ name: string;
7
+ /** A human readable name for the service */
8
+ title?: string;
9
+ /** A more extensive description of the service */
10
+ abstract?: string;
11
+ /** A set of keywords e.g. for searching services */
12
+ keywords: string[];
13
+ /** A field of unspecified format, if present describes any access constraints required to use the service. */
14
+ accessConstraints?: string;
15
+ /** A field of unspecified format, if present describes any fees associated with the use of the service */
16
+ fees?: string;
17
+ /** If present, the max number of layers that can be rendered by the service */
18
+ layerLimit?: number;
19
+ /** If present, the widest image that can be rendered by the service */
20
+ maxWidth?: number;
21
+ /** If present, the tallest image that can be rendered by the service */
22
+ maxHeight?: number;
23
+ /** Hierarchical list of layers. */
24
+ layers: WMSLayer[];
25
+ /** A map with information about supported WMS requests. If a record is present, the request is supported by the service */
26
+ requests: Record<string, WMSRequest>;
27
+ /** Information about any exceptions that the service will report (HTTP status != 2xx) */
28
+ exceptions?: WMSExceptions;
29
+ /** Only if `options.raw`: raw untyped JSON parsed from XML. Can include information not extracted in the typed response. */
30
+ raw?: Record<string, unknown>;
31
+ /** Only if `options.xml`, the unparsed XML string can be requested */
32
+ xml?: string;
33
+ };
34
+ /**
35
+ * Metadata about a layer
36
+ * Layers inherit many properties from their parent layers, see description of individual props for details.
37
+ * @see https://www.ogc.org/standard/wms/ 7.2.4.6
38
+ */
39
+ export type WMSLayer = {
40
+ /** The title is a human readable name. It is mandatory on each layer. Not inherited. */
41
+ title: string;
42
+ /** A layer is renderable if it has a name. A named parent layer will render all its sublayers. Not inherited. */
43
+ name?: string;
44
+ /** A narrative description of the map layer. */
45
+ abstract?: string;
46
+ /** A set of keywords e.g. for searching layers */
47
+ keywords: string[];
48
+ /** layer limits in unspecified CRS:84-like lng/lat, for quick access w/o CRS calculations. Defined or inherited. */
49
+ geographicBoundingBox?: [min: [x: number, y: number], max: [x: number, y: number]];
50
+ /** Supported CRS. Either defined or inherited. */
51
+ crs?: string[];
52
+ /** Bounding boxes in specific CRS:es */
53
+ boundingBoxes?: WMSBoundingBox[];
54
+ /** Whether queries can be performed on the layer */
55
+ queryable?: boolean;
56
+ /** `false` if layer has significant no-data areas that the client can display as transparent. */
57
+ opaque?: boolean;
58
+ /** WMS cascading allows server to expose layers coming from other WMS servers as if they were local layers */
59
+ cascaded?: boolean;
60
+ /** A list of styles. @note not yet supported by WMSCapabilitiesLoader */
61
+ styles?: unknown[];
62
+ /** Sublayers - these inherit crs and boundingBox) if not overridden) */
63
+ layers?: WMSLayer[];
64
+ };
65
+ /**
66
+ * A bounding box specifies the coordinate range for data in the layer.
67
+ * No data is available outside the bounding box.
68
+ */
69
+ export type WMSBoundingBox = {
70
+ /** CRS indicates the Layer CRS that applies to this bounding box. */
71
+ crs: string;
72
+ /** `[[w, s], [e, n]]`, indicates the limits of the bounding box using the axis units and order of the specified CRS. */
73
+ boundingBox: [min: [x: number, y: number], max: [x: number, y: number]];
74
+ /** Spatial horizontal resolution of data in same units as bounding box */
75
+ xResolution?: number;
76
+ /** Spatial vertical resolution of data in same units as bounding box */
77
+ yResolution?: number;
78
+ };
79
+ /** Metadata about a supported WMS request */
80
+ export type WMSRequest = {
81
+ /** MIMEtypes that can be returned by this request. */
82
+ mimeTypes: string[];
83
+ };
84
+ export type WMSExceptions = {
85
+ /** MIME types for exception response payloads. */
86
+ mimeTypes: string[];
87
+ };
88
+ export type parseWMSCapabilitiesOptions = {
89
+ /** Add inherited layer information to sub layers */
90
+ inheritedLayerProps?: boolean;
91
+ /** Include the "raw" JSON (parsed but untyped, unprocessed XML). May contain additional fields */
92
+ includeRawData?: boolean;
93
+ /** Include the original XML document text. May contain additional information. */
94
+ includeXMLText?: boolean;
95
+ /** @deprecated Use includeRawData` */
96
+ raw?: boolean;
97
+ };
98
+ /**
99
+ * Parses a typed data structure from raw XML for `GetCapabilities` response
100
+ * @note Error handlings is fairly weak
101
+ */
102
+ export declare function parseWMSCapabilities(xmlText: string, options?: parseWMSCapabilitiesOptions): WMSCapabilities;
103
+ //# sourceMappingURL=parse-wms-capabilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-wms-capabilities.d.ts","sourceRoot":"","sources":["../../../../src/lib/parsers/wms/parse-wms-capabilities.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,198 @@
1
+ "use strict";
2
+ // loaders.gl, MIT license
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.parseWMSCapabilities = void 0;
5
+ const xml_1 = require("@loaders.gl/xml");
6
+ const parse_xml_helpers_1 = require("../xml/parse-xml-helpers");
7
+ /**
8
+ * Parses a typed data structure from raw XML for `GetCapabilities` response
9
+ * @note Error handlings is fairly weak
10
+ */
11
+ function parseWMSCapabilities(xmlText, options) {
12
+ const parsedXML = xml_1.XMLLoader.parseTextSync(xmlText, options);
13
+ const xmlCapabilities = parsedXML.WMT_MS_Capabilities || parsedXML.WMS_Capabilities || parsedXML;
14
+ const capabilities = extractCapabilities(xmlCapabilities);
15
+ // In case the processed, normalized capabilities do not contain everything,
16
+ // the user can get the parsed XML structure.
17
+ if (options?.inheritedLayerProps) {
18
+ // Traverse layers and inject missing props from parents
19
+ for (const layer of capabilities.layers) {
20
+ addInheritedLayerProps(layer, null);
21
+ }
22
+ // Not yet implemented
23
+ }
24
+ if (options?.includeRawData || options?.raw) {
25
+ capabilities.raw = xmlCapabilities;
26
+ }
27
+ if (options?.includeXMLText) {
28
+ capabilities.xml = xmlText;
29
+ }
30
+ return capabilities;
31
+ }
32
+ exports.parseWMSCapabilities = parseWMSCapabilities;
33
+ /** Extract typed capability data from XML */
34
+ function extractCapabilities(xml) {
35
+ const capabilities = {
36
+ version: String(xml.version || ''),
37
+ name: String(xml.Service?.Name || 'unnamed'),
38
+ title: xml.Service?.Title ? String(xml.Service?.Title) : undefined,
39
+ abstract: xml.Service?.Abstract ? String(xml.Service?.Abstract) : undefined,
40
+ keywords: (0, parse_xml_helpers_1.getXMLStringArray)(xml.Service?.KeywordList?.Keyword),
41
+ fees: xml.Service?.Fees ? JSON.stringify(xml.Service?.Fees) : undefined,
42
+ accessConstraints: xml.Service?.AccessConstraints
43
+ ? JSON.stringify(xml.Service?.AccessConstraints)
44
+ : undefined,
45
+ layerLimit: (0, parse_xml_helpers_1.getXMLInteger)(xml.Service?.LayerLimit),
46
+ maxWidth: (0, parse_xml_helpers_1.getXMLInteger)(xml.Service?.maxWidth),
47
+ maxHeight: (0, parse_xml_helpers_1.getXMLInteger)(xml.Service?.maxHeight),
48
+ layers: [],
49
+ requests: extractRequests(xml.Capability?.Request),
50
+ exceptions: extractExceptions(xml.Exception)
51
+ // contact field is a mess of largely irrelevant information, put it last
52
+ // contact: xml.Service?.Contact ? JSON.stringify(xml.Service?.Contact) : undefined,
53
+ };
54
+ // LAYERS
55
+ const xmlLayers = (0, parse_xml_helpers_1.getXMLArray)(xml.Capability?.Layer);
56
+ for (const xmlSubLayer of xmlLayers) {
57
+ capabilities.layers.push(extractLayer(xmlSubLayer));
58
+ }
59
+ // Clean up object
60
+ for (const [key, value] of Object.entries(capabilities)) {
61
+ if (value === undefined) {
62
+ delete capabilities[key];
63
+ }
64
+ }
65
+ return capabilities;
66
+ }
67
+ /** Extract typed request metadata from XML requests field */
68
+ function extractRequests(xmlRequests) {
69
+ const requests = {};
70
+ for (const [name, xmlRequest] of Object.entries(xmlRequests || {})) {
71
+ const mimeTypes = (0, parse_xml_helpers_1.getXMLStringArray)(xmlRequest?.Format);
72
+ requests[name] = { mimeTypes };
73
+ }
74
+ return requests;
75
+ }
76
+ function extractExceptions(xmlException) {
77
+ const xmlExceptionFormats = (0, parse_xml_helpers_1.getXMLArray)(xmlException?.Format);
78
+ if (xmlExceptionFormats.length > 0) {
79
+ return {
80
+ mimeTypes: (0, parse_xml_helpers_1.getXMLStringArray)(xmlException)
81
+ };
82
+ }
83
+ return undefined;
84
+ }
85
+ /** Extract request data */
86
+ // eslint-disable-next-line complexity, max-statements
87
+ function extractLayer(xmlLayer) {
88
+ const layer = {
89
+ // All layers must have a title
90
+ title: String(xmlLayer?.Title || ''),
91
+ // Name is required only if renderable
92
+ name: String(xmlLayer?.Name),
93
+ abstract: String(xmlLayer?.Abstract),
94
+ keywords: (0, parse_xml_helpers_1.getXMLStringArray)(xmlLayer.KeywordList?.Keyword)
95
+ };
96
+ // WMS 1.3.0 changes SRS to CRS
97
+ const crs = xmlLayer?.CRS || xmlLayer?.SRS;
98
+ if (crs && Array.isArray(crs) && crs.every((_) => typeof _ === 'string')) {
99
+ layer.crs = crs;
100
+ }
101
+ // v1.3.0 extract simple geographic bounding box
102
+ let geographicBoundingBox = xmlLayer?.EX_GeographicBoundingBox && extractEXBoundingBox(xmlLayer?.EX_GeographicBoundingBox);
103
+ if (geographicBoundingBox) {
104
+ layer.geographicBoundingBox = geographicBoundingBox;
105
+ }
106
+ // v1.1.1 extract simple geographic bounding box
107
+ geographicBoundingBox =
108
+ xmlLayer?.LatLonBoundingBox && extractLatLonBoundingBox(xmlLayer?.LatLonBoundingBox);
109
+ if (geographicBoundingBox) {
110
+ layer.geographicBoundingBox = geographicBoundingBox;
111
+ }
112
+ // Extract per-CRS bounding boxes
113
+ const boundingBoxes = xmlLayer?.BoundingBox && extractWMSBoundingBoxes(xmlLayer?.BoundingBox);
114
+ if (boundingBoxes && boundingBoxes.length > 0) {
115
+ layer.boundingBoxes = boundingBoxes;
116
+ }
117
+ if (xmlLayer?.opaque) {
118
+ layer.opaque = (0, parse_xml_helpers_1.getXMLBoolean)(xmlLayer?.opaque);
119
+ }
120
+ if (xmlLayer?.cascaded) {
121
+ layer.cascaded = (0, parse_xml_helpers_1.getXMLBoolean)(xmlLayer?.cascaded);
122
+ }
123
+ if (xmlLayer?.queryable) {
124
+ layer.queryable = (0, parse_xml_helpers_1.getXMLBoolean)(xmlLayer?.queryable);
125
+ }
126
+ // Single layer is not represented as array in XML
127
+ const xmlLayers = (0, parse_xml_helpers_1.getXMLArray)(xmlLayer?.Layer);
128
+ const layers = [];
129
+ for (const xmlSubLayer of xmlLayers) {
130
+ layers.push(extractLayer(xmlSubLayer));
131
+ }
132
+ if (layers.length > 0) {
133
+ layer.layers = layers;
134
+ }
135
+ // Clean up object
136
+ for (const [key, value] of Object.entries(layer)) {
137
+ if (value === undefined) {
138
+ delete layer[key];
139
+ }
140
+ }
141
+ return layer;
142
+ }
143
+ /** WMS 1.3.0 Loosely defined geospatial bounding box in unspecified CRS for quick content searches */
144
+ function extractEXBoundingBox(xmlBoundingBox) {
145
+ const { westBoundLongitude: w, northBoundLatitude: n, eastBoundLongitude: e, southBoundLatitude: s } = xmlBoundingBox;
146
+ return [
147
+ [w, s],
148
+ [e, n]
149
+ ];
150
+ }
151
+ /** WMS 1.1.1 Loosely defined geospatial bounding box in unspecified CRS for quick content searches */
152
+ function extractLatLonBoundingBox(xmlBoundingBox) {
153
+ const { minx, miny, maxx, maxy } = xmlBoundingBox;
154
+ return [
155
+ [minx, miny],
156
+ [maxx, maxy]
157
+ ];
158
+ }
159
+ /** Loosely defined geospatial bounding box in unspecified CRS for quick content searches */
160
+ function extractWMSBoundingBoxes(xmlBoundingBoxes) {
161
+ const xmlBoxes = (0, parse_xml_helpers_1.getXMLArray)(xmlBoundingBoxes);
162
+ return xmlBoxes.map((xmlBox) => extractWMSBoundingBox(xmlBox));
163
+ }
164
+ /** Loosely defined geospatial bounding box in unspecified CRS for quick content searches */
165
+ function extractWMSBoundingBox(xmlBoundingBox) {
166
+ const { CRS, SRS, minx, miny, maxx, maxy, resx, resy } = xmlBoundingBox;
167
+ const boundingBox = {
168
+ // CRS in 1.3.0, SRS in 1.1.1
169
+ crs: CRS || SRS,
170
+ boundingBox: [
171
+ [(0, parse_xml_helpers_1.getXMLFloat)(minx), (0, parse_xml_helpers_1.getXMLFloat)(miny)],
172
+ [(0, parse_xml_helpers_1.getXMLFloat)(maxx), (0, parse_xml_helpers_1.getXMLFloat)(maxy)]
173
+ ]
174
+ };
175
+ if (resx) {
176
+ boundingBox.xResolution = resx;
177
+ }
178
+ if (resy) {
179
+ boundingBox.yResolution = resy;
180
+ }
181
+ return boundingBox;
182
+ }
183
+ /** Traverse layers and inject missing props from parents */
184
+ function addInheritedLayerProps(layer, parent) {
185
+ if (parent && parent.geographicBoundingBox && !layer.geographicBoundingBox) {
186
+ layer.geographicBoundingBox = [...parent.geographicBoundingBox];
187
+ }
188
+ if (parent && parent.crs && !layer.crs) {
189
+ layer.crs = [...parent.crs];
190
+ }
191
+ if (parent && parent.boundingBoxes && !layer.boundingBoxes) {
192
+ layer.boundingBoxes = [...parent.boundingBoxes];
193
+ }
194
+ // TODO inherit other elements
195
+ for (const subLayer of layer.layers || []) {
196
+ addInheritedLayerProps(subLayer, layer);
197
+ }
198
+ }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Extract an error message from WMS error response XML
3
+ * @param text
4
+ * @param options
5
+ * @returns a string with a human readable message
6
+ */
7
+ export declare function parseWMSError(text: string, options: any): string;
8
+ //# sourceMappingURL=parse-wms-error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-wms-error.d.ts","sourceRoot":"","sources":["../../../../src/lib/parsers/wms/parse-wms-error.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,KAAA,GAAG,MAAM,CAW3D"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ // loaders.gl, MIT license
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.parseWMSError = void 0;
5
+ const xml_1 = require("@loaders.gl/xml");
6
+ /**
7
+ * Extract an error message from WMS error response XML
8
+ * @param text
9
+ * @param options
10
+ * @returns a string with a human readable message
11
+ */
12
+ function parseWMSError(text, options) {
13
+ const parsedXML = xml_1.XMLLoader.parseTextSync?.(text, options);
14
+ const serviceExceptionXML = parsedXML?.ServiceExceptionReport?.ServiceException ||
15
+ parsedXML?.['ogc:ServiceExceptionReport']?.['ogc:ServiceException'];
16
+ // Sigh, can be either a string or an object
17
+ const message = typeof serviceExceptionXML === 'string'
18
+ ? serviceExceptionXML
19
+ : serviceExceptionXML.value || serviceExceptionXML.code || 'Unknown error';
20
+ return message;
21
+ }
22
+ exports.parseWMSError = parseWMSError;
@@ -0,0 +1,20 @@
1
+ /** WMS Feature info - response to a WMS `GetFeatureInfo` request */
2
+ export type WMSFeatureInfo = {
3
+ features: WMSFeature[];
4
+ };
5
+ export type WMSFeature = {
6
+ attributes: Record<string, number | string>;
7
+ type: string;
8
+ bounds: {
9
+ top: number;
10
+ bottom: number;
11
+ left: number;
12
+ right: number;
13
+ };
14
+ };
15
+ /**
16
+ * Parses a typed data structure from raw XML for `GetFeatureInfo` response
17
+ * @note Error handlings is fairly weak
18
+ */
19
+ export declare function parseWMSFeatureInfo(text: string, options: any): WMSFeatureInfo;
20
+ //# sourceMappingURL=parse-wms-features.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-wms-features.d.ts","sourceRoot":"","sources":["../../../../src/lib/parsers/wms/parse-wms-features.ts"],"names":[],"mappings":"AAIA,oEAAoE;AACpE,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,UAAU,EAAE,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,CAAC;CACpE,CAAC;AAEF;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,KAAA,GAAG,cAAc,CASzE"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ // loaders.gl, MIT license
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.parseWMSFeatureInfo = void 0;
5
+ const xml_1 = require("@loaders.gl/xml");
6
+ /**
7
+ * Parses a typed data structure from raw XML for `GetFeatureInfo` response
8
+ * @note Error handlings is fairly weak
9
+ */
10
+ function parseWMSFeatureInfo(text, options) {
11
+ const parsedXML = xml_1.XMLLoader.parseTextSync(text, options);
12
+ const xmlFeatureInfo = parsedXML.FeatureInfoResponse?.FIELDS || [];
13
+ const xmlFeatures = Array.isArray(xmlFeatureInfo) ? xmlFeatureInfo : [xmlFeatureInfo];
14
+ return {
15
+ features: xmlFeatures.map((xmlFeature) => extractFeature(xmlFeature))
16
+ };
17
+ }
18
+ exports.parseWMSFeatureInfo = parseWMSFeatureInfo;
19
+ function extractFeature(xmlFeature) {
20
+ const xmlFields = xmlFeature || {};
21
+ // TODO - not correct
22
+ return {
23
+ attributes: xmlFields,
24
+ type: '',
25
+ bounds: { bottom: 0, top: 0, left: 0, right: 0 }
26
+ };
27
+ }
@@ -0,0 +1,10 @@
1
+ /** Layer description - response to a WMS `DescribeLayer` request */
2
+ export type WMSLayerDescription = {
3
+ layers: {}[];
4
+ };
5
+ /**
6
+ * Parses a typed data structure from raw XML for `GetFeatureInfo` response
7
+ * @note Error handlings is fairly weak
8
+ */
9
+ export declare function parseWMSLayerDescription(text: string, options: any): WMSLayerDescription;
10
+ //# sourceMappingURL=parse-wms-layer-description.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-wms-layer-description.d.ts","sourceRoot":"","sources":["../../../../src/lib/parsers/wms/parse-wms-layer-description.ts"],"names":[],"mappings":"AAIA,qEAAqE;AACrE,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,EAAE,EAAE,CAAC;CACd,CAAC;AAEF;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,KAAA,GAAG,mBAAmB,CAInF"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ // loaders.gl, MIT license
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.parseWMSLayerDescription = void 0;
5
+ const xml_1 = require("@loaders.gl/xml");
6
+ /**
7
+ * Parses a typed data structure from raw XML for `GetFeatureInfo` response
8
+ * @note Error handlings is fairly weak
9
+ */
10
+ function parseWMSLayerDescription(text, options) {
11
+ const parsedXML = xml_1.XMLLoader.parseTextSync(text, options);
12
+ // TODO - implement parser
13
+ return parsedXML;
14
+ }
15
+ exports.parseWMSLayerDescription = parseWMSLayerDescription;
@@ -0,0 +1,11 @@
1
+ /** A single element of an array is not represented as an array in XML */
2
+ export declare function getXMLArray(xmlValue: any): any[];
3
+ /** Get a list of strings from XML */
4
+ export declare function getXMLStringArray(xmlValue: any): string[];
5
+ /** Get XML float */
6
+ export declare function getXMLFloat(xmlValue: any, defaultValue?: undefined): number | undefined;
7
+ /** Get XML integer */
8
+ export declare function getXMLInteger(xmlValue: any, defaultValue?: undefined): number | undefined;
9
+ /** Somewhat arbitrary boolean parsing */
10
+ export declare function getXMLBoolean(xmlValue: any): boolean;
11
+ //# sourceMappingURL=parse-xml-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse-xml-helpers.d.ts","sourceRoot":"","sources":["../../../../src/lib/parsers/xml/parse-xml-helpers.ts"],"names":[],"mappings":"AAEA,yEAAyE;AACzE,wBAAgB,WAAW,CAAC,QAAQ,EAAE,GAAG,GAAG,GAAG,EAAE,CAWhD;AAED,qCAAqC;AACrC,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,GAAG,GAAG,MAAM,EAAE,CAOzD;AAED,oBAAoB;AACpB,wBAAgB,WAAW,CAAC,QAAQ,EAAE,GAAG,EAAE,YAAY,YAAY,GAAG,MAAM,GAAG,SAAS,CASvF;AAED,sBAAsB;AACtB,wBAAgB,aAAa,CAAC,QAAQ,EAAE,GAAG,EAAE,YAAY,YAAY,GAAG,MAAM,GAAG,SAAS,CASzF;AAED,yCAAyC;AACzC,wBAAgB,aAAa,CAAC,QAAQ,EAAE,GAAG,GAAG,OAAO,CAapD"}
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+ // loaders.gl, MIT license
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.getXMLBoolean = exports.getXMLInteger = exports.getXMLFloat = exports.getXMLStringArray = exports.getXMLArray = void 0;
5
+ /** A single element of an array is not represented as an array in XML */
6
+ function getXMLArray(xmlValue) {
7
+ // Already an array, return as is
8
+ if (Array.isArray(xmlValue)) {
9
+ return xmlValue;
10
+ }
11
+ // Single value, wrap in array
12
+ if (xmlValue) {
13
+ return [xmlValue];
14
+ }
15
+ // nullish, return empty array
16
+ return [];
17
+ }
18
+ exports.getXMLArray = getXMLArray;
19
+ /** Get a list of strings from XML */
20
+ function getXMLStringArray(xmlValue) {
21
+ const xmlArray = getXMLArray(xmlValue);
22
+ if (xmlArray.length > 0 && xmlArray.every((_) => typeof _ === 'string')) {
23
+ return xmlArray;
24
+ }
25
+ // TODO - error handling?
26
+ return [];
27
+ }
28
+ exports.getXMLStringArray = getXMLStringArray;
29
+ /** Get XML float */
30
+ function getXMLFloat(xmlValue, defaultValue = undefined) {
31
+ switch (typeof xmlValue) {
32
+ case 'number':
33
+ return xmlValue;
34
+ case 'string':
35
+ return parseFloat(xmlValue);
36
+ default:
37
+ return undefined;
38
+ }
39
+ }
40
+ exports.getXMLFloat = getXMLFloat;
41
+ /** Get XML integer */
42
+ function getXMLInteger(xmlValue, defaultValue = undefined) {
43
+ switch (typeof xmlValue) {
44
+ case 'number':
45
+ return xmlValue;
46
+ case 'string':
47
+ return parseInt(xmlValue, 10);
48
+ default:
49
+ return undefined;
50
+ }
51
+ }
52
+ exports.getXMLInteger = getXMLInteger;
53
+ /** Somewhat arbitrary boolean parsing */
54
+ function getXMLBoolean(xmlValue) {
55
+ switch (xmlValue) {
56
+ case 'true':
57
+ return true;
58
+ case 'false':
59
+ return false;
60
+ case '1':
61
+ return true;
62
+ case '0':
63
+ return false;
64
+ default:
65
+ return false;
66
+ }
67
+ }
68
+ exports.getXMLBoolean = getXMLBoolean;
@@ -1,16 +1,23 @@
1
1
  import { ImageType } from '@loaders.gl/images';
2
- import type { ImageSourceMetadata, GetImageParameters } from '../image-source';
3
- import { ImageSource } from '../image-source';
4
- import { ImageServiceProps } from './image-service';
5
- export declare class ArcGISImageService extends ImageSource {
2
+ import type { ImageSourceMetadata, GetImageParameters } from '../../sources/image-source';
3
+ import type { ImageSourceProps } from '../../sources/image-source';
4
+ import { ImageSource } from '../../sources/image-source';
5
+ export type ArcGISImageServerProps = ImageSourceProps & {
6
+ url: string;
7
+ };
8
+ /**
9
+ * ArcGIS ImageServer
10
+ * Note - exports a big API, that could be exposed here if there is a use case
11
+ * @see https://developers.arcgis.com/rest/services-reference/enterprise/image-service.htm
12
+ */
13
+ export declare class ArcGISImageServer extends ImageSource {
6
14
  static type: 'arcgis-image-server';
7
15
  static testURL: (url: string) => boolean;
8
- props: Required<ImageServiceProps>;
9
- fetch: (url: string, options?: RequestInit) => Promise<Response>;
10
- constructor(props: ImageServiceProps);
16
+ props: ArcGISImageServerProps;
17
+ constructor(props: ArcGISImageServerProps);
11
18
  getMetadata(): Promise<ImageSourceMetadata>;
12
19
  getImage(parameters: GetImageParameters): Promise<ImageType>;
13
- info(): Promise<unknown>;
20
+ metadata(): Promise<unknown>;
14
21
  /**
15
22
  * Form a URL to an ESRI ImageServer
16
23
  // https://sampleserver6.arcgisonline.com/arcgis/rest/services/NLCDLandCover2001/ImageServer/exportImage?bbox=${bounds[0]},${bounds[1]},${bounds[2]},${bounds[3]}&bboxSR=4326&size=${width},${height}&imageSR=102100&time=&format=jpgpng&pixelType=U8&noData=&noDataInterpretation=esriNoDataMatchAny&interpolation=+RSP_NearestNeighbor&compression=&compressionQuality=&bandIds=&mosaicRule=&renderingRule=&f=image`,
@@ -34,16 +41,21 @@ export declare class ArcGISImageService extends ImageSource {
34
41
  renderingRule?: never;
35
42
  f?: 'image';
36
43
  }): Promise<ImageType>;
37
- infoURL(options: {
44
+ metadataURL(options: {
38
45
  parameters?: Record<string, unknown>;
39
46
  }): string;
40
47
  /**
41
48
  * Form a URL to an ESRI ImageServer
42
- // https://sampleserver6.arcgisonline.com/arcgis/rest/services/NLCDLandCover2001/ImageServer/exportImage?bbox=${bounds[0]},${bounds[1]},${bounds[2]},${bounds[3]}&bboxSR=4326&size=${width},${height}&imageSR=102100&time=&format=jpgpng&pixelType=U8&noData=&noDataInterpretation=esriNoDataMatchAny&interpolation=+RSP_NearestNeighbor&compression=&compressionQuality=&bandIds=&mosaicRule=&renderingRule=&f=image`,
49
+ // https://sampleserver6.arcgisonline.com/arcgis/rest/services/NLCDLandCover2001/ImageServer/exportImage?
50
+ // bbox=${bounds[0]},${bounds[1]},${bounds[2]},${bounds[3]}&bboxSR=4326&
51
+ // size=${width},${height}&imageSR=102100&time=&format=jpgpng&pixelType=U8&
52
+ // noData=&noDataInterpretation=esriNoDataMatchAny&interpolation=+RSP_NearestNeighbor&compression=&
53
+ // compressionQuality=&bandIds=&mosaicRule=&renderingRule=&
54
+ // f=image
43
55
  */
44
56
  exportImageURL(options: {
45
- boundingBox: [number, number, number, number];
46
- boundingBoxSR?: string;
57
+ bbox: [number, number, number, number];
58
+ boxSR?: string;
47
59
  width: number;
48
60
  height: number;
49
61
  imageSR?: string;
@@ -64,7 +76,7 @@ export declare class ArcGISImageService extends ImageSource {
64
76
  * @note protected, since perhaps getWMSUrl may need to be overridden to handle certain backends?
65
77
  * @note if override is common, maybe add a callback prop?
66
78
  * */
67
- protected getUrl(options: Record<string, unknown>, extra?: Record<string, unknown>): string;
79
+ protected getUrl(path: string, options: Record<string, unknown>, extra?: Record<string, unknown>): string;
68
80
  /** Checks for and parses a WMS XML formatted ServiceError and throws an exception */
69
81
  protected checkResponse(response: Response): Promise<void>;
70
82
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arcgis-image-service.d.ts","sourceRoot":"","sources":["../../../../src/lib/services/arcgis/arcgis-image-service.ts"],"names":[],"mappings":"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"}