@mapcreator/api 3.3.1 → 5.0.0-alpha.13

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 (475) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +82 -59
  3. package/cjs/api/apiCommon.d.ts +7 -0
  4. package/cjs/api/apiCommon.d.ts.map +1 -0
  5. package/cjs/api/apiCommon.js +32 -0
  6. package/cjs/api/apiCommon.js.map +1 -0
  7. package/cjs/api/choropleth.d.ts +206 -0
  8. package/cjs/api/choropleth.d.ts.map +1 -0
  9. package/cjs/api/choropleth.js +40 -0
  10. package/cjs/api/choropleth.js.map +1 -0
  11. package/cjs/api/color.d.ts +16 -0
  12. package/cjs/api/color.d.ts.map +1 -0
  13. package/cjs/api/color.js +8 -0
  14. package/cjs/api/color.js.map +1 -0
  15. package/cjs/api/dimension.d.ts +25 -0
  16. package/cjs/api/dimension.d.ts.map +1 -0
  17. package/cjs/api/dimension.js +19 -0
  18. package/cjs/api/dimension.js.map +1 -0
  19. package/cjs/api/dimensionSet.d.ts +15 -0
  20. package/cjs/api/dimensionSet.d.ts.map +1 -0
  21. package/cjs/api/dimensionSet.js +7 -0
  22. package/cjs/api/dimensionSet.js.map +1 -0
  23. package/cjs/api/feature.d.ts +16 -0
  24. package/cjs/api/feature.d.ts.map +1 -0
  25. package/cjs/api/feature.js +8 -0
  26. package/cjs/api/feature.js.map +1 -0
  27. package/cjs/api/font.d.ts +22 -0
  28. package/cjs/api/font.d.ts.map +1 -0
  29. package/cjs/api/font.js +10 -0
  30. package/cjs/api/font.js.map +1 -0
  31. package/cjs/api/fontFamily.d.ts +17 -0
  32. package/cjs/api/fontFamily.d.ts.map +1 -0
  33. package/cjs/api/fontFamily.js +17 -0
  34. package/cjs/api/fontFamily.js.map +1 -0
  35. package/cjs/api/highlight.d.ts +41 -0
  36. package/cjs/api/highlight.d.ts.map +1 -0
  37. package/cjs/api/highlight.js +17 -0
  38. package/cjs/api/highlight.js.map +1 -0
  39. package/cjs/api/job.d.ts +40 -0
  40. package/cjs/api/job.d.ts.map +1 -0
  41. package/cjs/api/job.js +70 -0
  42. package/cjs/api/job.js.map +1 -0
  43. package/cjs/api/jobResult.d.ts +29 -0
  44. package/cjs/api/jobResult.d.ts.map +1 -0
  45. package/cjs/api/jobResult.js +35 -0
  46. package/cjs/api/jobResult.js.map +1 -0
  47. package/cjs/api/jobRevision.d.ts +64 -0
  48. package/cjs/api/jobRevision.d.ts.map +1 -0
  49. package/cjs/api/jobRevision.js +74 -0
  50. package/cjs/api/jobRevision.js.map +1 -0
  51. package/cjs/api/jobShare.d.ts +26 -0
  52. package/cjs/api/jobShare.d.ts.map +1 -0
  53. package/cjs/api/jobShare.js +10 -0
  54. package/cjs/api/jobShare.js.map +1 -0
  55. package/cjs/api/jobType.d.ts +17 -0
  56. package/cjs/api/jobType.d.ts.map +1 -0
  57. package/cjs/api/jobType.js +11 -0
  58. package/cjs/api/jobType.js.map +1 -0
  59. package/cjs/api/language.d.ts +17 -0
  60. package/cjs/api/language.d.ts.map +1 -0
  61. package/cjs/api/language.js +3 -0
  62. package/cjs/api/language.js.map +1 -0
  63. package/cjs/api/layer.d.ts +24 -0
  64. package/cjs/api/layer.d.ts.map +1 -0
  65. package/cjs/api/layer.js +14 -0
  66. package/cjs/api/layer.js.map +1 -0
  67. package/cjs/api/layerFaq.d.ts +27 -0
  68. package/cjs/api/layerFaq.d.ts.map +1 -0
  69. package/cjs/api/layerFaq.js +16 -0
  70. package/cjs/api/layerFaq.js.map +1 -0
  71. package/cjs/api/layerGroup.d.ts +16 -0
  72. package/cjs/api/layerGroup.d.ts.map +1 -0
  73. package/cjs/api/layerGroup.js +37 -0
  74. package/cjs/api/layerGroup.js.map +1 -0
  75. package/cjs/api/mapstyleSet.d.ts +29 -0
  76. package/cjs/api/mapstyleSet.d.ts.map +1 -0
  77. package/cjs/api/mapstyleSet.js +19 -0
  78. package/cjs/api/mapstyleSet.js.map +1 -0
  79. package/cjs/api/message.d.ts +32 -0
  80. package/cjs/api/message.d.ts.map +1 -0
  81. package/cjs/api/message.js +37 -0
  82. package/cjs/api/message.js.map +1 -0
  83. package/cjs/api/organisation.d.ts +38 -0
  84. package/cjs/api/organisation.d.ts.map +1 -0
  85. package/cjs/api/organisation.js +43 -0
  86. package/cjs/api/organisation.js.map +1 -0
  87. package/cjs/api/resources.d.ts +54 -0
  88. package/cjs/api/resources.d.ts.map +1 -0
  89. package/cjs/api/resources.js +55 -0
  90. package/cjs/api/resources.js.map +1 -0
  91. package/cjs/api/svg.d.ts +21 -0
  92. package/cjs/api/svg.d.ts.map +1 -0
  93. package/cjs/api/svg.js +15 -0
  94. package/cjs/api/svg.js.map +1 -0
  95. package/cjs/api/svgSet.d.ts +22 -0
  96. package/cjs/api/svgSet.d.ts.map +1 -0
  97. package/cjs/api/svgSet.js +25 -0
  98. package/cjs/api/svgSet.js.map +1 -0
  99. package/cjs/api/user.d.ts +100 -0
  100. package/cjs/api/user.d.ts.map +1 -0
  101. package/cjs/api/user.js +126 -0
  102. package/cjs/api/user.js.map +1 -0
  103. package/cjs/index.d.ts +26 -0
  104. package/cjs/index.d.ts.map +1 -0
  105. package/cjs/index.js +51 -0
  106. package/cjs/index.js.map +1 -0
  107. package/cjs/oauth.d.ts +20 -0
  108. package/cjs/oauth.d.ts.map +1 -0
  109. package/cjs/oauth.js +229 -0
  110. package/cjs/oauth.js.map +1 -0
  111. package/cjs/utils.d.ts +72 -0
  112. package/cjs/utils.d.ts.map +1 -0
  113. package/cjs/utils.js +220 -0
  114. package/cjs/utils.js.map +1 -0
  115. package/esm/api/apiCommon.d.ts +7 -0
  116. package/esm/api/apiCommon.d.ts.map +1 -0
  117. package/esm/api/apiCommon.js +28 -0
  118. package/esm/api/apiCommon.js.map +1 -0
  119. package/esm/api/choropleth.d.ts +206 -0
  120. package/esm/api/choropleth.d.ts.map +1 -0
  121. package/esm/api/choropleth.js +32 -0
  122. package/esm/api/choropleth.js.map +1 -0
  123. package/esm/api/color.d.ts +16 -0
  124. package/esm/api/color.d.ts.map +1 -0
  125. package/esm/api/color.js +5 -0
  126. package/esm/api/color.js.map +1 -0
  127. package/esm/api/dimension.d.ts +25 -0
  128. package/esm/api/dimension.d.ts.map +1 -0
  129. package/esm/api/dimension.js +16 -0
  130. package/esm/api/dimension.js.map +1 -0
  131. package/esm/api/dimensionSet.d.ts +15 -0
  132. package/esm/api/dimensionSet.d.ts.map +1 -0
  133. package/esm/api/dimensionSet.js +4 -0
  134. package/esm/api/dimensionSet.js.map +1 -0
  135. package/esm/api/feature.d.ts +16 -0
  136. package/esm/api/feature.d.ts.map +1 -0
  137. package/esm/api/feature.js +5 -0
  138. package/esm/api/feature.js.map +1 -0
  139. package/esm/api/font.d.ts +22 -0
  140. package/esm/api/font.d.ts.map +1 -0
  141. package/esm/api/font.js +7 -0
  142. package/esm/api/font.js.map +1 -0
  143. package/esm/api/fontFamily.d.ts +17 -0
  144. package/esm/api/fontFamily.d.ts.map +1 -0
  145. package/esm/api/fontFamily.js +13 -0
  146. package/esm/api/fontFamily.js.map +1 -0
  147. package/esm/api/highlight.d.ts +41 -0
  148. package/esm/api/highlight.d.ts.map +1 -0
  149. package/esm/api/highlight.js +12 -0
  150. package/esm/api/highlight.js.map +1 -0
  151. package/esm/api/job.d.ts +40 -0
  152. package/esm/api/job.d.ts.map +1 -0
  153. package/esm/api/job.js +58 -0
  154. package/esm/api/job.js.map +1 -0
  155. package/esm/api/jobResult.d.ts +29 -0
  156. package/esm/api/jobResult.d.ts.map +1 -0
  157. package/esm/api/jobResult.js +30 -0
  158. package/esm/api/jobResult.js.map +1 -0
  159. package/esm/api/jobRevision.d.ts +64 -0
  160. package/esm/api/jobRevision.d.ts.map +1 -0
  161. package/esm/api/jobRevision.js +64 -0
  162. package/esm/api/jobRevision.js.map +1 -0
  163. package/esm/api/jobShare.d.ts +26 -0
  164. package/esm/api/jobShare.d.ts.map +1 -0
  165. package/esm/api/jobShare.js +6 -0
  166. package/esm/api/jobShare.js.map +1 -0
  167. package/esm/api/jobType.d.ts +17 -0
  168. package/esm/api/jobType.d.ts.map +1 -0
  169. package/esm/api/jobType.js +8 -0
  170. package/esm/api/jobType.js.map +1 -0
  171. package/esm/api/language.d.ts +17 -0
  172. package/esm/api/language.d.ts.map +1 -0
  173. package/esm/api/language.js +2 -0
  174. package/esm/api/language.js.map +1 -0
  175. package/esm/api/layer.d.ts +24 -0
  176. package/esm/api/layer.d.ts.map +1 -0
  177. package/esm/api/layer.js +11 -0
  178. package/esm/api/layer.js.map +1 -0
  179. package/esm/api/layerFaq.d.ts +27 -0
  180. package/esm/api/layerFaq.d.ts.map +1 -0
  181. package/esm/api/layerFaq.js +12 -0
  182. package/esm/api/layerFaq.js.map +1 -0
  183. package/esm/api/layerGroup.d.ts +16 -0
  184. package/esm/api/layerGroup.d.ts.map +1 -0
  185. package/esm/api/layerGroup.js +33 -0
  186. package/esm/api/layerGroup.js.map +1 -0
  187. package/esm/api/mapstyleSet.d.ts +29 -0
  188. package/esm/api/mapstyleSet.d.ts.map +1 -0
  189. package/esm/api/mapstyleSet.js +16 -0
  190. package/esm/api/mapstyleSet.js.map +1 -0
  191. package/esm/api/message.d.ts +32 -0
  192. package/esm/api/message.d.ts.map +1 -0
  193. package/esm/api/message.js +32 -0
  194. package/esm/api/message.js.map +1 -0
  195. package/esm/api/organisation.d.ts +38 -0
  196. package/esm/api/organisation.d.ts.map +1 -0
  197. package/esm/api/organisation.js +37 -0
  198. package/esm/api/organisation.js.map +1 -0
  199. package/esm/api/resources.d.ts +54 -0
  200. package/esm/api/resources.d.ts.map +1 -0
  201. package/esm/api/resources.js +48 -0
  202. package/esm/api/resources.js.map +1 -0
  203. package/esm/api/svg.d.ts +21 -0
  204. package/esm/api/svg.d.ts.map +1 -0
  205. package/esm/api/svg.js +11 -0
  206. package/esm/api/svg.js.map +1 -0
  207. package/esm/api/svgSet.d.ts +22 -0
  208. package/esm/api/svgSet.d.ts.map +1 -0
  209. package/esm/api/svgSet.js +21 -0
  210. package/esm/api/svgSet.js.map +1 -0
  211. package/esm/api/user.d.ts +100 -0
  212. package/esm/api/user.d.ts.map +1 -0
  213. package/esm/api/user.js +110 -0
  214. package/esm/api/user.js.map +1 -0
  215. package/esm/index.d.ts +26 -0
  216. package/esm/index.d.ts.map +1 -0
  217. package/esm/index.js +26 -0
  218. package/esm/index.js.map +1 -0
  219. package/esm/oauth.d.ts +20 -0
  220. package/esm/oauth.d.ts.map +1 -0
  221. package/esm/oauth.js +222 -0
  222. package/esm/oauth.js.map +1 -0
  223. package/esm/utils.d.ts +72 -0
  224. package/esm/utils.d.ts.map +1 -0
  225. package/esm/utils.js +206 -0
  226. package/esm/utils.js.map +1 -0
  227. package/package.json +69 -137
  228. package/src/README.md +126 -0
  229. package/src/api/apiCommon.ts +70 -0
  230. package/src/api/choropleth.ts +318 -0
  231. package/src/api/color.ts +22 -0
  232. package/src/api/dimension.ts +54 -0
  233. package/src/api/dimensionSet.ts +20 -0
  234. package/src/api/feature.ts +22 -0
  235. package/src/api/font.ts +30 -0
  236. package/src/api/fontFamily.ts +43 -0
  237. package/src/api/highlight.ts +74 -0
  238. package/src/api/job.ts +127 -0
  239. package/src/api/jobResult.ts +81 -0
  240. package/src/api/jobRevision.ts +200 -0
  241. package/src/api/jobShare.ts +35 -0
  242. package/src/api/jobType.ts +26 -0
  243. package/src/api/language.ts +19 -0
  244. package/src/api/layer.ts +36 -0
  245. package/src/api/layerFaq.ts +53 -0
  246. package/src/api/layerGroup.ts +69 -0
  247. package/src/api/mapstyleSet.ts +46 -0
  248. package/src/api/message.ts +80 -0
  249. package/src/api/organisation.ts +94 -0
  250. package/src/api/resources.ts +134 -0
  251. package/src/api/svg.ts +33 -0
  252. package/src/api/svgSet.ts +56 -0
  253. package/src/api/user.ts +280 -0
  254. package/src/index.ts +42 -0
  255. package/src/oauth.ts +292 -0
  256. package/src/utils.ts +342 -0
  257. package/dist/ImageHandler.d.ts +0 -56
  258. package/dist/Mapcreator.d.ts +0 -338
  259. package/dist/PaginatedResourceListing.d.ts +0 -156
  260. package/dist/RequestParameters.d.ts +0 -241
  261. package/dist/ResourceLister.d.ts +0 -155
  262. package/dist/bundle.browser.js +0 -14590
  263. package/dist/bundle.browser.min.js +0 -3
  264. package/dist/bundle.browser.min.js.LICENSE.txt +0 -74
  265. package/dist/bundle.js +0 -12755
  266. package/dist/bundle.min.js +0 -3
  267. package/dist/bundle.min.js.LICENSE.txt +0 -44
  268. package/dist/enums/DeletedState.d.ts +0 -16
  269. package/dist/enums/Enum.d.ts +0 -40
  270. package/dist/enums/JobShareVisibility.d.ts +0 -15
  271. package/dist/enums/ResultStatus.d.ts +0 -17
  272. package/dist/enums/index.d.ts +0 -5
  273. package/dist/errors/AbstractError.d.ts +0 -26
  274. package/dist/errors/ApiError.d.ts +0 -65
  275. package/dist/errors/GeoError.d.ts +0 -6
  276. package/dist/errors/NodeError.d.ts +0 -6
  277. package/dist/errors/OAuthError.d.ts +0 -17
  278. package/dist/errors/StaticClassError.d.ts +0 -7
  279. package/dist/errors/ValidationError.d.ts +0 -125
  280. package/dist/errors/index.d.ts +0 -8
  281. package/dist/index.d.ts +0 -27
  282. package/dist/oauth/DummyFlow.d.ts +0 -19
  283. package/dist/oauth/ImplicitFlow.d.ts +0 -68
  284. package/dist/oauth/ImplicitFlowPopup.d.ts +0 -25
  285. package/dist/oauth/OAuth.d.ts +0 -50
  286. package/dist/oauth/OAuthToken.d.ts +0 -67
  287. package/dist/oauth/PasswordFlow.d.ts +0 -56
  288. package/dist/oauth/StateContainer.d.ts +0 -36
  289. package/dist/proxy/GeoResourceProxy.d.ts +0 -69
  290. package/dist/proxy/OrganisationProxy.d.ts +0 -62
  291. package/dist/proxy/OwnedResourceProxy.d.ts +0 -60
  292. package/dist/proxy/ResourceProxy.d.ts +0 -32
  293. package/dist/proxy/SimpleResourceProxy.d.ts +0 -76
  294. package/dist/proxy/index.d.ts +0 -6
  295. package/dist/resources/Choropleth.d.ts +0 -20
  296. package/dist/resources/Color.d.ts +0 -9
  297. package/dist/resources/Contract.d.ts +0 -7
  298. package/dist/resources/Dimension.d.ts +0 -7
  299. package/dist/resources/DimensionSet.d.ts +0 -11
  300. package/dist/resources/Domain.d.ts +0 -7
  301. package/dist/resources/Faq.d.ts +0 -7
  302. package/dist/resources/Feature.d.ts +0 -9
  303. package/dist/resources/Font.d.ts +0 -4
  304. package/dist/resources/FontFamily.d.ts +0 -11
  305. package/dist/resources/Highlight.d.ts +0 -4
  306. package/dist/resources/InsetMap.d.ts +0 -10
  307. package/dist/resources/Job.d.ts +0 -56
  308. package/dist/resources/JobResult.d.ts +0 -76
  309. package/dist/resources/JobRevision.d.ts +0 -64
  310. package/dist/resources/JobShare.d.ts +0 -15
  311. package/dist/resources/JobType.d.ts +0 -9
  312. package/dist/resources/Language.d.ts +0 -4
  313. package/dist/resources/Layer.d.ts +0 -10
  314. package/dist/resources/LayerFaq.d.ts +0 -8
  315. package/dist/resources/LayerGroup.d.ts +0 -14
  316. package/dist/resources/Mapstyle.d.ts +0 -8
  317. package/dist/resources/MapstyleSet.d.ts +0 -13
  318. package/dist/resources/MapstyleSetColor.d.ts +0 -8
  319. package/dist/resources/Message.d.ts +0 -7
  320. package/dist/resources/MessageVariant.d.ts +0 -4
  321. package/dist/resources/Notification.d.ts +0 -4
  322. package/dist/resources/Organisation.d.ts +0 -99
  323. package/dist/resources/OrganisationNote.d.ts +0 -17
  324. package/dist/resources/Permission.d.ts +0 -4
  325. package/dist/resources/ProductTour.d.ts +0 -10
  326. package/dist/resources/ProductTourStep.d.ts +0 -7
  327. package/dist/resources/Role.d.ts +0 -14
  328. package/dist/resources/Svg.d.ts +0 -4
  329. package/dist/resources/SvgSet.d.ts +0 -11
  330. package/dist/resources/Tag.d.ts +0 -9
  331. package/dist/resources/TagType.d.ts +0 -13
  332. package/dist/resources/User.d.ts +0 -119
  333. package/dist/resources/VectorChoropleth.d.ts +0 -4
  334. package/dist/resources/VectorHighlight.d.ts +0 -4
  335. package/dist/resources/base/CrudBase.d.ts +0 -66
  336. package/dist/resources/base/CrudBase.d.ts.map +0 -1
  337. package/dist/resources/base/CrudSetBase.d.ts +0 -27
  338. package/dist/resources/base/CrudSetBase.d.ts.map +0 -1
  339. package/dist/resources/base/CrudSetItemBase.d.ts +0 -19
  340. package/dist/resources/base/CrudSetItemBase.d.ts.map +0 -1
  341. package/dist/resources/base/DownloadedResource.d.ts +0 -72
  342. package/dist/resources/base/DownloadedResource.d.ts.map +0 -1
  343. package/dist/resources/base/ResourceBase.d.ts +0 -164
  344. package/dist/resources/base/ResourceBase.d.ts.map +0 -1
  345. package/dist/resources/index.d.ts +0 -47
  346. package/dist/storage/CookiesDriver.d.ts +0 -37
  347. package/dist/storage/DataStoreContract.d.ts +0 -46
  348. package/dist/storage/DummyDriver.d.ts +0 -15
  349. package/dist/storage/FileDriver.d.ts +0 -54
  350. package/dist/storage/LocalStorageDriver.d.ts +0 -13
  351. package/dist/storage/StorageManager.d.ts +0 -46
  352. package/dist/traits/HandlesImages.d.ts +0 -15
  353. package/dist/traits/Injectable.d.ts +0 -60
  354. package/dist/traits/OwnableResource.d.ts +0 -18
  355. package/dist/traits/Trait.d.ts +0 -12
  356. package/dist/utils/Logger.d.ts +0 -55
  357. package/dist/utils/Singleton.d.ts +0 -9
  358. package/dist/utils/StaticClass.d.ts +0 -7
  359. package/dist/utils/Unobservable.d.ts +0 -13
  360. package/dist/utils/base64.d.ts +0 -12
  361. package/dist/utils/geo.d.ts +0 -74
  362. package/dist/utils/hash.d.ts +0 -15
  363. package/dist/utils/helpers.d.ts +0 -47
  364. package/dist/utils/node.d.ts +0 -15
  365. package/dist/utils/reflection.d.ts +0 -43
  366. package/dist/utils/requests.d.ts +0 -24
  367. package/dist/utils/uuid.d.ts +0 -19
  368. package/manual/assets/maps4news.svg +0 -23
  369. package/manual/building.md +0 -19
  370. package/manual/css/hide_import.css +0 -3
  371. package/manual/css/sidebar_fix.css +0 -3
  372. package/manual/examples.authentication.md +0 -205
  373. package/manual/examples.md +0 -153
  374. package/manual/installation.md +0 -33
  375. package/manual/js/sandbox.js +0 -26
  376. package/src/ImageHandler.js +0 -134
  377. package/src/Mapcreator.js +0 -703
  378. package/src/PaginatedResourceListing.js +0 -300
  379. package/src/RequestParameters.js +0 -711
  380. package/src/ResourceLister.js +0 -368
  381. package/src/enums/DeletedState.js +0 -49
  382. package/src/enums/Enum.js +0 -130
  383. package/src/enums/JobShareVisibility.js +0 -43
  384. package/src/enums/ResultStatus.js +0 -49
  385. package/src/enums/index.js +0 -36
  386. package/src/errors/AbstractError.js +0 -70
  387. package/src/errors/ApiError.js +0 -139
  388. package/src/errors/GeoError.js +0 -36
  389. package/src/errors/NodeError.js +0 -36
  390. package/src/errors/OAuthError.js +0 -71
  391. package/src/errors/StaticClassError.js +0 -37
  392. package/src/errors/ValidationError.js +0 -164
  393. package/src/errors/index.js +0 -39
  394. package/src/index.js +0 -75
  395. package/src/oauth/DummyFlow.js +0 -63
  396. package/src/oauth/ImplicitFlow.js +0 -226
  397. package/src/oauth/ImplicitFlowPopup.js +0 -122
  398. package/src/oauth/OAuth.js +0 -131
  399. package/src/oauth/OAuthToken.js +0 -175
  400. package/src/oauth/PasswordFlow.js +0 -164
  401. package/src/oauth/StateContainer.js +0 -111
  402. package/src/proxy/GeoResourceProxy.js +0 -137
  403. package/src/proxy/OrganisationProxy.js +0 -149
  404. package/src/proxy/OwnedResourceProxy.js +0 -148
  405. package/src/proxy/ResourceProxy.js +0 -101
  406. package/src/proxy/SimpleResourceProxy.js +0 -188
  407. package/src/proxy/index.js +0 -37
  408. package/src/resources/Choropleth.js +0 -66
  409. package/src/resources/Color.js +0 -46
  410. package/src/resources/Contract.js +0 -42
  411. package/src/resources/Dimension.js +0 -42
  412. package/src/resources/DimensionSet.js +0 -56
  413. package/src/resources/Domain.js +0 -42
  414. package/src/resources/Faq.js +0 -42
  415. package/src/resources/Feature.js +0 -47
  416. package/src/resources/Font.js +0 -43
  417. package/src/resources/FontFamily.js +0 -55
  418. package/src/resources/Highlight.js +0 -39
  419. package/src/resources/InsetMap.js +0 -49
  420. package/src/resources/Job.js +0 -160
  421. package/src/resources/JobResult.js +0 -184
  422. package/src/resources/JobRevision.js +0 -201
  423. package/src/resources/JobShare.js +0 -61
  424. package/src/resources/JobType.js +0 -50
  425. package/src/resources/Language.js +0 -51
  426. package/src/resources/Layer.js +0 -48
  427. package/src/resources/LayerFaq.js +0 -47
  428. package/src/resources/LayerGroup.js +0 -57
  429. package/src/resources/Mapstyle.js +0 -45
  430. package/src/resources/MapstyleSet.js +0 -65
  431. package/src/resources/MapstyleSetColor.js +0 -51
  432. package/src/resources/Message.js +0 -94
  433. package/src/resources/MessageVariant.js +0 -37
  434. package/src/resources/Notification.js +0 -39
  435. package/src/resources/Organisation.js +0 -233
  436. package/src/resources/OrganisationNote.js +0 -57
  437. package/src/resources/Permission.js +0 -39
  438. package/src/resources/ProductTour.js +0 -53
  439. package/src/resources/ProductTourStep.js +0 -48
  440. package/src/resources/Role.js +0 -58
  441. package/src/resources/Svg.js +0 -39
  442. package/src/resources/SvgSet.js +0 -55
  443. package/src/resources/Tag.js +0 -50
  444. package/src/resources/TagType.js +0 -56
  445. package/src/resources/User.js +0 -251
  446. package/src/resources/VectorChoropleth.js +0 -40
  447. package/src/resources/VectorHighlight.js +0 -40
  448. package/src/resources/base/CrudBase.js +0 -204
  449. package/src/resources/base/CrudSetBase.js +0 -83
  450. package/src/resources/base/CrudSetItemBase.js +0 -82
  451. package/src/resources/base/DownloadedResource.js +0 -165
  452. package/src/resources/base/ResourceBase.js +0 -484
  453. package/src/resources/index.js +0 -81
  454. package/src/storage/CookiesDriver.js +0 -136
  455. package/src/storage/DataStoreContract.js +0 -111
  456. package/src/storage/DummyDriver.js +0 -91
  457. package/src/storage/FileDriver.js +0 -174
  458. package/src/storage/LocalStorageDriver.js +0 -108
  459. package/src/storage/StorageManager.js +0 -109
  460. package/src/traits/HandlesImages.js +0 -50
  461. package/src/traits/Injectable.js +0 -221
  462. package/src/traits/OwnableResource.js +0 -56
  463. package/src/traits/Trait.js +0 -43
  464. package/src/utils/Logger.js +0 -137
  465. package/src/utils/Singleton.js +0 -49
  466. package/src/utils/StaticClass.js +0 -43
  467. package/src/utils/Unobservable.js +0 -47
  468. package/src/utils/base64.js +0 -93
  469. package/src/utils/geo.js +0 -139
  470. package/src/utils/hash.js +0 -72
  471. package/src/utils/helpers.js +0 -178
  472. package/src/utils/node.js +0 -55
  473. package/src/utils/reflection.js +0 -170
  474. package/src/utils/requests.js +0 -120
  475. package/src/utils/uuid.js +0 -68
package/src/utils.ts ADDED
@@ -0,0 +1,342 @@
1
+ import type { CamelCasedProperties, SnakeCasedProperties } from 'type-fest';
2
+ import { apiHost, authenticate, token } from './oauth.js';
3
+
4
+ export type Flatten<Type> = Type extends Array<infer Item> ? Item : Type;
5
+
6
+ export type ApiCommonData = {
7
+ created_at: string | null;
8
+ deleted_at: string | null;
9
+ updated_at: string | null;
10
+ };
11
+
12
+ export interface ApiSuccess {
13
+ success: true;
14
+ data?: Record<string, unknown> | Array<Record<string, unknown>> | string | string[];
15
+ }
16
+
17
+ export interface ApiError {
18
+ success: false;
19
+ error: {
20
+ type: string;
21
+ message: string;
22
+ validation_errors?: Record<string, string[]>;
23
+ // schema_errors?: Record<string, unknown>[];
24
+ };
25
+ }
26
+
27
+ export type ApiCommon = ApiSuccess | ApiError;
28
+
29
+ export const myUser = 'me';
30
+ export const myOrganisations = 'mine';
31
+ export const lastJobRevision = 'last';
32
+
33
+ export const defaultListHeader = { 'X-Per-Page': '50' };
34
+ export const deletedNoneParam = getSearchParams({ deleted: 'none' });
35
+
36
+ export const keysToRemove = ['created_at', 'deleted_at', 'updated_at'];
37
+ export const staticContext = { keysToRemove: new Set(keysToRemove), keysToAdd: [], revivers: {} };
38
+
39
+ // class AuthorizationError extends Error {}
40
+ export class NetworkError extends Error {}
41
+
42
+ export class HTTPError extends Error {
43
+ statusCode: number;
44
+ constructor(response: Response) {
45
+ super(response.statusText);
46
+ this.statusCode = response.status;
47
+ }
48
+ }
49
+
50
+ export class APIError extends Error {
51
+ code: string;
52
+ constructor(apiError: ApiError) {
53
+ super(apiError.error.message);
54
+ this.code = apiError.error.type;
55
+ }
56
+ }
57
+
58
+ export function getSearchParams(search: Record<string, unknown>): URLSearchParams {
59
+ return new URLSearchParams(
60
+ Object.entries(search).reduce<string[][]>((arr, [key, value]) => {
61
+ if (Array.isArray(value)) {
62
+ arr.push(...value.map(val => [`${key}[]`, String(val)]));
63
+ } else if (value !== null && typeof value === 'object') {
64
+ const params = getSearchParams(value as Record<string, unknown>);
65
+
66
+ arr.push(
67
+ ...Array.from(params.entries()).map(([subKey, val]) => [
68
+ ~subKey.indexOf('[')
69
+ ? `${key}[${subKey.slice(0, subKey.indexOf('['))}]${subKey.slice(subKey.indexOf('['))}`
70
+ : `${key}[${subKey}]`,
71
+ val,
72
+ ]),
73
+ );
74
+ } else {
75
+ arr.push([key, String(value)]);
76
+ }
77
+
78
+ return arr;
79
+ }, []),
80
+ );
81
+ }
82
+
83
+ export type Revivers<
84
+ I extends ApiCommon,
85
+ O extends Record<string, unknown>,
86
+ R = Exclude<Flatten<Exclude<Exclude<I, ApiError>['data'], string | undefined>>, string>,
87
+ > = {
88
+ [K in keyof O | keyof R]?: K extends keyof O & keyof R
89
+ ? ((data: R) => O[K]) | undefined
90
+ : K extends Exclude<keyof O, keyof R>
91
+ ? (data: R) => O[K]
92
+ : K extends Exclude<keyof R, keyof O>
93
+ ? undefined
94
+ : never;
95
+ };
96
+ export interface ExtraOptions<I extends ApiCommon, O extends Record<string, unknown> | string> {
97
+ method?: 'GET' | 'HEAD' | 'POST' | 'PUT' | 'DELETE' | 'PATCH'; // 'CONNECT' | 'OPTIONS' | 'TRACE'
98
+ revivers?: O extends Record<string, unknown> ? Revivers<I, O> : never;
99
+ sendNull?: boolean;
100
+ withMeta?: boolean;
101
+ }
102
+
103
+ export class APIMeta<
104
+ I extends ApiCommon,
105
+ O extends Record<string, unknown> | string,
106
+ A = Exclude<I, ApiError>['data'] extends unknown[] ? true : false,
107
+ > extends Error {
108
+ data: A extends true ? O[] : O;
109
+ status: number;
110
+ headers: Headers;
111
+
112
+ constructor(data: A extends true ? O[] : O, headers: Headers, status: number) {
113
+ super();
114
+
115
+ this.data = data;
116
+ this.status = status;
117
+ this.headers = headers;
118
+ }
119
+ }
120
+
121
+ export async function request<
122
+ I extends ApiCommon,
123
+ O extends Record<string, unknown> | string,
124
+ A = Exclude<I, ApiError>['data'] extends unknown[] ? true : false,
125
+ >(
126
+ path: string,
127
+ body?: XMLHttpRequestBodyInit | Record<string | number, unknown> | null,
128
+ extraHeaders?: Record<string, string> | null,
129
+ extraOptions?: ExtraOptions<I, O>,
130
+ ): Promise<A extends true ? O[] : O> {
131
+ type R = A extends true ? O[] : O;
132
+
133
+ const href = `${apiHost}${path}`;
134
+ const init = getRequestInit(body, extraHeaders, extraOptions);
135
+
136
+ const response = await fetch(href, init).catch((error: Error) => {
137
+ throw new NetworkError(error?.message ?? error);
138
+ });
139
+
140
+ if (response.ok) {
141
+ const json = (await response.json().catch(() => ({
142
+ success: false,
143
+ error: { type: 'SyntaxError', message: 'Malformed JSON response' },
144
+ }))) as I;
145
+
146
+ if (json.success) {
147
+ const { data } = json;
148
+
149
+ const withMeta = extraOptions?.withMeta;
150
+ const revivers = extraOptions?.revivers;
151
+ const keys = revivers ? Object.keys(revivers) : [];
152
+
153
+ const context =
154
+ revivers && keys.length
155
+ ? getContext(revivers as Revivers<I, Record<string, unknown>>, keys)
156
+ : staticContext;
157
+
158
+ let result: R;
159
+
160
+ if (Array.isArray(data)) {
161
+ let moreData = [] as unknown as R;
162
+ const headers = response.headers;
163
+ // @ts-expect-error TS2362, get valid number or 0
164
+ const total = headers.get('X-Paginate-Total') | 0;
165
+
166
+ if (!withMeta && ((data.length && total > data.length) || response.status === 206)) {
167
+ // @ts-expect-error TS2362, get valid number or 0
168
+ const offset = `${(headers.get('X-Paginate-Offset') | 0) + data.length}`;
169
+
170
+ moreData = await request<I, O, A>(
171
+ path, body, { ...extraHeaders, 'X-Offset': offset }, extraOptions,
172
+ );
173
+ }
174
+
175
+ if (data.length) {
176
+ result = (
177
+ typeof data[0] !== 'string'
178
+ ? (data as Array<Record<string, unknown>>).map(processData, context)
179
+ : data
180
+ ).concat(moreData) as R;
181
+ } else {
182
+ result = moreData;
183
+ }
184
+ } else {
185
+ if (data !== undefined) {
186
+ // @ts-expect-error TS2345, TODO: fix type error for the `context` object
187
+ result = (typeof data !== 'string' ? processData.call(context, data) : data) as R;
188
+ } else {
189
+ result = {} as R;
190
+ }
191
+ }
192
+
193
+ if (withMeta) {
194
+ throw new APIMeta<I, O, A>(result, response.headers, response.status);
195
+ }
196
+
197
+ return result;
198
+ } else {
199
+ throw new APIError(json);
200
+ }
201
+ } else {
202
+ // TODO: parse and process all typical errors
203
+ // eslint-disable-next-line default-case
204
+ switch (response.status) {
205
+ case 401:
206
+ authenticate();
207
+ break; // NO-OP
208
+ case 403:
209
+ case 404:
210
+ case 406:
211
+ throw new APIError(
212
+ (await response.json().catch(() => ({
213
+ success: false,
214
+ error: { type: 'HttpException', message: response.statusText },
215
+ }))) as ApiError,
216
+ );
217
+ case 429:
218
+ await new Promise(
219
+ (
220
+ resolve, // @ts-expect-error TS2531
221
+ ) => { setTimeout(resolve, response.headers.get('X-RateLimit-Reset') * 1000 || 500) },
222
+ );
223
+
224
+ return request<I, O, A>(path, body, extraHeaders, extraOptions);
225
+ }
226
+
227
+ throw new HTTPError(response);
228
+ }
229
+ }
230
+
231
+ function getRequestInit<I extends ApiCommon, O extends Record<string, unknown>>(
232
+ body?: XMLHttpRequestBodyInit | Record<string | number, unknown> | null,
233
+ extraHeaders?: Record<string, string> | null,
234
+ extraOptions?: ExtraOptions<I, O>,
235
+ ): RequestInit {
236
+ const authorization = token ? { Authorization: token.toString() } : null;
237
+ let contentType = null as { 'Content-Type': string } | null;
238
+
239
+ if (body !== undefined) {
240
+ switch (true) {
241
+ case typeof body === 'string':
242
+ contentType = { 'Content-Type': 'text/plain' };
243
+ break;
244
+ case body instanceof FormData: // Autofilled with 'multipart/form-data'
245
+ case body instanceof URLSearchParams: // Autofilled with 'application/x-www-form-urlencoded'
246
+ break;
247
+ case body instanceof Blob: // File is instance of Blob too
248
+ contentType = { 'Content-Type': body.type || 'application/octet-stream' };
249
+ break;
250
+ case body instanceof ArrayBuffer:
251
+ case ArrayBuffer.isView(body):
252
+ contentType = { 'Content-Type': 'application/octet-stream' };
253
+ break;
254
+ case body === null && !extraOptions?.sendNull:
255
+ break;
256
+ default:
257
+ contentType = { 'Content-Type': 'application/json' };
258
+ body = JSON.stringify(body);
259
+ }
260
+ }
261
+
262
+ const headers = { Accept: 'application/json', ...authorization, ...contentType, ...extraHeaders };
263
+ const method = extraOptions?.method ?? (body != null ? 'POST' : 'GET'); // don't touch `!=` please
264
+
265
+ return { body, headers, method } as RequestInit;
266
+ }
267
+
268
+ interface Context<I extends ApiCommon, O extends Record<string, unknown>> {
269
+ keysToRemove: Set<string>;
270
+ keysToAdd: string[];
271
+ revivers: Revivers<I, O>;
272
+ }
273
+
274
+ export function getContext<I extends ApiCommon, O extends Record<string, unknown>>(
275
+ revivers: Revivers<I, O>,
276
+ keys = Object.keys(revivers),
277
+ ): Context<I, O> {
278
+ return {
279
+ keysToRemove: new Set(keys.filter(isUndefined, revivers).concat(keysToRemove)),
280
+ keysToAdd: keys.filter(isReviver, revivers),
281
+ revivers,
282
+ };
283
+ }
284
+
285
+ export function processData<I extends ApiCommon, O extends Record<string, unknown>>(
286
+ this: Context<I, O>,
287
+ data: Exclude<Flatten<Exclude<Exclude<I, ApiError>['data'], string | undefined>>, string>,
288
+ ): O { /* eslint-disable @typescript-eslint/prefer-for-of */
289
+ const result = {} as Record<string, unknown>;
290
+
291
+ const keys = Object.keys(data).filter(isPreserved, this.keysToRemove);
292
+
293
+ for (let i = 0; i < keys.length; ++i) {
294
+ result[toCamelCase(keys[i])] = data[keys[i]];
295
+ }
296
+
297
+ if (this.keysToAdd.length) {
298
+ const keys = this.keysToAdd;
299
+
300
+ for (let i = 0; i < keys.length; ++i) {
301
+ result[keys[i]] = this.revivers[keys[i]]!(data);
302
+ }
303
+ }
304
+
305
+ return result as O;
306
+ } /* eslint-enable @typescript-eslint/prefer-for-of */
307
+
308
+ export function toApiType<T extends Record<string, unknown>>(body: T): SnakeCasedProperties<T> {
309
+ return Object.fromEntries(
310
+ Object.entries(body).map(([k, v]) => [toSnakeCase(k), v]),
311
+ ) as SnakeCasedProperties<T>;
312
+ }
313
+
314
+ export function toAppType<T extends Record<string, unknown>>(body: T): CamelCasedProperties<T> {
315
+ return Object.fromEntries(
316
+ Object.entries(body).map(([k, v]) => [toCamelCase(k), v]),
317
+ ) as CamelCasedProperties<T>;
318
+ }
319
+
320
+ export function ensureArray<T extends Record<string, unknown>>(data: T | T[]): T[] {
321
+ return Array.isArray(data) ? data : [data];
322
+ }
323
+
324
+ function toCamelCase(key: string): string {
325
+ return key.replace(/_+(.)/g, (_, c: string) => c.toUpperCase());
326
+ }
327
+
328
+ function toSnakeCase(key: string): string {
329
+ return key.replace(/[A-Z]/g, '_$&').toLowerCase();
330
+ }
331
+
332
+ function isUndefined(this: Record<string, unknown>, key: string): boolean {
333
+ return this[key] === undefined;
334
+ }
335
+
336
+ function isReviver(this: Record<string, unknown>, key: string): boolean {
337
+ return this[key] !== undefined;
338
+ }
339
+
340
+ function isPreserved(this: Set<string>, key: string): boolean {
341
+ return !this.has(key);
342
+ }
@@ -1,56 +0,0 @@
1
- /**
2
- * Image resource handler
3
- * @protected
4
- */
5
- export default class ImageHandler {
6
- /**
7
- * @param {Mapcreator} api - Api instance
8
- * @param {ResourceBase} target - Instance of target item
9
- */
10
- constructor(api: Mapcreator, target: ResourceBase);
11
- _api: Mapcreator;
12
- _target: ResourceBase;
13
- /**
14
- * Get api instance
15
- * @returns {Mapcreator} - Api instance
16
- */
17
- get api(): Mapcreator;
18
- /**
19
- * Resource url, can be used in an image tag
20
- * @returns {string} - Resource url
21
- */
22
- get url(): string;
23
- /**
24
- * Delete image
25
- * @throws {ApiError} - If the api returns errors
26
- * @returns {CancelablePromise}
27
- */
28
- delete(): CancelablePromise;
29
- /**
30
- * Download the image
31
- * @returns {CancelablePromise<DownloadedResource>} - image
32
- * @throws {ApiError} - If the api returns errors
33
- * @example
34
- * // Browser
35
- * layer.imageHandler.download().then(image => {
36
- * $('img').src = image.createObjectURL();
37
- * });
38
- *
39
- * // NodeJs
40
- * layer.imageHandler.download().then({fileName, data} => {
41
- * fs.writeFileSync(fileName, data);
42
- * });
43
- */
44
- download(): CancelablePromise<DownloadedResource>;
45
- /**
46
- * Upload new image
47
- * @param {ArrayBuffer|ArrayBufferView|File|Blob|Buffer} image - Image file
48
- * @returns {CancelablePromise}
49
- * @throws {ApiError} - If the api returns errors
50
- */
51
- upload(image: ArrayBuffer | ArrayBufferView | File | Blob | Buffer): CancelablePromise;
52
- }
53
- import Mapcreator from "./Mapcreator";
54
- import ResourceBase from "./resources/base/ResourceBase";
55
- import DownloadedResource from "./resources/base/DownloadedResource";
56
- //# sourceMappingURL=ImageHandler.d.ts.map