@zenstackhq/sdk 3.0.0-alpha.3 → 3.0.0-alpha.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +401 -194
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +77 -31
- package/dist/index.d.ts +77 -31
- package/dist/index.js +413 -206
- package/dist/index.js.map +1 -1
- package/dist/schema.d.cts +47 -19
- package/dist/schema.d.ts +47 -19
- package/package.json +10 -12
package/dist/schema.d.cts
CHANGED
|
@@ -52,16 +52,21 @@ type SchemaDef = {
|
|
|
52
52
|
provider: DataSourceProvider;
|
|
53
53
|
models: Record<string, ModelDef>;
|
|
54
54
|
enums?: Record<string, EnumDef>;
|
|
55
|
+
typeDefs?: Record<string, TypeDefDef>;
|
|
55
56
|
plugins: Record<string, unknown>;
|
|
56
57
|
procedures?: Record<string, ProcedureDef>;
|
|
57
58
|
authType?: GetModels<SchemaDef>;
|
|
58
59
|
};
|
|
59
60
|
type ModelDef = {
|
|
61
|
+
name: string;
|
|
62
|
+
baseModel?: string;
|
|
60
63
|
fields: Record<string, FieldDef>;
|
|
61
64
|
attributes?: AttributeApplication[];
|
|
62
65
|
uniqueFields: Record<string, Pick<FieldDef, 'type'> | Record<string, Pick<FieldDef, 'type'>>>;
|
|
63
66
|
idFields: string[];
|
|
64
67
|
computedFields?: Record<string, Function>;
|
|
68
|
+
isDelegate?: boolean;
|
|
69
|
+
subModels?: string[];
|
|
65
70
|
};
|
|
66
71
|
type AttributeApplication = {
|
|
67
72
|
name: string;
|
|
@@ -81,6 +86,7 @@ type RelationInfo = {
|
|
|
81
86
|
onUpdate?: CascadeAction;
|
|
82
87
|
};
|
|
83
88
|
type FieldDef = {
|
|
89
|
+
name: string;
|
|
84
90
|
type: string;
|
|
85
91
|
id?: boolean;
|
|
86
92
|
array?: boolean;
|
|
@@ -88,10 +94,12 @@ type FieldDef = {
|
|
|
88
94
|
unique?: boolean;
|
|
89
95
|
updatedAt?: boolean;
|
|
90
96
|
attributes?: AttributeApplication[];
|
|
91
|
-
default?: MappedBuiltinType | Expression;
|
|
97
|
+
default?: MappedBuiltinType | Expression | unknown[];
|
|
92
98
|
relation?: RelationInfo;
|
|
93
99
|
foreignKeyFor?: string[];
|
|
94
100
|
computed?: boolean;
|
|
101
|
+
originModel?: string;
|
|
102
|
+
isDiscriminator?: boolean;
|
|
95
103
|
};
|
|
96
104
|
type ProcedureParam = {
|
|
97
105
|
name: string;
|
|
@@ -103,35 +111,55 @@ type ProcedureDef = {
|
|
|
103
111
|
returnType: string;
|
|
104
112
|
mutation?: boolean;
|
|
105
113
|
};
|
|
106
|
-
type BuiltinType = 'String' | 'Boolean' | 'Int' | 'Float' | 'BigInt' | 'Decimal' | 'DateTime' | 'Bytes';
|
|
114
|
+
type BuiltinType = 'String' | 'Boolean' | 'Int' | 'Float' | 'BigInt' | 'Decimal' | 'DateTime' | 'Bytes' | 'Json' | 'Unsupported';
|
|
107
115
|
type MappedBuiltinType = string | boolean | number | bigint | Decimal | Date;
|
|
108
116
|
type EnumDef = Record<string, string>;
|
|
117
|
+
type TypeDefDef = {
|
|
118
|
+
name: string;
|
|
119
|
+
fields: Record<string, FieldDef>;
|
|
120
|
+
attributes?: AttributeApplication[];
|
|
121
|
+
};
|
|
109
122
|
type GetModels<Schema extends SchemaDef> = Extract<keyof Schema['models'], string>;
|
|
123
|
+
type GetDelegateModels<Schema extends SchemaDef> = keyof {
|
|
124
|
+
[Key in GetModels<Schema> as Schema['models'][Key]['isDelegate'] extends true ? Key : never]: true;
|
|
125
|
+
};
|
|
126
|
+
type GetSubModels<Schema extends SchemaDef, Model extends GetModels<Schema>> = GetModel<Schema, Model>['subModels'] extends string[] ? Extract<GetModel<Schema, Model>['subModels'][number], GetModels<Schema>> : never;
|
|
110
127
|
type GetModel<Schema extends SchemaDef, Model extends GetModels<Schema>> = Schema['models'][Model];
|
|
111
128
|
type GetEnums<Schema extends SchemaDef> = keyof Schema['enums'];
|
|
112
129
|
type GetEnum<Schema extends SchemaDef, Enum extends GetEnums<Schema>> = Schema['enums'][Enum];
|
|
113
|
-
type
|
|
114
|
-
type
|
|
115
|
-
type
|
|
130
|
+
type GetTypeDefs<Schema extends SchemaDef> = Extract<keyof Schema['typeDefs'], string>;
|
|
131
|
+
type GetTypeDef<Schema extends SchemaDef, TypeDef extends GetTypeDefs<Schema>> = Schema['typeDefs'] extends Record<string, unknown> ? Schema['typeDefs'][TypeDef] : never;
|
|
132
|
+
type GetModelFields<Schema extends SchemaDef, Model extends GetModels<Schema>> = Extract<keyof GetModel<Schema, Model>['fields'], string>;
|
|
133
|
+
type GetModelField<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = GetModel<Schema, Model>['fields'][Field];
|
|
134
|
+
type GetModelDiscriminator<Schema extends SchemaDef, Model extends GetModels<Schema>> = keyof {
|
|
135
|
+
[Key in GetModelFields<Schema, Model> as FieldIsDelegateDiscriminator<Schema, Model, Key> extends true ? GetModelField<Schema, Model, Key>['originModel'] extends string ? never : Key : never]: true;
|
|
136
|
+
};
|
|
137
|
+
type GetModelFieldType<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = Schema['models'][Model]['fields'][Field]['type'];
|
|
138
|
+
type GetTypeDefFields<Schema extends SchemaDef, TypeDef extends GetTypeDefs<Schema>> = Extract<keyof GetTypeDef<Schema, TypeDef>['fields'], string>;
|
|
139
|
+
type GetTypeDefField<Schema extends SchemaDef, TypeDef extends GetTypeDefs<Schema>, Field extends GetTypeDefFields<Schema, TypeDef>> = GetTypeDef<Schema, TypeDef>['fields'][Field];
|
|
116
140
|
type ScalarFields<Schema extends SchemaDef, Model extends GetModels<Schema>, IncludeComputed extends boolean = true> = keyof {
|
|
117
|
-
[Key in
|
|
141
|
+
[Key in GetModelFields<Schema, Model> as GetModelField<Schema, Model, Key>['relation'] extends object ? never : GetModelField<Schema, Model, Key>['foreignKeyFor'] extends string[] ? never : IncludeComputed extends true ? Key : FieldIsComputed<Schema, Model, Key> extends true ? never : Key]: Key;
|
|
118
142
|
};
|
|
119
143
|
type ForeignKeyFields<Schema extends SchemaDef, Model extends GetModels<Schema>> = keyof {
|
|
120
|
-
[Key in
|
|
144
|
+
[Key in GetModelFields<Schema, Model> as GetModelField<Schema, Model, Key>['foreignKeyFor'] extends string[] ? Key : never]: Key;
|
|
121
145
|
};
|
|
122
146
|
type NonRelationFields<Schema extends SchemaDef, Model extends GetModels<Schema>> = keyof {
|
|
123
|
-
[Key in
|
|
147
|
+
[Key in GetModelFields<Schema, Model> as GetModelField<Schema, Model, Key>['relation'] extends object ? never : Key]: Key;
|
|
124
148
|
};
|
|
125
149
|
type RelationFields<Schema extends SchemaDef, Model extends GetModels<Schema>> = keyof {
|
|
126
|
-
[Key in
|
|
127
|
-
};
|
|
128
|
-
type FieldType<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends
|
|
129
|
-
type RelationFieldType<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends RelationFields<Schema, Model>> =
|
|
130
|
-
type
|
|
131
|
-
type
|
|
132
|
-
type
|
|
133
|
-
type
|
|
134
|
-
type
|
|
135
|
-
type
|
|
150
|
+
[Key in GetModelFields<Schema, Model> as GetModelField<Schema, Model, Key>['relation'] extends object ? Key : never]: Key;
|
|
151
|
+
};
|
|
152
|
+
type FieldType<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = GetModelField<Schema, Model, Field>['type'];
|
|
153
|
+
type RelationFieldType<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends RelationFields<Schema, Model>> = GetModelField<Schema, Model, Field>['type'] extends GetModels<Schema> ? GetModelField<Schema, Model, Field>['type'] : never;
|
|
154
|
+
type ModelFieldIsOptional<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = GetModelField<Schema, Model, Field>['optional'] extends true ? true : false;
|
|
155
|
+
type TypeDefFieldIsOptional<Schema extends SchemaDef, TypeDef extends GetTypeDefs<Schema>, Field extends GetTypeDefFields<Schema, TypeDef>> = GetTypeDefField<Schema, TypeDef, Field>['optional'] extends true ? true : false;
|
|
156
|
+
type FieldIsRelation<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = GetModelField<Schema, Model, Field>['relation'] extends object ? true : false;
|
|
157
|
+
type FieldIsArray<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = GetModelField<Schema, Model, Field>['array'] extends true ? true : false;
|
|
158
|
+
type FieldIsComputed<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = GetModelField<Schema, Model, Field>['computed'] extends true ? true : false;
|
|
159
|
+
type FieldHasDefault<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = GetModelField<Schema, Model, Field>['default'] extends object | number | string | boolean ? true : GetModelField<Schema, Model, Field>['updatedAt'] extends true ? true : false;
|
|
160
|
+
type FieldIsRelationArray<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = FieldIsRelation<Schema, Model, Field> extends true ? FieldIsArray<Schema, Model, Field> : false;
|
|
161
|
+
type IsDelegateModel<Schema extends SchemaDef, Model extends GetModels<Schema>> = Schema['models'][Model]['isDelegate'] extends true ? true : false;
|
|
162
|
+
type FieldIsDelegateRelation<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends RelationFields<Schema, Model>> = GetModelFieldType<Schema, Model, Field> extends GetModels<Schema> ? IsDelegateModel<Schema, GetModelFieldType<Schema, Model, Field>> : false;
|
|
163
|
+
type FieldIsDelegateDiscriminator<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = GetModelField<Schema, Model, Field>['isDiscriminator'] extends true ? true : false;
|
|
136
164
|
|
|
137
|
-
export type { ArrayExpression, AttributeApplication, AttributeArg, BinaryExpression, BinaryOperator, BuiltinType, CallExpression, CascadeAction, DataSourceProvider, DataSourceProviderType, EnumDef, Expression, FieldDef, FieldExpression, FieldHasDefault, FieldIsArray, FieldIsComputed,
|
|
165
|
+
export type { ArrayExpression, AttributeApplication, AttributeArg, BinaryExpression, BinaryOperator, BuiltinType, CallExpression, CascadeAction, DataSourceProvider, DataSourceProviderType, EnumDef, Expression, FieldDef, FieldExpression, FieldHasDefault, FieldIsArray, FieldIsComputed, FieldIsDelegateDiscriminator, FieldIsDelegateRelation, FieldIsRelation, FieldIsRelationArray, FieldType, ForeignKeyFields, GetDelegateModels, GetEnum, GetEnums, GetModel, GetModelDiscriminator, GetModelField, GetModelFieldType, GetModelFields, GetModels, GetSubModels, GetTypeDef, GetTypeDefField, GetTypeDefFields, GetTypeDefs, IsDelegateModel, LiteralExpression, MappedBuiltinType, MemberExpression, ModelDef, ModelFieldIsOptional, NonRelationFields, NullExpression, ProcedureDef, ProcedureParam, RelationFieldType, RelationFields, RelationInfo, ScalarFields, SchemaDef, ThisExpression, TypeDefDef, TypeDefFieldIsOptional, UnaryExpression, UnaryOperator };
|
package/dist/schema.d.ts
CHANGED
|
@@ -52,16 +52,21 @@ type SchemaDef = {
|
|
|
52
52
|
provider: DataSourceProvider;
|
|
53
53
|
models: Record<string, ModelDef>;
|
|
54
54
|
enums?: Record<string, EnumDef>;
|
|
55
|
+
typeDefs?: Record<string, TypeDefDef>;
|
|
55
56
|
plugins: Record<string, unknown>;
|
|
56
57
|
procedures?: Record<string, ProcedureDef>;
|
|
57
58
|
authType?: GetModels<SchemaDef>;
|
|
58
59
|
};
|
|
59
60
|
type ModelDef = {
|
|
61
|
+
name: string;
|
|
62
|
+
baseModel?: string;
|
|
60
63
|
fields: Record<string, FieldDef>;
|
|
61
64
|
attributes?: AttributeApplication[];
|
|
62
65
|
uniqueFields: Record<string, Pick<FieldDef, 'type'> | Record<string, Pick<FieldDef, 'type'>>>;
|
|
63
66
|
idFields: string[];
|
|
64
67
|
computedFields?: Record<string, Function>;
|
|
68
|
+
isDelegate?: boolean;
|
|
69
|
+
subModels?: string[];
|
|
65
70
|
};
|
|
66
71
|
type AttributeApplication = {
|
|
67
72
|
name: string;
|
|
@@ -81,6 +86,7 @@ type RelationInfo = {
|
|
|
81
86
|
onUpdate?: CascadeAction;
|
|
82
87
|
};
|
|
83
88
|
type FieldDef = {
|
|
89
|
+
name: string;
|
|
84
90
|
type: string;
|
|
85
91
|
id?: boolean;
|
|
86
92
|
array?: boolean;
|
|
@@ -88,10 +94,12 @@ type FieldDef = {
|
|
|
88
94
|
unique?: boolean;
|
|
89
95
|
updatedAt?: boolean;
|
|
90
96
|
attributes?: AttributeApplication[];
|
|
91
|
-
default?: MappedBuiltinType | Expression;
|
|
97
|
+
default?: MappedBuiltinType | Expression | unknown[];
|
|
92
98
|
relation?: RelationInfo;
|
|
93
99
|
foreignKeyFor?: string[];
|
|
94
100
|
computed?: boolean;
|
|
101
|
+
originModel?: string;
|
|
102
|
+
isDiscriminator?: boolean;
|
|
95
103
|
};
|
|
96
104
|
type ProcedureParam = {
|
|
97
105
|
name: string;
|
|
@@ -103,35 +111,55 @@ type ProcedureDef = {
|
|
|
103
111
|
returnType: string;
|
|
104
112
|
mutation?: boolean;
|
|
105
113
|
};
|
|
106
|
-
type BuiltinType = 'String' | 'Boolean' | 'Int' | 'Float' | 'BigInt' | 'Decimal' | 'DateTime' | 'Bytes';
|
|
114
|
+
type BuiltinType = 'String' | 'Boolean' | 'Int' | 'Float' | 'BigInt' | 'Decimal' | 'DateTime' | 'Bytes' | 'Json' | 'Unsupported';
|
|
107
115
|
type MappedBuiltinType = string | boolean | number | bigint | Decimal | Date;
|
|
108
116
|
type EnumDef = Record<string, string>;
|
|
117
|
+
type TypeDefDef = {
|
|
118
|
+
name: string;
|
|
119
|
+
fields: Record<string, FieldDef>;
|
|
120
|
+
attributes?: AttributeApplication[];
|
|
121
|
+
};
|
|
109
122
|
type GetModels<Schema extends SchemaDef> = Extract<keyof Schema['models'], string>;
|
|
123
|
+
type GetDelegateModels<Schema extends SchemaDef> = keyof {
|
|
124
|
+
[Key in GetModels<Schema> as Schema['models'][Key]['isDelegate'] extends true ? Key : never]: true;
|
|
125
|
+
};
|
|
126
|
+
type GetSubModels<Schema extends SchemaDef, Model extends GetModels<Schema>> = GetModel<Schema, Model>['subModels'] extends string[] ? Extract<GetModel<Schema, Model>['subModels'][number], GetModels<Schema>> : never;
|
|
110
127
|
type GetModel<Schema extends SchemaDef, Model extends GetModels<Schema>> = Schema['models'][Model];
|
|
111
128
|
type GetEnums<Schema extends SchemaDef> = keyof Schema['enums'];
|
|
112
129
|
type GetEnum<Schema extends SchemaDef, Enum extends GetEnums<Schema>> = Schema['enums'][Enum];
|
|
113
|
-
type
|
|
114
|
-
type
|
|
115
|
-
type
|
|
130
|
+
type GetTypeDefs<Schema extends SchemaDef> = Extract<keyof Schema['typeDefs'], string>;
|
|
131
|
+
type GetTypeDef<Schema extends SchemaDef, TypeDef extends GetTypeDefs<Schema>> = Schema['typeDefs'] extends Record<string, unknown> ? Schema['typeDefs'][TypeDef] : never;
|
|
132
|
+
type GetModelFields<Schema extends SchemaDef, Model extends GetModels<Schema>> = Extract<keyof GetModel<Schema, Model>['fields'], string>;
|
|
133
|
+
type GetModelField<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = GetModel<Schema, Model>['fields'][Field];
|
|
134
|
+
type GetModelDiscriminator<Schema extends SchemaDef, Model extends GetModels<Schema>> = keyof {
|
|
135
|
+
[Key in GetModelFields<Schema, Model> as FieldIsDelegateDiscriminator<Schema, Model, Key> extends true ? GetModelField<Schema, Model, Key>['originModel'] extends string ? never : Key : never]: true;
|
|
136
|
+
};
|
|
137
|
+
type GetModelFieldType<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = Schema['models'][Model]['fields'][Field]['type'];
|
|
138
|
+
type GetTypeDefFields<Schema extends SchemaDef, TypeDef extends GetTypeDefs<Schema>> = Extract<keyof GetTypeDef<Schema, TypeDef>['fields'], string>;
|
|
139
|
+
type GetTypeDefField<Schema extends SchemaDef, TypeDef extends GetTypeDefs<Schema>, Field extends GetTypeDefFields<Schema, TypeDef>> = GetTypeDef<Schema, TypeDef>['fields'][Field];
|
|
116
140
|
type ScalarFields<Schema extends SchemaDef, Model extends GetModels<Schema>, IncludeComputed extends boolean = true> = keyof {
|
|
117
|
-
[Key in
|
|
141
|
+
[Key in GetModelFields<Schema, Model> as GetModelField<Schema, Model, Key>['relation'] extends object ? never : GetModelField<Schema, Model, Key>['foreignKeyFor'] extends string[] ? never : IncludeComputed extends true ? Key : FieldIsComputed<Schema, Model, Key> extends true ? never : Key]: Key;
|
|
118
142
|
};
|
|
119
143
|
type ForeignKeyFields<Schema extends SchemaDef, Model extends GetModels<Schema>> = keyof {
|
|
120
|
-
[Key in
|
|
144
|
+
[Key in GetModelFields<Schema, Model> as GetModelField<Schema, Model, Key>['foreignKeyFor'] extends string[] ? Key : never]: Key;
|
|
121
145
|
};
|
|
122
146
|
type NonRelationFields<Schema extends SchemaDef, Model extends GetModels<Schema>> = keyof {
|
|
123
|
-
[Key in
|
|
147
|
+
[Key in GetModelFields<Schema, Model> as GetModelField<Schema, Model, Key>['relation'] extends object ? never : Key]: Key;
|
|
124
148
|
};
|
|
125
149
|
type RelationFields<Schema extends SchemaDef, Model extends GetModels<Schema>> = keyof {
|
|
126
|
-
[Key in
|
|
127
|
-
};
|
|
128
|
-
type FieldType<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends
|
|
129
|
-
type RelationFieldType<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends RelationFields<Schema, Model>> =
|
|
130
|
-
type
|
|
131
|
-
type
|
|
132
|
-
type
|
|
133
|
-
type
|
|
134
|
-
type
|
|
135
|
-
type
|
|
150
|
+
[Key in GetModelFields<Schema, Model> as GetModelField<Schema, Model, Key>['relation'] extends object ? Key : never]: Key;
|
|
151
|
+
};
|
|
152
|
+
type FieldType<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = GetModelField<Schema, Model, Field>['type'];
|
|
153
|
+
type RelationFieldType<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends RelationFields<Schema, Model>> = GetModelField<Schema, Model, Field>['type'] extends GetModels<Schema> ? GetModelField<Schema, Model, Field>['type'] : never;
|
|
154
|
+
type ModelFieldIsOptional<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = GetModelField<Schema, Model, Field>['optional'] extends true ? true : false;
|
|
155
|
+
type TypeDefFieldIsOptional<Schema extends SchemaDef, TypeDef extends GetTypeDefs<Schema>, Field extends GetTypeDefFields<Schema, TypeDef>> = GetTypeDefField<Schema, TypeDef, Field>['optional'] extends true ? true : false;
|
|
156
|
+
type FieldIsRelation<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = GetModelField<Schema, Model, Field>['relation'] extends object ? true : false;
|
|
157
|
+
type FieldIsArray<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = GetModelField<Schema, Model, Field>['array'] extends true ? true : false;
|
|
158
|
+
type FieldIsComputed<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = GetModelField<Schema, Model, Field>['computed'] extends true ? true : false;
|
|
159
|
+
type FieldHasDefault<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = GetModelField<Schema, Model, Field>['default'] extends object | number | string | boolean ? true : GetModelField<Schema, Model, Field>['updatedAt'] extends true ? true : false;
|
|
160
|
+
type FieldIsRelationArray<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = FieldIsRelation<Schema, Model, Field> extends true ? FieldIsArray<Schema, Model, Field> : false;
|
|
161
|
+
type IsDelegateModel<Schema extends SchemaDef, Model extends GetModels<Schema>> = Schema['models'][Model]['isDelegate'] extends true ? true : false;
|
|
162
|
+
type FieldIsDelegateRelation<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends RelationFields<Schema, Model>> = GetModelFieldType<Schema, Model, Field> extends GetModels<Schema> ? IsDelegateModel<Schema, GetModelFieldType<Schema, Model, Field>> : false;
|
|
163
|
+
type FieldIsDelegateDiscriminator<Schema extends SchemaDef, Model extends GetModels<Schema>, Field extends GetModelFields<Schema, Model>> = GetModelField<Schema, Model, Field>['isDiscriminator'] extends true ? true : false;
|
|
136
164
|
|
|
137
|
-
export type { ArrayExpression, AttributeApplication, AttributeArg, BinaryExpression, BinaryOperator, BuiltinType, CallExpression, CascadeAction, DataSourceProvider, DataSourceProviderType, EnumDef, Expression, FieldDef, FieldExpression, FieldHasDefault, FieldIsArray, FieldIsComputed,
|
|
165
|
+
export type { ArrayExpression, AttributeApplication, AttributeArg, BinaryExpression, BinaryOperator, BuiltinType, CallExpression, CascadeAction, DataSourceProvider, DataSourceProviderType, EnumDef, Expression, FieldDef, FieldExpression, FieldHasDefault, FieldIsArray, FieldIsComputed, FieldIsDelegateDiscriminator, FieldIsDelegateRelation, FieldIsRelation, FieldIsRelationArray, FieldType, ForeignKeyFields, GetDelegateModels, GetEnum, GetEnums, GetModel, GetModelDiscriminator, GetModelField, GetModelFieldType, GetModelFields, GetModels, GetSubModels, GetTypeDef, GetTypeDefField, GetTypeDefFields, GetTypeDefs, IsDelegateModel, LiteralExpression, MappedBuiltinType, MemberExpression, ModelDef, ModelFieldIsOptional, NonRelationFields, NullExpression, ProcedureDef, ProcedureParam, RelationFieldType, RelationFields, RelationInfo, ScalarFields, SchemaDef, ThisExpression, TypeDefDef, TypeDefFieldIsOptional, UnaryExpression, UnaryOperator };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zenstackhq/sdk",
|
|
3
|
-
"version": "3.0.0-alpha.
|
|
3
|
+
"version": "3.0.0-alpha.31",
|
|
4
4
|
"description": "ZenStack SDK",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"keywords": [],
|
|
@@ -32,24 +32,22 @@
|
|
|
32
32
|
}
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"langium": "
|
|
36
|
-
"
|
|
37
|
-
"
|
|
38
|
-
"
|
|
39
|
-
"
|
|
40
|
-
"@zenstackhq/language": "3.0.0-alpha.3"
|
|
35
|
+
"langium": "3.5.0",
|
|
36
|
+
"ts-pattern": "^5.7.1",
|
|
37
|
+
"typescript": "^5.8.0",
|
|
38
|
+
"@zenstackhq/language": "3.0.0-alpha.31",
|
|
39
|
+
"@zenstackhq/common-helpers": "3.0.0-alpha.31"
|
|
41
40
|
},
|
|
42
41
|
"devDependencies": {
|
|
43
|
-
"@types/node": "^20.0.0",
|
|
44
|
-
"@types/tmp": "^0.2.6",
|
|
45
42
|
"decimal.js": "^10.4.3",
|
|
46
|
-
"kysely": "^0.27.6"
|
|
43
|
+
"kysely": "^0.27.6",
|
|
44
|
+
"@zenstackhq/typescript-config": "3.0.0-alpha.31",
|
|
45
|
+
"@zenstackhq/eslint-config": "3.0.0-alpha.31"
|
|
47
46
|
},
|
|
48
47
|
"scripts": {
|
|
49
|
-
"build": "tsup-node",
|
|
48
|
+
"build": "tsc --noEmit && tsup-node",
|
|
50
49
|
"watch": "tsup-node --watch",
|
|
51
50
|
"lint": "eslint src --ext ts",
|
|
52
|
-
"test": "vitest",
|
|
53
51
|
"pack": "pnpm pack"
|
|
54
52
|
}
|
|
55
53
|
}
|