meet-my-ride 1.5.11 → 1.5.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client.d.ts +0 -2
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +8 -5
- package/dist/client.js.map +1 -1
- package/dist/decorators/retryOn401.decorator.d.ts.map +1 -1
- package/dist/decorators/retryOn401.decorator.js +4 -17
- package/dist/decorators/retryOn401.decorator.js.map +1 -1
- package/dist/models/http/api.types.d.ts +8 -1
- package/dist/models/http/api.types.d.ts.map +1 -1
- package/dist/models/http/api.types.js +9 -46
- package/dist/models/http/api.types.js.map +1 -1
- package/dist/models/meet/meet.types.d.ts +2 -1
- package/dist/models/meet/meet.types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/client.d.ts
CHANGED
|
@@ -13,9 +13,7 @@ export declare class MeetMyRideClient {
|
|
|
13
13
|
constructor(baseUrl: string, apiKey?: string);
|
|
14
14
|
/** Manually set or remove the Authorization header */
|
|
15
15
|
setToken(token: string | null): Promise<void>;
|
|
16
|
-
/** Handles HTTP errors including automatic token refresh */
|
|
17
16
|
private handleError;
|
|
18
|
-
/** Refresh access token using stored refresh token */
|
|
19
17
|
private refreshAccessToken;
|
|
20
18
|
}
|
|
21
19
|
//# sourceMappingURL=client.d.ts.map
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,aAAa,EAAkC,MAAM,OAAO,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,OAAO,WAAW,MAAM,8BAA8B,CAAC;AAIvD,qBAAa,gBAAgB;IACzB,SAAgB,IAAI,EAAE,aAAa,CAAC;IAEpC,SAAgB,IAAI,EAAE,WAAW,CAAC;IAClC,SAAgB,IAAI,EAAE,WAAW,CAAC;IAClC,SAAgB,IAAI,EAAE,WAAW,CAAC;IAElC,OAAO,CAAC,YAAY,CAAsB;IAC1C,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,YAAY,CAAmC;gBAE3C,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;IAoC5C,sDAAsD;IACzC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,aAAa,EAAkC,MAAM,OAAO,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAE3D,OAAO,WAAW,MAAM,8BAA8B,CAAC;AAIvD,qBAAa,gBAAgB;IACzB,SAAgB,IAAI,EAAE,aAAa,CAAC;IAEpC,SAAgB,IAAI,EAAE,WAAW,CAAC;IAClC,SAAgB,IAAI,EAAE,WAAW,CAAC;IAClC,SAAgB,IAAI,EAAE,WAAW,CAAC;IAElC,OAAO,CAAC,YAAY,CAAsB;IAC1C,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,YAAY,CAAmC;gBAE3C,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;IAoC5C,sDAAsD;IACzC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAQ5C,WAAW;YA6CX,kBAAkB;CAenC"}
|
package/dist/client.js
CHANGED
|
@@ -42,27 +42,30 @@ export class MeetMyRideClient {
|
|
|
42
42
|
delete this.http.defaults.headers["Authorization"];
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
|
-
/** Handles HTTP errors including automatic token refresh */
|
|
46
45
|
async handleError(error) {
|
|
47
46
|
const originalRequest = error.config;
|
|
48
47
|
const refreshToken = await this.tokenStorage.getRefreshToken();
|
|
49
|
-
|
|
48
|
+
// ----- HANDLE 401 -----
|
|
49
|
+
if (error.response?.status === 401 && refreshToken && !originalRequest._retry) {
|
|
50
50
|
originalRequest._retry = true;
|
|
51
|
+
// If NO refresh process running → start one
|
|
51
52
|
if (!this.isRefreshing) {
|
|
52
53
|
this.isRefreshing = true;
|
|
53
54
|
try {
|
|
54
55
|
const newToken = await this.refreshAccessToken();
|
|
55
56
|
this.isRefreshing = false;
|
|
57
|
+
// Resume all queued requests
|
|
56
58
|
this.refreshQueue.forEach(cb => cb(newToken));
|
|
57
59
|
this.refreshQueue = [];
|
|
58
60
|
}
|
|
59
|
-
catch (
|
|
61
|
+
catch (refreshError) {
|
|
60
62
|
this.isRefreshing = false;
|
|
61
63
|
this.refreshQueue = [];
|
|
62
64
|
await this.tokenStorage.clear();
|
|
63
|
-
return Promise.reject(
|
|
65
|
+
return Promise.reject(refreshError);
|
|
64
66
|
}
|
|
65
67
|
}
|
|
68
|
+
// If a refresh is already in progress → wait
|
|
66
69
|
return new Promise((resolve, reject) => {
|
|
67
70
|
this.refreshQueue.push((token) => {
|
|
68
71
|
if (!originalRequest.headers)
|
|
@@ -72,9 +75,9 @@ export class MeetMyRideClient {
|
|
|
72
75
|
});
|
|
73
76
|
});
|
|
74
77
|
}
|
|
78
|
+
// ----- NORMALIZE OTHER ERRORS -----
|
|
75
79
|
throw parseApiError(error);
|
|
76
80
|
}
|
|
77
|
-
/** Refresh access token using stored refresh token */
|
|
78
81
|
async refreshAccessToken() {
|
|
79
82
|
const refreshToken = await this.tokenStorage.getRefreshToken();
|
|
80
83
|
if (!refreshToken)
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAwD,MAAM,OAAO,CAAC;AAC7E,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,WAAW,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAGxD,MAAM,OAAO,gBAAgB;IAWzB,YAAY,OAAe,EAAE,MAAe;QAHpC,iBAAY,GAAG,KAAK,CAAC;QACrB,iBAAY,GAAgC,EAAE,CAAC;QAGnD,IAAI,CAAC,YAAY,GAAG,IAAI,mBAAmB,EAAE,CAAC;QAE9C,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC;YACrB,OAAO,EAAE,OAAO;YAChB,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,eAAe,EAAE,IAAI;SACxB,CAAC,CAAC;QAGH,IAAI,MAAM,EAAE,CAAC;YACT,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,MAAM,EAAE,CAAC;QACrE,CAAC;QAED,6BAA6B;QAC7B,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAC,MAAM,EAAC,EAAE;YAC9C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC;YACvD,IAAI,KAAK,EAAE,CAAC;gBACR,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;gBACtC,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,KAAK,EAAE,CAAC;YACxD,CAAC;YACD,OAAO,MAAM,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,8CAA8C;QAC9C,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAC3B,QAAQ,CAAC,EAAE,CAAC,QAAQ,EACpB,KAAK,EAAC,KAAK,EAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAC7C,CAAC;QAEF,WAAW;QACX,IAAI,CAAC,IAAI,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IAC9D,CAAC;IAED,sDAAsD;IAC/C,KAAK,CAAC,QAAQ,CAAC,KAAoB;QACtC,IAAI,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,KAAK,EAAE,CAAC;QACpE,CAAC;aAAM,CAAC;YACJ,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACvD,CAAC;IACL,CAAC;
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retryOn401.decorator.d.ts","sourceRoot":"","sources":["../../src/decorators/retryOn401.decorator.ts"],"names":[],"mappings":"AAEA,wBAAgB,UAAU,CAClB,MAAM,EAAE,GAAG,EACX,WAAW,EAAE,MAAM,GAAG,MAAM,EAC5B,UAAU,EAAE,kBAAkB,GACnC,kBAAkB,
|
|
1
|
+
{"version":3,"file":"retryOn401.decorator.d.ts","sourceRoot":"","sources":["../../src/decorators/retryOn401.decorator.ts"],"names":[],"mappings":"AAEA,wBAAgB,UAAU,CAClB,MAAM,EAAE,GAAG,EACX,WAAW,EAAE,MAAM,GAAG,MAAM,EAC5B,UAAU,EAAE,kBAAkB,GACnC,kBAAkB,CAiBpB"}
|
|
@@ -1,26 +1,13 @@
|
|
|
1
1
|
export function retryOn401(target, propertyKey, descriptor) {
|
|
2
2
|
const originalMethod = descriptor.value;
|
|
3
|
-
if (typeof originalMethod !== "function") {
|
|
4
|
-
throw new Error("retryOn401 can only be applied to methods");
|
|
5
|
-
}
|
|
6
3
|
descriptor.value = async function (...args) {
|
|
7
|
-
const self = this;
|
|
8
4
|
try {
|
|
9
|
-
return await originalMethod.apply(
|
|
5
|
+
return await originalMethod.apply(this, args);
|
|
10
6
|
}
|
|
11
7
|
catch (err) {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
if (!refreshToken)
|
|
16
|
-
throw error;
|
|
17
|
-
const res = await self.http.post("/users/refresh", { refreshToken });
|
|
18
|
-
const { accessToken, refreshToken: newRefreshToken } = res.data;
|
|
19
|
-
await self.tokenStorage.setAccessToken(accessToken);
|
|
20
|
-
await self.tokenStorage.setRefreshToken(newRefreshToken);
|
|
21
|
-
self.http.defaults.headers["Authorization"] = `Bearer ${accessToken}`;
|
|
22
|
-
// Retry original method
|
|
23
|
-
return await originalMethod.apply(self, args);
|
|
8
|
+
if (err.status === 401) {
|
|
9
|
+
// The global interceptor will refresh the token.
|
|
10
|
+
return await originalMethod.apply(this, args);
|
|
24
11
|
}
|
|
25
12
|
throw err;
|
|
26
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retryOn401.decorator.js","sourceRoot":"","sources":["../../src/decorators/retryOn401.decorator.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,UAAU,CAClB,MAAW,EACX,WAA4B,EAC5B,UAA8B;IAElC,MAAM,cAAc,GAAG,UAAU,CAAC,KAAK,CAAC;IAExC,
|
|
1
|
+
{"version":3,"file":"retryOn401.decorator.js","sourceRoot":"","sources":["../../src/decorators/retryOn401.decorator.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,UAAU,CAClB,MAAW,EACX,WAA4B,EAC5B,UAA8B;IAElC,MAAM,cAAc,GAAG,UAAU,CAAC,KAAK,CAAC;IAExC,UAAU,CAAC,KAAK,GAAG,KAAK,WAAW,GAAG,IAAW;QAC7C,IAAI,CAAC;YACD,OAAO,MAAM,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAChB,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACrB,iDAAiD;gBACjD,OAAO,MAAM,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAClD,CAAC;YAED,MAAM,GAAG,CAAC;QACd,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,UAAU,CAAC;AACtB,CAAC"}
|
|
@@ -1,8 +1,15 @@
|
|
|
1
|
+
import { AxiosError } from "axios";
|
|
1
2
|
export declare class ApiError extends Error {
|
|
2
3
|
status: number;
|
|
3
4
|
code: string;
|
|
4
5
|
details?: any;
|
|
5
6
|
constructor(status: number, code: string, message: string, details?: any);
|
|
6
7
|
}
|
|
7
|
-
export declare function parseApiError(error:
|
|
8
|
+
export declare function parseApiError(error: AxiosError): {
|
|
9
|
+
url: string | undefined;
|
|
10
|
+
method: string | undefined;
|
|
11
|
+
status: number;
|
|
12
|
+
message: any;
|
|
13
|
+
errors: any;
|
|
14
|
+
};
|
|
8
15
|
//# sourceMappingURL=api.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.types.d.ts","sourceRoot":"","sources":["../../../src/models/http/api.types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"api.types.d.ts","sourceRoot":"","sources":["../../../src/models/http/api.types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAiB,MAAM,OAAO,CAAC;AAElD,qBAAa,QAAS,SAAQ,KAAK;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,GAAG,CAAC;gBAEF,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG;CAM3E;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU;;;;;;EAU9C"}
|
|
@@ -7,51 +7,14 @@ export class ApiError extends Error {
|
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
9
|
export function parseApiError(error) {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
}
|
|
19
|
-
return buildApiErrorFromResponse(response);
|
|
20
|
-
}
|
|
21
|
-
function buildApiErrorFromResponse(response) {
|
|
22
|
-
const status = response.status;
|
|
23
|
-
const body = typeof response.data === "object" ? response.data : null;
|
|
24
|
-
const code = body?.code ||
|
|
25
|
-
defaultCodeForStatus(status);
|
|
26
|
-
const message = body?.message ||
|
|
27
|
-
defaultMessageForStatus(status);
|
|
28
|
-
const details = body?.details;
|
|
29
|
-
return new ApiError(status, code, message, details);
|
|
30
|
-
}
|
|
31
|
-
// ---------- Helpers ---------- //
|
|
32
|
-
function isAxiosError(error) {
|
|
33
|
-
return error && error.isAxiosError;
|
|
34
|
-
}
|
|
35
|
-
function defaultCodeForStatus(status) {
|
|
36
|
-
switch (status) {
|
|
37
|
-
case 400: return "ERR_BAD_REQUEST";
|
|
38
|
-
case 401: return "ERR_UNAUTHORIZED";
|
|
39
|
-
case 403: return "ERR_FORBIDDEN";
|
|
40
|
-
case 404: return "ERR_NOT_FOUND";
|
|
41
|
-
case 429: return "ERR_RATE_LIMIT";
|
|
42
|
-
case 500: return "ERR_SERVER";
|
|
43
|
-
default: return "ERR_GENERIC";
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
function defaultMessageForStatus(status) {
|
|
47
|
-
switch (status) {
|
|
48
|
-
case 400: return "Bad request";
|
|
49
|
-
case 401: return "Unauthorized";
|
|
50
|
-
case 403: return "Forbidden";
|
|
51
|
-
case 404: return "Not found";
|
|
52
|
-
case 429: return "Too many requests — please slow down";
|
|
53
|
-
case 500: return "Server error";
|
|
54
|
-
default: return "Unexpected error";
|
|
55
|
-
}
|
|
10
|
+
return {
|
|
11
|
+
url: error.config?.url,
|
|
12
|
+
method: error.config?.method,
|
|
13
|
+
status: error.response?.status ?? 0,
|
|
14
|
+
message: error.response?.data?.title
|
|
15
|
+
?? error.response?.data?.message
|
|
16
|
+
?? error.message,
|
|
17
|
+
errors: error.response?.data?.errors ?? null
|
|
18
|
+
};
|
|
56
19
|
}
|
|
57
20
|
//# sourceMappingURL=api.types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.types.js","sourceRoot":"","sources":["../../../src/models/http/api.types.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,QAAS,SAAQ,KAAK;IAK/B,YAAY,MAAc,EAAE,IAAY,EAAE,OAAe,EAAE,OAAa;QACpE,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;CACJ;AAED,MAAM,UAAU,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"api.types.js","sourceRoot":"","sources":["../../../src/models/http/api.types.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,QAAS,SAAQ,KAAK;IAK/B,YAAY,MAAc,EAAE,IAAY,EAAE,OAAe,EAAE,OAAa;QACpE,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;CACJ;AAED,MAAM,UAAU,aAAa,CAAC,KAAiB;IAC3C,OAAO;QACH,GAAG,EAAE,KAAK,CAAC,MAAM,EAAE,GAAG;QACtB,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM;QAC5B,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC;QACnC,OAAO,EAAG,KAAK,CAAC,QAAQ,EAAE,IAAY,EAAE,KAAK;eACjC,KAAK,CAAC,QAAQ,EAAE,IAAY,EAAE,OAAO;eACtC,KAAK,CAAC,OAAO;QACxB,MAAM,EAAG,KAAK,CAAC,QAAQ,EAAE,IAAY,EAAE,MAAM,IAAI,IAAI;KACxD,CAAC;AACN,CAAC"}
|
|
@@ -9,7 +9,7 @@ export interface MeetBase {
|
|
|
9
9
|
latitude: number;
|
|
10
10
|
longitude: number;
|
|
11
11
|
date: Date;
|
|
12
|
-
|
|
12
|
+
AllowedVehicles: number;
|
|
13
13
|
}
|
|
14
14
|
export interface Meet extends MeetBase {
|
|
15
15
|
id: string;
|
|
@@ -39,6 +39,7 @@ export interface GeocodeResult {
|
|
|
39
39
|
lon: string;
|
|
40
40
|
displayName: string;
|
|
41
41
|
address: Address;
|
|
42
|
+
type: string;
|
|
42
43
|
}
|
|
43
44
|
export interface Address {
|
|
44
45
|
placeId: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meet.types.d.ts","sourceRoot":"","sources":["../../../src/models/meet/meet.types.ts"],"names":[],"mappings":"AAAA,oBAAY,QAAQ;IAChB,GAAG,IAAA;IACH,IAAI,IAAA;IACJ,IAAI,IAAA;CACP;AAGD,MAAM,WAAW,QAAQ;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,IAAI,CAAC;IACX,
|
|
1
|
+
{"version":3,"file":"meet.types.d.ts","sourceRoot":"","sources":["../../../src/models/meet/meet.types.ts"],"names":[],"mappings":"AAAA,oBAAY,QAAQ;IAChB,GAAG,IAAA;IACH,IAAI,IAAA;IACJ,IAAI,IAAA;CACP;AAGD,MAAM,WAAW,QAAQ;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,IAAI,CAAC;IACX,eAAe,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,IAAK,SAAQ,QAAQ;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,YAAY,EAAE,gBAAgB,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,iBAAkB,SAAQ,QAAQ;CAAG;AAEtD,MAAM,WAAW,iBAAkB,SAAQ,QAAQ;CAAG;AAEtD,MAAM,WAAW,gBAAgB;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,yBAAyB;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,aAAa,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,OAAO;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB"}
|