@baeta/plugin-prisma 0.0.0-57-20230619210342-5073d33

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/CHANGELOG.md ADDED
@@ -0,0 +1,63 @@
1
+ # @baeta/plugin-prisma
2
+
3
+ ## 0.0.0-57-20230619210342-5073d33
4
+
5
+ ### Patch Changes
6
+
7
+ - [#69](https://github.com/andreisergiu98/baeta/pull/69) [`3cdd9b3`](https://github.com/andreisergiu98/baeta/commit/3cdd9b30369d21179769a4b8d5f76e326ae6db37) Thanks [@andreisergiu98](https://github.com/andreisergiu98)! - update dependencies
8
+
9
+ - Updated dependencies [[`3cdd9b3`](https://github.com/andreisergiu98/baeta/commit/3cdd9b30369d21179769a4b8d5f76e326ae6db37)]:
10
+ - @baeta/generator-sdk@0.0.0-57-20230619210342-5073d33
11
+ - @baeta/plugin-exec@0.0.0-57-20230619210342-5073d33
12
+
13
+ ## 0.0.18
14
+
15
+ ### Patch Changes
16
+
17
+ - [#66](https://github.com/andreisergiu98/baeta/pull/66) [`9a4a021`](https://github.com/andreisergiu98/baeta/commit/9a4a0214351b70295ce4f7eecaa8c49ab0e1325b) Thanks [@andreisergiu98](https://github.com/andreisergiu98)! - replace chokidar with @parcel/watcher
18
+
19
+ - Updated dependencies [[`9a4a021`](https://github.com/andreisergiu98/baeta/commit/9a4a0214351b70295ce4f7eecaa8c49ab0e1325b)]:
20
+ - @baeta/generator-sdk@0.0.8
21
+ - @baeta/plugin-exec@0.0.6
22
+
23
+ ## 0.0.17
24
+
25
+ ### Patch Changes
26
+
27
+ - Updated dependencies [[`6a2dd11`](https://github.com/andreisergiu98/baeta/commit/6a2dd110d6ffd2bff25d9c4501faebb052e0cd40)]:
28
+ - @baeta/plugin-exec@0.0.5
29
+ - @baeta/generator-sdk@0.0.7
30
+
31
+ ## 0.0.16
32
+
33
+ ### Patch Changes
34
+
35
+ - [#47](https://github.com/andreisergiu98/baeta/pull/47) [`eb7096d`](https://github.com/andreisergiu98/baeta/commit/eb7096d42a53b17bae0a8365eccb795e7ded02e9) Thanks [@andreisergiu98](https://github.com/andreisergiu98)! - update dependencies
36
+
37
+ - [#43](https://github.com/andreisergiu98/baeta/pull/43) [`670501b`](https://github.com/andreisergiu98/baeta/commit/670501b2b1cfb1126be3421293b8ccd597c6ffc2) Thanks [@andreisergiu98](https://github.com/andreisergiu98)! - bump dependencies
38
+
39
+ - Updated dependencies [[`eb7096d`](https://github.com/andreisergiu98/baeta/commit/eb7096d42a53b17bae0a8365eccb795e7ded02e9), [`670501b`](https://github.com/andreisergiu98/baeta/commit/670501b2b1cfb1126be3421293b8ccd597c6ffc2)]:
40
+ - @baeta/generator-sdk@0.0.6
41
+ - @baeta/plugin-exec@0.0.4
42
+
43
+ ## 0.0.15
44
+
45
+ ### Patch Changes
46
+
47
+ - [#40](https://github.com/andreisergiu98/baeta/pull/40) [`9f937f4`](https://github.com/andreisergiu98/baeta/commit/9f937f47d3464a082680047414ee13a76cf6c056) Thanks [@andreisergiu98](https://github.com/andreisergiu98)! - normalize config
48
+
49
+ - Updated dependencies [[`9f937f4`](https://github.com/andreisergiu98/baeta/commit/9f937f47d3464a082680047414ee13a76cf6c056), [`9f937f4`](https://github.com/andreisergiu98/baeta/commit/9f937f47d3464a082680047414ee13a76cf6c056)]:
50
+ - @baeta/generator-sdk@0.0.5
51
+ - @baeta/plugin-exec@0.0.3
52
+
53
+ ## 0.0.14
54
+
55
+ ### Patch Changes
56
+
57
+ - [`d1190c1`](https://github.com/andreisergiu98/baeta/commit/d1190c10e3c259c73ddeeb73a4bd312b22bf2ea4) Thanks [@andreisergiu98](https://github.com/andreisergiu98)! - create cli sdk
58
+ release prisma plugin
59
+ update dependencies
60
+ refactor generator plugins
61
+ - Updated dependencies [[`d1190c1`](https://github.com/andreisergiu98/baeta/commit/d1190c10e3c259c73ddeeb73a4bd312b22bf2ea4)]:
62
+ - @baeta/generator-sdk@0.0.4
63
+ - @baeta/plugin-exec@0.0.2
package/dist/index.cjs ADDED
@@ -0,0 +1,54 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }// lib/client-generator.ts
2
+ var _pluginexec = require('@baeta/plugin-exec');
3
+ var _promises = require('fs/promises');
4
+ var _path = require('path');
5
+ async function compareSchemas(cwd, current, generated) {
6
+ const [currentSchema, generatedSchema] = await Promise.all([
7
+ _promises.readFile.call(void 0, _path.resolve.call(void 0, cwd, current), "utf-8"),
8
+ _promises.readFile.call(void 0, _path.resolve.call(void 0, cwd, generated), "utf-8").catch(() => null)
9
+ ]);
10
+ return currentSchema === generatedSchema;
11
+ }
12
+ function createPrismaClientPlugin(options) {
13
+ const { prismaSchema, generateCommand, generatedSchemaPath } = options;
14
+ const skip = async (ctx) => {
15
+ const schema = _path.resolve.call(void 0, ctx.generatorOptions.cwd, prismaSchema);
16
+ if (ctx.watching && _optionalChain([ctx, 'access', _ => _.changedFile, 'optionalAccess', _2 => _2.path]) !== schema) {
17
+ return true;
18
+ }
19
+ if (!ctx.watching && generatedSchemaPath) {
20
+ return compareSchemas(ctx.generatorOptions.cwd, prismaSchema, generatedSchemaPath);
21
+ }
22
+ return false;
23
+ };
24
+ return _pluginexec.createExecPlugin.call(void 0, {
25
+ name: "prisma-client",
26
+ actionName: "Prisma client",
27
+ exec: _nullishCoalesce(generateCommand, () => ( "prisma generate")),
28
+ watch: (generatorOptions, watcher, reload) => {
29
+ const prismaPath = _path.resolve.call(void 0, generatorOptions.cwd, prismaSchema);
30
+ const handleChange = (file) => {
31
+ if (file.path === prismaPath) {
32
+ reload(file);
33
+ }
34
+ };
35
+ watcher.on("update", handleChange);
36
+ watcher.on("delete", handleChange);
37
+ },
38
+ skip
39
+ });
40
+ }
41
+
42
+ // index.ts
43
+ var plugin_prisma_default = prismaPlugin;
44
+ function prismaPlugin(options) {
45
+ if (options.generateClient === false) {
46
+ return [];
47
+ }
48
+ return [createPrismaClientPlugin(options)];
49
+ }
50
+
51
+
52
+
53
+ exports.default = plugin_prisma_default; exports.prismaPlugin = prismaPlugin;
54
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../lib/client-generator.ts","../index.ts"],"names":[],"mappings":";AACA,SAAS,wBAAwB;AACjC,SAAS,gBAAgB;AACzB,SAAS,eAAe;AAGxB,eAAe,eAAe,KAAa,SAAiB,WAAmB;AAC7E,QAAM,CAAC,eAAe,eAAe,IAAI,MAAM,QAAQ,IAAI;AAAA,IACzD,SAAS,QAAQ,KAAK,OAAO,GAAG,OAAO;AAAA,IACvC,SAAS,QAAQ,KAAK,SAAS,GAAG,OAAO,EAAE,MAAM,MAAM,IAAI;AAAA,EAC7D,CAAC;AACD,SAAO,kBAAkB;AAC3B;AAEO,SAAS,yBAAyB,SAA8B;AACrE,QAAM,EAAE,cAAc,iBAAiB,oBAAoB,IAAI;AAE/D,QAAM,OAAO,OAAO,QAAa;AAC/B,UAAM,SAAS,QAAQ,IAAI,iBAAiB,KAAK,YAAY;AAE7D,QAAI,IAAI,YAAY,IAAI,aAAa,SAAS,QAAQ;AACpD,aAAO;AAAA,IACT;AAEA,QAAI,CAAC,IAAI,YAAY,qBAAqB;AACxC,aAAO,eAAe,IAAI,iBAAiB,KAAK,cAAc,mBAAmB;AAAA,IACnF;AAEA,WAAO;AAAA,EACT;AAEA,SAAO,iBAAiB;AAAA,IACtB,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,MAAM,mBAAmB;AAAA,IACzB,OAAO,CAAC,kBAAkB,SAAS,WAAW;AAC5C,YAAM,aAAa,QAAQ,iBAAiB,KAAK,YAAY;AAE7D,YAAM,eAAe,CAAC,SAAsB;AAC1C,YAAI,KAAK,SAAS,YAAY;AAC5B,iBAAO,IAAI;AAAA,QACb;AAAA,MACF;AAEA,cAAQ,GAAG,UAAU,YAAY;AACjC,cAAQ,GAAG,UAAU,YAAY;AAAA,IACnC;AAAA,IACA;AAAA,EACF,CAAC;AACH;;;AC7CA,IAAO,wBAAQ;AAER,SAAS,aAAa,SAA8B;AACzD,MAAI,QAAQ,mBAAmB,OAAO;AACpC,WAAO,CAAC;AAAA,EACV;AACA,SAAO,CAAC,yBAAyB,OAAO,CAAC;AAC3C","sourcesContent":["import { Ctx, WatcherFile } from '@baeta/generator-sdk';\nimport { createExecPlugin } from '@baeta/plugin-exec';\nimport { readFile } from 'fs/promises';\nimport { resolve } from 'path';\nimport { PrismaPluginOptions } from './options';\n\nasync function compareSchemas(cwd: string, current: string, generated: string) {\n const [currentSchema, generatedSchema] = await Promise.all([\n readFile(resolve(cwd, current), 'utf-8'),\n readFile(resolve(cwd, generated), 'utf-8').catch(() => null),\n ]);\n return currentSchema === generatedSchema;\n}\n\nexport function createPrismaClientPlugin(options: PrismaPluginOptions) {\n const { prismaSchema, generateCommand, generatedSchemaPath } = options;\n\n const skip = async (ctx: Ctx) => {\n const schema = resolve(ctx.generatorOptions.cwd, prismaSchema);\n\n if (ctx.watching && ctx.changedFile?.path !== schema) {\n return true;\n }\n\n if (!ctx.watching && generatedSchemaPath) {\n return compareSchemas(ctx.generatorOptions.cwd, prismaSchema, generatedSchemaPath);\n }\n\n return false;\n };\n\n return createExecPlugin({\n name: 'prisma-client',\n actionName: 'Prisma client',\n exec: generateCommand ?? 'prisma generate',\n watch: (generatorOptions, watcher, reload) => {\n const prismaPath = resolve(generatorOptions.cwd, prismaSchema);\n\n const handleChange = (file: WatcherFile) => {\n if (file.path === prismaPath) {\n reload(file);\n }\n };\n\n watcher.on('update', handleChange);\n watcher.on('delete', handleChange);\n },\n skip,\n });\n}\n","import { createPrismaClientPlugin } from './lib/client-generator';\nimport { PrismaPluginOptions } from './lib/options';\n\nexport type { PrismaPluginOptions };\nexport default prismaPlugin;\n\nexport function prismaPlugin(options: PrismaPluginOptions) {\n if (options.generateClient === false) {\n return [];\n }\n return [createPrismaClientPlugin(options)];\n}\n"]}
@@ -0,0 +1,12 @@
1
+ import * as _baeta_generator_sdk from '@baeta/generator-sdk';
2
+
3
+ interface PrismaPluginOptions {
4
+ prismaSchema: string;
5
+ generateClient?: boolean;
6
+ generateCommand?: string;
7
+ generatedSchemaPath?: string;
8
+ }
9
+
10
+ declare function prismaPlugin(options: PrismaPluginOptions): _baeta_generator_sdk.GeneratorPluginV1<{}>[];
11
+
12
+ export { PrismaPluginOptions, prismaPlugin as default, prismaPlugin };
package/dist/index.js ADDED
@@ -0,0 +1,54 @@
1
+ // lib/client-generator.ts
2
+ import { createExecPlugin } from "@baeta/plugin-exec";
3
+ import { readFile } from "fs/promises";
4
+ import { resolve } from "path";
5
+ async function compareSchemas(cwd, current, generated) {
6
+ const [currentSchema, generatedSchema] = await Promise.all([
7
+ readFile(resolve(cwd, current), "utf-8"),
8
+ readFile(resolve(cwd, generated), "utf-8").catch(() => null)
9
+ ]);
10
+ return currentSchema === generatedSchema;
11
+ }
12
+ function createPrismaClientPlugin(options) {
13
+ const { prismaSchema, generateCommand, generatedSchemaPath } = options;
14
+ const skip = async (ctx) => {
15
+ const schema = resolve(ctx.generatorOptions.cwd, prismaSchema);
16
+ if (ctx.watching && ctx.changedFile?.path !== schema) {
17
+ return true;
18
+ }
19
+ if (!ctx.watching && generatedSchemaPath) {
20
+ return compareSchemas(ctx.generatorOptions.cwd, prismaSchema, generatedSchemaPath);
21
+ }
22
+ return false;
23
+ };
24
+ return createExecPlugin({
25
+ name: "prisma-client",
26
+ actionName: "Prisma client",
27
+ exec: generateCommand ?? "prisma generate",
28
+ watch: (generatorOptions, watcher, reload) => {
29
+ const prismaPath = resolve(generatorOptions.cwd, prismaSchema);
30
+ const handleChange = (file) => {
31
+ if (file.path === prismaPath) {
32
+ reload(file);
33
+ }
34
+ };
35
+ watcher.on("update", handleChange);
36
+ watcher.on("delete", handleChange);
37
+ },
38
+ skip
39
+ });
40
+ }
41
+
42
+ // index.ts
43
+ var plugin_prisma_default = prismaPlugin;
44
+ function prismaPlugin(options) {
45
+ if (options.generateClient === false) {
46
+ return [];
47
+ }
48
+ return [createPrismaClientPlugin(options)];
49
+ }
50
+ export {
51
+ plugin_prisma_default as default,
52
+ prismaPlugin
53
+ };
54
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../lib/client-generator.ts","../index.ts"],"sourcesContent":["import { Ctx, WatcherFile } from '@baeta/generator-sdk';\nimport { createExecPlugin } from '@baeta/plugin-exec';\nimport { readFile } from 'fs/promises';\nimport { resolve } from 'path';\nimport { PrismaPluginOptions } from './options';\n\nasync function compareSchemas(cwd: string, current: string, generated: string) {\n const [currentSchema, generatedSchema] = await Promise.all([\n readFile(resolve(cwd, current), 'utf-8'),\n readFile(resolve(cwd, generated), 'utf-8').catch(() => null),\n ]);\n return currentSchema === generatedSchema;\n}\n\nexport function createPrismaClientPlugin(options: PrismaPluginOptions) {\n const { prismaSchema, generateCommand, generatedSchemaPath } = options;\n\n const skip = async (ctx: Ctx) => {\n const schema = resolve(ctx.generatorOptions.cwd, prismaSchema);\n\n if (ctx.watching && ctx.changedFile?.path !== schema) {\n return true;\n }\n\n if (!ctx.watching && generatedSchemaPath) {\n return compareSchemas(ctx.generatorOptions.cwd, prismaSchema, generatedSchemaPath);\n }\n\n return false;\n };\n\n return createExecPlugin({\n name: 'prisma-client',\n actionName: 'Prisma client',\n exec: generateCommand ?? 'prisma generate',\n watch: (generatorOptions, watcher, reload) => {\n const prismaPath = resolve(generatorOptions.cwd, prismaSchema);\n\n const handleChange = (file: WatcherFile) => {\n if (file.path === prismaPath) {\n reload(file);\n }\n };\n\n watcher.on('update', handleChange);\n watcher.on('delete', handleChange);\n },\n skip,\n });\n}\n","import { createPrismaClientPlugin } from './lib/client-generator';\nimport { PrismaPluginOptions } from './lib/options';\n\nexport type { PrismaPluginOptions };\nexport default prismaPlugin;\n\nexport function prismaPlugin(options: PrismaPluginOptions) {\n if (options.generateClient === false) {\n return [];\n }\n return [createPrismaClientPlugin(options)];\n}\n"],"mappings":";AACA,SAAS,wBAAwB;AACjC,SAAS,gBAAgB;AACzB,SAAS,eAAe;AAGxB,eAAe,eAAe,KAAa,SAAiB,WAAmB;AAC7E,QAAM,CAAC,eAAe,eAAe,IAAI,MAAM,QAAQ,IAAI;AAAA,IACzD,SAAS,QAAQ,KAAK,OAAO,GAAG,OAAO;AAAA,IACvC,SAAS,QAAQ,KAAK,SAAS,GAAG,OAAO,EAAE,MAAM,MAAM,IAAI;AAAA,EAC7D,CAAC;AACD,SAAO,kBAAkB;AAC3B;AAEO,SAAS,yBAAyB,SAA8B;AACrE,QAAM,EAAE,cAAc,iBAAiB,oBAAoB,IAAI;AAE/D,QAAM,OAAO,OAAO,QAAa;AAC/B,UAAM,SAAS,QAAQ,IAAI,iBAAiB,KAAK,YAAY;AAE7D,QAAI,IAAI,YAAY,IAAI,aAAa,SAAS,QAAQ;AACpD,aAAO;AAAA,IACT;AAEA,QAAI,CAAC,IAAI,YAAY,qBAAqB;AACxC,aAAO,eAAe,IAAI,iBAAiB,KAAK,cAAc,mBAAmB;AAAA,IACnF;AAEA,WAAO;AAAA,EACT;AAEA,SAAO,iBAAiB;AAAA,IACtB,MAAM;AAAA,IACN,YAAY;AAAA,IACZ,MAAM,mBAAmB;AAAA,IACzB,OAAO,CAAC,kBAAkB,SAAS,WAAW;AAC5C,YAAM,aAAa,QAAQ,iBAAiB,KAAK,YAAY;AAE7D,YAAM,eAAe,CAAC,SAAsB;AAC1C,YAAI,KAAK,SAAS,YAAY;AAC5B,iBAAO,IAAI;AAAA,QACb;AAAA,MACF;AAEA,cAAQ,GAAG,UAAU,YAAY;AACjC,cAAQ,GAAG,UAAU,YAAY;AAAA,IACnC;AAAA,IACA;AAAA,EACF,CAAC;AACH;;;AC7CA,IAAO,wBAAQ;AAER,SAAS,aAAa,SAA8B;AACzD,MAAI,QAAQ,mBAAmB,OAAO;AACpC,WAAO,CAAC;AAAA,EACV;AACA,SAAO,CAAC,yBAAyB,OAAO,CAAC;AAC3C;","names":[]}
package/package.json ADDED
@@ -0,0 +1,52 @@
1
+ {
2
+ "name": "@baeta/plugin-prisma",
3
+ "version": "0.0.0-57-20230619210342-5073d33",
4
+ "homepage": "https://github.com/andreisergiu98/baeta#readme",
5
+ "bugs": {
6
+ "url": "https://github.com/andreisergiu98/baeta/issues"
7
+ },
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "https://github.com/andreisergiu98/baeta.git",
11
+ "directory": "packages/plugin-prisma"
12
+ },
13
+ "license": "MIT",
14
+ "author": "Andrei Pampu <pampu.andrei@pm.me>",
15
+ "type": "module",
16
+ "exports": {
17
+ ".": {
18
+ "import": "./dist/index.js",
19
+ "require": "./dist/index.cjs",
20
+ "types": "./dist/index.d.ts"
21
+ }
22
+ },
23
+ "types": "dist/index.d.ts",
24
+ "files": [
25
+ "dist",
26
+ "package.json"
27
+ ],
28
+ "scripts": {
29
+ "build": "tsup",
30
+ "dev": "tsup --watch",
31
+ "prepack": "prep",
32
+ "postpack": "prep --clean",
33
+ "types": "tsc --noEmit"
34
+ },
35
+ "dependencies": {
36
+ "@baeta/generator-sdk": "^0.0.0-57-20230619210342-5073d33",
37
+ "@baeta/plugin-exec": "^0.0.0-57-20230619210342-5073d33",
38
+ "execa": "^7.1.1"
39
+ },
40
+ "devDependencies": {
41
+ "@baeta/builder": "^0.0.0",
42
+ "@baeta/tsconfig": "^0.0.0",
43
+ "@types/node": "^18.16.18",
44
+ "typescript": "^5.1.3"
45
+ },
46
+ "engines": {
47
+ "node": ">=18.0.0"
48
+ },
49
+ "publishConfig": {
50
+ "access": "public"
51
+ }
52
+ }