tapimo 0.4.1 → 0.4.4
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/README.md +1 -1
- package/dist/ApiKey.d.ts +1 -9
- package/dist/ApiKey.d.ts.map +1 -1
- package/dist/ApiKey.js +2 -3
- package/dist/ApiKey.js.map +1 -1
- package/dist/ApiKeys.d.ts +53 -27
- package/dist/ApiKeys.d.ts.map +1 -1
- package/dist/ApiKeys.js +32 -17
- package/dist/ApiKeys.js.map +1 -1
- package/dist/App.d.ts +1990 -1442
- package/dist/App.d.ts.map +1 -1
- package/dist/App.js +23 -9
- package/dist/App.js.map +1 -1
- package/dist/Assets.d.ts +10 -0
- package/dist/Assets.d.ts.map +1 -1
- package/dist/Assets.js +4 -0
- package/dist/Assets.js.map +1 -1
- package/dist/Auth.d.ts +2 -1
- package/dist/Auth.d.ts.map +1 -1
- package/dist/Auth.js +2 -1
- package/dist/Auth.js.map +1 -1
- package/dist/Scope.d.ts +40 -15
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js +44 -13
- package/dist/Scope.js.map +1 -1
- package/dist/admin/App.d.ts +560 -9
- package/dist/admin/App.d.ts.map +1 -1
- package/dist/admin/App.js +38 -6
- package/dist/admin/App.js.map +1 -1
- package/dist/admin/apps/api-keys.d.ts +10 -24
- package/dist/admin/apps/api-keys.d.ts.map +1 -1
- package/dist/admin/apps/api-keys.js +10 -3
- package/dist/admin/apps/api-keys.js.map +1 -1
- package/dist/admin/apps/organizations.d.ts +833 -0
- package/dist/admin/apps/organizations.d.ts.map +1 -0
- package/dist/admin/apps/organizations.js +733 -0
- package/dist/admin/apps/organizations.js.map +1 -0
- package/dist/admin/apps/scopes.d.ts +8 -0
- package/dist/admin/apps/scopes.d.ts.map +1 -1
- package/dist/admin/apps/verified-tokens.d.ts +57 -57
- package/dist/admin/ui.generated.d.ts +1 -1
- package/dist/admin/ui.generated.d.ts.map +1 -1
- package/dist/admin/ui.generated.js +53 -13
- package/dist/admin/ui.generated.js.map +1 -1
- package/dist/analytics/Analytics.d.ts +10 -0
- package/dist/analytics/Analytics.d.ts.map +1 -1
- package/dist/analytics/Analytics.js +8 -0
- package/dist/analytics/Analytics.js.map +1 -1
- package/dist/analytics/tables/requestEvents.d.ts +9 -0
- package/dist/analytics/tables/requestEvents.d.ts.map +1 -1
- package/dist/analytics/tables/requestEvents.js +14 -0
- package/dist/analytics/tables/requestEvents.js.map +1 -1
- package/dist/apps/data/App.d.ts +1304 -1304
- package/dist/apps/data/FundingRouteProviders.d.ts +4 -22
- package/dist/apps/data/FundingRouteProviders.d.ts.map +1 -1
- package/dist/apps/data/FundingRouteProviders.js +10 -120
- package/dist/apps/data/FundingRouteProviders.js.map +1 -1
- package/dist/apps/data/routes/activities.d.ts +38 -38
- package/dist/apps/data/routes/addresses.d.ts +24 -24
- package/dist/apps/data/routes/blocks.d.ts +39 -39
- package/dist/apps/data/routes/fee-amm.d.ts +20 -20
- package/dist/apps/data/routes/funding.js +7 -7
- package/dist/apps/data/routes/funding.js.map +1 -1
- package/dist/apps/data/routes/indexer.d.ts +5 -5
- package/dist/apps/data/routes/tokenlist.d.ts +12 -12
- package/dist/apps/data/routes/verified-tokens.d.ts +36 -36
- package/dist/apps/management/App.d.ts +808 -267
- package/dist/apps/management/App.d.ts.map +1 -1
- package/dist/apps/management/App.js +2 -2
- package/dist/apps/management/Billing.d.ts +3 -0
- package/dist/apps/management/Billing.d.ts.map +1 -1
- package/dist/apps/management/Billing.js +7 -2
- package/dist/apps/management/Billing.js.map +1 -1
- package/dist/apps/management/routes/api-keys.d.ts +116 -100
- package/dist/apps/management/routes/api-keys.d.ts.map +1 -1
- package/dist/apps/management/routes/api-keys.js +41 -30
- package/dist/apps/management/routes/api-keys.js.map +1 -1
- package/dist/apps/management/routes/billing.d.ts +182 -50
- package/dist/apps/management/routes/billing.d.ts.map +1 -1
- package/dist/apps/management/routes/billing.js +14 -14
- package/dist/apps/management/routes/billing.js.map +1 -1
- package/dist/apps/management/routes/invitations.d.ts +93 -20
- package/dist/apps/management/routes/invitations.d.ts.map +1 -1
- package/dist/apps/management/routes/invitations.js +12 -15
- package/dist/apps/management/routes/invitations.js.map +1 -1
- package/dist/apps/management/routes/members.d.ts +89 -18
- package/dist/apps/management/routes/members.d.ts.map +1 -1
- package/dist/apps/management/routes/members.js +10 -10
- package/dist/apps/management/routes/members.js.map +1 -1
- package/dist/apps/management/routes/orgs.d.ts +100 -40
- package/dist/apps/management/routes/orgs.d.ts.map +1 -1
- package/dist/apps/management/routes/orgs.js +19 -19
- package/dist/apps/management/routes/orgs.js.map +1 -1
- package/dist/apps/management/routes/projects.d.ts +122 -33
- package/dist/apps/management/routes/projects.d.ts.map +1 -1
- package/dist/apps/management/routes/projects.js +12 -13
- package/dist/apps/management/routes/projects.js.map +1 -1
- package/dist/apps/management/routes/scopes.d.ts +4 -18
- package/dist/apps/management/routes/scopes.d.ts.map +1 -1
- package/dist/apps/management/routes/scopes.js +6 -7
- package/dist/apps/management/routes/scopes.js.map +1 -1
- package/dist/apps/management/routes/usage.d.ts +63 -19
- package/dist/apps/management/routes/usage.d.ts.map +1 -1
- package/dist/apps/management/routes/usage.js +9 -10
- package/dist/apps/management/routes/usage.js.map +1 -1
- package/dist/apps/mcp.d.ts.map +1 -1
- package/dist/apps/mcp.js +38 -4
- package/dist/apps/mcp.js.map +1 -1
- package/dist/apps/relay/App.d.ts +26 -4
- package/dist/apps/relay/App.d.ts.map +1 -1
- package/dist/apps/relay/App.js +17 -14
- package/dist/apps/relay/App.js.map +1 -1
- package/dist/cloudflare.d.ts +2 -0
- package/dist/cloudflare.d.ts.map +1 -1
- package/dist/cloudflare.js +4 -0
- package/dist/cloudflare.js.map +1 -1
- package/dist/db/Db.d.ts +5 -3
- package/dist/db/Db.d.ts.map +1 -1
- package/dist/db/Db.js +52 -0
- package/dist/db/Db.js.map +1 -1
- package/dist/db/Schema.d.ts +13 -0
- package/dist/db/Schema.d.ts.map +1 -1
- package/dist/db/Schema.js +16 -1
- package/dist/db/Schema.js.map +1 -1
- package/dist/db/tables/adminAuditLogs.d.ts +27 -0
- package/dist/db/tables/adminAuditLogs.d.ts.map +1 -0
- package/dist/db/tables/adminAuditLogs.js +19 -0
- package/dist/db/tables/adminAuditLogs.js.map +1 -0
- package/dist/db/tables/invitations.d.ts +1 -1
- package/dist/db/tables/invitations.d.ts.map +1 -1
- package/dist/db/tables/memberships.d.ts +32 -4
- package/dist/db/tables/memberships.d.ts.map +1 -1
- package/dist/db/tables/memberships.js +31 -0
- package/dist/db/tables/memberships.js.map +1 -1
- package/dist/db/tables/organizations.d.ts +43 -1
- package/dist/db/tables/organizations.d.ts.map +1 -1
- package/dist/db/tables/organizations.js +103 -0
- package/dist/db/tables/organizations.js.map +1 -1
- package/dist/db/tables/projects.d.ts +25 -0
- package/dist/db/tables/projects.d.ts.map +1 -1
- package/dist/db/tables/projects.js +22 -0
- package/dist/db/tables/projects.js.map +1 -1
- package/dist/db/tables/webhookDeliveries.d.ts +26 -0
- package/dist/db/tables/webhookDeliveries.d.ts.map +1 -1
- package/dist/db/tables/webhookDeliveries.js +37 -0
- package/dist/db/tables/webhookDeliveries.js.map +1 -1
- package/dist/internal/Auth.d.ts +46 -40
- package/dist/internal/Auth.d.ts.map +1 -1
- package/dist/internal/Auth.js +118 -69
- package/dist/internal/Auth.js.map +1 -1
- package/dist/internal/Cursor.d.ts +1 -1
- package/dist/internal/Cursor.d.ts.map +1 -1
- package/dist/internal/Cursor.js +4 -0
- package/dist/internal/Cursor.js.map +1 -1
- package/dist/internal/EdgeCache.d.ts.map +1 -1
- package/dist/internal/EdgeCache.js +2 -0
- package/dist/internal/EdgeCache.js.map +1 -1
- package/dist/internal/Errors.d.ts +6 -0
- package/dist/internal/Errors.d.ts.map +1 -0
- package/dist/internal/Errors.js +16 -0
- package/dist/internal/Errors.js.map +1 -0
- package/dist/internal/FundingRoutes.d.ts +15 -43
- package/dist/internal/FundingRoutes.d.ts.map +1 -1
- package/dist/internal/FundingRoutes.js +8 -17
- package/dist/internal/FundingRoutes.js.map +1 -1
- package/dist/internal/Log.d.ts +16 -1
- package/dist/internal/Log.d.ts.map +1 -1
- package/dist/internal/Log.js +5 -3
- package/dist/internal/Log.js.map +1 -1
- package/dist/internal/Store.d.ts +61 -16
- package/dist/internal/Store.d.ts.map +1 -1
- package/dist/internal/Store.js +72 -17
- package/dist/internal/Store.js.map +1 -1
- package/dist/internal/Viem.d.ts +1 -1
- package/dist/internal/index.d.ts +27 -0
- package/dist/internal/index.d.ts.map +1 -0
- package/dist/internal/index.js +27 -0
- package/dist/internal/index.js.map +1 -0
- package/package.json +8 -3
- package/src/ApiKey.ts +2 -3
- package/src/ApiKeys.ts +95 -17
- package/src/App.test.ts +104 -6
- package/src/App.ts +29 -9
- package/src/Assets.ts +8 -0
- package/src/Auth.test-d.ts +36 -0
- package/src/Auth.ts +20 -1
- package/src/Client.test-d.ts +17 -17
- package/src/Scope.test.ts +34 -0
- package/src/Scope.ts +53 -17
- package/src/admin/App.test.ts +33 -3
- package/src/admin/App.ts +49 -14
- package/src/admin/apps/api-keys.ts +10 -3
- package/src/admin/apps/organizations.test.ts +455 -0
- package/src/admin/apps/organizations.ts +953 -0
- package/src/admin/apps/scopes.test.ts +10 -0
- package/src/admin/ui/plugin.ts +1 -1
- package/src/admin/ui/src/components/MobileProfile.tsx +2 -0
- package/src/admin/ui/src/components/ThemeToggle.tsx +20 -0
- package/src/admin/ui/src/lib/api-keys.ts +36 -19
- package/src/admin/ui/src/lib/config.ts +2 -3
- package/src/admin/ui/src/lib/organizations.test.ts +89 -0
- package/src/admin/ui/src/lib/organizations.ts +262 -0
- package/src/admin/ui/src/lib/query-client.ts +3 -1
- package/src/admin/ui/src/lib/theme.ts +57 -0
- package/src/admin/ui/src/routeTree.gen.ts +47 -4
- package/src/admin/ui/src/routes/__root.tsx +18 -3
- package/src/admin/ui/src/routes/api-keys.tsx +52 -7
- package/src/admin/ui/src/routes/index.tsx +1 -1
- package/src/admin/ui/src/routes/organizations.tsx +158 -0
- package/src/admin/ui/src/routes/organizations_.$orgId.tsx +710 -0
- package/src/admin/ui/src/start.ts +6 -0
- package/src/admin/ui.generated.ts +63 -13
- package/src/analytics/Analytics.ts +25 -0
- package/src/analytics/tables/requestEvents.ts +33 -0
- package/src/apps/composition.test.ts +82 -2
- package/src/apps/data/FundingRouteProviders.test.ts +37 -93
- package/src/apps/data/FundingRouteProviders.ts +14 -161
- package/src/apps/data/routes/funding.test.ts +7 -42
- package/src/apps/data/routes/funding.ts +8 -8
- package/src/apps/data/routes/indexer.test.ts +2 -2
- package/src/apps/data/routes/webhooks.test.ts +2 -2
- package/src/apps/management/App.ts +2 -2
- package/src/apps/management/Billing.ts +10 -2
- package/src/apps/management/routes/api-keys.test.ts +137 -1
- package/src/apps/management/routes/api-keys.ts +63 -38
- package/src/apps/management/routes/billing.ts +14 -14
- package/src/apps/management/routes/invitations.test.ts +102 -1
- package/src/apps/management/routes/invitations.ts +13 -15
- package/src/apps/management/routes/members.ts +10 -10
- package/src/apps/management/routes/orgs.test.ts +78 -16
- package/src/apps/management/routes/orgs.ts +21 -20
- package/src/apps/management/routes/projects.ts +12 -13
- package/src/apps/management/routes/scopes.test.ts +16 -0
- package/src/apps/management/routes/scopes.ts +6 -7
- package/src/apps/management/routes/usage.ts +9 -14
- package/src/apps/mcp.test.ts +72 -7
- package/src/apps/mcp.ts +46 -4
- package/src/apps/relay/App.test.ts +23 -18
- package/src/apps/relay/App.ts +35 -14
- package/src/cloudflare.ts +5 -0
- package/src/db/Db.ts +59 -3
- package/src/db/Schema.ts +20 -1
- package/src/db/tables/adminAuditLogs.ts +47 -0
- package/src/db/tables/invitations.ts +1 -1
- package/src/db/tables/memberships.ts +59 -3
- package/src/db/tables/organizations.ts +148 -1
- package/src/db/tables/projects.ts +47 -0
- package/src/db/tables/webhookDeliveries.ts +83 -0
- package/src/internal/Auth.test.ts +571 -23
- package/src/internal/Auth.ts +166 -94
- package/src/internal/Cursor.test.ts +10 -0
- package/src/internal/Cursor.ts +5 -1
- package/src/internal/EdgeCache.test.ts +11 -0
- package/src/internal/EdgeCache.ts +2 -0
- package/src/internal/FundingRoutes.test.ts +8 -8
- package/src/internal/FundingRoutes.ts +25 -29
- package/src/internal/Log.test.ts +41 -3
- package/src/internal/Log.ts +23 -4
- package/src/internal/Store.test-d.ts +15 -0
- package/src/internal/Store.test.ts +153 -2
- package/src/internal/Store.ts +157 -41
- package/src/internal/index.test.ts +34 -0
- package/src/internal/index.ts +26 -0
|
@@ -16,15 +16,7 @@ export declare namespace schema {
|
|
|
16
16
|
name: z.ZodMiniOptional<z.ZodMiniString<string>>;
|
|
17
17
|
orgId: z.ZodMiniString<string>;
|
|
18
18
|
projectId: z.ZodMiniOptional<z.ZodMiniString<string>>;
|
|
19
|
-
scopes: z.ZodMiniArray<z.
|
|
20
|
-
"*": "*";
|
|
21
|
-
"data:read": "data:read";
|
|
22
|
-
"indexer:query": "indexer:query";
|
|
23
|
-
"rpc-relay:read": "rpc-relay:read";
|
|
24
|
-
"rpc-relay:sponsor": "rpc-relay:sponsor";
|
|
25
|
-
"webhooks:read": "webhooks:read";
|
|
26
|
-
"webhooks:write": "webhooks:write";
|
|
27
|
-
}>>;
|
|
19
|
+
scopes: z.ZodMiniArray<z.ZodMiniString<string>>;
|
|
28
20
|
tokenLast4: z.ZodMiniString<string>;
|
|
29
21
|
}, z.core.$strip>;
|
|
30
22
|
/** Path parameters addressing a project's key collection. */
|
|
@@ -49,14 +41,7 @@ export declare namespace schema {
|
|
|
49
41
|
sandbox: "sandbox";
|
|
50
42
|
}>>;
|
|
51
43
|
name: z.ZodMiniOptional<z.ZodMiniString<string>>;
|
|
52
|
-
scopes: z.ZodMiniDefault<z.ZodMiniArray<z.
|
|
53
|
-
"data:read": "data:read";
|
|
54
|
-
"indexer:query": "indexer:query";
|
|
55
|
-
"rpc-relay:read": "rpc-relay:read";
|
|
56
|
-
"rpc-relay:sponsor": "rpc-relay:sponsor";
|
|
57
|
-
"webhooks:read": "webhooks:read";
|
|
58
|
-
"webhooks:write": "webhooks:write";
|
|
59
|
-
}>>>;
|
|
44
|
+
scopes: z.ZodMiniDefault<z.ZodMiniArray<z.ZodMiniString<string>>>;
|
|
60
45
|
}, z.core.$strip>;
|
|
61
46
|
/** Schemas for the createApiKey operation. */
|
|
62
47
|
namespace createApiKey {
|
|
@@ -73,15 +58,7 @@ export declare namespace schema {
|
|
|
73
58
|
name: z.ZodMiniOptional<z.ZodMiniString<string>>;
|
|
74
59
|
orgId: z.ZodMiniString<string>;
|
|
75
60
|
projectId: z.ZodMiniOptional<z.ZodMiniString<string>>;
|
|
76
|
-
scopes: z.ZodMiniArray<z.
|
|
77
|
-
"*": "*";
|
|
78
|
-
"data:read": "data:read";
|
|
79
|
-
"indexer:query": "indexer:query";
|
|
80
|
-
"rpc-relay:read": "rpc-relay:read";
|
|
81
|
-
"rpc-relay:sponsor": "rpc-relay:sponsor";
|
|
82
|
-
"webhooks:read": "webhooks:read";
|
|
83
|
-
"webhooks:write": "webhooks:write";
|
|
84
|
-
}>>;
|
|
61
|
+
scopes: z.ZodMiniArray<z.ZodMiniString<string>>;
|
|
85
62
|
tokenLast4: z.ZodMiniString<string>;
|
|
86
63
|
token: z.ZodMiniString<string>;
|
|
87
64
|
}, z.core.$strip>;
|
|
@@ -109,15 +86,7 @@ export declare namespace schema {
|
|
|
109
86
|
name: z.ZodMiniOptional<z.ZodMiniString<string>>;
|
|
110
87
|
orgId: z.ZodMiniString<string>;
|
|
111
88
|
projectId: z.ZodMiniOptional<z.ZodMiniString<string>>;
|
|
112
|
-
scopes: z.ZodMiniArray<z.
|
|
113
|
-
"*": "*";
|
|
114
|
-
"data:read": "data:read";
|
|
115
|
-
"indexer:query": "indexer:query";
|
|
116
|
-
"rpc-relay:read": "rpc-relay:read";
|
|
117
|
-
"rpc-relay:sponsor": "rpc-relay:sponsor";
|
|
118
|
-
"webhooks:read": "webhooks:read";
|
|
119
|
-
"webhooks:write": "webhooks:write";
|
|
120
|
-
}>>;
|
|
89
|
+
scopes: z.ZodMiniArray<z.ZodMiniString<string>>;
|
|
121
90
|
tokenLast4: z.ZodMiniString<string>;
|
|
122
91
|
}, z.core.$strip>>;
|
|
123
92
|
}, z.core.$strip>;
|
|
@@ -145,15 +114,7 @@ export declare namespace schema {
|
|
|
145
114
|
name: z.ZodMiniOptional<z.ZodMiniString<string>>;
|
|
146
115
|
orgId: z.ZodMiniString<string>;
|
|
147
116
|
projectId: z.ZodMiniOptional<z.ZodMiniString<string>>;
|
|
148
|
-
scopes: z.ZodMiniArray<z.
|
|
149
|
-
"*": "*";
|
|
150
|
-
"data:read": "data:read";
|
|
151
|
-
"indexer:query": "indexer:query";
|
|
152
|
-
"rpc-relay:read": "rpc-relay:read";
|
|
153
|
-
"rpc-relay:sponsor": "rpc-relay:sponsor";
|
|
154
|
-
"webhooks:read": "webhooks:read";
|
|
155
|
-
"webhooks:write": "webhooks:write";
|
|
156
|
-
}>>;
|
|
117
|
+
scopes: z.ZodMiniArray<z.ZodMiniString<string>>;
|
|
157
118
|
tokenLast4: z.ZodMiniString<string>;
|
|
158
119
|
}, z.core.$strip>>;
|
|
159
120
|
}, z.core.$strip>;
|
|
@@ -167,25 +128,21 @@ export declare namespace schema {
|
|
|
167
128
|
}
|
|
168
129
|
}
|
|
169
130
|
/**
|
|
170
|
-
* Mounts the
|
|
171
|
-
* (project-scoped mint/list/revoke) plus the org-wide read
|
|
172
|
-
* `/orgs/:orgId/api-keys`, over the KV state store. Access follows the
|
|
173
|
-
* org/project scope (owning session or super admin); the token appears once,
|
|
174
|
-
* at mint.
|
|
131
|
+
* Mounts project-attributed API key mint, list, and revoke routes plus the org-wide list. Access follows the caller's organization ownership.
|
|
175
132
|
*/
|
|
176
133
|
export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-base").HonoBase<App.Environment, {
|
|
177
134
|
"/v1/orgs/:orgId{org_[A-Za-z0-9_-]+}/projects/:projectId{prj_[A-Za-z0-9_-]+}/api-keys": {
|
|
178
135
|
$post: {
|
|
179
136
|
output: {
|
|
180
137
|
error: {
|
|
181
|
-
code: "
|
|
138
|
+
code: "upstream_error";
|
|
182
139
|
details?: readonly Response.error.Detail[] | undefined;
|
|
183
140
|
message: string;
|
|
184
141
|
};
|
|
185
142
|
requestId: string;
|
|
186
143
|
};
|
|
187
144
|
outputFormat: "json";
|
|
188
|
-
status:
|
|
145
|
+
status: 502;
|
|
189
146
|
input: {
|
|
190
147
|
param: {
|
|
191
148
|
orgId: string;
|
|
@@ -195,20 +152,20 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
195
152
|
json: {
|
|
196
153
|
environment?: "production" | "sandbox" | undefined;
|
|
197
154
|
name?: string | undefined;
|
|
198
|
-
scopes?:
|
|
155
|
+
scopes?: string[] | undefined;
|
|
199
156
|
};
|
|
200
157
|
};
|
|
201
158
|
} | {
|
|
202
159
|
output: {
|
|
203
160
|
error: {
|
|
204
|
-
code: "
|
|
161
|
+
code: "api_key_malformed";
|
|
205
162
|
details?: readonly Response.error.Detail[] | undefined;
|
|
206
163
|
message: string;
|
|
207
164
|
};
|
|
208
165
|
requestId: string;
|
|
209
166
|
};
|
|
210
167
|
outputFormat: "json";
|
|
211
|
-
status:
|
|
168
|
+
status: 400;
|
|
212
169
|
input: {
|
|
213
170
|
param: {
|
|
214
171
|
orgId: string;
|
|
@@ -218,20 +175,20 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
218
175
|
json: {
|
|
219
176
|
environment?: "production" | "sandbox" | undefined;
|
|
220
177
|
name?: string | undefined;
|
|
221
|
-
scopes?:
|
|
178
|
+
scopes?: string[] | undefined;
|
|
222
179
|
};
|
|
223
180
|
};
|
|
224
181
|
} | {
|
|
225
182
|
output: {
|
|
226
183
|
error: {
|
|
227
|
-
code: "
|
|
184
|
+
code: "api_key_invalid" | "api_key_missing";
|
|
228
185
|
details?: readonly Response.error.Detail[] | undefined;
|
|
229
186
|
message: string;
|
|
230
187
|
};
|
|
231
188
|
requestId: string;
|
|
232
189
|
};
|
|
233
190
|
outputFormat: "json";
|
|
234
|
-
status:
|
|
191
|
+
status: 401;
|
|
235
192
|
input: {
|
|
236
193
|
param: {
|
|
237
194
|
orgId: string;
|
|
@@ -241,20 +198,20 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
241
198
|
json: {
|
|
242
199
|
environment?: "production" | "sandbox" | undefined;
|
|
243
200
|
name?: string | undefined;
|
|
244
|
-
scopes?:
|
|
201
|
+
scopes?: string[] | undefined;
|
|
245
202
|
};
|
|
246
203
|
};
|
|
247
204
|
} | {
|
|
248
205
|
output: {
|
|
249
206
|
error: {
|
|
250
|
-
code: "
|
|
207
|
+
code: "forbidden";
|
|
251
208
|
details?: readonly Response.error.Detail[] | undefined;
|
|
252
209
|
message: string;
|
|
253
210
|
};
|
|
254
211
|
requestId: string;
|
|
255
212
|
};
|
|
256
213
|
outputFormat: "json";
|
|
257
|
-
status:
|
|
214
|
+
status: 403;
|
|
258
215
|
input: {
|
|
259
216
|
param: {
|
|
260
217
|
orgId: string;
|
|
@@ -264,20 +221,20 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
264
221
|
json: {
|
|
265
222
|
environment?: "production" | "sandbox" | undefined;
|
|
266
223
|
name?: string | undefined;
|
|
267
|
-
scopes?:
|
|
224
|
+
scopes?: string[] | undefined;
|
|
268
225
|
};
|
|
269
226
|
};
|
|
270
227
|
} | {
|
|
271
228
|
output: {
|
|
272
229
|
error: {
|
|
273
|
-
code: "
|
|
230
|
+
code: "organization_not_found" | "project_not_found";
|
|
274
231
|
details?: readonly Response.error.Detail[] | undefined;
|
|
275
232
|
message: string;
|
|
276
233
|
};
|
|
277
234
|
requestId: string;
|
|
278
235
|
};
|
|
279
236
|
outputFormat: "json";
|
|
280
|
-
status:
|
|
237
|
+
status: 404;
|
|
281
238
|
input: {
|
|
282
239
|
param: {
|
|
283
240
|
orgId: string;
|
|
@@ -287,20 +244,20 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
287
244
|
json: {
|
|
288
245
|
environment?: "production" | "sandbox" | undefined;
|
|
289
246
|
name?: string | undefined;
|
|
290
|
-
scopes?:
|
|
247
|
+
scopes?: string[] | undefined;
|
|
291
248
|
};
|
|
292
249
|
};
|
|
293
250
|
} | {
|
|
294
251
|
output: {
|
|
295
252
|
error: {
|
|
296
|
-
code: "
|
|
253
|
+
code: "param_invalid";
|
|
297
254
|
details?: readonly Response.error.Detail[] | undefined;
|
|
298
255
|
message: string;
|
|
299
256
|
};
|
|
300
257
|
requestId: string;
|
|
301
258
|
};
|
|
302
259
|
outputFormat: "json";
|
|
303
|
-
status:
|
|
260
|
+
status: 400;
|
|
304
261
|
input: {
|
|
305
262
|
param: {
|
|
306
263
|
orgId: string;
|
|
@@ -310,20 +267,20 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
310
267
|
json: {
|
|
311
268
|
environment?: "production" | "sandbox" | undefined;
|
|
312
269
|
name?: string | undefined;
|
|
313
|
-
scopes?:
|
|
270
|
+
scopes?: string[] | undefined;
|
|
314
271
|
};
|
|
315
272
|
};
|
|
316
273
|
} | {
|
|
317
274
|
output: {
|
|
318
275
|
error: {
|
|
319
|
-
code: "
|
|
276
|
+
code: "body_invalid";
|
|
320
277
|
details?: readonly Response.error.Detail[] | undefined;
|
|
321
278
|
message: string;
|
|
322
279
|
};
|
|
323
280
|
requestId: string;
|
|
324
281
|
};
|
|
325
282
|
outputFormat: "json";
|
|
326
|
-
status:
|
|
283
|
+
status: 400;
|
|
327
284
|
input: {
|
|
328
285
|
param: {
|
|
329
286
|
orgId: string;
|
|
@@ -333,7 +290,7 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
333
290
|
json: {
|
|
334
291
|
environment?: "production" | "sandbox" | undefined;
|
|
335
292
|
name?: string | undefined;
|
|
336
|
-
scopes?:
|
|
293
|
+
scopes?: string[] | undefined;
|
|
337
294
|
};
|
|
338
295
|
};
|
|
339
296
|
} | {
|
|
@@ -356,7 +313,7 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
356
313
|
json: {
|
|
357
314
|
environment?: "production" | "sandbox" | undefined;
|
|
358
315
|
name?: string | undefined;
|
|
359
|
-
scopes?:
|
|
316
|
+
scopes?: string[] | undefined;
|
|
360
317
|
};
|
|
361
318
|
};
|
|
362
319
|
} | {
|
|
@@ -379,7 +336,7 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
379
336
|
json: {
|
|
380
337
|
environment?: "production" | "sandbox" | undefined;
|
|
381
338
|
name?: string | undefined;
|
|
382
|
-
scopes?:
|
|
339
|
+
scopes?: string[] | undefined;
|
|
383
340
|
};
|
|
384
341
|
};
|
|
385
342
|
} | {
|
|
@@ -392,7 +349,7 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
392
349
|
name?: string | undefined;
|
|
393
350
|
orgId: string;
|
|
394
351
|
projectId?: string | undefined;
|
|
395
|
-
scopes:
|
|
352
|
+
scopes: string[];
|
|
396
353
|
tokenLast4: string;
|
|
397
354
|
token: string;
|
|
398
355
|
};
|
|
@@ -407,7 +364,7 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
407
364
|
json: {
|
|
408
365
|
environment?: "production" | "sandbox" | undefined;
|
|
409
366
|
name?: string | undefined;
|
|
410
|
-
scopes?:
|
|
367
|
+
scopes?: string[] | undefined;
|
|
411
368
|
};
|
|
412
369
|
};
|
|
413
370
|
};
|
|
@@ -415,6 +372,27 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
415
372
|
} & {
|
|
416
373
|
"/v1/orgs/:orgId{org_[A-Za-z0-9_-]+}/projects/:projectId{prj_[A-Za-z0-9_-]+}/api-keys": {
|
|
417
374
|
$get: {
|
|
375
|
+
output: {
|
|
376
|
+
error: {
|
|
377
|
+
code: "upstream_error";
|
|
378
|
+
details?: readonly Response.error.Detail[] | undefined;
|
|
379
|
+
message: string;
|
|
380
|
+
};
|
|
381
|
+
requestId: string;
|
|
382
|
+
};
|
|
383
|
+
outputFormat: "json";
|
|
384
|
+
status: 502;
|
|
385
|
+
input: {
|
|
386
|
+
param: {
|
|
387
|
+
orgId: string;
|
|
388
|
+
projectId: string;
|
|
389
|
+
};
|
|
390
|
+
} & {
|
|
391
|
+
query?: {
|
|
392
|
+
environment?: string | string[];
|
|
393
|
+
} | undefined;
|
|
394
|
+
};
|
|
395
|
+
} | {
|
|
418
396
|
output: {
|
|
419
397
|
error: {
|
|
420
398
|
code: "api_key_malformed";
|
|
@@ -459,14 +437,14 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
459
437
|
} | {
|
|
460
438
|
output: {
|
|
461
439
|
error: {
|
|
462
|
-
code: "
|
|
440
|
+
code: "api_key_forbidden";
|
|
463
441
|
details?: readonly Response.error.Detail[] | undefined;
|
|
464
442
|
message: string;
|
|
465
443
|
};
|
|
466
444
|
requestId: string;
|
|
467
445
|
};
|
|
468
446
|
outputFormat: "json";
|
|
469
|
-
status:
|
|
447
|
+
status: 403;
|
|
470
448
|
input: {
|
|
471
449
|
param: {
|
|
472
450
|
orgId: string;
|
|
@@ -480,14 +458,14 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
480
458
|
} | {
|
|
481
459
|
output: {
|
|
482
460
|
error: {
|
|
483
|
-
code: "
|
|
461
|
+
code: "payment_required" | "rate_limit_exceeded";
|
|
484
462
|
details?: readonly Response.error.Detail[] | undefined;
|
|
485
463
|
message: string;
|
|
486
464
|
};
|
|
487
465
|
requestId: string;
|
|
488
466
|
};
|
|
489
467
|
outputFormat: "json";
|
|
490
|
-
status:
|
|
468
|
+
status: 429;
|
|
491
469
|
input: {
|
|
492
470
|
param: {
|
|
493
471
|
orgId: string;
|
|
@@ -501,7 +479,7 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
501
479
|
} | {
|
|
502
480
|
output: {
|
|
503
481
|
error: {
|
|
504
|
-
code: "
|
|
482
|
+
code: "query_invalid";
|
|
505
483
|
details?: readonly Response.error.Detail[] | undefined;
|
|
506
484
|
message: string;
|
|
507
485
|
};
|
|
@@ -522,14 +500,14 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
522
500
|
} | {
|
|
523
501
|
output: {
|
|
524
502
|
error: {
|
|
525
|
-
code: "
|
|
503
|
+
code: "organization_not_found" | "project_not_found";
|
|
526
504
|
details?: readonly Response.error.Detail[] | undefined;
|
|
527
505
|
message: string;
|
|
528
506
|
};
|
|
529
507
|
requestId: string;
|
|
530
508
|
};
|
|
531
509
|
outputFormat: "json";
|
|
532
|
-
status:
|
|
510
|
+
status: 404;
|
|
533
511
|
input: {
|
|
534
512
|
param: {
|
|
535
513
|
orgId: string;
|
|
@@ -543,14 +521,14 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
543
521
|
} | {
|
|
544
522
|
output: {
|
|
545
523
|
error: {
|
|
546
|
-
code: "
|
|
524
|
+
code: "param_invalid";
|
|
547
525
|
details?: readonly Response.error.Detail[] | undefined;
|
|
548
526
|
message: string;
|
|
549
527
|
};
|
|
550
528
|
requestId: string;
|
|
551
529
|
};
|
|
552
530
|
outputFormat: "json";
|
|
553
|
-
status:
|
|
531
|
+
status: 400;
|
|
554
532
|
input: {
|
|
555
533
|
param: {
|
|
556
534
|
orgId: string;
|
|
@@ -593,7 +571,7 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
593
571
|
name?: string | undefined;
|
|
594
572
|
orgId: string;
|
|
595
573
|
projectId?: string | undefined;
|
|
596
|
-
scopes:
|
|
574
|
+
scopes: string[];
|
|
597
575
|
tokenLast4: string;
|
|
598
576
|
}[];
|
|
599
577
|
};
|
|
@@ -614,6 +592,26 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
614
592
|
} & {
|
|
615
593
|
"/v1/orgs/:orgId{org_[A-Za-z0-9_-]+}/api-keys": {
|
|
616
594
|
$get: {
|
|
595
|
+
output: {
|
|
596
|
+
error: {
|
|
597
|
+
code: "upstream_error";
|
|
598
|
+
details?: readonly Response.error.Detail[] | undefined;
|
|
599
|
+
message: string;
|
|
600
|
+
};
|
|
601
|
+
requestId: string;
|
|
602
|
+
};
|
|
603
|
+
outputFormat: "json";
|
|
604
|
+
status: 502;
|
|
605
|
+
input: {
|
|
606
|
+
param: {
|
|
607
|
+
orgId: string;
|
|
608
|
+
};
|
|
609
|
+
} & {
|
|
610
|
+
query?: {
|
|
611
|
+
environment?: string | string[];
|
|
612
|
+
} | undefined;
|
|
613
|
+
};
|
|
614
|
+
} | {
|
|
617
615
|
output: {
|
|
618
616
|
error: {
|
|
619
617
|
code: "api_key_malformed";
|
|
@@ -656,14 +654,14 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
656
654
|
} | {
|
|
657
655
|
output: {
|
|
658
656
|
error: {
|
|
659
|
-
code: "
|
|
657
|
+
code: "api_key_forbidden";
|
|
660
658
|
details?: readonly Response.error.Detail[] | undefined;
|
|
661
659
|
message: string;
|
|
662
660
|
};
|
|
663
661
|
requestId: string;
|
|
664
662
|
};
|
|
665
663
|
outputFormat: "json";
|
|
666
|
-
status:
|
|
664
|
+
status: 403;
|
|
667
665
|
input: {
|
|
668
666
|
param: {
|
|
669
667
|
orgId: string;
|
|
@@ -676,14 +674,14 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
676
674
|
} | {
|
|
677
675
|
output: {
|
|
678
676
|
error: {
|
|
679
|
-
code: "
|
|
677
|
+
code: "payment_required" | "rate_limit_exceeded";
|
|
680
678
|
details?: readonly Response.error.Detail[] | undefined;
|
|
681
679
|
message: string;
|
|
682
680
|
};
|
|
683
681
|
requestId: string;
|
|
684
682
|
};
|
|
685
683
|
outputFormat: "json";
|
|
686
|
-
status:
|
|
684
|
+
status: 429;
|
|
687
685
|
input: {
|
|
688
686
|
param: {
|
|
689
687
|
orgId: string;
|
|
@@ -696,7 +694,7 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
696
694
|
} | {
|
|
697
695
|
output: {
|
|
698
696
|
error: {
|
|
699
|
-
code: "
|
|
697
|
+
code: "query_invalid";
|
|
700
698
|
details?: readonly Response.error.Detail[] | undefined;
|
|
701
699
|
message: string;
|
|
702
700
|
};
|
|
@@ -716,14 +714,14 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
716
714
|
} | {
|
|
717
715
|
output: {
|
|
718
716
|
error: {
|
|
719
|
-
code: "
|
|
717
|
+
code: "param_invalid";
|
|
720
718
|
details?: readonly Response.error.Detail[] | undefined;
|
|
721
719
|
message: string;
|
|
722
720
|
};
|
|
723
721
|
requestId: string;
|
|
724
722
|
};
|
|
725
723
|
outputFormat: "json";
|
|
726
|
-
status:
|
|
724
|
+
status: 400;
|
|
727
725
|
input: {
|
|
728
726
|
param: {
|
|
729
727
|
orgId: string;
|
|
@@ -784,7 +782,7 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
784
782
|
name?: string | undefined;
|
|
785
783
|
orgId: string;
|
|
786
784
|
projectId?: string | undefined;
|
|
787
|
-
scopes:
|
|
785
|
+
scopes: string[];
|
|
788
786
|
tokenLast4: string;
|
|
789
787
|
}[];
|
|
790
788
|
};
|
|
@@ -804,6 +802,24 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
804
802
|
} & {
|
|
805
803
|
"/v1/orgs/:orgId{org_[A-Za-z0-9_-]+}/projects/:projectId{prj_[A-Za-z0-9_-]+}/api-keys/:keyId{key_[A-Za-z0-9_-]+}": {
|
|
806
804
|
$delete: {
|
|
805
|
+
output: {
|
|
806
|
+
error: {
|
|
807
|
+
code: "upstream_error";
|
|
808
|
+
details?: readonly Response.error.Detail[] | undefined;
|
|
809
|
+
message: string;
|
|
810
|
+
};
|
|
811
|
+
requestId: string;
|
|
812
|
+
};
|
|
813
|
+
outputFormat: "json";
|
|
814
|
+
status: 502;
|
|
815
|
+
input: {
|
|
816
|
+
param: {
|
|
817
|
+
keyId: string;
|
|
818
|
+
orgId: string;
|
|
819
|
+
projectId: string;
|
|
820
|
+
};
|
|
821
|
+
};
|
|
822
|
+
} | {
|
|
807
823
|
output: {
|
|
808
824
|
error: {
|
|
809
825
|
code: "api_key_malformed";
|
|
@@ -842,14 +858,14 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
842
858
|
} | {
|
|
843
859
|
output: {
|
|
844
860
|
error: {
|
|
845
|
-
code: "
|
|
861
|
+
code: "api_key_forbidden";
|
|
846
862
|
details?: readonly Response.error.Detail[] | undefined;
|
|
847
863
|
message: string;
|
|
848
864
|
};
|
|
849
865
|
requestId: string;
|
|
850
866
|
};
|
|
851
867
|
outputFormat: "json";
|
|
852
|
-
status:
|
|
868
|
+
status: 403;
|
|
853
869
|
input: {
|
|
854
870
|
param: {
|
|
855
871
|
keyId: string;
|
|
@@ -860,14 +876,14 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
860
876
|
} | {
|
|
861
877
|
output: {
|
|
862
878
|
error: {
|
|
863
|
-
code: "
|
|
879
|
+
code: "payment_required" | "rate_limit_exceeded";
|
|
864
880
|
details?: readonly Response.error.Detail[] | undefined;
|
|
865
881
|
message: string;
|
|
866
882
|
};
|
|
867
883
|
requestId: string;
|
|
868
884
|
};
|
|
869
885
|
outputFormat: "json";
|
|
870
|
-
status:
|
|
886
|
+
status: 429;
|
|
871
887
|
input: {
|
|
872
888
|
param: {
|
|
873
889
|
keyId: string;
|
|
@@ -878,14 +894,14 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
878
894
|
} | {
|
|
879
895
|
output: {
|
|
880
896
|
error: {
|
|
881
|
-
code: "
|
|
897
|
+
code: "organization_not_found" | "project_not_found";
|
|
882
898
|
details?: readonly Response.error.Detail[] | undefined;
|
|
883
899
|
message: string;
|
|
884
900
|
};
|
|
885
901
|
requestId: string;
|
|
886
902
|
};
|
|
887
903
|
outputFormat: "json";
|
|
888
|
-
status:
|
|
904
|
+
status: 404;
|
|
889
905
|
input: {
|
|
890
906
|
param: {
|
|
891
907
|
keyId: string;
|
|
@@ -896,14 +912,14 @@ export declare function apiKeys(options?: apiKeys.Options): import("hono/hono-ba
|
|
|
896
912
|
} | {
|
|
897
913
|
output: {
|
|
898
914
|
error: {
|
|
899
|
-
code: "
|
|
915
|
+
code: "param_invalid";
|
|
900
916
|
details?: readonly Response.error.Detail[] | undefined;
|
|
901
917
|
message: string;
|
|
902
918
|
};
|
|
903
919
|
requestId: string;
|
|
904
920
|
};
|
|
905
921
|
outputFormat: "json";
|
|
906
|
-
status:
|
|
922
|
+
status: 400;
|
|
907
923
|
input: {
|
|
908
924
|
param: {
|
|
909
925
|
keyId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-keys.d.ts","sourceRoot":"","sources":["../../../../src/apps/management/routes/api-keys.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,UAAU,CAAA;AAG7B,OAAO,KAAK,KAAK,GAAG,MAAM,iBAAiB,CAAA;AAK3C,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAA;AAIzD,kDAAkD;AAClD,yBAAiB,MAAM,CAAC;IACtB,oEAAoE;IAC7D,MAAM,GAAG
|
|
1
|
+
{"version":3,"file":"api-keys.d.ts","sourceRoot":"","sources":["../../../../src/apps/management/routes/api-keys.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,UAAU,CAAA;AAG7B,OAAO,KAAK,KAAK,GAAG,MAAM,iBAAiB,CAAA;AAK3C,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAA;AAIzD,kDAAkD;AAClD,yBAAiB,MAAM,CAAC;IACtB,oEAAoE;IAC7D,MAAM,GAAG;;;;;;;;;;;;;;qBA0Df,CAAA;IAED,6DAA6D;IACtD,MAAM,MAAM;;;qBAe8C,CAAA;IAEjE,mEAAmE;IAC5D,MAAM,SAAS;;qBASiD,CAAA;IAEvE,8CAA8C;IACvC,MAAM,SAAS;;;;qBAqBkC,CAAA;IAExD,2EAA2E;IACpE,MAAM,OAAO;;;;;;;qBAoBkC,CAAA;IAEtD,8CAA8C;IAC9C,UAAiB,YAAY,CAAC;QAC5B,8CAA8C;QACvC,MAAM,QAAQ;;;;;;;;;;;;;;;yBAUpB,CAAA;KACF;IAED,6CAA6C;IAC7C,UAAiB,WAAW,CAAC;QAC3B,mDAAmD;QAC5C,MAAM,KAAK;;;;;0BAEgD,CAAA;QAElE,8CAA8C;QACvC,MAAM,QAAQ;;;;;;;;;;;;;;;;yBAKpB,CAAA;KACF;IAED,gDAAgD;IAChD,UAAiB,cAAc,CAAC;QAC9B,0DAA0D;QACnD,MAAM,KAAK;;;;;0BAEsD,CAAA;QAExE,2DAA2D;QACpD,MAAM,QAAQ;;;;;;;;;;;;;;;;yBAOpB,CAAA;KACF;IAED,8CAA8C;IAC9C,UAAiB,YAAY,CAAC;QAC5B,6CAA6C;QACtC,MAAM,QAAQ;;yBASyC,CAAA;KAC/D;CACF;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,OAAO,GAAE,OAAO,CAAC,OAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2HAmRpD;AAED,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B,kDAAkD;IAClD,KAAK,OAAO,GAAG;QACb,oHAAoH;QACpH,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;KAC9B,CAAA;CACF"}
|