@simplysm/orm-common 13.0.69 → 13.0.71
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 +54 -1447
- package/dist/create-db-context.d.ts +10 -10
- package/dist/create-db-context.js +9 -9
- package/dist/create-db-context.js.map +1 -1
- package/dist/ddl/column-ddl.d.ts +4 -4
- package/dist/ddl/initialize.d.ts +17 -17
- package/dist/ddl/initialize.js +2 -2
- package/dist/ddl/initialize.js.map +1 -1
- package/dist/ddl/relation-ddl.d.ts +6 -6
- package/dist/ddl/schema-ddl.d.ts +4 -4
- package/dist/ddl/table-ddl.d.ts +24 -24
- package/dist/ddl/table-ddl.js +4 -4
- package/dist/ddl/table-ddl.js.map +1 -1
- package/dist/errors/db-transaction-error.d.ts +15 -15
- package/dist/errors/db-transaction-error.d.ts.map +1 -1
- package/dist/exec/executable.d.ts +23 -23
- package/dist/exec/executable.js +3 -3
- package/dist/exec/executable.js.map +1 -1
- package/dist/exec/queryable.d.ts +160 -160
- package/dist/exec/queryable.js +119 -119
- package/dist/exec/queryable.js.map +1 -1
- package/dist/exec/search-parser.d.ts +37 -37
- package/dist/exec/search-parser.d.ts.map +1 -1
- package/dist/expr/expr-unit.d.ts +4 -4
- package/dist/expr/expr.d.ts +257 -257
- package/dist/expr/expr.js +265 -265
- package/dist/expr/expr.js.map +1 -1
- package/dist/query-builder/base/expr-renderer-base.d.ts +9 -9
- package/dist/query-builder/base/expr-renderer-base.js +2 -2
- package/dist/query-builder/base/expr-renderer-base.js.map +1 -1
- package/dist/query-builder/base/query-builder-base.d.ts +26 -26
- package/dist/query-builder/base/query-builder-base.d.ts.map +1 -1
- package/dist/query-builder/base/query-builder-base.js +22 -22
- package/dist/query-builder/base/query-builder-base.js.map +1 -1
- package/dist/query-builder/mssql/mssql-expr-renderer.d.ts +4 -4
- package/dist/query-builder/mssql/mssql-expr-renderer.d.ts.map +1 -1
- package/dist/query-builder/mssql/mssql-expr-renderer.js +18 -18
- package/dist/query-builder/mssql/mssql-expr-renderer.js.map +1 -1
- package/dist/query-builder/mssql/mssql-query-builder.d.ts +2 -2
- package/dist/query-builder/mssql/mssql-query-builder.d.ts.map +1 -1
- package/dist/query-builder/mssql/mssql-query-builder.js +11 -11
- package/dist/query-builder/mssql/mssql-query-builder.js.map +1 -1
- package/dist/query-builder/mysql/mysql-expr-renderer.d.ts +4 -4
- package/dist/query-builder/mysql/mysql-expr-renderer.d.ts.map +1 -1
- package/dist/query-builder/mysql/mysql-expr-renderer.js +17 -17
- package/dist/query-builder/mysql/mysql-expr-renderer.js.map +1 -1
- package/dist/query-builder/mysql/mysql-query-builder.d.ts +8 -8
- package/dist/query-builder/mysql/mysql-query-builder.d.ts.map +1 -1
- package/dist/query-builder/mysql/mysql-query-builder.js +5 -5
- package/dist/query-builder/mysql/mysql-query-builder.js.map +1 -1
- package/dist/query-builder/postgresql/postgresql-expr-renderer.d.ts +4 -4
- package/dist/query-builder/postgresql/postgresql-expr-renderer.d.ts.map +1 -1
- package/dist/query-builder/postgresql/postgresql-expr-renderer.js +17 -17
- package/dist/query-builder/postgresql/postgresql-expr-renderer.js.map +1 -1
- package/dist/query-builder/postgresql/postgresql-query-builder.d.ts +5 -5
- package/dist/query-builder/postgresql/postgresql-query-builder.d.ts.map +1 -1
- package/dist/query-builder/postgresql/postgresql-query-builder.js +8 -8
- package/dist/query-builder/postgresql/postgresql-query-builder.js.map +1 -1
- package/dist/query-builder/query-builder.d.ts +1 -1
- package/dist/schema/factory/column-builder.d.ts +79 -79
- package/dist/schema/factory/column-builder.js +42 -42
- package/dist/schema/factory/index-builder.d.ts +39 -39
- package/dist/schema/factory/index-builder.js +26 -26
- package/dist/schema/factory/relation-builder.d.ts +99 -99
- package/dist/schema/factory/relation-builder.d.ts.map +1 -1
- package/dist/schema/factory/relation-builder.js +38 -38
- package/dist/schema/procedure-builder.d.ts +49 -49
- package/dist/schema/procedure-builder.d.ts.map +1 -1
- package/dist/schema/procedure-builder.js +33 -33
- package/dist/schema/table-builder.d.ts +59 -59
- package/dist/schema/table-builder.d.ts.map +1 -1
- package/dist/schema/table-builder.js +43 -43
- package/dist/schema/view-builder.d.ts +49 -49
- package/dist/schema/view-builder.d.ts.map +1 -1
- package/dist/schema/view-builder.js +32 -32
- package/dist/types/column.d.ts +22 -22
- package/dist/types/column.js +1 -1
- package/dist/types/column.js.map +1 -1
- package/dist/types/db.d.ts +40 -40
- package/dist/types/expr.d.ts +59 -59
- package/dist/types/expr.d.ts.map +1 -1
- package/dist/types/query-def.d.ts +44 -44
- package/dist/types/query-def.d.ts.map +1 -1
- package/dist/utils/result-parser.d.ts +11 -11
- package/dist/utils/result-parser.js +3 -3
- package/dist/utils/result-parser.js.map +1 -1
- package/package.json +5 -5
- package/src/create-db-context.ts +20 -20
- package/src/ddl/column-ddl.ts +4 -4
- package/src/ddl/initialize.ts +259 -259
- package/src/ddl/relation-ddl.ts +89 -89
- package/src/ddl/schema-ddl.ts +4 -4
- package/src/ddl/table-ddl.ts +189 -189
- package/src/errors/db-transaction-error.ts +13 -13
- package/src/exec/executable.ts +25 -25
- package/src/exec/queryable.ts +2033 -2033
- package/src/exec/search-parser.ts +57 -57
- package/src/expr/expr-unit.ts +4 -4
- package/src/expr/expr.ts +2140 -2140
- package/src/query-builder/base/expr-renderer-base.ts +237 -237
- package/src/query-builder/base/query-builder-base.ts +213 -213
- package/src/query-builder/mssql/mssql-expr-renderer.ts +607 -607
- package/src/query-builder/mssql/mssql-query-builder.ts +650 -650
- package/src/query-builder/mysql/mysql-expr-renderer.ts +613 -613
- package/src/query-builder/mysql/mysql-query-builder.ts +759 -759
- package/src/query-builder/postgresql/postgresql-expr-renderer.ts +611 -611
- package/src/query-builder/postgresql/postgresql-query-builder.ts +686 -686
- package/src/query-builder/query-builder.ts +19 -19
- package/src/schema/factory/column-builder.ts +423 -423
- package/src/schema/factory/index-builder.ts +164 -164
- package/src/schema/factory/relation-builder.ts +453 -453
- package/src/schema/procedure-builder.ts +232 -232
- package/src/schema/table-builder.ts +319 -319
- package/src/schema/view-builder.ts +221 -221
- package/src/types/column.ts +188 -188
- package/src/types/db.ts +208 -208
- package/src/types/expr.ts +697 -697
- package/src/types/query-def.ts +513 -513
- package/src/utils/result-parser.ts +458 -458
- package/tests/db-context/create-db-context.spec.ts +224 -0
- package/tests/db-context/define-db-context.spec.ts +68 -0
- package/tests/ddl/basic.expected.ts +341 -0
- package/tests/ddl/basic.spec.ts +714 -0
- package/tests/ddl/column-builder.expected.ts +310 -0
- package/tests/ddl/column-builder.spec.ts +637 -0
- package/tests/ddl/index-builder.expected.ts +38 -0
- package/tests/ddl/index-builder.spec.ts +202 -0
- package/tests/ddl/procedure-builder.expected.ts +52 -0
- package/tests/ddl/procedure-builder.spec.ts +234 -0
- package/tests/ddl/relation-builder.expected.ts +36 -0
- package/tests/ddl/relation-builder.spec.ts +372 -0
- package/tests/ddl/table-builder.expected.ts +113 -0
- package/tests/ddl/table-builder.spec.ts +433 -0
- package/tests/ddl/view-builder.expected.ts +38 -0
- package/tests/ddl/view-builder.spec.ts +176 -0
- package/tests/dml/delete.expected.ts +96 -0
- package/tests/dml/delete.spec.ts +160 -0
- package/tests/dml/insert.expected.ts +192 -0
- package/tests/dml/insert.spec.ts +288 -0
- package/tests/dml/update.expected.ts +176 -0
- package/tests/dml/update.spec.ts +318 -0
- package/tests/dml/upsert.expected.ts +215 -0
- package/tests/dml/upsert.spec.ts +242 -0
- package/tests/errors/queryable-errors.spec.ts +177 -0
- package/tests/escape.spec.ts +100 -0
- package/tests/examples/pivot.expected.ts +211 -0
- package/tests/examples/pivot.spec.ts +533 -0
- package/tests/examples/sampling.expected.ts +69 -0
- package/tests/examples/sampling.spec.ts +105 -0
- package/tests/examples/unpivot.expected.ts +120 -0
- package/tests/examples/unpivot.spec.ts +226 -0
- package/tests/exec/search-parser.spec.ts +283 -0
- package/tests/executable/basic.expected.ts +18 -0
- package/tests/executable/basic.spec.ts +54 -0
- package/tests/expr/comparison.expected.ts +282 -0
- package/tests/expr/comparison.spec.ts +400 -0
- package/tests/expr/conditional.expected.ts +134 -0
- package/tests/expr/conditional.spec.ts +276 -0
- package/tests/expr/date.expected.ts +332 -0
- package/tests/expr/date.spec.ts +526 -0
- package/tests/expr/math.expected.ts +62 -0
- package/tests/expr/math.spec.ts +106 -0
- package/tests/expr/string.expected.ts +218 -0
- package/tests/expr/string.spec.ts +356 -0
- package/tests/expr/utility.expected.ts +147 -0
- package/tests/expr/utility.spec.ts +182 -0
- package/tests/select/basic.expected.ts +322 -0
- package/tests/select/basic.spec.ts +502 -0
- package/tests/select/filter.expected.ts +357 -0
- package/tests/select/filter.spec.ts +1068 -0
- package/tests/select/group.expected.ts +169 -0
- package/tests/select/group.spec.ts +244 -0
- package/tests/select/join.expected.ts +582 -0
- package/tests/select/join.spec.ts +805 -0
- package/tests/select/order.expected.ts +150 -0
- package/tests/select/order.spec.ts +189 -0
- package/tests/select/recursive-cte.expected.ts +244 -0
- package/tests/select/recursive-cte.spec.ts +514 -0
- package/tests/select/result-meta.spec.ts +270 -0
- package/tests/select/subquery.expected.ts +363 -0
- package/tests/select/subquery.spec.ts +537 -0
- package/tests/select/view.expected.ts +155 -0
- package/tests/select/view.spec.ts +235 -0
- package/tests/select/window.expected.ts +345 -0
- package/tests/select/window.spec.ts +618 -0
- package/tests/setup/MockExecutor.ts +18 -0
- package/tests/setup/TestDbContext.ts +59 -0
- package/tests/setup/models/Company.ts +13 -0
- package/tests/setup/models/Employee.ts +10 -0
- package/tests/setup/models/MonthlySales.ts +11 -0
- package/tests/setup/models/Post.ts +16 -0
- package/tests/setup/models/Sales.ts +10 -0
- package/tests/setup/models/User.ts +19 -0
- package/tests/setup/procedure/GetAllUsers.ts +9 -0
- package/tests/setup/procedure/GetUserById.ts +12 -0
- package/tests/setup/test-utils.ts +72 -0
- package/tests/setup/views/ActiveUsers.ts +8 -0
- package/tests/setup/views/UserSummary.ts +11 -0
- package/tests/types/nullable-queryable-record.spec.ts +145 -0
- package/tests/utils/result-parser-perf.spec.ts +210 -0
- package/tests/utils/result-parser.spec.ts +701 -0
- package/docs/expressions.md +0 -172
- package/docs/queries.md +0 -444
- package/docs/schema.md +0 -245
|
@@ -7,45 +7,45 @@ import {
|
|
|
7
7
|
} from "./factory/relation-builder.js";
|
|
8
8
|
class TableBuilder {
|
|
9
9
|
/**
|
|
10
|
-
* @param meta -
|
|
11
|
-
* @param meta.name -
|
|
12
|
-
* @param meta.description -
|
|
13
|
-
* @param meta.database -
|
|
14
|
-
* @param meta.schema -
|
|
15
|
-
* @param meta.columns -
|
|
16
|
-
* @param meta.primaryKey - PK
|
|
17
|
-
* @param meta.relations -
|
|
18
|
-
* @param meta.indexes -
|
|
10
|
+
* @param meta - Table Metadata
|
|
11
|
+
* @param meta.name - Table 이름
|
|
12
|
+
* @param meta.description - Table description (주석)
|
|
13
|
+
* @param meta.database - Database 이름
|
|
14
|
+
* @param meta.schema - Schema 이름 (MSSQL/PostgreSQL)
|
|
15
|
+
* @param meta.columns - Column definition
|
|
16
|
+
* @param meta.primaryKey - PK column array
|
|
17
|
+
* @param meta.relations - relationship definition
|
|
18
|
+
* @param meta.indexes - Index definition
|
|
19
19
|
*/
|
|
20
20
|
constructor(meta) {
|
|
21
21
|
this.meta = meta;
|
|
22
22
|
}
|
|
23
|
-
/**
|
|
23
|
+
/** Column definition (type for inference) */
|
|
24
24
|
$columns;
|
|
25
|
-
/**
|
|
25
|
+
/** relationship definition (type for inference) */
|
|
26
26
|
$relations;
|
|
27
|
-
/** 전체
|
|
27
|
+
/** 전체 Type inference (column + relationship) */
|
|
28
28
|
$infer;
|
|
29
|
-
/**
|
|
29
|
+
/** column만 Type inference */
|
|
30
30
|
$inferColumns;
|
|
31
|
-
/** INSERT용
|
|
31
|
+
/** INSERT용 Type inference (autoIncrement exclude, nullable/default는 optional) */
|
|
32
32
|
$inferInsert;
|
|
33
|
-
/** UPDATE용
|
|
33
|
+
/** UPDATE용 Type inference (모든 field optional) */
|
|
34
34
|
$inferUpdate;
|
|
35
35
|
/**
|
|
36
|
-
*
|
|
36
|
+
* Table set description
|
|
37
37
|
*
|
|
38
|
-
* @param desc -
|
|
39
|
-
* @returns
|
|
38
|
+
* @param desc - Table description (DDL Comment으로 사용)
|
|
39
|
+
* @returns new TableBuilder instance
|
|
40
40
|
*/
|
|
41
41
|
description(desc) {
|
|
42
42
|
return new TableBuilder({ ...this.meta, description: desc });
|
|
43
43
|
}
|
|
44
44
|
/**
|
|
45
|
-
*
|
|
45
|
+
* Database set name
|
|
46
46
|
*
|
|
47
|
-
* @param db -
|
|
48
|
-
* @returns
|
|
47
|
+
* @param db - Database 이름
|
|
48
|
+
* @returns new TableBuilder instance
|
|
49
49
|
*
|
|
50
50
|
* @example
|
|
51
51
|
* ```typescript
|
|
@@ -56,12 +56,12 @@ class TableBuilder {
|
|
|
56
56
|
return new TableBuilder({ ...this.meta, database: db });
|
|
57
57
|
}
|
|
58
58
|
/**
|
|
59
|
-
*
|
|
59
|
+
* schema set name
|
|
60
60
|
*
|
|
61
|
-
* MSSQL,
|
|
61
|
+
* MSSQL, PostgreSQLused in
|
|
62
62
|
*
|
|
63
|
-
* @param schema -
|
|
64
|
-
* @returns
|
|
63
|
+
* @param schema - Schema 이름 (MSSQL: dbo, PostgreSQL: public)
|
|
64
|
+
* @returns new TableBuilder instance
|
|
65
65
|
*
|
|
66
66
|
* @example
|
|
67
67
|
* ```typescript
|
|
@@ -74,13 +74,13 @@ class TableBuilder {
|
|
|
74
74
|
return new TableBuilder({ ...this.meta, schema });
|
|
75
75
|
}
|
|
76
76
|
/**
|
|
77
|
-
*
|
|
77
|
+
* Column definition
|
|
78
78
|
*
|
|
79
|
-
*
|
|
79
|
+
* column factory를 통해 type 안전한 Column definition
|
|
80
80
|
*
|
|
81
|
-
* @template TNewColumnDefs - 새
|
|
82
|
-
* @param fn -
|
|
83
|
-
* @returns
|
|
81
|
+
* @template TNewColumnDefs - 새 Column definition type
|
|
82
|
+
* @param fn - Column factory를 받아 Column definition를 반환하는 function
|
|
83
|
+
* @returns new TableBuilder instance
|
|
84
84
|
*
|
|
85
85
|
* @example
|
|
86
86
|
* ```typescript
|
|
@@ -102,8 +102,8 @@ class TableBuilder {
|
|
|
102
102
|
/**
|
|
103
103
|
* Primary Key 설정
|
|
104
104
|
*
|
|
105
|
-
* @param columns - PK를 구성할
|
|
106
|
-
* @returns
|
|
105
|
+
* @param columns - PK를 구성할 column name들 (복합 PK 가능)
|
|
106
|
+
* @returns new TableBuilder instance
|
|
107
107
|
*
|
|
108
108
|
* @example
|
|
109
109
|
* ```typescript
|
|
@@ -128,10 +128,10 @@ class TableBuilder {
|
|
|
128
128
|
});
|
|
129
129
|
}
|
|
130
130
|
/**
|
|
131
|
-
*
|
|
131
|
+
* Index definition
|
|
132
132
|
*
|
|
133
|
-
* @param fn -
|
|
134
|
-
* @returns
|
|
133
|
+
* @param fn - Index factory를 받아 Index 배열을 반환하는 function
|
|
134
|
+
* @returns new TableBuilder instance
|
|
135
135
|
*
|
|
136
136
|
* @example
|
|
137
137
|
* ```typescript
|
|
@@ -154,13 +154,13 @@ class TableBuilder {
|
|
|
154
154
|
});
|
|
155
155
|
}
|
|
156
156
|
/**
|
|
157
|
-
*
|
|
157
|
+
* relationship definition
|
|
158
158
|
*
|
|
159
|
-
* FK, 역참조 등
|
|
159
|
+
* FK, 역참조 등 Table 간 relationship 설정
|
|
160
160
|
*
|
|
161
|
-
* @template T -
|
|
162
|
-
* @param fn -
|
|
163
|
-
* @returns
|
|
161
|
+
* @template T - relationship definition type
|
|
162
|
+
* @param fn - relationship factory를 받아 relationship 정의를 반환하는 function
|
|
163
|
+
* @returns new TableBuilder instance
|
|
164
164
|
*
|
|
165
165
|
* @example
|
|
166
166
|
* ```typescript
|
|
@@ -172,7 +172,7 @@ class TableBuilder {
|
|
|
172
172
|
* }))
|
|
173
173
|
* .primaryKey("id")
|
|
174
174
|
* .relations((r) => ({
|
|
175
|
-
* // FK
|
|
175
|
+
* // FK relationship (N:1)
|
|
176
176
|
* author: r.foreignKey(["authorId"], () => User),
|
|
177
177
|
* }));
|
|
178
178
|
*
|
|
@@ -188,8 +188,8 @@ class TableBuilder {
|
|
|
188
188
|
* }));
|
|
189
189
|
* ```
|
|
190
190
|
*
|
|
191
|
-
* @see {@link ForeignKeyBuilder} FK
|
|
192
|
-
* @see {@link ForeignKeyTargetBuilder} FK 역참조
|
|
191
|
+
* @see {@link ForeignKeyBuilder} FK builder
|
|
192
|
+
* @see {@link ForeignKeyTargetBuilder} FK 역참조 builder
|
|
193
193
|
*/
|
|
194
194
|
relations(fn) {
|
|
195
195
|
return new TableBuilder({
|
|
@@ -3,18 +3,18 @@ import type { Queryable } from "../exec/queryable";
|
|
|
3
3
|
import type { DataRecord } from "../types/db";
|
|
4
4
|
import { createRelationFactory, type InferDeepRelations, type RelationBuilderRecord } from "./factory/relation-builder";
|
|
5
5
|
/**
|
|
6
|
-
*
|
|
6
|
+
* Database View definition builder
|
|
7
7
|
*
|
|
8
|
-
* Fluent API를 통해
|
|
9
|
-
* DbContext에서 queryable()과 함께 사용하여
|
|
8
|
+
* Fluent API를 통해 View의 query, 관계를 definition
|
|
9
|
+
* DbContext에서 queryable()과 함께 사용하여 type 안전한 query 작성
|
|
10
10
|
*
|
|
11
|
-
* @template TDbContext - DbContext
|
|
12
|
-
* @template TData -
|
|
13
|
-
* @template TRelations -
|
|
11
|
+
* @template TDbContext - DbContext type
|
|
12
|
+
* @template TData - View data record type
|
|
13
|
+
* @template TRelations - relationship definition record type
|
|
14
14
|
*
|
|
15
15
|
* @example
|
|
16
16
|
* ```typescript
|
|
17
|
-
* //
|
|
17
|
+
* // View definition
|
|
18
18
|
* const UserSummary = View("UserSummary")
|
|
19
19
|
* .database("mydb")
|
|
20
20
|
* .query((db: MyDb) =>
|
|
@@ -29,14 +29,14 @@ import { createRelationFactory, type InferDeepRelations, type RelationBuilderRec
|
|
|
29
29
|
* }))
|
|
30
30
|
* );
|
|
31
31
|
*
|
|
32
|
-
* //
|
|
32
|
+
* // DbContextused in
|
|
33
33
|
* class MyDb extends DbContext {
|
|
34
34
|
* readonly userSummary = queryable(this, UserSummary);
|
|
35
35
|
* }
|
|
36
36
|
* ```
|
|
37
37
|
*
|
|
38
|
-
* @see {@link View}
|
|
39
|
-
* @see {@link queryable} Queryable
|
|
38
|
+
* @see {@link View} factory function
|
|
39
|
+
* @see {@link queryable} Queryable Generate
|
|
40
40
|
*/
|
|
41
41
|
export declare class ViewBuilder<TDbContext extends DbContextBase, TData extends DataRecord, TRelations extends RelationBuilderRecord> {
|
|
42
42
|
readonly meta: {
|
|
@@ -47,18 +47,18 @@ export declare class ViewBuilder<TDbContext extends DbContextBase, TData extends
|
|
|
47
47
|
viewFn?: (db: TDbContext) => Queryable<TData, any>;
|
|
48
48
|
relations?: TRelations;
|
|
49
49
|
};
|
|
50
|
-
/**
|
|
50
|
+
/** relationship definition (type for inference) */
|
|
51
51
|
readonly $relations: TRelations;
|
|
52
|
-
/** 전체
|
|
52
|
+
/** 전체 Type inference */
|
|
53
53
|
readonly $infer: TData;
|
|
54
54
|
/**
|
|
55
|
-
* @param meta -
|
|
56
|
-
* @param meta.name -
|
|
57
|
-
* @param meta.description -
|
|
58
|
-
* @param meta.database -
|
|
59
|
-
* @param meta.schema -
|
|
60
|
-
* @param meta.viewFn -
|
|
61
|
-
* @param meta.relations -
|
|
55
|
+
* @param meta - View Metadata
|
|
56
|
+
* @param meta.name - View 이름
|
|
57
|
+
* @param meta.description - View description (주석)
|
|
58
|
+
* @param meta.database - Database 이름
|
|
59
|
+
* @param meta.schema - Schema 이름 (MSSQL/PostgreSQL)
|
|
60
|
+
* @param meta.viewFn - View Query definition function
|
|
61
|
+
* @param meta.relations - relationship definition
|
|
62
62
|
*/
|
|
63
63
|
constructor(meta: {
|
|
64
64
|
name: string;
|
|
@@ -69,17 +69,17 @@ export declare class ViewBuilder<TDbContext extends DbContextBase, TData extends
|
|
|
69
69
|
relations?: TRelations;
|
|
70
70
|
});
|
|
71
71
|
/**
|
|
72
|
-
*
|
|
72
|
+
* View set description
|
|
73
73
|
*
|
|
74
|
-
* @param desc -
|
|
75
|
-
* @returns
|
|
74
|
+
* @param desc - View description (DDL Comment으로 사용)
|
|
75
|
+
* @returns new ViewBuilder instance
|
|
76
76
|
*/
|
|
77
77
|
description(desc: string): ViewBuilder<TDbContext, TData, TRelations>;
|
|
78
78
|
/**
|
|
79
|
-
*
|
|
79
|
+
* Database set name
|
|
80
80
|
*
|
|
81
|
-
* @param db -
|
|
82
|
-
* @returns
|
|
81
|
+
* @param db - Database 이름
|
|
82
|
+
* @returns new ViewBuilder instance
|
|
83
83
|
*
|
|
84
84
|
* @example
|
|
85
85
|
* ```typescript
|
|
@@ -88,23 +88,23 @@ export declare class ViewBuilder<TDbContext extends DbContextBase, TData extends
|
|
|
88
88
|
*/
|
|
89
89
|
database(db: string): ViewBuilder<TDbContext, TData, TRelations>;
|
|
90
90
|
/**
|
|
91
|
-
*
|
|
91
|
+
* schema set name
|
|
92
92
|
*
|
|
93
|
-
* MSSQL,
|
|
93
|
+
* MSSQL, PostgreSQLused in
|
|
94
94
|
*
|
|
95
|
-
* @param schema -
|
|
96
|
-
* @returns
|
|
95
|
+
* @param schema - Schema 이름 (MSSQL: dbo, PostgreSQL: public)
|
|
96
|
+
* @returns new ViewBuilder instance
|
|
97
97
|
*/
|
|
98
98
|
schema(schema: string): ViewBuilder<TDbContext, TData, TRelations>;
|
|
99
99
|
/**
|
|
100
|
-
*
|
|
100
|
+
* View Query definition
|
|
101
101
|
*
|
|
102
|
-
* SELECT
|
|
102
|
+
* SELECT query를 통해 View의 data 소스 definition
|
|
103
103
|
*
|
|
104
|
-
* @template TViewData -
|
|
105
|
-
* @template TDb - DbContext
|
|
106
|
-
* @param viewFn - DbContext를 받아 Queryable을 반환하는
|
|
107
|
-
* @returns
|
|
104
|
+
* @template TViewData - View data type
|
|
105
|
+
* @template TDb - DbContext type
|
|
106
|
+
* @param viewFn - DbContext를 받아 Queryable을 반환하는 function
|
|
107
|
+
* @returns new ViewBuilder instance
|
|
108
108
|
*
|
|
109
109
|
* @example
|
|
110
110
|
* ```typescript
|
|
@@ -123,13 +123,13 @@ export declare class ViewBuilder<TDbContext extends DbContextBase, TData extends
|
|
|
123
123
|
*/
|
|
124
124
|
query<TViewData extends DataRecord, TDb extends DbContextBase>(viewFn: (db: TDb) => Queryable<TViewData, any>): ViewBuilder<TDb, TViewData, TRelations>;
|
|
125
125
|
/**
|
|
126
|
-
*
|
|
126
|
+
* relationship definition
|
|
127
127
|
*
|
|
128
|
-
* 다른
|
|
128
|
+
* 다른 Table/View와의 relationship 설정
|
|
129
129
|
*
|
|
130
|
-
* @template T -
|
|
131
|
-
* @param fn -
|
|
132
|
-
* @returns
|
|
130
|
+
* @template T - relationship definition type
|
|
131
|
+
* @param fn - relationship factory를 받아 relationship 정의를 반환하는 function
|
|
132
|
+
* @returns new ViewBuilder instance
|
|
133
133
|
*
|
|
134
134
|
* @example
|
|
135
135
|
* ```typescript
|
|
@@ -140,22 +140,22 @@ export declare class ViewBuilder<TDbContext extends DbContextBase, TData extends
|
|
|
140
140
|
* }));
|
|
141
141
|
* ```
|
|
142
142
|
*
|
|
143
|
-
* @see {@link ForeignKeyBuilder} FK
|
|
144
|
-
* @see {@link ForeignKeyTargetBuilder} FK 역참조
|
|
143
|
+
* @see {@link ForeignKeyBuilder} FK builder
|
|
144
|
+
* @see {@link ForeignKeyTargetBuilder} FK 역참조 builder
|
|
145
145
|
*/
|
|
146
146
|
relations<T extends RelationBuilderRecord>(fn: (r: ReturnType<typeof createRelationFactory<this, keyof TData & string>>) => T): ViewBuilder<TDbContext, TData & InferDeepRelations<T>, TRelations>;
|
|
147
147
|
}
|
|
148
148
|
/**
|
|
149
|
-
*
|
|
149
|
+
* View builder Generate factory function
|
|
150
150
|
*
|
|
151
|
-
* ViewBuilder를 생성하여 Fluent API로
|
|
151
|
+
* ViewBuilder를 생성하여 Fluent API로 View schema definition
|
|
152
152
|
*
|
|
153
|
-
* @param name -
|
|
154
|
-
* @returns ViewBuilder
|
|
153
|
+
* @param name - View 이름
|
|
154
|
+
* @returns ViewBuilder instance
|
|
155
155
|
*
|
|
156
156
|
* @example
|
|
157
157
|
* ```typescript
|
|
158
|
-
* //
|
|
158
|
+
* // Basic 사용
|
|
159
159
|
* const ActiveUsers = View("ActiveUsers")
|
|
160
160
|
* .database("mydb")
|
|
161
161
|
* .query((db: MyDb) =>
|
|
@@ -164,7 +164,7 @@ export declare class ViewBuilder<TDbContext extends DbContextBase, TData extends
|
|
|
164
164
|
* .select(u => ({ id: u.id, name: u.name }))
|
|
165
165
|
* );
|
|
166
166
|
*
|
|
167
|
-
* //
|
|
167
|
+
* // aggregation View
|
|
168
168
|
* const UserStats = View("UserStats")
|
|
169
169
|
* .database("mydb")
|
|
170
170
|
* .query((db: MyDb) =>
|
|
@@ -177,7 +177,7 @@ export declare class ViewBuilder<TDbContext extends DbContextBase, TData extends
|
|
|
177
177
|
* );
|
|
178
178
|
* ```
|
|
179
179
|
*
|
|
180
|
-
* @see {@link ViewBuilder}
|
|
180
|
+
* @see {@link ViewBuilder} builder class
|
|
181
181
|
*/
|
|
182
182
|
export declare function View(name: string): ViewBuilder<DbContextBase, DataRecord, RelationBuilderRecord>;
|
|
183
183
|
//# sourceMappingURL=view-builder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-builder.d.ts","sourceRoot":"","sources":["..\\..\\src\\schema\\view-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EACL,qBAAqB,EACrB,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC3B,MAAM,4BAA4B,CAAC;AAMpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBAAa,WAAW,CACtB,UAAU,SAAS,aAAa,EAChC,KAAK,SAAS,UAAU,EACxB,UAAU,SAAS,qBAAqB;IAiBtC,QAAQ,CAAC,IAAI,EAAE;QACb,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,UAAU,KAAK,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACnD,SAAS,CAAC,EAAE,UAAU,CAAC;KACxB;IAtBH,
|
|
1
|
+
{"version":3,"file":"view-builder.d.ts","sourceRoot":"","sources":["..\\..\\src\\schema\\view-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EACL,qBAAqB,EACrB,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC3B,MAAM,4BAA4B,CAAC;AAMpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBAAa,WAAW,CACtB,UAAU,SAAS,aAAa,EAChC,KAAK,SAAS,UAAU,EACxB,UAAU,SAAS,qBAAqB;IAiBtC,QAAQ,CAAC,IAAI,EAAE;QACb,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,UAAU,KAAK,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACnD,SAAS,CAAC,EAAE,UAAU,CAAC;KACxB;IAtBH,mDAAmD;IACnD,QAAQ,CAAC,UAAU,EAAG,UAAU,CAAC;IACjC,wBAAwB;IACxB,QAAQ,CAAC,MAAM,EAAG,KAAK,CAAC;IAExB;;;;;;;;OAQG;gBAEQ,IAAI,EAAE;QACb,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,UAAU,KAAK,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACnD,SAAS,CAAC,EAAE,UAAU,CAAC;KACxB;IAGH;;;;;OAKG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC;IAIrE;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC;IAIhE;;;;;;;OAOG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CAAC,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC;IAIlE;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,KAAK,CAAC,SAAS,SAAS,UAAU,EAAE,GAAG,SAAS,aAAa,EAC3D,MAAM,EAAE,CAAC,EAAE,EAAE,GAAG,KAAK,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,GAC7C,WAAW,CAAC,GAAG,EAAE,SAAS,EAAE,UAAU,CAAC;IAI1C;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,SAAS,CAAC,CAAC,SAAS,qBAAqB,EACvC,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,IAAI,EAAE,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,KAAK,CAAC,GACjF,WAAW,CAAC,UAAU,EAAE,KAAK,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC;CAQtE;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,iEAEhC"}
|
|
@@ -3,35 +3,35 @@ import {
|
|
|
3
3
|
} from "./factory/relation-builder.js";
|
|
4
4
|
class ViewBuilder {
|
|
5
5
|
/**
|
|
6
|
-
* @param meta -
|
|
7
|
-
* @param meta.name -
|
|
8
|
-
* @param meta.description -
|
|
9
|
-
* @param meta.database -
|
|
10
|
-
* @param meta.schema -
|
|
11
|
-
* @param meta.viewFn -
|
|
12
|
-
* @param meta.relations -
|
|
6
|
+
* @param meta - View Metadata
|
|
7
|
+
* @param meta.name - View 이름
|
|
8
|
+
* @param meta.description - View description (주석)
|
|
9
|
+
* @param meta.database - Database 이름
|
|
10
|
+
* @param meta.schema - Schema 이름 (MSSQL/PostgreSQL)
|
|
11
|
+
* @param meta.viewFn - View Query definition function
|
|
12
|
+
* @param meta.relations - relationship definition
|
|
13
13
|
*/
|
|
14
14
|
constructor(meta) {
|
|
15
15
|
this.meta = meta;
|
|
16
16
|
}
|
|
17
|
-
/**
|
|
17
|
+
/** relationship definition (type for inference) */
|
|
18
18
|
$relations;
|
|
19
|
-
/** 전체
|
|
19
|
+
/** 전체 Type inference */
|
|
20
20
|
$infer;
|
|
21
21
|
/**
|
|
22
|
-
*
|
|
22
|
+
* View set description
|
|
23
23
|
*
|
|
24
|
-
* @param desc -
|
|
25
|
-
* @returns
|
|
24
|
+
* @param desc - View description (DDL Comment으로 사용)
|
|
25
|
+
* @returns new ViewBuilder instance
|
|
26
26
|
*/
|
|
27
27
|
description(desc) {
|
|
28
28
|
return new ViewBuilder({ ...this.meta, description: desc });
|
|
29
29
|
}
|
|
30
30
|
/**
|
|
31
|
-
*
|
|
31
|
+
* Database set name
|
|
32
32
|
*
|
|
33
|
-
* @param db -
|
|
34
|
-
* @returns
|
|
33
|
+
* @param db - Database 이름
|
|
34
|
+
* @returns new ViewBuilder instance
|
|
35
35
|
*
|
|
36
36
|
* @example
|
|
37
37
|
* ```typescript
|
|
@@ -42,25 +42,25 @@ class ViewBuilder {
|
|
|
42
42
|
return new ViewBuilder({ ...this.meta, database: db });
|
|
43
43
|
}
|
|
44
44
|
/**
|
|
45
|
-
*
|
|
45
|
+
* schema set name
|
|
46
46
|
*
|
|
47
|
-
* MSSQL,
|
|
47
|
+
* MSSQL, PostgreSQLused in
|
|
48
48
|
*
|
|
49
|
-
* @param schema -
|
|
50
|
-
* @returns
|
|
49
|
+
* @param schema - Schema 이름 (MSSQL: dbo, PostgreSQL: public)
|
|
50
|
+
* @returns new ViewBuilder instance
|
|
51
51
|
*/
|
|
52
52
|
schema(schema) {
|
|
53
53
|
return new ViewBuilder({ ...this.meta, schema });
|
|
54
54
|
}
|
|
55
55
|
/**
|
|
56
|
-
*
|
|
56
|
+
* View Query definition
|
|
57
57
|
*
|
|
58
|
-
* SELECT
|
|
58
|
+
* SELECT query를 통해 View의 data 소스 definition
|
|
59
59
|
*
|
|
60
|
-
* @template TViewData -
|
|
61
|
-
* @template TDb - DbContext
|
|
62
|
-
* @param viewFn - DbContext를 받아 Queryable을 반환하는
|
|
63
|
-
* @returns
|
|
60
|
+
* @template TViewData - View data type
|
|
61
|
+
* @template TDb - DbContext type
|
|
62
|
+
* @param viewFn - DbContext를 받아 Queryable을 반환하는 function
|
|
63
|
+
* @returns new ViewBuilder instance
|
|
64
64
|
*
|
|
65
65
|
* @example
|
|
66
66
|
* ```typescript
|
|
@@ -81,13 +81,13 @@ class ViewBuilder {
|
|
|
81
81
|
return new ViewBuilder({ ...this.meta, viewFn });
|
|
82
82
|
}
|
|
83
83
|
/**
|
|
84
|
-
*
|
|
84
|
+
* relationship definition
|
|
85
85
|
*
|
|
86
|
-
* 다른
|
|
86
|
+
* 다른 Table/View와의 relationship 설정
|
|
87
87
|
*
|
|
88
|
-
* @template T -
|
|
89
|
-
* @param fn -
|
|
90
|
-
* @returns
|
|
88
|
+
* @template T - relationship definition type
|
|
89
|
+
* @param fn - relationship factory를 받아 relationship 정의를 반환하는 function
|
|
90
|
+
* @returns new ViewBuilder instance
|
|
91
91
|
*
|
|
92
92
|
* @example
|
|
93
93
|
* ```typescript
|
|
@@ -98,8 +98,8 @@ class ViewBuilder {
|
|
|
98
98
|
* }));
|
|
99
99
|
* ```
|
|
100
100
|
*
|
|
101
|
-
* @see {@link ForeignKeyBuilder} FK
|
|
102
|
-
* @see {@link ForeignKeyTargetBuilder} FK 역참조
|
|
101
|
+
* @see {@link ForeignKeyBuilder} FK builder
|
|
102
|
+
* @see {@link ForeignKeyTargetBuilder} FK 역참조 builder
|
|
103
103
|
*/
|
|
104
104
|
relations(fn) {
|
|
105
105
|
return new ViewBuilder({
|
package/dist/types/column.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { DateOnly, DateTime, Time, Uuid, type Bytes } from "@simplysm/core-common";
|
|
2
2
|
/**
|
|
3
|
-
* SQL
|
|
3
|
+
* SQL data type definition
|
|
4
4
|
*
|
|
5
|
-
* DBMS
|
|
5
|
+
* DBMS Mapping:
|
|
6
6
|
* - `int`: INT (4 bytes)
|
|
7
7
|
* - `bigint`: BIGINT (8 bytes)
|
|
8
8
|
* - `float`: FLOAT/REAL (4 bytes)
|
|
@@ -59,9 +59,9 @@ export type DataType = {
|
|
|
59
59
|
type: "uuid";
|
|
60
60
|
};
|
|
61
61
|
/**
|
|
62
|
-
*
|
|
62
|
+
* Column primitive type mapping
|
|
63
63
|
*
|
|
64
|
-
* TypeScript
|
|
64
|
+
* TypeScript type name (string) → Actual TypeScript type mapping
|
|
65
65
|
*
|
|
66
66
|
* @example
|
|
67
67
|
* ```typescript
|
|
@@ -80,7 +80,7 @@ export type ColumnPrimitiveMap = {
|
|
|
80
80
|
Bytes: Bytes;
|
|
81
81
|
};
|
|
82
82
|
/**
|
|
83
|
-
*
|
|
83
|
+
* Column primitive type name (string)
|
|
84
84
|
*
|
|
85
85
|
* @example
|
|
86
86
|
* ```typescript
|
|
@@ -90,13 +90,13 @@ export type ColumnPrimitiveMap = {
|
|
|
90
90
|
*/
|
|
91
91
|
export type ColumnPrimitiveStr = keyof ColumnPrimitiveMap;
|
|
92
92
|
/**
|
|
93
|
-
*
|
|
93
|
+
* All primitive types that can be stored in columns
|
|
94
94
|
*
|
|
95
|
-
* undefined
|
|
95
|
+
* undefined represents NULL
|
|
96
96
|
*/
|
|
97
97
|
export type ColumnPrimitive = ColumnPrimitiveMap[ColumnPrimitiveStr] | undefined;
|
|
98
98
|
/**
|
|
99
|
-
* SQL DataType → TypeScript
|
|
99
|
+
* SQL DataType → TypeScript type name mapping
|
|
100
100
|
*
|
|
101
101
|
* @example
|
|
102
102
|
* ```typescript
|
|
@@ -121,7 +121,7 @@ export declare const dataTypeStrToColumnPrimitiveStr: {
|
|
|
121
121
|
uuid: "Uuid";
|
|
122
122
|
};
|
|
123
123
|
/**
|
|
124
|
-
*
|
|
124
|
+
* TypeScript Type inference from DataType
|
|
125
125
|
*
|
|
126
126
|
* @template T - DataType
|
|
127
127
|
*
|
|
@@ -133,11 +133,11 @@ export declare const dataTypeStrToColumnPrimitiveStr: {
|
|
|
133
133
|
*/
|
|
134
134
|
export type InferColumnPrimitiveFromDataType<TDataType extends DataType> = ColumnPrimitiveMap[(typeof dataTypeStrToColumnPrimitiveStr)[TDataType["type"]]];
|
|
135
135
|
/**
|
|
136
|
-
*
|
|
136
|
+
* Infer ColumnPrimitiveStr from runtime value
|
|
137
137
|
*
|
|
138
|
-
* @param value -
|
|
139
|
-
* @returns ColumnPrimitiveStr
|
|
140
|
-
* @throws
|
|
138
|
+
* @param value - Column value
|
|
139
|
+
* @returns ColumnPrimitiveStr type name
|
|
140
|
+
* @throws Error if value type is unknown
|
|
141
141
|
*
|
|
142
142
|
* @example
|
|
143
143
|
* ```typescript
|
|
@@ -148,18 +148,18 @@ export type InferColumnPrimitiveFromDataType<TDataType extends DataType> = Colum
|
|
|
148
148
|
*/
|
|
149
149
|
export declare function inferColumnPrimitiveStr(value: ColumnPrimitive): ColumnPrimitiveStr;
|
|
150
150
|
/**
|
|
151
|
-
*
|
|
151
|
+
* Column metadata
|
|
152
152
|
*
|
|
153
|
-
* ColumnBuilder
|
|
153
|
+
* Generated by ColumnBuilder and passed to TableBuilder
|
|
154
154
|
*
|
|
155
|
-
* @property type - TypeScript
|
|
156
|
-
* @property dataType - SQL
|
|
157
|
-
* @property autoIncrement -
|
|
158
|
-
* @property nullable -
|
|
159
|
-
* @property default -
|
|
160
|
-
* @property description -
|
|
155
|
+
* @property type - TypeScript type name (ColumnPrimitiveStr)
|
|
156
|
+
* @property dataType - SQL data type
|
|
157
|
+
* @property autoIncrement - Whether to auto-increment
|
|
158
|
+
* @property nullable - Whether to allow NULL
|
|
159
|
+
* @property default - Default value
|
|
160
|
+
* @property description - Column description (DDL comment)
|
|
161
161
|
*
|
|
162
|
-
* @see {@link ColumnBuilder}
|
|
162
|
+
* @see {@link ColumnBuilder} Column builder
|
|
163
163
|
*/
|
|
164
164
|
export interface ColumnMeta {
|
|
165
165
|
type: ColumnPrimitiveStr;
|
package/dist/types/column.js
CHANGED
|
@@ -24,7 +24,7 @@ function inferColumnPrimitiveStr(value) {
|
|
|
24
24
|
if (value instanceof Time) return "Time";
|
|
25
25
|
if (value instanceof Uuid) return "Uuid";
|
|
26
26
|
if (value instanceof Uint8Array) return "Bytes";
|
|
27
|
-
throw new Error(
|
|
27
|
+
throw new Error(`Unknown value type: ${typeof value}`);
|
|
28
28
|
}
|
|
29
29
|
export {
|
|
30
30
|
dataTypeStrToColumnPrimitiveStr,
|
package/dist/types/column.js.map
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/types/column.ts"],
|
|
4
|
-
"mappings": "AAAA,SAAS,UAAU,UAAU,MAAM,YAAwB;AAyGpD,MAAM,kCAAkC;AAAA,EAC7C,KAAK;AAAA,EACL,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,SAAS;AAAA,EACT,MAAM;AAAA,EACN,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,UAAU;AAAA,EACV,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AACR;AA8BO,SAAS,wBAAwB,OAA4C;AAClF,MAAI,OAAO,UAAU,SAAU,QAAO;AACtC,MAAI,OAAO,UAAU,SAAU,QAAO;AACtC,MAAI,OAAO,UAAU,UAAW,QAAO;AACvC,MAAI,iBAAiB,SAAU,QAAO;AACtC,MAAI,iBAAiB,SAAU,QAAO;AACtC,MAAI,iBAAiB,KAAM,QAAO;AAClC,MAAI,iBAAiB,KAAM,QAAO;AAClC,MAAI,iBAAiB,WAAY,QAAO;AACxC,QAAM,IAAI,MAAM,
|
|
4
|
+
"mappings": "AAAA,SAAS,UAAU,UAAU,MAAM,YAAwB;AAyGpD,MAAM,kCAAkC;AAAA,EAC7C,KAAK;AAAA,EACL,QAAQ;AAAA,EACR,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,SAAS;AAAA,EACT,MAAM;AAAA,EACN,MAAM;AAAA,EACN,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,UAAU;AAAA,EACV,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AACR;AA8BO,SAAS,wBAAwB,OAA4C;AAClF,MAAI,OAAO,UAAU,SAAU,QAAO;AACtC,MAAI,OAAO,UAAU,SAAU,QAAO;AACtC,MAAI,OAAO,UAAU,UAAW,QAAO;AACvC,MAAI,iBAAiB,SAAU,QAAO;AACtC,MAAI,iBAAiB,SAAU,QAAO;AACtC,MAAI,iBAAiB,KAAM,QAAO;AAClC,MAAI,iBAAiB,KAAM,QAAO;AAClC,MAAI,iBAAiB,WAAY,QAAO;AACxC,QAAM,IAAI,MAAM,uBAAuB,OAAO,KAAK,EAAE;AACvD;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|