@equinor/fusion-framework-module-services 2.1.0 → 2.3.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 (239) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/esm/bookmarks/client.js +15 -0
  3. package/dist/esm/bookmarks/client.js.map +1 -1
  4. package/dist/esm/bookmarks/favorites/delete/client.js +4 -0
  5. package/dist/esm/bookmarks/favorites/delete/client.js.map +1 -0
  6. package/dist/esm/bookmarks/favorites/delete/generate-endpoint.js +12 -0
  7. package/dist/esm/bookmarks/favorites/delete/generate-endpoint.js.map +1 -0
  8. package/dist/esm/bookmarks/favorites/delete/generate-parameters.js +7 -0
  9. package/dist/esm/bookmarks/favorites/delete/generate-parameters.js.map +1 -0
  10. package/dist/esm/bookmarks/favorites/delete/index.js +5 -0
  11. package/dist/esm/bookmarks/favorites/delete/index.js.map +1 -0
  12. package/dist/esm/bookmarks/favorites/delete/types-v1.js +2 -0
  13. package/dist/esm/bookmarks/favorites/delete/types-v1.js.map +1 -0
  14. package/dist/esm/bookmarks/favorites/delete/types.js +2 -0
  15. package/dist/esm/bookmarks/favorites/delete/types.js.map +1 -0
  16. package/dist/esm/bookmarks/favorites/head/client.js +4 -0
  17. package/dist/esm/bookmarks/favorites/head/client.js.map +1 -0
  18. package/dist/esm/bookmarks/favorites/head/generate-endpoint.js +12 -0
  19. package/dist/esm/bookmarks/favorites/head/generate-endpoint.js.map +1 -0
  20. package/dist/esm/bookmarks/favorites/head/generate-parameters.js +9 -0
  21. package/dist/esm/bookmarks/favorites/head/generate-parameters.js.map +1 -0
  22. package/dist/esm/bookmarks/favorites/head/index.js +5 -0
  23. package/dist/esm/bookmarks/favorites/head/index.js.map +1 -0
  24. package/dist/esm/bookmarks/favorites/head/types.js +2 -0
  25. package/dist/esm/bookmarks/favorites/head/types.js.map +1 -0
  26. package/dist/esm/bookmarks/favorites/post/client.js +4 -0
  27. package/dist/esm/bookmarks/favorites/post/client.js.map +1 -0
  28. package/dist/esm/bookmarks/favorites/post/generate-endpoint.js +11 -0
  29. package/dist/esm/bookmarks/favorites/post/generate-endpoint.js.map +1 -0
  30. package/dist/esm/bookmarks/favorites/post/generate-parameters.js +9 -0
  31. package/dist/esm/bookmarks/favorites/post/generate-parameters.js.map +1 -0
  32. package/dist/esm/bookmarks/favorites/post/index.js +5 -0
  33. package/dist/esm/bookmarks/favorites/post/index.js.map +1 -0
  34. package/dist/esm/bookmarks/favorites/post/types.js +2 -0
  35. package/dist/esm/bookmarks/favorites/post/types.js.map +1 -0
  36. package/dist/esm/notification/api-models.js +2 -0
  37. package/dist/esm/notification/api-models.js.map +1 -0
  38. package/dist/esm/notification/client.js +43 -0
  39. package/dist/esm/notification/client.js.map +1 -0
  40. package/dist/esm/notification/index.js +5 -0
  41. package/dist/esm/notification/index.js.map +1 -0
  42. package/dist/esm/notification/notification/delete/client.js +4 -0
  43. package/dist/esm/notification/notification/delete/client.js.map +1 -0
  44. package/dist/esm/notification/notification/delete/generate-endpoint.js +18 -0
  45. package/dist/esm/notification/notification/delete/generate-endpoint.js.map +1 -0
  46. package/dist/esm/notification/notification/delete/generate-parameters.js +10 -0
  47. package/dist/esm/notification/notification/delete/generate-parameters.js.map +1 -0
  48. package/dist/esm/notification/notification/delete/index.js +6 -0
  49. package/dist/esm/notification/notification/delete/index.js.map +1 -0
  50. package/dist/esm/notification/notification/delete/types.js +2 -0
  51. package/dist/esm/notification/notification/delete/types.js.map +1 -0
  52. package/dist/esm/notification/notification/get/client.js +4 -0
  53. package/dist/esm/notification/notification/get/client.js.map +1 -0
  54. package/dist/esm/notification/notification/get/generate-endpoint.js +18 -0
  55. package/dist/esm/notification/notification/get/generate-endpoint.js.map +1 -0
  56. package/dist/esm/notification/notification/get/generate-parameters.js +7 -0
  57. package/dist/esm/notification/notification/get/generate-parameters.js.map +1 -0
  58. package/dist/esm/notification/notification/get/index.js +6 -0
  59. package/dist/esm/notification/notification/get/index.js.map +1 -0
  60. package/dist/esm/notification/notification/get/types.js +2 -0
  61. package/dist/esm/notification/notification/get/types.js.map +1 -0
  62. package/dist/esm/notification/notification/getAll/client.js +4 -0
  63. package/dist/esm/notification/notification/getAll/client.js.map +1 -0
  64. package/dist/esm/notification/notification/getAll/generate-endpoint.js +18 -0
  65. package/dist/esm/notification/notification/getAll/generate-endpoint.js.map +1 -0
  66. package/dist/esm/notification/notification/getAll/generate-parameters.js +7 -0
  67. package/dist/esm/notification/notification/getAll/generate-parameters.js.map +1 -0
  68. package/dist/esm/notification/notification/getAll/index.js +6 -0
  69. package/dist/esm/notification/notification/getAll/index.js.map +1 -0
  70. package/dist/esm/notification/notification/getAll/types.js +2 -0
  71. package/dist/esm/notification/notification/getAll/types.js.map +1 -0
  72. package/dist/esm/notification/notification/index.js +6 -0
  73. package/dist/esm/notification/notification/index.js.map +1 -0
  74. package/dist/esm/notification/notification/patch/client.js +4 -0
  75. package/dist/esm/notification/notification/patch/client.js.map +1 -0
  76. package/dist/esm/notification/notification/patch/generate-endpoint.js +18 -0
  77. package/dist/esm/notification/notification/patch/generate-endpoint.js.map +1 -0
  78. package/dist/esm/notification/notification/patch/generate-parameters.js +10 -0
  79. package/dist/esm/notification/notification/patch/generate-parameters.js.map +1 -0
  80. package/dist/esm/notification/notification/patch/index.js +6 -0
  81. package/dist/esm/notification/notification/patch/index.js.map +1 -0
  82. package/dist/esm/notification/notification/patch/types.js +2 -0
  83. package/dist/esm/notification/notification/patch/types.js.map +1 -0
  84. package/dist/esm/notification/notification/post/client.js +4 -0
  85. package/dist/esm/notification/notification/post/client.js.map +1 -0
  86. package/dist/esm/notification/notification/post/generate-endpoint.js +18 -0
  87. package/dist/esm/notification/notification/post/generate-endpoint.js.map +1 -0
  88. package/dist/esm/notification/notification/post/generate-parameters.js +10 -0
  89. package/dist/esm/notification/notification/post/generate-parameters.js.map +1 -0
  90. package/dist/esm/notification/notification/post/index.js +6 -0
  91. package/dist/esm/notification/notification/post/index.js.map +1 -0
  92. package/dist/esm/notification/notification/post/types.js +2 -0
  93. package/dist/esm/notification/notification/post/types.js.map +1 -0
  94. package/dist/esm/notification/settings/get/client.js +4 -0
  95. package/dist/esm/notification/settings/get/client.js.map +1 -0
  96. package/dist/esm/notification/settings/get/generate-endpoint.js +18 -0
  97. package/dist/esm/notification/settings/get/generate-endpoint.js.map +1 -0
  98. package/dist/esm/notification/settings/get/generate-parameters.js +7 -0
  99. package/dist/esm/notification/settings/get/generate-parameters.js.map +1 -0
  100. package/dist/esm/notification/settings/get/index.js +6 -0
  101. package/dist/esm/notification/settings/get/index.js.map +1 -0
  102. package/dist/esm/notification/settings/get/types.js +2 -0
  103. package/dist/esm/notification/settings/get/types.js.map +1 -0
  104. package/dist/esm/notification/settings/put/client.js +4 -0
  105. package/dist/esm/notification/settings/put/client.js.map +1 -0
  106. package/dist/esm/notification/settings/put/generate-endpoint.js +18 -0
  107. package/dist/esm/notification/settings/put/generate-endpoint.js.map +1 -0
  108. package/dist/esm/notification/settings/put/generate-parameters.js +10 -0
  109. package/dist/esm/notification/settings/put/generate-parameters.js.map +1 -0
  110. package/dist/esm/notification/settings/put/index.js +6 -0
  111. package/dist/esm/notification/settings/put/index.js.map +1 -0
  112. package/dist/esm/notification/settings/put/types.js +2 -0
  113. package/dist/esm/notification/settings/put/types.js.map +1 -0
  114. package/dist/esm/notification/static.js +6 -0
  115. package/dist/esm/notification/static.js.map +1 -0
  116. package/dist/esm/notification/types.js +2 -0
  117. package/dist/esm/notification/types.js.map +1 -0
  118. package/dist/esm/provider.js +7 -0
  119. package/dist/esm/provider.js.map +1 -1
  120. package/dist/tsconfig.tsbuildinfo +1 -1
  121. package/dist/types/bookmarks/client.d.ts +6 -0
  122. package/dist/types/bookmarks/favorites/delete/client.d.ts +5 -0
  123. package/dist/types/bookmarks/favorites/delete/generate-endpoint.d.ts +2 -0
  124. package/dist/types/bookmarks/favorites/delete/generate-parameters.d.ts +4 -0
  125. package/dist/types/bookmarks/favorites/delete/index.d.ts +4 -0
  126. package/dist/types/bookmarks/favorites/delete/types-v1.d.ts +3 -0
  127. package/dist/types/bookmarks/favorites/delete/types.d.ts +15 -0
  128. package/dist/types/bookmarks/favorites/head/client.d.ts +5 -0
  129. package/dist/types/bookmarks/favorites/head/generate-endpoint.d.ts +2 -0
  130. package/dist/types/bookmarks/favorites/head/generate-parameters.d.ts +4 -0
  131. package/dist/types/bookmarks/favorites/head/index.d.ts +4 -0
  132. package/dist/types/bookmarks/favorites/head/types.d.ts +17 -0
  133. package/dist/types/bookmarks/favorites/post/client.d.ts +5 -0
  134. package/dist/types/bookmarks/favorites/post/generate-endpoint.d.ts +2 -0
  135. package/dist/types/bookmarks/favorites/post/generate-parameters.d.ts +4 -0
  136. package/dist/types/bookmarks/favorites/post/index.d.ts +4 -0
  137. package/dist/types/bookmarks/favorites/post/types.d.ts +17 -0
  138. package/dist/types/notification/api-models.d.ts +54 -0
  139. package/dist/types/notification/client.d.ts +24 -0
  140. package/dist/types/notification/index.d.ts +4 -0
  141. package/dist/types/notification/notification/delete/client.d.ts +5 -0
  142. package/dist/types/notification/notification/delete/generate-endpoint.d.ts +2 -0
  143. package/dist/types/notification/notification/delete/generate-parameters.d.ts +5 -0
  144. package/dist/types/notification/notification/delete/index.d.ts +5 -0
  145. package/dist/types/notification/notification/delete/types.d.ts +21 -0
  146. package/dist/types/notification/notification/get/client.d.ts +5 -0
  147. package/dist/types/notification/notification/get/generate-endpoint.d.ts +2 -0
  148. package/dist/types/notification/notification/get/generate-parameters.d.ts +5 -0
  149. package/dist/types/notification/notification/get/index.d.ts +5 -0
  150. package/dist/types/notification/notification/get/types.d.ts +21 -0
  151. package/dist/types/notification/notification/getAll/client.d.ts +5 -0
  152. package/dist/types/notification/notification/getAll/generate-endpoint.d.ts +2 -0
  153. package/dist/types/notification/notification/getAll/generate-parameters.d.ts +5 -0
  154. package/dist/types/notification/notification/getAll/index.d.ts +5 -0
  155. package/dist/types/notification/notification/getAll/types.d.ts +21 -0
  156. package/dist/types/notification/notification/index.d.ts +5 -0
  157. package/dist/types/notification/notification/patch/client.d.ts +5 -0
  158. package/dist/types/notification/notification/patch/generate-endpoint.d.ts +2 -0
  159. package/dist/types/notification/notification/patch/generate-parameters.d.ts +5 -0
  160. package/dist/types/notification/notification/patch/index.d.ts +5 -0
  161. package/dist/types/notification/notification/patch/types.d.ts +22 -0
  162. package/dist/types/notification/notification/post/client.d.ts +5 -0
  163. package/dist/types/notification/notification/post/generate-endpoint.d.ts +2 -0
  164. package/dist/types/notification/notification/post/generate-parameters.d.ts +5 -0
  165. package/dist/types/notification/notification/post/index.d.ts +5 -0
  166. package/dist/types/notification/notification/post/types.d.ts +33 -0
  167. package/dist/types/notification/settings/get/client.d.ts +5 -0
  168. package/dist/types/notification/settings/get/generate-endpoint.d.ts +2 -0
  169. package/dist/types/notification/settings/get/generate-parameters.d.ts +5 -0
  170. package/dist/types/notification/settings/get/index.d.ts +5 -0
  171. package/dist/types/notification/settings/get/types.d.ts +21 -0
  172. package/dist/types/notification/settings/put/client.d.ts +5 -0
  173. package/dist/types/notification/settings/put/generate-endpoint.d.ts +2 -0
  174. package/dist/types/notification/settings/put/generate-parameters.d.ts +5 -0
  175. package/dist/types/notification/settings/put/index.d.ts +5 -0
  176. package/dist/types/notification/settings/put/types.d.ts +17 -0
  177. package/dist/types/notification/static.d.ts +4 -0
  178. package/dist/types/notification/types.d.ts +1 -0
  179. package/dist/types/provider.d.ts +2 -0
  180. package/package.json +6 -2
  181. package/src/bookmarks/client.ts +54 -0
  182. package/src/bookmarks/favorites/delete/client.ts +35 -0
  183. package/src/bookmarks/favorites/delete/generate-endpoint.ts +19 -0
  184. package/src/bookmarks/favorites/delete/generate-parameters.ts +25 -0
  185. package/src/bookmarks/favorites/delete/index.ts +6 -0
  186. package/src/bookmarks/favorites/delete/types-v1.ts +2 -0
  187. package/src/bookmarks/favorites/delete/types.ts +33 -0
  188. package/src/bookmarks/favorites/head/client.ts +35 -0
  189. package/src/bookmarks/favorites/head/generate-endpoint.ts +19 -0
  190. package/src/bookmarks/favorites/head/generate-parameters.ts +28 -0
  191. package/src/bookmarks/favorites/head/index.ts +6 -0
  192. package/src/bookmarks/favorites/head/types.ts +35 -0
  193. package/src/bookmarks/favorites/post/client.ts +35 -0
  194. package/src/bookmarks/favorites/post/generate-endpoint.ts +18 -0
  195. package/src/bookmarks/favorites/post/generate-parameters.ts +28 -0
  196. package/src/bookmarks/favorites/post/index.ts +6 -0
  197. package/src/bookmarks/favorites/post/types.ts +35 -0
  198. package/src/notification/api-models.ts +70 -0
  199. package/src/notification/client.ts +167 -0
  200. package/src/notification/index.ts +6 -0
  201. package/src/notification/notification/delete/client.ts +37 -0
  202. package/src/notification/notification/delete/generate-endpoint.ts +24 -0
  203. package/src/notification/notification/delete/generate-parameters.ts +32 -0
  204. package/src/notification/notification/delete/index.ts +8 -0
  205. package/src/notification/notification/delete/types.ts +44 -0
  206. package/src/notification/notification/get/client.ts +33 -0
  207. package/src/notification/notification/get/generate-endpoint.ts +25 -0
  208. package/src/notification/notification/get/generate-parameters.ts +22 -0
  209. package/src/notification/notification/get/index.ts +8 -0
  210. package/src/notification/notification/get/types.ts +44 -0
  211. package/src/notification/notification/getAll/client.ts +37 -0
  212. package/src/notification/notification/getAll/generate-endpoint.ts +25 -0
  213. package/src/notification/notification/getAll/generate-parameters.ts +22 -0
  214. package/src/notification/notification/getAll/index.ts +8 -0
  215. package/src/notification/notification/getAll/types.ts +44 -0
  216. package/src/notification/notification/index.ts +5 -0
  217. package/src/notification/notification/patch/client.ts +37 -0
  218. package/src/notification/notification/patch/generate-endpoint.ts +24 -0
  219. package/src/notification/notification/patch/generate-parameters.ts +32 -0
  220. package/src/notification/notification/patch/index.ts +8 -0
  221. package/src/notification/notification/patch/types.ts +45 -0
  222. package/src/notification/notification/post/client.ts +37 -0
  223. package/src/notification/notification/post/generate-endpoint.ts +25 -0
  224. package/src/notification/notification/post/generate-parameters.ts +32 -0
  225. package/src/notification/notification/post/index.ts +8 -0
  226. package/src/notification/notification/post/types.ts +57 -0
  227. package/src/notification/settings/get/client.ts +37 -0
  228. package/src/notification/settings/get/generate-endpoint.ts +25 -0
  229. package/src/notification/settings/get/generate-parameters.ts +22 -0
  230. package/src/notification/settings/get/index.ts +8 -0
  231. package/src/notification/settings/get/types.ts +44 -0
  232. package/src/notification/settings/put/client.ts +37 -0
  233. package/src/notification/settings/put/generate-endpoint.ts +25 -0
  234. package/src/notification/settings/put/generate-parameters.ts +34 -0
  235. package/src/notification/settings/put/index.ts +8 -0
  236. package/src/notification/settings/put/types.ts +38 -0
  237. package/src/notification/static.ts +6 -0
  238. package/src/notification/types.ts +5 -0
  239. package/src/provider.ts +8 -0
@@ -0,0 +1,5 @@
1
+ export { ApiVersion } from '@equinor/fusion-framework-module-services/notification';
2
+ export { generateEndpoint } from './generate-endpoint';
3
+ export { generateParameters } from './generate-parameters';
4
+ export * from './types';
5
+ export { updateUserNotificationSettings, default } from './client';
@@ -0,0 +1,17 @@
1
+ import { IHttpClient, ClientRequestInit } from '@equinor/fusion-framework-module-http/client';
2
+ import { ClientMethod } from '../../../types';
3
+ import { ApiNotificationSettingsEntity } from '../../api-models';
4
+ import { ApiVersion } from '../../static';
5
+ type PutUserNotificationSettingsArgsTypes = {
6
+ [ApiVersion.v1]: ApiNotificationSettingsEntity<ApiVersion.v1>;
7
+ [ApiVersion.v2]: ApiNotificationSettingsEntity<ApiVersion.v2>;
8
+ };
9
+ export type PutUserNotificationSettingsArgs<T extends string> = T extends keyof typeof ApiVersion ? PutUserNotificationSettingsArgsTypes[(typeof ApiVersion)[T]] : unknown;
10
+ type GetUserNotificationSettingsResponseTypes = {
11
+ [ApiVersion.v2]: ApiNotificationSettingsEntity<ApiVersion.v2>;
12
+ [ApiVersion.v1]: ApiNotificationSettingsEntity<ApiVersion.v1>;
13
+ };
14
+ export type PutUserNotificationSettingsResponse<T> = T extends keyof typeof ApiVersion ? GetUserNotificationSettingsResponseTypes[(typeof ApiVersion)[T]] : unknown;
15
+ export type PutUserNotificationSettingsFn<TVersion extends string = keyof typeof ApiVersion, TMethod extends keyof ClientMethod<unknown> = keyof ClientMethod<unknown>, TClient extends IHttpClient = IHttpClient, TResult = PutUserNotificationSettingsResponse<TVersion>> = (args: PutUserNotificationSettingsArgs<TVersion>, init?: ClientRequestInit<TClient, TResult>) => PutUserNotificationSettingsResult<TVersion, TMethod, TResult>;
16
+ export type PutUserNotificationSettingsResult<TVersion extends string = keyof typeof ApiVersion, TMethod extends keyof ClientMethod<unknown> = keyof ClientMethod<unknown>, TResult = PutUserNotificationSettingsResponse<TVersion>> = ClientMethod<TResult>[TMethod];
17
+ export {};
@@ -0,0 +1,4 @@
1
+ export declare enum ApiVersion {
2
+ 'v1' = "1.0",
3
+ 'v2' = "2.0"
4
+ }
@@ -0,0 +1 @@
1
+ export { ClientMethodType, ClientMethod, ApiClientArguments, } from '@equinor/fusion-framework-module-services';
@@ -3,6 +3,7 @@ import { ClientMethod } from './types';
3
3
  import { ApiClientFactory } from './types';
4
4
  import { ContextApiClient } from './context';
5
5
  import BookmarksApiClient from './bookmarks/client';
6
+ import { NotificationApiClient } from './notification';
6
7
  export interface IApiProvider<TClient extends IHttpClient = IHttpClient> {
7
8
  createBookmarksClient<TMethod extends keyof ClientMethod, TPayload = unknown>(method: TMethod): Promise<BookmarksApiClient<TMethod, TClient, TPayload>>;
8
9
  createContextClient<TMethod extends keyof ClientMethod>(method: TMethod): Promise<ContextApiClient<TMethod, TClient>>;
@@ -13,6 +14,7 @@ type ApiProviderCtorArgs<TClient extends IHttpClient = IHttpClient> = {
13
14
  export declare class ApiProvider<TClient extends IHttpClient = IHttpClient> implements IApiProvider<TClient> {
14
15
  protected _createClientFn: ApiClientFactory<TClient>;
15
16
  constructor({ createClient }: ApiProviderCtorArgs<TClient>);
17
+ createNotificationClient<TMethod extends keyof ClientMethod>(method: TMethod): Promise<NotificationApiClient<TMethod, TClient>>;
16
18
  createBookmarksClient<TMethod extends keyof ClientMethod, TPayload = unknown>(method: TMethod): Promise<BookmarksApiClient<TMethod, TClient, TPayload>>;
17
19
  createContextClient<TMethod extends keyof ClientMethod>(method: TMethod): Promise<ContextApiClient<TMethod, TClient>>;
18
20
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@equinor/fusion-framework-module-services",
3
- "version": "2.1.0",
3
+ "version": "2.3.0",
4
4
  "description": "",
5
5
  "sideEffects": false,
6
6
  "main": "dist/esm/index.js",
@@ -10,6 +10,9 @@
10
10
  "*": [
11
11
  "dist/types/*"
12
12
  ],
13
+ "notification": [
14
+ "dist/types/notification/index"
15
+ ],
13
16
  "context": [
14
17
  "dist/types/context/index"
15
18
  ],
@@ -28,6 +31,7 @@
28
31
  ".": "./dist/esm/index.js",
29
32
  "./context": "./dist/esm/context/index.js",
30
33
  "./bookmark": "./dist/esm/bookmarks/index.js",
34
+ "./notification": "./dist/esm/notification/index.js",
31
35
  "./context/get": "./dist/esm/context/get-context/index.js",
32
36
  "./errors": "./dist/esm/errors.js",
33
37
  "./package.json": "./package.json"
@@ -59,5 +63,5 @@
59
63
  "@equinor/fusion-framework-module": ">=1.2.2",
60
64
  "odata-query": "^7.0.3"
61
65
  },
62
- "gitHead": "d177e1925ca7b8692435b1fdefbcc0c8418d7625"
66
+ "gitHead": "2cec998dee5e0781c2cc2b327e2e119d12cd0046"
63
67
  }
@@ -13,6 +13,18 @@ import patchBookmark, {
13
13
  PutBookmarksResult as PatchBookmarksResult,
14
14
  } from './patch';
15
15
  import getAllBookmarks, { GetAllBookmarkResult, GetAllBookmarksResult } from './getAll';
16
+ import addBookmarkFavorite, {
17
+ PostBookmarkFavoriteFn,
18
+ PostBookmarksFavoriteResult,
19
+ } from './favorites/post';
20
+ import deleteBookmarkFavorite, {
21
+ DeleteBookmarksFavoriteFn,
22
+ DeleteBookmarksFavoriteResult,
23
+ } from './favorites/delete';
24
+ import verifyBookmarkFavorite, {
25
+ HeadBookmarkFavoriteFn,
26
+ HeadBookmarksFavoriteResult,
27
+ } from './favorites/head';
16
28
 
17
29
  export class BookmarksApiClient<
18
30
  TMethod extends keyof ClientMethod<unknown> = keyof ClientMethod<unknown>,
@@ -67,6 +79,10 @@ export class BookmarksApiClient<
67
79
  return fn<TResult>(...args);
68
80
  }
69
81
 
82
+ /**
83
+ * Delete a bookmark
84
+ * @see {@link delete/client}
85
+ */
70
86
  public delete<TVersion extends ApiVersions, TResult = DeleteBookmarkResult<TVersion>>(
71
87
  version: TVersion,
72
88
  ...args: Parameters<DeleteBookmarksFn<TVersion, TMethod, TClient, TResult>>
@@ -74,6 +90,44 @@ export class BookmarksApiClient<
74
90
  const fn = deleteBookmark(this._client, version, this._method);
75
91
  return fn<TResult>(...args);
76
92
  }
93
+
94
+ /**
95
+ * Add bookmark to favorites by bookmark id
96
+ * @see {@link addFavorite/client}
97
+ */
98
+ public addFavorite<TVersion extends ApiVersions, TResult = DeleteBookmarkResult<TVersion>>(
99
+ version: TVersion,
100
+ ...args: Parameters<PostBookmarkFavoriteFn<TVersion, TMethod, TClient, TResult>>
101
+ ): PostBookmarksFavoriteResult<TVersion, TMethod, TResult> {
102
+ const fn = addBookmarkFavorite(this._client, version, this._method);
103
+ return fn<TResult>(...args);
104
+ }
105
+
106
+ /**
107
+ *
108
+ * Remove bookmark from favorites by bookmark id
109
+ * @see {@link removeFavorite/client}
110
+ */
111
+ public removeFavorite<TVersion extends ApiVersions, TResult = DeleteBookmarkResult<TVersion>>(
112
+ version: TVersion,
113
+ ...args: Parameters<DeleteBookmarksFavoriteFn<TVersion, TMethod, TClient, TResult>>
114
+ ): DeleteBookmarksFavoriteResult<TVersion, TMethod, TResult> {
115
+ const fn = deleteBookmarkFavorite(this._client, version, this._method);
116
+ return fn<TResult>(...args);
117
+ }
118
+
119
+ /**
120
+ *
121
+ * Verify that the current bookmark is present in the users collection of bookmarks.
122
+ * @see {@link verifyFavorite/client}
123
+ */
124
+ public verifyFavorite<TVersion extends ApiVersions, TResult = DeleteBookmarkResult<TVersion>>(
125
+ version: TVersion,
126
+ ...args: Parameters<HeadBookmarkFavoriteFn<TVersion, TMethod, TClient, TResult>>
127
+ ): HeadBookmarksFavoriteResult<TVersion, TMethod, TResult> {
128
+ const fn = verifyBookmarkFavorite(this._client, version, this._method);
129
+ return fn<TResult>(...args);
130
+ }
77
131
  }
78
132
 
79
133
  export default BookmarksApiClient;
@@ -0,0 +1,35 @@
1
+ import { ClientRequestInit, IHttpClient } from '@equinor/fusion-framework-module-http/client';
2
+ import { ClientMethod } from '../..';
3
+ import { generateParameters } from './generate-parameters';
4
+ import {
5
+ ApiVersions,
6
+ DeleteBookmarkFavoriteArgs,
7
+ DeleteBookmarkFavoriteResult,
8
+ DeleteBookmarksFavoriteResult,
9
+ } from './types';
10
+
11
+ /**
12
+ * Method for fetching bookmark by it`s id from bookmark service
13
+ * @param client - client for execution of request
14
+ * @param version - version of API to call
15
+ * @param method - client method to call
16
+ */
17
+ export const deleteBookmarkFavorite =
18
+ <
19
+ TVersion extends ApiVersions = ApiVersions,
20
+ TMethod extends keyof ClientMethod = keyof ClientMethod,
21
+ TClient extends IHttpClient = IHttpClient
22
+ >(
23
+ client: TClient,
24
+ version: TVersion,
25
+ method: TMethod = 'fetch' as TMethod
26
+ ) =>
27
+ <TResult = DeleteBookmarkFavoriteResult<TVersion>>(
28
+ args: DeleteBookmarkFavoriteArgs<TVersion>,
29
+ init?: ClientRequestInit<TClient, TResult>
30
+ ): DeleteBookmarksFavoriteResult<TVersion, TMethod, TResult> =>
31
+ client[method](
32
+ ...generateParameters<TResult, TVersion, TClient>(version, args, init)
33
+ ) as DeleteBookmarksFavoriteResult<TVersion, TMethod, TResult>;
34
+
35
+ export default deleteBookmarkFavorite;
@@ -0,0 +1,19 @@
1
+ import { ApiVersions, DeleteBookmarkFavoriteArgs } from './types';
2
+
3
+ /**
4
+ * Method for generating endpoint for deleting a bookmark.
5
+ */
6
+ export const generateEndpoint = <TVersion extends ApiVersions>(
7
+ version: TVersion,
8
+ args: DeleteBookmarkFavoriteArgs<TVersion>
9
+ ) => {
10
+ switch (version) {
11
+ case 'v1':
12
+ default: {
13
+ const { bookmarkId } = args as { bookmarkId: string };
14
+ const params = new URLSearchParams();
15
+ params.append('api-version', '1.0');
16
+ return `/persons/me/bookmarks/favorites/${bookmarkId}/?${String(params)}`;
17
+ }
18
+ }
19
+ };
@@ -0,0 +1,25 @@
1
+ import { ClientRequestInit, IHttpClient } from '@equinor/fusion-framework-module-http/client';
2
+ import { ApiClientArguments } from '../..';
3
+ import { generateEndpoint } from './generate-endpoint';
4
+ import { ApiVersions, DeleteBookmarkFavoriteArgs } from './types';
5
+
6
+ /** function for creating http client arguments */
7
+ export const generateParameters = <
8
+ TResult,
9
+ TVersion extends ApiVersions,
10
+ TClient extends IHttpClient = IHttpClient
11
+ >(
12
+ version: TVersion,
13
+ args: DeleteBookmarkFavoriteArgs<TVersion>,
14
+ init?: ClientRequestInit<TClient, TResult>
15
+ ): ApiClientArguments<TClient, TResult> => {
16
+ const path = generateEndpoint(version, args);
17
+
18
+ const requestParams: ClientRequestInit<TClient, TResult> = Object.assign(
19
+ {},
20
+ { method: 'Delete' },
21
+ init
22
+ );
23
+
24
+ return [path, requestParams];
25
+ };
@@ -0,0 +1,6 @@
1
+ export * from './types';
2
+
3
+ export { deleteBookmarkFavorite as deleteBookmark, default } from './client';
4
+
5
+ export { generateEndpoint } from './generate-endpoint';
6
+ export { generateParameters } from './generate-parameters';
@@ -0,0 +1,2 @@
1
+ /** arguments for v1 delete bookmark favorite */
2
+ export type DeleteBookmarksFavoriteArgsV1 = { bookmarkId: string };
@@ -0,0 +1,33 @@
1
+ import { IHttpClient } from '@equinor/fusion-framework-module-http';
2
+ import { ClientRequestInit } from '@equinor/fusion-framework-module-http/client';
3
+ import { ClientMethod } from '../..';
4
+ import { DeleteBookmarksFavoriteArgsV1 } from './types-v1';
5
+
6
+ export type DeleteBookmarkFavoriteResult<TVersion extends ApiVersions> =
7
+ DeleteBookmarksFavoriteVersions[TVersion]['result'];
8
+
9
+ export type DeleteBookmarkFavoriteArgs<TVersion extends ApiVersions> =
10
+ DeleteBookmarksFavoriteVersions[TVersion]['args'];
11
+
12
+ export type DeleteBookmarksFavoriteResult<
13
+ TVersion extends ApiVersions,
14
+ TMethod extends keyof ClientMethod<unknown> = keyof ClientMethod<unknown>,
15
+ TResult = DeleteBookmarkFavoriteResult<TVersion>
16
+ > = ClientMethod<TResult>[TMethod];
17
+
18
+ export type DeleteBookmarksFavoriteFn<
19
+ TVersion extends ApiVersions,
20
+ TMethod extends keyof ClientMethod<unknown> = keyof ClientMethod<unknown>,
21
+ TClient extends IHttpClient = IHttpClient,
22
+ TResult = DeleteBookmarkFavoriteResult<TVersion>
23
+ > = (
24
+ args: DeleteBookmarkFavoriteArgs<TVersion>,
25
+ init?: ClientRequestInit<TClient, TResult>
26
+ ) => DeleteBookmarksFavoriteResult<TVersion, TMethod, TResult>;
27
+
28
+ export type DeleteBookmarksFavoriteVersions = {
29
+ ['v1']: { args: DeleteBookmarksFavoriteArgsV1; result: undefined };
30
+ };
31
+
32
+ /**Api versions for bookmarks service */
33
+ export type ApiVersions = keyof DeleteBookmarksFavoriteVersions;
@@ -0,0 +1,35 @@
1
+ import { ClientRequestInit, IHttpClient } from '@equinor/fusion-framework-module-http/client';
2
+ import { ClientMethod } from '../..';
3
+ import { generateParameters } from './generate-parameters';
4
+ import {
5
+ ApiVersions,
6
+ HeadBookmarkFavoriteArgs,
7
+ HeadBookmarkFavoriteResult,
8
+ HeadBookmarksFavoriteResult,
9
+ } from './types';
10
+
11
+ /**
12
+ * Verify that the bookmark is owned by the current user.
13
+ * @param client - client for execution of request
14
+ * @param version - version of API to call
15
+ * @param method - client method to call
16
+ */
17
+ export const verifyBookmarkFavorite =
18
+ <
19
+ TVersion extends ApiVersions = ApiVersions,
20
+ TMethod extends keyof ClientMethod = keyof ClientMethod,
21
+ TClient extends IHttpClient = IHttpClient
22
+ >(
23
+ client: TClient,
24
+ version: TVersion,
25
+ method: TMethod = 'json' as TMethod
26
+ ) =>
27
+ <TResult = HeadBookmarkFavoriteResult<TVersion>>(
28
+ args: HeadBookmarkFavoriteArgs<TVersion>,
29
+ init?: ClientRequestInit<TClient, TResult>
30
+ ): HeadBookmarksFavoriteResult<TVersion, TMethod, TResult> =>
31
+ client[method](
32
+ ...generateParameters<TResult, TVersion, TClient>(version, args, init)
33
+ ) as HeadBookmarksFavoriteResult<TVersion, TMethod, TResult>;
34
+
35
+ export default verifyBookmarkFavorite;
@@ -0,0 +1,19 @@
1
+ import { ApiVersions, HeadBookmarkFavoriteArgs } from './types';
2
+
3
+ /**
4
+ * Method for generating endpoint for getting bookmark by id
5
+ */
6
+ export const generateEndpoint = <TVersion extends ApiVersions>(
7
+ version: TVersion,
8
+ args: HeadBookmarkFavoriteArgs<TVersion>
9
+ ) => {
10
+ switch (version) {
11
+ case 'v1':
12
+ default: {
13
+ const { bookmarkId } = args as { bookmarkId: string };
14
+ const params = new URLSearchParams();
15
+ params.append('api-version', version);
16
+ return `/persons/me/bookmarks/favorites/${bookmarkId}?${String(params)}`;
17
+ }
18
+ }
19
+ };
@@ -0,0 +1,28 @@
1
+ import { ClientRequestInit, IHttpClient } from '@equinor/fusion-framework-module-http/client';
2
+ import { ApiClientArguments } from '../..';
3
+ import { generateEndpoint } from './generate-endpoint';
4
+ import { ApiVersions, HeadBookmarkFavoriteArgs } from './types';
5
+
6
+ /** function for creating http client arguments */
7
+ export const generateParameters = <
8
+ TResult,
9
+ TVersion extends ApiVersions,
10
+ TClient extends IHttpClient = IHttpClient
11
+ >(
12
+ version: TVersion,
13
+ args: HeadBookmarkFavoriteArgs<TVersion>,
14
+ init?: ClientRequestInit<TClient, TResult>
15
+ ): ApiClientArguments<TClient, TResult> => {
16
+ const path = generateEndpoint(version, args);
17
+
18
+ const headers = new Headers();
19
+ headers.append('content-type', 'application/json');
20
+
21
+ const requestParams: ClientRequestInit<TClient, TResult> = Object.assign(
22
+ {},
23
+ { method: 'head', headers: headers },
24
+ init
25
+ );
26
+
27
+ return [path, requestParams];
28
+ };
@@ -0,0 +1,6 @@
1
+ export * from './types';
2
+
3
+ export { verifyBookmarkFavorite, default } from './client';
4
+
5
+ export { generateEndpoint } from './generate-endpoint';
6
+ export { generateParameters } from './generate-parameters';
@@ -0,0 +1,35 @@
1
+ import { IHttpClient } from '@equinor/fusion-framework-module-http';
2
+ import { ClientRequestInit } from '@equinor/fusion-framework-module-http/client';
3
+ import { ClientMethod } from '../..';
4
+
5
+ export type HeadBookmarkFavoriteResult<TVersion extends ApiVersions> =
6
+ HeadBookmarksFavoriteVersions[TVersion]['result'];
7
+
8
+ export type HeadBookmarkFavoriteArgs<TVersion extends ApiVersions> =
9
+ HeadBookmarksFavoriteVersions[TVersion]['args'];
10
+
11
+ export type HeadBookmarksFavoriteResult<
12
+ TVersion extends ApiVersions,
13
+ TMethod extends keyof ClientMethod<unknown> = keyof ClientMethod<unknown>,
14
+ TResult = HeadBookmarkFavoriteResult<TVersion>
15
+ > = ClientMethod<TResult>[TMethod];
16
+
17
+ export type HeadBookmarkFavoriteFn<
18
+ TVersion extends ApiVersions,
19
+ TMethod extends keyof ClientMethod<unknown> = keyof ClientMethod<unknown>,
20
+ TClient extends IHttpClient = IHttpClient,
21
+ TResult = HeadBookmarkFavoriteResult<TVersion>
22
+ > = (
23
+ args: HeadBookmarkFavoriteArgs<TVersion>,
24
+ init?: ClientRequestInit<TClient, TResult>
25
+ ) => HeadBookmarksFavoriteResult<TVersion, TMethod, TResult>;
26
+
27
+ export interface HeadBookmarksFavoriteArgsV1 {
28
+ bookmarkId: string;
29
+ }
30
+
31
+ export type HeadBookmarksFavoriteVersions = {
32
+ ['v1']: { args: HeadBookmarksFavoriteArgsV1; result: Response };
33
+ };
34
+
35
+ export type ApiVersions = keyof HeadBookmarksFavoriteVersions;
@@ -0,0 +1,35 @@
1
+ import { ClientRequestInit, IHttpClient } from '@equinor/fusion-framework-module-http/client';
2
+ import { ClientMethod } from '../..';
3
+ import { generateParameters } from './generate-parameters';
4
+ import {
5
+ ApiVersions,
6
+ PostBookmarkFavoriteArgs,
7
+ PostBookmarkFavoriteResult,
8
+ PostBookmarksFavoriteResult,
9
+ } from './types';
10
+
11
+ /**
12
+ * Method for adding other users bookmark to your favorites.
13
+ * @param client - client for execution of request
14
+ * @param version - version of API to call
15
+ * @param method - client method to call
16
+ */
17
+ export const addBookmarkFavorite =
18
+ <
19
+ TVersion extends ApiVersions = ApiVersions,
20
+ TMethod extends keyof ClientMethod = keyof ClientMethod,
21
+ TClient extends IHttpClient = IHttpClient
22
+ >(
23
+ client: TClient,
24
+ version: TVersion,
25
+ method: TMethod = 'json' as TMethod
26
+ ) =>
27
+ <TResult = PostBookmarkFavoriteResult<TVersion>>(
28
+ args: PostBookmarkFavoriteArgs<TVersion>,
29
+ init?: ClientRequestInit<TClient, TResult>
30
+ ): PostBookmarksFavoriteResult<TVersion, TMethod, TResult> =>
31
+ client[method](
32
+ ...generateParameters<TResult, TVersion, TClient>(version, args, init)
33
+ ) as PostBookmarksFavoriteResult<TVersion, TMethod, TResult>;
34
+
35
+ export default addBookmarkFavorite;
@@ -0,0 +1,18 @@
1
+ import { ApiVersions, PostBookmarkFavoriteArgs } from './types';
2
+
3
+ /**
4
+ * Method for generating endpoint for getting bookmark by id
5
+ */
6
+ export const generateEndpoint = <TVersion extends ApiVersions>(
7
+ version: TVersion,
8
+ _args: PostBookmarkFavoriteArgs<TVersion>
9
+ ) => {
10
+ switch (version) {
11
+ case 'v1':
12
+ default: {
13
+ const params = new URLSearchParams();
14
+ params.append('api-version', version);
15
+ return `/persons/me/bookmarks/favorites?${String(params)}`;
16
+ }
17
+ }
18
+ };
@@ -0,0 +1,28 @@
1
+ import { ClientRequestInit, IHttpClient } from '@equinor/fusion-framework-module-http/client';
2
+ import { ApiClientArguments } from '../..';
3
+ import { generateEndpoint } from './generate-endpoint';
4
+ import { ApiVersions, PostBookmarkFavoriteArgs } from './types';
5
+
6
+ /** function for creating http client arguments */
7
+ export const generateParameters = <
8
+ TResult,
9
+ TVersion extends ApiVersions,
10
+ TClient extends IHttpClient = IHttpClient
11
+ >(
12
+ version: TVersion,
13
+ args: PostBookmarkFavoriteArgs<TVersion>,
14
+ init?: ClientRequestInit<TClient, TResult>
15
+ ): ApiClientArguments<TClient, TResult> => {
16
+ const path = generateEndpoint(version, args);
17
+
18
+ const headers = new Headers();
19
+ headers.append('content-type', 'application/json');
20
+
21
+ const requestParams: ClientRequestInit<TClient, TResult> = Object.assign(
22
+ {},
23
+ { method: 'post', body: JSON.stringify(args), headers: headers },
24
+ init
25
+ );
26
+
27
+ return [path, requestParams];
28
+ };
@@ -0,0 +1,6 @@
1
+ export * from './types';
2
+
3
+ export { addBookmarkFavorite, default } from './client';
4
+
5
+ export { generateEndpoint } from './generate-endpoint';
6
+ export { generateParameters } from './generate-parameters';
@@ -0,0 +1,35 @@
1
+ import { IHttpClient } from '@equinor/fusion-framework-module-http';
2
+ import { ClientRequestInit } from '@equinor/fusion-framework-module-http/client';
3
+ import { ClientMethod } from '../..';
4
+
5
+ export type PostBookmarkFavoriteResult<TVersion extends ApiVersions> =
6
+ PostBookmarksFavoriteVersions[TVersion]['result'];
7
+
8
+ export type PostBookmarkFavoriteArgs<TVersion extends ApiVersions> =
9
+ PostBookmarksFavoriteVersions[TVersion]['args'];
10
+
11
+ export type PostBookmarksFavoriteResult<
12
+ TVersion extends ApiVersions,
13
+ TMethod extends keyof ClientMethod<unknown> = keyof ClientMethod<unknown>,
14
+ TResult = PostBookmarkFavoriteResult<TVersion>
15
+ > = ClientMethod<TResult>[TMethod];
16
+
17
+ export type PostBookmarkFavoriteFn<
18
+ TVersion extends ApiVersions,
19
+ TMethod extends keyof ClientMethod<unknown> = keyof ClientMethod<unknown>,
20
+ TClient extends IHttpClient = IHttpClient,
21
+ TResult = PostBookmarkFavoriteResult<TVersion>
22
+ > = (
23
+ args: PostBookmarkFavoriteArgs<TVersion>,
24
+ init?: ClientRequestInit<TClient, TResult>
25
+ ) => PostBookmarksFavoriteResult<TVersion, TMethod, TResult>;
26
+
27
+ export interface PostBookmarksFavoriteArgsV1 {
28
+ bookmarkId: string;
29
+ }
30
+
31
+ export type PostBookmarksFavoriteVersions = {
32
+ ['v1']: { args: PostBookmarksFavoriteArgsV1; result: Response };
33
+ };
34
+
35
+ export type ApiVersions = keyof PostBookmarksFavoriteVersions;
@@ -0,0 +1,70 @@
1
+ import { ApiVersion } from './static';
2
+
3
+ type ApiNotificationEntity_v1 = {
4
+ id: string;
5
+ appKey: string;
6
+ emailPriority: number;
7
+ fallbackHtml: string;
8
+ targetAzureUniqueId: string;
9
+ title: string;
10
+ card: string;
11
+ created: string;
12
+ createdBy: CreatedBy_v1;
13
+ createdByApplication: CreatedByApplication_v1;
14
+ seenByUser: boolean;
15
+ seen: string;
16
+ sourceSystem: SourceSystem_v1;
17
+ };
18
+
19
+ type SourceSystem_v1 = {
20
+ name: string;
21
+ subSystem: string;
22
+ identifier: string;
23
+ };
24
+
25
+ type CreatedByApplication_v1 = {
26
+ id: string;
27
+ title: string;
28
+ };
29
+
30
+ type CreatedBy_v1 = {
31
+ id: string;
32
+ name: string;
33
+ jobTitle: string;
34
+ mail: string;
35
+ accountType: string;
36
+ };
37
+
38
+ type ApiNotificationEntity_v2 = unknown;
39
+
40
+ type ApiNotificationEntityTypes = {
41
+ [ApiVersion.v1]: ApiNotificationEntity_v1;
42
+ [ApiVersion.v2]: ApiNotificationEntity_v2;
43
+ };
44
+
45
+ export type ApiNotificationEntity<T extends string = ApiVersion> = T extends ApiVersion
46
+ ? ApiNotificationEntityTypes[T]
47
+ : unknown;
48
+
49
+ /**User notification Settings */
50
+ type ApiNotificationSettingsEntity_v1 = {
51
+ email: boolean;
52
+ delayInMinutes: number;
53
+ appConfig: AppConfig_v1[];
54
+ };
55
+
56
+ type AppConfig_v1 = {
57
+ appKey: string;
58
+ enabled: boolean;
59
+ };
60
+
61
+ type ApiNotificationSettingsEntity_v2 = unknown;
62
+
63
+ type ApiNotificationSettingEntityTypes = {
64
+ [ApiVersion.v1]: ApiNotificationSettingsEntity_v1;
65
+ [ApiVersion.v2]: ApiNotificationSettingsEntity_v2;
66
+ };
67
+
68
+ export type ApiNotificationSettingsEntity<T extends string = ApiVersion> = T extends ApiVersion
69
+ ? ApiNotificationSettingEntityTypes[T]
70
+ : unknown;