@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
@@ -1 +1 @@
1
- {"version":3,"file":"wms-capabilities-loader.d.ts","sourceRoot":"","sources":["../src/wms-capabilities-loader.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,gBAAgB,EAAE,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAO9E,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG;IAC7C,GAAG,CAAC,EAAE,EAAE,CAAC;CACV,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;yBAaL,WAAW,YAAY,gBAAgB;0BAE5C,MAAM,YAAY,gBAAgB;CACzD,CAAC;AAEF,iBAAS,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAG1C;AAED,eAAO,MAAM,+BAA+B,EAAE,gBAAwC,CAAC"}
1
+ {"version":3,"file":"wms-capabilities-loader.d.ts","sourceRoot":"","sources":["../src/wms-capabilities-loader.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,gBAAgB,EAAE,aAAa,EAAC,MAAM,0BAA0B,CAAC;AAC9E,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,0CAA0C,CAAC;AAQ9E,YAAY,EAAC,eAAe,EAAC,CAAC;AAE9B,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG;IAC7C,GAAG,CAAC,EAAE;QACJ,oDAAoD;QACpD,mBAAmB,CAAC,EAAE,OAAO,CAAC;QAC9B,gDAAgD;QAChD,GAAG,CAAC,EAAE,OAAO,CAAC;KACf,CAAC;CACH,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;yBAaL,WAAW,YAAY,gBAAgB;0BAE5C,MAAM,YAAY,gBAAgB;CAEzD,CAAC;AAEF,iBAAS,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAG1C;AAED,eAAO,MAAM,+BAA+B,EAAE,gBAAwC,CAAC"}
@@ -2,7 +2,7 @@
2
2
  // loaders.gl, MIT license
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports._typecheckWMSCapabilitiesLoader = exports.WMSCapabilitiesLoader = void 0;
5
- const parse_wms_1 = require("./lib/wms/parse-wms");
5
+ const parse_wms_capabilities_1 = require("./lib/parsers/wms/parse-wms-capabilities");
6
6
  // __VERSION__ is injected by babel-plugin-version-inline
7
7
  // @ts-ignore TS2304: Cannot find name '__VERSION__'.
8
8
  const VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';
@@ -21,8 +21,8 @@ exports.WMSCapabilitiesLoader = {
21
21
  options: {
22
22
  wms: {}
23
23
  },
24
- parse: async (arrayBuffer, options) => (0, parse_wms_1.parseWMSCapabilities)(new TextDecoder().decode(arrayBuffer), options),
25
- parseTextSync: (text, options) => (0, parse_wms_1.parseWMSCapabilities)(text, options)
24
+ parse: async (arrayBuffer, options) => (0, parse_wms_capabilities_1.parseWMSCapabilities)(new TextDecoder().decode(arrayBuffer), options?.wms),
25
+ parseTextSync: (text, options) => (0, parse_wms_capabilities_1.parseWMSCapabilities)(text, options?.wms)
26
26
  };
27
27
  function testXMLFile(text) {
28
28
  // TODO - There could be space first.
@@ -2,7 +2,7 @@
2
2
  // loaders.gl, MIT license
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports._typecheckWMSErrorLoader = exports.WMSErrorLoader = void 0;
5
- const parse_wms_1 = require("./lib/wms/parse-wms");
5
+ const parse_wms_error_1 = require("./lib/parsers/wms/parse-wms-error");
6
6
  // __VERSION__ is injected by babel-plugin-version-inline
7
7
  // @ts-ignore TS2304: Cannot find name '__VERSION__'.
8
8
  const VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';
@@ -33,7 +33,7 @@ function testXMLFile(text) {
33
33
  }
34
34
  function parseTextSync(text, options) {
35
35
  const wmsOptions = { ...exports.WMSErrorLoader.options.wms, ...options?.wms };
36
- const error = (0, parse_wms_1.parseWMSError)(text, wmsOptions);
36
+ const error = (0, parse_wms_error_1.parseWMSError)(text, wmsOptions);
37
37
  const message = wmsOptions.minimalErrors ? error : `WMS Service error: ${error}`;
38
38
  if (wmsOptions.throwOnError) {
39
39
  throw new Error(message);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@loaders.gl/wms",
3
- "version": "3.4.0-alpha.1",
3
+ "version": "3.4.0-alpha.3",
4
4
  "description": "Framework-independent loaders for the WMS (Web Map Service) standard",
5
5
  "license": "MIT",
6
6
  "publishConfig": {
@@ -35,14 +35,14 @@
35
35
  ],
36
36
  "scripts": {
37
37
  "pre-build": "npm run build-bundle",
38
- "build-bundle": "esbuild src/bundle.ts --bundle --outfile=dist/dist.min.js --platform=node"
38
+ "build-bundle": "esbuild src/bundle.ts --bundle --outfile=dist/dist.min.js"
39
39
  },
40
40
  "dependencies": {
41
41
  "@babel/runtime": "^7.3.1",
42
- "@loaders.gl/images": "3.4.0-alpha.1",
43
- "@loaders.gl/loader-utils": "3.4.0-alpha.1",
44
- "@loaders.gl/schema": "3.4.0-alpha.1",
45
- "@loaders.gl/xml": "3.4.0-alpha.1",
42
+ "@loaders.gl/images": "3.4.0-alpha.3",
43
+ "@loaders.gl/loader-utils": "3.4.0-alpha.3",
44
+ "@loaders.gl/schema": "3.4.0-alpha.3",
45
+ "@loaders.gl/xml": "3.4.0-alpha.3",
46
46
  "@turf/rewind": "^5.1.5",
47
47
  "deep-strict-equal": "^0.2.0",
48
48
  "lerc": "^4.0.1"
@@ -50,5 +50,5 @@
50
50
  "devDependencies": {
51
51
  "xmldom": "0.6.0"
52
52
  },
53
- "gitHead": "4085b0323050e4361614471319a1fb4729547bbf"
53
+ "gitHead": "a954528dd1d78a1f128d8f6b07e4baeb7a296924"
54
54
  }
@@ -0,0 +1,46 @@
1
+ // loaders.gl, MIT license
2
+
3
+ import type {LoaderWithParser} from '@loaders.gl/loader-utils';
4
+ import type {XMLLoaderOptions} from '@loaders.gl/xml';
5
+ import type {CSWCapabilities} from './lib/parsers/csw/parse-csw-capabilities';
6
+ import {parseCSWCapabilities} from './lib/parsers/csw/parse-csw-capabilities';
7
+
8
+ // __VERSION__ is injected by babel-plugin-version-inline
9
+ // @ts-ignore TS2304: Cannot find name '__VERSION__'.
10
+ const VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';
11
+
12
+ // parsed data type
13
+ export type {CSWCapabilities};
14
+
15
+ /** CSW loader options */
16
+ export type CSWLoaderOptions = XMLLoaderOptions & {
17
+ csw?: {};
18
+ };
19
+
20
+ /**
21
+ * Loader for the response to the CSW GetCapability request
22
+ */
23
+ export const CSWCapabilitiesLoader = {
24
+ id: 'csw-capabilities',
25
+ name: 'CSW Capabilities',
26
+
27
+ module: 'wms',
28
+ version: VERSION,
29
+ worker: false,
30
+ extensions: ['xml'],
31
+ mimeTypes: ['application/vnd.ogc.csw_xml', 'application/xml', 'text/xml'],
32
+ testText: testXMLFile,
33
+ options: {
34
+ csw: {}
35
+ },
36
+ parse: async (arrayBuffer: ArrayBuffer, options?: CSWLoaderOptions) =>
37
+ parseCSWCapabilities(new TextDecoder().decode(arrayBuffer), options),
38
+ parseTextSync: (text: string, options?: CSWLoaderOptions) => parseCSWCapabilities(text, options)
39
+ };
40
+
41
+ function testXMLFile(text: string): boolean {
42
+ // TODO - There could be space first.
43
+ return text.startsWith('<?xml');
44
+ }
45
+
46
+ export const _typecheckCSWCapabilitiesLoader: LoaderWithParser = CSWCapabilitiesLoader;
@@ -0,0 +1,44 @@
1
+ // loaders.gl, MIT license
2
+
3
+ import type {LoaderWithParser} from '@loaders.gl/loader-utils';
4
+ import type {XMLLoaderOptions} from '@loaders.gl/xml';
5
+ import type {CSWDomain} from './lib/parsers/csw/parse-csw-domain';
6
+ import {parseCSWDomain} from './lib/parsers/csw/parse-csw-domain';
7
+
8
+ // __VERSION__ is injected by babel-plugin-version-inline
9
+ // @ts-ignore TS2304: Cannot find name '__VERSION__'.
10
+ const VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';
11
+
12
+ export type {CSWDomain};
13
+
14
+ export type CSWLoaderOptions = XMLLoaderOptions & {
15
+ csw?: {};
16
+ };
17
+
18
+ /**
19
+ * Loader for the response to the CSW GetCapability request
20
+ */
21
+ export const CSWDomainLoader = {
22
+ id: 'csw-domain',
23
+ name: 'CSW Domain',
24
+
25
+ module: 'wms',
26
+ version: VERSION,
27
+ worker: false,
28
+ extensions: ['xml'],
29
+ mimeTypes: ['application/vnd.ogc.csw_xml', 'application/xml', 'text/xml'],
30
+ testText: testXMLFile,
31
+ options: {
32
+ csw: {}
33
+ },
34
+ parse: async (arrayBuffer: ArrayBuffer, options?: CSWLoaderOptions) =>
35
+ parseCSWDomain(new TextDecoder().decode(arrayBuffer), options),
36
+ parseTextSync: (text: string, options?: CSWLoaderOptions) => parseCSWDomain(text, options)
37
+ };
38
+
39
+ function testXMLFile(text: string): boolean {
40
+ // TODO - There could be space first.
41
+ return text.startsWith('<?xml');
42
+ }
43
+
44
+ export const _typecheckCSWDomainLoader: LoaderWithParser = CSWDomainLoader;
@@ -0,0 +1,42 @@
1
+ // loaders.gl, MIT license
2
+
3
+ import type {LoaderWithParser} from '@loaders.gl/loader-utils';
4
+ import type {XMLLoaderOptions} from '@loaders.gl/xml';
5
+ import type {CSWRecords} from './lib/parsers/csw/parse-csw-records';
6
+ import {parseCSWRecords} from './lib/parsers/csw/parse-csw-records';
7
+
8
+ // __VERSION__ is injected by babel-plugin-version-inline
9
+ // @ts-ignore TS2304: Cannot find name '__VERSION__'.
10
+ const VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';
11
+
12
+ export {CSWRecords};
13
+
14
+ export type CSWLoaderOptions = XMLLoaderOptions & {
15
+ csw?: {};
16
+ };
17
+
18
+ /**
19
+ * Loader for the response to the CSW GetCapability request
20
+ */
21
+ export const CSWRecordsLoader: LoaderWithParser = {
22
+ id: 'csw-records',
23
+ name: 'CSW Domain',
24
+
25
+ module: 'wms',
26
+ version: VERSION,
27
+ worker: false,
28
+ extensions: ['xml'],
29
+ mimeTypes: ['application/vnd.ogc.csw_xml', 'application/xml', 'text/xml'],
30
+ testText: testXMLFile,
31
+ options: {
32
+ csw: {}
33
+ },
34
+ parse: async (arrayBuffer: ArrayBuffer, options?: CSWLoaderOptions) =>
35
+ parseCSWRecords(new TextDecoder().decode(arrayBuffer), options),
36
+ parseTextSync: (text: string, options?: CSWLoaderOptions) => parseCSWRecords(text, options)
37
+ };
38
+
39
+ function testXMLFile(text: string): boolean {
40
+ // TODO - There could be space first.
41
+ return text.startsWith('<?xml');
42
+ }
@@ -1,7 +1,7 @@
1
1
  // loaders.gl, MIT license
2
2
 
3
3
  import type {LoaderWithParser, LoaderOptions} from '@loaders.gl/loader-utils';
4
- import {parseGML} from '../lib/gml/parse-gml';
4
+ import {parseGML} from './lib/parsers/gml/parse-gml';
5
5
 
6
6
  // __VERSION__ is injected by babel-plugin-version-inline
7
7
  // @ts-ignore TS2304: Cannot find name '__VERSION__'.
@@ -22,7 +22,7 @@ export const GMLLoader = {
22
22
  version: VERSION,
23
23
  worker: false,
24
24
  extensions: ['xml'],
25
- mimeTypes: ['application/vnd.ogc.gml_xml', 'application/xml', 'text/xml'],
25
+ mimeTypes: ['application/vnd.ogc.gml', 'application/xml', 'text/xml'],
26
26
  testText: testXMLFile,
27
27
  options: {
28
28
  gml: {}
package/src/index.ts CHANGED
@@ -1,58 +1,77 @@
1
1
  // loaders.gl, MIT license
2
2
 
3
- // WMS
3
+ // CSW - Catalog Service for the Web
4
4
 
5
- export {WMSErrorLoader} from './wms-error-loader';
5
+ export type {CSWLoaderOptions} from './csw-capabilities-loader';
6
6
 
7
- export type {WMSLoaderOptions} from './wms-capabilities-loader';
7
+ export type {CSWCapabilities} from './csw-capabilities-loader';
8
+ export {CSWCapabilitiesLoader} from './csw-capabilities-loader';
8
9
 
9
- export type {WMSCapabilities} from './lib/wms/wms-types';
10
- export {WMSCapabilitiesLoader} from './wms-capabilities-loader';
10
+ export type {CSWDomain} from './csw-domain-loader';
11
+ export {CSWDomainLoader} from './csw-domain-loader';
11
12
 
12
- // NOTE: Will likely move to tiles module
13
- export type {ImageSourceMetadata} from './lib/data-sources/image-source';
14
- export type {ImageType} from '@loaders.gl/images';
15
- export {ImageSource} from './lib/data-sources/image-source';
13
+ export type {CSWRecords} from './csw-records-loader';
14
+ export {CSWRecordsLoader} from './csw-records-loader';
16
15
 
17
- export type {ImageServiceType} from './lib/data-sources/create-image-source';
18
- export {createImageSource} from './lib/data-sources/create-image-source';
16
+ // WMS - Web Map Service
19
17
 
20
- export type {ImageServiceProps} from './lib/data-sources/image-services/image-service';
21
- export {ImageService} from './lib/data-sources/image-services/image-service';
22
- export {WMSService} from './lib/data-sources/image-services/wms-service';
23
- export {ArcGISImageService as _ArcGISImageService} from './lib/data-sources/image-services/arcgis-image-service';
18
+ export {WMSErrorLoader} from './wms-error-loader';
24
19
 
25
- // WIP /////////////////////////////////////////////////////////////////
26
- // Plumbing set up but details of parsing and typing not yet completed
20
+ export type {WMSLoaderOptions} from './wms-capabilities-loader';
27
21
 
28
- // WMS
22
+ export type {WMSCapabilities} from './wms-capabilities-loader';
23
+ export {WMSCapabilitiesLoader} from './wms-capabilities-loader';
29
24
 
30
- export type {WMSFeatureInfo as _WMSFeatureInfo} from './lib/wms/wms-types';
25
+ export type {WMSFeatureInfo as _WMSFeatureInfo} from './wip/wms-feature-info-loader';
31
26
  export {WMSFeatureInfoLoader as _WMSFeatureInfoLoader} from './wip/wms-feature-info-loader';
32
27
 
33
- export type {WMSLayerDescription as _WMSLayerDescription} from './lib/wms/wms-types';
28
+ export type {WMSLayerDescription as _WMSLayerDescription} from './wip/wms-layer-description-loader';
34
29
  export {WMSLayerDescriptionLoader as _WMSLayerDescriptionLoader} from './wip/wms-layer-description-loader';
35
30
 
36
- // WMTS
31
+ // WMTS - Web Map Tile Service
37
32
 
38
- export type {WMTSCapabilities as _WMTSCapabilities} from './lib/wmts/wmts-types';
39
- export type {WMTSLoaderOptions as _WMTSLoaderOptions} from './wip/wmts-capabilities-loader';
40
- export {WMTSCapabilitiesLoader as _WMTSCapabilitiesLoader} from './wip/wmts-capabilities-loader';
33
+ // export type {WMTSLoaderOptions as _WMTSLoaderOptions} from './wip/wmts-capabilities-loader';
34
+ // export type {WMTSCapabilities as _WMTSCapabilities} from './wip/wmts-capabilities-loader';
35
+ // export {WMTSCapabilitiesLoader as _WMTSCapabilitiesLoader} from './wip/wmts-capabilities-loader';
41
36
 
42
- // WFS
37
+ // WFS - Web Feature Service
43
38
 
44
- export type {WFSCapabilities as _WFSCapabilities} from './lib/wfs/wfs-types';
45
39
  export type {WFSLoaderOptions as _WFSLoaderOptions} from './wip/wfs-capabilities-loader';
40
+
41
+ export type {WFSCapabilities as _WFSCapabilities} from './wip/wfs-capabilities-loader';
46
42
  export {WFSCapabilitiesLoader as _WFSCapabilitiesLoader} from './wip/wfs-capabilities-loader';
47
43
 
48
- // GML
44
+ // GML - Geographic Markup Language
49
45
 
50
46
  export type {GeoJSON as _GeoJSON} from '@loaders.gl/schema';
51
- export type {GMLLoaderOptions as _GMLLoaderOptions} from './wip/gml-loader';
52
- export {GMLLoader as _GMLLoader} from './wip/gml-loader';
47
+ export type {GMLLoaderOptions as _GMLLoaderOptions} from './gml-loader';
48
+ export {GMLLoader as _GMLLoader} from './gml-loader';
49
+
50
+ // EXPERIMENTAL: DATA SOURCES
51
+
52
+ export type {ImageSourceMetadata} from './lib/sources/image-source';
53
+ export type {ImageType} from '@loaders.gl/images';
54
+ export {ImageSource} from './lib/sources/image-source';
55
+
56
+ export type {ImageServiceType} from './lib/create-image-source';
57
+ export {createImageSource} from './lib/create-image-source';
58
+
59
+ // Generic (Template URL) Services
60
+
61
+ export type {ImageServiceProps} from './lib/services/generic/image-service';
62
+ export {ImageService} from './lib/services/generic/image-service';
63
+
64
+ // OGC Services
65
+
66
+ export {CSWService} from './lib/services/ogc/csw-service';
67
+ export {WMSService} from './lib/services/ogc/wms-service';
68
+
69
+ // ArcGIS Services
53
70
 
54
- // LERC
71
+ export {getArcGISServices as _getArcGISServices} from './lib/services/arcgis/arcgis-server';
72
+ export {ArcGISImageServer as _ArcGISImageServer} from './lib/services/arcgis/arcgis-image-service';
55
73
 
74
+ // LERC - Limited Error Raster Compression
56
75
  // TODO - restore once esbuild bundling issues have been resolved
57
76
  // export type {LERCData} from './lib/lerc/lerc-types';
58
77
  // export {LERCLoader} from './lerc-loader';
@@ -1,7 +1,7 @@
1
1
  // loaders.gl, MIT license
2
2
 
3
3
  import type {LoaderWithParser, LoaderOptions} from '@loaders.gl/loader-utils';
4
- import type {LERCData} from './lib/lerc/lerc-types';
4
+ import type {LERCData} from './lib/parsers/lerc/lerc-types';
5
5
  import * as Lerc from 'lerc';
6
6
 
7
7
  // __VERSION__ is injected by babel-plugin-version-inline
@@ -1,26 +1,28 @@
1
1
  // loaders.gl, MIT license
2
2
 
3
- import {ImageSource} from './image-source';
4
- import {ImageService, ImageServiceProps} from './image-services/image-service';
5
- import {WMSService} from './image-services/wms-service';
6
- import {ArcGISImageService} from './image-services/arcgis-image-service';
3
+ import {ImageSource} from './sources/image-source';
4
+ import {ImageService, ImageServiceProps} from './services/generic/image-service';
5
+ import type {WMSServiceProps} from './services/ogc/wms-service';
6
+ import {WMSService} from './services/ogc/wms-service';
7
+ import {ArcGISImageServer} from './services/arcgis/arcgis-image-service';
7
8
 
8
9
  export type ImageServiceType = 'wms' | 'arcgis-image-server' | 'template';
9
10
 
10
- const SERVICES = [WMSService, ArcGISImageService, ImageService];
11
+ const SERVICES = [WMSService, ArcGISImageServer, ImageService];
11
12
 
12
- type Props = ImageServiceProps & {
13
- type?: ImageServiceType | 'auto';
14
- };
13
+ type ImageSourceProps = ImageServiceProps &
14
+ WMSServiceProps & {
15
+ type?: ImageServiceType | 'auto';
16
+ };
15
17
 
16
18
  /**
17
19
  * Creates an image source
18
- * If type is not supplied, will try to automatically detec the the
20
+ * If type is not supplied, will try to automatically detect the the
19
21
  * @param url URL to the image source
20
22
  * @param type type of source. if not known, set to 'auto'
21
23
  * @returns an ImageSource instance
22
24
  */
23
- export function createImageSource(props: Props): ImageSource {
25
+ export function createImageSource(props: ImageSourceProps): ImageSource {
24
26
  const {type = 'auto'} = props;
25
27
  const serviceType = type === 'auto' ? guessServiceType(props.url) : type;
26
28
  switch (serviceType) {
@@ -0,0 +1,103 @@
1
+ // loaders.gl, MIT license
2
+
3
+ import type {XMLLoaderOptions} from '@loaders.gl/xml';
4
+ import {XMLLoader} from '@loaders.gl/xml';
5
+ import {parseExceptionReport} from './parse-exception-report';
6
+
7
+ // CSW:GetCapabilitiesResponse
8
+
9
+ /** All capabilities of a CSW service - response to a CSW `GetCapabilities` data structure extracted from XML */
10
+ export type CSWCapabilities = {
11
+ serviceIdentification: {
12
+ title: string;
13
+ serviceTypeVersion: string;
14
+ serviceType: string;
15
+ };
16
+
17
+ serviceProvider: {
18
+ providerName: string;
19
+ providerSite: string;
20
+ serviceContact: {
21
+ individualName: string;
22
+ positionName: string;
23
+ contactInfo: {
24
+ address: {
25
+ administrativeArea: string;
26
+ city: string;
27
+ country: string;
28
+ deliveryPoint: string;
29
+ electronicMailAddress: string;
30
+ postalCode: string;
31
+ };
32
+ phone: {
33
+ voice: string;
34
+ };
35
+ };
36
+ };
37
+ };
38
+
39
+ operationsMetadata: {
40
+ GetCapabilities: any;
41
+ GetFeatureInfo: any;
42
+ GetTile: any;
43
+ };
44
+
45
+ contents: {
46
+ layers: {
47
+ abstract: string;
48
+ identifier: string;
49
+ title: string;
50
+ formats: string[];
51
+ styles: {
52
+ identifier: string;
53
+ isDefault: string;
54
+ title: string;
55
+ abstract?: string;
56
+ }[];
57
+ bounds: {
58
+ left: number;
59
+ right: number;
60
+ bottom: number;
61
+ top: number;
62
+ };
63
+ tileMatrixSetLinks: {
64
+ tileMatrixSet: string;
65
+ }[];
66
+ tileMatrixSets: {
67
+ identifier: string;
68
+ matrixIds: {
69
+ identifier: string;
70
+ matrixHeight: number;
71
+ matrixWidth: number;
72
+ scaleDenominator: number;
73
+ tileWidth: number;
74
+ tileHeight: number;
75
+ topLeftCorner: {
76
+ lon: number;
77
+ lat: number;
78
+ };
79
+ }[];
80
+ };
81
+ }[];
82
+ };
83
+ };
84
+
85
+ /**
86
+ * Parses a typed data structure from raw XML for `GetCapabilities` response
87
+ * @note Error handlings is fairly weak
88
+ */
89
+ export function parseCSWCapabilities(text: string, options?: XMLLoaderOptions): CSWCapabilities {
90
+ const parsedXML = XMLLoader.parseTextSync(text, {
91
+ ...options,
92
+ xml: {
93
+ ...options?.xml,
94
+ removeNSPrefix: true,
95
+ uncapitalizeKeys: true
96
+ }
97
+ });
98
+
99
+ parseExceptionReport(parsedXML);
100
+
101
+ const xmlCapabilities: any = parsedXML.capabilities || parsedXML;
102
+ return xmlCapabilities;
103
+ }
@@ -0,0 +1,45 @@
1
+ // loaders.gl, MIT license
2
+
3
+ import type {XMLLoaderOptions} from '@loaders.gl/xml';
4
+ import {XMLLoader} from '@loaders.gl/xml';
5
+ import {parseExceptionReport} from './parse-exception-report';
6
+
7
+ /** Describes the values of resource */
8
+ export type CSWDomain = {
9
+ domainValues: {
10
+ type: string;
11
+ propertyName: string;
12
+ values: {
13
+ [key: string]: unknown;
14
+ }[];
15
+ }[];
16
+ };
17
+
18
+ /**
19
+ * Parses a typed data structure from raw XML for `GetDomain` response
20
+ * @note Error handlings is fairly weak
21
+ */
22
+ export function parseCSWDomain(text: string, options?: XMLLoaderOptions): CSWDomain {
23
+ const parsedXML = XMLLoader.parseTextSync(text, {
24
+ ...options,
25
+ xml: {
26
+ ...options?.xml,
27
+ removeNSPrefix: true,
28
+ uncapitalizeKeys: true,
29
+ arrayPaths: [
30
+ 'GetDomainResponse.DomainValues',
31
+ 'GetDomainResponse.DomainValues.ListOfValues.value'
32
+ ]
33
+ }
34
+ });
35
+
36
+ parseExceptionReport(parsedXML);
37
+
38
+ const xmlDomain: any = parsedXML.getDomainResponse;
39
+ for (const domainValue of xmlDomain.domainValues) {
40
+ // Drop the nested <listOfValues><value><value><listOfValues> => values[]
41
+ domainValue.values = domainValue.listOfValues?.value;
42
+ delete domainValue.listOfValues;
43
+ }
44
+ return xmlDomain as CSWDomain;
45
+ }
@@ -0,0 +1,90 @@
1
+ // loaders.gl, MIT license
2
+
3
+ import {XMLLoaderOptions, convertXMLFieldToArrayInPlace} from '@loaders.gl/xml';
4
+ import {XMLLoader} from '@loaders.gl/xml';
5
+ import {parseExceptionReport} from './parse-exception-report';
6
+
7
+ export type CSWRecords = {
8
+ searchStatus: {
9
+ timestamp?: string;
10
+ };
11
+ searchResults: {
12
+ numberOfRecordsMatched: number;
13
+ numberOfRecordsReturned: number;
14
+ elementSet: string;
15
+ nextRecord: number;
16
+ };
17
+ records: {
18
+ type: string;
19
+ title: string;
20
+ abstract: string;
21
+ subject: string[];
22
+ boundingBoxes: {
23
+ crs: string;
24
+ value: [number, number, number, number];
25
+ }[];
26
+ references: {
27
+ value: string;
28
+ scheme: string;
29
+ }[];
30
+ }[];
31
+ };
32
+
33
+ /**
34
+ * Parses a typed data structure from raw XML for `GetRecords` response
35
+ * @note Error handlings is fairly weak
36
+ */
37
+ export function parseCSWRecords(text: string, options?: XMLLoaderOptions): CSWRecords {
38
+ const parsedXML = XMLLoader.parseTextSync(text, {
39
+ ...options,
40
+ xml: {
41
+ ...options?.xml,
42
+ removeNSPrefix: true,
43
+ uncapitalizeKeys: true,
44
+ arrayPaths: []
45
+ },
46
+ _fastXML: {
47
+ ...options?._fastXML,
48
+ parseAttributeValue: true
49
+ }
50
+ });
51
+
52
+ parseExceptionReport(parsedXML);
53
+
54
+ const xmlRecords: any = parsedXML.getRecordsResponse;
55
+
56
+ // Move results to top
57
+ const elementSet = xmlRecords.searchResults.elementSet;
58
+ const recordsFieldName = `${elementSet}Record`;
59
+ xmlRecords.records = xmlRecords.searchResults[recordsFieldName];
60
+ delete xmlRecords.searchResults[recordsFieldName];
61
+
62
+ convertXMLFieldToArrayInPlace(xmlRecords, 'records');
63
+
64
+ for (const record of xmlRecords.records) {
65
+ record.boundingBoxes = record.boundingBox;
66
+ delete record.boundingBox;
67
+
68
+ convertXMLFieldToArrayInPlace(record, 'boundingBoxes');
69
+
70
+ for (const boundingBox of record.boundingBoxes) {
71
+ boundingBox.value = [
72
+ boundingBox.upperCorner[0],
73
+ boundingBox.upperCorner[1],
74
+ boundingBox.lowerCorner[0],
75
+ boundingBox.lowerCorner[1]
76
+ ];
77
+ delete boundingBox.upperCorner;
78
+ delete boundingBox.lowerCorner;
79
+ }
80
+ }
81
+
82
+ return xmlRecords as CSWRecords;
83
+ }
84
+
85
+ export function renameXMLTags(xml: any, renameKeys: Record<string, string>): void {
86
+ for (const [oldKey, newKey] of Object.entries(renameKeys)) {
87
+ xml[newKey] = xml[oldKey];
88
+ delete xml[oldKey];
89
+ }
90
+ }
@@ -0,0 +1,31 @@
1
+ // loaders.gl, MIT license
2
+
3
+ // import type {XMLLoaderOptions} from '@loaders.gl/xml';
4
+ // import {XMLLoader} from '@loaders.gl/xml';
5
+
6
+ /**
7
+ * Parses a typed data structure from raw XML for `GetDomain` response
8
+ * @note Error handlings is fairly weak
9
+ */
10
+ export function parseExceptionReport(parsedXML: any): void {
11
+ // const parsedXML = XMLLoader.parseTextSync(text, {
12
+ // ...options,
13
+ // xml: {
14
+ // ...options?.xml,
15
+ // removeNSPrefix: true,
16
+ // uncapitalizeKeys: true
17
+ // }
18
+ // });
19
+
20
+ const exceptionReport: any = parsedXML.exceptionReport;
21
+ if (!exceptionReport) {
22
+ return;
23
+ }
24
+ const errorMessage =
25
+ exceptionReport.exception?.exceptionText ||
26
+ exceptionReport.exception?.exceptionCode ||
27
+ exceptionReport.exception?.locator ||
28
+ 'server error';
29
+
30
+ throw new Error(`Catalog Server: ${errorMessage}`);
31
+ }