@lexmata/prisma-ent-generator 0.1.0 → 0.2.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.
@@ -1 +1 @@
1
- {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAQ,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAWvE;;;GAGG;AACH,wBAAgB,SAAS,IAAI,OAAO,CAEnC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,QAAQ,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuDvE"}
1
+ {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAQ,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAWvE;;;GAGG;AACH,wBAAgB,SAAS,IAAI,OAAO,CAEnC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,QAAQ,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyDvE"}
package/dist/generator.js CHANGED
@@ -51,6 +51,8 @@ async function generate(options) {
51
51
  const { datamodel } = options.dmmf;
52
52
  const models = [...datamodel.models];
53
53
  const enums = [...datamodel.enums];
54
+ // Indexes are available at the datamodel level in Prisma v6 DMMF
55
+ const indexes = datamodel.indexes ?? [];
54
56
  // Build enum lookup map
55
57
  const enumDefs = new Map();
56
58
  for (const e of enums) {
@@ -68,7 +70,7 @@ async function generate(options) {
68
70
  }
69
71
  // --- schema/*.go (one per Prisma model, always overwritten) ---
70
72
  for (const model of models) {
71
- const content = (0, schema_1.generateSchema)(model, models, enumDefs);
73
+ const content = (0, schema_1.generateSchema)(model, models, enumDefs, indexes);
72
74
  const fileName = (0, utils_1.modelToFileName)(model.name);
73
75
  const filePath = path_1.default.join(schemaDir, `${fileName}.go`);
74
76
  fs_1.default.writeFileSync(filePath, content, 'utf-8');
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":";;;;;AAiBA,8BAEC;AAeD,4BAyDC;AA3FD,4CAAoB;AACpB,gDAAwB;AAExB,6CAAkD;AAClD,iDAAwE;AACxE,mCAAsD;AAEtD;;;GAGG;AACH,MAAM,OAAO,GAAG,cAAc,CAAC;AAE/B;;;GAGG;AACH,SAAgB,SAAS;IACvB,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,KAAK,MAAM,CAAC;AACxD,CAAC;AAED;;;;;;;;;;;;GAYG;AACI,KAAK,UAAU,QAAQ,CAAC,OAAyB;IACtD,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CACT,wCAAwC,OAAO,kBAAkB,CAClE,CAAC;QACF,OAAO;IACT,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC;IAClD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,CAAC;IAED,+CAA+C;IAC/C,2CAA2C;IAC3C,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACjD,YAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE7C,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IACnC,MAAM,MAAM,GAAG,CAAC,GAAG,SAAS,CAAC,MAAM,CAAiB,CAAC;IACrD,MAAM,KAAK,GAAG,CAAC,GAAG,SAAS,CAAC,KAAK,CAAyB,CAAC;IAC3D,iEAAiE;IACjE,MAAM,OAAO,GAAI,SAAiB,CAAC,OAAO,IAAI,EAAE,CAAC;IAEjD,wBAAwB;IACxB,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA8B,CAAC;IACvD,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC1B,CAAC;IAED,8CAA8C;IAC9C,MAAM,cAAc,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IAC3D,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QACnC,YAAE,CAAC,aAAa,CAAC,cAAc,EAAE,IAAA,6BAAkB,GAAE,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED,0DAA0D;IAC1D,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACnD,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,YAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAA,yBAAc,GAAE,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED,iEAAiE;IACjE,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,IAAA,uBAAc,EAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QACjE,MAAM,QAAQ,GAAG,IAAA,uBAAe,EAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,QAAQ,KAAK,CAAC,CAAC;QACxD,YAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CACT,mCAAmC,MAAM,CAAC,MAAM,gBAAgB,SAAS,KAAK,UAAU,GAAG,CAC5F,CAAC;IACF,OAAO,CAAC,GAAG,CACT,oCAAoC,SAAS,yBAAyB,CACvE,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"edge.d.ts","sourceRoot":"","sources":["../../src/helpers/edge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAG5C;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,sFAAsF;IACtF,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,SAAS,EAAE,SAAS,IAAI,CAAC,KAAK,EAAE,EAChC,OAAO,EAAE,SAAS,GACjB,MAAM,EAAE,CAcV"}
1
+ {"version":3,"file":"edge.d.ts","sourceRoot":"","sources":["../../src/helpers/edge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,sFAAsF;IACtF,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,SAAS,EAAE,SAAS,IAAI,CAAC,KAAK,EAAE,EAChC,OAAO,EAAE,SAAS,GACjB,MAAM,EAAE,CAcV"}
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.generateEdges = generateEdges;
4
- const utils_1 = require("../utils");
5
4
  /**
6
5
  * Generate the Ent edge definition lines for a given model.
7
6
  *
@@ -42,7 +41,7 @@ function generateEdge(field, currentModel, allModels) {
42
41
  const hasFK = field.relationFromFields !== undefined && field.relationFromFields.length > 0;
43
42
  const inverseHasFK = inverseField?.relationFromFields !== undefined &&
44
43
  inverseField.relationFromFields.length > 0;
45
- const edgeName = (0, utils_1.toSnakeCase)(field.name);
44
+ const edgeName = field.name;
46
45
  if (hasFK) {
47
46
  // This model holds the FK → edge.From (back-reference)
48
47
  return buildEdgeFrom(field, edgeName, targetModelName, inverseField);
@@ -58,14 +57,14 @@ function generateEdge(field, currentModel, allModels) {
58
57
  * Build an edge.From definition (this model holds the FK).
59
58
  */
60
59
  function buildEdgeFrom(field, edgeName, targetModelName, inverseField) {
61
- const refName = inverseField ? (0, utils_1.toSnakeCase)(inverseField.name) : (0, utils_1.toSnakeCase)(targetModelName);
60
+ const refName = inverseField ? inverseField.name : targetModelName;
62
61
  const parts = [];
63
62
  parts.push(`edge.From("${edgeName}", ${targetModelName}.Type)`);
64
63
  parts.push(`.Ref("${refName}")`);
65
64
  parts.push('.Unique()');
66
65
  // Bind the FK field to this edge
67
66
  if (field.relationFromFields && field.relationFromFields.length > 0) {
68
- const fkFieldName = (0, utils_1.toSnakeCase)(field.relationFromFields[0]);
67
+ const fkFieldName = field.relationFromFields[0];
69
68
  parts.push(`.Field("${fkFieldName}")`);
70
69
  }
71
70
  if (field.isRequired) {
@@ -110,7 +109,7 @@ function buildImplicitEdge(field, edgeName, targetModelName, currentModelName, i
110
109
  return buildEdgeTo(field, edgeName, targetModelName);
111
110
  }
112
111
  // Back-reference
113
- const refName = inverseField ? (0, utils_1.toSnakeCase)(inverseField.name) : (0, utils_1.toSnakeCase)(targetModelName);
112
+ const refName = inverseField ? inverseField.name : targetModelName;
114
113
  const parts = [];
115
114
  parts.push(`edge.From("${edgeName}", ${targetModelName}.Type)`);
116
115
  parts.push(`.Ref("${refName}")`);
@@ -1 +1 @@
1
- {"version":3,"file":"edge.js","sourceRoot":"","sources":["../../src/helpers/edge.ts"],"names":[],"mappings":";;AA0BA,sCAkBC;AA1CD,oCAAuC;AAUvC;;;;;;;;;;;;;GAaG;AACH,SAAgB,aAAa,CAC3B,KAAiB,EACjB,SAAgC,EAChC,OAAkB;IAElB,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjC,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ;YAAE,SAAS;QAEtC,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QACnD,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;YACpB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CACnB,KAAiB,EACjB,YAAwB,EACxB,SAAgC;IAEhC,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC;IACnC,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC;IACtE,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAE9B,sDAAsD;IACtD,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,CAC1C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,YAAY,KAAK,KAAK,CAAC,YAAY,CACpE,CAAC;IAEF,MAAM,KAAK,GACT,KAAK,CAAC,kBAAkB,KAAK,SAAS,IAAI,KAAK,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC;IAChF,MAAM,YAAY,GAChB,YAAY,EAAE,kBAAkB,KAAK,SAAS;QAC9C,YAAY,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC;IAE7C,MAAM,QAAQ,GAAG,IAAA,mBAAW,EAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEzC,IAAI,KAAK,EAAE,CAAC;QACV,uDAAuD;QACvD,OAAO,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,YAAY,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,YAAY,EAAE,CAAC;QACjB,uDAAuD;QACvD,OAAO,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;IACvD,CAAC;IAED,0DAA0D;IAC1D,OAAO,iBAAiB,CACtB,KAAK,EACL,QAAQ,EACR,eAAe,EACf,YAAY,CAAC,IAAI,EACjB,YAAY,CACb,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CACpB,KAAiB,EACjB,QAAgB,EAChB,eAAuB,EACvB,YAAoC;IAEpC,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,IAAA,mBAAW,EAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,mBAAW,EAAC,eAAe,CAAC,CAAC;IAE7F,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,cAAc,QAAQ,MAAM,eAAe,QAAQ,CAAC,CAAC;IAChE,KAAK,CAAC,IAAI,CAAC,SAAS,OAAO,IAAI,CAAC,CAAC;IACjC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAExB,iCAAiC;IACjC,IAAI,KAAK,CAAC,kBAAkB,IAAI,KAAK,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpE,MAAM,WAAW,GAAG,IAAA,mBAAW,EAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7D,KAAK,CAAC,IAAI,CAAC,WAAW,WAAW,IAAI,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAClB,KAAiB,EACjB,QAAgB,EAChB,eAAuB;IAEvB,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,YAAY,QAAQ,MAAM,eAAe,QAAQ,CAAC,CAAC;IAE9D,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,iBAAiB,CACxB,KAAiB,EACjB,QAAgB,EAChB,eAAuB,EACvB,gBAAwB,EACxB,YAAoC;IAEpC,MAAM,SAAS,GAAG,gBAAgB,KAAK,eAAe,CAAC;IAEvD,IAAI,OAAgB,CAAC;IACrB,IAAI,SAAS,EAAE,CAAC;QACd,4CAA4C;QAC5C,OAAO,GAAG,KAAK,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;SAAM,CAAC;QACN,uCAAuC;QACvC,OAAO,GAAG,gBAAgB,IAAI,eAAe,CAAC;IAChD,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;IACvD,CAAC;IAED,iBAAiB;IACjB,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,IAAA,mBAAW,EAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,mBAAW,EAAC,eAAe,CAAC,CAAC;IAC7F,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,cAAc,QAAQ,MAAM,eAAe,QAAQ,CAAC,CAAC;IAChE,KAAK,CAAC,IAAI,CAAC,SAAS,OAAO,IAAI,CAAC,CAAC;IAEjC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"edge.js","sourceRoot":"","sources":["../../src/helpers/edge.ts"],"names":[],"mappings":";;AAyBA,sCAkBC;AAhCD;;;;;;;;;;;;;GAaG;AACH,SAAgB,aAAa,CAC3B,KAAiB,EACjB,SAAgC,EAChC,OAAkB;IAElB,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjC,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ;YAAE,SAAS;QAEtC,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QACnD,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;YACpB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CACnB,KAAiB,EACjB,YAAwB,EACxB,SAAgC;IAEhC,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC;IACnC,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC;IACtE,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAE9B,sDAAsD;IACtD,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,CAC1C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,YAAY,KAAK,KAAK,CAAC,YAAY,CACpE,CAAC;IAEF,MAAM,KAAK,GACT,KAAK,CAAC,kBAAkB,KAAK,SAAS,IAAI,KAAK,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC;IAChF,MAAM,YAAY,GAChB,YAAY,EAAE,kBAAkB,KAAK,SAAS;QAC9C,YAAY,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC;IAE7C,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC;IAE5B,IAAI,KAAK,EAAE,CAAC;QACV,uDAAuD;QACvD,OAAO,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,YAAY,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,YAAY,EAAE,CAAC;QACjB,uDAAuD;QACvD,OAAO,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;IACvD,CAAC;IAED,0DAA0D;IAC1D,OAAO,iBAAiB,CACtB,KAAK,EACL,QAAQ,EACR,eAAe,EACf,YAAY,CAAC,IAAI,EACjB,YAAY,CACb,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CACpB,KAAiB,EACjB,QAAgB,EAChB,eAAuB,EACvB,YAAoC;IAEpC,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC;IAEnE,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,cAAc,QAAQ,MAAM,eAAe,QAAQ,CAAC,CAAC;IAChE,KAAK,CAAC,IAAI,CAAC,SAAS,OAAO,IAAI,CAAC,CAAC;IACjC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAExB,iCAAiC;IACjC,IAAI,KAAK,CAAC,kBAAkB,IAAI,KAAK,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpE,MAAM,WAAW,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;QAChD,KAAK,CAAC,IAAI,CAAC,WAAW,WAAW,IAAI,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAClB,KAAiB,EACjB,QAAgB,EAChB,eAAuB;IAEvB,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,YAAY,QAAQ,MAAM,eAAe,QAAQ,CAAC,CAAC;IAE9D,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,iBAAiB,CACxB,KAAiB,EACjB,QAAgB,EAChB,eAAuB,EACvB,gBAAwB,EACxB,YAAoC;IAEpC,MAAM,SAAS,GAAG,gBAAgB,KAAK,eAAe,CAAC;IAEvD,IAAI,OAAgB,CAAC;IACrB,IAAI,SAAS,EAAE,CAAC;QACd,4CAA4C;QAC5C,OAAO,GAAG,KAAK,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;SAAM,CAAC;QACN,uCAAuC;QACvC,OAAO,GAAG,gBAAgB,IAAI,eAAe,CAAC;IAChD,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;IACvD,CAAC;IAED,iBAAiB;IACjB,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC;IACnE,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,cAAc,QAAQ,MAAM,eAAe,QAAQ,CAAC,CAAC;IAChE,KAAK,CAAC,IAAI,CAAC,SAAS,OAAO,IAAI,CAAC,CAAC;IAEjC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC"}
@@ -12,6 +12,8 @@ export declare function collectFKFieldNames(fields: readonly DMMF.Field[]): Set<
12
12
  * - Includes FK scalar fields so they can be bound to edges via `.Field()`.
13
13
  * - Handles ID fields: skips default Int autoincrement IDs (Ent default),
14
14
  * but generates UUID ID fields when needed.
15
+ * - Uses Prisma field names (camelCase) as Ent field names, with
16
+ * `.StorageKey()` for the DB column mapping from `@map`.
15
17
  *
16
18
  * @returns An array of Go code strings, each representing one `field.X(...)` call.
17
19
  */
@@ -1 +1 @@
1
- {"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../src/helpers/field.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAA0C,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAGpF;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,IAAI,CAAC,KAAK,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAU9E;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,SAAS,IAAI,CAAC,KAAK,EAAE,EAC7B,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EACzB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,EACzC,OAAO,EAAE,SAAS,GACjB,MAAM,EAAE,CAcV"}
1
+ {"version":3,"file":"field.d.ts","sourceRoot":"","sources":["../../src/helpers/field.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAML,KAAK,SAAS,EACf,MAAM,YAAY,CAAC;AAEpB;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,IAAI,CAAC,KAAK,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAU9E;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,SAAS,IAAI,CAAC,KAAK,EAAE,EAC7B,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,EACzB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,EACzC,OAAO,EAAE,SAAS,GACjB,MAAM,EAAE,CAiBV"}
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.collectFKFieldNames = collectFKFieldNames;
4
4
  exports.generateFields = generateFields;
5
5
  const type_map_1 = require("./type-map");
6
- const utils_1 = require("../utils");
7
6
  /**
8
7
  * Determine the set of field names that serve as foreign keys for relations.
9
8
  * These are the scalar fields referenced in `relationFromFields` of relation fields.
@@ -26,6 +25,8 @@ function collectFKFieldNames(fields) {
26
25
  * - Includes FK scalar fields so they can be bound to edges via `.Field()`.
27
26
  * - Handles ID fields: skips default Int autoincrement IDs (Ent default),
28
27
  * but generates UUID ID fields when needed.
28
+ * - Uses Prisma field names (camelCase) as Ent field names, with
29
+ * `.StorageKey()` for the DB column mapping from `@map`.
29
30
  *
30
31
  * @returns An array of Go code strings, each representing one `field.X(...)` call.
31
32
  */
@@ -35,6 +36,9 @@ function generateFields(fields, fkFieldNames, enumDefs, imports) {
35
36
  // Skip relation fields — they become edges
36
37
  if (f.kind === 'object')
37
38
  continue;
39
+ // Skip unsupported fields (e.g., vector types)
40
+ if (f.kind === 'unsupported')
41
+ continue;
38
42
  const line = generateField(f, fkFieldNames, enumDefs, imports);
39
43
  if (line !== null) {
40
44
  lines.push(line);
@@ -51,7 +55,7 @@ function generateField(field, fkFieldNames, enumDefs, imports) {
51
55
  if (field.isId) {
52
56
  return generateIdField(field, imports);
53
57
  }
54
- const fieldName = (0, utils_1.toSnakeCase)(field.name);
58
+ const fieldName = field.name;
55
59
  imports.field = true;
56
60
  if (field.kind === 'enum') {
57
61
  return generateEnumField(field, fieldName, enumDefs, imports);
@@ -75,16 +79,39 @@ function generateIdField(field, imports) {
75
79
  }
76
80
  }
77
81
  imports.field = true;
78
- // UUID ID field
82
+ // UUID ID field — detected by @db.Uuid native type or uuid() default
83
+ const nativeType = field.nativeType;
84
+ const isUuid = (0, type_map_1.isUuidNativeType)(nativeType);
85
+ const hasUuidDefault = field.hasDefaultValue &&
86
+ typeof field.default === 'object' &&
87
+ field.default !== null &&
88
+ 'name' in field.default &&
89
+ field.default.name === 'uuid';
90
+ if (isUuid || (field.type === 'String' && hasUuidDefault)) {
91
+ imports.uuid = true;
92
+ const parts = [];
93
+ parts.push('field.UUID("id", uuid.UUID{})');
94
+ // Add StorageKey if mapped to a different column name
95
+ if (field.dbName && field.dbName !== 'id') {
96
+ parts.push(`.StorageKey("${field.dbName}")`);
97
+ }
98
+ if (hasUuidDefault) {
99
+ parts.push('.Default(uuid.New)');
100
+ }
101
+ return parts.join('');
102
+ }
103
+ // CUID ID field
79
104
  if (field.type === 'String' && field.hasDefaultValue) {
80
105
  const defaultObj = field.default;
81
106
  if (defaultObj && typeof defaultObj === 'object' && 'name' in defaultObj) {
82
- if (defaultObj.name === 'uuid') {
83
- imports.uuid = true;
84
- return 'field.UUID("id", uuid.UUID{}).Default(uuid.New)';
85
- }
86
107
  if (defaultObj.name === 'cuid') {
87
- return 'field.String("id").MaxLen(30).NotEmpty()';
108
+ const parts = [];
109
+ parts.push('field.String("id")');
110
+ if (field.dbName && field.dbName !== 'id') {
111
+ parts.push(`.StorageKey("${field.dbName}")`);
112
+ }
113
+ parts.push('.MaxLen(30).NotEmpty()');
114
+ return parts.join('');
88
115
  }
89
116
  }
90
117
  }
@@ -100,27 +127,32 @@ function generateScalarField(field, fieldName, fkFieldNames, imports) {
100
127
  if (field.type === 'Json') {
101
128
  return generateJsonField(field, fieldName, imports);
102
129
  }
103
- const entType = (0, type_map_1.mapPrismaTypeToEnt)(field.type);
130
+ const nativeType = field.nativeType;
104
131
  const parts = [];
105
- parts.push(`field.${entType}("${fieldName}")`);
106
- // Track time import
107
- if ((0, type_map_1.requiresTimeImport)(field.type)) {
108
- imports.time = true;
132
+ // Check for UUID native type on non-ID fields (FK fields, etc.)
133
+ if ((0, type_map_1.isUuidNativeType)(nativeType)) {
134
+ imports.uuid = true;
135
+ parts.push(`field.UUID("${fieldName}", uuid.UUID{})`);
136
+ }
137
+ else if ((0, type_map_1.isTextNativeType)(nativeType)) {
138
+ // Text fields use field.Text() for unlimited length
139
+ parts.push(`field.Text("${fieldName}")`);
140
+ }
141
+ else {
142
+ const entType = (0, type_map_1.mapPrismaTypeToEnt)(field.type);
143
+ parts.push(`field.${entType}("${fieldName}")`);
144
+ }
145
+ // StorageKey from @map annotation
146
+ if (field.dbName) {
147
+ parts.push(`.StorageKey("${field.dbName}")`);
109
148
  }
110
149
  // Unique constraint
111
150
  if (field.isUnique) {
112
151
  parts.push('.Unique()');
113
152
  }
114
- // Optional / Nillable
153
+ // Optional
115
154
  if (!field.isRequired) {
116
155
  parts.push('.Optional()');
117
- parts.push('.Nillable()');
118
- }
119
- // FK fields that are required should still be Optional in Ent
120
- // because the edge manages the FK value
121
- if (fkFieldNames.has(field.name) && field.isRequired) {
122
- // Don't add Optional — Ent requires the FK field to match the edge's Required status.
123
- // The edge definition will handle Required() separately.
124
156
  }
125
157
  // Handle @updatedAt (must come before default handling to avoid double-default)
126
158
  if (field.isUpdatedAt) {
@@ -136,6 +168,11 @@ function generateScalarField(field, fieldName, fkFieldNames, imports) {
136
168
  parts.push(defaultStr);
137
169
  }
138
170
  }
171
+ // MaxLen from @db.VarChar(N) or @db.Char(N) — only for string-like fields
172
+ const maxLen = (0, type_map_1.extractMaxLen)(nativeType);
173
+ if (maxLen !== null) {
174
+ parts.push(`.MaxLen(${maxLen})`);
175
+ }
139
176
  return parts.join('');
140
177
  }
141
178
  /**
@@ -148,6 +185,10 @@ function generateScalarField(field, fieldName, fkFieldNames, imports) {
148
185
  function generateJsonField(field, fieldName, imports) {
149
186
  const parts = [];
150
187
  parts.push(`field.JSON("${fieldName}", map[string]interface{}{})`);
188
+ // StorageKey from @map annotation
189
+ if (field.dbName) {
190
+ parts.push(`.StorageKey("${field.dbName}")`);
191
+ }
151
192
  if (!field.isRequired) {
152
193
  parts.push('.Optional()');
153
194
  }
@@ -159,16 +200,19 @@ function generateJsonField(field, fieldName, imports) {
159
200
  function generateEnumField(field, fieldName, enumDefs, imports) {
160
201
  const parts = [];
161
202
  parts.push(`field.Enum("${fieldName}")`);
203
+ // StorageKey from @map annotation
204
+ if (field.dbName) {
205
+ parts.push(`.StorageKey("${field.dbName}")`);
206
+ }
162
207
  // Get enum values from the definition
163
208
  const enumDef = enumDefs.get(field.type);
164
209
  if (enumDef) {
165
210
  const values = enumDef.values.map((v) => `"${v.name}"`).join(', ');
166
211
  parts.push(`.Values(${values})`);
167
212
  }
168
- // Optional / Nillable
213
+ // Optional
169
214
  if (!field.isRequired) {
170
215
  parts.push('.Optional()');
171
- parts.push('.Nillable()');
172
216
  }
173
217
  // Default value for enums
174
218
  if (field.hasDefaultValue && typeof field.default === 'string') {
@@ -198,7 +242,6 @@ function formatDefault(defaultValue, prismaType, imports) {
198
242
  imports.uuid = true;
199
243
  return '.DefaultFunc(uuid.NewString)';
200
244
  case 'cuid':
201
- // No built-in Ent CUID; leave a comment
202
245
  return '/* .DefaultFunc(cuid.New) — add a CUID library */';
203
246
  case 'autoincrement':
204
247
  return null;
@@ -215,6 +258,11 @@ function formatDefault(defaultValue, prismaType, imports) {
215
258
  return `.Default(${defaultValue})`;
216
259
  }
217
260
  if (typeof defaultValue === 'string') {
261
+ // BigInt defaults are serialized as strings in the DMMF.
262
+ // If the Prisma type is BigInt and the string is a valid number, emit as numeric.
263
+ if (prismaType === 'BigInt' && /^-?\d+$/.test(defaultValue)) {
264
+ return `.Default(${defaultValue})`;
265
+ }
218
266
  return `.Default("${escapeGoString(defaultValue)}")`;
219
267
  }
220
268
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"field.js","sourceRoot":"","sources":["../../src/helpers/field.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"field.js","sourceRoot":"","sources":["../../src/helpers/field.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,19 @@
1
1
  import type { DMMF } from '@prisma/generator-helper';
2
+ /**
3
+ * Index definition from the DMMF Datamodel.indexes array.
4
+ * We accept a loose type since the DMMF re-exports differ across versions.
5
+ */
6
+ interface DMMFIndex {
7
+ model: string;
8
+ type: string;
9
+ isDefinedOnField: boolean;
10
+ name?: string;
11
+ dbName?: string;
12
+ fields: Array<{
13
+ name: string;
14
+ sortOrder?: string;
15
+ }>;
16
+ }
2
17
  /**
3
18
  * Generate a complete Go Ent schema file for a single Prisma model.
4
19
  *
@@ -8,6 +23,9 @@ import type { DMMF } from '@prisma/generator-helper';
8
23
  * - Struct embedding ent.Schema
9
24
  * - Fields() method
10
25
  * - Edges() method
26
+ * - Indexes() method (if applicable)
27
+ * - Annotations() method (if @@map is used)
11
28
  */
12
- export declare function generateSchema(model: DMMF.Model, allModels: readonly DMMF.Model[], enumDefs: Map<string, DMMF.DatamodelEnum>): string;
29
+ export declare function generateSchema(model: DMMF.Model, allModels: readonly DMMF.Model[], enumDefs: Map<string, DMMF.DatamodelEnum>, indexes?: readonly DMMFIndex[]): string;
30
+ export {};
13
31
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/helpers/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAMrD;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,SAAS,EAAE,SAAS,IAAI,CAAC,KAAK,EAAE,EAChC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,GACxC,MAAM,CAqER"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/helpers/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAMrD;;;GAGG;AACH,UAAU,SAAS;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,OAAO,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACrD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,IAAI,CAAC,KAAK,EACjB,SAAS,EAAE,SAAS,IAAI,CAAC,KAAK,EAAE,EAChC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,EACzC,OAAO,CAAC,EAAE,SAAS,SAAS,EAAE,GAC7B,MAAM,CAgHR"}
@@ -14,13 +14,22 @@ const utils_1 = require("../utils");
14
14
  * - Struct embedding ent.Schema
15
15
  * - Fields() method
16
16
  * - Edges() method
17
+ * - Indexes() method (if applicable)
18
+ * - Annotations() method (if @@map is used)
17
19
  */
18
- function generateSchema(model, allModels, enumDefs) {
20
+ function generateSchema(model, allModels, enumDefs, indexes) {
19
21
  const imports = (0, type_map_1.createEmptyImports)();
20
22
  // Build enum lookup for this model's enum fields
21
23
  const fkFieldNames = (0, field_1.collectFKFieldNames)(model.fields);
22
24
  const fieldLines = (0, field_1.generateFields)(model.fields, fkFieldNames, enumDefs, imports);
23
25
  const edgeLines = (0, edge_1.generateEdges)(model, allModels, imports);
26
+ // Filter indexes for this model (exclude field-level unique constraints and primary keys)
27
+ const modelIndexes = (indexes ?? []).filter((idx) => idx.model === model.name &&
28
+ !idx.isDefinedOnField &&
29
+ idx.type !== 'id');
30
+ const indexLines = generateIndexes(modelIndexes, model, imports);
31
+ // Check if we need Annotations (for @@map table name)
32
+ const hasTableMapping = model.dbName != null;
24
33
  // Mark imports based on content
25
34
  if (fieldLines.length > 0) {
26
35
  imports.field = true;
@@ -28,6 +37,13 @@ function generateSchema(model, allModels, enumDefs) {
28
37
  if (edgeLines.length > 0) {
29
38
  imports.edge = true;
30
39
  }
40
+ if (indexLines.length > 0) {
41
+ imports.index = true;
42
+ }
43
+ if (hasTableMapping) {
44
+ imports.schema = true;
45
+ imports.entsql = true;
46
+ }
31
47
  const lines = [];
32
48
  // File header
33
49
  lines.push((0, utils_1.fileHeader)());
@@ -77,6 +93,53 @@ function generateSchema(model, allModels, enumDefs) {
77
93
  }
78
94
  lines.push('}');
79
95
  lines.push('');
96
+ // Indexes() method (if applicable)
97
+ if (indexLines.length > 0) {
98
+ lines.push(`// Indexes of the ${model.name}.`);
99
+ lines.push(`func (${model.name}) Indexes() []ent.Index {`);
100
+ lines.push('\treturn []ent.Index{');
101
+ for (const il of indexLines) {
102
+ lines.push(`\t\t${il},`);
103
+ }
104
+ lines.push('\t}');
105
+ lines.push('}');
106
+ lines.push('');
107
+ }
108
+ // Annotations() method (if @@map is used)
109
+ if (hasTableMapping) {
110
+ lines.push(`// Annotations of the ${model.name}.`);
111
+ lines.push(`func (${model.name}) Annotations() []schema.Annotation {`);
112
+ lines.push('\treturn []schema.Annotation{');
113
+ lines.push(`\t\tentsql.Annotation{Table: "${model.dbName}"},`);
114
+ lines.push('\t}');
115
+ lines.push('}');
116
+ lines.push('');
117
+ }
80
118
  return lines.join('\n');
81
119
  }
120
+ /**
121
+ * Generate Ent index definitions from DMMF indexes.
122
+ *
123
+ * Translates Prisma @@index and @@unique (compound) into Ent's index builder:
124
+ * - @@index([fieldA, fieldB], map: "name") → index.Fields("fieldA", "fieldB").StorageKey("name")
125
+ * - @@unique([fieldA, fieldB], map: "name") → index.Fields("fieldA", "fieldB").Unique().StorageKey("name")
126
+ */
127
+ function generateIndexes(indexes, model, imports) {
128
+ const lines = [];
129
+ for (const idx of indexes) {
130
+ // Map Prisma field names to Ent field names (use the Prisma field name directly)
131
+ const fieldNames = idx.fields.map((f) => `"${f.name}"`).join(', ');
132
+ const parts = [];
133
+ parts.push(`index.Fields(${fieldNames})`);
134
+ if (idx.type === 'unique') {
135
+ parts.push('.Unique()');
136
+ }
137
+ // Add custom index name from Prisma's `map:` attribute
138
+ if (idx.dbName) {
139
+ parts.push(`.StorageKey("${idx.dbName}")`);
140
+ }
141
+ lines.push(parts.join(''));
142
+ }
143
+ return lines;
144
+ }
82
145
  //# sourceMappingURL=schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/helpers/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/helpers/schema.ts"],"names":[],"mappings":";;AA+BA,wCAqHC;AAnJD,yCAAkF;AAClF,mCAA8D;AAC9D,iCAAuC;AACvC,oCAAsC;AAetC;;;;;;;;;;;GAWG;AACH,SAAgB,cAAc,CAC5B,KAAiB,EACjB,SAAgC,EAChC,QAAyC,EACzC,OAA8B;IAE9B,MAAM,OAAO,GAAG,IAAA,6BAAkB,GAAE,CAAC;IAErC,iDAAiD;IACjD,MAAM,YAAY,GAAG,IAAA,2BAAmB,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACvD,MAAM,UAAU,GAAG,IAAA,sBAAc,EAAC,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACjF,MAAM,SAAS,GAAG,IAAA,oBAAa,EAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAE3D,0FAA0F;IAC1F,MAAM,YAAY,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CACzC,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,CAAC,KAAK,KAAK,KAAK,CAAC,IAAI;QACxB,CAAC,GAAG,CAAC,gBAAgB;QACrB,GAAG,CAAC,IAAI,KAAK,IAAI,CACpB,CAAC;IACF,MAAM,UAAU,GAAG,eAAe,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAEjE,sDAAsD;IACtD,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC;IAE7C,gCAAgC;IAChC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IACvB,CAAC;IACD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IACtB,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IACvB,CAAC;IACD,IAAI,eAAe,EAAE,CAAC;QACpB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;QACtB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IACxB,CAAC;IAED,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,cAAc;IACd,KAAK,CAAC,IAAI,CAAC,IAAA,kBAAU,GAAE,CAAC,CAAC;IACzB,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC7B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,eAAe;IACf,KAAK,CAAC,IAAI,CAAC,IAAA,2BAAgB,EAAC,OAAO,CAAC,CAAC,CAAC;IACtC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,oBAAoB;IACpB,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;QACxB,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC;IACxD,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,wCAAwC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC;IAC3F,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,QAAQ,KAAK,CAAC,IAAI,WAAW,CAAC,CAAC;IAC1C,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,kBAAkB;IAClB,KAAK,CAAC,IAAI,CAAC,oBAAoB,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;IAC9C,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,IAAI,0BAA0B,CAAC,CAAC;IAC1D,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC7B,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QACpC,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC3B,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,iBAAiB;IACjB,KAAK,CAAC,IAAI,CAAC,mBAAmB,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;IAC7C,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,IAAI,wBAAwB,CAAC,CAAC;IACxD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC7B,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACnC,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;YAC3B,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC3B,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,mCAAmC;IACnC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,qBAAqB,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;QAC/C,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,IAAI,2BAA2B,CAAC,CAAC;QAC3D,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QACpC,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC3B,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,0CAA0C;IAC1C,IAAI,eAAe,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,yBAAyB,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;QACnD,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,IAAI,uCAAuC,CAAC,CAAC;QACvE,KAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;QAC5C,KAAK,CAAC,IAAI,CAAC,iCAAiC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;QAC/D,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;GAMG;AACH,SAAS,eAAe,CACtB,OAAoB,EACpB,KAAiB,EACjB,OAAkB;IAElB,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,iFAAiF;QACjF,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnE,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,KAAK,CAAC,IAAI,CAAC,gBAAgB,UAAU,GAAG,CAAC,CAAC;QAE1C,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC1B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC1B,CAAC;QAED,uDAAuD;QACvD,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACf,KAAK,CAAC,IAAI,CAAC,gBAAgB,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC;QAC7C,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -12,6 +12,10 @@ export interface GoImports {
12
12
  edge: boolean;
13
13
  /** Whether "entgo.io/ent/schema/index" is needed (for indexes). */
14
14
  index: boolean;
15
+ /** Whether "entgo.io/ent/schema" is needed (for Annotations). */
16
+ schema: boolean;
17
+ /** Whether "entgo.io/ent/dialect/entsql" is needed (for table name annotations). */
18
+ entsql: boolean;
15
19
  }
16
20
  /**
17
21
  * Create an empty Go imports tracker.
@@ -30,4 +34,19 @@ export declare function requiresTimeImport(prismaType: string): boolean;
30
34
  * Build the Go import block string from tracked imports.
31
35
  */
32
36
  export declare function buildImportBlock(imports: GoImports): string;
37
+ /**
38
+ * Check whether a field's native type indicates a UUID.
39
+ * Prisma encodes `@db.Uuid` as `['Uuid', []]`.
40
+ */
41
+ export declare function isUuidNativeType(nativeType?: readonly [string, readonly string[]] | null): boolean;
42
+ /**
43
+ * Check whether a field's native type indicates a Text column.
44
+ * Prisma encodes `@db.Text` as `['Text', []]`.
45
+ */
46
+ export declare function isTextNativeType(nativeType?: readonly [string, readonly string[]] | null): boolean;
47
+ /**
48
+ * Extract MaxLen from a native type like VarChar(N) or Char(N).
49
+ * Returns the length as a number, or null if not applicable.
50
+ */
51
+ export declare function extractMaxLen(nativeType?: readonly [string, readonly string[]] | null): number | null;
33
52
  //# sourceMappingURL=type-map.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-map.d.ts","sourceRoot":"","sources":["../../src/helpers/type-map.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,kEAAkE;IAClE,IAAI,EAAE,OAAO,CAAC;IACd,kFAAkF;IAClF,IAAI,EAAE,OAAO,CAAC;IACd,uFAAuF;IACvF,KAAK,EAAE,OAAO,CAAC;IACf,qFAAqF;IACrF,IAAI,EAAE,OAAO,CAAC;IACd,mEAAmE;IACnE,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,SAAS,CAQ9C;AA6BD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAE9D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,SAAS,GAAG,MAAM,CA0C3D"}
1
+ {"version":3,"file":"type-map.d.ts","sourceRoot":"","sources":["../../src/helpers/type-map.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,kEAAkE;IAClE,IAAI,EAAE,OAAO,CAAC;IACd,kFAAkF;IAClF,IAAI,EAAE,OAAO,CAAC;IACd,uFAAuF;IACvF,KAAK,EAAE,OAAO,CAAC;IACf,qFAAqF;IACrF,IAAI,EAAE,OAAO,CAAC;IACd,mEAAmE;IACnE,KAAK,EAAE,OAAO,CAAC;IACf,iEAAiE;IACjE,MAAM,EAAE,OAAO,CAAC;IAChB,oFAAoF;IACpF,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,SAAS,CAU9C;AA6BD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAE9D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,SAAS,GAAG,MAAM,CAgD3D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,GAAG,IAAI,GAAG,OAAO,CAElG;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,GAAG,IAAI,GAAG,OAAO,CAElG;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,UAAU,CAAC,EAAE,SAAS,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAQrG"}
@@ -4,6 +4,9 @@ exports.createEmptyImports = createEmptyImports;
4
4
  exports.mapPrismaTypeToEnt = mapPrismaTypeToEnt;
5
5
  exports.requiresTimeImport = requiresTimeImport;
6
6
  exports.buildImportBlock = buildImportBlock;
7
+ exports.isUuidNativeType = isUuidNativeType;
8
+ exports.isTextNativeType = isTextNativeType;
9
+ exports.extractMaxLen = extractMaxLen;
7
10
  /**
8
11
  * Create an empty Go imports tracker.
9
12
  */
@@ -14,6 +17,8 @@ function createEmptyImports() {
14
17
  field: false,
15
18
  edge: false,
16
19
  index: false,
20
+ schema: false,
21
+ entsql: false,
17
22
  };
18
23
  }
19
24
  /**
@@ -24,7 +29,7 @@ function createEmptyImports() {
24
29
  * String → String
25
30
  * Boolean → Bool
26
31
  * Int → Int
27
- * BigInt → Int (int64 in Go)
32
+ * BigInt → Int64 (int64 in Go, Ent uses field.Int for int32)
28
33
  * Float → Float
29
34
  * Decimal → Float (float64 in Go)
30
35
  * DateTime → Time
@@ -35,7 +40,7 @@ const PRISMA_TO_ENT_FIELD = {
35
40
  String: 'String',
36
41
  Boolean: 'Bool',
37
42
  Int: 'Int',
38
- BigInt: 'Int',
43
+ BigInt: 'Int64',
39
44
  Float: 'Float',
40
45
  Decimal: 'Float',
41
46
  DateTime: 'Time',
@@ -62,12 +67,18 @@ function buildImportBlock(imports) {
62
67
  const lines = [];
63
68
  lines.push('import (');
64
69
  lines.push('\t"entgo.io/ent"');
65
- if (imports.field) {
66
- lines.push('\t"entgo.io/ent/schema/field"');
70
+ if (imports.entsql) {
71
+ lines.push('\t"entgo.io/ent/dialect/entsql"');
72
+ }
73
+ if (imports.schema) {
74
+ lines.push('\t"entgo.io/ent/schema"');
67
75
  }
68
76
  if (imports.edge) {
69
77
  lines.push('\t"entgo.io/ent/schema/edge"');
70
78
  }
79
+ if (imports.field) {
80
+ lines.push('\t"entgo.io/ent/schema/field"');
81
+ }
71
82
  if (imports.index) {
72
83
  lines.push('\t"entgo.io/ent/schema/index"');
73
84
  }
@@ -94,4 +105,32 @@ function buildImportBlock(imports) {
94
105
  lines.push(')');
95
106
  return lines.join('\n');
96
107
  }
108
+ /**
109
+ * Check whether a field's native type indicates a UUID.
110
+ * Prisma encodes `@db.Uuid` as `['Uuid', []]`.
111
+ */
112
+ function isUuidNativeType(nativeType) {
113
+ return nativeType != null && nativeType[0] === 'Uuid';
114
+ }
115
+ /**
116
+ * Check whether a field's native type indicates a Text column.
117
+ * Prisma encodes `@db.Text` as `['Text', []]`.
118
+ */
119
+ function isTextNativeType(nativeType) {
120
+ return nativeType != null && nativeType[0] === 'Text';
121
+ }
122
+ /**
123
+ * Extract MaxLen from a native type like VarChar(N) or Char(N).
124
+ * Returns the length as a number, or null if not applicable.
125
+ */
126
+ function extractMaxLen(nativeType) {
127
+ if (nativeType == null)
128
+ return null;
129
+ const [typeName, args] = nativeType;
130
+ if ((typeName === 'VarChar' || typeName === 'Char') && args.length > 0) {
131
+ const len = parseInt(args[0], 10);
132
+ return isNaN(len) ? null : len;
133
+ }
134
+ return null;
135
+ }
97
136
  //# sourceMappingURL=type-map.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-map.js","sourceRoot":"","sources":["../../src/helpers/type-map.ts"],"names":[],"mappings":";;AAmBA,gDAQC;AAiCD,gDAEC;AAKD,gDAEC;AAKD,4CA0CC;AApGD;;GAEG;AACH,SAAgB,kBAAkB;IAChC,OAAO;QACL,IAAI,EAAE,KAAK;QACX,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,KAAK;QACZ,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,KAAK;KACb,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,mBAAmB,GAA2B;IAClD,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,MAAM;IACf,GAAG,EAAE,KAAK;IACV,MAAM,EAAE,KAAK;IACb,KAAK,EAAE,OAAO;IACd,OAAO,EAAE,OAAO;IAChB,QAAQ,EAAE,MAAM;IAChB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;CACf,CAAC;AAEF;;;GAGG;AACH,SAAgB,kBAAkB,CAAC,UAAkB;IACnD,OAAO,mBAAmB,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC;AACrD,CAAC;AAED;;GAEG;AACH,SAAgB,kBAAkB,CAAC,UAAkB;IACnD,OAAO,UAAU,KAAK,UAAU,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAC,OAAkB;IACjD,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACvB,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAE/B,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IAC9C,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;IAC7C,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IAC9C,CAAC;IAED,gEAAgE;IAChE,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC9B,CAAC;IAED,sBAAsB;IACtB,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,UAAU,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEhB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"type-map.js","sourceRoot":"","sources":["../../src/helpers/type-map.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -3,6 +3,6 @@ export { generateSchema } from './helpers/schema';
3
3
  export { generateFields, collectFKFieldNames } from './helpers/field';
4
4
  export { generateEdges } from './helpers/edge';
5
5
  export { generateGenerateGo, generateEntcGo } from './helpers/entfiles';
6
- export { mapPrismaTypeToEnt, buildImportBlock, createEmptyImports, requiresTimeImport, type GoImports, } from './helpers/type-map';
6
+ export { mapPrismaTypeToEnt, buildImportBlock, createEmptyImports, requiresTimeImport, isUuidNativeType, isTextNativeType, extractMaxLen, type GoImports, } from './helpers/type-map';
7
7
  export { toSnakeCase, modelToFileName, fileHeader, indent } from './utils';
8
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,KAAK,SAAS,GACf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,KAAK,SAAS,GACf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.indent = exports.fileHeader = exports.modelToFileName = exports.toSnakeCase = exports.requiresTimeImport = exports.createEmptyImports = exports.buildImportBlock = exports.mapPrismaTypeToEnt = exports.generateEntcGo = exports.generateGenerateGo = exports.generateEdges = exports.collectFKFieldNames = exports.generateFields = exports.generateSchema = exports.isEnabled = exports.generate = void 0;
3
+ exports.indent = exports.fileHeader = exports.modelToFileName = exports.toSnakeCase = exports.extractMaxLen = exports.isTextNativeType = exports.isUuidNativeType = exports.requiresTimeImport = exports.createEmptyImports = exports.buildImportBlock = exports.mapPrismaTypeToEnt = exports.generateEntcGo = exports.generateGenerateGo = exports.generateEdges = exports.collectFKFieldNames = exports.generateFields = exports.generateSchema = exports.isEnabled = exports.generate = void 0;
4
4
  var generator_1 = require("./generator");
5
5
  Object.defineProperty(exports, "generate", { enumerable: true, get: function () { return generator_1.generate; } });
6
6
  Object.defineProperty(exports, "isEnabled", { enumerable: true, get: function () { return generator_1.isEnabled; } });
@@ -19,6 +19,9 @@ Object.defineProperty(exports, "mapPrismaTypeToEnt", { enumerable: true, get: fu
19
19
  Object.defineProperty(exports, "buildImportBlock", { enumerable: true, get: function () { return type_map_1.buildImportBlock; } });
20
20
  Object.defineProperty(exports, "createEmptyImports", { enumerable: true, get: function () { return type_map_1.createEmptyImports; } });
21
21
  Object.defineProperty(exports, "requiresTimeImport", { enumerable: true, get: function () { return type_map_1.requiresTimeImport; } });
22
+ Object.defineProperty(exports, "isUuidNativeType", { enumerable: true, get: function () { return type_map_1.isUuidNativeType; } });
23
+ Object.defineProperty(exports, "isTextNativeType", { enumerable: true, get: function () { return type_map_1.isTextNativeType; } });
24
+ Object.defineProperty(exports, "extractMaxLen", { enumerable: true, get: function () { return type_map_1.extractMaxLen; } });
22
25
  var utils_1 = require("./utils");
23
26
  Object.defineProperty(exports, "toSnakeCase", { enumerable: true, get: function () { return utils_1.toSnakeCase; } });
24
27
  Object.defineProperty(exports, "modelToFileName", { enumerable: true, get: function () { return utils_1.modelToFileName; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,yCAAkD;AAAzC,qGAAA,QAAQ,OAAA;AAAE,sGAAA,SAAS,OAAA;AAC5B,2CAAkD;AAAzC,wGAAA,cAAc,OAAA;AACvB,yCAAsE;AAA7D,uGAAA,cAAc,OAAA;AAAE,4GAAA,mBAAmB,OAAA;AAC5C,uCAA+C;AAAtC,qGAAA,aAAa,OAAA;AACtB,+CAAwE;AAA/D,8GAAA,kBAAkB,OAAA;AAAE,0GAAA,cAAc,OAAA;AAC3C,+CAM4B;AAL1B,8GAAA,kBAAkB,OAAA;AAClB,4GAAA,gBAAgB,OAAA;AAChB,8GAAA,kBAAkB,OAAA;AAClB,8GAAA,kBAAkB,OAAA;AAGpB,iCAA2E;AAAlE,oGAAA,WAAW,OAAA;AAAE,wGAAA,eAAe,OAAA;AAAE,mGAAA,UAAU,OAAA;AAAE,+FAAA,MAAM,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,yCAAkD;AAAzC,qGAAA,QAAQ,OAAA;AAAE,sGAAA,SAAS,OAAA;AAC5B,2CAAkD;AAAzC,wGAAA,cAAc,OAAA;AACvB,yCAAsE;AAA7D,uGAAA,cAAc,OAAA;AAAE,4GAAA,mBAAmB,OAAA;AAC5C,uCAA+C;AAAtC,qGAAA,aAAa,OAAA;AACtB,+CAAwE;AAA/D,8GAAA,kBAAkB,OAAA;AAAE,0GAAA,cAAc,OAAA;AAC3C,+CAS4B;AAR1B,8GAAA,kBAAkB,OAAA;AAClB,4GAAA,gBAAgB,OAAA;AAChB,8GAAA,kBAAkB,OAAA;AAClB,8GAAA,kBAAkB,OAAA;AAClB,4GAAA,gBAAgB,OAAA;AAChB,4GAAA,gBAAgB,OAAA;AAChB,yGAAA,aAAa,OAAA;AAGf,iCAA2E;AAAlE,oGAAA,WAAW,OAAA;AAAE,wGAAA,eAAe,OAAA;AAAE,mGAAA,UAAU,OAAA;AAAE,+FAAA,MAAM,OAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lexmata/prisma-ent-generator",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "Prisma generator that produces Go Ent schema files from your Prisma schema",
5
5
  "license": "MIT",
6
6
  "author": {