@equinor/fusion-framework-module-services 5.0.0-next-663bed8344cc2ca0111705b05045173328b3104d → 5.0.0

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 (245) hide show
  1. package/CHANGELOG.md +10 -7
  2. package/dist/esm/bookmarks/api-version.js +6 -0
  3. package/dist/esm/bookmarks/api-version.js.map +1 -0
  4. package/dist/esm/bookmarks/client.js +148 -47
  5. package/dist/esm/bookmarks/client.js.map +1 -1
  6. package/dist/esm/bookmarks/endpoints/bookmark-apply.get.js +49 -0
  7. package/dist/esm/bookmarks/endpoints/bookmark-apply.get.js.map +1 -0
  8. package/dist/esm/bookmarks/endpoints/bookmark.delete.js +48 -0
  9. package/dist/esm/bookmarks/endpoints/bookmark.delete.js.map +1 -0
  10. package/dist/esm/bookmarks/endpoints/bookmark.get.js +53 -0
  11. package/dist/esm/bookmarks/endpoints/bookmark.get.js.map +1 -0
  12. package/dist/esm/bookmarks/endpoints/bookmark.patch.js +68 -0
  13. package/dist/esm/bookmarks/endpoints/bookmark.patch.js.map +1 -0
  14. package/dist/esm/bookmarks/endpoints/bookmark.post.js +57 -0
  15. package/dist/esm/bookmarks/endpoints/bookmark.post.js.map +1 -0
  16. package/dist/esm/bookmarks/endpoints/user-bookmark-favourite.delete.js +48 -0
  17. package/dist/esm/bookmarks/endpoints/user-bookmark-favourite.delete.js.map +1 -0
  18. package/dist/esm/bookmarks/endpoints/user-bookmark-favourite.head.js +49 -0
  19. package/dist/esm/bookmarks/endpoints/user-bookmark-favourite.head.js.map +1 -0
  20. package/dist/esm/bookmarks/endpoints/user-bookmark-favourite.post.js +49 -0
  21. package/dist/esm/bookmarks/endpoints/user-bookmark-favourite.post.js.map +1 -0
  22. package/dist/esm/bookmarks/endpoints/user-bookmarks.get.js +75 -0
  23. package/dist/esm/bookmarks/endpoints/user-bookmarks.get.js.map +1 -0
  24. package/dist/esm/bookmarks/index.js +1 -2
  25. package/dist/esm/bookmarks/index.js.map +1 -1
  26. package/dist/esm/bookmarks/schemas.js +76 -0
  27. package/dist/esm/bookmarks/schemas.js.map +1 -0
  28. package/dist/esm/bookmarks/selectors.js +58 -0
  29. package/dist/esm/bookmarks/selectors.js.map +1 -0
  30. package/dist/esm/utils.js +35 -0
  31. package/dist/esm/utils.js.map +1 -0
  32. package/dist/esm/version.js +1 -1
  33. package/dist/tsconfig.tsbuildinfo +1 -1
  34. package/dist/types/bookmarks/api-version.d.ts +4 -0
  35. package/dist/types/bookmarks/client.d.ts +132 -34
  36. package/dist/types/bookmarks/endpoints/bookmark-apply.get.d.ts +40 -0
  37. package/dist/types/bookmarks/endpoints/bookmark.delete.d.ts +31 -0
  38. package/dist/types/bookmarks/endpoints/bookmark.get.d.ts +351 -0
  39. package/dist/types/bookmarks/endpoints/bookmark.patch.d.ts +254 -0
  40. package/dist/types/bookmarks/endpoints/bookmark.post.d.ts +231 -0
  41. package/dist/types/bookmarks/endpoints/user-bookmark-favourite.delete.d.ts +31 -0
  42. package/dist/types/bookmarks/endpoints/user-bookmark-favourite.head.d.ts +31 -0
  43. package/dist/types/bookmarks/endpoints/user-bookmark-favourite.post.d.ts +31 -0
  44. package/dist/types/bookmarks/endpoints/user-bookmarks.get.d.ts +235 -0
  45. package/dist/types/bookmarks/index.d.ts +3 -2
  46. package/dist/types/bookmarks/schemas.d.ts +383 -0
  47. package/dist/types/bookmarks/selectors.d.ts +17 -0
  48. package/dist/types/bookmarks/types.d.ts +5 -1
  49. package/dist/types/provider.d.ts +2 -2
  50. package/dist/types/types.d.ts +74 -11
  51. package/dist/types/utils.d.ts +18 -0
  52. package/dist/types/version.d.ts +1 -1
  53. package/package.json +11 -11
  54. package/src/bookmarks/README.md +90 -0
  55. package/src/bookmarks/api-version.ts +4 -0
  56. package/src/bookmarks/client.ts +257 -77
  57. package/src/bookmarks/endpoints/bookmark-apply.get.ts +114 -0
  58. package/src/bookmarks/endpoints/bookmark.delete.ts +113 -0
  59. package/src/bookmarks/endpoints/bookmark.get.ts +118 -0
  60. package/src/bookmarks/endpoints/bookmark.patch.ts +135 -0
  61. package/src/bookmarks/endpoints/bookmark.post.ts +124 -0
  62. package/src/bookmarks/endpoints/user-bookmark-favourite.delete.ts +113 -0
  63. package/src/bookmarks/endpoints/user-bookmark-favourite.head.ts +114 -0
  64. package/src/bookmarks/endpoints/user-bookmark-favourite.post.ts +114 -0
  65. package/src/bookmarks/endpoints/user-bookmarks.get.ts +142 -0
  66. package/src/bookmarks/index.ts +3 -3
  67. package/src/bookmarks/schemas.ts +81 -0
  68. package/src/bookmarks/selectors.ts +49 -0
  69. package/src/bookmarks/types.ts +16 -1
  70. package/src/provider.ts +4 -4
  71. package/src/types.ts +92 -11
  72. package/src/utils.ts +51 -0
  73. package/src/version.ts +1 -1
  74. package/dist/esm/bookmarks/api-models.js +0 -2
  75. package/dist/esm/bookmarks/api-models.js.map +0 -1
  76. package/dist/esm/bookmarks/delete/client.js +0 -10
  77. package/dist/esm/bookmarks/delete/client.js.map +0 -1
  78. package/dist/esm/bookmarks/delete/generate-endpoint.js +0 -20
  79. package/dist/esm/bookmarks/delete/generate-endpoint.js.map +0 -1
  80. package/dist/esm/bookmarks/delete/generate-parameters.js +0 -8
  81. package/dist/esm/bookmarks/delete/generate-parameters.js.map +0 -1
  82. package/dist/esm/bookmarks/delete/index.js +0 -5
  83. package/dist/esm/bookmarks/delete/index.js.map +0 -1
  84. package/dist/esm/bookmarks/delete/types-v1.js +0 -2
  85. package/dist/esm/bookmarks/delete/types-v1.js.map +0 -1
  86. package/dist/esm/bookmarks/delete/types.js +0 -2
  87. package/dist/esm/bookmarks/delete/types.js.map +0 -1
  88. package/dist/esm/bookmarks/favorites/delete/client.js +0 -10
  89. package/dist/esm/bookmarks/favorites/delete/client.js.map +0 -1
  90. package/dist/esm/bookmarks/favorites/delete/generate-endpoint.js +0 -15
  91. package/dist/esm/bookmarks/favorites/delete/generate-endpoint.js.map +0 -1
  92. package/dist/esm/bookmarks/favorites/delete/generate-parameters.js +0 -8
  93. package/dist/esm/bookmarks/favorites/delete/generate-parameters.js.map +0 -1
  94. package/dist/esm/bookmarks/favorites/delete/index.js +0 -5
  95. package/dist/esm/bookmarks/favorites/delete/index.js.map +0 -1
  96. package/dist/esm/bookmarks/favorites/delete/types-v1.js +0 -2
  97. package/dist/esm/bookmarks/favorites/delete/types-v1.js.map +0 -1
  98. package/dist/esm/bookmarks/favorites/delete/types.js +0 -2
  99. package/dist/esm/bookmarks/favorites/delete/types.js.map +0 -1
  100. package/dist/esm/bookmarks/favorites/head/client.js +0 -10
  101. package/dist/esm/bookmarks/favorites/head/client.js.map +0 -1
  102. package/dist/esm/bookmarks/favorites/head/generate-endpoint.js +0 -15
  103. package/dist/esm/bookmarks/favorites/head/generate-endpoint.js.map +0 -1
  104. package/dist/esm/bookmarks/favorites/head/generate-parameters.js +0 -10
  105. package/dist/esm/bookmarks/favorites/head/generate-parameters.js.map +0 -1
  106. package/dist/esm/bookmarks/favorites/head/index.js +0 -5
  107. package/dist/esm/bookmarks/favorites/head/index.js.map +0 -1
  108. package/dist/esm/bookmarks/favorites/head/types.js +0 -2
  109. package/dist/esm/bookmarks/favorites/head/types.js.map +0 -1
  110. package/dist/esm/bookmarks/favorites/post/client.js +0 -10
  111. package/dist/esm/bookmarks/favorites/post/client.js.map +0 -1
  112. package/dist/esm/bookmarks/favorites/post/generate-endpoint.js +0 -14
  113. package/dist/esm/bookmarks/favorites/post/generate-endpoint.js.map +0 -1
  114. package/dist/esm/bookmarks/favorites/post/generate-parameters.js +0 -10
  115. package/dist/esm/bookmarks/favorites/post/generate-parameters.js.map +0 -1
  116. package/dist/esm/bookmarks/favorites/post/index.js +0 -5
  117. package/dist/esm/bookmarks/favorites/post/index.js.map +0 -1
  118. package/dist/esm/bookmarks/favorites/post/types.js +0 -2
  119. package/dist/esm/bookmarks/favorites/post/types.js.map +0 -1
  120. package/dist/esm/bookmarks/get/client.js +0 -10
  121. package/dist/esm/bookmarks/get/client.js.map +0 -1
  122. package/dist/esm/bookmarks/get/generate-endpoint.js +0 -20
  123. package/dist/esm/bookmarks/get/generate-endpoint.js.map +0 -1
  124. package/dist/esm/bookmarks/get/generate-parameters.js +0 -7
  125. package/dist/esm/bookmarks/get/generate-parameters.js.map +0 -1
  126. package/dist/esm/bookmarks/get/index.js +0 -5
  127. package/dist/esm/bookmarks/get/index.js.map +0 -1
  128. package/dist/esm/bookmarks/get/types.js +0 -2
  129. package/dist/esm/bookmarks/get/types.js.map +0 -1
  130. package/dist/esm/bookmarks/getAll/client.js +0 -10
  131. package/dist/esm/bookmarks/getAll/client.js.map +0 -1
  132. package/dist/esm/bookmarks/getAll/generate-endpoint.js +0 -14
  133. package/dist/esm/bookmarks/getAll/generate-endpoint.js.map +0 -1
  134. package/dist/esm/bookmarks/getAll/generate-parameters.js +0 -7
  135. package/dist/esm/bookmarks/getAll/generate-parameters.js.map +0 -1
  136. package/dist/esm/bookmarks/getAll/index.js +0 -5
  137. package/dist/esm/bookmarks/getAll/index.js.map +0 -1
  138. package/dist/esm/bookmarks/getAll/types.js +0 -2
  139. package/dist/esm/bookmarks/getAll/types.js.map +0 -1
  140. package/dist/esm/bookmarks/patch/client.js +0 -10
  141. package/dist/esm/bookmarks/patch/client.js.map +0 -1
  142. package/dist/esm/bookmarks/patch/generate-endpoint.js +0 -14
  143. package/dist/esm/bookmarks/patch/generate-endpoint.js.map +0 -1
  144. package/dist/esm/bookmarks/patch/generate-parameters.js +0 -10
  145. package/dist/esm/bookmarks/patch/generate-parameters.js.map +0 -1
  146. package/dist/esm/bookmarks/patch/index.js +0 -5
  147. package/dist/esm/bookmarks/patch/index.js.map +0 -1
  148. package/dist/esm/bookmarks/patch/types.js +0 -2
  149. package/dist/esm/bookmarks/patch/types.js.map +0 -1
  150. package/dist/esm/bookmarks/post/client.js +0 -10
  151. package/dist/esm/bookmarks/post/client.js.map +0 -1
  152. package/dist/esm/bookmarks/post/generate-endpoint.js +0 -14
  153. package/dist/esm/bookmarks/post/generate-endpoint.js.map +0 -1
  154. package/dist/esm/bookmarks/post/generate-parameters.js +0 -10
  155. package/dist/esm/bookmarks/post/generate-parameters.js.map +0 -1
  156. package/dist/esm/bookmarks/post/index.js +0 -5
  157. package/dist/esm/bookmarks/post/index.js.map +0 -1
  158. package/dist/esm/bookmarks/post/types.js +0 -2
  159. package/dist/esm/bookmarks/post/types.js.map +0 -1
  160. package/dist/types/bookmarks/api-models.d.ts +0 -42
  161. package/dist/types/bookmarks/delete/client.d.ts +0 -11
  162. package/dist/types/bookmarks/delete/generate-endpoint.d.ts +0 -5
  163. package/dist/types/bookmarks/delete/generate-parameters.d.ts +0 -5
  164. package/dist/types/bookmarks/delete/index.d.ts +0 -4
  165. package/dist/types/bookmarks/delete/types-v1.d.ts +0 -4
  166. package/dist/types/bookmarks/delete/types.d.ts +0 -18
  167. package/dist/types/bookmarks/favorites/delete/client.d.ts +0 -11
  168. package/dist/types/bookmarks/favorites/delete/generate-endpoint.d.ts +0 -5
  169. package/dist/types/bookmarks/favorites/delete/generate-parameters.d.ts +0 -5
  170. package/dist/types/bookmarks/favorites/delete/index.d.ts +0 -4
  171. package/dist/types/bookmarks/favorites/delete/types-v1.d.ts +0 -4
  172. package/dist/types/bookmarks/favorites/delete/types.d.ts +0 -16
  173. package/dist/types/bookmarks/favorites/head/client.d.ts +0 -11
  174. package/dist/types/bookmarks/favorites/head/generate-endpoint.d.ts +0 -5
  175. package/dist/types/bookmarks/favorites/head/generate-parameters.d.ts +0 -5
  176. package/dist/types/bookmarks/favorites/head/index.d.ts +0 -4
  177. package/dist/types/bookmarks/favorites/head/types.d.ts +0 -17
  178. package/dist/types/bookmarks/favorites/post/client.d.ts +0 -11
  179. package/dist/types/bookmarks/favorites/post/generate-endpoint.d.ts +0 -5
  180. package/dist/types/bookmarks/favorites/post/generate-parameters.d.ts +0 -5
  181. package/dist/types/bookmarks/favorites/post/index.d.ts +0 -4
  182. package/dist/types/bookmarks/favorites/post/types.d.ts +0 -17
  183. package/dist/types/bookmarks/get/client.d.ts +0 -11
  184. package/dist/types/bookmarks/get/generate-endpoint.d.ts +0 -5
  185. package/dist/types/bookmarks/get/generate-parameters.d.ts +0 -5
  186. package/dist/types/bookmarks/get/index.d.ts +0 -4
  187. package/dist/types/bookmarks/get/types.d.ts +0 -21
  188. package/dist/types/bookmarks/getAll/client.d.ts +0 -11
  189. package/dist/types/bookmarks/getAll/generate-endpoint.d.ts +0 -5
  190. package/dist/types/bookmarks/getAll/generate-parameters.d.ts +0 -5
  191. package/dist/types/bookmarks/getAll/index.d.ts +0 -4
  192. package/dist/types/bookmarks/getAll/types.d.ts +0 -11
  193. package/dist/types/bookmarks/patch/client.d.ts +0 -11
  194. package/dist/types/bookmarks/patch/generate-endpoint.d.ts +0 -5
  195. package/dist/types/bookmarks/patch/generate-parameters.d.ts +0 -5
  196. package/dist/types/bookmarks/patch/index.d.ts +0 -4
  197. package/dist/types/bookmarks/patch/types.d.ts +0 -21
  198. package/dist/types/bookmarks/post/client.d.ts +0 -11
  199. package/dist/types/bookmarks/post/generate-endpoint.d.ts +0 -5
  200. package/dist/types/bookmarks/post/generate-parameters.d.ts +0 -5
  201. package/dist/types/bookmarks/post/index.d.ts +0 -4
  202. package/dist/types/bookmarks/post/types.d.ts +0 -34
  203. package/src/bookmarks/api-models.ts +0 -46
  204. package/src/bookmarks/delete/client.ts +0 -35
  205. package/src/bookmarks/delete/generate-endpoint.ts +0 -24
  206. package/src/bookmarks/delete/generate-parameters.ts +0 -25
  207. package/src/bookmarks/delete/index.ts +0 -6
  208. package/src/bookmarks/delete/types-v1.ts +0 -2
  209. package/src/bookmarks/delete/types.ts +0 -35
  210. package/src/bookmarks/favorites/delete/client.ts +0 -35
  211. package/src/bookmarks/favorites/delete/generate-endpoint.ts +0 -19
  212. package/src/bookmarks/favorites/delete/generate-parameters.ts +0 -25
  213. package/src/bookmarks/favorites/delete/index.ts +0 -6
  214. package/src/bookmarks/favorites/delete/types-v1.ts +0 -2
  215. package/src/bookmarks/favorites/delete/types.ts +0 -33
  216. package/src/bookmarks/favorites/head/client.ts +0 -35
  217. package/src/bookmarks/favorites/head/generate-endpoint.ts +0 -19
  218. package/src/bookmarks/favorites/head/generate-parameters.ts +0 -28
  219. package/src/bookmarks/favorites/head/index.ts +0 -6
  220. package/src/bookmarks/favorites/head/types.ts +0 -35
  221. package/src/bookmarks/favorites/post/client.ts +0 -35
  222. package/src/bookmarks/favorites/post/generate-endpoint.ts +0 -18
  223. package/src/bookmarks/favorites/post/generate-parameters.ts +0 -28
  224. package/src/bookmarks/favorites/post/index.ts +0 -6
  225. package/src/bookmarks/favorites/post/types.ts +0 -35
  226. package/src/bookmarks/get/client.ts +0 -30
  227. package/src/bookmarks/get/generate-endpoint.ts +0 -24
  228. package/src/bookmarks/get/generate-parameters.ts +0 -18
  229. package/src/bookmarks/get/index.ts +0 -6
  230. package/src/bookmarks/get/types.ts +0 -39
  231. package/src/bookmarks/getAll/client.ts +0 -30
  232. package/src/bookmarks/getAll/generate-endpoint.ts +0 -15
  233. package/src/bookmarks/getAll/generate-parameters.ts +0 -18
  234. package/src/bookmarks/getAll/index.ts +0 -6
  235. package/src/bookmarks/getAll/types.ts +0 -21
  236. package/src/bookmarks/patch/client.ts +0 -30
  237. package/src/bookmarks/patch/generate-endpoint.ts +0 -18
  238. package/src/bookmarks/patch/generate-parameters.ts +0 -28
  239. package/src/bookmarks/patch/index.ts +0 -6
  240. package/src/bookmarks/patch/types.ts +0 -45
  241. package/src/bookmarks/post/client.ts +0 -30
  242. package/src/bookmarks/post/generate-endpoint.ts +0 -18
  243. package/src/bookmarks/post/generate-parameters.ts +0 -28
  244. package/src/bookmarks/post/index.ts +0 -6
  245. package/src/bookmarks/post/types.ts +0 -58
package/src/types.ts CHANGED
@@ -3,13 +3,26 @@ import {
3
3
  IHttpClient,
4
4
  StreamResponse,
5
5
  BlobResult,
6
- FetchResponse,
7
6
  } from '@equinor/fusion-framework-module-http/client';
8
7
 
8
+ /**
9
+ * A factory function that creates an instance of an HTTP client.
10
+ *
11
+ * @param name - The name of the HTTP client to create.
12
+ * @returns A Promise that resolves to an instance of the HTTP client.
13
+ */
9
14
  export type ApiClientFactory<TClient extends IHttpClient = IHttpClient> = (
10
15
  name: string,
11
16
  ) => Promise<TClient>;
12
17
 
18
+ /**
19
+ * Represents the arguments for an API client function.
20
+ *
21
+ * @template TClient - The type of the HTTP client used by the API client.
22
+ * @template TResult - The type of the result returned by the API client.
23
+ * @param path - The path of the API endpoint.
24
+ * @param init - Optional initialization options for the API client request.
25
+ */
13
26
  export type ApiClientArguments<TClient extends IHttpClient, TResult = unknown> = [
14
27
  path: string,
15
28
  init?: ClientRequestInit<TClient, TResult>,
@@ -19,20 +32,10 @@ export type ApiClientArguments<TClient extends IHttpClient, TResult = unknown> =
19
32
  * Execute methods on the IHttpClient
20
33
  */
21
34
  export type ClientMethod<T = unknown> = {
22
- /**
23
- * Fetch data async
24
- * NOTE: data needs to be extracted from the response
25
- */
26
- fetch: Promise<FetchResponse<T>>;
27
35
  /**
28
36
  * Fetch JSON data from a service
29
37
  */
30
38
  json: Promise<T>;
31
- /**
32
- * Fetch data as an observable
33
- * NOTE: data needs to be extracted from the response
34
- */
35
- fetch$: StreamResponse<FetchResponse<T>>;
36
39
  /**
37
40
  * Fetch JSON data from a service as observable
38
41
  */
@@ -45,3 +48,81 @@ export type ClientDataMethod<T extends BlobResult = BlobResult> = {
45
48
  };
46
49
 
47
50
  export type ClientMethodType = keyof ClientMethod;
51
+
52
+ /**
53
+ * Utility type that filters the keys of an `AvailableTypes` object to only those
54
+ * whose values are a subset of the `AllowedTypes` string.
55
+ *
56
+ * This can be useful for creating a type that represents a subset of an API's
57
+ * available versions, where the allowed versions are a subset of the total
58
+ * available versions.
59
+ *
60
+ * @example
61
+ * ```typescript
62
+ * enum ApiVersions = {
63
+ * v1: '1.0'
64
+ * v2: '2.0'
65
+ * v3: '3.0'
66
+ * }
67
+ *
68
+ * type Services = {
69
+ * [ApiVersions.v1]: { request: ApiRequestModel_v1, response: ApiResponseModel_v1 }
70
+ * [ApiVersions.v2]: { request: ApiRequestModel_v2, response: ApiResponseModel_v2 }
71
+ * }
72
+ *
73
+ * type ApiServiceVersions = keyof Services; // '1.0' | '2.0'
74
+ * type AllowedApiVersions = FilterAllowApiVersions<ApiVersions, ApiServiceVersions> // ApiVersions.v1 | 'v1' | ApiVersions.v2 | v2'
75
+ *
76
+ * const execute<TVersion extends AllowedApiVersions>(
77
+ * version: TVersion,
78
+ * args: Services[TVersion]['request']
79
+ * ): Services[TVersion]['response'] {
80
+ * const apiVersion = version in ApiVersion ? ApiVersion[version] : version;
81
+ * switch (apiVersion) {
82
+ * case ApiVersion.v1:
83
+ * case ApiVersion.v2:
84
+ * return fetch(args);
85
+ * }
86
+ * throw new Error('Invalid version');
87
+ * }
88
+ *
89
+ * execute('v1', { id: '123' }); // OK
90
+ * execute('v3', { id: '123' }); // Error
91
+ * ```
92
+ *
93
+ * @template TAvailableTypes - An object type that maps string keys to string values,
94
+ * representing the available API versions.
95
+ * @template TAllowedTypes - A string union type representing the allowed API versions.
96
+ * @returns A string union type containing the keys from `AvailableTypes` whose
97
+ * values are a subset of `AllowedTypes`.
98
+ */
99
+ export type FilterAllowedApiVersions<
100
+ TAvailableTypes extends Record<string, string>,
101
+ TAllowedTypes extends string | number | symbol = keyof TAvailableTypes,
102
+ > = {
103
+ [K in keyof TAvailableTypes]: TAvailableTypes extends Record<K, infer V>
104
+ ? K extends TAllowedTypes
105
+ ? K | V
106
+ : V extends TAllowedTypes
107
+ ? V | K
108
+ : never
109
+ : never;
110
+ }[keyof TAvailableTypes];
111
+
112
+ /**
113
+ * Extracts the API version from a set of available types, based on a list of allowed types.
114
+ *
115
+ * @template TAvailableTypes - An object mapping API version strings to their corresponding types.
116
+ * @template TAllowedTypes - A list of allowed API version strings.
117
+ * @template TVersion - The API version to extract.
118
+ * @returns The API version type if it is available and allowed, otherwise `never`.
119
+ */
120
+ export type ExtractApiVersion<
121
+ TAvailableTypes extends Record<string, string>,
122
+ TVersion extends string,
123
+ TAllowedTypes extends string | number | symbol = FilterAllowedApiVersions<TAvailableTypes>,
124
+ > = TVersion extends keyof TAvailableTypes
125
+ ? TAvailableTypes[TVersion]
126
+ : TVersion extends TAllowedTypes
127
+ ? TVersion
128
+ : never;
package/src/utils.ts ADDED
@@ -0,0 +1,51 @@
1
+ import { z } from 'zod';
2
+
3
+ import { FetchResponse } from '@equinor/fusion-framework-module-http';
4
+ import {
5
+ type ResponseSelector,
6
+ jsonSelector,
7
+ } from '@equinor/fusion-framework-module-http/selectors';
8
+
9
+ import type { ExtractApiVersion } from './types';
10
+
11
+ /**
12
+ * Extracts the correct API version from the provided `apiVersions` object based on the given `version` parameter.
13
+ *
14
+ * @param apiVersions - An object mapping API version strings to their corresponding versions.
15
+ * @param version - The version string to extract.
16
+ * @returns The extracted API version, or throws an error if the version is not supported.
17
+ */
18
+ export const extractVersion = <
19
+ TApiVersions extends Record<string, string>,
20
+ TAllowedApiVersion extends string,
21
+ TVersion extends string,
22
+ >(
23
+ apiVersions: TApiVersions,
24
+ version: TVersion,
25
+ ): ExtractApiVersion<TApiVersions, TVersion, TAllowedApiVersion> => {
26
+ if (version in apiVersions) {
27
+ return apiVersions[version] as ExtractApiVersion<
28
+ TApiVersions,
29
+ TVersion,
30
+ TAllowedApiVersion
31
+ >;
32
+ }
33
+ const extractedVersion = Object.values(apiVersions).find((v) => v === version);
34
+ if (!extractedVersion) {
35
+ throw new Error(`Version ${version} is not supported`);
36
+ }
37
+ return extractedVersion as ExtractApiVersion<TApiVersions, TVersion, TAllowedApiVersion>;
38
+ };
39
+
40
+ /**
41
+ * Creates a response selector that parses the response body using the provided Zod schema.
42
+ *
43
+ * @param schema - The Zod schema to use for parsing the response body.
44
+ * @returns A response selector function that parses the response body using the provided schema.
45
+ */
46
+ export const schemaSelector =
47
+ <Output, Def extends z.ZodTypeDef, Input>(
48
+ schema: z.ZodSchema<Output, Def, Input>,
49
+ ): ResponseSelector<Output> =>
50
+ async (response: FetchResponse<Input>) =>
51
+ schema.parse(await jsonSelector(response));
package/src/version.ts CHANGED
@@ -1,2 +1,2 @@
1
1
  // Generated by genversion.
2
- export const version = '4.1.5';
2
+ export const version = '5.0.0';
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=api-models.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"api-models.js","sourceRoot":"","sources":["../../../src/bookmarks/api-models.ts"],"names":[],"mappings":""}
@@ -1,10 +0,0 @@
1
- import { generateParameters } from './generate-parameters';
2
- /**
3
- * Method for fetching bookmark by it`s id from bookmark service
4
- * @param client - client for execution of request
5
- * @param version - version of API to call
6
- * @param method - client method to call
7
- */
8
- export const deleteBookmark = (client, version, method = 'fetch') => (args, init) => client[method](...generateParameters(version, args, init));
9
- export default deleteBookmark;
10
- //# sourceMappingURL=client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/bookmarks/delete/client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAQ3D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,cAAc,GACvB,CAKI,MAAe,EACf,OAAiB,EACjB,SAAkB,OAAkB,EACtC,EAAE,CACJ,CACI,IAAkC,EAClC,IAA0C,EACO,EAAE,CACnD,MAAM,CAAC,MAAM,CAAC,CACV,GAAG,kBAAkB,CAA6B,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CACpB,CAAC;AAE/D,eAAe,cAAc,CAAC"}
@@ -1,20 +0,0 @@
1
- /**
2
- * Method for generating endpoint for deleting a bookmark.
3
- */
4
- export const generateEndpoint = (version, args) => {
5
- switch (version) {
6
- case 'v1': {
7
- const { id } = args;
8
- const params = new URLSearchParams();
9
- params.append('api-version', '1.0');
10
- return `/bookmarks/${id}/?${String(params)}`;
11
- }
12
- default: {
13
- const { id } = args;
14
- const params = new URLSearchParams();
15
- params.append('api-version', version);
16
- return `/bookmarks/${id}/?${String(params)}`;
17
- }
18
- }
19
- };
20
- //# sourceMappingURL=generate-endpoint.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-endpoint.js","sourceRoot":"","sources":["../../../../src/bookmarks/delete/generate-endpoint.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC5B,OAAiB,EACjB,IAAkC,EACpC,EAAE;IACA,QAAQ,OAAO,EAAE,CAAC;QACd,KAAK,IAAI,CAAC,CAAC,CAAC;YACR,MAAM,EAAE,EAAE,EAAE,GAAG,IAAsB,CAAC;YACtC,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;YACpC,OAAO,cAAc,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACjD,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;YACN,MAAM,EAAE,EAAE,EAAE,GAAG,IAAsB,CAAC;YACtC,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;YACtC,OAAO,cAAc,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACjD,CAAC;IACL,CAAC;AACL,CAAC,CAAC"}
@@ -1,8 +0,0 @@
1
- import { generateEndpoint } from './generate-endpoint';
2
- /** function for creating http client arguments */
3
- export const generateParameters = (version, args, init) => {
4
- const path = generateEndpoint(version, args);
5
- const requestParams = Object.assign({}, { method: 'DELETE' }, init);
6
- return [path, requestParams];
7
- };
8
- //# sourceMappingURL=generate-parameters.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-parameters.js","sourceRoot":"","sources":["../../../../src/bookmarks/delete/generate-parameters.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,mDAAmD;AACnD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAK9B,OAAiB,EACjB,IAAkC,EAClC,IAA0C,EACN,EAAE;IACtC,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAE7C,MAAM,aAAa,GAAwC,MAAM,CAAC,MAAM,CACpE,EAAE,EACF,EAAE,MAAM,EAAE,QAAQ,EAAE,EACpB,IAAI,CACP,CAAC;IAEF,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;AACjC,CAAC,CAAC"}
@@ -1,5 +0,0 @@
1
- export * from './types';
2
- export { deleteBookmark, default } from './client';
3
- export { generateEndpoint } from './generate-endpoint';
4
- export { generateParameters } from './generate-parameters';
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/bookmarks/delete/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AAExB,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types-v1.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types-v1.js","sourceRoot":"","sources":["../../../../src/bookmarks/delete/types-v1.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/bookmarks/delete/types.ts"],"names":[],"mappings":""}
@@ -1,10 +0,0 @@
1
- import { generateParameters } from './generate-parameters';
2
- /**
3
- * Method for fetching bookmark by it`s id from bookmark service
4
- * @param client - client for execution of request
5
- * @param version - version of API to call
6
- * @param method - client method to call
7
- */
8
- export const deleteBookmarkFavorite = (client, version, method = 'fetch') => (args, init) => client[method](...generateParameters(version, args, init));
9
- export default deleteBookmarkFavorite;
10
- //# sourceMappingURL=client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../../src/bookmarks/favorites/delete/client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAQ3D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAC/B,CAKI,MAAe,EACf,OAAiB,EACjB,SAAkB,OAAkB,EACtC,EAAE,CACJ,CACI,IAA0C,EAC1C,IAA0C,EACe,EAAE,CAC3D,MAAM,CAAC,MAAM,CAAC,CACV,GAAG,kBAAkB,CAA6B,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CACZ,CAAC;AAEvE,eAAe,sBAAsB,CAAC"}
@@ -1,15 +0,0 @@
1
- /**
2
- * Method for generating endpoint for deleting a bookmark.
3
- */
4
- export const generateEndpoint = (version, args) => {
5
- switch (version) {
6
- case 'v1':
7
- default: {
8
- const { bookmarkId } = args;
9
- const params = new URLSearchParams();
10
- params.append('api-version', '1.0');
11
- return `/persons/me/bookmarks/favourites/${bookmarkId}/?${String(params)}`;
12
- }
13
- }
14
- };
15
- //# sourceMappingURL=generate-endpoint.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-endpoint.js","sourceRoot":"","sources":["../../../../../src/bookmarks/favorites/delete/generate-endpoint.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC5B,OAAiB,EACjB,IAA0C,EAC5C,EAAE;IACA,QAAQ,OAAO,EAAE,CAAC;QACd,KAAK,IAAI,CAAC;QACV,OAAO,CAAC,CAAC,CAAC;YACN,MAAM,EAAE,UAAU,EAAE,GAAG,IAA8B,CAAC;YACtD,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;YACpC,OAAO,oCAAoC,UAAU,KAAK,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/E,CAAC;IACL,CAAC;AACL,CAAC,CAAC"}
@@ -1,8 +0,0 @@
1
- import { generateEndpoint } from './generate-endpoint';
2
- /** function for creating http client arguments */
3
- export const generateParameters = (version, args, init) => {
4
- const path = generateEndpoint(version, args);
5
- const requestParams = Object.assign({}, { method: 'DELETE' }, init);
6
- return [path, requestParams];
7
- };
8
- //# sourceMappingURL=generate-parameters.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-parameters.js","sourceRoot":"","sources":["../../../../../src/bookmarks/favorites/delete/generate-parameters.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,mDAAmD;AACnD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAK9B,OAAiB,EACjB,IAA0C,EAC1C,IAA0C,EACN,EAAE;IACtC,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAE7C,MAAM,aAAa,GAAwC,MAAM,CAAC,MAAM,CACpE,EAAE,EACF,EAAE,MAAM,EAAE,QAAQ,EAAE,EACpB,IAAI,CACP,CAAC;IAEF,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;AACjC,CAAC,CAAC"}
@@ -1,5 +0,0 @@
1
- export * from './types';
2
- export { deleteBookmarkFavorite as deleteBookmark, default } from './client';
3
- export { generateEndpoint } from './generate-endpoint';
4
- export { generateParameters } from './generate-parameters';
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/bookmarks/favorites/delete/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AAExB,OAAO,EAAE,sBAAsB,IAAI,cAAc,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAE7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types-v1.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types-v1.js","sourceRoot":"","sources":["../../../../../src/bookmarks/favorites/delete/types-v1.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/bookmarks/favorites/delete/types.ts"],"names":[],"mappings":""}
@@ -1,10 +0,0 @@
1
- import { generateParameters } from './generate-parameters';
2
- /**
3
- * Verify that the bookmark is owned by the current user.
4
- * @param client - client for execution of request
5
- * @param version - version of API to call
6
- * @param method - client method to call
7
- */
8
- export const verifyBookmarkFavorite = (client, version, method = 'json') => (args, init) => client[method](...generateParameters(version, args, init));
9
- export default verifyBookmarkFavorite;
10
- //# sourceMappingURL=client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../../src/bookmarks/favorites/head/client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAQ3D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAC/B,CAKI,MAAe,EACf,OAAiB,EACjB,SAAkB,MAAiB,EACrC,EAAE,CACJ,CACI,IAAwC,EACxC,IAA0C,EACa,EAAE,CACzD,MAAM,CAAC,MAAM,CAAC,CACV,GAAG,kBAAkB,CAA6B,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CACd,CAAC;AAErE,eAAe,sBAAsB,CAAC"}
@@ -1,15 +0,0 @@
1
- /**
2
- * Method for generating endpoint for getting bookmark by id
3
- */
4
- export const generateEndpoint = (version, args) => {
5
- switch (version) {
6
- case 'v1':
7
- default: {
8
- const { bookmarkId } = args;
9
- const params = new URLSearchParams();
10
- params.append('api-version', version);
11
- return `/persons/me/bookmarks/favourites/${bookmarkId}?${String(params)}`;
12
- }
13
- }
14
- };
15
- //# sourceMappingURL=generate-endpoint.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-endpoint.js","sourceRoot":"","sources":["../../../../../src/bookmarks/favorites/head/generate-endpoint.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC5B,OAAiB,EACjB,IAAwC,EAC1C,EAAE;IACA,QAAQ,OAAO,EAAE,CAAC;QACd,KAAK,IAAI,CAAC;QACV,OAAO,CAAC,CAAC,CAAC;YACN,MAAM,EAAE,UAAU,EAAE,GAAG,IAA8B,CAAC;YACtD,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;YACtC,OAAO,oCAAoC,UAAU,IAAI,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9E,CAAC;IACL,CAAC;AACL,CAAC,CAAC"}
@@ -1,10 +0,0 @@
1
- import { generateEndpoint } from './generate-endpoint';
2
- /** function for creating http client arguments */
3
- export const generateParameters = (version, args, init) => {
4
- const path = generateEndpoint(version, args);
5
- const headers = new Headers();
6
- headers.append('content-type', 'application/json');
7
- const requestParams = Object.assign({}, { method: 'HEAD', headers: headers }, init);
8
- return [path, requestParams];
9
- };
10
- //# sourceMappingURL=generate-parameters.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-parameters.js","sourceRoot":"","sources":["../../../../../src/bookmarks/favorites/head/generate-parameters.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,mDAAmD;AACnD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAK9B,OAAiB,EACjB,IAAwC,EACxC,IAA0C,EACN,EAAE;IACtC,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAE7C,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAC9B,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;IAEnD,MAAM,aAAa,GAAwC,MAAM,CAAC,MAAM,CACpE,EAAE,EACF,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,EACpC,IAAI,CACP,CAAC;IAEF,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;AACjC,CAAC,CAAC"}
@@ -1,5 +0,0 @@
1
- export * from './types';
2
- export { verifyBookmarkFavorite, default } from './client';
3
- export { generateEndpoint } from './generate-endpoint';
4
- export { generateParameters } from './generate-parameters';
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/bookmarks/favorites/head/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AAExB,OAAO,EAAE,sBAAsB,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAE3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/bookmarks/favorites/head/types.ts"],"names":[],"mappings":""}
@@ -1,10 +0,0 @@
1
- import { generateParameters } from './generate-parameters';
2
- /**
3
- * Method for adding other users bookmark to your favorites.
4
- * @param client - client for execution of request
5
- * @param version - version of API to call
6
- * @param method - client method to call
7
- */
8
- export const addBookmarkFavorite = (client, version, method = 'json') => (args, init) => client[method](...generateParameters(version, args, init));
9
- export default addBookmarkFavorite;
10
- //# sourceMappingURL=client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../../src/bookmarks/favorites/post/client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAQ3D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAC5B,CAKI,MAAe,EACf,OAAiB,EACjB,SAAkB,MAAiB,EACrC,EAAE,CACJ,CACI,IAAwC,EACxC,IAA0C,EACa,EAAE,CACzD,MAAM,CAAC,MAAM,CAAC,CACV,GAAG,kBAAkB,CAA6B,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CACd,CAAC;AAErE,eAAe,mBAAmB,CAAC"}
@@ -1,14 +0,0 @@
1
- /**
2
- * Method for generating endpoint for getting bookmark by id
3
- */
4
- export const generateEndpoint = (version, _args) => {
5
- switch (version) {
6
- case 'v1':
7
- default: {
8
- const params = new URLSearchParams();
9
- params.append('api-version', version);
10
- return `/persons/me/bookmarks/favourites?${String(params)}`;
11
- }
12
- }
13
- };
14
- //# sourceMappingURL=generate-endpoint.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-endpoint.js","sourceRoot":"","sources":["../../../../../src/bookmarks/favorites/post/generate-endpoint.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC5B,OAAiB,EACjB,KAAyC,EAC3C,EAAE;IACA,QAAQ,OAAO,EAAE,CAAC;QACd,KAAK,IAAI,CAAC;QACV,OAAO,CAAC,CAAC,CAAC;YACN,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;YACtC,OAAO,oCAAoC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAChE,CAAC;IACL,CAAC;AACL,CAAC,CAAC"}
@@ -1,10 +0,0 @@
1
- import { generateEndpoint } from './generate-endpoint';
2
- /** function for creating http client arguments */
3
- export const generateParameters = (version, args, init) => {
4
- const path = generateEndpoint(version, args);
5
- const headers = new Headers();
6
- headers.append('content-type', 'application/json');
7
- const requestParams = Object.assign({}, { method: 'POST', body: JSON.stringify(args), headers: headers }, init);
8
- return [path, requestParams];
9
- };
10
- //# sourceMappingURL=generate-parameters.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-parameters.js","sourceRoot":"","sources":["../../../../../src/bookmarks/favorites/post/generate-parameters.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,mDAAmD;AACnD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAK9B,OAAiB,EACjB,IAAwC,EACxC,IAA0C,EACN,EAAE;IACtC,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAE7C,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAC9B,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;IAEnD,MAAM,aAAa,GAAwC,MAAM,CAAC,MAAM,CACpE,EAAE,EACF,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAChE,IAAI,CACP,CAAC;IAEF,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;AACjC,CAAC,CAAC"}
@@ -1,5 +0,0 @@
1
- export * from './types';
2
- export { addBookmarkFavorite, default } from './client';
3
- export { generateEndpoint } from './generate-endpoint';
4
- export { generateParameters } from './generate-parameters';
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/bookmarks/favorites/post/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AAExB,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAExD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/bookmarks/favorites/post/types.ts"],"names":[],"mappings":""}
@@ -1,10 +0,0 @@
1
- import { generateParameters } from './generate-parameters';
2
- /**
3
- * Method for fetching bookmark by it`s id from bookmark service
4
- * @param client - client for execution of request
5
- * @param version - version of API to call
6
- * @param method - client method to call
7
- */
8
- export const getBookmark = (client, version, method = 'json') => (args, init) => client[method](...generateParameters(version, args, init));
9
- export default getBookmark;
10
- //# sourceMappingURL=client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/bookmarks/get/client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAG3D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,WAAW,GACpB,CAKI,MAAe,EACf,OAAiB,EACjB,SAAkB,MAAiB,EACrC,EAAE,CACJ,CACI,IAA+B,EAC/B,IAA0C,EACa,EAAE,CACzD,MAAM,CAAC,MAAM,CAAC,CACV,GAAG,kBAAkB,CAA6B,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CACd,CAAC;AAErE,eAAe,WAAW,CAAC"}
@@ -1,20 +0,0 @@
1
- /**
2
- * Method for generating endpoint for getting bookmark by id
3
- */
4
- export const generateEndpoint = (version, args) => {
5
- switch (version) {
6
- case 'v1': {
7
- const { id } = args;
8
- const params = new URLSearchParams();
9
- params.append('api-version', '1.0');
10
- return `/bookmarks/${id}/?${String(params)}`;
11
- }
12
- default: {
13
- const { id } = args;
14
- const params = new URLSearchParams();
15
- params.append('api-version', version);
16
- return `/bookmarks/${id}/?${String(params)}`;
17
- }
18
- }
19
- };
20
- //# sourceMappingURL=generate-endpoint.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-endpoint.js","sourceRoot":"","sources":["../../../../src/bookmarks/get/generate-endpoint.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC5B,OAAiB,EACjB,IAA+B,EACjC,EAAE;IACA,QAAQ,OAAO,EAAE,CAAC;QACd,KAAK,IAAI,CAAC,CAAC,CAAC;YACR,MAAM,EAAE,EAAE,EAAE,GAAG,IAAsB,CAAC;YACtC,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;YACpC,OAAO,cAAc,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACjD,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;YACN,MAAM,EAAE,EAAE,EAAE,GAAG,IAAsB,CAAC;YACtC,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;YACtC,OAAO,cAAc,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACjD,CAAC;IACL,CAAC;AACL,CAAC,CAAC"}
@@ -1,7 +0,0 @@
1
- import { generateEndpoint } from './generate-endpoint';
2
- /** function for creating http client arguments */
3
- export const generateParameters = (version, args, init) => {
4
- const path = generateEndpoint(version, args);
5
- return [path, init];
6
- };
7
- //# sourceMappingURL=generate-parameters.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-parameters.js","sourceRoot":"","sources":["../../../../src/bookmarks/get/generate-parameters.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,mDAAmD;AACnD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAK9B,OAAiB,EACjB,IAA+B,EAC/B,IAA0C,EACN,EAAE;IACtC,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC7C,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACxB,CAAC,CAAC"}
@@ -1,5 +0,0 @@
1
- export * from './types';
2
- export { getBookmark, default } from './client';
3
- export { generateEndpoint } from './generate-endpoint';
4
- export { generateParameters } from './generate-parameters';
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/bookmarks/get/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AAExB,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEhD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/bookmarks/get/types.ts"],"names":[],"mappings":""}
@@ -1,10 +0,0 @@
1
- import { generateParameters } from './generate-parameters';
2
- /**
3
- * Method for fetching all bookmarks for the current user from bookmark service
4
- * @param client - client for execution of request
5
- * @param version - version of API to call
6
- * @param method - client method to call
7
- */
8
- export const getAllBookmarks = (client, version, method = 'json') => (init) => client[method](...generateParameters(version, init));
9
- export default getAllBookmarks;
10
- //# sourceMappingURL=client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/bookmarks/getAll/client.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAG3D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,eAAe,GACxB,CAKI,MAAe,EACf,OAAiB,EACjB,SAAkB,MAAiB,EACrC,EAAE,CACJ,CACI,IAA0C,EACgB,EAAE,CAC5D,MAAM,CAAC,MAAM,CAAC,CACV,GAAG,kBAAkB,CAA6B,OAAO,EAAE,IAAI,CAAC,CACL,CAAC;AAExE,eAAe,eAAe,CAAC"}
@@ -1,14 +0,0 @@
1
- /**
2
- * Method for generating endpoint for getting all bookmarks
3
- */
4
- export const generateEndpoint = (version) => {
5
- switch (version) {
6
- case 'v1':
7
- default: {
8
- const params = new URLSearchParams();
9
- params.append('api-version', version);
10
- return `persons/me/bookmarks/?${String(params)}`;
11
- }
12
- }
13
- };
14
- //# sourceMappingURL=generate-endpoint.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-endpoint.js","sourceRoot":"","sources":["../../../../src/bookmarks/getAll/generate-endpoint.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAA+B,OAAiB,EAAE,EAAE;IAChF,QAAQ,OAAO,EAAE,CAAC;QACd,KAAK,IAAI,CAAC;QACV,OAAO,CAAC,CAAC,CAAC;YACN,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;YACtC,OAAO,yBAAyB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACrD,CAAC;IACL,CAAC;AACL,CAAC,CAAC"}
@@ -1,7 +0,0 @@
1
- import { generateEndpoint } from './generate-endpoint';
2
- /** function for creating http client arguments */
3
- export const generateParameters = (version, init) => {
4
- const path = generateEndpoint(version);
5
- return [path, init];
6
- };
7
- //# sourceMappingURL=generate-parameters.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-parameters.js","sourceRoot":"","sources":["../../../../src/bookmarks/getAll/generate-parameters.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,mDAAmD;AACnD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAK9B,OAAiB,EACjB,IAA0C,EACN,EAAE;IACtC,MAAM,IAAI,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACvC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACxB,CAAC,CAAC"}