pecunia-cli 0.2.1 → 0.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/api.mjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as generateKyselySchema, n as generateSchema, o as generateDrizzleSchema, r as generatePrismaSchema, t as adapters } from "./generators-
|
|
1
|
+
import { a as generateKyselySchema, n as generateSchema, o as generateDrizzleSchema, r as generatePrismaSchema, t as adapters } from "./generators-DMu0BKgN.mjs";
|
|
2
2
|
|
|
3
3
|
export { adapters, generateDrizzleSchema, generateKyselySchema, generatePrismaSchema, generateSchema };
|
|
@@ -491,6 +491,12 @@ const generateDrizzleSchema = async ({ options, file, adapter }) => {
|
|
|
491
491
|
};
|
|
492
492
|
const referenceMap = /* @__PURE__ */ new Map();
|
|
493
493
|
for (const ref of references) referenceMap.set(ref.fieldName, ref);
|
|
494
|
+
const hasCircularRef = references.some((ref) => {
|
|
495
|
+
const referencedTableKey = modelKeyToTableKey.get(ref.originalModel);
|
|
496
|
+
if (!referencedTableKey) return false;
|
|
497
|
+
const reverseKey = `${referencedTableKey}->${tableDef.tableKey}`;
|
|
498
|
+
return referenceGraph.has(reverseKey);
|
|
499
|
+
});
|
|
494
500
|
const fieldDefinitions = Object.keys(fields).filter((field) => field !== "id").map((field) => {
|
|
495
501
|
const attr = fields[field];
|
|
496
502
|
const fieldName = attr.fieldName || field;
|
|
@@ -518,10 +524,11 @@ const generateDrizzleSchema = async ({ options, file, adapter }) => {
|
|
|
518
524
|
const fieldDef = `${fieldName}: ${type}${isRequired ? ".notNull()" : ""}${attr.unique ? ".unique()" : ""}${referenceChain}`;
|
|
519
525
|
return comment ? `${comment}\n ${fieldDef}` : fieldDef;
|
|
520
526
|
});
|
|
527
|
+
const typeAssertion = hasCircularRef ? " as any" : "";
|
|
521
528
|
const schema = `export const ${modelName} = ${databaseType}Table("${convertToSnakeCase(modelName, adapter.options?.camelCase)}", {
|
|
522
529
|
id: ${id},
|
|
523
530
|
${fieldDefinitions.join(",\n ")}
|
|
524
|
-
}${assignIndexes(indexes)});`;
|
|
531
|
+
}${assignIndexes(indexes)})${typeAssertion};`;
|
|
525
532
|
code += `\n${schema}\n`;
|
|
526
533
|
}
|
|
527
534
|
let relationsString = "";
|
package/dist/index.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { i as getPackageInfo, n as generateSchema } from "./generators-
|
|
2
|
+
import { i as getPackageInfo, n as generateSchema } from "./generators-DMu0BKgN.mjs";
|
|
3
3
|
import { Command } from "commander";
|
|
4
4
|
import fs, { existsSync, readFileSync } from "node:fs";
|
|
5
5
|
import fs$1 from "node:fs/promises";
|