shred-api-client 1.0.1 → 1.0.3
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/index.d.mts +26 -6
- package/dist/index.d.ts +26 -6
- package/dist/index.js +39 -59
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +39 -60
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -4,13 +4,33 @@ type Context = {
|
|
|
4
4
|
};
|
|
5
5
|
|
|
6
6
|
interface UserAPISchema {
|
|
7
|
-
getUserInfo: (context: Context) =>
|
|
7
|
+
getUserInfo: (context: Context) => Promise<User>;
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
type Preferences = {
|
|
10
|
+
primaryColor?: string;
|
|
11
|
+
secondaryColor?: string;
|
|
12
|
+
facebookLink?: string;
|
|
13
|
+
instagramLink?: string;
|
|
14
|
+
bRoll?: boolean;
|
|
15
|
+
logo?: string;
|
|
16
|
+
};
|
|
17
|
+
type User = {
|
|
18
|
+
id: string;
|
|
19
|
+
name: string;
|
|
20
|
+
email: string;
|
|
21
|
+
customerId: string;
|
|
22
|
+
registered: boolean;
|
|
23
|
+
profession?: string;
|
|
24
|
+
registeredAt: number;
|
|
25
|
+
fcmToken?: string;
|
|
26
|
+
photoUrl?: string;
|
|
27
|
+
preferences?: Preferences;
|
|
28
|
+
invitationCode?: string;
|
|
12
29
|
};
|
|
13
30
|
|
|
14
|
-
declare
|
|
31
|
+
declare class ShredAPI {
|
|
32
|
+
user: UserAPISchema;
|
|
33
|
+
constructor();
|
|
34
|
+
}
|
|
15
35
|
|
|
16
|
-
export { ShredAPI };
|
|
36
|
+
export { ShredAPI as default };
|
package/dist/index.d.ts
CHANGED
|
@@ -4,13 +4,33 @@ type Context = {
|
|
|
4
4
|
};
|
|
5
5
|
|
|
6
6
|
interface UserAPISchema {
|
|
7
|
-
getUserInfo: (context: Context) =>
|
|
7
|
+
getUserInfo: (context: Context) => Promise<User>;
|
|
8
8
|
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
type Preferences = {
|
|
10
|
+
primaryColor?: string;
|
|
11
|
+
secondaryColor?: string;
|
|
12
|
+
facebookLink?: string;
|
|
13
|
+
instagramLink?: string;
|
|
14
|
+
bRoll?: boolean;
|
|
15
|
+
logo?: string;
|
|
16
|
+
};
|
|
17
|
+
type User = {
|
|
18
|
+
id: string;
|
|
19
|
+
name: string;
|
|
20
|
+
email: string;
|
|
21
|
+
customerId: string;
|
|
22
|
+
registered: boolean;
|
|
23
|
+
profession?: string;
|
|
24
|
+
registeredAt: number;
|
|
25
|
+
fcmToken?: string;
|
|
26
|
+
photoUrl?: string;
|
|
27
|
+
preferences?: Preferences;
|
|
28
|
+
invitationCode?: string;
|
|
12
29
|
};
|
|
13
30
|
|
|
14
|
-
declare
|
|
31
|
+
declare class ShredAPI {
|
|
32
|
+
user: UserAPISchema;
|
|
33
|
+
constructor();
|
|
34
|
+
}
|
|
15
35
|
|
|
16
|
-
export { ShredAPI };
|
|
36
|
+
export { ShredAPI as default };
|
package/dist/index.js
CHANGED
|
@@ -16,26 +16,6 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
16
|
return to;
|
|
17
17
|
};
|
|
18
18
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
-
var __async = (__this, __arguments, generator) => {
|
|
20
|
-
return new Promise((resolve, reject) => {
|
|
21
|
-
var fulfilled = (value) => {
|
|
22
|
-
try {
|
|
23
|
-
step(generator.next(value));
|
|
24
|
-
} catch (e) {
|
|
25
|
-
reject(e);
|
|
26
|
-
}
|
|
27
|
-
};
|
|
28
|
-
var rejected = (value) => {
|
|
29
|
-
try {
|
|
30
|
-
step(generator.throw(value));
|
|
31
|
-
} catch (e) {
|
|
32
|
-
reject(e);
|
|
33
|
-
}
|
|
34
|
-
};
|
|
35
|
-
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
|
36
|
-
step((generator = generator.apply(__this, __arguments)).next());
|
|
37
|
-
});
|
|
38
|
-
};
|
|
39
19
|
|
|
40
20
|
// src/index.ts
|
|
41
21
|
var src_exports = {};
|
|
@@ -51,37 +31,35 @@ var UserEndpoints = {
|
|
|
51
31
|
|
|
52
32
|
// src/util/HTTPClient.ts
|
|
53
33
|
var HOSTS = {
|
|
54
|
-
prod: "https://api.shredmedia.
|
|
55
|
-
staging: "https://api
|
|
34
|
+
prod: "https://api.shredmedia.co",
|
|
35
|
+
staging: "https://api-staging.shredmedia.co"
|
|
56
36
|
};
|
|
57
37
|
var HTTPClient = class {
|
|
58
38
|
constructor() {
|
|
59
39
|
const env = process.env.ENV;
|
|
60
40
|
this.host = HOSTS[env] || HOSTS.staging;
|
|
61
41
|
}
|
|
62
|
-
makeRequest(uri, method, data, context) {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
throw new Error(`HTTP error! status: ${response.status}`);
|
|
78
|
-
}
|
|
79
|
-
return yield response.json();
|
|
80
|
-
} catch (error) {
|
|
81
|
-
console.error("Error making HTTP request:", error);
|
|
82
|
-
throw error;
|
|
42
|
+
async makeRequest(uri, method, data, context) {
|
|
43
|
+
const headers = new Headers();
|
|
44
|
+
headers.append("Authorization", `Bearer ${context.token}`);
|
|
45
|
+
headers.append("X-Request-ID", context.requestId);
|
|
46
|
+
const config = {
|
|
47
|
+
method,
|
|
48
|
+
headers,
|
|
49
|
+
body: method === "GET" ? null : JSON.stringify(data)
|
|
50
|
+
};
|
|
51
|
+
try {
|
|
52
|
+
const endpoint = this.host + uri;
|
|
53
|
+
const response = await fetch(endpoint, config);
|
|
54
|
+
console.log("Making Request to", endpoint);
|
|
55
|
+
if (!response.ok) {
|
|
56
|
+
throw new Error(`HTTP error! status: ${response.status}`);
|
|
83
57
|
}
|
|
84
|
-
|
|
58
|
+
return await response.json();
|
|
59
|
+
} catch (error) {
|
|
60
|
+
console.error("Error making HTTP request:", error);
|
|
61
|
+
throw error;
|
|
62
|
+
}
|
|
85
63
|
}
|
|
86
64
|
};
|
|
87
65
|
|
|
@@ -90,24 +68,26 @@ var UserAPI = class {
|
|
|
90
68
|
constructor() {
|
|
91
69
|
this.clientHTTP = new HTTPClient();
|
|
92
70
|
}
|
|
93
|
-
getUserInfo(context) {
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
return data;
|
|
102
|
-
});
|
|
71
|
+
async getUserInfo(context) {
|
|
72
|
+
const data = await this.clientHTTP.makeRequest(
|
|
73
|
+
UserEndpoints.GetUserInfo,
|
|
74
|
+
"GET",
|
|
75
|
+
null,
|
|
76
|
+
context
|
|
77
|
+
);
|
|
78
|
+
return data;
|
|
103
79
|
}
|
|
104
80
|
};
|
|
105
81
|
var User_api_default = UserAPI;
|
|
106
82
|
|
|
107
|
-
// src/
|
|
108
|
-
var
|
|
109
|
-
|
|
110
|
-
|
|
83
|
+
// src/model/Api.ts
|
|
84
|
+
var ShredAPI = class {
|
|
85
|
+
constructor() {
|
|
86
|
+
this.user = new User_api_default();
|
|
87
|
+
}
|
|
111
88
|
};
|
|
112
|
-
var
|
|
89
|
+
var Api_default = ShredAPI;
|
|
90
|
+
|
|
91
|
+
// src/index.ts
|
|
92
|
+
var src_default = Api_default;
|
|
113
93
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/model/User.schema.ts","../src/util/HTTPClient.ts","../src/api/User.api.ts"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/model/User.schema.ts","../src/util/HTTPClient.ts","../src/api/User.api.ts","../src/model/Api.ts"],"sourcesContent":["import ShredAPI from \"./model/Api\";\nexport default ShredAPI;\n","import Context from \"./Context\";\n\ninterface UserAPISchema {\n getUserInfo: (context: Context) => Promise<User>;\n}\n\nconst UserEndpoints = {\n GetUserInfo: \"/user/info\",\n};\n\ntype Preferences = {\n primaryColor?: string;\n secondaryColor?: string;\n facebookLink?: string;\n instagramLink?: string;\n bRoll?: boolean;\n logo?: string;\n};\n\ntype User = {\n id: string;\n name: string;\n email: string;\n customerId: string;\n registered: boolean;\n profession?: string;\n registeredAt: number;\n fcmToken?: string;\n photoUrl?: string;\n preferences?: Preferences;\n invitationCode?: string;\n};\n\nexport { User, UserAPISchema, UserEndpoints };\n","import Context from \"./../model/Context\";\n\nconst HOSTS = {\n prod: \"https://api.shredmedia.co\",\n staging: \"https://api-staging.shredmedia.co\",\n};\n\nexport default class HTTPClient {\n private host: string;\n\n constructor() {\n const env = process.env.ENV as \"prod\" | \"staging\";\n this.host = HOSTS[env] || HOSTS.staging;\n }\n\n async makeRequest(\n uri: string,\n method: \"GET\" | \"POST\" | \"PUT\" | \"DELETE\",\n data: any,\n context: Context\n ) {\n const headers = new Headers();\n headers.append(\"Authorization\", `Bearer ${context.token}`);\n headers.append(\"X-Request-ID\", context.requestId);\n\n const config: RequestInit = {\n method: method,\n headers: headers,\n body: method === \"GET\" ? null : JSON.stringify(data),\n };\n\n try {\n const endpoint = this.host + uri;\n const response = await fetch(endpoint, config);\n console.log(\"Making Request to\", endpoint);\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`);\n }\n return await response.json();\n } catch (error) {\n console.error(\"Error making HTTP request:\", error);\n throw error;\n }\n }\n}\n","import Context from \"../model/Context\";\nimport { User, UserAPISchema, UserEndpoints } from \"../model/User.schema\";\nimport HTTPClient from \"../util/HTTPClient\";\n\nclass UserAPI implements UserAPISchema {\n private clientHTTP: HTTPClient;\n\n constructor() {\n this.clientHTTP = new HTTPClient();\n }\n\n async getUserInfo(context: Context): Promise<User> {\n const data = await this.clientHTTP.makeRequest(\n UserEndpoints.GetUserInfo,\n \"GET\",\n null,\n context\n );\n\n return data;\n }\n}\n\nexport default UserAPI;\n","import UserAPI from \"../api/User.api\";\nimport { UserAPISchema } from \"./User.schema\";\n\nclass ShredAPI {\n user: UserAPISchema;\n\n constructor() {\n this.user = new UserAPI();\n }\n}\n\nexport default ShredAPI;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACMA,IAAM,gBAAgB;AAAA,EACpB,aAAa;AACf;;;ACNA,IAAM,QAAQ;AAAA,EACZ,MAAM;AAAA,EACN,SAAS;AACX;AAEA,IAAqB,aAArB,MAAgC;AAAA,EAG9B,cAAc;AACZ,UAAM,MAAM,QAAQ,IAAI;AACxB,SAAK,OAAO,MAAM,GAAG,KAAK,MAAM;AAAA,EAClC;AAAA,EAEA,MAAM,YACJ,KACA,QACA,MACA,SACA;AACA,UAAM,UAAU,IAAI,QAAQ;AAC5B,YAAQ,OAAO,iBAAiB,UAAU,QAAQ,KAAK,EAAE;AACzD,YAAQ,OAAO,gBAAgB,QAAQ,SAAS;AAEhD,UAAM,SAAsB;AAAA,MAC1B;AAAA,MACA;AAAA,MACA,MAAM,WAAW,QAAQ,OAAO,KAAK,UAAU,IAAI;AAAA,IACrD;AAEA,QAAI;AACF,YAAM,WAAW,KAAK,OAAO;AAC7B,YAAM,WAAW,MAAM,MAAM,UAAU,MAAM;AAC7C,cAAQ,IAAI,qBAAqB,QAAQ;AACzC,UAAI,CAAC,SAAS,IAAI;AAChB,cAAM,IAAI,MAAM,uBAAuB,SAAS,MAAM,EAAE;AAAA,MAC1D;AACA,aAAO,MAAM,SAAS,KAAK;AAAA,IAC7B,SAAS,OAAO;AACd,cAAQ,MAAM,8BAA8B,KAAK;AACjD,YAAM;AAAA,IACR;AAAA,EACF;AACF;;;ACxCA,IAAM,UAAN,MAAuC;AAAA,EAGrC,cAAc;AACZ,SAAK,aAAa,IAAI,WAAW;AAAA,EACnC;AAAA,EAEA,MAAM,YAAY,SAAiC;AACjD,UAAM,OAAO,MAAM,KAAK,WAAW;AAAA,MACjC,cAAc;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAEA,WAAO;AAAA,EACT;AACF;AAEA,IAAO,mBAAQ;;;ACpBf,IAAM,WAAN,MAAe;AAAA,EAGb,cAAc;AACZ,SAAK,OAAO,IAAI,iBAAQ;AAAA,EAC1B;AACF;AAEA,IAAO,cAAQ;;;AJVf,IAAO,cAAQ;","names":[]}
|
package/dist/index.mjs
CHANGED
|
@@ -1,24 +1,3 @@
|
|
|
1
|
-
var __async = (__this, __arguments, generator) => {
|
|
2
|
-
return new Promise((resolve, reject) => {
|
|
3
|
-
var fulfilled = (value) => {
|
|
4
|
-
try {
|
|
5
|
-
step(generator.next(value));
|
|
6
|
-
} catch (e) {
|
|
7
|
-
reject(e);
|
|
8
|
-
}
|
|
9
|
-
};
|
|
10
|
-
var rejected = (value) => {
|
|
11
|
-
try {
|
|
12
|
-
step(generator.throw(value));
|
|
13
|
-
} catch (e) {
|
|
14
|
-
reject(e);
|
|
15
|
-
}
|
|
16
|
-
};
|
|
17
|
-
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
|
18
|
-
step((generator = generator.apply(__this, __arguments)).next());
|
|
19
|
-
});
|
|
20
|
-
};
|
|
21
|
-
|
|
22
1
|
// src/model/User.schema.ts
|
|
23
2
|
var UserEndpoints = {
|
|
24
3
|
GetUserInfo: "/user/info"
|
|
@@ -26,37 +5,35 @@ var UserEndpoints = {
|
|
|
26
5
|
|
|
27
6
|
// src/util/HTTPClient.ts
|
|
28
7
|
var HOSTS = {
|
|
29
|
-
prod: "https://api.shredmedia.
|
|
30
|
-
staging: "https://api
|
|
8
|
+
prod: "https://api.shredmedia.co",
|
|
9
|
+
staging: "https://api-staging.shredmedia.co"
|
|
31
10
|
};
|
|
32
11
|
var HTTPClient = class {
|
|
33
12
|
constructor() {
|
|
34
13
|
const env = process.env.ENV;
|
|
35
14
|
this.host = HOSTS[env] || HOSTS.staging;
|
|
36
15
|
}
|
|
37
|
-
makeRequest(uri, method, data, context) {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
throw new Error(`HTTP error! status: ${response.status}`);
|
|
53
|
-
}
|
|
54
|
-
return yield response.json();
|
|
55
|
-
} catch (error) {
|
|
56
|
-
console.error("Error making HTTP request:", error);
|
|
57
|
-
throw error;
|
|
16
|
+
async makeRequest(uri, method, data, context) {
|
|
17
|
+
const headers = new Headers();
|
|
18
|
+
headers.append("Authorization", `Bearer ${context.token}`);
|
|
19
|
+
headers.append("X-Request-ID", context.requestId);
|
|
20
|
+
const config = {
|
|
21
|
+
method,
|
|
22
|
+
headers,
|
|
23
|
+
body: method === "GET" ? null : JSON.stringify(data)
|
|
24
|
+
};
|
|
25
|
+
try {
|
|
26
|
+
const endpoint = this.host + uri;
|
|
27
|
+
const response = await fetch(endpoint, config);
|
|
28
|
+
console.log("Making Request to", endpoint);
|
|
29
|
+
if (!response.ok) {
|
|
30
|
+
throw new Error(`HTTP error! status: ${response.status}`);
|
|
58
31
|
}
|
|
59
|
-
|
|
32
|
+
return await response.json();
|
|
33
|
+
} catch (error) {
|
|
34
|
+
console.error("Error making HTTP request:", error);
|
|
35
|
+
throw error;
|
|
36
|
+
}
|
|
60
37
|
}
|
|
61
38
|
};
|
|
62
39
|
|
|
@@ -65,26 +42,28 @@ var UserAPI = class {
|
|
|
65
42
|
constructor() {
|
|
66
43
|
this.clientHTTP = new HTTPClient();
|
|
67
44
|
}
|
|
68
|
-
getUserInfo(context) {
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
return data;
|
|
77
|
-
});
|
|
45
|
+
async getUserInfo(context) {
|
|
46
|
+
const data = await this.clientHTTP.makeRequest(
|
|
47
|
+
UserEndpoints.GetUserInfo,
|
|
48
|
+
"GET",
|
|
49
|
+
null,
|
|
50
|
+
context
|
|
51
|
+
);
|
|
52
|
+
return data;
|
|
78
53
|
}
|
|
79
54
|
};
|
|
80
55
|
var User_api_default = UserAPI;
|
|
81
56
|
|
|
82
|
-
// src/
|
|
83
|
-
var
|
|
84
|
-
|
|
85
|
-
|
|
57
|
+
// src/model/Api.ts
|
|
58
|
+
var ShredAPI = class {
|
|
59
|
+
constructor() {
|
|
60
|
+
this.user = new User_api_default();
|
|
61
|
+
}
|
|
86
62
|
};
|
|
87
|
-
var
|
|
63
|
+
var Api_default = ShredAPI;
|
|
64
|
+
|
|
65
|
+
// src/index.ts
|
|
66
|
+
var src_default = Api_default;
|
|
88
67
|
export {
|
|
89
68
|
src_default as default
|
|
90
69
|
};
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/model/User.schema.ts","../src/util/HTTPClient.ts","../src/api/User.api.ts","../src/index.ts"],"sourcesContent":["import Context from \"./Context\";\n\ninterface UserAPISchema {\n getUserInfo: (context: Context) =>
|
|
1
|
+
{"version":3,"sources":["../src/model/User.schema.ts","../src/util/HTTPClient.ts","../src/api/User.api.ts","../src/model/Api.ts","../src/index.ts"],"sourcesContent":["import Context from \"./Context\";\n\ninterface UserAPISchema {\n getUserInfo: (context: Context) => Promise<User>;\n}\n\nconst UserEndpoints = {\n GetUserInfo: \"/user/info\",\n};\n\ntype Preferences = {\n primaryColor?: string;\n secondaryColor?: string;\n facebookLink?: string;\n instagramLink?: string;\n bRoll?: boolean;\n logo?: string;\n};\n\ntype User = {\n id: string;\n name: string;\n email: string;\n customerId: string;\n registered: boolean;\n profession?: string;\n registeredAt: number;\n fcmToken?: string;\n photoUrl?: string;\n preferences?: Preferences;\n invitationCode?: string;\n};\n\nexport { User, UserAPISchema, UserEndpoints };\n","import Context from \"./../model/Context\";\n\nconst HOSTS = {\n prod: \"https://api.shredmedia.co\",\n staging: \"https://api-staging.shredmedia.co\",\n};\n\nexport default class HTTPClient {\n private host: string;\n\n constructor() {\n const env = process.env.ENV as \"prod\" | \"staging\";\n this.host = HOSTS[env] || HOSTS.staging;\n }\n\n async makeRequest(\n uri: string,\n method: \"GET\" | \"POST\" | \"PUT\" | \"DELETE\",\n data: any,\n context: Context\n ) {\n const headers = new Headers();\n headers.append(\"Authorization\", `Bearer ${context.token}`);\n headers.append(\"X-Request-ID\", context.requestId);\n\n const config: RequestInit = {\n method: method,\n headers: headers,\n body: method === \"GET\" ? null : JSON.stringify(data),\n };\n\n try {\n const endpoint = this.host + uri;\n const response = await fetch(endpoint, config);\n console.log(\"Making Request to\", endpoint);\n if (!response.ok) {\n throw new Error(`HTTP error! status: ${response.status}`);\n }\n return await response.json();\n } catch (error) {\n console.error(\"Error making HTTP request:\", error);\n throw error;\n }\n }\n}\n","import Context from \"../model/Context\";\nimport { User, UserAPISchema, UserEndpoints } from \"../model/User.schema\";\nimport HTTPClient from \"../util/HTTPClient\";\n\nclass UserAPI implements UserAPISchema {\n private clientHTTP: HTTPClient;\n\n constructor() {\n this.clientHTTP = new HTTPClient();\n }\n\n async getUserInfo(context: Context): Promise<User> {\n const data = await this.clientHTTP.makeRequest(\n UserEndpoints.GetUserInfo,\n \"GET\",\n null,\n context\n );\n\n return data;\n }\n}\n\nexport default UserAPI;\n","import UserAPI from \"../api/User.api\";\nimport { UserAPISchema } from \"./User.schema\";\n\nclass ShredAPI {\n user: UserAPISchema;\n\n constructor() {\n this.user = new UserAPI();\n }\n}\n\nexport default ShredAPI;\n","import ShredAPI from \"./model/Api\";\nexport default ShredAPI;\n"],"mappings":";AAMA,IAAM,gBAAgB;AAAA,EACpB,aAAa;AACf;;;ACNA,IAAM,QAAQ;AAAA,EACZ,MAAM;AAAA,EACN,SAAS;AACX;AAEA,IAAqB,aAArB,MAAgC;AAAA,EAG9B,cAAc;AACZ,UAAM,MAAM,QAAQ,IAAI;AACxB,SAAK,OAAO,MAAM,GAAG,KAAK,MAAM;AAAA,EAClC;AAAA,EAEA,MAAM,YACJ,KACA,QACA,MACA,SACA;AACA,UAAM,UAAU,IAAI,QAAQ;AAC5B,YAAQ,OAAO,iBAAiB,UAAU,QAAQ,KAAK,EAAE;AACzD,YAAQ,OAAO,gBAAgB,QAAQ,SAAS;AAEhD,UAAM,SAAsB;AAAA,MAC1B;AAAA,MACA;AAAA,MACA,MAAM,WAAW,QAAQ,OAAO,KAAK,UAAU,IAAI;AAAA,IACrD;AAEA,QAAI;AACF,YAAM,WAAW,KAAK,OAAO;AAC7B,YAAM,WAAW,MAAM,MAAM,UAAU,MAAM;AAC7C,cAAQ,IAAI,qBAAqB,QAAQ;AACzC,UAAI,CAAC,SAAS,IAAI;AAChB,cAAM,IAAI,MAAM,uBAAuB,SAAS,MAAM,EAAE;AAAA,MAC1D;AACA,aAAO,MAAM,SAAS,KAAK;AAAA,IAC7B,SAAS,OAAO;AACd,cAAQ,MAAM,8BAA8B,KAAK;AACjD,YAAM;AAAA,IACR;AAAA,EACF;AACF;;;ACxCA,IAAM,UAAN,MAAuC;AAAA,EAGrC,cAAc;AACZ,SAAK,aAAa,IAAI,WAAW;AAAA,EACnC;AAAA,EAEA,MAAM,YAAY,SAAiC;AACjD,UAAM,OAAO,MAAM,KAAK,WAAW;AAAA,MACjC,cAAc;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAEA,WAAO;AAAA,EACT;AACF;AAEA,IAAO,mBAAQ;;;ACpBf,IAAM,WAAN,MAAe;AAAA,EAGb,cAAc;AACZ,SAAK,OAAO,IAAI,iBAAQ;AAAA,EAC1B;AACF;AAEA,IAAO,cAAQ;;;ACVf,IAAO,cAAQ;","names":[]}
|