@zenstackhq/sdk 3.5.5 → 3.6.0

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.d.ts DELETED
@@ -1,211 +0,0 @@
1
- import * as _zenstackhq_language_ast from '@zenstackhq/language/ast';
2
- import { DataFieldAttribute, DataModelAttribute, Model, AstNode, DataField, DataModel, TypeDef, Enum, EnumField, FunctionDecl, Attribute, AttributeParam, Reference, InvocationExpr } from '@zenstackhq/language/ast';
3
- import { AttributeTarget } from '@zenstackhq/language/utils';
4
- import { MaybePromise } from 'langium';
5
-
6
- declare function isIdField(field: DataField, contextModel: DataModel): boolean;
7
- declare function hasAttribute(decl: DataModel | TypeDef | DataField | Enum | EnumField | FunctionDecl | Attribute | AttributeParam, name: string): boolean;
8
- declare function getAttribute(decl: AttributeTarget, name: string): DataFieldAttribute | DataModelAttribute | undefined;
9
- declare function isDelegateModel(node: AstNode): boolean;
10
- /**
11
- * Returns all fields that physically belong to a model's table: its directly declared
12
- * fields plus fields from its mixins (recursively).
13
- */
14
- declare function getOwnedFields(model: DataModel | TypeDef): DataField[];
15
- /**
16
- * Returns the name of the delegate base model that "owns" the given field in the context of
17
- * `contextModel`. This handles both direct fields of delegate models and mixin fields that
18
- * belong to a mixin used by a delegate base model.
19
- */
20
- declare function getDelegateOriginModel(field: DataField, contextModel: DataModel): string | undefined;
21
- declare function isUniqueField(field: DataField): boolean;
22
- declare function isFromStdlib(node: AstNode): boolean;
23
- declare function getContainingModel(node: AstNode | undefined): Model | null;
24
- declare function resolved<T extends AstNode>(ref: Reference<T>): T;
25
- declare function getAuthDecl(model: Model): _zenstackhq_language_ast.AbstractDeclaration | undefined;
26
- declare function getIdFields(dm: DataModel): string[];
27
- /**
28
- * Prefix for auxiliary relation fields generated for delegated models
29
- */
30
- declare const DELEGATE_AUX_RELATION_PREFIX = "delegate_aux";
31
-
32
- declare const modelUtils_DELEGATE_AUX_RELATION_PREFIX: typeof DELEGATE_AUX_RELATION_PREFIX;
33
- declare const modelUtils_getAttribute: typeof getAttribute;
34
- declare const modelUtils_getAuthDecl: typeof getAuthDecl;
35
- declare const modelUtils_getContainingModel: typeof getContainingModel;
36
- declare const modelUtils_getDelegateOriginModel: typeof getDelegateOriginModel;
37
- declare const modelUtils_getIdFields: typeof getIdFields;
38
- declare const modelUtils_getOwnedFields: typeof getOwnedFields;
39
- declare const modelUtils_hasAttribute: typeof hasAttribute;
40
- declare const modelUtils_isDelegateModel: typeof isDelegateModel;
41
- declare const modelUtils_isFromStdlib: typeof isFromStdlib;
42
- declare const modelUtils_isIdField: typeof isIdField;
43
- declare const modelUtils_isUniqueField: typeof isUniqueField;
44
- declare const modelUtils_resolved: typeof resolved;
45
- declare namespace modelUtils {
46
- export { modelUtils_DELEGATE_AUX_RELATION_PREFIX as DELEGATE_AUX_RELATION_PREFIX, modelUtils_getAttribute as getAttribute, modelUtils_getAuthDecl as getAuthDecl, modelUtils_getContainingModel as getContainingModel, modelUtils_getDelegateOriginModel as getDelegateOriginModel, modelUtils_getIdFields as getIdFields, modelUtils_getOwnedFields as getOwnedFields, modelUtils_hasAttribute as hasAttribute, modelUtils_isDelegateModel as isDelegateModel, modelUtils_isFromStdlib as isFromStdlib, modelUtils_isIdField as isIdField, modelUtils_isUniqueField as isUniqueField, modelUtils_resolved as resolved };
47
- }
48
-
49
- /**
50
- * Context passed to CLI plugins when calling `generate`.
51
- */
52
- type CliGeneratorContext = {
53
- /**
54
- * ZModel file path.
55
- */
56
- schemaFile: string;
57
- /**
58
- * ZModel AST.
59
- */
60
- model: Model;
61
- /**
62
- * Default output path for code generation.
63
- */
64
- defaultOutputPath: string;
65
- /**
66
- * Plugin options provided by the user.
67
- */
68
- pluginOptions: Record<string, unknown>;
69
- };
70
- /**
71
- * Contract for a CLI plugin.
72
- */
73
- interface CliPlugin {
74
- /**
75
- * Plugin's display name.
76
- */
77
- name: string;
78
- /**
79
- * Text to show during generation.
80
- */
81
- statusText?: string;
82
- /**
83
- * Code generation callback.
84
- */
85
- generate(context: CliGeneratorContext): MaybePromise<void>;
86
- }
87
-
88
- declare class FunctionCall {
89
- func: string;
90
- args: FunctionCallArg[];
91
- constructor(func: string, args?: FunctionCallArg[]);
92
- toString(): string;
93
- }
94
- declare class FunctionCallArg {
95
- value: string;
96
- constructor(value: string);
97
- toString(): string;
98
- }
99
-
100
- /**
101
- * Generates Prisma schema file
102
- */
103
- declare class PrismaSchemaGenerator {
104
- private readonly zmodel;
105
- private readonly PRELUDE;
106
- private shortNameMap;
107
- constructor(zmodel: Model);
108
- generate(): Promise<string>;
109
- private generateDataSource;
110
- private configExprToText;
111
- private configArrayToText;
112
- private configInvocationArgToText;
113
- private literalToText;
114
- private generateGenerator;
115
- private generateDefaultGenerator;
116
- private generateModel;
117
- private getDatasourceField;
118
- private datasourceHasSchemasSetting;
119
- private getDefaultPostgresSchemaName;
120
- private isPrismaAttribute;
121
- private getUnsupportedFieldType;
122
- private generateModelField;
123
- private isDefaultWithAuthInvocation;
124
- private makeFieldAttribute;
125
- private makeAttributeArg;
126
- private makeAttributeArgValue;
127
- private exprToText;
128
- makeFunctionCall(node: InvocationExpr): FunctionCall;
129
- private generateContainerAttribute;
130
- private generateEnum;
131
- private generateEnumField;
132
- private generateDelegateRelationForBase;
133
- private generateDelegateRelationForConcrete;
134
- private getConcreteModels;
135
- private truncate;
136
- }
137
-
138
- type TsSchemaGeneratorOptions = {
139
- outDir: string;
140
- lite?: boolean;
141
- liteOnly?: boolean;
142
- importWithFileExtension?: string;
143
- generateModelTypes?: boolean;
144
- generateInputTypes?: boolean;
145
- };
146
- declare class TsSchemaGenerator {
147
- private usedExpressionUtils;
148
- private usedAttributeApplication;
149
- private usedFieldDefault;
150
- generate(model: Model, options: TsSchemaGeneratorOptions): Promise<void>;
151
- private generateSchema;
152
- private generateSchemaStatements;
153
- private createExpressionUtilsCall;
154
- private createSchemaClass;
155
- private createAsConst;
156
- private createAttributesTypeAssertion;
157
- private createDefaultTypeAssertion;
158
- private createProviderObject;
159
- private createModelsObject;
160
- private getAllDataModels;
161
- private getAllTypeDefs;
162
- private createTypeDefsObject;
163
- private createDataModelObject;
164
- private getSubModels;
165
- private createTypeDefObject;
166
- private createComputedFieldsObject;
167
- private createUpdatedAtObject;
168
- private mapFieldTypeToTSType;
169
- private createDataFieldObject;
170
- private isDiscriminatorField;
171
- private getDataSourceProvider;
172
- private getDataSourceDefaultSchema;
173
- private getFieldMappedDefault;
174
- private getMappedValue;
175
- private getMemberAccessChain;
176
- private isAuthMemberAccess;
177
- private isAuthInvocation;
178
- private createRelationObject;
179
- private getReferenceNames;
180
- private getForeignKeyFor;
181
- private getOppositeRelationField;
182
- private getRelationName;
183
- private createUniqueFieldsObject;
184
- private getCompoundUniqueKey;
185
- private generateFieldTypeLiteral;
186
- private createEnumObject;
187
- private getLiteral;
188
- private createLiteralNode;
189
- private createNumberLiteral;
190
- private createProceduresObject;
191
- private createProcedureObject;
192
- private generateBannerComments;
193
- private createAttributeObject;
194
- private createAttributeArg;
195
- private createExpression;
196
- private createThisExpression;
197
- private createMemberExpression;
198
- private createNullExpression;
199
- private createBinaryExpression;
200
- private createUnaryExpression;
201
- private createArrayExpression;
202
- private createRefExpression;
203
- private createCallExpression;
204
- private createLiteralExpression;
205
- private generateModelsAndTypeDefs;
206
- private generateSchemaImport;
207
- private generateDocs;
208
- private generateInputTypes;
209
- }
210
-
211
- export { type CliGeneratorContext, type CliPlugin, modelUtils as ModelUtils, PrismaSchemaGenerator, TsSchemaGenerator, type TsSchemaGeneratorOptions };