@lexmata/prisma-ent-generator 0.2.2 → 0.3.1

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/README.md CHANGED
@@ -7,7 +7,7 @@ Define your data model once in Prisma and generate fully working Ent schemas —
7
7
  ## Features
8
8
 
9
9
  - **Full Ent install** — generates `generate.go`, `entc.go`, and `schema/*.go` so you can immediately run `go generate ./ent`
10
- - **Environment variable toggle** — controlled by `GENERATE_ENT`; skips when unset or `false`, runs when set to `true`
10
+ - **Environment variable toggle** — controlled by `isEnabled = env("GENERATE_ENT")` in the generator config; skips when unset or `false`, runs when `true`
11
11
  - **Scalar type mapping** — `String`, `Int`, `BigInt`, `Float`, `Decimal`, `Boolean`, `DateTime`, `Json`, `Bytes`
12
12
  - **Enum support** — Prisma enums map to inline `field.Enum(...).Values(...)` with defaults
13
13
  - **Relationship edges** — O2O, O2M, and M2M relations are translated to `edge.To` / `edge.From` with correct ownership, `.Ref()`, `.Unique()`, and `.Required()`
@@ -15,6 +15,7 @@ Define your data model once in Prisma and generate fully working Ent schemas —
15
15
  - **Defaults** — `@default(now())`, `@default(uuid())`, `@default(autoincrement())`, `@default(false)`, `@default(0)`, `@default("value")`, and enum defaults
16
16
  - **@updatedAt** — maps to `.Default(time.Now).UpdateDefault(time.Now)`
17
17
  - **UUID IDs** — `@id @default(uuid())` generates `field.UUID("id", uuid.UUID{}).Default(uuid.New)`
18
+ - **JSON type annotations** — annotate `Json` fields with `/// @ent.json array` or `/// @ent.json object` to control the Go type (`[]interface{}{}` vs `map[string]interface{}{}`); defaults to object
18
19
  - **Optional / Nillable** — optional fields get `.Optional().Nillable()` (except JSON, which only gets `.Optional()`)
19
20
 
20
21
  ## Installation
@@ -31,8 +32,9 @@ pnpm add @lexmata/prisma-ent-generator
31
32
 
32
33
  ```prisma
33
34
  generator ent {
34
- provider = "@lexmata/prisma-ent-generator"
35
- output = "./ent"
35
+ provider = "@lexmata/prisma-ent-generator"
36
+ output = "./ent"
37
+ isEnabled = env("GENERATE_ENT")
36
38
  }
37
39
  ```
38
40
 
@@ -42,12 +44,14 @@ generator ent {
42
44
  GENERATE_ENT=true npx prisma generate
43
45
  ```
44
46
 
45
- Without `GENERATE_ENT=true`, the generator prints a skip message and produces no output:
47
+ When `isEnabled` resolves to anything other than `"true"`, the generator prints a skip message and produces no output:
46
48
 
47
49
  ```
48
- prisma-ent-generator: Skipping — set GENERATE_ENT=true to enable.
50
+ prisma-ent-generator: Skipping — set isEnabled = env("GENERATE_ENT") to "true" in your generator config.
49
51
  ```
50
52
 
53
+ You can use any environment variable name you like — just change the `env()` argument accordingly.
54
+
51
55
  ### 3. Run Ent code generation
52
56
 
53
57
  ```bash
@@ -99,6 +103,10 @@ model Post {
99
103
  author User @relation(fields: [authorId], references: [id])
100
104
  authorId Int
101
105
  tags Tag[]
106
+ /// @ent.json object
107
+ metadata Json?
108
+ /// @ent.json array
109
+ labels Json?
102
110
  }
103
111
 
104
112
  model Tag {
@@ -163,6 +171,8 @@ func (Post) Fields() []ent.Field {
163
171
  return []ent.Field{
164
172
  field.String("title"),
165
173
  field.Int("author_id"),
174
+ field.JSON("metadata", map[string]interface{}{}).Optional(),
175
+ field.JSON("labels", []interface{}{}).Optional(),
166
176
  }
167
177
  }
168
178
 
@@ -185,10 +195,34 @@ func (Post) Edges() []ent.Edge {
185
195
  | `Float` | `field.Float` | |
186
196
  | `Decimal` | `field.Float` | float64 in Go |
187
197
  | `DateTime` | `field.Time` | Imports `"time"` |
188
- | `Json` | `field.JSON` | Second arg: `map[string]interface{}{}` |
198
+ | `Json` | `field.JSON` | `map[string]interface{}{}` or `[]interface{}{}`; see [JSON type annotations](#json-type-annotations) |
189
199
  | `Bytes` | `field.Bytes` | |
190
200
  | Enums | `field.Enum` | Inline `.Values(...)` |
191
201
 
202
+ ## JSON Type Annotations
203
+
204
+ Prisma's `Json` type doesn't distinguish between objects and arrays. Use `///` doc comments with the `@ent.json` directive to control the Go type emitted in the Ent schema:
205
+
206
+ ```prisma
207
+ model Post {
208
+ /// @ent.json object
209
+ metadata Json? // → field.JSON("metadata", map[string]interface{}{})
210
+
211
+ /// @ent.json array
212
+ labels Json? // → field.JSON("labels", []interface{}{})
213
+
214
+ config Json // → field.JSON("config", map[string]interface{}{}) (default)
215
+ }
216
+ ```
217
+
218
+ | Annotation | Go Type | When to use |
219
+ |---|---|---|
220
+ | `@ent.json object` | `map[string]interface{}{}` | JSON objects / key-value maps |
221
+ | `@ent.json array` | `[]interface{}{}` | JSON arrays / lists |
222
+ | *(none)* | `map[string]interface{}{}` | Defaults to object |
223
+
224
+ The annotation can appear alongside other documentation comments — the generator looks for the `@ent.json` directive anywhere in the field's doc block.
225
+
192
226
  ## Edge Mapping
193
227
 
194
228
  | Prisma Relation | Ent Edge |
package/dist/bin.js CHANGED
File without changes
@@ -1,9 +1,19 @@
1
1
  import type { GeneratorOptions } from '@prisma/generator-helper';
2
2
  /**
3
- * Check whether the generator is enabled via the GENERATE_ENT environment variable.
4
- * Defaults to disabled if the variable is absent or not set to "true".
3
+ * Check whether the generator is enabled via the `isEnabled` config property
4
+ * in the Prisma generator block.
5
+ *
6
+ * The property should reference an environment variable using Prisma's `env()`:
7
+ *
8
+ * generator ent {
9
+ * isEnabled = env("GENERATE_ENT")
10
+ * }
11
+ *
12
+ * Prisma resolves the env var and passes the value through
13
+ * `options.generator.config.isEnabled`. Returns true only when the
14
+ * resolved value is "true" (case-insensitive).
5
15
  */
6
- export declare function isEnabled(): boolean;
16
+ export declare function isEnabled(configValue?: string): boolean;
7
17
  /**
8
18
  * Main generator function — receives the full Prisma DMMF and generator config,
9
19
  * then writes a complete Go Ent installation to the output directory.
@@ -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,CAyDvE"}
1
+ {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../src/generator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAQ,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAKvE;;;;;;;;;;;;;GAaG;AACH,wBAAgB,SAAS,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,QAAQ,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2DvE"}
package/dist/generator.js CHANGED
@@ -11,16 +11,21 @@ const schema_1 = require("./helpers/schema");
11
11
  const entfiles_1 = require("./helpers/entfiles");
12
12
  const utils_1 = require("./utils");
13
13
  /**
14
- * The environment variable that controls whether the generator runs.
15
- * Set to "true" to enable generation; any other value or absence disables it.
16
- */
17
- const ENV_VAR = 'GENERATE_ENT';
18
- /**
19
- * Check whether the generator is enabled via the GENERATE_ENT environment variable.
20
- * Defaults to disabled if the variable is absent or not set to "true".
14
+ * Check whether the generator is enabled via the `isEnabled` config property
15
+ * in the Prisma generator block.
16
+ *
17
+ * The property should reference an environment variable using Prisma's `env()`:
18
+ *
19
+ * generator ent {
20
+ * isEnabled = env("GENERATE_ENT")
21
+ * }
22
+ *
23
+ * Prisma resolves the env var and passes the value through
24
+ * `options.generator.config.isEnabled`. Returns true only when the
25
+ * resolved value is "true" (case-insensitive).
21
26
  */
22
- function isEnabled() {
23
- return process.env[ENV_VAR]?.toLowerCase() === 'true';
27
+ function isEnabled(configValue) {
28
+ return configValue?.toLowerCase() === 'true';
24
29
  }
25
30
  /**
26
31
  * Main generator function — receives the full Prisma DMMF and generator config,
@@ -36,8 +41,10 @@ function isEnabled() {
36
41
  * ...
37
42
  */
38
43
  async function generate(options) {
39
- if (!isEnabled()) {
40
- console.log(`prisma-ent-generator: Skipping set ${ENV_VAR}=true to enable.`);
44
+ const isEnabledValue = options.generator.config.isEnabled;
45
+ const configValue = Array.isArray(isEnabledValue) ? isEnabledValue[0] : isEnabledValue;
46
+ if (!isEnabled(configValue)) {
47
+ console.log('prisma-ent-generator: Skipping — set isEnabled = env("GENERATE_ENT") to "true" in your generator config.');
41
48
  return;
42
49
  }
43
50
  const outputDir = options.generator.output?.value;
@@ -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":"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"}
@@ -18,4 +18,11 @@ export declare function collectFKFieldNames(fields: readonly DMMF.Field[]): Set<
18
18
  * @returns An array of Go code strings, each representing one `field.X(...)` call.
19
19
  */
20
20
  export declare function generateFields(fields: readonly DMMF.Field[], fkFieldNames: Set<string>, enumDefs: Map<string, DMMF.DatamodelEnum>, imports: GoImports): string[];
21
+ /**
22
+ * Parse a `@ent.json` annotation from a field's documentation comment.
23
+ *
24
+ * Supported values: `array`, `object`.
25
+ * Returns `'array'` or `'object'`, defaulting to `'object'` when absent.
26
+ */
27
+ export declare function parseJsonTypeAnnotation(documentation?: string): 'array' | 'object';
21
28
  //# sourceMappingURL=field.d.ts.map
@@ -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,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,CA4BV"}
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,CA4BV;AAyKD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAIlF"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.collectFKFieldNames = collectFKFieldNames;
4
4
  exports.generateFields = generateFields;
5
+ exports.parseJsonTypeAnnotation = parseJsonTypeAnnotation;
5
6
  const type_map_1 = require("./type-map");
6
7
  /**
7
8
  * Determine the set of field names that serve as foreign keys for relations.
@@ -187,16 +188,39 @@ function generateScalarField(field, fieldName, fkFieldNames, imports, optionalRe
187
188
  }
188
189
  return parts.join('');
189
190
  }
191
+ /**
192
+ * Parse a `@ent.json` annotation from a field's documentation comment.
193
+ *
194
+ * Supported values: `array`, `object`.
195
+ * Returns `'array'` or `'object'`, defaulting to `'object'` when absent.
196
+ */
197
+ function parseJsonTypeAnnotation(documentation) {
198
+ if (!documentation)
199
+ return 'object';
200
+ const match = documentation.match(/@ent\.json\s+(array|object)\b/);
201
+ return match?.[1] ?? 'object';
202
+ }
203
+ /**
204
+ * Return the Go type literal for a JSON field based on the annotation.
205
+ */
206
+ function jsonGoType(kind) {
207
+ return kind === 'array' ? '[]interface{}{}' : 'map[string]interface{}{}';
208
+ }
190
209
  /**
191
210
  * Generate an Ent JSON field definition.
192
211
  *
193
212
  * Ent's field.JSON requires two arguments: the field name and a Go type value.
194
- * Uses `map[string]interface{}{}` as the generic type for Prisma's `Json`.
213
+ * The Go type is determined by an optional `@ent.json array` or `@ent.json object`
214
+ * annotation in the field's documentation comment:
215
+ * - `@ent.json array` → `[]interface{}{}`
216
+ * - `@ent.json object` → `map[string]interface{}{}` (default)
217
+ *
195
218
  * JSON fields support `.Optional()` but not `.Nillable()`.
196
219
  */
197
220
  function generateJsonField(field, fieldName, imports) {
198
221
  const parts = [];
199
- parts.push(`field.JSON("${fieldName}", map[string]interface{}{})`);
222
+ const jsonKind = parseJsonTypeAnnotation(field.documentation);
223
+ parts.push(`field.JSON("${fieldName}", ${jsonGoType(jsonKind)})`);
200
224
  // StorageKey from @map annotation
201
225
  if (field.dbName) {
202
226
  parts.push(`.StorageKey("${field.dbName}")`);
@@ -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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"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export { generate, isEnabled } from './generator';
2
2
  export { generateSchema } from './helpers/schema';
3
- export { generateFields, collectFKFieldNames } from './helpers/field';
3
+ export { generateFields, collectFKFieldNames, parseJsonTypeAnnotation } from './helpers/field';
4
4
  export { generateEdges } from './helpers/edge';
5
5
  export { generateGenerateGo, generateEntcGo } from './helpers/entfiles';
6
6
  export { mapPrismaTypeToEnt, buildImportBlock, createEmptyImports, requiresTimeImport, isUuidNativeType, isTextNativeType, extractMaxLen, type GoImports, } from './helpers/type-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,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"}
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,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC/F,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.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;
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.parseJsonTypeAnnotation = 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; } });
@@ -9,6 +9,7 @@ Object.defineProperty(exports, "generateSchema", { enumerable: true, get: functi
9
9
  var field_1 = require("./helpers/field");
10
10
  Object.defineProperty(exports, "generateFields", { enumerable: true, get: function () { return field_1.generateFields; } });
11
11
  Object.defineProperty(exports, "collectFKFieldNames", { enumerable: true, get: function () { return field_1.collectFKFieldNames; } });
12
+ Object.defineProperty(exports, "parseJsonTypeAnnotation", { enumerable: true, get: function () { return field_1.parseJsonTypeAnnotation; } });
12
13
  var edge_1 = require("./helpers/edge");
13
14
  Object.defineProperty(exports, "generateEdges", { enumerable: true, get: function () { return edge_1.generateEdges; } });
14
15
  var entfiles_1 = require("./helpers/entfiles");
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,+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"}
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,yCAA+F;AAAtF,uGAAA,cAAc,OAAA;AAAE,4GAAA,mBAAmB,OAAA;AAAE,gHAAA,uBAAuB,OAAA;AACrE,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.2.2",
3
+ "version": "0.3.1",
4
4
  "description": "Prisma generator that produces Go Ent schema files from your Prisma schema",
5
5
  "license": "MIT",
6
6
  "author": {
@@ -14,14 +14,6 @@
14
14
  "files": [
15
15
  "dist"
16
16
  ],
17
- "scripts": {
18
- "build": "tsc",
19
- "dev": "tsc --watch",
20
- "generate": "pnpm build && prisma generate",
21
- "test": "vitest run",
22
- "test:watch": "vitest",
23
- "prepublishOnly": "pnpm build"
24
- },
25
17
  "keywords": [
26
18
  "prisma",
27
19
  "generator",
@@ -47,5 +39,12 @@
47
39
  "prisma": "^6.0.0",
48
40
  "typescript": "^5.7.0",
49
41
  "vitest": "^3.0.0"
42
+ },
43
+ "scripts": {
44
+ "build": "tsc",
45
+ "dev": "tsc --watch",
46
+ "generate": "pnpm build && prisma generate",
47
+ "test": "vitest run",
48
+ "test:watch": "vitest"
50
49
  }
51
- }
50
+ }