@danielhritcu/zenstack-custom 1.2.0 → 1.2.2
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/cli.cjs +37 -8
- package/dist/cli.cjs.map +1 -1
- package/dist/cli.d.cts +7 -3
- package/dist/cli.d.ts +7 -3
- package/dist/cli.js +37 -8
- package/dist/cli.js.map +1 -1
- package/dist/codegen/index.cjs +14 -2
- package/dist/codegen/index.cjs.map +1 -1
- package/dist/codegen/index.d.cts +5 -3
- package/dist/codegen/index.d.ts +5 -3
- package/dist/codegen/index.js +14 -2
- package/dist/codegen/index.js.map +1 -1
- package/dist/{config-CRQer7hw.d.cts → config-rukOeRbn.d.cts} +3 -1
- package/dist/{config-CRQer7hw.d.ts → config-rukOeRbn.d.ts} +3 -1
- package/dist/index.cjs +14 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +14 -2
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { D as DerivedField, a as DerivedModelDescriptor, E as ExtendedSchema, G as GlobalConfig, M as ManyRelation, b as ModelConfig, c as ModelsOutput, O as OneRelation, S as SchemaConfig, d as SearchField, e as SearchProfile, T as ThroughPath, f as ThroughRelation, Z as ZenConfig, g as defineConfig } from './config-
|
|
1
|
+
export { D as DerivedField, a as DerivedModelDescriptor, E as ExtendedSchema, G as GlobalConfig, M as ManyRelation, b as ModelConfig, c as ModelsOutput, O as OneRelation, S as SchemaConfig, d as SearchField, e as SearchProfile, T as ThroughPath, f as ThroughRelation, Z as ZenConfig, g as defineConfig } from './config-rukOeRbn.cjs';
|
|
2
2
|
export { APP_SLUG_JS, APP_SLUG_SQL, BrandingInfo, ComputedFieldDeclaration, ComputedFieldInfo, ComputedFieldsConfig, DerivedModelDeclaration, DerivedModelsConfig, EmitSchemaOptions, EnumInfo, FKInfo, FKRelationInfo, FieldInfo, FilteredRelationDeclaration, FilteredRelationsConfig, GENERATED_FILE_BANNER, RelationField, ResolvedRelationTargets, SearchDefaultDeclaration, SearchDefaultsConfig, TableInfo, ThroughRelationDeclaration, ThroughRelationPath, ThroughRelationsConfig, TypeDefField, TypeDefInfo, TypeDefMapping, TypedJsonArtifacts, TypedJsonFieldInfo, ViewInfo, adaptToLegacyConfig, assertNoTypedColumnOverrides, buildRelations, buildTypeDefs, capitalize, defineModels, derived, discoverEnums, discoverTables, discoverViews, emitCompatTs, emitEnumBlock, emitEnumsTs, emitFieldBlock, emitGeneratedFileBanner, emitIndexTs, emitInputTs, emitJsonNamespaceBlock, emitJsonRawNamespaceBlock, emitJsonRawTs, emitJsonTs, emitModelsTs, emitOrmTypesTs, emitRelationField, emitSchemaTs, emitTypeDefsBlock, emitViewsTs, esc, extend, extractFKs, getDrizzleTableName, many, mapColumn, model, one, through, toPascalCase, uncapitalize, writeFileIfChanged } from './codegen/index.cjs';
|
|
3
3
|
export { ArgsBuilder, CategorizedChange, ChangeCategory, CronJobOpts, CustomHashes, CustomObject, CustomObjectEntry, CustomObjectType, CustomObjectsMap, ENUM_MAP, ExtensionOpts, FALSE, FunctionOpts, GenerateFlags, OrderIssue, PgCronJob, PgExtension, PgFunction, PgTrigger, PgTypes, TriggerEvent, TriggerForEach, TriggerFunction, TriggerFunctionOpts, TriggerOpts, TriggerTiming, appSlugForeignKey, auditColumns, categorizeChanges, cleanMeta, colAppSlug, colCreatedAt, colDeletedAt, colId, colNumeric, colTimestamp, colUpdatedAt, collectCustomObjects, computeHash, currentAppSlug, currentUser, custom, defaultPolicy, drop, fixOrder, formatChangeSummary, formatVerboseOutput, generate, generateDropSQL, getLatestSnapshotPath, hasAppSlug, hasBypassEnabled, loadSchemaModules, packToSgz, parseFlags, pgCron, pgExtension, pgFunction, pgOrmEnum, pgTrigger, pgTypes, readJournal, readSnapshotCustomObjects, serializeCustomObject, simpleDiff, syncMeta, toPgEnum, unpackFromSgz, validateOrder, validateTimestamps, writeSnapshotCustomObjects } from './drizzle/index.cjs';
|
|
4
4
|
import 'drizzle-orm/pg-core';
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { D as DerivedField, a as DerivedModelDescriptor, E as ExtendedSchema, G as GlobalConfig, M as ManyRelation, b as ModelConfig, c as ModelsOutput, O as OneRelation, S as SchemaConfig, d as SearchField, e as SearchProfile, T as ThroughPath, f as ThroughRelation, Z as ZenConfig, g as defineConfig } from './config-
|
|
1
|
+
export { D as DerivedField, a as DerivedModelDescriptor, E as ExtendedSchema, G as GlobalConfig, M as ManyRelation, b as ModelConfig, c as ModelsOutput, O as OneRelation, S as SchemaConfig, d as SearchField, e as SearchProfile, T as ThroughPath, f as ThroughRelation, Z as ZenConfig, g as defineConfig } from './config-rukOeRbn.js';
|
|
2
2
|
export { APP_SLUG_JS, APP_SLUG_SQL, BrandingInfo, ComputedFieldDeclaration, ComputedFieldInfo, ComputedFieldsConfig, DerivedModelDeclaration, DerivedModelsConfig, EmitSchemaOptions, EnumInfo, FKInfo, FKRelationInfo, FieldInfo, FilteredRelationDeclaration, FilteredRelationsConfig, GENERATED_FILE_BANNER, RelationField, ResolvedRelationTargets, SearchDefaultDeclaration, SearchDefaultsConfig, TableInfo, ThroughRelationDeclaration, ThroughRelationPath, ThroughRelationsConfig, TypeDefField, TypeDefInfo, TypeDefMapping, TypedJsonArtifacts, TypedJsonFieldInfo, ViewInfo, adaptToLegacyConfig, assertNoTypedColumnOverrides, buildRelations, buildTypeDefs, capitalize, defineModels, derived, discoverEnums, discoverTables, discoverViews, emitCompatTs, emitEnumBlock, emitEnumsTs, emitFieldBlock, emitGeneratedFileBanner, emitIndexTs, emitInputTs, emitJsonNamespaceBlock, emitJsonRawNamespaceBlock, emitJsonRawTs, emitJsonTs, emitModelsTs, emitOrmTypesTs, emitRelationField, emitSchemaTs, emitTypeDefsBlock, emitViewsTs, esc, extend, extractFKs, getDrizzleTableName, many, mapColumn, model, one, through, toPascalCase, uncapitalize, writeFileIfChanged } from './codegen/index.js';
|
|
3
3
|
export { ArgsBuilder, CategorizedChange, ChangeCategory, CronJobOpts, CustomHashes, CustomObject, CustomObjectEntry, CustomObjectType, CustomObjectsMap, ENUM_MAP, ExtensionOpts, FALSE, FunctionOpts, GenerateFlags, OrderIssue, PgCronJob, PgExtension, PgFunction, PgTrigger, PgTypes, TriggerEvent, TriggerForEach, TriggerFunction, TriggerFunctionOpts, TriggerOpts, TriggerTiming, appSlugForeignKey, auditColumns, categorizeChanges, cleanMeta, colAppSlug, colCreatedAt, colDeletedAt, colId, colNumeric, colTimestamp, colUpdatedAt, collectCustomObjects, computeHash, currentAppSlug, currentUser, custom, defaultPolicy, drop, fixOrder, formatChangeSummary, formatVerboseOutput, generate, generateDropSQL, getLatestSnapshotPath, hasAppSlug, hasBypassEnabled, loadSchemaModules, packToSgz, parseFlags, pgCron, pgExtension, pgFunction, pgOrmEnum, pgTrigger, pgTypes, readJournal, readSnapshotCustomObjects, serializeCustomObject, simpleDiff, syncMeta, toPgEnum, unpackFromSgz, validateOrder, validateTimestamps, writeSnapshotCustomObjects } from './drizzle/index.js';
|
|
4
4
|
import 'drizzle-orm/pg-core';
|
package/dist/index.js
CHANGED
|
@@ -1084,7 +1084,7 @@ function unfoldRelationSelector(relation) {
|
|
|
1084
1084
|
return relationName;
|
|
1085
1085
|
}
|
|
1086
1086
|
__name(unfoldRelationSelector, "unfoldRelationSelector");
|
|
1087
|
-
function buildRelations(tables, relationTargets = {}, filteredRelations = {}, throughRelations = {}, fkRelations = {}) {
|
|
1087
|
+
function buildRelations(tables, relationTargets = {}, filteredRelations = {}, throughRelations = {}, fkRelations = {}, options = {}) {
|
|
1088
1088
|
const baseTables = tables.filter((table) => !table.derivedFrom);
|
|
1089
1089
|
const sqlToBaseTable = /* @__PURE__ */ new Map();
|
|
1090
1090
|
const modelToTable = /* @__PURE__ */ new Map();
|
|
@@ -1173,7 +1173,19 @@ function buildRelations(tables, relationTargets = {}, filteredRelations = {}, th
|
|
|
1173
1173
|
if (!targetTable) continue;
|
|
1174
1174
|
const signature = makePhysicalFKSignature(table, targetTable, fk);
|
|
1175
1175
|
if (declaredFKRelations.has(signature)) continue;
|
|
1176
|
-
|
|
1176
|
+
const ignoreCols = options.ignoreCompositeFkColumns ?? [];
|
|
1177
|
+
if (ignoreCols.length > 0 && fk.localColumns.length > 1) {
|
|
1178
|
+
const strippedFk = {
|
|
1179
|
+
...fk,
|
|
1180
|
+
localColumns: fk.localColumns.filter((c) => !ignoreCols.includes(c)),
|
|
1181
|
+
foreignColumns: fk.foreignColumns.filter((_, i) => !ignoreCols.includes(fk.localColumns[i]))
|
|
1182
|
+
};
|
|
1183
|
+
if (strippedFk.localColumns.length > 0) {
|
|
1184
|
+
const strippedSig = makePhysicalFKSignature(table, targetTable, strippedFk);
|
|
1185
|
+
if (declaredFKRelations.has(strippedSig)) continue;
|
|
1186
|
+
}
|
|
1187
|
+
}
|
|
1188
|
+
console.warn(`Warning: undeclared FK "${table.exportName}": [${fk.localColumns.join(", ")}] -> ${targetTable.exportName}([${fk.foreignColumns.join(", ")}]). Add a relation in orm.config.ts or it will be auto-generated.`);
|
|
1177
1189
|
}
|
|
1178
1190
|
}
|
|
1179
1191
|
const forwardByTarget = /* @__PURE__ */ new Map();
|