@mapcreator/api 0.0.0-saga.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 (256) hide show
  1. package/LICENSE +29 -0
  2. package/README.md +86 -0
  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 +31 -0
  6. package/cjs/api/apiCommon.js.map +1 -0
  7. package/cjs/api/choropleth.d.ts +41 -0
  8. package/cjs/api/choropleth.d.ts.map +1 -0
  9. package/cjs/api/choropleth.js +15 -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 +14 -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 +29 -0
  28. package/cjs/api/font.d.ts.map +1 -0
  29. package/cjs/api/font.js +18 -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 +25 -0
  38. package/cjs/api/highlight.js.map +1 -0
  39. package/cjs/api/job.d.ts +41 -0
  40. package/cjs/api/job.d.ts.map +1 -0
  41. package/cjs/api/job.js +71 -0
  42. package/cjs/api/job.js.map +1 -0
  43. package/cjs/api/jobResult.d.ts +40 -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 +76 -0
  48. package/cjs/api/jobRevision.d.ts.map +1 -0
  49. package/cjs/api/jobRevision.js +132 -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 +9 -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 +26 -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 +36 -0
  74. package/cjs/api/layerGroup.js.map +1 -0
  75. package/cjs/api/mapstyleSet.d.ts +31 -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 +40 -0
  84. package/cjs/api/organisation.d.ts.map +1 -0
  85. package/cjs/api/organisation.js +42 -0
  86. package/cjs/api/organisation.js.map +1 -0
  87. package/cjs/api/resources.d.ts +59 -0
  88. package/cjs/api/resources.d.ts.map +1 -0
  89. package/cjs/api/resources.js +57 -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 +128 -0
  100. package/cjs/api/user.d.ts.map +1 -0
  101. package/cjs/api/user.js +146 -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 +27 -0
  108. package/cjs/oauth.d.ts.map +1 -0
  109. package/cjs/oauth.js +245 -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 +41 -0
  120. package/esm/api/choropleth.d.ts.map +1 -0
  121. package/esm/api/choropleth.js +11 -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 +11 -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 +29 -0
  140. package/esm/api/font.d.ts.map +1 -0
  141. package/esm/api/font.js +14 -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 +21 -0
  150. package/esm/api/highlight.js.map +1 -0
  151. package/esm/api/job.d.ts +41 -0
  152. package/esm/api/job.d.ts.map +1 -0
  153. package/esm/api/job.js +59 -0
  154. package/esm/api/job.js.map +1 -0
  155. package/esm/api/jobResult.d.ts +40 -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 +76 -0
  160. package/esm/api/jobRevision.d.ts.map +1 -0
  161. package/esm/api/jobRevision.js +120 -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 +26 -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 +31 -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 +40 -0
  196. package/esm/api/organisation.d.ts.map +1 -0
  197. package/esm/api/organisation.js +36 -0
  198. package/esm/api/organisation.js.map +1 -0
  199. package/esm/api/resources.d.ts +59 -0
  200. package/esm/api/resources.d.ts.map +1 -0
  201. package/esm/api/resources.js +51 -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 +128 -0
  212. package/esm/api/user.d.ts.map +1 -0
  213. package/esm/api/user.js +127 -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 +27 -0
  220. package/esm/oauth.d.ts.map +1 -0
  221. package/esm/oauth.js +237 -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 +80 -0
  228. package/src/README.md +126 -0
  229. package/src/api/apiCommon.ts +70 -0
  230. package/src/api/choropleth.ts +105 -0
  231. package/src/api/color.ts +22 -0
  232. package/src/api/dimension.ts +44 -0
  233. package/src/api/dimensionSet.ts +20 -0
  234. package/src/api/feature.ts +22 -0
  235. package/src/api/font.ts +49 -0
  236. package/src/api/fontFamily.ts +43 -0
  237. package/src/api/highlight.ts +87 -0
  238. package/src/api/job.ts +129 -0
  239. package/src/api/jobResult.ts +95 -0
  240. package/src/api/jobRevision.ts +278 -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 +38 -0
  245. package/src/api/layerFaq.ts +53 -0
  246. package/src/api/layerGroup.ts +69 -0
  247. package/src/api/mapstyleSet.ts +48 -0
  248. package/src/api/message.ts +80 -0
  249. package/src/api/organisation.ts +95 -0
  250. package/src/api/resources.ts +143 -0
  251. package/src/api/svg.ts +33 -0
  252. package/src/api/svgSet.ts +56 -0
  253. package/src/api/user.ts +327 -0
  254. package/src/index.ts +42 -0
  255. package/src/oauth.ts +314 -0
  256. package/src/utils.ts +342 -0
@@ -0,0 +1,128 @@
1
+ import { type FontFamily } from './fontFamily.js';
2
+ import { type SvgSet } from './svgSet.js';
3
+ import { type Layer } from './layer.js';
4
+ import { type Svg } from './svg.js';
5
+ import { type JobSearchResult } from './apiCommon.js';
6
+ import type { JobShare } from './jobShare.js';
7
+ import type { RequireAtLeastOne } from 'type-fest';
8
+ import { type ApiCommonData, type ApiError, type ApiSuccess, type Flatten, type Revivers, myUser } from '../utils.js';
9
+ type ApiPermission = {
10
+ id: number;
11
+ name: string;
12
+ } & ApiCommonData;
13
+ type ApiRole = {
14
+ id: number;
15
+ name: string;
16
+ description: string;
17
+ pivot: {
18
+ model_type: string;
19
+ model_id: number;
20
+ role_id: number;
21
+ };
22
+ } & ApiCommonData;
23
+ type UnitType = 'metric' | 'imperial' | null;
24
+ export type User = {
25
+ id: number;
26
+ languageCode: string;
27
+ interfaceLanguage: string;
28
+ videoNotifications: boolean;
29
+ name: string;
30
+ email: string;
31
+ company: string;
32
+ confirmed: boolean;
33
+ propagated: boolean;
34
+ whatsNewBadge: boolean;
35
+ autosave: boolean;
36
+ unit: UnitType;
37
+ trialExpiresAt: string | undefined;
38
+ stripeId: string | undefined;
39
+ intercomIdentityToken?: string;
40
+ hasPassword?: boolean;
41
+ };
42
+ export type ApiUser = {
43
+ data: {
44
+ id: number;
45
+ organisation_id: number;
46
+ language_code: string;
47
+ interface_language: string;
48
+ hide_messages: boolean;
49
+ video_notifications: boolean;
50
+ name: string;
51
+ email: string;
52
+ phone: string | null;
53
+ profession: string | null;
54
+ company: string | null;
55
+ country: string | null;
56
+ city: string | null;
57
+ address: string | null;
58
+ tips: boolean;
59
+ tags: string[] | null;
60
+ confirmed: boolean;
61
+ propagated: boolean;
62
+ newsletter_consent: boolean;
63
+ whats_new_badge: boolean;
64
+ autosave: boolean;
65
+ unit: UnitType;
66
+ registration_complete: boolean;
67
+ notifications_checked_at: string | null;
68
+ referral: string | null;
69
+ trial_expires_at: string | null;
70
+ delete_requested: boolean | null;
71
+ delete_request_notified: number;
72
+ stripe_id: string | null;
73
+ stripe_ref: unknown | null;
74
+ pm_type: unknown | null;
75
+ pm_last_four: unknown | null;
76
+ trial_ends_at: string | null;
77
+ settings: string | null;
78
+ intercom_identity_token?: string;
79
+ has_password?: boolean;
80
+ permissions: ApiPermission[];
81
+ roles: ApiRole[];
82
+ } & ApiCommonData;
83
+ } & Omit<ApiSuccess, 'data'> | ApiError;
84
+ export type ApiUserData = Flatten<Exclude<ApiUser, ApiError>['data']>;
85
+ export type JobFolder = {
86
+ id: number;
87
+ jobsCount: number;
88
+ name: string;
89
+ userId: number;
90
+ };
91
+ export type ApiJobFolder = {
92
+ data: {
93
+ id: number;
94
+ jobsCount: number;
95
+ name: string;
96
+ userId: number;
97
+ } & ApiCommonData;
98
+ } & Omit<ApiSuccess, 'data'> | ApiError;
99
+ export type ApiJobFolderData = Flatten<Exclude<ApiJobFolder, ApiError>['data']>;
100
+ export declare const userRevivers: Revivers<ApiUser, User>;
101
+ type UpdateUserParams = {
102
+ whatsNewBadge?: boolean;
103
+ videoNotifications?: boolean;
104
+ autosave?: boolean;
105
+ interfaceLanguage?: string;
106
+ languageCode?: string;
107
+ unit?: UnitType;
108
+ password?: string;
109
+ email?: string;
110
+ };
111
+ export declare function getUser(): Promise<User>;
112
+ export declare function updateUser(userId: number | typeof myUser, fields: RequireAtLeastOne<UpdateUserParams>): Promise<Record<string, never>>;
113
+ export declare function deleteUser(userId: number | typeof myUser): Promise<Record<string, never>>;
114
+ export declare function listUserFontFamilies(): Promise<FontFamily[]>;
115
+ export declare function listUserHatchingSvgs(): Promise<Svg[]>;
116
+ export declare function listUserJobs(userId: number | typeof myUser, title: string, page: number, options?: Record<string, unknown>): Promise<JobSearchResult>;
117
+ export declare function listUserFolders(): Promise<JobFolder[]>;
118
+ export declare function createUserFolder(name: string): Promise<JobFolder>;
119
+ export declare function deleteUserFolder(folderId: number): Promise<Record<string, never>>;
120
+ export declare function renameUserFolder(folderId: number, name: string): Promise<Record<string, never>>;
121
+ export declare function listUserLayers(): Promise<Layer[]>;
122
+ export declare function listUserSvgSets(): Promise<SvgSet[]>;
123
+ export declare function findJobShares(jobId: number): Promise<JobShare[]>;
124
+ export declare function createUserTrial(userId: number | typeof myUser, data: Record<string, unknown>): Promise<Record<string, never>>;
125
+ export declare function sendUserConfirmationEmail(userId: number | typeof myUser): Promise<Record<string, never>>;
126
+ export declare function getUserBillingPortalUrl(userId: number | typeof myUser): Promise<string>;
127
+ export {};
128
+ //# sourceMappingURL=user.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/api/user.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,146 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.userRevivers = void 0;
4
+ exports.getUser = getUser;
5
+ exports.updateUser = updateUser;
6
+ exports.deleteUser = deleteUser;
7
+ exports.listUserFontFamilies = listUserFontFamilies;
8
+ exports.listUserHatchingSvgs = listUserHatchingSvgs;
9
+ exports.listUserJobs = listUserJobs;
10
+ exports.listUserFolders = listUserFolders;
11
+ exports.createUserFolder = createUserFolder;
12
+ exports.deleteUserFolder = deleteUserFolder;
13
+ exports.renameUserFolder = renameUserFolder;
14
+ exports.listUserLayers = listUserLayers;
15
+ exports.listUserSvgSets = listUserSvgSets;
16
+ exports.findJobShares = findJobShares;
17
+ exports.createUserTrial = createUserTrial;
18
+ exports.sendUserConfirmationEmail = sendUserConfirmationEmail;
19
+ exports.getUserBillingPortalUrl = getUserBillingPortalUrl;
20
+ const fontFamily_js_1 = require("./fontFamily.js");
21
+ const svgSet_js_1 = require("./svgSet.js");
22
+ const layer_js_1 = require("./layer.js");
23
+ const svg_js_1 = require("./svg.js");
24
+ const apiCommon_js_1 = require("./apiCommon.js");
25
+ const utils_js_1 = require("../utils.js");
26
+ exports.userRevivers = {
27
+ organisation_id: undefined,
28
+ hide_messages: undefined,
29
+ phone: undefined,
30
+ profession: undefined,
31
+ country: undefined,
32
+ city: undefined,
33
+ address: undefined,
34
+ tips: undefined,
35
+ tags: undefined,
36
+ newsletter_consent: undefined,
37
+ registration_complete: undefined,
38
+ notifications_checked_at: undefined,
39
+ referral: undefined,
40
+ delete_requested: undefined,
41
+ delete_request_notified: undefined,
42
+ stripe_ref: undefined,
43
+ pm_type: undefined,
44
+ pm_last_four: undefined,
45
+ trial_ends_at: undefined,
46
+ settings: undefined,
47
+ permissions: undefined,
48
+ roles: undefined,
49
+ trialExpiresAt: (data) => { var _a; return (_a = data.trial_expires_at) !== null && _a !== void 0 ? _a : undefined; },
50
+ stripeId: (data) => { var _a; return (_a = data.stripe_id) !== null && _a !== void 0 ? _a : undefined; },
51
+ };
52
+ async function getUser() {
53
+ const path = `/v1/users/${utils_js_1.myUser}`;
54
+ const options = { revivers: exports.userRevivers };
55
+ return (0, utils_js_1.request)(path, null, null, options);
56
+ }
57
+ async function updateUser(userId, fields) {
58
+ const path = `/v1/users/${userId}`;
59
+ const body = (0, utils_js_1.toApiType)(fields);
60
+ return (0, utils_js_1.request)(path, body, null, { method: 'PATCH' });
61
+ }
62
+ async function deleteUser(userId) {
63
+ const path = `/v1/users/${userId}`;
64
+ return (0, utils_js_1.request)(path, null, null, { method: 'DELETE' });
65
+ }
66
+ async function listUserFontFamilies() {
67
+ const pathname = `/v1/users/${utils_js_1.myUser}/font-families`;
68
+ const query = (0, utils_js_1.getSearchParams)({ sort: 'order' });
69
+ const path = `${pathname}?${query}`;
70
+ const options = { revivers: fontFamily_js_1.fontFamilyRevivers };
71
+ return (0, utils_js_1.request)(path, null, utils_js_1.defaultListHeader, options);
72
+ }
73
+ async function listUserHatchingSvgs() {
74
+ const pathname = `/v1/users/${utils_js_1.myUser}/hatching-svgs`;
75
+ const query = (0, utils_js_1.getSearchParams)({ sort: 'order' });
76
+ const path = `${pathname}?${query}`;
77
+ const options = { revivers: svg_js_1.svgRevivers };
78
+ return (0, utils_js_1.request)(path, null, utils_js_1.defaultListHeader, options);
79
+ }
80
+ async function listUserJobs(userId, title, page, options) {
81
+ return (0, apiCommon_js_1.listJobs)(`/v1/users/${userId}/jobs`, title, page, options);
82
+ }
83
+ async function listUserFolders() {
84
+ const path = `/v1/users/${utils_js_1.myUser}/folders`;
85
+ return (0, utils_js_1.request)(path);
86
+ }
87
+ async function createUserFolder(name) {
88
+ const path = `/v1/users/${utils_js_1.myUser}/folders`;
89
+ const body = { name };
90
+ return (0, utils_js_1.request)(path, body);
91
+ }
92
+ async function deleteUserFolder(folderId) {
93
+ const path = `/v1/users/${utils_js_1.myUser}/folders/${folderId}`;
94
+ return (0, utils_js_1.request)(path, null, null, { method: 'DELETE' });
95
+ }
96
+ async function renameUserFolder(folderId, name) {
97
+ const path = `/v1/users/${utils_js_1.myUser}/folders/${folderId}`;
98
+ const body = { name };
99
+ return (0, utils_js_1.request)(path, body, null, { method: 'PATCH' });
100
+ }
101
+ async function listUserLayers() {
102
+ const pathname = `/v1/users/${utils_js_1.myUser}/layers`;
103
+ const query = (0, utils_js_1.getSearchParams)({
104
+ search: {
105
+ pangaea_ready: '1',
106
+ },
107
+ sort: 'order',
108
+ });
109
+ const path = `${pathname}?${query}`;
110
+ const options = { revivers: layer_js_1.layerRevivers };
111
+ return (0, utils_js_1.request)(path, null, utils_js_1.defaultListHeader, options);
112
+ }
113
+ async function listUserSvgSets() {
114
+ const pathname = `/v1/users/${utils_js_1.myUser}/svg-sets`;
115
+ const query = (0, utils_js_1.getSearchParams)({
116
+ search: {
117
+ supports_mapcreator: '1',
118
+ type: '!:sprite',
119
+ },
120
+ sort: 'order',
121
+ });
122
+ const path = `${pathname}?${query}`;
123
+ const options = { revivers: svgSet_js_1.svgSetRevivers };
124
+ return (0, utils_js_1.request)(path, null, utils_js_1.defaultListHeader, options);
125
+ }
126
+ async function findJobShares(jobId) {
127
+ const pathname = `/v1/users/${utils_js_1.myUser}/job-shares`;
128
+ const query = (0, utils_js_1.getSearchParams)({ search: { job_id: jobId } });
129
+ const path = `${pathname}?${query}`;
130
+ return (0, utils_js_1.request)(path);
131
+ }
132
+ async function createUserTrial(userId, data) {
133
+ const pathname = `/v1/users/${userId}/trial`;
134
+ const path = `${pathname}?${utils_js_1.deletedNoneParam}`;
135
+ const body = (0, utils_js_1.toApiType)(data);
136
+ return (0, utils_js_1.request)(path, body);
137
+ }
138
+ async function sendUserConfirmationEmail(userId) {
139
+ const path = `/v1/users/${userId}/confirm`;
140
+ return (0, utils_js_1.request)(path, null, null, { method: 'POST' });
141
+ }
142
+ async function getUserBillingPortalUrl(userId) {
143
+ const path = `/v1/users/${userId}/billing-portal-url`;
144
+ return (0, utils_js_1.request)(path).then(({ billingPortalUrl }) => billingPortalUrl);
145
+ }
146
+ //# sourceMappingURL=user.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/api/user.ts"],"names":[],"mappings":"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"}
package/cjs/index.d.ts ADDED
@@ -0,0 +1,26 @@
1
+ export * from './api/choropleth.js';
2
+ export * from './api/color.js';
3
+ export * from './api/dimension.js';
4
+ export * from './api/dimensionSet.js';
5
+ export * from './api/feature.js';
6
+ export * from './api/font.js';
7
+ export * from './api/fontFamily.js';
8
+ export * from './api/highlight.js';
9
+ export * from './api/job.js';
10
+ export * from './api/jobResult.js';
11
+ export * from './api/jobRevision.js';
12
+ export * from './api/jobShare.js';
13
+ export * from './api/jobType.js';
14
+ export * from './api/language.js';
15
+ export * from './api/layer.js';
16
+ export * from './api/layerFaq.js';
17
+ export * from './api/layerGroup.js';
18
+ export * from './api/mapstyleSet.js';
19
+ export * from './api/message.js';
20
+ export * from './api/organisation.js';
21
+ export * from './api/resources.js';
22
+ export * from './api/svg.js';
23
+ export * from './api/svgSet.js';
24
+ export * from './api/user.js';
25
+ export { type ApiCommon, type ApiCommonData, type ApiError, type ApiSuccess, type ExtraOptions, type Flatten, type Revivers, lastJobRevision, myOrganisations, myUser, APIError, HTTPError, NetworkError, getSearchParams, request, } from './utils.js';
26
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAE9B,OAAO,EACL,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,UAAU,EACf,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,QAAQ,EACb,eAAe,EACf,eAAe,EACf,MAAM,EACN,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,eAAe,EACf,OAAO,GACR,MAAM,YAAY,CAAC"}
package/cjs/index.js ADDED
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.request = exports.getSearchParams = exports.NetworkError = exports.HTTPError = exports.APIError = exports.myUser = exports.myOrganisations = exports.lastJobRevision = void 0;
18
+ __exportStar(require("./api/choropleth.js"), exports);
19
+ __exportStar(require("./api/color.js"), exports);
20
+ __exportStar(require("./api/dimension.js"), exports);
21
+ __exportStar(require("./api/dimensionSet.js"), exports);
22
+ __exportStar(require("./api/feature.js"), exports);
23
+ __exportStar(require("./api/font.js"), exports);
24
+ __exportStar(require("./api/fontFamily.js"), exports);
25
+ __exportStar(require("./api/highlight.js"), exports);
26
+ __exportStar(require("./api/job.js"), exports);
27
+ __exportStar(require("./api/jobResult.js"), exports);
28
+ __exportStar(require("./api/jobRevision.js"), exports);
29
+ __exportStar(require("./api/jobShare.js"), exports);
30
+ __exportStar(require("./api/jobType.js"), exports);
31
+ __exportStar(require("./api/language.js"), exports);
32
+ __exportStar(require("./api/layer.js"), exports);
33
+ __exportStar(require("./api/layerFaq.js"), exports);
34
+ __exportStar(require("./api/layerGroup.js"), exports);
35
+ __exportStar(require("./api/mapstyleSet.js"), exports);
36
+ __exportStar(require("./api/message.js"), exports);
37
+ __exportStar(require("./api/organisation.js"), exports);
38
+ __exportStar(require("./api/resources.js"), exports);
39
+ __exportStar(require("./api/svg.js"), exports);
40
+ __exportStar(require("./api/svgSet.js"), exports);
41
+ __exportStar(require("./api/user.js"), exports);
42
+ var utils_js_1 = require("./utils.js");
43
+ Object.defineProperty(exports, "lastJobRevision", { enumerable: true, get: function () { return utils_js_1.lastJobRevision; } });
44
+ Object.defineProperty(exports, "myOrganisations", { enumerable: true, get: function () { return utils_js_1.myOrganisations; } });
45
+ Object.defineProperty(exports, "myUser", { enumerable: true, get: function () { return utils_js_1.myUser; } });
46
+ Object.defineProperty(exports, "APIError", { enumerable: true, get: function () { return utils_js_1.APIError; } });
47
+ Object.defineProperty(exports, "HTTPError", { enumerable: true, get: function () { return utils_js_1.HTTPError; } });
48
+ Object.defineProperty(exports, "NetworkError", { enumerable: true, get: function () { return utils_js_1.NetworkError; } });
49
+ Object.defineProperty(exports, "getSearchParams", { enumerable: true, get: function () { return utils_js_1.getSearchParams; } });
50
+ Object.defineProperty(exports, "request", { enumerable: true, get: function () { return utils_js_1.request; } });
51
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,iDAA+B;AAC/B,qDAAmC;AACnC,wDAAsC;AACtC,mDAAiC;AACjC,gDAA8B;AAC9B,sDAAoC;AACpC,qDAAmC;AACnC,+CAA6B;AAC7B,qDAAmC;AACnC,uDAAqC;AACrC,oDAAkC;AAClC,mDAAiC;AACjC,oDAAkC;AAClC,iDAA+B;AAC/B,oDAAkC;AAClC,sDAAoC;AACpC,uDAAqC;AACrC,mDAAiC;AACjC,wDAAsC;AACtC,qDAAmC;AACnC,+CAA6B;AAC7B,kDAAgC;AAChC,gDAA8B;AAE9B,uCAgBoB;AARlB,2GAAA,eAAe,OAAA;AACf,2GAAA,eAAe,OAAA;AACf,kGAAA,MAAM,OAAA;AACN,oGAAA,QAAQ,OAAA;AACR,qGAAA,SAAS,OAAA;AACT,wGAAA,YAAY,OAAA;AACZ,2GAAA,eAAe,OAAA;AACf,mGAAA,OAAO,OAAA"}
package/cjs/oauth.d.ts ADDED
@@ -0,0 +1,27 @@
1
+ export declare let apiHost: string;
2
+ export declare let token: {
3
+ type: string;
4
+ token: string;
5
+ expires: Date;
6
+ toString: () => string;
7
+ } | null;
8
+ /**
9
+ * Setup internal structures to use dummy authentication flow
10
+ *
11
+ * @param {string} apiUrl - Full API URL
12
+ * @param {string} oauthToken - OAuth Token
13
+ */
14
+ export declare function initDummyFlow(apiUrl: string, oauthToken: string): void;
15
+ /**
16
+ * Setup internal structures to use implicit authentication flow
17
+ *
18
+ * @param {string} apiUrl - Full API URL
19
+ * @param {string} clientId - OAuth client id
20
+ * @param {string} [redirectUrl] - Callback URL
21
+ * @param {string[]} [scopes] - A list of required scopes
22
+ */
23
+ export declare function initImplicitFlow(apiUrl: string, clientId: string, redirectUrl?: string, scopes?: string[]): void;
24
+ export declare function authenticate(): Promise<string> | never;
25
+ export declare function authenticated(): boolean;
26
+ export declare function logout(): Promise<void>;
27
+ //# sourceMappingURL=oauth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../src/oauth.ts"],"names":[],"mappings":"AAAA,eAAO,IAAI,OAAO,QAAK,CAAC;AAExB,eAAO,IAAI,KAAK,EAAE;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,IAAI,CAAC;IAEd,QAAQ,EAAE,MAAM,MAAM,CAAC;CACxB,GAAG,IAAW,CAAC;AAuBhB;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAatE;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,SAAK,EAAE,MAAM,WAAQ,GAAG,IAAI,CA+EzG;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,CAY5D;AAED,wBAAgB,aAAa,IAAI,OAAO,CAKvC;AAED,wBAAsB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAY5C"}
package/cjs/oauth.js ADDED
@@ -0,0 +1,245 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.token = exports.apiHost = void 0;
4
+ exports.initDummyFlow = initDummyFlow;
5
+ exports.initImplicitFlow = initImplicitFlow;
6
+ exports.authenticate = authenticate;
7
+ exports.authenticated = authenticated;
8
+ exports.logout = logout;
9
+ exports.apiHost = '';
10
+ exports.token = null;
11
+ let apiClientId = '';
12
+ let callbackUrl = '';
13
+ let oauthScopes = ['*'];
14
+ const anchorParams = ['access_token', 'token_type', 'expires_in', 'state'];
15
+ const storagePrefix = '_m4n_';
16
+ const statePrefix = 'oauth_state_';
17
+ const storageName = 'api_token';
18
+ const dummyTokenExpires = new Date('2100-01-01T01:00:00');
19
+ const titleCase = (str) => String(str).toLowerCase().replace(/\b\w/g, c => c.toUpperCase());
20
+ /**
21
+ * Setup internal structures to use dummy authentication flow
22
+ *
23
+ * @param {string} apiUrl - Full API URL
24
+ * @param {string} oauthToken - OAuth Token
25
+ */
26
+ function initDummyFlow(apiUrl, oauthToken) {
27
+ const parts = oauthToken.includes(' ') ? oauthToken.split(' ', 2) : ['Bearer', oauthToken];
28
+ exports.apiHost = apiUrl.replace(/\/+$/, '');
29
+ exports.token = {
30
+ type: titleCase(parts[0]),
31
+ token: parts[1],
32
+ expires: dummyTokenExpires,
33
+ toString() {
34
+ return `${this.type} ${this.token}`;
35
+ },
36
+ };
37
+ }
38
+ /**
39
+ * Setup internal structures to use implicit authentication flow
40
+ *
41
+ * @param {string} apiUrl - Full API URL
42
+ * @param {string} clientId - OAuth client id
43
+ * @param {string} [redirectUrl] - Callback URL
44
+ * @param {string[]} [scopes] - A list of required scopes
45
+ */
46
+ function initImplicitFlow(apiUrl, clientId, redirectUrl = '', scopes = ['*']) {
47
+ exports.apiHost = apiUrl.replace(/\/+$/, '');
48
+ apiClientId = String(clientId);
49
+ callbackUrl = String(redirectUrl || window.location.href.split('#')[0]);
50
+ oauthScopes = scopes;
51
+ {
52
+ const key = `${storagePrefix}${storageName}`;
53
+ const data = window.localStorage.getItem(key);
54
+ if (data) {
55
+ try {
56
+ const obj = JSON.parse(data);
57
+ if (typeof obj.type === 'string' &&
58
+ typeof obj.token === 'string' &&
59
+ typeof obj.expires === 'string' &&
60
+ new Date(obj.expires) > new Date()) {
61
+ exports.token = {
62
+ type: titleCase(obj.type),
63
+ token: obj.token,
64
+ expires: new Date(obj.expires),
65
+ toString() {
66
+ return `${this.type} ${this.token}`;
67
+ },
68
+ };
69
+ }
70
+ else {
71
+ window.localStorage.removeItem(key);
72
+ }
73
+ }
74
+ catch (e) {
75
+ /* */
76
+ }
77
+ }
78
+ }
79
+ {
80
+ const obj = getAnchorToken();
81
+ if (isAnchorToken(obj)) {
82
+ // We'll not go there if anchor contains error and/or message
83
+ // This means that anchor parameters will be preserved for the next processing
84
+ cleanAnchorParams();
85
+ const expires = new Date(Date.now() + Number(obj.expires_in) * 1000);
86
+ if (isValidState(obj.state) && expires > new Date()) {
87
+ exports.token = {
88
+ type: titleCase(obj.token_type),
89
+ token: obj.access_token,
90
+ expires,
91
+ toString() {
92
+ return `${this.type} ${this.token}`;
93
+ },
94
+ };
95
+ const key = `${storagePrefix}${storageName}`;
96
+ const data = { type: exports.token.type, token: exports.token.token, expires: expires.toUTCString() };
97
+ window.localStorage.setItem(key, JSON.stringify(data));
98
+ }
99
+ else {
100
+ // TODO: add some logic to handle this
101
+ // throw Error('Invalid state in url');
102
+ }
103
+ }
104
+ }
105
+ if (authenticated()) {
106
+ const href = sessionStorage.getItem('redirect-url');
107
+ if (href) {
108
+ sessionStorage.removeItem('redirect-url');
109
+ window.history.replaceState(null, document.title, href);
110
+ }
111
+ }
112
+ }
113
+ async function authenticate() {
114
+ return new Promise(() => {
115
+ if (anchorContainsError()) {
116
+ console.error(getError());
117
+ cleanAnchorParams();
118
+ }
119
+ forget();
120
+ sessionStorage.setItem('redirect-url', window.location.href);
121
+ window.location.assign(buildRedirectUrl());
122
+ });
123
+ }
124
+ function authenticated() {
125
+ return exports.token != null && exports.token.expires > new Date() && (exports.token.expires.valueOf() === dummyTokenExpires.valueOf() ||
126
+ !!window.localStorage.getItem(`${storagePrefix}${storageName}`));
127
+ }
128
+ async function logout() {
129
+ if (exports.token) {
130
+ await fetch(`${exports.apiHost}/oauth/logout`, {
131
+ method: 'POST',
132
+ headers: {
133
+ Accept: 'application/json',
134
+ Authorization: exports.token.toString(),
135
+ },
136
+ });
137
+ }
138
+ forget();
139
+ }
140
+ function forget() {
141
+ for (let i = 0; i < window.localStorage.length; ++i) {
142
+ const key = window.localStorage.key(i);
143
+ if (key === null || key === void 0 ? void 0 : key.startsWith(storagePrefix)) {
144
+ window.localStorage.removeItem(key);
145
+ }
146
+ }
147
+ exports.token = null;
148
+ }
149
+ function buildRedirectUrl() {
150
+ const queryParams = new URLSearchParams({
151
+ client_id: apiClientId,
152
+ redirect_uri: callbackUrl,
153
+ response_type: 'token',
154
+ scope: oauthScopes.join(' '),
155
+ state: generateState(),
156
+ });
157
+ return `${exports.apiHost}/oauth/authorize?${queryParams}`;
158
+ }
159
+ function getAnchorQuery() {
160
+ return window.location.hash.replace(/^#\/?/, '');
161
+ }
162
+ function getAnchorParams() {
163
+ const query = getAnchorQuery();
164
+ // eslint-disable-next-line @stylistic/padding-line-between-statements,@typescript-eslint/no-unsafe-return
165
+ return Object.fromEntries(query.split('&').map(pair => pair.split('=').map(decodeURIComponent)));
166
+ }
167
+ function getAnchorToken() {
168
+ const params = getAnchorParams();
169
+ return Object.fromEntries(Object.entries(params).filter(([key]) => anchorParams.includes(key)));
170
+ }
171
+ function isAnchorToken(anchorToken) {
172
+ const queryKeys = Object.keys(anchorToken);
173
+ return anchorParams.every(key => queryKeys.includes(key));
174
+ }
175
+ function cleanAnchorParams() {
176
+ const query = window.location.hash.replace(/^#\/?/, '');
177
+ const targets = [...anchorParams, 'error', 'message'];
178
+ const newHash = query
179
+ .split('&')
180
+ .filter(pair => !targets.includes(decodeURIComponent(pair.split('=')[0])))
181
+ .join('&');
182
+ if (newHash) {
183
+ window.location.hash = newHash;
184
+ }
185
+ else {
186
+ const { origin, pathname, search } = window.location;
187
+ window.history.replaceState(null, document.title, `${origin}${pathname}${search}`);
188
+ }
189
+ }
190
+ function isValidState(state) {
191
+ const key = `${storagePrefix}${statePrefix}${state}`;
192
+ const found = window.localStorage.getItem(key) != null;
193
+ if (found) {
194
+ window.localStorage.removeItem(key);
195
+ }
196
+ return found;
197
+ }
198
+ function anchorContainsError() {
199
+ return 'error' in getAnchorParams();
200
+ }
201
+ function generateState() {
202
+ // @ts-expect-error TS2365
203
+ // eslint-disable-next-line @typescript-eslint/restrict-plus-operands
204
+ const state = ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, // @ts-expect-error TS2362
205
+ // @ts-expect-error TS2362
206
+ c => (c ^ ((Math.random() * 256) & (0x0f >>> (c >>> 2)))).toString(16));
207
+ const key = `${storagePrefix}${statePrefix}${state}`;
208
+ window.localStorage.setItem(key, `${Date.now()}`);
209
+ return state;
210
+ }
211
+ class OAuthError extends Error {
212
+ constructor(message, error) {
213
+ super(message);
214
+ this.error = String(error);
215
+ }
216
+ toString() {
217
+ let error = this.error;
218
+ if (error.includes('_')) {
219
+ error = error.replace('_', ' ').replace(/^./, c => c.toUpperCase());
220
+ }
221
+ return this.message ? `${error}: ${this.message}` : error;
222
+ }
223
+ }
224
+ function getError() {
225
+ const params = getAnchorParams();
226
+ return params.message
227
+ ? new OAuthError(params.message, params.error)
228
+ : new OAuthError(titleCase(params.error), params.error);
229
+ }
230
+ /**
231
+ * Our goal is to support even obsolete platforms (ES2017+ / Node.js 8.10+).
232
+ * This is a small polyfill for possibly missing method used in our codebase.
233
+ */
234
+ if (!Object.fromEntries) { // eslint-disable-next-line arrow-body-style
235
+ Object.fromEntries = (entries) => {
236
+ return Array.from(entries).reduce((object, entry) => {
237
+ if (!Array.isArray(entry)) {
238
+ throw new TypeError(`Iterator value ${entry} is not an entry object.`);
239
+ }
240
+ object[`${entry[0]}`] = entry[1];
241
+ return object;
242
+ }, {});
243
+ };
244
+ }
245
+ //# sourceMappingURL=oauth.js.map