@loaders.gl/wms 3.3.2 → 3.4.0-alpha.2

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 (404) 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 +3781 -4001
  11. package/dist/es5/csw-capabilities-loader.js +55 -0
  12. package/dist/es5/csw-capabilities-loader.js.map +1 -0
  13. package/dist/es5/csw-domain-loader.js +54 -0
  14. package/dist/es5/csw-domain-loader.js.map +1 -0
  15. package/dist/es5/csw-records-loader.js +52 -0
  16. package/dist/es5/csw-records-loader.js.map +1 -0
  17. package/dist/es5/{wip/gml-loader.js → gml-loader.js} +3 -3
  18. package/dist/es5/gml-loader.js.map +1 -0
  19. package/dist/es5/index.js +43 -8
  20. package/dist/es5/index.js.map +1 -1
  21. package/dist/es5/lerc-loader.js +1 -1
  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} +4 -4
  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 +76 -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 +18 -0
  32. package/dist/es5/lib/parsers/csw/parse-exception-report.js.map +1 -0
  33. package/dist/es5/lib/parsers/gml/deep-strict-equal.js.map +1 -0
  34. package/dist/es5/lib/parsers/gml/parse-gml.js.map +1 -0
  35. package/dist/es5/lib/parsers/lerc/lerc-types.js.map +1 -0
  36. package/dist/es5/lib/{wms/parse-wms.js → parsers/wms/parse-wms-capabilities.js} +1 -42
  37. package/dist/es5/lib/parsers/wms/parse-wms-capabilities.js.map +1 -0
  38. package/dist/es5/lib/parsers/wms/parse-wms-error.js +16 -0
  39. package/dist/es5/lib/parsers/wms/parse-wms-error.js.map +1 -0
  40. package/dist/es5/lib/parsers/wms/parse-wms-features.js +33 -0
  41. package/dist/es5/lib/parsers/wms/parse-wms-features.js.map +1 -0
  42. package/dist/es5/lib/parsers/wms/parse-wms-layer-description.js +13 -0
  43. package/dist/es5/lib/parsers/wms/parse-wms-layer-description.js.map +1 -0
  44. package/dist/es5/lib/{data-sources/image-services → services/arcgis}/arcgis-image-service.js +36 -29
  45. package/dist/es5/lib/services/arcgis/arcgis-image-service.js.map +1 -0
  46. package/dist/es5/lib/services/arcgis/arcgis-server.js +115 -0
  47. package/dist/es5/lib/services/arcgis/arcgis-server.js.map +1 -0
  48. package/dist/es5/lib/{data-sources/adhoc-image-service.js → services/generic/image-service.js} +22 -19
  49. package/dist/es5/lib/services/generic/image-service.js.map +1 -0
  50. package/dist/es5/lib/services/generic/tile-service.js +2 -0
  51. package/dist/es5/lib/services/generic/tile-service.js.map +1 -0
  52. package/dist/es5/lib/services/ogc/csw-service.js +384 -0
  53. package/dist/es5/lib/services/ogc/csw-service.js.map +1 -0
  54. package/dist/es5/lib/{data-sources/image-services → services/ogc}/wms-service.js +163 -115
  55. package/dist/es5/lib/services/ogc/wms-service.js.map +1 -0
  56. package/dist/es5/lib/services/ogc/wmts-service.ts.disabled +348 -0
  57. package/dist/es5/lib/sources/data-source.js +44 -0
  58. package/dist/es5/lib/sources/data-source.js.map +1 -0
  59. package/dist/es5/lib/sources/image-source.js +26 -0
  60. package/dist/es5/lib/sources/image-source.js.map +1 -0
  61. package/dist/es5/lib/sources/tile-source.js +26 -0
  62. package/dist/es5/lib/sources/tile-source.js.map +1 -0
  63. package/dist/es5/lib/sources/utils/utils.js +40 -0
  64. package/dist/es5/lib/sources/utils/utils.js.map +1 -0
  65. package/dist/es5/{lib/wfs/parse-wfs.js → wip/lib/wcs/parse-wcs-capabilities.js} +7 -29
  66. package/dist/es5/wip/lib/wcs/parse-wcs-capabilities.js.map +1 -0
  67. package/dist/es5/{lib/wcs/parse-wcs.js → wip/lib/wfs/parse-wfs-capabilities.js} +7 -28
  68. package/dist/es5/wip/lib/wfs/parse-wfs-capabilities.js.map +1 -0
  69. package/dist/es5/{lib/wmts/parse-wmts.js → wip/lib/wmts/parse-wmts-capabilities.js} +7 -28
  70. package/dist/es5/wip/lib/wmts/parse-wmts-capabilities.js.map +1 -0
  71. package/dist/es5/wip/wcs-capabilities-loader.js +4 -4
  72. package/dist/es5/wip/wcs-capabilities-loader.js.map +1 -1
  73. package/dist/es5/wip/wfs-capabilities-loader.js +4 -4
  74. package/dist/es5/wip/wfs-capabilities-loader.js.map +1 -1
  75. package/dist/es5/wip/wms-feature-info-loader.js +3 -3
  76. package/dist/es5/wip/wms-feature-info-loader.js.map +1 -1
  77. package/dist/es5/wip/wms-layer-description-loader.js +3 -3
  78. package/dist/es5/wip/wms-layer-description-loader.js.map +1 -1
  79. package/dist/es5/wip/wmts-capabilities-loader.js +10 -4
  80. package/dist/es5/wip/wmts-capabilities-loader.js.map +1 -1
  81. package/dist/es5/wms-capabilities-loader.js +5 -4
  82. package/dist/es5/wms-capabilities-loader.js.map +1 -1
  83. package/dist/es5/wms-error-loader.js +3 -3
  84. package/dist/es5/wms-error-loader.js.map +1 -1
  85. package/dist/esm/csw-capabilities-loader.js +26 -0
  86. package/dist/esm/csw-capabilities-loader.js.map +1 -0
  87. package/dist/esm/csw-domain-loader.js +25 -0
  88. package/dist/esm/csw-domain-loader.js.map +1 -0
  89. package/dist/esm/csw-records-loader.js +24 -0
  90. package/dist/esm/csw-records-loader.js.map +1 -0
  91. package/dist/esm/{wip/gml-loader.js → gml-loader.js} +3 -3
  92. package/dist/esm/gml-loader.js.map +1 -0
  93. package/dist/esm/index.js +16 -8
  94. package/dist/esm/index.js.map +1 -1
  95. package/dist/esm/lerc-loader.js +1 -1
  96. package/dist/esm/lerc-loader.js.map +1 -1
  97. package/dist/esm/lib/{data-sources/create-image-source.js → create-image-source.js} +4 -4
  98. package/dist/esm/lib/create-image-source.js.map +1 -0
  99. package/dist/esm/lib/parsers/csw/parse-csw-capabilities.js +19 -0
  100. package/dist/esm/lib/parsers/csw/parse-csw-capabilities.js.map +1 -0
  101. package/dist/esm/lib/parsers/csw/parse-csw-domain.js +25 -0
  102. package/dist/esm/lib/parsers/csw/parse-csw-domain.js.map +1 -0
  103. package/dist/esm/lib/parsers/csw/parse-csw-records.js +46 -0
  104. package/dist/esm/lib/parsers/csw/parse-csw-records.js.map +1 -0
  105. package/dist/esm/lib/parsers/csw/parse-exception-report.js +13 -0
  106. package/dist/esm/lib/parsers/csw/parse-exception-report.js.map +1 -0
  107. package/dist/esm/lib/parsers/gml/deep-strict-equal.js.map +1 -0
  108. package/dist/esm/lib/parsers/gml/parse-gml.js.map +1 -0
  109. package/dist/esm/lib/parsers/lerc/lerc-types.js.map +1 -0
  110. package/dist/esm/lib/{wms/parse-wms.js → parsers/wms/parse-wms-capabilities.js} +1 -37
  111. package/dist/esm/lib/parsers/wms/parse-wms-capabilities.js.map +1 -0
  112. package/dist/esm/lib/parsers/wms/parse-wms-error.js +12 -0
  113. package/dist/esm/lib/parsers/wms/parse-wms-error.js.map +1 -0
  114. package/dist/esm/lib/parsers/wms/parse-wms-features.js +27 -0
  115. package/dist/esm/lib/parsers/wms/parse-wms-features.js.map +1 -0
  116. package/dist/esm/lib/parsers/wms/parse-wms-layer-description.js +9 -0
  117. package/dist/esm/lib/parsers/wms/parse-wms-layer-description.js.map +1 -0
  118. package/dist/esm/lib/services/arcgis/arcgis-image-service.js +67 -0
  119. package/dist/esm/lib/services/arcgis/arcgis-image-service.js.map +1 -0
  120. package/dist/esm/lib/services/arcgis/arcgis-server.js +35 -0
  121. package/dist/esm/lib/services/arcgis/arcgis-server.js.map +1 -0
  122. package/dist/esm/lib/{data-sources/adhoc-image-service.js → services/generic/image-service.js} +13 -10
  123. package/dist/esm/lib/services/generic/image-service.js.map +1 -0
  124. package/dist/esm/lib/services/generic/tile-service.js +2 -0
  125. package/dist/esm/lib/services/generic/tile-service.js.map +1 -0
  126. package/dist/esm/lib/services/ogc/csw-service.js +162 -0
  127. package/dist/esm/lib/services/ogc/csw-service.js.map +1 -0
  128. package/dist/esm/lib/{data-sources/image-services → services/ogc}/wms-service.js +40 -34
  129. package/dist/esm/lib/services/ogc/wms-service.js.map +1 -0
  130. package/dist/esm/lib/services/ogc/wmts-service.ts.disabled +348 -0
  131. package/dist/esm/lib/sources/data-source.js +29 -0
  132. package/dist/esm/lib/sources/data-source.js.map +1 -0
  133. package/dist/esm/lib/sources/image-source.js +6 -0
  134. package/dist/esm/lib/sources/image-source.js.map +1 -0
  135. package/dist/esm/lib/sources/tile-source.js +6 -0
  136. package/dist/esm/lib/sources/tile-source.js.map +1 -0
  137. package/dist/esm/lib/sources/utils/utils.js +26 -0
  138. package/dist/esm/lib/sources/utils/utils.js.map +1 -0
  139. package/dist/esm/wip/lib/wcs/parse-wcs-capabilities.js +16 -0
  140. package/dist/esm/wip/lib/wcs/parse-wcs-capabilities.js.map +1 -0
  141. package/dist/esm/wip/lib/wfs/parse-wfs-capabilities.js +17 -0
  142. package/dist/esm/wip/lib/wfs/parse-wfs-capabilities.js.map +1 -0
  143. package/dist/esm/wip/lib/wmts/parse-wmts-capabilities.js +17 -0
  144. package/dist/esm/wip/lib/wmts/parse-wmts-capabilities.js.map +1 -0
  145. package/dist/esm/wip/wcs-capabilities-loader.js +4 -4
  146. package/dist/esm/wip/wcs-capabilities-loader.js.map +1 -1
  147. package/dist/esm/wip/wfs-capabilities-loader.js +2 -2
  148. package/dist/esm/wip/wfs-capabilities-loader.js.map +1 -1
  149. package/dist/esm/wip/wms-feature-info-loader.js +1 -2
  150. package/dist/esm/wip/wms-feature-info-loader.js.map +1 -1
  151. package/dist/esm/wip/wms-layer-description-loader.js +1 -2
  152. package/dist/esm/wip/wms-layer-description-loader.js.map +1 -1
  153. package/dist/esm/wip/wmts-capabilities-loader.js +4 -2
  154. package/dist/esm/wip/wmts-capabilities-loader.js.map +1 -1
  155. package/dist/esm/wms-capabilities-loader.js +3 -2
  156. package/dist/esm/wms-capabilities-loader.js.map +1 -1
  157. package/dist/esm/wms-error-loader.js +2 -2
  158. package/dist/esm/wms-error-loader.js.map +1 -1
  159. package/dist/gml-loader.d.ts.map +1 -0
  160. package/dist/{wip/gml-loader.js → gml-loader.js} +2 -2
  161. package/dist/index.d.ts +25 -16
  162. package/dist/index.d.ts.map +1 -1
  163. package/dist/index.js +26 -14
  164. package/dist/lerc-loader.d.ts +1 -1
  165. package/dist/lerc-loader.d.ts.map +1 -1
  166. package/dist/lib/create-image-source.d.ts +17 -0
  167. package/dist/lib/create-image-source.d.ts.map +1 -0
  168. package/dist/lib/{data-sources/create-image-source.js → create-image-source.js} +5 -5
  169. package/dist/lib/{wmts/wmts-types.d.ts → parsers/csw/parse-csw-capabilities.d.ts} +9 -3
  170. package/dist/lib/parsers/csw/parse-csw-capabilities.d.ts.map +1 -0
  171. package/dist/lib/parsers/csw/parse-csw-capabilities.js +24 -0
  172. package/dist/lib/parsers/csw/parse-csw-domain.d.ts +17 -0
  173. package/dist/lib/parsers/csw/parse-csw-domain.d.ts.map +1 -0
  174. package/dist/lib/parsers/csw/parse-csw-domain.js +33 -0
  175. package/dist/lib/parsers/csw/parse-csw-records.d.ts +33 -0
  176. package/dist/lib/parsers/csw/parse-csw-records.d.ts.map +1 -0
  177. package/dist/lib/parsers/csw/parse-csw-records.js +58 -0
  178. package/dist/lib/parsers/csw/parse-exception-report.d.ts +6 -0
  179. package/dist/lib/parsers/csw/parse-exception-report.d.ts.map +1 -0
  180. package/dist/lib/parsers/csw/parse-exception-report.js +30 -0
  181. package/dist/lib/parsers/gml/deep-strict-equal.d.ts.map +1 -0
  182. package/dist/lib/parsers/gml/parse-gml.d.ts.map +1 -0
  183. package/dist/lib/parsers/lerc/lerc-types.d.ts.map +1 -0
  184. package/dist/lib/{wms/wms-types.d.ts → parsers/wms/parse-wms-capabilities.d.ts} +6 -19
  185. package/dist/lib/parsers/wms/parse-wms-capabilities.d.ts.map +1 -0
  186. package/dist/lib/{wms/wms-types.js → parsers/wms/parse-wms-capabilities.js} +61 -1
  187. package/dist/lib/parsers/wms/parse-wms-error.d.ts +8 -0
  188. package/dist/lib/parsers/wms/parse-wms-error.d.ts.map +1 -0
  189. package/dist/lib/parsers/wms/parse-wms-error.js +22 -0
  190. package/dist/lib/parsers/wms/parse-wms-features.d.ts +20 -0
  191. package/dist/lib/parsers/wms/parse-wms-features.d.ts.map +1 -0
  192. package/dist/lib/parsers/wms/parse-wms-features.js +27 -0
  193. package/dist/lib/parsers/wms/parse-wms-layer-description.d.ts +10 -0
  194. package/dist/lib/parsers/wms/parse-wms-layer-description.d.ts.map +1 -0
  195. package/dist/lib/parsers/wms/parse-wms-layer-description.js +15 -0
  196. package/dist/lib/{data-sources/image-services → services/arcgis}/arcgis-image-service.d.ts +25 -13
  197. package/dist/lib/services/arcgis/arcgis-image-service.d.ts.map +1 -0
  198. package/dist/lib/{data-sources → services/arcgis}/arcgis-image-service.js +33 -23
  199. package/dist/lib/services/arcgis/arcgis-server.d.ts +15 -0
  200. package/dist/lib/services/arcgis/arcgis-server.d.ts.map +1 -0
  201. package/dist/lib/services/arcgis/arcgis-server.js +42 -0
  202. package/dist/lib/{data-sources/image-services → services/generic}/image-service.d.ts +3 -13
  203. package/dist/lib/services/generic/image-service.d.ts.map +1 -0
  204. package/dist/lib/{data-sources/adhoc-image-service.js → services/generic/image-service.js} +12 -10
  205. package/dist/lib/services/generic/tile-service.d.ts +1 -0
  206. package/dist/lib/services/generic/tile-service.d.ts.map +1 -0
  207. package/dist/lib/services/generic/tile-service.js +1 -0
  208. package/dist/lib/services/ogc/csw-service.d.ts +115 -0
  209. package/dist/lib/services/ogc/csw-service.d.ts.map +1 -0
  210. package/dist/lib/services/ogc/csw-service.js +170 -0
  211. package/dist/lib/{data-sources/image-services → services/ogc}/wms-service.d.ts +41 -22
  212. package/dist/lib/services/ogc/wms-service.d.ts.map +1 -0
  213. package/dist/lib/{data-sources/image-services → services/ogc}/wms-service.js +41 -28
  214. package/dist/lib/sources/data-source.d.ts +22 -0
  215. package/dist/lib/sources/data-source.d.ts.map +1 -0
  216. package/dist/lib/sources/data-source.js +34 -0
  217. package/dist/lib/{data-sources → sources}/image-source.d.ts +4 -1
  218. package/dist/lib/sources/image-source.d.ts.map +1 -0
  219. package/dist/lib/{data-sources → sources}/image-source.js +2 -1
  220. package/dist/lib/sources/tile-source.d.ts +54 -0
  221. package/dist/lib/sources/tile-source.d.ts.map +1 -0
  222. package/dist/lib/sources/tile-source.js +13 -0
  223. package/dist/lib/sources/utils/utils.d.ts +13 -0
  224. package/dist/lib/sources/utils/utils.d.ts.map +1 -0
  225. package/dist/lib/sources/utils/utils.js +38 -0
  226. package/dist/{lib/wfs/wfs-types.d.ts → wip/lib/wcs/parse-wcs-capabilities.d.ts} +8 -3
  227. package/dist/wip/lib/wcs/parse-wcs-capabilities.d.ts.map +1 -0
  228. package/dist/wip/lib/wcs/parse-wcs-capabilities.js +15 -0
  229. package/dist/{lib/wcs/wcs-types.d.ts → wip/lib/wfs/parse-wfs-capabilities.d.ts} +6 -1
  230. package/dist/wip/lib/wfs/parse-wfs-capabilities.d.ts.map +1 -0
  231. package/dist/wip/lib/wfs/parse-wfs-capabilities.js +19 -0
  232. package/dist/wip/lib/wmts/parse-wmts-capabilities.d.ts +87 -0
  233. package/dist/wip/lib/wmts/parse-wmts-capabilities.d.ts.map +1 -0
  234. package/dist/wip/lib/wmts/parse-wmts-capabilities.js +77 -0
  235. package/dist/wip/wcs-capabilities-loader.d.ts +4 -3
  236. package/dist/wip/wcs-capabilities-loader.d.ts.map +1 -1
  237. package/dist/wip/wcs-capabilities-loader.js +3 -3
  238. package/dist/wip/wfs-capabilities-loader.d.ts +4 -3
  239. package/dist/wip/wfs-capabilities-loader.d.ts.map +1 -1
  240. package/dist/wip/wfs-capabilities-loader.js +3 -3
  241. package/dist/wip/wms-feature-info-loader.d.ts +4 -2
  242. package/dist/wip/wms-feature-info-loader.d.ts.map +1 -1
  243. package/dist/wip/wms-feature-info-loader.js +3 -3
  244. package/dist/wip/wms-layer-description-loader.d.ts +5 -3
  245. package/dist/wip/wms-layer-description-loader.d.ts.map +1 -1
  246. package/dist/wip/wms-layer-description-loader.js +3 -3
  247. package/dist/wip/wmts-capabilities-loader.d.ts +4 -3
  248. package/dist/wip/wmts-capabilities-loader.d.ts.map +1 -1
  249. package/dist/wip/wmts-capabilities-loader.js +3 -3
  250. package/dist/wms-capabilities-loader.d.ts +4 -3
  251. package/dist/wms-capabilities-loader.d.ts.map +1 -1
  252. package/dist/wms-capabilities-loader.js +3 -3
  253. package/dist/wms-error-loader.js +2 -2
  254. package/package.json +7 -7
  255. package/src/csw-capabilities-loader.ts +46 -0
  256. package/src/csw-domain-loader.ts +44 -0
  257. package/src/csw-records-loader.ts +42 -0
  258. package/src/{wip/gml-loader.ts → gml-loader.ts} +2 -2
  259. package/src/index.ts +48 -28
  260. package/src/lerc-loader.ts +1 -1
  261. package/src/lib/{data-sources/create-image-source.ts → create-image-source.ts} +12 -10
  262. package/src/lib/parsers/csw/parse-csw-capabilities.ts +103 -0
  263. package/src/lib/parsers/csw/parse-csw-domain.ts +45 -0
  264. package/src/lib/parsers/csw/parse-csw-records.ts +90 -0
  265. package/src/lib/parsers/csw/parse-exception-report.ts +31 -0
  266. package/src/lib/{wms/wms-types.ts → parsers/wms/parse-wms-capabilities.ts} +72 -53
  267. package/src/lib/parsers/wms/parse-wms-error.ts +22 -0
  268. package/src/lib/parsers/wms/parse-wms-features.ts +39 -0
  269. package/src/lib/parsers/wms/parse-wms-layer-description.ts +18 -0
  270. package/src/lib/{data-sources/image-services → services/arcgis}/arcgis-image-service.ts +44 -26
  271. package/src/lib/services/arcgis/arcgis-server.ts +59 -0
  272. package/src/lib/{data-sources/adhoc-image-service.ts → services/generic/image-service.ts} +18 -12
  273. package/src/lib/services/generic/tile-service.ts +0 -0
  274. package/src/lib/services/ogc/csw-service.ts +251 -0
  275. package/src/lib/{data-sources/image-services → services/ogc}/wms-service.ts +73 -34
  276. package/src/lib/services/ogc/wmts-service.ts.disabled +348 -0
  277. package/src/lib/sources/data-source.ts +46 -0
  278. package/src/lib/{data-sources → sources}/image-source.ts +5 -1
  279. package/src/lib/sources/tile-source.ts +59 -0
  280. package/src/lib/sources/utils/utils.ts +42 -0
  281. package/src/{lib/wmts/wmts-types.ts → wip/lib/wcs/parse-wcs-capabilities.ts} +15 -3
  282. package/src/{lib/wcs/wcs-types.ts → wip/lib/wfs/parse-wfs-capabilities.ts} +18 -1
  283. package/src/wip/lib/wmts/parse-wmts-capabilities.ts +170 -0
  284. package/src/wip/wcs-capabilities-loader.ts +6 -3
  285. package/src/wip/wfs-capabilities-loader.ts +4 -1
  286. package/src/wip/wms-feature-info-loader.ts +5 -1
  287. package/src/wip/wms-layer-description-loader.ts +7 -2
  288. package/src/wip/wmts-capabilities-loader.ts +4 -1
  289. package/src/wms-capabilities-loader.ts +5 -1
  290. package/src/wms-error-loader.ts +1 -1
  291. package/dist/es5/lib/data-sources/adhoc-image-service.js.map +0 -1
  292. package/dist/es5/lib/data-sources/arcgis-image-service.js +0 -180
  293. package/dist/es5/lib/data-sources/arcgis-image-service.js.map +0 -1
  294. package/dist/es5/lib/data-sources/create-image-source.js.map +0 -1
  295. package/dist/es5/lib/data-sources/image-services/arcgis-image-service.js.map +0 -1
  296. package/dist/es5/lib/data-sources/image-services/image-service.js +0 -163
  297. package/dist/es5/lib/data-sources/image-services/image-service.js.map +0 -1
  298. package/dist/es5/lib/data-sources/image-services/wms-service.js.map +0 -1
  299. package/dist/es5/lib/data-sources/image-source.js +0 -14
  300. package/dist/es5/lib/data-sources/image-source.js.map +0 -1
  301. package/dist/es5/lib/gml/deep-strict-equal.js.map +0 -1
  302. package/dist/es5/lib/gml/parse-gml.js.map +0 -1
  303. package/dist/es5/lib/lerc/lerc-types.js.map +0 -1
  304. package/dist/es5/lib/wcs/parse-wcs.js.map +0 -1
  305. package/dist/es5/lib/wcs/wcs-types.js +0 -2
  306. package/dist/es5/lib/wcs/wcs-types.js.map +0 -1
  307. package/dist/es5/lib/wfs/parse-wfs.js.map +0 -1
  308. package/dist/es5/lib/wfs/wfs-types.js +0 -2
  309. package/dist/es5/lib/wfs/wfs-types.js.map +0 -1
  310. package/dist/es5/lib/wms/parse-wms.js.map +0 -1
  311. package/dist/es5/lib/wms/wms-types.js +0 -2
  312. package/dist/es5/lib/wms/wms-types.js.map +0 -1
  313. package/dist/es5/lib/wmts/parse-wmts.js.map +0 -1
  314. package/dist/es5/lib/wmts/wmts-types.js +0 -2
  315. package/dist/es5/lib/wmts/wmts-types.js.map +0 -1
  316. package/dist/es5/wip/gml-loader.js.map +0 -1
  317. package/dist/esm/lib/data-sources/adhoc-image-service.js.map +0 -1
  318. package/dist/esm/lib/data-sources/arcgis-image-service.js +0 -62
  319. package/dist/esm/lib/data-sources/arcgis-image-service.js.map +0 -1
  320. package/dist/esm/lib/data-sources/create-image-source.js.map +0 -1
  321. package/dist/esm/lib/data-sources/image-services/arcgis-image-service.js +0 -61
  322. package/dist/esm/lib/data-sources/image-services/arcgis-image-service.js.map +0 -1
  323. package/dist/esm/lib/data-sources/image-services/image-service.js +0 -72
  324. package/dist/esm/lib/data-sources/image-services/image-service.js.map +0 -1
  325. package/dist/esm/lib/data-sources/image-services/wms-service.js.map +0 -1
  326. package/dist/esm/lib/data-sources/image-source.js +0 -4
  327. package/dist/esm/lib/data-sources/image-source.js.map +0 -1
  328. package/dist/esm/lib/gml/deep-strict-equal.js.map +0 -1
  329. package/dist/esm/lib/gml/parse-gml.js.map +0 -1
  330. package/dist/esm/lib/lerc/lerc-types.js.map +0 -1
  331. package/dist/esm/lib/wcs/parse-wcs.js +0 -32
  332. package/dist/esm/lib/wcs/parse-wcs.js.map +0 -1
  333. package/dist/esm/lib/wcs/wcs-types.js +0 -2
  334. package/dist/esm/lib/wcs/wcs-types.js.map +0 -1
  335. package/dist/esm/lib/wfs/parse-wfs.js +0 -32
  336. package/dist/esm/lib/wfs/parse-wfs.js.map +0 -1
  337. package/dist/esm/lib/wfs/wfs-types.js +0 -2
  338. package/dist/esm/lib/wfs/wfs-types.js.map +0 -1
  339. package/dist/esm/lib/wms/parse-wms.js.map +0 -1
  340. package/dist/esm/lib/wms/wms-types.js +0 -2
  341. package/dist/esm/lib/wms/wms-types.js.map +0 -1
  342. package/dist/esm/lib/wmts/parse-wmts.js +0 -32
  343. package/dist/esm/lib/wmts/parse-wmts.js.map +0 -1
  344. package/dist/esm/lib/wmts/wmts-types.js +0 -2
  345. package/dist/esm/lib/wmts/wmts-types.js.map +0 -1
  346. package/dist/esm/wip/gml-loader.js.map +0 -1
  347. package/dist/lib/data-sources/adhoc-image-service.d.ts +0 -24
  348. package/dist/lib/data-sources/adhoc-image-service.d.ts.map +0 -1
  349. package/dist/lib/data-sources/arcgis-image-service.d.ts +0 -79
  350. package/dist/lib/data-sources/arcgis-image-service.d.ts.map +0 -1
  351. package/dist/lib/data-sources/create-image-source.d.ts +0 -16
  352. package/dist/lib/data-sources/create-image-source.d.ts.map +0 -1
  353. package/dist/lib/data-sources/image-services/arcgis-image-service.d.ts.map +0 -1
  354. package/dist/lib/data-sources/image-services/arcgis-image-service.js +0 -85
  355. package/dist/lib/data-sources/image-services/image-service.d.ts.map +0 -1
  356. package/dist/lib/data-sources/image-services/image-service.js +0 -82
  357. package/dist/lib/data-sources/image-services/wms-service.d.ts.map +0 -1
  358. package/dist/lib/data-sources/image-source.d.ts.map +0 -1
  359. package/dist/lib/gml/deep-strict-equal.d.ts.map +0 -1
  360. package/dist/lib/gml/parse-gml.d.ts.map +0 -1
  361. package/dist/lib/lerc/lerc-types.d.ts.map +0 -1
  362. package/dist/lib/wcs/parse-wcs.d.ts +0 -7
  363. package/dist/lib/wcs/parse-wcs.d.ts.map +0 -1
  364. package/dist/lib/wcs/parse-wcs.js +0 -36
  365. package/dist/lib/wcs/wcs-types.d.ts.map +0 -1
  366. package/dist/lib/wcs/wcs-types.js +0 -3
  367. package/dist/lib/wfs/parse-wfs.d.ts +0 -7
  368. package/dist/lib/wfs/parse-wfs.d.ts.map +0 -1
  369. package/dist/lib/wfs/parse-wfs.js +0 -36
  370. package/dist/lib/wfs/wfs-types.d.ts.map +0 -1
  371. package/dist/lib/wfs/wfs-types.js +0 -3
  372. package/dist/lib/wms/parse-wms.d.ts +0 -24
  373. package/dist/lib/wms/parse-wms.d.ts.map +0 -1
  374. package/dist/lib/wms/parse-wms.js +0 -115
  375. package/dist/lib/wms/wms-types.d.ts.map +0 -1
  376. package/dist/lib/wmts/parse-wmts.d.ts +0 -7
  377. package/dist/lib/wmts/parse-wmts.d.ts.map +0 -1
  378. package/dist/lib/wmts/parse-wmts.js +0 -36
  379. package/dist/lib/wmts/wmts-types.d.ts.map +0 -1
  380. package/dist/lib/wmts/wmts-types.js +0 -3
  381. package/dist/wip/gml-loader.d.ts.map +0 -1
  382. package/src/lib/data-sources/arcgis-image-service.ts +0 -146
  383. package/src/lib/data-sources/image-services/image-service.ts +0 -105
  384. package/src/lib/wcs/parse-wcs.ts +0 -39
  385. package/src/lib/wfs/parse-wfs.ts +0 -39
  386. package/src/lib/wfs/wfs-types.ts +0 -78
  387. package/src/lib/wms/parse-wms.ts +0 -142
  388. package/src/lib/wmts/parse-wmts.ts +0 -39
  389. /package/dist/es5/lib/{gml → parsers/gml}/deep-strict-equal.js +0 -0
  390. /package/dist/es5/lib/{gml → parsers/gml}/parse-gml.js +0 -0
  391. /package/dist/es5/lib/{lerc → parsers/lerc}/lerc-types.js +0 -0
  392. /package/dist/esm/lib/{gml → parsers/gml}/deep-strict-equal.js +0 -0
  393. /package/dist/esm/lib/{gml → parsers/gml}/parse-gml.js +0 -0
  394. /package/dist/esm/lib/{lerc → parsers/lerc}/lerc-types.js +0 -0
  395. /package/dist/{wip/gml-loader.d.ts → gml-loader.d.ts} +0 -0
  396. /package/dist/lib/{gml → parsers/gml}/deep-strict-equal.d.ts +0 -0
  397. /package/dist/lib/{gml → parsers/gml}/deep-strict-equal.js +0 -0
  398. /package/dist/lib/{gml → parsers/gml}/parse-gml.d.ts +0 -0
  399. /package/dist/lib/{gml → parsers/gml}/parse-gml.js +0 -0
  400. /package/dist/lib/{lerc → parsers/lerc}/lerc-types.d.ts +0 -0
  401. /package/dist/lib/{lerc → parsers/lerc}/lerc-types.js +0 -0
  402. /package/src/lib/{gml → parsers/gml}/deep-strict-equal.ts +0 -0
  403. /package/src/lib/{gml → parsers/gml}/parse-gml.ts +0 -0
  404. /package/src/lib/{lerc → parsers/lerc}/lerc-types.ts +0 -0
@@ -0,0 +1,384 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.CSWService = void 0;
8
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
11
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
14
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
16
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
17
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
18
+ var _dataSource = require("../../sources/data-source");
19
+ var _cswCapabilitiesLoader = require("../../../csw-capabilities-loader");
20
+ var _cswRecordsLoader = require("../../../csw-records-loader");
21
+ var _cswDomainLoader = require("../../../csw-domain-loader");
22
+ var _wmsErrorLoader = require("../../../wms-error-loader");
23
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
24
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
25
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
26
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
27
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
28
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
29
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
30
+ var CSWService = function (_DataSource) {
31
+ (0, _inherits2.default)(CSWService, _DataSource);
32
+ var _super = _createSuper(CSWService);
33
+
34
+ function CSWService(props) {
35
+ var _this;
36
+ (0, _classCallCheck2.default)(this, CSWService);
37
+ _this = _super.call(this, props);
38
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "props", void 0);
39
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "capabilities", null);
40
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "loaders", [_wmsErrorLoader.WMSErrorLoader, _cswCapabilitiesLoader.CSWCapabilitiesLoader]);
41
+ _this.props = props;
42
+ return _this;
43
+ }
44
+ (0, _createClass2.default)(CSWService, [{
45
+ key: "getMetadata",
46
+ value: function () {
47
+ var _getMetadata = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee() {
48
+ var capabilities;
49
+ return _regenerator.default.wrap(function _callee$(_context) {
50
+ while (1) {
51
+ switch (_context.prev = _context.next) {
52
+ case 0:
53
+ _context.next = 2;
54
+ return this.getCapabilities();
55
+ case 2:
56
+ capabilities = _context.sent;
57
+ return _context.abrupt("return", this.normalizeMetadata(capabilities));
58
+ case 4:
59
+ case "end":
60
+ return _context.stop();
61
+ }
62
+ }
63
+ }, _callee, this);
64
+ }));
65
+ function getMetadata() {
66
+ return _getMetadata.apply(this, arguments);
67
+ }
68
+ return getMetadata;
69
+ }()
70
+ }, {
71
+ key: "normalizeMetadata",
72
+ value: function normalizeMetadata(capabilities) {
73
+ return capabilities;
74
+ }
75
+ }, {
76
+ key: "getServiceDirectory",
77
+ value: function () {
78
+ var _getServiceDirectory = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee2(options) {
79
+ var services, unknownServices, records, _iterator, _step, record, _iterator2, _step2, reference, url;
80
+ return _regenerator.default.wrap(function _callee2$(_context2) {
81
+ while (1) {
82
+ switch (_context2.prev = _context2.next) {
83
+ case 0:
84
+ services = [];
85
+ unknownServices = [];
86
+ _context2.next = 4;
87
+ return this.getRecords();
88
+ case 4:
89
+ records = _context2.sent;
90
+ _iterator = _createForOfIteratorHelper(records.records);
91
+ _context2.prev = 6;
92
+ _iterator.s();
93
+ case 8:
94
+ if ((_step = _iterator.n()).done) {
95
+ _context2.next = 38;
96
+ break;
97
+ }
98
+ record = _step.value;
99
+ _iterator2 = _createForOfIteratorHelper(record.references);
100
+ _context2.prev = 11;
101
+ _iterator2.s();
102
+ case 13:
103
+ if ((_step2 = _iterator2.n()).done) {
104
+ _context2.next = 28;
105
+ break;
106
+ }
107
+ reference = _step2.value;
108
+ url = reference.value;
109
+ _context2.t0 = reference.scheme;
110
+ _context2.next = _context2.t0 === 'OGC:WMS' ? 19 : _context2.t0 === 'OGC:WMTS' ? 21 : _context2.t0 === 'OGC:WFS' ? 23 : 25;
111
+ break;
112
+ case 19:
113
+ services.push(_objectSpread({
114
+ name: record.title,
115
+ type: 'ogc-wms-service'
116
+ }, this._parseOGCUrl(url)));
117
+ return _context2.abrupt("break", 26);
118
+ case 21:
119
+ services.push(_objectSpread({
120
+ name: record.title,
121
+ type: 'ogc-wmts-service'
122
+ }, this._parseOGCUrl(url)));
123
+ return _context2.abrupt("break", 26);
124
+ case 23:
125
+ services.push(_objectSpread({
126
+ name: record.title,
127
+ type: 'ogc-wfs-service'
128
+ }, this._parseOGCUrl(url)));
129
+ return _context2.abrupt("break", 26);
130
+ case 25:
131
+ unknownServices.push({
132
+ name: record.title,
133
+ type: 'unknown',
134
+ url: reference.value,
135
+ scheme: reference.scheme
136
+ });
137
+ case 26:
138
+ _context2.next = 13;
139
+ break;
140
+ case 28:
141
+ _context2.next = 33;
142
+ break;
143
+ case 30:
144
+ _context2.prev = 30;
145
+ _context2.t1 = _context2["catch"](11);
146
+ _iterator2.e(_context2.t1);
147
+ case 33:
148
+ _context2.prev = 33;
149
+ _iterator2.f();
150
+ return _context2.finish(33);
151
+ case 36:
152
+ _context2.next = 8;
153
+ break;
154
+ case 38:
155
+ _context2.next = 43;
156
+ break;
157
+ case 40:
158
+ _context2.prev = 40;
159
+ _context2.t2 = _context2["catch"](6);
160
+ _iterator.e(_context2.t2);
161
+ case 43:
162
+ _context2.prev = 43;
163
+ _iterator.f();
164
+ return _context2.finish(43);
165
+ case 46:
166
+ return _context2.abrupt("return", options !== null && options !== void 0 && options.includeUnknown ? services.concat(unknownServices) : services);
167
+ case 47:
168
+ case "end":
169
+ return _context2.stop();
170
+ }
171
+ }
172
+ }, _callee2, this, [[6, 40, 43, 46], [11, 30, 33, 36]]);
173
+ }));
174
+ function getServiceDirectory(_x) {
175
+ return _getServiceDirectory.apply(this, arguments);
176
+ }
177
+ return getServiceDirectory;
178
+ }()
179
+ }, {
180
+ key: "_parseOGCUrl",
181
+ value: function _parseOGCUrl(url) {
182
+ var parts = url.split('?');
183
+ return {
184
+ url: parts[0],
185
+ params: parts[1] || ''
186
+ };
187
+ }
188
+
189
+ }, {
190
+ key: "getCapabilities",
191
+ value: function () {
192
+ var _getCapabilities = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee3(wmsParameters, vendorParameters) {
193
+ var url, response, arrayBuffer, capabilities;
194
+ return _regenerator.default.wrap(function _callee3$(_context3) {
195
+ while (1) {
196
+ switch (_context3.prev = _context3.next) {
197
+ case 0:
198
+ url = this.getCapabilitiesURL(wmsParameters, vendorParameters);
199
+ _context3.next = 3;
200
+ return this.fetch(url);
201
+ case 3:
202
+ response = _context3.sent;
203
+ _context3.next = 6;
204
+ return response.arrayBuffer();
205
+ case 6:
206
+ arrayBuffer = _context3.sent;
207
+ this._checkResponse(response, arrayBuffer);
208
+ _context3.next = 10;
209
+ return _cswCapabilitiesLoader.CSWCapabilitiesLoader.parse(arrayBuffer, this.props.loadOptions);
210
+ case 10:
211
+ capabilities = _context3.sent;
212
+ return _context3.abrupt("return", capabilities);
213
+ case 12:
214
+ case "end":
215
+ return _context3.stop();
216
+ }
217
+ }
218
+ }, _callee3, this);
219
+ }));
220
+ function getCapabilities(_x2, _x3) {
221
+ return _getCapabilities.apply(this, arguments);
222
+ }
223
+ return getCapabilities;
224
+ }()
225
+ }, {
226
+ key: "getRecords",
227
+ value: function () {
228
+ var _getRecords = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee4(wmsParameters, vendorParameters) {
229
+ var url, response, arrayBuffer;
230
+ return _regenerator.default.wrap(function _callee4$(_context4) {
231
+ while (1) {
232
+ switch (_context4.prev = _context4.next) {
233
+ case 0:
234
+ url = this.getRecordsURL(wmsParameters, vendorParameters);
235
+ _context4.next = 3;
236
+ return this.fetch(url);
237
+ case 3:
238
+ response = _context4.sent;
239
+ _context4.next = 6;
240
+ return response.arrayBuffer();
241
+ case 6:
242
+ arrayBuffer = _context4.sent;
243
+ this._checkResponse(response, arrayBuffer);
244
+ _context4.next = 10;
245
+ return _cswRecordsLoader.CSWRecordsLoader.parse(arrayBuffer, this.props.loadOptions);
246
+ case 10:
247
+ return _context4.abrupt("return", _context4.sent);
248
+ case 11:
249
+ case "end":
250
+ return _context4.stop();
251
+ }
252
+ }
253
+ }, _callee4, this);
254
+ }));
255
+ function getRecords(_x4, _x5) {
256
+ return _getRecords.apply(this, arguments);
257
+ }
258
+ return getRecords;
259
+ }()
260
+ }, {
261
+ key: "getDomain",
262
+ value: function () {
263
+ var _getDomain = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee5(wmsParameters, vendorParameters) {
264
+ var url, response, arrayBuffer;
265
+ return _regenerator.default.wrap(function _callee5$(_context5) {
266
+ while (1) {
267
+ switch (_context5.prev = _context5.next) {
268
+ case 0:
269
+ url = this.getDomainURL(wmsParameters, vendorParameters);
270
+ _context5.next = 3;
271
+ return this.fetch(url);
272
+ case 3:
273
+ response = _context5.sent;
274
+ _context5.next = 6;
275
+ return response.arrayBuffer();
276
+ case 6:
277
+ arrayBuffer = _context5.sent;
278
+ this._checkResponse(response, arrayBuffer);
279
+ _context5.next = 10;
280
+ return _cswDomainLoader.CSWDomainLoader.parse(arrayBuffer, this.props.loadOptions);
281
+ case 10:
282
+ return _context5.abrupt("return", _context5.sent);
283
+ case 11:
284
+ case "end":
285
+ return _context5.stop();
286
+ }
287
+ }
288
+ }, _callee5, this);
289
+ }));
290
+ function getDomain(_x6, _x7) {
291
+ return _getDomain.apply(this, arguments);
292
+ }
293
+ return getDomain;
294
+ }()
295
+ }, {
296
+ key: "getCapabilitiesURL",
297
+ value:
298
+
299
+ function getCapabilitiesURL(wmsParameters, vendorParameters) {
300
+ var options = _objectSpread(_objectSpread(_objectSpread({
301
+ version: '3.0.0'
302
+ }, wmsParameters), vendorParameters), {}, {
303
+ service: 'CSW',
304
+ request: 'GetCapabilities'
305
+ });
306
+ return this._getCSWUrl(options, vendorParameters);
307
+ }
308
+
309
+ }, {
310
+ key: "getRecordsURL",
311
+ value:
312
+ function getRecordsURL(wmsParameters, vendorParameters) {
313
+ var options = _objectSpread(_objectSpread(_objectSpread({
314
+ version: '3.0.0',
315
+ typenames: 'csw:Record'
316
+ }, wmsParameters), vendorParameters), {}, {
317
+ service: 'CSW',
318
+ request: 'GetRecords'
319
+ });
320
+ return this._getCSWUrl(options, vendorParameters);
321
+ }
322
+
323
+ }, {
324
+ key: "getDomainURL",
325
+ value:
326
+ function getDomainURL(wmsParameters, vendorParameters) {
327
+ var options = _objectSpread(_objectSpread(_objectSpread({
328
+ version: '3.0.0'
329
+ }, wmsParameters), vendorParameters), {}, {
330
+ service: 'CSW',
331
+ request: 'GetDomain'
332
+ });
333
+ return this._getCSWUrl(options, vendorParameters);
334
+ }
335
+
336
+ }, {
337
+ key: "_getCSWUrl",
338
+ value:
339
+
340
+ function _getCSWUrl(options, vendorParameters) {
341
+ var url = this.props.url;
342
+ var first = true;
343
+ for (var _i = 0, _Object$entries = Object.entries(options); _i < _Object$entries.length; _i++) {
344
+ var _Object$entries$_i = (0, _slicedToArray2.default)(_Object$entries[_i], 2),
345
+ key = _Object$entries$_i[0],
346
+ value = _Object$entries$_i[1];
347
+ url += first ? '?' : '&';
348
+ first = false;
349
+ if (Array.isArray(value)) {
350
+ url += "".concat(key.toUpperCase(), "=").concat(value.join(','));
351
+ } else {
352
+ url += "".concat(key.toUpperCase(), "=").concat(value ? String(value) : '');
353
+ }
354
+ }
355
+ return encodeURI(url);
356
+ }
357
+
358
+ }, {
359
+ key: "_checkResponse",
360
+ value:
361
+ function _checkResponse(response, arrayBuffer) {
362
+ var contentType = response.headers['content-type'];
363
+ if (!response.ok || _wmsErrorLoader.WMSErrorLoader.mimeTypes.includes(contentType)) {
364
+ var error = _wmsErrorLoader.WMSErrorLoader.parseSync(arrayBuffer, this.props.loadOptions);
365
+ throw new Error(error);
366
+ }
367
+ }
368
+
369
+ }, {
370
+ key: "_parseError",
371
+ value:
372
+ function _parseError(arrayBuffer) {
373
+ var error = _wmsErrorLoader.WMSErrorLoader.parseSync(arrayBuffer, this.props.loadOptions);
374
+ return new Error(error);
375
+ }
376
+ }]);
377
+ return CSWService;
378
+ }(_dataSource.DataSource);
379
+ exports.CSWService = CSWService;
380
+ (0, _defineProperty2.default)(CSWService, "type", 'csw');
381
+ (0, _defineProperty2.default)(CSWService, "testURL", function (url) {
382
+ return url.toLowerCase().includes('csw');
383
+ });
384
+ //# sourceMappingURL=csw-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"csw-service.js","names":["CSWService","props","CSWErrorLoader","CSWCapabilitiesLoader","getCapabilities","capabilities","normalizeMetadata","options","services","unknownServices","getRecords","records","record","references","reference","url","value","scheme","push","name","title","type","_parseOGCUrl","includeUnknown","concat","parts","split","params","wmsParameters","vendorParameters","getCapabilitiesURL","fetch","response","arrayBuffer","_checkResponse","parse","loadOptions","getRecordsURL","CSWRecordsLoader","getDomainURL","CSWDomainLoader","version","service","request","_getCSWUrl","typenames","first","Object","entries","key","Array","isArray","toUpperCase","join","String","encodeURI","contentType","headers","ok","mimeTypes","includes","error","parseSync","Error","DataSource","toLowerCase"],"sources":["../../../../../src/lib/services/ogc/csw-service.ts"],"sourcesContent":["// loaders.gl, MIT license\n\n/* eslint-disable camelcase */\n\nimport type {DataSourceProps} from '../../sources/data-source';\nimport {DataSource} from '../../sources/data-source';\n\nimport type {CSWCapabilities} from '../../../csw-capabilities-loader';\nimport {CSWCapabilitiesLoader} from '../../../csw-capabilities-loader';\n\nimport type {CSWRecords} from '../../../csw-records-loader';\nimport {CSWRecordsLoader} from '../../../csw-records-loader';\n\nimport type {CSWDomain} from '../../../csw-domain-loader';\nimport {CSWDomainLoader} from '../../../csw-domain-loader';\n\nimport {WMSErrorLoader as CSWErrorLoader} from '../../../wms-error-loader';\n\ntype CSWCommonParameters = {\n /** In case the endpoint supports multiple services */\n service?: 'CSW';\n /** In case the endpoint supports multiple CSW versions */\n version?: '1.1.1' | '2.0.0' | '2.0.1' | '3.0.0' | '3.0.0';\n};\n\nexport type CSWGetCapabilitiesParameters = CSWCommonParameters & {\n /** Request type */\n request?: 'GetCapabilities';\n};\n\nexport type CSWGetRecordsParameters = CSWCommonParameters & {\n /** Request type */\n request?: 'GetRecords';\n /** type of records */\n typenames: 'csw:Record';\n};\n\nexport type CSWGetDomainParameters = CSWCommonParameters & {\n /** Request type */\n request?: 'GetDomain';\n // TBA\n};\n\nexport type Service = {name: string; type: string; url: string; params?: string; scheme?: string};\n\nexport type CSWServiceProps = DataSourceProps & {\n url: string;\n};\n\n/**\n * The CSWService class provides\n * - provides type safe methods to form URLs to a CSW service\n * - provides type safe methods to query and parse results (and errors) from a CSW service\n * - implements the ImageService interface\n * @note Only the URL parameter conversion is supported. XML posts are not supported.\n */\nexport class CSWService extends DataSource {\n static type: 'csw' = 'csw';\n static testURL = (url: string): boolean => url.toLowerCase().includes('csw');\n\n props: CSWServiceProps;\n capabilities: CSWCapabilities | null = null;\n\n /** A list of loaders used by the CSWService methods */\n readonly loaders = [CSWErrorLoader, CSWCapabilitiesLoader];\n\n /** Create a CSWService */\n constructor(props: CSWServiceProps) {\n super(props);\n this.props = props;\n }\n\n async getMetadata(): Promise<CSWCapabilities> {\n const capabilities = await this.getCapabilities();\n return this.normalizeMetadata(capabilities);\n }\n\n normalizeMetadata(capabilities: CSWCapabilities): CSWCapabilities {\n return capabilities;\n }\n\n async getServiceDirectory(options: {includeUnknown?: boolean}): Promise<Service[]> {\n const services: Service[] = [];\n const unknownServices: Service[] = [];\n\n const records = await this.getRecords();\n for (const record of records.records) {\n for (const reference of record.references) {\n const url = reference.value;\n switch (reference.scheme) {\n case 'OGC:WMS':\n services.push({name: record.title, type: 'ogc-wms-service', ...this._parseOGCUrl(url)});\n break;\n case 'OGC:WMTS':\n services.push({\n name: record.title,\n type: 'ogc-wmts-service',\n ...this._parseOGCUrl(url)\n });\n break;\n case 'OGC:WFS':\n services.push({name: record.title, type: 'ogc-wfs-service', ...this._parseOGCUrl(url)});\n break;\n default:\n unknownServices.push({\n name: record.title,\n type: 'unknown',\n url: reference.value,\n scheme: reference.scheme\n });\n }\n }\n }\n\n return options?.includeUnknown ? services.concat(unknownServices) : services;\n }\n\n _parseOGCUrl(url: string): {url: string; params: string} {\n const parts = url.split('?');\n return {\n url: parts[0],\n params: parts[1] || ''\n };\n }\n\n // CSW Service API Stubs\n\n /** Get Capabilities */\n async getCapabilities(\n wmsParameters?: CSWGetCapabilitiesParameters,\n vendorParameters?: Record<string, unknown>\n ): Promise<CSWCapabilities> {\n const url = this.getCapabilitiesURL(wmsParameters, vendorParameters);\n const response = await this.fetch(url);\n const arrayBuffer = await response.arrayBuffer();\n this._checkResponse(response, arrayBuffer);\n const capabilities = await CSWCapabilitiesLoader.parse(arrayBuffer, this.props.loadOptions);\n return capabilities;\n }\n\n /** Get Records */\n async getRecords(\n wmsParameters?: CSWGetRecordsParameters,\n vendorParameters?: Record<string, unknown>\n ): Promise<CSWRecords> {\n const url = this.getRecordsURL(wmsParameters, vendorParameters);\n const response = await this.fetch(url);\n const arrayBuffer = await response.arrayBuffer();\n this._checkResponse(response, arrayBuffer);\n return await CSWRecordsLoader.parse(arrayBuffer, this.props.loadOptions);\n }\n\n /** Get Domain */\n async getDomain(\n wmsParameters?: CSWGetDomainParameters,\n vendorParameters?: Record<string, unknown>\n ): Promise<CSWDomain> {\n const url = this.getDomainURL(wmsParameters, vendorParameters);\n const response = await this.fetch(url);\n const arrayBuffer = await response.arrayBuffer();\n this._checkResponse(response, arrayBuffer);\n return await CSWDomainLoader.parse(arrayBuffer, this.props.loadOptions);\n }\n\n // Typed URL creators\n // For applications that want full control of fetching and parsing\n\n /** Generate a URL for the GetCapabilities request */\n getCapabilitiesURL(\n wmsParameters?: CSWGetCapabilitiesParameters,\n vendorParameters?: Record<string, unknown>\n ): string {\n const options: Required<CSWGetCapabilitiesParameters> = {\n version: '3.0.0',\n ...wmsParameters,\n ...vendorParameters,\n service: 'CSW',\n request: 'GetCapabilities'\n };\n return this._getCSWUrl(options, vendorParameters);\n }\n\n /** Generate a URL for the GetCapabilities request */\n getRecordsURL(\n wmsParameters?: CSWGetRecordsParameters,\n vendorParameters?: Record<string, unknown>\n ): string {\n const options: Required<CSWGetRecordsParameters> = {\n version: '3.0.0',\n typenames: 'csw:Record',\n ...wmsParameters,\n ...vendorParameters,\n service: 'CSW',\n request: 'GetRecords'\n };\n return this._getCSWUrl(options, vendorParameters);\n }\n\n /** Generate a URL for the GetCapabilities request */\n getDomainURL(\n wmsParameters?: CSWGetDomainParameters,\n vendorParameters?: Record<string, unknown>\n ): string {\n const options: Required<CSWGetDomainParameters> = {\n version: '3.0.0',\n ...wmsParameters,\n ...vendorParameters,\n service: 'CSW',\n request: 'GetDomain'\n };\n return this._getCSWUrl(options, vendorParameters);\n }\n\n // INTERNAL METHODS\n\n /**\n * @note case _getCSWUrl may need to be overridden to handle certain backends?\n * */\n protected _getCSWUrl(\n options: Record<string, unknown>,\n vendorParameters?: Record<string, unknown>\n ): string {\n let url = this.props.url;\n let first = true;\n for (const [key, value] of Object.entries(options)) {\n url += first ? '?' : '&';\n first = false;\n if (Array.isArray(value)) {\n url += `${key.toUpperCase()}=${value.join(',')}`;\n } else {\n url += `${key.toUpperCase()}=${value ? String(value) : ''}`;\n }\n }\n return encodeURI(url);\n }\n\n /** Checks for and parses a CSW XML formatted ServiceError and throws an exception */\n protected _checkResponse(response: Response, arrayBuffer: ArrayBuffer): void {\n const contentType = response.headers['content-type'];\n if (!response.ok || CSWErrorLoader.mimeTypes.includes(contentType)) {\n const error = CSWErrorLoader.parseSync(arrayBuffer, this.props.loadOptions);\n throw new Error(error);\n }\n }\n\n /** Error situation detected */\n protected _parseError(arrayBuffer: ArrayBuffer): Error {\n const error = CSWErrorLoader.parseSync(arrayBuffer, this.props.loadOptions);\n return new Error(error);\n }\n}\n"],"mappings":"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"}