@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,21 @@
1
+ import { svgRevivers } from './svg.js';
2
+ import { defaultListHeader, getSearchParams, request, } from '../utils.js';
3
+ export const svgSetRevivers = {
4
+ supports_interactive: undefined,
5
+ supports_mapcreator: undefined,
6
+ supports_v3: undefined,
7
+ order: undefined,
8
+ };
9
+ export async function listSvgSetSvgs(svgSetId) {
10
+ const pathname = `/v1/svgs/sets/${svgSetId}/items`;
11
+ const query = getSearchParams({
12
+ search: {
13
+ supports_mapcreator: '1',
14
+ },
15
+ sort: 'order,id',
16
+ });
17
+ const path = `${pathname}?${query}`;
18
+ const options = { revivers: svgRevivers };
19
+ return request(path, null, defaultListHeader, options);
20
+ }
21
+ //# sourceMappingURL=svgSet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"svgSet.js","sourceRoot":"","sources":["../../src/api/svgSet.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,WAAW,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,EAML,iBAAiB,EACjB,eAAe,EACf,OAAO,GACR,MAAM,aAAa,CAAC;AAsBrB,MAAM,CAAC,MAAM,cAAc,GAAgC;IACzD,oBAAoB,EAAE,SAAS;IAC/B,mBAAmB,EAAE,SAAS;IAC9B,WAAW,EAAE,SAAS;IACtB,KAAK,EAAE,SAAS;CACjB,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,QAAgB;IACnD,MAAM,QAAQ,GAAG,iBAAiB,QAAQ,QAAQ,CAAC;IACnD,MAAM,KAAK,GAAG,eAAe,CAAC;QAC5B,MAAM,EAAE;YACN,mBAAmB,EAAE,GAAG;SACzB;QACD,IAAI,EAAE,UAAU;KACjB,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,GAAG,QAAQ,IAAI,KAAK,EAAE,CAAC;IACpC,MAAM,OAAO,GAAG,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;IAM1C,OAAO,OAAO,CAAmB,IAAI,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,CAAC,CAAC;AAC3E,CAAC"}
@@ -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,127 @@
1
+ import { fontFamilyRevivers } from './fontFamily.js';
2
+ import { svgSetRevivers } from './svgSet.js';
3
+ import { layerRevivers } from './layer.js';
4
+ import { svgRevivers } from './svg.js';
5
+ import { listJobs } from './apiCommon.js';
6
+ import { defaultListHeader, deletedNoneParam, getSearchParams, myUser, request, toApiType, } from '../utils.js';
7
+ export const userRevivers = {
8
+ organisation_id: undefined,
9
+ hide_messages: undefined,
10
+ phone: undefined,
11
+ profession: undefined,
12
+ country: undefined,
13
+ city: undefined,
14
+ address: undefined,
15
+ tips: undefined,
16
+ tags: undefined,
17
+ newsletter_consent: undefined,
18
+ registration_complete: undefined,
19
+ notifications_checked_at: undefined,
20
+ referral: undefined,
21
+ delete_requested: undefined,
22
+ delete_request_notified: undefined,
23
+ stripe_ref: undefined,
24
+ pm_type: undefined,
25
+ pm_last_four: undefined,
26
+ trial_ends_at: undefined,
27
+ settings: undefined,
28
+ permissions: undefined,
29
+ roles: undefined,
30
+ trialExpiresAt: (data) => { var _a; return (_a = data.trial_expires_at) !== null && _a !== void 0 ? _a : undefined; },
31
+ stripeId: (data) => { var _a; return (_a = data.stripe_id) !== null && _a !== void 0 ? _a : undefined; },
32
+ };
33
+ export async function getUser() {
34
+ const path = `/v1/users/${myUser}`;
35
+ const options = { revivers: userRevivers };
36
+ return request(path, null, null, options);
37
+ }
38
+ export async function updateUser(userId, fields) {
39
+ const path = `/v1/users/${userId}`;
40
+ const body = toApiType(fields);
41
+ return request(path, body, null, { method: 'PATCH' });
42
+ }
43
+ export async function deleteUser(userId) {
44
+ const path = `/v1/users/${userId}`;
45
+ return request(path, null, null, { method: 'DELETE' });
46
+ }
47
+ export async function listUserFontFamilies() {
48
+ const pathname = `/v1/users/${myUser}/font-families`;
49
+ const query = getSearchParams({ sort: 'order' });
50
+ const path = `${pathname}?${query}`;
51
+ const options = { revivers: fontFamilyRevivers };
52
+ return request(path, null, defaultListHeader, options);
53
+ }
54
+ export async function listUserHatchingSvgs() {
55
+ const pathname = `/v1/users/${myUser}/hatching-svgs`;
56
+ const query = getSearchParams({ sort: 'order' });
57
+ const path = `${pathname}?${query}`;
58
+ const options = { revivers: svgRevivers };
59
+ return request(path, null, defaultListHeader, options);
60
+ }
61
+ export async function listUserJobs(userId, title, page, options) {
62
+ return listJobs(`/v1/users/${userId}/jobs`, title, page, options);
63
+ }
64
+ export async function listUserFolders() {
65
+ const path = `/v1/users/${myUser}/folders`;
66
+ return request(path);
67
+ }
68
+ export async function createUserFolder(name) {
69
+ const path = `/v1/users/${myUser}/folders`;
70
+ const body = { name };
71
+ return request(path, body);
72
+ }
73
+ export async function deleteUserFolder(folderId) {
74
+ const path = `/v1/users/${myUser}/folders/${folderId}`;
75
+ return request(path, null, null, { method: 'DELETE' });
76
+ }
77
+ export async function renameUserFolder(folderId, name) {
78
+ const path = `/v1/users/${myUser}/folders/${folderId}`;
79
+ const body = { name };
80
+ return request(path, body, null, { method: 'PATCH' });
81
+ }
82
+ export async function listUserLayers() {
83
+ const pathname = `/v1/users/${myUser}/layers`;
84
+ const query = getSearchParams({
85
+ search: {
86
+ pangaea_ready: '1',
87
+ },
88
+ sort: 'order',
89
+ });
90
+ const path = `${pathname}?${query}`;
91
+ const options = { revivers: layerRevivers };
92
+ return request(path, null, defaultListHeader, options);
93
+ }
94
+ export async function listUserSvgSets() {
95
+ const pathname = `/v1/users/${myUser}/svg-sets`;
96
+ const query = getSearchParams({
97
+ search: {
98
+ supports_mapcreator: '1',
99
+ type: '!:sprite',
100
+ },
101
+ sort: 'order',
102
+ });
103
+ const path = `${pathname}?${query}`;
104
+ const options = { revivers: svgSetRevivers };
105
+ return request(path, null, defaultListHeader, options);
106
+ }
107
+ export async function findJobShares(jobId) {
108
+ const pathname = `/v1/users/${myUser}/job-shares`;
109
+ const query = getSearchParams({ search: { job_id: jobId } });
110
+ const path = `${pathname}?${query}`;
111
+ return request(path);
112
+ }
113
+ export async function createUserTrial(userId, data) {
114
+ const pathname = `/v1/users/${userId}/trial`;
115
+ const path = `${pathname}?${deletedNoneParam}`;
116
+ const body = toApiType(data);
117
+ return request(path, body);
118
+ }
119
+ export async function sendUserConfirmationEmail(userId) {
120
+ const path = `/v1/users/${userId}/confirm`;
121
+ return request(path, null, null, { method: 'POST' });
122
+ }
123
+ export async function getUserBillingPortalUrl(userId) {
124
+ const path = `/v1/users/${userId}/billing-portal-url`;
125
+ return request(path).then(({ billingPortalUrl }) => billingPortalUrl);
126
+ }
127
+ //# 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/esm/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/esm/index.js 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 { lastJobRevision, myOrganisations, myUser, APIError, HTTPError, NetworkError, getSearchParams, request, } from './utils.js';
26
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","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,EAQL,eAAe,EACf,eAAe,EACf,MAAM,EACN,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,eAAe,EACf,OAAO,GACR,MAAM,YAAY,CAAC"}
package/esm/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/esm/oauth.js ADDED
@@ -0,0 +1,237 @@
1
+ export let apiHost = '';
2
+ export let token = null;
3
+ let apiClientId = '';
4
+ let callbackUrl = '';
5
+ let oauthScopes = ['*'];
6
+ const anchorParams = ['access_token', 'token_type', 'expires_in', 'state'];
7
+ const storagePrefix = '_m4n_';
8
+ const statePrefix = 'oauth_state_';
9
+ const storageName = 'api_token';
10
+ const dummyTokenExpires = new Date('2100-01-01T01:00:00');
11
+ const titleCase = (str) => String(str).toLowerCase().replace(/\b\w/g, c => c.toUpperCase());
12
+ /**
13
+ * Setup internal structures to use dummy authentication flow
14
+ *
15
+ * @param {string} apiUrl - Full API URL
16
+ * @param {string} oauthToken - OAuth Token
17
+ */
18
+ export function initDummyFlow(apiUrl, oauthToken) {
19
+ const parts = oauthToken.includes(' ') ? oauthToken.split(' ', 2) : ['Bearer', oauthToken];
20
+ apiHost = apiUrl.replace(/\/+$/, '');
21
+ token = {
22
+ type: titleCase(parts[0]),
23
+ token: parts[1],
24
+ expires: dummyTokenExpires,
25
+ toString() {
26
+ return `${this.type} ${this.token}`;
27
+ },
28
+ };
29
+ }
30
+ /**
31
+ * Setup internal structures to use implicit authentication flow
32
+ *
33
+ * @param {string} apiUrl - Full API URL
34
+ * @param {string} clientId - OAuth client id
35
+ * @param {string} [redirectUrl] - Callback URL
36
+ * @param {string[]} [scopes] - A list of required scopes
37
+ */
38
+ export function initImplicitFlow(apiUrl, clientId, redirectUrl = '', scopes = ['*']) {
39
+ apiHost = apiUrl.replace(/\/+$/, '');
40
+ apiClientId = String(clientId);
41
+ callbackUrl = String(redirectUrl || window.location.href.split('#')[0]);
42
+ oauthScopes = scopes;
43
+ {
44
+ const key = `${storagePrefix}${storageName}`;
45
+ const data = window.localStorage.getItem(key);
46
+ if (data) {
47
+ try {
48
+ const obj = JSON.parse(data);
49
+ if (typeof obj.type === 'string' &&
50
+ typeof obj.token === 'string' &&
51
+ typeof obj.expires === 'string' &&
52
+ new Date(obj.expires) > new Date()) {
53
+ token = {
54
+ type: titleCase(obj.type),
55
+ token: obj.token,
56
+ expires: new Date(obj.expires),
57
+ toString() {
58
+ return `${this.type} ${this.token}`;
59
+ },
60
+ };
61
+ }
62
+ else {
63
+ window.localStorage.removeItem(key);
64
+ }
65
+ }
66
+ catch (e) {
67
+ /* */
68
+ }
69
+ }
70
+ }
71
+ {
72
+ const obj = getAnchorToken();
73
+ if (isAnchorToken(obj)) {
74
+ // We'll not go there if anchor contains error and/or message
75
+ // This means that anchor parameters will be preserved for the next processing
76
+ cleanAnchorParams();
77
+ const expires = new Date(Date.now() + Number(obj.expires_in) * 1000);
78
+ if (isValidState(obj.state) && expires > new Date()) {
79
+ token = {
80
+ type: titleCase(obj.token_type),
81
+ token: obj.access_token,
82
+ expires,
83
+ toString() {
84
+ return `${this.type} ${this.token}`;
85
+ },
86
+ };
87
+ const key = `${storagePrefix}${storageName}`;
88
+ const data = { type: token.type, token: token.token, expires: expires.toUTCString() };
89
+ window.localStorage.setItem(key, JSON.stringify(data));
90
+ }
91
+ else {
92
+ // TODO: add some logic to handle this
93
+ // throw Error('Invalid state in url');
94
+ }
95
+ }
96
+ }
97
+ if (authenticated()) {
98
+ const href = sessionStorage.getItem('redirect-url');
99
+ if (href) {
100
+ sessionStorage.removeItem('redirect-url');
101
+ window.history.replaceState(null, document.title, href);
102
+ }
103
+ }
104
+ }
105
+ export async function authenticate() {
106
+ return new Promise(() => {
107
+ if (anchorContainsError()) {
108
+ console.error(getError());
109
+ cleanAnchorParams();
110
+ }
111
+ forget();
112
+ sessionStorage.setItem('redirect-url', window.location.href);
113
+ window.location.assign(buildRedirectUrl());
114
+ });
115
+ }
116
+ export function authenticated() {
117
+ return token != null && token.expires > new Date() && (token.expires.valueOf() === dummyTokenExpires.valueOf() ||
118
+ !!window.localStorage.getItem(`${storagePrefix}${storageName}`));
119
+ }
120
+ export async function logout() {
121
+ if (token) {
122
+ await fetch(`${apiHost}/oauth/logout`, {
123
+ method: 'POST',
124
+ headers: {
125
+ Accept: 'application/json',
126
+ Authorization: token.toString(),
127
+ },
128
+ });
129
+ }
130
+ forget();
131
+ }
132
+ function forget() {
133
+ for (let i = 0; i < window.localStorage.length; ++i) {
134
+ const key = window.localStorage.key(i);
135
+ if (key === null || key === void 0 ? void 0 : key.startsWith(storagePrefix)) {
136
+ window.localStorage.removeItem(key);
137
+ }
138
+ }
139
+ token = null;
140
+ }
141
+ function buildRedirectUrl() {
142
+ const queryParams = new URLSearchParams({
143
+ client_id: apiClientId,
144
+ redirect_uri: callbackUrl,
145
+ response_type: 'token',
146
+ scope: oauthScopes.join(' '),
147
+ state: generateState(),
148
+ });
149
+ return `${apiHost}/oauth/authorize?${queryParams}`;
150
+ }
151
+ function getAnchorQuery() {
152
+ return window.location.hash.replace(/^#\/?/, '');
153
+ }
154
+ function getAnchorParams() {
155
+ const query = getAnchorQuery();
156
+ // eslint-disable-next-line @stylistic/padding-line-between-statements,@typescript-eslint/no-unsafe-return
157
+ return Object.fromEntries(query.split('&').map(pair => pair.split('=').map(decodeURIComponent)));
158
+ }
159
+ function getAnchorToken() {
160
+ const params = getAnchorParams();
161
+ return Object.fromEntries(Object.entries(params).filter(([key]) => anchorParams.includes(key)));
162
+ }
163
+ function isAnchorToken(anchorToken) {
164
+ const queryKeys = Object.keys(anchorToken);
165
+ return anchorParams.every(key => queryKeys.includes(key));
166
+ }
167
+ function cleanAnchorParams() {
168
+ const query = window.location.hash.replace(/^#\/?/, '');
169
+ const targets = [...anchorParams, 'error', 'message'];
170
+ const newHash = query
171
+ .split('&')
172
+ .filter(pair => !targets.includes(decodeURIComponent(pair.split('=')[0])))
173
+ .join('&');
174
+ if (newHash) {
175
+ window.location.hash = newHash;
176
+ }
177
+ else {
178
+ const { origin, pathname, search } = window.location;
179
+ window.history.replaceState(null, document.title, `${origin}${pathname}${search}`);
180
+ }
181
+ }
182
+ function isValidState(state) {
183
+ const key = `${storagePrefix}${statePrefix}${state}`;
184
+ const found = window.localStorage.getItem(key) != null;
185
+ if (found) {
186
+ window.localStorage.removeItem(key);
187
+ }
188
+ return found;
189
+ }
190
+ function anchorContainsError() {
191
+ return 'error' in getAnchorParams();
192
+ }
193
+ function generateState() {
194
+ // @ts-expect-error TS2365
195
+ // eslint-disable-next-line @typescript-eslint/restrict-plus-operands
196
+ const state = ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, // @ts-expect-error TS2362
197
+ // @ts-expect-error TS2362
198
+ c => (c ^ ((Math.random() * 256) & (0x0f >>> (c >>> 2)))).toString(16));
199
+ const key = `${storagePrefix}${statePrefix}${state}`;
200
+ window.localStorage.setItem(key, `${Date.now()}`);
201
+ return state;
202
+ }
203
+ class OAuthError extends Error {
204
+ constructor(message, error) {
205
+ super(message);
206
+ this.error = String(error);
207
+ }
208
+ toString() {
209
+ let error = this.error;
210
+ if (error.includes('_')) {
211
+ error = error.replace('_', ' ').replace(/^./, c => c.toUpperCase());
212
+ }
213
+ return this.message ? `${error}: ${this.message}` : error;
214
+ }
215
+ }
216
+ function getError() {
217
+ const params = getAnchorParams();
218
+ return params.message
219
+ ? new OAuthError(params.message, params.error)
220
+ : new OAuthError(titleCase(params.error), params.error);
221
+ }
222
+ /**
223
+ * Our goal is to support even obsolete platforms (ES2017+ / Node.js 8.10+).
224
+ * This is a small polyfill for possibly missing method used in our codebase.
225
+ */
226
+ if (!Object.fromEntries) { // eslint-disable-next-line arrow-body-style
227
+ Object.fromEntries = (entries) => {
228
+ return Array.from(entries).reduce((object, entry) => {
229
+ if (!Array.isArray(entry)) {
230
+ throw new TypeError(`Iterator value ${entry} is not an entry object.`);
231
+ }
232
+ object[`${entry[0]}`] = entry[1];
233
+ return object;
234
+ }, {});
235
+ };
236
+ }
237
+ //# sourceMappingURL=oauth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth.js","sourceRoot":"","sources":["../src/oauth.ts"],"names":[],"mappings":"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"}