@bloomneo/appkit 1.2.9
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/LICENSE +21 -0
- package/README.md +902 -0
- package/bin/appkit.js +71 -0
- package/bin/commands/generate.js +1050 -0
- package/bin/templates/backend/README.md.template +39 -0
- package/bin/templates/backend/api.http.template +0 -0
- package/bin/templates/backend/docs/APPKIT_CLI.md +507 -0
- package/bin/templates/backend/docs/APPKIT_COMMENTS_GUIDELINES.md +61 -0
- package/bin/templates/backend/docs/APPKIT_LLM_GUIDE.md +2539 -0
- package/bin/templates/backend/package.json.template +34 -0
- package/bin/templates/backend/src/api/features/welcome/welcome.http.template +29 -0
- package/bin/templates/backend/src/api/features/welcome/welcome.route.ts.template +36 -0
- package/bin/templates/backend/src/api/features/welcome/welcome.service.ts.template +88 -0
- package/bin/templates/backend/src/api/features/welcome/welcome.types.ts.template +18 -0
- package/bin/templates/backend/src/api/lib/api-router.ts.template +84 -0
- package/bin/templates/backend/src/api/server.ts.template +188 -0
- package/bin/templates/backend/tsconfig.api.json.template +24 -0
- package/bin/templates/backend/tsconfig.json.template +40 -0
- package/bin/templates/feature/feature.http.template +63 -0
- package/bin/templates/feature/feature.route.ts.template +36 -0
- package/bin/templates/feature/feature.service.ts.template +81 -0
- package/bin/templates/feature/feature.types.ts.template +23 -0
- package/bin/templates/feature-db/feature.http.template +63 -0
- package/bin/templates/feature-db/feature.model.ts.template +74 -0
- package/bin/templates/feature-db/feature.route.ts.template +58 -0
- package/bin/templates/feature-db/feature.service.ts.template +231 -0
- package/bin/templates/feature-db/feature.types.ts.template +25 -0
- package/bin/templates/feature-db/schema-addition.prisma.template +9 -0
- package/bin/templates/feature-db/seeding/README.md.template +57 -0
- package/bin/templates/feature-db/seeding/feature.seed.js.template +67 -0
- package/bin/templates/feature-user/schema-addition.prisma.template +19 -0
- package/bin/templates/feature-user/user.http.template +157 -0
- package/bin/templates/feature-user/user.model.ts.template +244 -0
- package/bin/templates/feature-user/user.route.ts.template +379 -0
- package/bin/templates/feature-user/user.seed.js.template +182 -0
- package/bin/templates/feature-user/user.service.ts.template +426 -0
- package/bin/templates/feature-user/user.types.ts.template +127 -0
- package/dist/auth/auth.d.ts +182 -0
- package/dist/auth/auth.d.ts.map +1 -0
- package/dist/auth/auth.js +477 -0
- package/dist/auth/auth.js.map +1 -0
- package/dist/auth/defaults.d.ts +104 -0
- package/dist/auth/defaults.d.ts.map +1 -0
- package/dist/auth/defaults.js +374 -0
- package/dist/auth/defaults.js.map +1 -0
- package/dist/auth/index.d.ts +70 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +94 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/cache/cache.d.ts +118 -0
- package/dist/cache/cache.d.ts.map +1 -0
- package/dist/cache/cache.js +249 -0
- package/dist/cache/cache.js.map +1 -0
- package/dist/cache/defaults.d.ts +63 -0
- package/dist/cache/defaults.d.ts.map +1 -0
- package/dist/cache/defaults.js +193 -0
- package/dist/cache/defaults.js.map +1 -0
- package/dist/cache/index.d.ts +101 -0
- package/dist/cache/index.d.ts.map +1 -0
- package/dist/cache/index.js +203 -0
- package/dist/cache/index.js.map +1 -0
- package/dist/cache/strategies/memory.d.ts +138 -0
- package/dist/cache/strategies/memory.d.ts.map +1 -0
- package/dist/cache/strategies/memory.js +348 -0
- package/dist/cache/strategies/memory.js.map +1 -0
- package/dist/cache/strategies/redis.d.ts +105 -0
- package/dist/cache/strategies/redis.d.ts.map +1 -0
- package/dist/cache/strategies/redis.js +318 -0
- package/dist/cache/strategies/redis.js.map +1 -0
- package/dist/config/config.d.ts +62 -0
- package/dist/config/config.d.ts.map +1 -0
- package/dist/config/config.js +107 -0
- package/dist/config/config.js.map +1 -0
- package/dist/config/defaults.d.ts +44 -0
- package/dist/config/defaults.d.ts.map +1 -0
- package/dist/config/defaults.js +217 -0
- package/dist/config/defaults.js.map +1 -0
- package/dist/config/index.d.ts +105 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +163 -0
- package/dist/config/index.js.map +1 -0
- package/dist/database/adapters/mongoose.d.ts +106 -0
- package/dist/database/adapters/mongoose.d.ts.map +1 -0
- package/dist/database/adapters/mongoose.js +480 -0
- package/dist/database/adapters/mongoose.js.map +1 -0
- package/dist/database/adapters/prisma.d.ts +106 -0
- package/dist/database/adapters/prisma.d.ts.map +1 -0
- package/dist/database/adapters/prisma.js +494 -0
- package/dist/database/adapters/prisma.js.map +1 -0
- package/dist/database/defaults.d.ts +87 -0
- package/dist/database/defaults.d.ts.map +1 -0
- package/dist/database/defaults.js +271 -0
- package/dist/database/defaults.js.map +1 -0
- package/dist/database/index.d.ts +137 -0
- package/dist/database/index.d.ts.map +1 -0
- package/dist/database/index.js +490 -0
- package/dist/database/index.js.map +1 -0
- package/dist/email/defaults.d.ts +100 -0
- package/dist/email/defaults.d.ts.map +1 -0
- package/dist/email/defaults.js +400 -0
- package/dist/email/defaults.js.map +1 -0
- package/dist/email/email.d.ts +139 -0
- package/dist/email/email.d.ts.map +1 -0
- package/dist/email/email.js +316 -0
- package/dist/email/email.js.map +1 -0
- package/dist/email/index.d.ts +176 -0
- package/dist/email/index.d.ts.map +1 -0
- package/dist/email/index.js +251 -0
- package/dist/email/index.js.map +1 -0
- package/dist/email/strategies/console.d.ts +90 -0
- package/dist/email/strategies/console.d.ts.map +1 -0
- package/dist/email/strategies/console.js +268 -0
- package/dist/email/strategies/console.js.map +1 -0
- package/dist/email/strategies/resend.d.ts +84 -0
- package/dist/email/strategies/resend.d.ts.map +1 -0
- package/dist/email/strategies/resend.js +266 -0
- package/dist/email/strategies/resend.js.map +1 -0
- package/dist/email/strategies/smtp.d.ts +77 -0
- package/dist/email/strategies/smtp.d.ts.map +1 -0
- package/dist/email/strategies/smtp.js +286 -0
- package/dist/email/strategies/smtp.js.map +1 -0
- package/dist/error/defaults.d.ts +40 -0
- package/dist/error/defaults.d.ts.map +1 -0
- package/dist/error/defaults.js +75 -0
- package/dist/error/defaults.js.map +1 -0
- package/dist/error/error.d.ts +140 -0
- package/dist/error/error.d.ts.map +1 -0
- package/dist/error/error.js +200 -0
- package/dist/error/error.js.map +1 -0
- package/dist/error/index.d.ts +145 -0
- package/dist/error/index.d.ts.map +1 -0
- package/dist/error/index.js +145 -0
- package/dist/error/index.js.map +1 -0
- package/dist/event/defaults.d.ts +111 -0
- package/dist/event/defaults.d.ts.map +1 -0
- package/dist/event/defaults.js +378 -0
- package/dist/event/defaults.js.map +1 -0
- package/dist/event/event.d.ts +171 -0
- package/dist/event/event.d.ts.map +1 -0
- package/dist/event/event.js +391 -0
- package/dist/event/event.js.map +1 -0
- package/dist/event/index.d.ts +173 -0
- package/dist/event/index.d.ts.map +1 -0
- package/dist/event/index.js +302 -0
- package/dist/event/index.js.map +1 -0
- package/dist/event/strategies/memory.d.ts +122 -0
- package/dist/event/strategies/memory.d.ts.map +1 -0
- package/dist/event/strategies/memory.js +331 -0
- package/dist/event/strategies/memory.js.map +1 -0
- package/dist/event/strategies/redis.d.ts +115 -0
- package/dist/event/strategies/redis.d.ts.map +1 -0
- package/dist/event/strategies/redis.js +434 -0
- package/dist/event/strategies/redis.js.map +1 -0
- package/dist/index.d.ts +58 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +72 -0
- package/dist/index.js.map +1 -0
- package/dist/logger/defaults.d.ts +67 -0
- package/dist/logger/defaults.d.ts.map +1 -0
- package/dist/logger/defaults.js +213 -0
- package/dist/logger/defaults.js.map +1 -0
- package/dist/logger/index.d.ts +84 -0
- package/dist/logger/index.d.ts.map +1 -0
- package/dist/logger/index.js +101 -0
- package/dist/logger/index.js.map +1 -0
- package/dist/logger/logger.d.ts +165 -0
- package/dist/logger/logger.d.ts.map +1 -0
- package/dist/logger/logger.js +843 -0
- package/dist/logger/logger.js.map +1 -0
- package/dist/logger/transports/console.d.ts +102 -0
- package/dist/logger/transports/console.d.ts.map +1 -0
- package/dist/logger/transports/console.js +276 -0
- package/dist/logger/transports/console.js.map +1 -0
- package/dist/logger/transports/database.d.ts +153 -0
- package/dist/logger/transports/database.d.ts.map +1 -0
- package/dist/logger/transports/database.js +539 -0
- package/dist/logger/transports/database.js.map +1 -0
- package/dist/logger/transports/file.d.ts +146 -0
- package/dist/logger/transports/file.d.ts.map +1 -0
- package/dist/logger/transports/file.js +464 -0
- package/dist/logger/transports/file.js.map +1 -0
- package/dist/logger/transports/http.d.ts +128 -0
- package/dist/logger/transports/http.d.ts.map +1 -0
- package/dist/logger/transports/http.js +401 -0
- package/dist/logger/transports/http.js.map +1 -0
- package/dist/logger/transports/webhook.d.ts +152 -0
- package/dist/logger/transports/webhook.d.ts.map +1 -0
- package/dist/logger/transports/webhook.js +485 -0
- package/dist/logger/transports/webhook.js.map +1 -0
- package/dist/queue/defaults.d.ts +66 -0
- package/dist/queue/defaults.d.ts.map +1 -0
- package/dist/queue/defaults.js +205 -0
- package/dist/queue/defaults.js.map +1 -0
- package/dist/queue/index.d.ts +124 -0
- package/dist/queue/index.d.ts.map +1 -0
- package/dist/queue/index.js +116 -0
- package/dist/queue/index.js.map +1 -0
- package/dist/queue/queue.d.ts +156 -0
- package/dist/queue/queue.d.ts.map +1 -0
- package/dist/queue/queue.js +387 -0
- package/dist/queue/queue.js.map +1 -0
- package/dist/queue/transports/database.d.ts +165 -0
- package/dist/queue/transports/database.d.ts.map +1 -0
- package/dist/queue/transports/database.js +595 -0
- package/dist/queue/transports/database.js.map +1 -0
- package/dist/queue/transports/memory.d.ts +143 -0
- package/dist/queue/transports/memory.d.ts.map +1 -0
- package/dist/queue/transports/memory.js +415 -0
- package/dist/queue/transports/memory.js.map +1 -0
- package/dist/queue/transports/redis.d.ts +203 -0
- package/dist/queue/transports/redis.d.ts.map +1 -0
- package/dist/queue/transports/redis.js +744 -0
- package/dist/queue/transports/redis.js.map +1 -0
- package/dist/security/defaults.d.ts +64 -0
- package/dist/security/defaults.d.ts.map +1 -0
- package/dist/security/defaults.js +159 -0
- package/dist/security/defaults.js.map +1 -0
- package/dist/security/index.d.ts +110 -0
- package/dist/security/index.d.ts.map +1 -0
- package/dist/security/index.js +160 -0
- package/dist/security/index.js.map +1 -0
- package/dist/security/security.d.ts +138 -0
- package/dist/security/security.d.ts.map +1 -0
- package/dist/security/security.js +419 -0
- package/dist/security/security.js.map +1 -0
- package/dist/storage/defaults.d.ts +79 -0
- package/dist/storage/defaults.d.ts.map +1 -0
- package/dist/storage/defaults.js +358 -0
- package/dist/storage/defaults.js.map +1 -0
- package/dist/storage/index.d.ts +153 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/index.js +242 -0
- package/dist/storage/index.js.map +1 -0
- package/dist/storage/storage.d.ts +151 -0
- package/dist/storage/storage.d.ts.map +1 -0
- package/dist/storage/storage.js +439 -0
- package/dist/storage/storage.js.map +1 -0
- package/dist/storage/strategies/local.d.ts +117 -0
- package/dist/storage/strategies/local.d.ts.map +1 -0
- package/dist/storage/strategies/local.js +368 -0
- package/dist/storage/strategies/local.js.map +1 -0
- package/dist/storage/strategies/r2.d.ts +130 -0
- package/dist/storage/strategies/r2.d.ts.map +1 -0
- package/dist/storage/strategies/r2.js +470 -0
- package/dist/storage/strategies/r2.js.map +1 -0
- package/dist/storage/strategies/s3.d.ts +121 -0
- package/dist/storage/strategies/s3.d.ts.map +1 -0
- package/dist/storage/strategies/s3.js +461 -0
- package/dist/storage/strategies/s3.js.map +1 -0
- package/dist/util/defaults.d.ts +77 -0
- package/dist/util/defaults.d.ts.map +1 -0
- package/dist/util/defaults.js +193 -0
- package/dist/util/defaults.js.map +1 -0
- package/dist/util/index.d.ts +97 -0
- package/dist/util/index.d.ts.map +1 -0
- package/dist/util/index.js +165 -0
- package/dist/util/index.js.map +1 -0
- package/dist/util/util.d.ts +145 -0
- package/dist/util/util.d.ts.map +1 -0
- package/dist/util/util.js +481 -0
- package/dist/util/util.js.map +1 -0
- package/package.json +234 -0
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Database queue transport using AppKit Prisma for persistent job storage
|
|
3
|
+
* @module @bloomneo/appkit/queue
|
|
4
|
+
* @file src/queue/transports/database.ts
|
|
5
|
+
*
|
|
6
|
+
* @llm-rule WHEN: Need persistent queuing with existing database - leverages AppKit database
|
|
7
|
+
* @llm-rule AVOID: When high-throughput needed - database polling has overhead
|
|
8
|
+
* @llm-rule NOTE: Uses existing Prisma client from AppKit, perfect for simple persistent queuing
|
|
9
|
+
*/
|
|
10
|
+
import type { Transport } from '../queue.js';
|
|
11
|
+
import type { QueueConfig } from '../defaults.js';
|
|
12
|
+
import type { JobData, JobOptions, JobHandler, QueueStats, JobInfo, JobStatus } from '../index.js';
|
|
13
|
+
/**
|
|
14
|
+
* Database transport using AppKit Prisma for persistent storage
|
|
15
|
+
*/
|
|
16
|
+
export declare class DatabaseTransport implements Transport {
|
|
17
|
+
private config;
|
|
18
|
+
private db;
|
|
19
|
+
private handlers;
|
|
20
|
+
private paused;
|
|
21
|
+
private processing;
|
|
22
|
+
private processingLoop;
|
|
23
|
+
private cleanupTimer;
|
|
24
|
+
private healthCheckTimer;
|
|
25
|
+
/**
|
|
26
|
+
* Creates database transport using existing AppKit Prisma client
|
|
27
|
+
* @llm-rule WHEN: Auto-detected from DATABASE_URL with existing AppKit database
|
|
28
|
+
* @llm-rule AVOID: Manual database setup - leverages existing infrastructure
|
|
29
|
+
*/
|
|
30
|
+
constructor(config: QueueConfig);
|
|
31
|
+
/**
|
|
32
|
+
* Initialize database transport
|
|
33
|
+
* @llm-rule WHEN: Transport creation - ensures table exists and starts processing
|
|
34
|
+
* @llm-rule AVOID: Calling manually - constructor handles initialization
|
|
35
|
+
*/
|
|
36
|
+
private initialize;
|
|
37
|
+
/**
|
|
38
|
+
* Add job to database queue
|
|
39
|
+
* @llm-rule WHEN: Adding jobs for persistent background processing
|
|
40
|
+
* @llm-rule AVOID: Very high frequency - database has transaction overhead
|
|
41
|
+
*/
|
|
42
|
+
add(id: string, jobType: string, data: JobData, options: JobOptions): Promise<void>;
|
|
43
|
+
/**
|
|
44
|
+
* Register job processor
|
|
45
|
+
* @llm-rule WHEN: Setting up job handlers for database-persisted jobs
|
|
46
|
+
* @llm-rule AVOID: Multiple handlers for same type - causes processing conflicts
|
|
47
|
+
*/
|
|
48
|
+
process<T = JobData>(jobType: string, handler: JobHandler<T>): void;
|
|
49
|
+
/**
|
|
50
|
+
* Schedule job for future execution
|
|
51
|
+
* @llm-rule WHEN: Need persistent delayed job execution with database reliability
|
|
52
|
+
* @llm-rule AVOID: Very frequent scheduling - database writes have overhead
|
|
53
|
+
*/
|
|
54
|
+
schedule(id: string, jobType: string, data: JobData, delay: number): Promise<void>;
|
|
55
|
+
/**
|
|
56
|
+
* Pause queue processing
|
|
57
|
+
* @llm-rule WHEN: Maintenance mode or controlled processing stop
|
|
58
|
+
* @llm-rule AVOID: Database-wide pausing - affects other application parts
|
|
59
|
+
*/
|
|
60
|
+
pause(jobType?: string): Promise<void>;
|
|
61
|
+
/**
|
|
62
|
+
* Resume queue processing
|
|
63
|
+
* @llm-rule WHEN: Resuming after maintenance pause
|
|
64
|
+
* @llm-rule AVOID: Resuming without checking database health
|
|
65
|
+
*/
|
|
66
|
+
resume(jobType?: string): Promise<void>;
|
|
67
|
+
/**
|
|
68
|
+
* Get queue statistics from database
|
|
69
|
+
* @llm-rule WHEN: Monitoring queue health and job status distribution
|
|
70
|
+
* @llm-rule AVOID: Frequent polling - database aggregation queries are expensive
|
|
71
|
+
*/
|
|
72
|
+
getStats(jobType?: string): Promise<QueueStats>;
|
|
73
|
+
/**
|
|
74
|
+
* Get jobs by status from database
|
|
75
|
+
* @llm-rule WHEN: Debugging failed jobs or monitoring job history
|
|
76
|
+
* @llm-rule AVOID: Large result sets without pagination - database performance impact
|
|
77
|
+
*/
|
|
78
|
+
getJobs(status: JobStatus, jobType?: string, limit?: number): Promise<JobInfo[]>;
|
|
79
|
+
/**
|
|
80
|
+
* Retry failed job in database
|
|
81
|
+
* @llm-rule WHEN: Manual retry of failed jobs from admin interface
|
|
82
|
+
* @llm-rule AVOID: Retrying without fixing underlying code issues
|
|
83
|
+
*/
|
|
84
|
+
retry(jobId: string): Promise<void>;
|
|
85
|
+
/**
|
|
86
|
+
* Remove job from database
|
|
87
|
+
* @llm-rule WHEN: Canceling scheduled jobs or permanent cleanup
|
|
88
|
+
* @llm-rule AVOID: Removing active jobs - can cause worker inconsistencies
|
|
89
|
+
*/
|
|
90
|
+
remove(jobId: string): Promise<void>;
|
|
91
|
+
/**
|
|
92
|
+
* Clean old jobs from database
|
|
93
|
+
* @llm-rule WHEN: Periodic cleanup to prevent database growth
|
|
94
|
+
* @llm-rule AVOID: Aggressive cleanup without considering audit requirements
|
|
95
|
+
*/
|
|
96
|
+
clean(status: JobStatus, grace?: number): Promise<void>;
|
|
97
|
+
/**
|
|
98
|
+
* Get database transport health status
|
|
99
|
+
* @llm-rule WHEN: Health checks and monitoring
|
|
100
|
+
* @llm-rule AVOID: Complex health logic - database connection is main indicator
|
|
101
|
+
*/
|
|
102
|
+
getHealth(): {
|
|
103
|
+
status: 'healthy' | 'degraded' | 'unhealthy';
|
|
104
|
+
message?: string;
|
|
105
|
+
};
|
|
106
|
+
/**
|
|
107
|
+
* Close database transport and cleanup resources
|
|
108
|
+
* @llm-rule WHEN: App shutdown or testing cleanup
|
|
109
|
+
* @llm-rule AVOID: Closing shared database connection - other parts of app use it
|
|
110
|
+
*/
|
|
111
|
+
close(): Promise<void>;
|
|
112
|
+
/**
|
|
113
|
+
* Start background job processing
|
|
114
|
+
*/
|
|
115
|
+
private startProcessing;
|
|
116
|
+
/**
|
|
117
|
+
* Main job processing loop
|
|
118
|
+
*/
|
|
119
|
+
private processJobs;
|
|
120
|
+
/**
|
|
121
|
+
* Process waiting jobs up to concurrency limit
|
|
122
|
+
*/
|
|
123
|
+
private processWaitingJobs;
|
|
124
|
+
/**
|
|
125
|
+
* Process individual job with database state management
|
|
126
|
+
*/
|
|
127
|
+
private processJob;
|
|
128
|
+
/**
|
|
129
|
+
* Atomically claim job for processing
|
|
130
|
+
*/
|
|
131
|
+
private claimJob;
|
|
132
|
+
/**
|
|
133
|
+
* Complete job successfully
|
|
134
|
+
*/
|
|
135
|
+
private completeJob;
|
|
136
|
+
/**
|
|
137
|
+
* Fail job with retry logic
|
|
138
|
+
*/
|
|
139
|
+
private failJob;
|
|
140
|
+
/**
|
|
141
|
+
* Calculate retry delay with backoff
|
|
142
|
+
*/
|
|
143
|
+
private calculateRetryDelay;
|
|
144
|
+
/**
|
|
145
|
+
* Setup periodic cleanup
|
|
146
|
+
*/
|
|
147
|
+
private setupCleanup;
|
|
148
|
+
/**
|
|
149
|
+
* Setup periodic health checks
|
|
150
|
+
*/
|
|
151
|
+
private setupHealthCheck;
|
|
152
|
+
/**
|
|
153
|
+
* Ensure queue jobs table exists
|
|
154
|
+
*/
|
|
155
|
+
private ensureTableExists;
|
|
156
|
+
/**
|
|
157
|
+
* Map JobStatus to database status
|
|
158
|
+
*/
|
|
159
|
+
private mapStatusToDb;
|
|
160
|
+
/**
|
|
161
|
+
* Convert database job to JobInfo
|
|
162
|
+
*/
|
|
163
|
+
private dbJobToInfo;
|
|
164
|
+
}
|
|
165
|
+
//# sourceMappingURL=database.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../../src/queue/transports/database.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAqBnG;;GAEG;AACH,qBAAa,iBAAkB,YAAW,SAAS;IACjD,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,EAAE,CAAM;IAChB,OAAO,CAAC,QAAQ,CAAsC;IACtD,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,UAAU,CAAqB;IAGvC,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,gBAAgB,CAA+B;IAEvD;;;;OAIG;gBACS,MAAM,EAAE,WAAW;IAK/B;;;;OAIG;YACW,UAAU;IAiBxB;;;;OAIG;IACG,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBzF;;;;OAIG;IACH,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI;IAInE;;;;OAIG;IACG,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBxF;;;;OAIG;IACG,KAAK,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAW5C;;;;OAIG;IACG,MAAM,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAS7C;;;;OAIG;IACG,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IA8BrD;;;;OAIG;IACG,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,GAAE,MAAY,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAuB3F;;;;OAIG;IACG,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BzC;;;;OAIG;IACG,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB1C;;;;OAIG;IACG,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,GAAE,MAA4B,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BlF;;;;OAIG;IACH,SAAS,IAAI;QAAE,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,WAAW,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE;IAU/E;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAmC5B;;OAEG;IACH,OAAO,CAAC,eAAe;IAIvB;;OAEG;YACW,WAAW;IAWzB;;OAEG;YACW,kBAAkB;IAuChC;;OAEG;YACW,UAAU;IA0BxB;;OAEG;YACW,QAAQ;IAqBtB;;OAEG;YACW,WAAW;IAezB;;OAEG;YACW,OAAO;IAoCrB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAe3B;;OAEG;IACH,OAAO,CAAC,YAAY;IAepB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAWxB;;OAEG;YACW,iBAAiB;IAkB/B;;OAEG;IACH,OAAO,CAAC,aAAa;IAarB;;OAEG;IACH,OAAO,CAAC,WAAW;CAwBpB"}
|