@faable/deploy-sdk 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/.github/workflows/release.yml +1 -0
- package/dist/FaableDeployApi.d.ts +60 -0
- package/dist/FaableDeployApi.d.ts.map +1 -0
- package/dist/FaableDeployApi.js +29 -0
- package/{src/api/api-types.ts → dist/api/api-types.d.ts} +5 -15
- package/dist/api/api-types.d.ts.map +1 -0
- package/dist/api/api-types.js +1 -0
- package/{src → dist}/api/types.d.ts +1 -1
- package/dist/api/types.d.ts.map +1 -0
- package/dist/api/types.js +5 -0
- package/dist/auth/apikey.d.ts +3 -0
- package/dist/auth/apikey.d.ts.map +1 -0
- package/dist/auth/apikey.js +7 -0
- package/dist/fetcher/Fetcher.d.ts +21 -0
- package/dist/fetcher/Fetcher.d.ts.map +1 -0
- package/dist/fetcher/Fetcher.js +1 -0
- package/dist/fetcher/fetcher_axios.d.ts +3 -0
- package/dist/fetcher/fetcher_axios.d.ts.map +1 -0
- package/dist/fetcher/fetcher_axios.js +43 -0
- package/dist/helpers/authorize-client-credentials.d.ts +17 -0
- package/dist/helpers/authorize-client-credentials.d.ts.map +1 -0
- package/dist/helpers/authorize-client-credentials.js +38 -0
- package/dist/helpers/authorize.d.ts +9 -0
- package/dist/helpers/authorize.d.ts.map +1 -0
- package/dist/helpers/authorize.js +39 -0
- package/dist/helpers/error_handler.d.ts +4 -0
- package/dist/helpers/error_handler.d.ts.map +1 -0
- package/dist/helpers/error_handler.js +7 -0
- package/dist/helpers/paginator.d.ts +15 -0
- package/dist/helpers/paginator.d.ts.map +1 -0
- package/dist/helpers/paginator.js +28 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +4 -0
- package/package.json +2 -2
- package/src/FaableDeployApi.test.ts +0 -13
- package/src/FaableDeployApi.ts +0 -40
- package/src/auth/apikey.ts +0 -11
- package/src/fetcher/Fetcher.ts +0 -42
- package/src/fetcher/fetcher_axios.ts +0 -50
- package/src/helpers/authorize-client-credentials.ts +0 -54
- package/src/helpers/authorize.ts +0 -58
- package/src/helpers/error_handler.ts +0 -7
- package/src/helpers/paginator.ts +0 -37
- package/src/index.ts +0 -3
- package/tsconfig.json +0 -16
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { Page } from "./helpers/paginator.js";
|
|
2
|
+
import { FetcherCreateParams } from "./fetcher/Fetcher.js";
|
|
3
|
+
type ApiParams = {
|
|
4
|
+
fetcher?: FetcherCreateParams;
|
|
5
|
+
auth?: FetcherCreateParams;
|
|
6
|
+
};
|
|
7
|
+
export declare class FaableDeployApi {
|
|
8
|
+
private fetcher;
|
|
9
|
+
private paginator;
|
|
10
|
+
constructor(params?: ApiParams);
|
|
11
|
+
getDeployment(id: string): Promise<{
|
|
12
|
+
id: string;
|
|
13
|
+
app_id: string;
|
|
14
|
+
image: string;
|
|
15
|
+
status: import("./api/types.js").components["schemas"]["DeploymentStatus"];
|
|
16
|
+
user: string | null;
|
|
17
|
+
createdAt: string;
|
|
18
|
+
}>;
|
|
19
|
+
getApp(id: string): Promise<{
|
|
20
|
+
id: string;
|
|
21
|
+
profile?: {
|
|
22
|
+
id: string;
|
|
23
|
+
slug: string;
|
|
24
|
+
name?: string;
|
|
25
|
+
description: string;
|
|
26
|
+
is_team: boolean;
|
|
27
|
+
owner_id: string;
|
|
28
|
+
stripe_sub?: string | null;
|
|
29
|
+
createdAt: string;
|
|
30
|
+
} | string | unknown;
|
|
31
|
+
team: string;
|
|
32
|
+
name: string;
|
|
33
|
+
description: string;
|
|
34
|
+
slug: string;
|
|
35
|
+
url: string;
|
|
36
|
+
active: boolean;
|
|
37
|
+
runtime: import("./api/types.js").components["schemas"]["AppRuntime"];
|
|
38
|
+
runtime_strategy: ("next" | "wordpress") | null;
|
|
39
|
+
instance_type: string;
|
|
40
|
+
region: string;
|
|
41
|
+
creator: string;
|
|
42
|
+
metadata: {
|
|
43
|
+
[key: string]: unknown;
|
|
44
|
+
};
|
|
45
|
+
status: import("./api/types.js").components["schemas"]["AppStatus"];
|
|
46
|
+
createdAt: string;
|
|
47
|
+
}>;
|
|
48
|
+
listApps(): {
|
|
49
|
+
all: () => Promise<unknown[]>;
|
|
50
|
+
first: () => Promise<Page<unknown>>;
|
|
51
|
+
pass: (params?: {
|
|
52
|
+
cursor?: string;
|
|
53
|
+
pageSize?: string;
|
|
54
|
+
}) => Promise<Page<unknown>>;
|
|
55
|
+
};
|
|
56
|
+
updateStatus<T>(id: string, data: T): Promise<unknown>;
|
|
57
|
+
}
|
|
58
|
+
export declare const faableapi: (params?: ApiParams) => FaableDeployApi;
|
|
59
|
+
export {};
|
|
60
|
+
//# sourceMappingURL=FaableDeployApi.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FaableDeployApi.d.ts","sourceRoot":"","sources":["../src/FaableDeployApi.ts"],"names":[],"mappings":"AACA,OAAO,EAA6B,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAEzE,OAAO,EAAW,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAEpE,KAAK,SAAS,GAAG;IACf,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B,IAAI,CAAC,EAAE,mBAAmB,CAAC;CAC5B,CAAC;AAEF,qBAAa,eAAe;IAC1B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,SAAS,CAAY;gBAEjB,MAAM,GAAE,SAAc;IASlC,aAAa,CAAC,EAAE,EAAE,MAAM;;;;gBAiBmx1B,8CAAsB;;;;IAdj01B,MAAM,CAAC,EAAE,EAAE,MAAM;;;;;gBAc6smB,CAAC;;;;sBAA6I,CAAC;;;;;;;;;iBAAyU,8CAAsB;;;;;;;;gBAAyf,8CAAsB;;;IAX3toB,QAAQ;;;;;;;;IAGR,YAAY,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;CAGpC;AAED,eAAO,MAAM,SAAS,YAAY,SAAS,oBAE1C,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { buildPaginator } from "./helpers/paginator.js";
|
|
2
|
+
import { fetcher_axios } from "./fetcher/fetcher_axios.js";
|
|
3
|
+
export class FaableDeployApi {
|
|
4
|
+
fetcher;
|
|
5
|
+
paginator;
|
|
6
|
+
constructor(params = {}) {
|
|
7
|
+
this.fetcher = fetcher_axios({
|
|
8
|
+
baseURL: "https://api.faable.com",
|
|
9
|
+
...params.fetcher,
|
|
10
|
+
...params.auth,
|
|
11
|
+
});
|
|
12
|
+
this.paginator = buildPaginator(this.fetcher);
|
|
13
|
+
}
|
|
14
|
+
getDeployment(id) {
|
|
15
|
+
return this.fetcher.get(`/deployment/${id}`);
|
|
16
|
+
}
|
|
17
|
+
getApp(id) {
|
|
18
|
+
return this.fetcher.get(`/app/${id}`);
|
|
19
|
+
}
|
|
20
|
+
listApps() {
|
|
21
|
+
return this.paginator({ url: "/app" });
|
|
22
|
+
}
|
|
23
|
+
updateStatus(id, data) {
|
|
24
|
+
return this.fetcher.post(`/status/${id}`, data);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
export const faableapi = (params = {}) => {
|
|
28
|
+
return new FaableDeployApi(params);
|
|
29
|
+
};
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { components } from "./types.js";
|
|
2
|
-
|
|
3
2
|
export type App = components["schemas"]["App"];
|
|
4
3
|
export type AppStatus = components["schemas"]["AppStatus"];
|
|
5
4
|
export type AppRuntime = components["schemas"]["AppRuntime"];
|
|
@@ -8,25 +7,16 @@ export type Deployment = components["schemas"]["Deployment"];
|
|
|
8
7
|
export type DeploymentStatus = components["schemas"]["DeploymentStatus"];
|
|
9
8
|
export type Secret = components["schemas"]["Secret"];
|
|
10
9
|
export type Domain = components["schemas"]["Domain"];
|
|
11
|
-
|
|
12
10
|
export type Volume = components["schemas"]["Volume"];
|
|
13
|
-
|
|
14
|
-
export type
|
|
15
|
-
components["schemas"]["Event_secret.create_batch"];
|
|
16
|
-
export type EventDeploymentCreated =
|
|
17
|
-
components["schemas"]["Event_deployment.created"];
|
|
11
|
+
export type EventSecretsCreateBatchEvent = components["schemas"]["Event_secret.create_batch"];
|
|
12
|
+
export type EventDeploymentCreated = components["schemas"]["Event_deployment.created"];
|
|
18
13
|
export type EventAppDelete = components["schemas"]["Event_app.delete"];
|
|
19
14
|
export type EventAppCreate = components["schemas"]["Event_app.create"];
|
|
20
15
|
export type EventAppUpdate = components["schemas"]["Event_app.update"];
|
|
21
|
-
|
|
22
16
|
export type EventDomainCreate = components["schemas"]["Event_domain.create"];
|
|
23
17
|
export type EventDomainUpdate = components["schemas"]["Event_domain.update"];
|
|
24
|
-
|
|
25
18
|
export type EventVolumeCreate = components["schemas"]["Event_volume.create"];
|
|
26
19
|
export type EventVolumeDelete = components["schemas"]["Event_volume.delete"];
|
|
27
|
-
|
|
28
|
-
export type
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
export type EventDeploymentStatusUpdate =
|
|
32
|
-
components["schemas"]["Event_deployment.update_status"];
|
|
20
|
+
export type EventSecretsUpdated = components["schemas"]["Event_secret.create_batch"];
|
|
21
|
+
export type EventDeploymentStatusUpdate = components["schemas"]["Event_deployment.update_status"];
|
|
22
|
+
//# sourceMappingURL=api-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-types.d.ts","sourceRoot":"","sources":["../../src/api/api-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC,MAAM,MAAM,GAAG,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC;AAC/C,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC;AAC3D,MAAM,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;AAC7D,MAAM,MAAM,kBAAkB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;AAC7E,MAAM,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;AAC7D,MAAM,MAAM,gBAAgB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;AACzE,MAAM,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;AACrD,MAAM,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;AAErD,MAAM,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;AAErD,MAAM,MAAM,4BAA4B,GACtC,UAAU,CAAC,SAAS,CAAC,CAAC,2BAA2B,CAAC,CAAC;AACrD,MAAM,MAAM,sBAAsB,GAChC,UAAU,CAAC,SAAS,CAAC,CAAC,0BAA0B,CAAC,CAAC;AACpD,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;AACvE,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;AACvE,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;AAEvE,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;AAC7E,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;AAE7E,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;AAC7E,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;AAE7E,MAAM,MAAM,mBAAmB,GAC7B,UAAU,CAAC,SAAS,CAAC,CAAC,2BAA2B,CAAC,CAAC;AAErD,MAAM,MAAM,2BAA2B,GACrC,UAAU,CAAC,SAAS,CAAC,CAAC,gCAAgC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
* This file was auto-generated by openapi-typescript.
|
|
3
3
|
* Do not make direct changes to the file.
|
|
4
4
|
*/
|
|
5
|
-
|
|
6
5
|
export interface paths {
|
|
7
6
|
"/profile": {
|
|
8
7
|
parameters: {
|
|
@@ -2019,3 +2018,4 @@ export interface operations {
|
|
|
2019
2018
|
};
|
|
2020
2019
|
};
|
|
2021
2020
|
}
|
|
2021
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,KAAK;IAClB,UAAU,EAAE;QACR,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;QAChC,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;WAGG;QACH,IAAI,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC;QACnC,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,uBAAuB,EAAE;QACrB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;QAChC,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,sBAAsB,EAAE;QACpB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,mBAAmB,CAAC,CAAC;QACrC,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,SAAS,EAAE;QACP,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC;QAC/B,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;WAGG;QACH,IAAI,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;QAClC,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,sBAAsB,EAAE;QACpB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;WAGG;QACH,IAAI,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;QAClC,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,MAAM,EAAE;QACJ,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;QAC7B,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;WAGG;QACH,IAAI,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;QAC/B,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,kBAAkB,EAAE;QAChB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC;QAC/B,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,eAAe,EAAE;QACb,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;QAC3B,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;WAGG;QACH,IAAI,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;QAC/B;;;WAGG;QACH,MAAM,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;QACjC,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,kBAAkB,EAAE;QAChB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;QACjC,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,gBAAgB,EAAE;QACd,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;QACjC,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,wBAAwB,EAAE;QACtB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,kBAAkB,CAAC,CAAC;QACpC,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,oBAAoB,EAAE;QAClB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;QAC5B,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,uBAAuB,EAAE;QACrB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC;QAC/B,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,qBAAqB,EAAE;QACnB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;QAC9B,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;WAGG;QACH,IAAI,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;QAClC;;;WAGG;QACH,MAAM,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;QACpC,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,SAAS,EAAE;QACP,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC;QAC/B,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;WAGG;QACH,IAAI,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;QAClC,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,qBAAqB,EAAE;QACnB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC;QAC/B,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,SAAS,EAAE;QACP,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;WAGG;QACH,IAAI,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC;QACnC,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,sBAAsB,EAAE;QACpB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,kBAAkB,CAAC,CAAC;QACpC,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,qBAAqB,EAAE;QACnB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb;;;WAGG;QACH,MAAM,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC;QACrC,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,qBAAqB,EAAE;QACnB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;WAGG;QACH,IAAI,EAAE,UAAU,CAAC,sBAAsB,CAAC,CAAC;QACzC,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,aAAa,EAAE;QACX,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC;QACnC,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;WAGG;QACH,IAAI,EAAE,UAAU,CAAC,mBAAmB,CAAC,CAAC;QACtC,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,6BAA6B,EAAE;QAC3B,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC;QAClC,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,SAAS,EAAE;QACP,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;WAGG;QACH,IAAI,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;QAClC,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,qBAAqB,EAAE;QACnB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb;;;WAGG;QACH,MAAM,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC;QACpC,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,QAAQ,EAAE;QACN,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC;QAClC,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,sBAAsB,EAAE;QACpB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,sBAAsB,CAAC,CAAC;QACxC,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,uBAAuB,EAAE;QACrB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF;;;WAGG;QACH,GAAG,EAAE,UAAU,CAAC,uBAAuB,CAAC,CAAC;QACzC,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,oBAAoB,EAAE;QAClB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC;QACtC,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;IACF,qBAAqB,EAAE;QACnB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,GAAG,EAAE,UAAU,CAAC,qBAAqB,CAAC,CAAC;QACvC,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACjB,CAAC;CACL;AACD,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC7C,MAAM,WAAW,UAAU;IACvB,OAAO,EAAE;QACL,6CAA6C;QAC7C,2BAA2B,EAAE;YACzB,qBAAqB;YACrB,IAAI,EAAE,qBAAqB,CAAC;YAC5B,WAAW,EAAE,MAAM,CAAC;YACpB,OAAO,EAAE;gBACL,qBAAqB;gBACrB,IAAI,EAAE,KAAK,CAAC;gBACZ,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC;gBACtC,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;aAC9C,CAAC;SACL,CAAC;QACF,4CAA4C;QAC5C,0BAA0B,EAAE;YACxB,qBAAqB;YACrB,IAAI,EAAE,oBAAoB,CAAC;YAC3B,WAAW,EAAE,MAAM,CAAC;YACpB,OAAO,EAAE;gBACL,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;gBAChD,GAAG,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC;gBAClC,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;aAC9C,CAAC;SACL,CAAC;QACF,oCAAoC;QACpC,kBAAkB,EAAE;YAChB,qBAAqB;YACrB,IAAI,EAAE,YAAY,CAAC;YACnB,WAAW,EAAE,MAAM,CAAC;YACpB,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC;SACzC,CAAC;QACF,oCAAoC;QACpC,kBAAkB,EAAE;YAChB,qBAAqB;YACrB,IAAI,EAAE,YAAY,CAAC;YACnB,WAAW,EAAE,MAAM,CAAC;YACpB,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC;SACzC,CAAC;QACF,oCAAoC;QACpC,kBAAkB,EAAE;YAChB,qBAAqB;YACrB,IAAI,EAAE,YAAY,CAAC;YACnB,WAAW,EAAE,MAAM,CAAC;YACpB,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC;SACzC,CAAC;QACF,uCAAuC;QACvC,qBAAqB,EAAE;YACnB,qBAAqB;YACrB,IAAI,EAAE,eAAe,CAAC;YACtB,WAAW,EAAE,MAAM,CAAC;YACpB,OAAO,EAAE;gBACL,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;gBACxC,GAAG,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC;aACrC,CAAC;SACL,CAAC;QACF,uCAAuC;QACvC,qBAAqB,EAAE;YACnB,qBAAqB;YACrB,IAAI,EAAE,eAAe,CAAC;YACtB,WAAW,EAAE,MAAM,CAAC;YACpB,OAAO,EAAE;gBACL,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;gBACxC,GAAG,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC;aACrC,CAAC;SACL,CAAC;QACF,uCAAuC;QACvC,qBAAqB,EAAE;YACnB,qBAAqB;YACrB,IAAI,EAAE,eAAe,CAAC;YACtB,WAAW,EAAE,MAAM,CAAC;YACpB,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;SAC5C,CAAC;QACF,uCAAuC;QACvC,qBAAqB,EAAE;YACnB,qBAAqB;YACrB,IAAI,EAAE,eAAe,CAAC;YACtB,WAAW,EAAE,MAAM,CAAC;YACpB,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;SAC5C,CAAC;QACF,kDAAkD;QAClD,gCAAgC,EAAE;YAC9B,qBAAqB;YACrB,IAAI,EAAE,0BAA0B,CAAC;YACjC,WAAW,EAAE,MAAM,CAAC;YACpB,OAAO,EAAE;gBACL,EAAE,EAAE,MAAM,CAAC;gBACX,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;aACrD,CAAC;SACL,CAAC;QACF,2BAA2B;QAC3B,OAAO,EAAE;YACL,8BAA8B;YAC9B,EAAE,EAAE,MAAM,CAAC;YACX,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,WAAW,EAAE,MAAM,CAAC;YACpB,OAAO,EAAE,OAAO,CAAC;YACjB,QAAQ,EAAE,MAAM,CAAC;YACjB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YAC3B,yCAAyC;YACzC,SAAS,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,qCAAqC;QACrC,WAAW,EAAE;YACT,+BAA+B;YAC/B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;YACpB,mCAAmC;YACnC,OAAO,EAAE;gBACL,8BAA8B;gBAC9B,EAAE,EAAE,MAAM,CAAC;gBACX,IAAI,EAAE,MAAM,CAAC;gBACb,IAAI,CAAC,EAAE,MAAM,CAAC;gBACd,WAAW,EAAE,MAAM,CAAC;gBACpB,OAAO,EAAE,OAAO,CAAC;gBACjB,QAAQ,EAAE,MAAM,CAAC;gBACjB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;gBAC3B,yCAAyC;gBACzC,SAAS,EAAE,MAAM,CAAC;aACrB,EAAE,CAAC;SACP,CAAC;QACF,MAAM,EAAE;YACJ,EAAE,EAAE,MAAM,CAAC;YACX,MAAM,EAAE,MAAM,CAAC;YACf,OAAO,EAAE,MAAM,CAAC;YAChB,IAAI,EAAE,MAAM,CAAC;YACb,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,SAAS,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,qCAAqC;QACrC,UAAU,EAAE;YACR,+BAA+B;YAC/B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;YACpB,mCAAmC;YACnC,OAAO,EAAE;gBACL,EAAE,EAAE,MAAM,CAAC;gBACX,MAAM,EAAE,MAAM,CAAC;gBACf,OAAO,EAAE,MAAM,CAAC;gBAChB,IAAI,EAAE,MAAM,CAAC;gBACb,WAAW,CAAC,EAAE,MAAM,CAAC;gBACrB,SAAS,EAAE,MAAM,CAAC;aACrB,EAAE,CAAC;SACP,CAAC;QACF,kBAAkB,EAAE,MAAM,GAAG,WAAW,CAAC;QACzC,UAAU,EAAE,MAAM,GAAG,KAAK,CAAC;QAC3B,SAAS,EAAE;YACP;;;eAGG;YACH,KAAK,EAAE,SAAS,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,GAAG,cAAc,GAAG,OAAO,GAAG,UAAU,GAAG,aAAa,CAAC;YAC3G;;;eAGG;YACH,UAAU,EAAE,MAAM,CAAC;YACnB;;;eAGG;YACH,mBAAmB,EAAE,MAAM,CAAC;YAC5B;;;eAGG;YACH,mBAAmB,EAAE,MAAM,CAAC;SAC/B,CAAC;QACF,uBAAuB;QACvB,GAAG,EAAE;YACD,0BAA0B;YAC1B,EAAE,EAAE,MAAM,CAAC;YACX,2BAA2B;YAC3B,OAAO,CAAC,EAAE;gBACN,8BAA8B;gBAC9B,EAAE,EAAE,MAAM,CAAC;gBACX,IAAI,EAAE,MAAM,CAAC;gBACb,IAAI,CAAC,EAAE,MAAM,CAAC;gBACd,WAAW,EAAE,MAAM,CAAC;gBACpB,OAAO,EAAE,OAAO,CAAC;gBACjB,QAAQ,EAAE,MAAM,CAAC;gBACjB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;gBAC3B,yCAAyC;gBACzC,SAAS,EAAE,MAAM,CAAC;aACrB,GAAG,MAAM,GAAG,OAAO,CAAC;YACrB,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,WAAW,EAAE,MAAM,CAAC;YACpB,IAAI,EAAE,MAAM,CAAC;YACb,GAAG,EAAE,MAAM,CAAC;YACZ,MAAM,EAAE,OAAO,CAAC;YAChB,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;YAC7C,gBAAgB,EAAE,CAAC,MAAM,GAAG,WAAW,CAAC,GAAG,IAAI,CAAC;YAChD,yHAAyH;YACzH,aAAa,EAAE,MAAM,CAAC;YACtB,iCAAiC;YACjC,MAAM,EAAE,MAAM,CAAC;YACf,6CAA6C;YAC7C,OAAO,EAAE,MAAM,CAAC;YAChB,QAAQ,EAAE;gBACN,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;aAC1B,CAAC;YACF,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC;YAC3C,qCAAqC;YACrC,SAAS,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,qCAAqC;QACrC,OAAO,EAAE;YACL,+BAA+B;YAC/B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;YACpB,mCAAmC;YACnC,OAAO,EAAE;gBACL,0BAA0B;gBAC1B,EAAE,EAAE,MAAM,CAAC;gBACX,2BAA2B;gBAC3B,OAAO,CAAC,EAAE;oBACN,8BAA8B;oBAC9B,EAAE,EAAE,MAAM,CAAC;oBACX,IAAI,EAAE,MAAM,CAAC;oBACb,IAAI,CAAC,EAAE,MAAM,CAAC;oBACd,WAAW,EAAE,MAAM,CAAC;oBACpB,OAAO,EAAE,OAAO,CAAC;oBACjB,QAAQ,EAAE,MAAM,CAAC;oBACjB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;oBAC3B,yCAAyC;oBACzC,SAAS,EAAE,MAAM,CAAC;iBACrB,GAAG,MAAM,GAAG,OAAO,CAAC;gBACrB,IAAI,EAAE,MAAM,CAAC;gBACb,IAAI,EAAE,MAAM,CAAC;gBACb,WAAW,EAAE,MAAM,CAAC;gBACpB,IAAI,EAAE,MAAM,CAAC;gBACb,GAAG,EAAE,MAAM,CAAC;gBACZ,MAAM,EAAE,OAAO,CAAC;gBAChB,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;gBAC7C,gBAAgB,EAAE,CAAC,MAAM,GAAG,WAAW,CAAC,GAAG,IAAI,CAAC;gBAChD,yHAAyH;gBACzH,aAAa,EAAE,MAAM,CAAC;gBACtB,iCAAiC;gBACjC,MAAM,EAAE,MAAM,CAAC;gBACf,6CAA6C;gBAC7C,OAAO,EAAE,MAAM,CAAC;gBAChB,QAAQ,EAAE;oBACN,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC1B,CAAC;gBACF,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC;gBAC3C,qCAAqC;gBACrC,SAAS,EAAE,MAAM,CAAC;aACrB,EAAE,CAAC;SACP,CAAC;QACF,SAAS,EAAE;YACP,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,OAAO,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;YAC9C,gBAAgB,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,CAAC;YAC/D,aAAa,CAAC,EAAE,MAAM,CAAC;SAC1B,CAAC;QACF,SAAS,EAAE;YACP,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,WAAW,CAAC,EAAE,MAAM,CAAC;SACxB,CAAC;QACF,0BAA0B;QAC1B,MAAM,EAAE;YACJ,6BAA6B;YAC7B,EAAE,EAAE,MAAM,CAAC;YACX,2BAA2B;YAC3B,OAAO,CAAC,EAAE;gBACN,8BAA8B;gBAC9B,EAAE,EAAE,MAAM,CAAC;gBACX,IAAI,EAAE,MAAM,CAAC;gBACb,IAAI,CAAC,EAAE,MAAM,CAAC;gBACd,WAAW,EAAE,MAAM,CAAC;gBACpB,OAAO,EAAE,OAAO,CAAC;gBACjB,QAAQ,EAAE,MAAM,CAAC;gBACjB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;gBAC3B,yCAAyC;gBACzC,SAAS,EAAE,MAAM,CAAC;aACrB,GAAG,MAAM,GAAG,OAAO,CAAC;YACrB,IAAI,EAAE,MAAM,CAAC;YACb,mDAAmD;YACnD,IAAI,EAAE,MAAM,CAAC;YACb,kDAAkD;YAClD,GAAG,EAAE,OAAO,CAAC;YACb,8BAA8B;YAC9B,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;YACvB,4DAA4D;YAC5D,QAAQ,EAAE,OAAO,CAAC;YAClB,wCAAwC;YACxC,SAAS,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,qCAAqC;QACrC,UAAU,EAAE;YACR,+BAA+B;YAC/B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;YACpB,mCAAmC;YACnC,OAAO,EAAE;gBACL,6BAA6B;gBAC7B,EAAE,EAAE,MAAM,CAAC;gBACX,2BAA2B;gBAC3B,OAAO,CAAC,EAAE;oBACN,8BAA8B;oBAC9B,EAAE,EAAE,MAAM,CAAC;oBACX,IAAI,EAAE,MAAM,CAAC;oBACb,IAAI,CAAC,EAAE,MAAM,CAAC;oBACd,WAAW,EAAE,MAAM,CAAC;oBACpB,OAAO,EAAE,OAAO,CAAC;oBACjB,QAAQ,EAAE,MAAM,CAAC;oBACjB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;oBAC3B,yCAAyC;oBACzC,SAAS,EAAE,MAAM,CAAC;iBACrB,GAAG,MAAM,GAAG,OAAO,CAAC;gBACrB,IAAI,EAAE,MAAM,CAAC;gBACb,mDAAmD;gBACnD,IAAI,EAAE,MAAM,CAAC;gBACb,kDAAkD;gBAClD,GAAG,EAAE,OAAO,CAAC;gBACb,8BAA8B;gBAC9B,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;gBACvB,4DAA4D;gBAC5D,QAAQ,EAAE,OAAO,CAAC;gBAClB,wCAAwC;gBACxC,SAAS,EAAE,MAAM,CAAC;aACrB,EAAE,CAAC;SACP,CAAC;QACF,mCAAmC;QACnC,MAAM,EAAE;YACJ,6BAA6B;YAC7B,EAAE,EAAE,MAAM,CAAC;YACX,2CAA2C;YAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,2CAA2C;YAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB,2CAA2C;YAC3C,OAAO,EAAE,MAAM,CAAC;YAChB,aAAa,EAAE,MAAM,CAAC;YACtB,+BAA+B;YAC/B,IAAI,EAAE,MAAM,CAAC;YACb,gCAAgC;YAChC,KAAK,EAAE,MAAM,CAAC;YACd,SAAS,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,qCAAqC;QACrC,UAAU,EAAE;YACR,+BAA+B;YAC/B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;YACpB,mCAAmC;YACnC,OAAO,EAAE;gBACL,6BAA6B;gBAC7B,EAAE,EAAE,MAAM,CAAC;gBACX,2CAA2C;gBAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;gBAChB,2CAA2C;gBAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;gBACpB,2CAA2C;gBAC3C,OAAO,EAAE,MAAM,CAAC;gBAChB,aAAa,EAAE,MAAM,CAAC;gBACtB,+BAA+B;gBAC/B,IAAI,EAAE,MAAM,CAAC;gBACb,gCAAgC;gBAChC,KAAK,EAAE,MAAM,CAAC;gBACd,SAAS,EAAE,MAAM,CAAC;aACrB,EAAE,CAAC;SACP,CAAC;QACF,2CAA2C;QAC3C,iBAAiB,EAAE;YACf,UAAU,EAAE,MAAM,CAAC;YACnB,OAAO,EAAE;gBACL,IAAI,EAAE,MAAM,CAAC;gBACb,KAAK,EAAE,MAAM,CAAC;aACjB,EAAE,CAAC;SACP,CAAC;QACF,iCAAiC;QACjC,YAAY,EAAE;YACV,MAAM,EAAE,MAAM,CAAC;YACf,IAAI,EAAE,MAAM,CAAC;YACb,KAAK,EAAE,MAAM,CAAC;SACjB,CAAC;QACF,8BAA8B;QAC9B,UAAU,EAAE;YACR,iCAAiC;YACjC,EAAE,EAAE,MAAM,CAAC;YACX,MAAM,EAAE,MAAM,CAAC;YACf,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;YAClD;;;eAGG;YACH,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;YACpB,4CAA4C;YAC5C,SAAS,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,qCAAqC;QACrC,cAAc,EAAE;YACZ,+BAA+B;YAC/B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;YACpB,mCAAmC;YACnC,OAAO,EAAE;gBACL,iCAAiC;gBACjC,EAAE,EAAE,MAAM,CAAC;gBACX,MAAM,EAAE,MAAM,CAAC;gBACf,KAAK,EAAE,MAAM,CAAC;gBACd,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;gBAClD;;;mBAGG;gBACH,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;gBACpB,4CAA4C;gBAC5C,SAAS,EAAE,MAAM,CAAC;aACrB,EAAE,CAAC;SACP,CAAC;QACF,gBAAgB,EAAE;YACd,MAAM,EAAE,MAAM,CAAC;YACf,KAAK,EAAE,MAAM,CAAC;SACjB,CAAC;QACF,gBAAgB,EAAE;YACd;;;eAGG;YACH,KAAK,EAAE,SAAS,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,GAAG,cAAc,GAAG,OAAO,GAAG,UAAU,GAAG,aAAa,CAAC;SAC9G,CAAC;QACF,0BAA0B;QAC1B,MAAM,EAAE;YACJ,EAAE,EAAE,MAAM,CAAC;YACX,2BAA2B;YAC3B,OAAO,CAAC,EAAE;gBACN,8BAA8B;gBAC9B,EAAE,EAAE,MAAM,CAAC;gBACX,IAAI,EAAE,MAAM,CAAC;gBACb,IAAI,CAAC,EAAE,MAAM,CAAC;gBACd,WAAW,EAAE,MAAM,CAAC;gBACpB,OAAO,EAAE,OAAO,CAAC;gBACjB,QAAQ,EAAE,MAAM,CAAC;gBACjB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;gBAC3B,yCAAyC;gBACzC,SAAS,EAAE,MAAM,CAAC;aACrB,GAAG,MAAM,GAAG,OAAO,CAAC;YACrB,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,WAAW,EAAE,MAAM,CAAC;YACpB,IAAI,EAAE,MAAM,CAAC;YACb,qDAAqD;YACrD,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;YACtB,+DAA+D;YAC/D,OAAO,EAAE,MAAM,CAAC;YAChB,4CAA4C;YAC5C,MAAM,EAAE,MAAM,CAAC;YACf,yBAAyB;YACzB,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC;YAC5B,+CAA+C;YAC/C,OAAO,EAAE,MAAM,CAAC;YAChB,wCAAwC;YACxC,SAAS,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,qCAAqC;QACrC,UAAU,EAAE;YACR,+BAA+B;YAC/B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;YACpB,mCAAmC;YACnC,OAAO,EAAE;gBACL,EAAE,EAAE,MAAM,CAAC;gBACX,2BAA2B;gBAC3B,OAAO,CAAC,EAAE;oBACN,8BAA8B;oBAC9B,EAAE,EAAE,MAAM,CAAC;oBACX,IAAI,EAAE,MAAM,CAAC;oBACb,IAAI,CAAC,EAAE,MAAM,CAAC;oBACd,WAAW,EAAE,MAAM,CAAC;oBACpB,OAAO,EAAE,OAAO,CAAC;oBACjB,QAAQ,EAAE,MAAM,CAAC;oBACjB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;oBAC3B,yCAAyC;oBACzC,SAAS,EAAE,MAAM,CAAC;iBACrB,GAAG,MAAM,GAAG,OAAO,CAAC;gBACrB,IAAI,EAAE,MAAM,CAAC;gBACb,IAAI,EAAE,MAAM,CAAC;gBACb,WAAW,EAAE,MAAM,CAAC;gBACpB,IAAI,EAAE,MAAM,CAAC;gBACb,qDAAqD;gBACrD,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;gBACtB,+DAA+D;gBAC/D,OAAO,EAAE,MAAM,CAAC;gBAChB,4CAA4C;gBAC5C,MAAM,EAAE,MAAM,CAAC;gBACf,yBAAyB;gBACzB,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC;gBAC5B,+CAA+C;gBAC/C,OAAO,EAAE,MAAM,CAAC;gBAChB,wCAAwC;gBACxC,SAAS,EAAE,MAAM,CAAC;aACrB,EAAE,CAAC;SACP,CAAC;QACF,YAAY,EAAE;YACV,IAAI,EAAE,MAAM,CAAC;YACb,wCAAwC;YACxC,UAAU,EAAE,MAAM,CAAC;YACnB,+DAA+D;YAC/D,OAAO,EAAE,MAAM,CAAC;YAChB;;;eAGG;YACH,MAAM,EAAE,MAAM,CAAC;YACf,WAAW,CAAC,EAAE,MAAM,CAAC;SACxB,CAAC;QACF,YAAY,EAAE;YACV,WAAW,CAAC,EAAE,MAAM,CAAC;SACxB,CAAC;QACF,oBAAoB,EAAE;YAClB,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,GAAG,CAAC,EAAE,MAAM,CAAC;YACb,+CAA+C;YAC/C,UAAU,EAAE,OAAO,CAAC;YACpB,KAAK,CAAC,EAAE,MAAM,CAAC;SAClB,CAAC;QACF,YAAY,EAAE;YACV,UAAU,EAAE,MAAM,CAAC;YACnB,IAAI,EAAE,MAAM,CAAC;YACb,8BAA8B;YAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;YAChB,oBAAoB;YACpB,GAAG,EAAE,OAAO,CAAC;SAChB,CAAC;QACF,YAAY,EAAE;YACV,2CAA2C;YAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;SACnB,CAAC;KACL,CAAC;IACF,SAAS,EAAE,KAAK,CAAC;IACjB,UAAU,EAAE,KAAK,CAAC;IAClB,aAAa,EAAE,KAAK,CAAC;IACrB,OAAO,EAAE;QACL,+BAA+B;QAC/B,EAAE,EAAE,OAAO,CAAC;KACf,CAAC;IACF,SAAS,EAAE,KAAK,CAAC;CACpB;AACD,MAAM,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC1C,MAAM,WAAW,UAAU;IACvB,cAAc,EAAE;QACZ,UAAU,EAAE;YACR,KAAK,CAAC,EAAE;gBACJ,0CAA0C;gBAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;gBAChB,6CAA6C;gBAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;aACrB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,qCAAqC;YACrC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE;wBAChB,+BAA+B;wBAC/B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;wBACpB,mCAAmC;wBACnC,OAAO,EAAE,OAAO,EAAE,CAAC;qBACtB,CAAC;iBACL,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,gBAAgB,EAAE;QACd,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,EAAE;YACT,OAAO,EAAE;gBACL,kBAAkB,EAAE;oBAChB,IAAI,EAAE,MAAM,CAAC;oBACb,WAAW,CAAC,EAAE,MAAM,CAAC;iBACxB,CAAC;aACL,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC;iBACxD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,cAAc,EAAE;QACZ,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,UAAU,EAAE,MAAM,CAAC;aACtB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE,KAAK,CAAC;KACpB,CAAC;IACF,mBAAmB,EAAE;QACjB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,IAAI,EAAE,MAAM,CAAC;aAChB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC;iBACxD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,aAAa,EAAE;QACX,UAAU,EAAE;YACR,KAAK,CAAC,EAAE;gBACJ,0CAA0C;gBAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;gBAChB,6CAA6C;gBAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;aACrB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;iBAC3D,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,eAAe,EAAE;QACb,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE;YACV,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,CAAC;aAC7D,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;iBACvD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,eAAe,EAAE;QACb,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,UAAU,EAAE,MAAM,CAAC;aACtB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,iCAAiC;QACjC,WAAW,CAAC,EAAE;YACV,OAAO,EAAE;gBACL,kBAAkB,EAAE;oBAChB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC1B,CAAC;aACL,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,CAAC,EAAE,KAAK,CAAC;aACnB,CAAC;SACL,CAAC;KACL,CAAC;IACF,WAAW,EAAE;QACT,UAAU,EAAE;YACR,KAAK,CAAC,EAAE;gBACJ,0CAA0C;gBAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;gBAChB,6CAA6C;gBAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;gBAClB,KAAK,CAAC,EAAE,MAAM,CAAC;aAClB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC;iBACxD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,YAAY,EAAE;QACV,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE;YACV,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC;aAC1D,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC;iBACpD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,aAAa,EAAE;QACX,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,MAAM,EAAE,MAAM,CAAC;aAClB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC;iBACpD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,SAAS,EAAE;QACP,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,MAAM,EAAE,MAAM,CAAC;aAClB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC;iBACpD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,YAAY,EAAE;QACV,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,MAAM,EAAE,MAAM,CAAC;aAClB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE;YACV,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,CAAC;aAC1D,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC;iBACpD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,YAAY,EAAE;QACV,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,MAAM,EAAE,MAAM,CAAC;aAClB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,CAAC,EAAE,KAAK,CAAC;aACnB,CAAC;SACL,CAAC;KACL,CAAC;IACF,eAAe,EAAE;QACb,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,IAAI,EAAE,MAAM,CAAC;aAChB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC;iBACpD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,eAAe,EAAE;QACb,UAAU,EAAE;YACR,KAAK,EAAE;gBACH,gCAAgC;gBAChC,IAAI,EAAE,MAAM,CAAC;aAChB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,sBAAsB,CAAC,CAAC;iBACrE,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,kBAAkB,EAAE;QAChB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,MAAM,EAAE,MAAM,CAAC;aAClB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE;wBAChB,EAAE,EAAE,MAAM,CAAC;wBACX,MAAM,EAAE,MAAM,CAAC;wBACf,QAAQ,EAAE,MAAM,CAAC;wBACjB,KAAK,EAAE,MAAM,CAAC;wBACd,IAAI,EAAE,MAAM,CAAC;wBACb,QAAQ,EAAE,MAAM,CAAC;qBACpB,CAAC;iBACL,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,UAAU,EAAE;QACR,UAAU,EAAE;YACR,KAAK,CAAC,EAAE;gBACJ,QAAQ,CAAC,EAAE,OAAO,CAAC;gBACnB,aAAa,CAAC,EAAE,MAAM,CAAC;aAC1B,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,MAAM,EAAE,MAAM,CAAC;aAClB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,CAAC,EAAE,KAAK,CAAC;aACnB,CAAC;SACL,CAAC;KACL,CAAC;IACF,aAAa,EAAE;QACX,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,MAAM,EAAE,MAAM,CAAC;aAClB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,CAAC,EAAE,KAAK,CAAC;aACnB,CAAC;SACL,CAAC;KACL,CAAC;IACF,YAAY,EAAE;QACV,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,SAAS,EAAE,MAAM,CAAC;aACrB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;iBACvD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,eAAe,EAAE;QACb,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,SAAS,EAAE,MAAM,CAAC;aACrB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE;YACV,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,CAAC;aAC7D,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;iBACvD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,eAAe,EAAE;QACb,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,SAAS,EAAE,MAAM,CAAC;aACrB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,CAAC,EAAE,KAAK,CAAC;aACnB,CAAC;SACL,CAAC;KACL,CAAC;IACF,aAAa,EAAE;QACX,UAAU,EAAE;YACR,KAAK,CAAC,EAAE;gBACJ,0CAA0C;gBAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;gBAChB,6CAA6C;gBAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;gBAClB,KAAK,CAAC,EAAE,MAAM,CAAC;aAClB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;iBAC3D,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,eAAe,EAAE;QACb,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE;YACV,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,CAAC;aAC7D,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;iBACvD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,aAAa,EAAE;QACX,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,IAAI,EAAE,MAAM,CAAC;aAChB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;iBACvD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,gBAAgB,EAAE;QACd,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE;YACV,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,CAAC;aAC7D,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;iBACvD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,kBAAkB,EAAE;QAChB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE;gBACJ,0CAA0C;gBAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;gBAChB,6CAA6C;gBAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;aACrB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,UAAU,EAAE,MAAM,CAAC;aACtB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;iBAC3D,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,gBAAgB,EAAE;QACd,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,SAAS,EAAE,MAAM,CAAC;aACrB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,CAAC,EAAE,KAAK,CAAC;aACnB,CAAC;SACL,CAAC;KACL,CAAC;IACF,sBAAsB,EAAE;QACpB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE;YACV,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,mBAAmB,CAAC,CAAC;aAClE,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;iBACzD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,iBAAiB,EAAE;QACf,UAAU,EAAE;YACR,KAAK,CAAC,EAAE;gBACJ,0CAA0C;gBAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;gBAChB,6CAA6C;gBAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;gBAClB,KAAK,CAAC,EAAE,MAAM,CAAC;gBACf,GAAG,CAAC,EAAE,MAAM,CAAC;aAChB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,gBAAgB,CAAC,CAAC;iBAC/D,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,mBAAmB,EAAE;QACjB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE;YACV,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,CAAC;aACjE,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;iBAC3D,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,gBAAgB,EAAE;QACd,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,aAAa,EAAE,MAAM,CAAC;aACzB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;iBAC3D,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,eAAe,EAAE;QACb,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE;YACV,OAAO,EAAE;gBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,CAAC;aAC7D,CAAC;SACL,CAAC;QACF,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;iBACvD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,eAAe,EAAE;QACb,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,EAAE;gBACF,SAAS,EAAE,MAAM,CAAC;aACrB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,EAAE;oBACL,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;iBACvD,CAAC;aACL,CAAC;SACL,CAAC;KACL,CAAC;IACF,gBAAgB,EAAE;QACd,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE,KAAK,CAAC;KACpB,CAAC;IACF,sBAAsB,EAAE;QACpB,UAAU,EAAE;YACR,KAAK,EAAE;gBACH,SAAS,EAAE,MAAM,CAAC;aACrB,CAAC;YACF,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,CAAC,EAAE,KAAK,CAAC;aACnB,CAAC;SACL,CAAC;KACL,CAAC;IACF,uBAAuB,EAAE;QACrB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,CAAC,EAAE,KAAK,CAAC;aACnB,CAAC;SACL,CAAC;KACL,CAAC;IACF,oBAAoB,EAAE;QAClB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,CAAC,EAAE,KAAK,CAAC;aACnB,CAAC;SACL,CAAC;KACL,CAAC;IACF,qBAAqB,EAAE;QACnB,UAAU,EAAE;YACR,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAClB,CAAC;QACF,WAAW,CAAC,EAAE,KAAK,CAAC;QACpB,SAAS,EAAE;YACP,oCAAoC;YACpC,GAAG,EAAE;gBACD,OAAO,EAAE;oBACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;iBAC3B,CAAC;gBACF,OAAO,CAAC,EAAE,KAAK,CAAC;aACnB,CAAC;SACL,CAAC;KACL,CAAC;CACL"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apikey.d.ts","sourceRoot":"","sources":["../../src/auth/apikey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D,eAAO,MAAM,gBAAgB,YACnB,MAAM,KACb,mBAMF,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
type Method = "get" | "GET" | "delete" | "DELETE" | "head" | "HEAD" | "options" | "OPTIONS" | "post" | "POST" | "put" | "PUT" | "patch" | "PATCH" | "purge" | "PURGE" | "link" | "LINK" | "unlink" | "UNLINK";
|
|
2
|
+
export type FetcherRequestParams = {
|
|
3
|
+
url: string;
|
|
4
|
+
method?: Method;
|
|
5
|
+
params?: any;
|
|
6
|
+
};
|
|
7
|
+
export type Headers = {
|
|
8
|
+
authorization?: string;
|
|
9
|
+
};
|
|
10
|
+
export type FetcherCreateParams = {
|
|
11
|
+
baseURL?: string;
|
|
12
|
+
headers?: Headers;
|
|
13
|
+
};
|
|
14
|
+
export type Fetcher = {
|
|
15
|
+
get: <T>(url: string) => Promise<T>;
|
|
16
|
+
post: <T>(url: string, data: any) => Promise<T>;
|
|
17
|
+
request: <T>(params: FetcherRequestParams) => Promise<T>;
|
|
18
|
+
check: <T>(url: string, status?: number) => Promise<boolean>;
|
|
19
|
+
};
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=Fetcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Fetcher.d.ts","sourceRoot":"","sources":["../../src/fetcher/Fetcher.ts"],"names":[],"mappings":"AAAA,KAAK,MAAM,GACP,KAAK,GACL,KAAK,GACL,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,MAAM,GACN,SAAS,GACT,SAAS,GACT,MAAM,GACN,MAAM,GACN,KAAK,GACL,KAAK,GACL,OAAO,GACP,OAAO,GACP,OAAO,GACP,OAAO,GACP,MAAM,GACN,MAAM,GACN,QAAQ,GACR,QAAQ,CAAC;AACb,MAAM,MAAM,oBAAoB,GAAG;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,GAAG,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IACpC,IAAI,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAChD,OAAO,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,oBAAoB,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IACzD,KAAK,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC9D,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetcher_axios.d.ts","sourceRoot":"","sources":["../../src/fetcher/fetcher_axios.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAS5D,eAAO,MAAM,aAAa,YAAY,mBAAmB,KAAQ,OAqChE,CAAC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import axios from "axios";
|
|
2
|
+
import { FaableApiError } from "../helpers/error_handler.js";
|
|
3
|
+
const handleErrorInterceptor = async (e) => {
|
|
4
|
+
const data = e.response?.data;
|
|
5
|
+
throw new FaableApiError(`FaableApiError: ${data?.message} (status=${e.response?.status}, url=${e.response?.config.url})`);
|
|
6
|
+
};
|
|
7
|
+
export const fetcher_axios = (params = {}) => {
|
|
8
|
+
const instance = axios.create(params);
|
|
9
|
+
// Add base interceptor
|
|
10
|
+
instance.interceptors.response.use((res) => {
|
|
11
|
+
//console.log(`Request ${res.config.url}`);
|
|
12
|
+
return res;
|
|
13
|
+
}, handleErrorInterceptor);
|
|
14
|
+
return {
|
|
15
|
+
get: async (url) => {
|
|
16
|
+
const res = await instance.request({
|
|
17
|
+
method: "GET",
|
|
18
|
+
url,
|
|
19
|
+
});
|
|
20
|
+
return res.data;
|
|
21
|
+
},
|
|
22
|
+
post: async (url, data) => {
|
|
23
|
+
const res = await instance.request({
|
|
24
|
+
method: "GET",
|
|
25
|
+
url,
|
|
26
|
+
data,
|
|
27
|
+
});
|
|
28
|
+
return res.data;
|
|
29
|
+
},
|
|
30
|
+
request: async (params) => {
|
|
31
|
+
const res = await instance.request(params);
|
|
32
|
+
return res.data;
|
|
33
|
+
},
|
|
34
|
+
check: async (url) => {
|
|
35
|
+
const res = await instance.request({
|
|
36
|
+
method: "GET",
|
|
37
|
+
url,
|
|
38
|
+
validateStatus: () => true,
|
|
39
|
+
});
|
|
40
|
+
return res.status == 200;
|
|
41
|
+
},
|
|
42
|
+
};
|
|
43
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export type ClientCredentialsConfig = {
|
|
2
|
+
domain: string;
|
|
3
|
+
clientId: string;
|
|
4
|
+
clientSecret: string;
|
|
5
|
+
};
|
|
6
|
+
export interface ClientCredentialsResponse {
|
|
7
|
+
access_token: string;
|
|
8
|
+
}
|
|
9
|
+
export declare class ClientCredentialsFlow {
|
|
10
|
+
private config;
|
|
11
|
+
constructor(config: ClientCredentialsConfig);
|
|
12
|
+
private response?;
|
|
13
|
+
private isTokenExpired;
|
|
14
|
+
private _getToken;
|
|
15
|
+
getToken(): Promise<string>;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=authorize-client-credentials.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authorize-client-credentials.d.ts","sourceRoot":"","sources":["../../src/helpers/authorize-client-credentials.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,WAAW,yBAAyB;IACxC,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,qBAAqB;IACpB,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,uBAAuB;IAEnD,OAAO,CAAC,QAAQ,CAAC,CAA4B;IAE7C,OAAO,CAAC,cAAc;YAUR,SAAS;IAgBjB,QAAQ;CASf"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import axios from "axios";
|
|
2
|
+
import { jwtDecode } from "jwt-decode";
|
|
3
|
+
export class ClientCredentialsFlow {
|
|
4
|
+
config;
|
|
5
|
+
constructor(config) {
|
|
6
|
+
this.config = config;
|
|
7
|
+
}
|
|
8
|
+
response;
|
|
9
|
+
isTokenExpired() {
|
|
10
|
+
if (!this.response)
|
|
11
|
+
throw new Error("No token");
|
|
12
|
+
let { exp } = jwtDecode(this.response?.access_token);
|
|
13
|
+
if (!exp) {
|
|
14
|
+
throw new Error("Missing expire date");
|
|
15
|
+
}
|
|
16
|
+
const currentSeconds = new Date().getTime() / 1000;
|
|
17
|
+
return currentSeconds > exp;
|
|
18
|
+
}
|
|
19
|
+
async _getToken() {
|
|
20
|
+
const params = new URLSearchParams();
|
|
21
|
+
params.append("grant_type", "client_credentials");
|
|
22
|
+
params.append("client_id", this.config.clientId);
|
|
23
|
+
params.append("client_secret", this.config.clientSecret);
|
|
24
|
+
const res = await axios.post(this.config.domain + "/oauth/token", params);
|
|
25
|
+
this.response = res.data;
|
|
26
|
+
console.log(`[${this.config.domain}] ✅ Client Credentials flow completed `);
|
|
27
|
+
return this.response;
|
|
28
|
+
}
|
|
29
|
+
async getToken() {
|
|
30
|
+
if (!this.response || this.isTokenExpired()) {
|
|
31
|
+
await this._getToken();
|
|
32
|
+
}
|
|
33
|
+
if (!this.response?.access_token) {
|
|
34
|
+
throw new Error("Cannot get token");
|
|
35
|
+
}
|
|
36
|
+
return this.response?.access_token;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { AxiosInstance } from "axios";
|
|
2
|
+
import { ClientCredentialsConfig } from "./authorize-client-credentials.js";
|
|
3
|
+
interface AuthConfig {
|
|
4
|
+
client?: AxiosInstance;
|
|
5
|
+
client_credentials?: ClientCredentialsConfig;
|
|
6
|
+
}
|
|
7
|
+
export declare const authorize: (_config?: AuthConfig) => AxiosInstance;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=authorize.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authorize.d.ts","sourceRoot":"","sources":["../../src/helpers/authorize.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAE7C,OAAO,EAEL,uBAAuB,EACxB,MAAM,mCAAmC,CAAC;AAE3C,UAAU,UAAU;IAClB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,kBAAkB,CAAC,EAAE,uBAAuB,CAAC;CAC9C;AAED,eAAO,MAAM,SAAS,aAAc,UAAU,kBA6C7C,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import axios from "axios";
|
|
2
|
+
import { ClientCredentialsFlow, } from "./authorize-client-credentials.js";
|
|
3
|
+
export const authorize = (_config) => {
|
|
4
|
+
const authDomain = process.env.FAABLEAUTH_DOMAIN || _config?.client_credentials?.domain || "";
|
|
5
|
+
if (!authDomain) {
|
|
6
|
+
throw new Error("Setup Faable Auth failed, missing env FAABLEAUTH_DOMAIN");
|
|
7
|
+
}
|
|
8
|
+
const client_credentials_config = {
|
|
9
|
+
domain: authDomain,
|
|
10
|
+
clientId: process.env.FAABLEAUTH_CLIENT_ID ||
|
|
11
|
+
_config?.client_credentials?.clientId ||
|
|
12
|
+
"",
|
|
13
|
+
clientSecret: process.env.FAABLEAUTH_CLIENT_SECRET ||
|
|
14
|
+
_config?.client_credentials?.clientSecret ||
|
|
15
|
+
"",
|
|
16
|
+
};
|
|
17
|
+
// Reuse client or setup a new one
|
|
18
|
+
const client = _config?.client || axios.create({ baseURL: authDomain });
|
|
19
|
+
// Config is OK
|
|
20
|
+
let enable_client_credentials = false;
|
|
21
|
+
if (client_credentials_config.domain &&
|
|
22
|
+
client_credentials_config.clientId &&
|
|
23
|
+
client_credentials_config.clientSecret) {
|
|
24
|
+
enable_client_credentials = true;
|
|
25
|
+
console.log(`[${client_credentials_config.domain}] Using client credentials`);
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
console.warn(`Client credentials not configured`);
|
|
29
|
+
}
|
|
30
|
+
const flow = new ClientCredentialsFlow(client_credentials_config);
|
|
31
|
+
client.interceptors.request.use(async function (config) {
|
|
32
|
+
if (enable_client_credentials) {
|
|
33
|
+
const token = await flow.getToken();
|
|
34
|
+
config.headers.set("Authorization", `Bearer ${token}`);
|
|
35
|
+
}
|
|
36
|
+
return config;
|
|
37
|
+
});
|
|
38
|
+
return client;
|
|
39
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error_handler.d.ts","sourceRoot":"","sources":["../../src/helpers/error_handler.ts"],"names":[],"mappings":"AAAA,qBAAa,cAAe,SAAQ,KAAK;gBAC3B,GAAG,EAAE,MAAM;CAKxB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Fetcher, FetcherRequestParams } from "../fetcher/Fetcher.js";
|
|
2
|
+
export interface Page<T> {
|
|
3
|
+
next: string | null;
|
|
4
|
+
results: T[];
|
|
5
|
+
}
|
|
6
|
+
export type Paginator = ReturnType<typeof buildPaginator>;
|
|
7
|
+
export declare const buildPaginator: (fetcher: Fetcher) => <T>(req: FetcherRequestParams) => {
|
|
8
|
+
all: () => Promise<T[]>;
|
|
9
|
+
first: () => Promise<Page<T>>;
|
|
10
|
+
pass: (params?: {
|
|
11
|
+
cursor?: string;
|
|
12
|
+
pageSize?: string;
|
|
13
|
+
}) => Promise<Page<T>>;
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=paginator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paginator.d.ts","sourceRoot":"","sources":["../../src/helpers/paginator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAEtE,MAAM,WAAW,IAAI,CAAC,CAAC;IACrB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE,CAAC,EAAE,CAAC;CACd;AACD,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;AAC1D,eAAO,MAAM,cAAc,YACf,OAAO,MAChB,CAAC,OAAO,oBAAoB;;;oBAiBJ;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;CAU9D,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export const buildPaginator = (fetcher) => (req) => {
|
|
2
|
+
return {
|
|
3
|
+
all: async () => {
|
|
4
|
+
const pages = [];
|
|
5
|
+
let data;
|
|
6
|
+
do {
|
|
7
|
+
data = await fetcher.request({
|
|
8
|
+
...req,
|
|
9
|
+
params: { ...req.params, next: data && data?.next },
|
|
10
|
+
});
|
|
11
|
+
pages.push(data);
|
|
12
|
+
} while (data.next);
|
|
13
|
+
return pages.map((page) => page.results).flat();
|
|
14
|
+
},
|
|
15
|
+
first: async () => {
|
|
16
|
+
return fetcher.request(req);
|
|
17
|
+
},
|
|
18
|
+
pass: async (params = {}) => {
|
|
19
|
+
return fetcher.request({
|
|
20
|
+
...req,
|
|
21
|
+
params: {
|
|
22
|
+
...req.params,
|
|
23
|
+
...params,
|
|
24
|
+
},
|
|
25
|
+
});
|
|
26
|
+
},
|
|
27
|
+
};
|
|
28
|
+
};
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAC;AACzC,OAAO,KAAK,KAAK,MAAM,oBAAoB,CAAC;AAE5C,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC"}
|
package/dist/index.js
ADDED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@faable/deploy-sdk",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.3",
|
|
4
4
|
"author": "Marc Pomar <marc@faable.com>",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"typescript": "^5.6.2"
|
|
27
27
|
},
|
|
28
28
|
"scripts": {
|
|
29
|
-
"generate-types": "openapi-typescript https://api.faable.com/docs/json -o src/api/types.
|
|
29
|
+
"generate-types": "openapi-typescript https://api.faable.com/docs/json -o src/api/types.ts",
|
|
30
30
|
"prebuild": "rimraf dist",
|
|
31
31
|
"build": "tsc",
|
|
32
32
|
"test": "ava",
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import test from "ava";
|
|
2
|
-
import { faableapi } from "./FaableDeployApi.js";
|
|
3
|
-
import { createApikeyAuth } from "./auth/apikey.js";
|
|
4
|
-
|
|
5
|
-
test("instance", async (t) => {
|
|
6
|
-
const auth = createApikeyAuth();
|
|
7
|
-
const api = faableapi({
|
|
8
|
-
auth,
|
|
9
|
-
});
|
|
10
|
-
const app = await api.getApp("app_64f312b7347d780011861a0f");
|
|
11
|
-
console.log(app);
|
|
12
|
-
t.pass();
|
|
13
|
-
});
|
package/src/FaableDeployApi.ts
DELETED
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { Deployment, App } from "./api/api-types.js";
|
|
2
|
-
import { buildPaginator, Paginator, Page } from "./helpers/paginator.js";
|
|
3
|
-
import { fetcher_axios } from "./fetcher/fetcher_axios.js";
|
|
4
|
-
import { Fetcher, FetcherCreateParams } from "./fetcher/Fetcher.js";
|
|
5
|
-
|
|
6
|
-
type ApiParams = {
|
|
7
|
-
fetcher?: FetcherCreateParams;
|
|
8
|
-
auth?: FetcherCreateParams;
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
export class FaableDeployApi {
|
|
12
|
-
private fetcher: Fetcher;
|
|
13
|
-
private paginator: Paginator;
|
|
14
|
-
|
|
15
|
-
constructor(params: ApiParams = {}) {
|
|
16
|
-
this.fetcher = fetcher_axios({
|
|
17
|
-
baseURL: "https://api.faable.com",
|
|
18
|
-
...params.fetcher,
|
|
19
|
-
...params.auth,
|
|
20
|
-
});
|
|
21
|
-
this.paginator = buildPaginator(this.fetcher);
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
getDeployment(id: string) {
|
|
25
|
-
return this.fetcher.get<Deployment>(`/deployment/${id}`);
|
|
26
|
-
}
|
|
27
|
-
getApp(id: string) {
|
|
28
|
-
return this.fetcher.get<App>(`/app/${id}`);
|
|
29
|
-
}
|
|
30
|
-
listApps() {
|
|
31
|
-
return this.paginator({ url: "/app" });
|
|
32
|
-
}
|
|
33
|
-
updateStatus<T>(id: string, data: T) {
|
|
34
|
-
return this.fetcher.post(`/status/${id}`, data);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
export const faableapi = (params: ApiParams = {}) => {
|
|
39
|
-
return new FaableDeployApi(params);
|
|
40
|
-
};
|
package/src/auth/apikey.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { FetcherCreateParams } from "../fetcher/Fetcher.js";
|
|
2
|
-
|
|
3
|
-
export const createApikeyAuth = (
|
|
4
|
-
apikey: string = process.env.FAABLE_APIKEY || ""
|
|
5
|
-
): FetcherCreateParams => {
|
|
6
|
-
return {
|
|
7
|
-
headers: {
|
|
8
|
-
authorization: `basic ${btoa(`${apikey}:${apikey}`)}`,
|
|
9
|
-
},
|
|
10
|
-
};
|
|
11
|
-
};
|
package/src/fetcher/Fetcher.ts
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
type Method =
|
|
2
|
-
| "get"
|
|
3
|
-
| "GET"
|
|
4
|
-
| "delete"
|
|
5
|
-
| "DELETE"
|
|
6
|
-
| "head"
|
|
7
|
-
| "HEAD"
|
|
8
|
-
| "options"
|
|
9
|
-
| "OPTIONS"
|
|
10
|
-
| "post"
|
|
11
|
-
| "POST"
|
|
12
|
-
| "put"
|
|
13
|
-
| "PUT"
|
|
14
|
-
| "patch"
|
|
15
|
-
| "PATCH"
|
|
16
|
-
| "purge"
|
|
17
|
-
| "PURGE"
|
|
18
|
-
| "link"
|
|
19
|
-
| "LINK"
|
|
20
|
-
| "unlink"
|
|
21
|
-
| "UNLINK";
|
|
22
|
-
export type FetcherRequestParams = {
|
|
23
|
-
url: string;
|
|
24
|
-
method?: Method;
|
|
25
|
-
params?: any;
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
export type Headers = {
|
|
29
|
-
authorization?: string;
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
export type FetcherCreateParams = {
|
|
33
|
-
baseURL?: string;
|
|
34
|
-
headers?: Headers;
|
|
35
|
-
};
|
|
36
|
-
|
|
37
|
-
export type Fetcher = {
|
|
38
|
-
get: <T>(url: string) => Promise<T>;
|
|
39
|
-
post: <T>(url: string, data: any) => Promise<T>;
|
|
40
|
-
request: <T>(params: FetcherRequestParams) => Promise<T>;
|
|
41
|
-
check: <T>(url: string, status?: number) => Promise<boolean>;
|
|
42
|
-
};
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import axios, { AxiosError } from "axios";
|
|
2
|
-
import { AxiosRequestConfig, AxiosResponse } from "axios";
|
|
3
|
-
import { FaableApiError } from "../helpers/error_handler.js";
|
|
4
|
-
import { Fetcher, FetcherCreateParams } from "./Fetcher.js";
|
|
5
|
-
|
|
6
|
-
const handleErrorInterceptor = async (e: AxiosError) => {
|
|
7
|
-
const data: any = e.response?.data;
|
|
8
|
-
throw new FaableApiError(
|
|
9
|
-
`FaableApiError: ${data?.message} (status=${e.response?.status}, url=${e.response?.config.url})`
|
|
10
|
-
);
|
|
11
|
-
};
|
|
12
|
-
|
|
13
|
-
export const fetcher_axios = (params: FetcherCreateParams = {}): Fetcher => {
|
|
14
|
-
const instance = axios.create(params);
|
|
15
|
-
// Add base interceptor
|
|
16
|
-
instance.interceptors.response.use((res: AxiosResponse) => {
|
|
17
|
-
//console.log(`Request ${res.config.url}`);
|
|
18
|
-
return res;
|
|
19
|
-
}, handleErrorInterceptor);
|
|
20
|
-
|
|
21
|
-
return {
|
|
22
|
-
get: async <T>(url: string) => {
|
|
23
|
-
const res = await instance.request<T>({
|
|
24
|
-
method: "GET",
|
|
25
|
-
url,
|
|
26
|
-
});
|
|
27
|
-
return res.data;
|
|
28
|
-
},
|
|
29
|
-
post: async <T>(url: string, data: any) => {
|
|
30
|
-
const res = await instance.request<T>({
|
|
31
|
-
method: "GET",
|
|
32
|
-
url,
|
|
33
|
-
data,
|
|
34
|
-
});
|
|
35
|
-
return res.data;
|
|
36
|
-
},
|
|
37
|
-
request: async <T>(params: AxiosRequestConfig) => {
|
|
38
|
-
const res = await instance.request<T>(params);
|
|
39
|
-
return res.data;
|
|
40
|
-
},
|
|
41
|
-
check: async <T>(url: string) => {
|
|
42
|
-
const res = await instance.request<T>({
|
|
43
|
-
method: "GET",
|
|
44
|
-
url,
|
|
45
|
-
validateStatus: () => true,
|
|
46
|
-
});
|
|
47
|
-
return res.status == 200;
|
|
48
|
-
},
|
|
49
|
-
};
|
|
50
|
-
};
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import axios, { AxiosInstance } from "axios";
|
|
2
|
-
import { jwtDecode } from "jwt-decode";
|
|
3
|
-
|
|
4
|
-
export type ClientCredentialsConfig = {
|
|
5
|
-
domain: string;
|
|
6
|
-
clientId: string;
|
|
7
|
-
clientSecret: string;
|
|
8
|
-
};
|
|
9
|
-
|
|
10
|
-
export interface ClientCredentialsResponse {
|
|
11
|
-
access_token: string;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
export class ClientCredentialsFlow {
|
|
15
|
-
constructor(private config: ClientCredentialsConfig) {}
|
|
16
|
-
|
|
17
|
-
private response?: ClientCredentialsResponse;
|
|
18
|
-
|
|
19
|
-
private isTokenExpired() {
|
|
20
|
-
if (!this.response) throw new Error("No token");
|
|
21
|
-
let { exp } = jwtDecode(this.response?.access_token);
|
|
22
|
-
if (!exp) {
|
|
23
|
-
throw new Error("Missing expire date");
|
|
24
|
-
}
|
|
25
|
-
const currentSeconds = new Date().getTime() / 1000;
|
|
26
|
-
return currentSeconds > exp;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
private async _getToken() {
|
|
30
|
-
const params = new URLSearchParams();
|
|
31
|
-
params.append("grant_type", "client_credentials");
|
|
32
|
-
params.append("client_id", this.config.clientId);
|
|
33
|
-
params.append("client_secret", this.config.clientSecret);
|
|
34
|
-
const res = await axios.post<ClientCredentialsResponse>(
|
|
35
|
-
this.config.domain + "/oauth/token",
|
|
36
|
-
params
|
|
37
|
-
);
|
|
38
|
-
this.response = res.data;
|
|
39
|
-
console.log(
|
|
40
|
-
`[${this.config.domain}] ✅ Client Credentials flow completed `
|
|
41
|
-
);
|
|
42
|
-
return this.response;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
async getToken() {
|
|
46
|
-
if (!this.response || this.isTokenExpired()) {
|
|
47
|
-
await this._getToken();
|
|
48
|
-
}
|
|
49
|
-
if (!this.response?.access_token) {
|
|
50
|
-
throw new Error("Cannot get token");
|
|
51
|
-
}
|
|
52
|
-
return this.response?.access_token;
|
|
53
|
-
}
|
|
54
|
-
}
|
package/src/helpers/authorize.ts
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import axios, { AxiosInstance } from "axios";
|
|
2
|
-
|
|
3
|
-
import {
|
|
4
|
-
ClientCredentialsFlow,
|
|
5
|
-
ClientCredentialsConfig,
|
|
6
|
-
} from "./authorize-client-credentials.js";
|
|
7
|
-
|
|
8
|
-
interface AuthConfig {
|
|
9
|
-
client?: AxiosInstance;
|
|
10
|
-
client_credentials?: ClientCredentialsConfig;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export const authorize = (_config?: AuthConfig) => {
|
|
14
|
-
const authDomain =
|
|
15
|
-
process.env.FAABLEAUTH_DOMAIN || _config?.client_credentials?.domain || "";
|
|
16
|
-
if (!authDomain) {
|
|
17
|
-
throw new Error("Setup Faable Auth failed, missing env FAABLEAUTH_DOMAIN");
|
|
18
|
-
}
|
|
19
|
-
const client_credentials_config: ClientCredentialsConfig = {
|
|
20
|
-
domain: authDomain,
|
|
21
|
-
clientId:
|
|
22
|
-
process.env.FAABLEAUTH_CLIENT_ID ||
|
|
23
|
-
_config?.client_credentials?.clientId ||
|
|
24
|
-
"",
|
|
25
|
-
clientSecret:
|
|
26
|
-
process.env.FAABLEAUTH_CLIENT_SECRET ||
|
|
27
|
-
_config?.client_credentials?.clientSecret ||
|
|
28
|
-
"",
|
|
29
|
-
};
|
|
30
|
-
|
|
31
|
-
// Reuse client or setup a new one
|
|
32
|
-
const client = _config?.client || axios.create({ baseURL: authDomain });
|
|
33
|
-
|
|
34
|
-
// Config is OK
|
|
35
|
-
let enable_client_credentials = false;
|
|
36
|
-
if (
|
|
37
|
-
client_credentials_config.domain &&
|
|
38
|
-
client_credentials_config.clientId &&
|
|
39
|
-
client_credentials_config.clientSecret
|
|
40
|
-
) {
|
|
41
|
-
enable_client_credentials = true;
|
|
42
|
-
console.log(
|
|
43
|
-
`[${client_credentials_config.domain}] Using client credentials`
|
|
44
|
-
);
|
|
45
|
-
} else {
|
|
46
|
-
console.warn(`Client credentials not configured`);
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
const flow = new ClientCredentialsFlow(client_credentials_config);
|
|
50
|
-
client.interceptors.request.use(async function (config) {
|
|
51
|
-
if (enable_client_credentials) {
|
|
52
|
-
const token = await flow.getToken();
|
|
53
|
-
config.headers.set("Authorization", `Bearer ${token}`);
|
|
54
|
-
}
|
|
55
|
-
return config;
|
|
56
|
-
});
|
|
57
|
-
return client;
|
|
58
|
-
};
|
package/src/helpers/paginator.ts
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { Fetcher, FetcherRequestParams } from "../fetcher/Fetcher.js";
|
|
2
|
-
|
|
3
|
-
export interface Page<T> {
|
|
4
|
-
next: string | null;
|
|
5
|
-
results: T[];
|
|
6
|
-
}
|
|
7
|
-
export type Paginator = ReturnType<typeof buildPaginator>;
|
|
8
|
-
export const buildPaginator =
|
|
9
|
-
(fetcher: Fetcher) =>
|
|
10
|
-
<T>(req: FetcherRequestParams) => {
|
|
11
|
-
return {
|
|
12
|
-
all: async () => {
|
|
13
|
-
const pages: Page<T>[] = [];
|
|
14
|
-
let data: Page<T> | undefined;
|
|
15
|
-
do {
|
|
16
|
-
data = await fetcher.request<Page<T>>({
|
|
17
|
-
...req,
|
|
18
|
-
params: { ...req.params, next: data && data?.next },
|
|
19
|
-
});
|
|
20
|
-
pages.push(data);
|
|
21
|
-
} while (data.next);
|
|
22
|
-
return pages.map((page) => page.results).flat();
|
|
23
|
-
},
|
|
24
|
-
first: async () => {
|
|
25
|
-
return fetcher.request<Page<T>>(req);
|
|
26
|
-
},
|
|
27
|
-
pass: async (params: { cursor?: string; pageSize?: string } = {}) => {
|
|
28
|
-
return fetcher.request<Page<T>>({
|
|
29
|
-
...req,
|
|
30
|
-
params: {
|
|
31
|
-
...req.params,
|
|
32
|
-
...params,
|
|
33
|
-
},
|
|
34
|
-
});
|
|
35
|
-
},
|
|
36
|
-
};
|
|
37
|
-
};
|
package/src/index.ts
DELETED
package/tsconfig.json
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"compilerOptions": {
|
|
3
|
-
"target": "ESNext",
|
|
4
|
-
"module": "NodeNext",
|
|
5
|
-
"moduleResolution": "NodeNext",
|
|
6
|
-
"esModuleInterop": true,
|
|
7
|
-
"forceConsistentCasingInFileNames": true,
|
|
8
|
-
"strict": true,
|
|
9
|
-
"rootDir": "./src",
|
|
10
|
-
"outDir": "dist",
|
|
11
|
-
"declaration": true,
|
|
12
|
-
"declarationMap": true
|
|
13
|
-
},
|
|
14
|
-
"include": ["src/**/*"],
|
|
15
|
-
"exclude": ["src/**/*.test.ts"]
|
|
16
|
-
}
|