create-taserjs 0.1.12 → 0.2.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 +8 -44
- package/dist/cli-CBhdDKHU.cjs +1398 -0
- package/dist/cli-hL7a4VS0.js +1237 -0
- package/dist/cli-hL7a4VS0.js.map +1 -0
- package/dist/cli.cjs +4 -0
- package/dist/cli.d.cts +4 -0
- package/dist/cli.d.cts.map +1 -0
- package/dist/cli.d.ts +4 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +3 -0
- package/dist/index.cjs +25 -0
- package/dist/index.d.cts +119 -0
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.ts +119 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -0
- package/package.json +39 -9
- package/src/addons/drizzle/index.ts +37 -40
- package/src/addons/kysely/index.ts +19 -22
- package/src/addons/pino/index.ts +2 -2
- package/src/addons/prisma/index.ts +18 -22
- package/src/addons/registry.ts +37 -73
- package/src/addons/types.ts +12 -13
- package/src/addons/validators.ts +22 -23
- package/src/addons/winston/index.ts +3 -3
- package/src/cli.ts +96 -56
- package/src/commands/create.ts +118 -249
- package/src/core/package-manager.ts +36 -55
- package/src/core/scaffold-engine.ts +100 -75
- package/src/core/targets.ts +19 -55
- package/src/core/types.ts +18 -53
- package/src/index.ts +8 -0
- package/src/templates/base.ts +139 -51
- package/dist/cjs/_virtual/_rolldown/runtime.cjs +0 -23
- package/dist/cjs/addons/arktype/index.cjs +0 -6
- package/dist/cjs/addons/arktype/index.cjs.map +0 -1
- package/dist/cjs/addons/arktype/index.d.cts +0 -1
- package/dist/cjs/addons/drizzle/index.cjs +0 -131
- package/dist/cjs/addons/drizzle/index.cjs.map +0 -1
- package/dist/cjs/addons/drizzle/index.d.cts +0 -2
- package/dist/cjs/addons/kysely/index.cjs +0 -103
- package/dist/cjs/addons/kysely/index.cjs.map +0 -1
- package/dist/cjs/addons/kysely/index.d.cts +0 -2
- package/dist/cjs/addons/pino/index.cjs +0 -30
- package/dist/cjs/addons/pino/index.cjs.map +0 -1
- package/dist/cjs/addons/pino/index.d.cts +0 -2
- package/dist/cjs/addons/prisma/index.cjs +0 -133
- package/dist/cjs/addons/prisma/index.cjs.map +0 -1
- package/dist/cjs/addons/prisma/index.d.cts +0 -2
- package/dist/cjs/addons/registry.cjs +0 -65
- package/dist/cjs/addons/registry.cjs.map +0 -1
- package/dist/cjs/addons/registry.d.cts +0 -5
- package/dist/cjs/addons/types.d.cts +0 -16
- package/dist/cjs/addons/valibot/index.cjs +0 -6
- package/dist/cjs/addons/valibot/index.cjs.map +0 -1
- package/dist/cjs/addons/valibot/index.d.cts +0 -1
- package/dist/cjs/addons/validators.cjs +0 -38
- package/dist/cjs/addons/validators.cjs.map +0 -1
- package/dist/cjs/addons/validators.d.cts +0 -5
- package/dist/cjs/addons/winston/index.cjs +0 -34
- package/dist/cjs/addons/winston/index.cjs.map +0 -1
- package/dist/cjs/addons/winston/index.d.cts +0 -2
- package/dist/cjs/addons/zod/index.cjs +0 -6
- package/dist/cjs/addons/zod/index.cjs.map +0 -1
- package/dist/cjs/addons/zod/index.d.cts +0 -1
- package/dist/cjs/cli.cjs +0 -65
- package/dist/cjs/cli.cjs.map +0 -1
- package/dist/cjs/cli.d.cts +0 -2
- package/dist/cjs/commands/create.cjs +0 -332
- package/dist/cjs/commands/create.cjs.map +0 -1
- package/dist/cjs/commands/create.d.cts +0 -14
- package/dist/cjs/core/json-output.cjs +0 -16
- package/dist/cjs/core/json-output.cjs.map +0 -1
- package/dist/cjs/core/json-output.d.cts +0 -4
- package/dist/cjs/core/package-manager.cjs +0 -56
- package/dist/cjs/core/package-manager.cjs.map +0 -1
- package/dist/cjs/core/package-manager.d.cts +0 -8
- package/dist/cjs/core/parse-options.cjs +0 -95
- package/dist/cjs/core/parse-options.cjs.map +0 -1
- package/dist/cjs/core/parse-options.d.cts +0 -35
- package/dist/cjs/core/project-config.cjs +0 -23
- package/dist/cjs/core/project-config.cjs.map +0 -1
- package/dist/cjs/core/project-config.d.cts +0 -2
- package/dist/cjs/core/resolve-packages.cjs +0 -58
- package/dist/cjs/core/resolve-packages.cjs.map +0 -1
- package/dist/cjs/core/resolve-packages.d.cts +0 -2
- package/dist/cjs/core/scaffold-engine.cjs +0 -72
- package/dist/cjs/core/scaffold-engine.cjs.map +0 -1
- package/dist/cjs/core/scaffold-engine.d.cts +0 -2
- package/dist/cjs/core/targets.cjs +0 -171
- package/dist/cjs/core/targets.cjs.map +0 -1
- package/dist/cjs/core/targets.d.cts +0 -49
- package/dist/cjs/core/types.cjs +0 -52
- package/dist/cjs/core/types.cjs.map +0 -1
- package/dist/cjs/core/types.d.cts +0 -57
- package/dist/cjs/core/validate-project-name.cjs +0 -44
- package/dist/cjs/core/validate-project-name.cjs.map +0 -1
- package/dist/cjs/core/validate-project-name.d.cts +0 -1
- package/dist/cjs/frameworks/index.cjs +0 -116
- package/dist/cjs/frameworks/index.cjs.map +0 -1
- package/dist/cjs/frameworks/index.d.cts +0 -18
- package/dist/cjs/scaffold.d.cts +0 -3
- package/dist/cjs/templates/base.cjs +0 -97
- package/dist/cjs/templates/base.cjs.map +0 -1
- package/dist/cjs/templates/base.d.cts +0 -9
- package/dist/cjs/types.d.cts +0 -1
- package/dist/esm/addons/arktype/index.d.ts +0 -1
- package/dist/esm/addons/arktype/index.js +0 -7
- package/dist/esm/addons/arktype/index.js.map +0 -1
- package/dist/esm/addons/drizzle/index.d.ts +0 -2
- package/dist/esm/addons/drizzle/index.js +0 -131
- package/dist/esm/addons/drizzle/index.js.map +0 -1
- package/dist/esm/addons/kysely/index.d.ts +0 -2
- package/dist/esm/addons/kysely/index.js +0 -103
- package/dist/esm/addons/kysely/index.js.map +0 -1
- package/dist/esm/addons/pino/index.d.ts +0 -2
- package/dist/esm/addons/pino/index.js +0 -30
- package/dist/esm/addons/pino/index.js.map +0 -1
- package/dist/esm/addons/prisma/index.d.ts +0 -2
- package/dist/esm/addons/prisma/index.js +0 -133
- package/dist/esm/addons/prisma/index.js.map +0 -1
- package/dist/esm/addons/registry.d.ts +0 -5
- package/dist/esm/addons/registry.js +0 -63
- package/dist/esm/addons/registry.js.map +0 -1
- package/dist/esm/addons/types.d.ts +0 -16
- package/dist/esm/addons/valibot/index.d.ts +0 -1
- package/dist/esm/addons/valibot/index.js +0 -7
- package/dist/esm/addons/valibot/index.js.map +0 -1
- package/dist/esm/addons/validators.d.ts +0 -5
- package/dist/esm/addons/validators.js +0 -36
- package/dist/esm/addons/validators.js.map +0 -1
- package/dist/esm/addons/winston/index.d.ts +0 -2
- package/dist/esm/addons/winston/index.js +0 -34
- package/dist/esm/addons/winston/index.js.map +0 -1
- package/dist/esm/addons/zod/index.d.ts +0 -1
- package/dist/esm/addons/zod/index.js +0 -7
- package/dist/esm/addons/zod/index.js.map +0 -1
- package/dist/esm/cli.d.ts +0 -2
- package/dist/esm/cli.js +0 -62
- package/dist/esm/cli.js.map +0 -1
- package/dist/esm/commands/create.d.ts +0 -14
- package/dist/esm/commands/create.js +0 -327
- package/dist/esm/commands/create.js.map +0 -1
- package/dist/esm/core/json-output.d.ts +0 -4
- package/dist/esm/core/json-output.js +0 -14
- package/dist/esm/core/json-output.js.map +0 -1
- package/dist/esm/core/package-manager.d.ts +0 -8
- package/dist/esm/core/package-manager.js +0 -53
- package/dist/esm/core/package-manager.js.map +0 -1
- package/dist/esm/core/parse-options.d.ts +0 -35
- package/dist/esm/core/parse-options.js +0 -89
- package/dist/esm/core/parse-options.js.map +0 -1
- package/dist/esm/core/project-config.d.ts +0 -2
- package/dist/esm/core/project-config.js +0 -21
- package/dist/esm/core/project-config.js.map +0 -1
- package/dist/esm/core/resolve-packages.d.ts +0 -2
- package/dist/esm/core/resolve-packages.js +0 -58
- package/dist/esm/core/resolve-packages.js.map +0 -1
- package/dist/esm/core/scaffold-engine.d.ts +0 -2
- package/dist/esm/core/scaffold-engine.js +0 -70
- package/dist/esm/core/scaffold-engine.js.map +0 -1
- package/dist/esm/core/targets.d.ts +0 -49
- package/dist/esm/core/targets.js +0 -166
- package/dist/esm/core/targets.js.map +0 -1
- package/dist/esm/core/types.d.ts +0 -57
- package/dist/esm/core/types.js +0 -45
- package/dist/esm/core/types.js.map +0 -1
- package/dist/esm/core/validate-project-name.d.ts +0 -1
- package/dist/esm/core/validate-project-name.js +0 -42
- package/dist/esm/core/validate-project-name.js.map +0 -1
- package/dist/esm/frameworks/index.d.ts +0 -18
- package/dist/esm/frameworks/index.js +0 -112
- package/dist/esm/frameworks/index.js.map +0 -1
- package/dist/esm/scaffold.d.ts +0 -3
- package/dist/esm/templates/base.d.ts +0 -9
- package/dist/esm/templates/base.js +0 -91
- package/dist/esm/templates/base.js.map +0 -1
- package/dist/esm/types.d.ts +0 -1
- package/src/addons/arktype/index.ts +0 -3
- package/src/addons/valibot/index.ts +0 -3
- package/src/addons/zod/index.ts +0 -3
- package/src/core/json-output.ts +0 -13
- package/src/core/parse-options.ts +0 -167
- package/src/core/project-config.ts +0 -32
- package/src/core/resolve-packages.ts +0 -69
- package/src/core/validate-project-name.ts +0 -55
- package/src/frameworks/index.ts +0 -120
- package/src/scaffold.ts +0 -3
- package/src/types.ts +0 -12
package/src/templates/base.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { BootBinding } from "../addons/types.js";
|
|
2
|
-
import type { ScaffoldContext } from "../core/types.js";
|
|
3
2
|
|
|
4
3
|
export function packageJsonTemplate(
|
|
5
4
|
projectName: string,
|
|
@@ -7,14 +6,13 @@ export function packageJsonTemplate(
|
|
|
7
6
|
): string {
|
|
8
7
|
const pkg = {
|
|
9
8
|
name: projectName,
|
|
10
|
-
version: "
|
|
9
|
+
version: "0.0.1",
|
|
11
10
|
private: true,
|
|
12
11
|
type: "module",
|
|
13
12
|
scripts: {
|
|
14
13
|
dev: "vite",
|
|
15
14
|
build: "vite build",
|
|
16
|
-
|
|
17
|
-
"taser:generate": "taser generate",
|
|
15
|
+
start: "node dist/serve.mjs",
|
|
18
16
|
...scripts,
|
|
19
17
|
},
|
|
20
18
|
};
|
|
@@ -28,13 +26,18 @@ export function tsconfigTemplate(): string {
|
|
|
28
26
|
compilerOptions: {
|
|
29
27
|
target: "ES2022",
|
|
30
28
|
module: "NodeNext",
|
|
29
|
+
moduleResolution: "NodeNext",
|
|
31
30
|
strict: true,
|
|
32
31
|
skipLibCheck: true,
|
|
33
|
-
|
|
34
|
-
isolatedModules: true,
|
|
35
|
-
noEmit: true,
|
|
32
|
+
esModuleInterop: true,
|
|
36
33
|
},
|
|
37
|
-
include: [
|
|
34
|
+
include: [
|
|
35
|
+
"src/**/*",
|
|
36
|
+
"src/.taserjs/**/*",
|
|
37
|
+
"taserjs.config.ts",
|
|
38
|
+
"vite.config.ts",
|
|
39
|
+
"nitro.config.ts",
|
|
40
|
+
],
|
|
38
41
|
},
|
|
39
42
|
null,
|
|
40
43
|
2,
|
|
@@ -42,81 +45,166 @@ export function tsconfigTemplate(): string {
|
|
|
42
45
|
}
|
|
43
46
|
|
|
44
47
|
export function gitignoreTemplate(): string {
|
|
45
|
-
return `node_modules
|
|
46
|
-
dist
|
|
47
|
-
.output
|
|
48
|
-
.
|
|
49
|
-
.DS_Store
|
|
50
|
-
*.log
|
|
48
|
+
return `node_modules/
|
|
49
|
+
dist/
|
|
50
|
+
.output/
|
|
51
|
+
.taserjs/
|
|
51
52
|
.env
|
|
53
|
+
.env.*
|
|
54
|
+
!.env.example
|
|
55
|
+
*.log
|
|
52
56
|
local.db
|
|
53
|
-
drizzle
|
|
57
|
+
drizzle/
|
|
58
|
+
`;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
export function taserConfigTemplate(): string {
|
|
62
|
+
return `import { defineConfig } from "@taserjs/cli";
|
|
63
|
+
|
|
64
|
+
export default defineConfig({
|
|
65
|
+
serverDir: "src",
|
|
66
|
+
routesDir: "routes",
|
|
67
|
+
outputDir: ".taserjs",
|
|
68
|
+
app: "taser.ts",
|
|
69
|
+
});
|
|
70
|
+
`;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
export function viteConfigTemplate(preset: string = "none"): string {
|
|
74
|
+
if (preset === "none") {
|
|
75
|
+
return `import { defineConfig } from "vite";
|
|
76
|
+
import { taser } from "@taserjs/plugin/vite";
|
|
77
|
+
|
|
78
|
+
export default defineConfig({
|
|
79
|
+
plugins: [taser()],
|
|
80
|
+
});
|
|
81
|
+
`;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
return `import { defineConfig } from "vite";
|
|
85
|
+
import { nitro } from "nitro/vite";
|
|
86
|
+
import { taser } from "@taserjs/plugin/vite";
|
|
87
|
+
|
|
88
|
+
export default defineConfig({
|
|
89
|
+
plugins: [taser(), nitro()],
|
|
90
|
+
});
|
|
91
|
+
`;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
export function nitroConfigTemplate(preset: string): string {
|
|
95
|
+
return `import { defineConfig } from "nitro/config";
|
|
96
|
+
import { taser } from "@taserjs/plugin/nitro";
|
|
97
|
+
|
|
98
|
+
export default defineConfig({
|
|
99
|
+
preset: "${preset}",
|
|
100
|
+
modules: [taser({ standalone: true })],
|
|
101
|
+
});
|
|
54
102
|
`;
|
|
55
103
|
}
|
|
56
104
|
|
|
57
105
|
export function contextTemplate(bindings: BootBinding[]): string {
|
|
58
|
-
const imports = bindings.map(
|
|
59
|
-
(binding) => `import { ${binding.factoryName} } from '${binding.importPath}'`,
|
|
60
|
-
);
|
|
106
|
+
const imports = bindings.map((b) => `import { ${b.factoryName} } from "${b.importPath}";`);
|
|
61
107
|
|
|
62
108
|
const bootBody =
|
|
63
|
-
bindings.length > 0
|
|
64
|
-
? bindings.map((binding) => ` ${binding.key}: ${binding.factoryName}(),`).join("\n")
|
|
65
|
-
: "";
|
|
66
|
-
|
|
67
|
-
const bootBlock = bindings.length > 0 ? ` boot: () => ({\n${bootBody}\n }),` : "";
|
|
109
|
+
bindings.length > 0 ? bindings.map((b) => ` ${b.key}: ${b.factoryName}(),`).join("\n") : "";
|
|
68
110
|
|
|
111
|
+
const bootBlock = bindings.length > 0 ? ` boot: () => ({\n${bootBody}\n }),\n` : "";
|
|
69
112
|
const importBlock = imports.length > 0 ? `${imports.join("\n")}\n\n` : "";
|
|
70
113
|
|
|
71
|
-
return `${importBlock}import { createContext } from
|
|
114
|
+
return `${importBlock}import { createContext } from "@taserjs/router";
|
|
72
115
|
|
|
73
116
|
export const context = createContext({
|
|
74
|
-
${bootBlock}
|
|
75
|
-
request: () => ({
|
|
117
|
+
${bootBlock} request: () => ({
|
|
76
118
|
requestId: crypto.randomUUID(),
|
|
77
119
|
}),
|
|
78
|
-
})
|
|
120
|
+
});
|
|
121
|
+
`;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
export function taserTsTemplate(): string {
|
|
125
|
+
return `import { defineTaser } from "@taserjs/router";
|
|
126
|
+
import { context } from "./context.js";
|
|
127
|
+
|
|
128
|
+
export default defineTaser().context(context);
|
|
79
129
|
`;
|
|
80
130
|
}
|
|
81
131
|
|
|
82
132
|
export function rootLayoutTemplate(): string {
|
|
83
|
-
return `import {
|
|
84
|
-
import { t } from '@taserjs/router'
|
|
133
|
+
return `import { t } from "@taserjs/router";
|
|
85
134
|
|
|
86
|
-
export default t.layout(
|
|
87
|
-
|
|
135
|
+
export default t.layout("/*").use(async (_args, next) => {
|
|
136
|
+
return await next();
|
|
137
|
+
});
|
|
88
138
|
`;
|
|
89
139
|
}
|
|
90
140
|
|
|
91
141
|
export function indexRouteTemplate(): string {
|
|
92
|
-
return `import { t } from
|
|
93
|
-
import { json } from '@taserjs/router/reply'
|
|
142
|
+
return `import { t } from "@taserjs/router";
|
|
94
143
|
|
|
95
|
-
export default t.get(
|
|
96
|
-
return json({ message:
|
|
97
|
-
})
|
|
144
|
+
export default t.get("/").handler(() => {
|
|
145
|
+
return Response.json({ message: "Welcome to Taser.js!" });
|
|
146
|
+
});
|
|
98
147
|
`;
|
|
99
148
|
}
|
|
100
149
|
|
|
101
|
-
export function
|
|
102
|
-
|
|
150
|
+
export function staticRoutesGenTemplate(): string {
|
|
151
|
+
return `// @ts-nocheck
|
|
152
|
+
import { createTaserApp } from "@taserjs/runtime";
|
|
153
|
+
import taser from "../taser.js";
|
|
154
|
+
import layout_0 from "../routes/$.js";
|
|
155
|
+
import route_0 from "../routes/index.get.js";
|
|
156
|
+
|
|
157
|
+
export type LayoutTree = {
|
|
158
|
+
"/*": typeof layout_0;
|
|
159
|
+
};
|
|
160
|
+
|
|
161
|
+
export const layoutManifest = {
|
|
162
|
+
"/*": layout_0,
|
|
163
|
+
} as const;
|
|
164
|
+
|
|
165
|
+
export const routeManifest = {
|
|
166
|
+
layouts: layoutManifest,
|
|
167
|
+
routes: {
|
|
168
|
+
"/": {
|
|
169
|
+
GET: {
|
|
170
|
+
layouts: ["/*"],
|
|
171
|
+
route: route_0,
|
|
172
|
+
},
|
|
173
|
+
},
|
|
174
|
+
},
|
|
175
|
+
} as const;
|
|
176
|
+
|
|
177
|
+
export type RouteManifest = typeof routeManifest;
|
|
103
178
|
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
179
|
+
export const app = createTaserApp(routeManifest, taser);
|
|
180
|
+
export default app;
|
|
181
|
+
export const createApp = (overrideTaser?: typeof taser) =>
|
|
182
|
+
createTaserApp(routeManifest, overrideTaser ?? taser);
|
|
107
183
|
|
|
108
|
-
|
|
109
|
-
lines.push(" // ctx.db is available from context boot");
|
|
110
|
-
}
|
|
184
|
+
export type RoutePath = "/";
|
|
111
185
|
|
|
112
|
-
|
|
113
|
-
|
|
186
|
+
export type LayoutHierarchy = {
|
|
187
|
+
"/*": readonly [];
|
|
188
|
+
};
|
|
114
189
|
|
|
115
|
-
|
|
116
|
-
|
|
190
|
+
export type RouteByPathMethod = {
|
|
191
|
+
"/": {
|
|
192
|
+
GET: {
|
|
193
|
+
layouts: readonly ["/*"];
|
|
194
|
+
};
|
|
195
|
+
};
|
|
196
|
+
};
|
|
197
|
+
|
|
198
|
+
export type AppContext = typeof taser.$Infer.Context;
|
|
117
199
|
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
200
|
+
declare module "@taserjs/router" {
|
|
201
|
+
interface RouterRegister {
|
|
202
|
+
RoutePath: RoutePath;
|
|
203
|
+
LayoutTree: LayoutTree;
|
|
204
|
+
LayoutHierarchy: LayoutHierarchy;
|
|
205
|
+
RouteByPathMethod: RouteByPathMethod;
|
|
206
|
+
AppContext: AppContext;
|
|
207
|
+
}
|
|
208
|
+
}
|
|
121
209
|
`;
|
|
122
210
|
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
//#region \0rolldown/runtime.js
|
|
2
|
-
var __create = Object.create;
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
-
var __copyProps = (to, from, except, desc) => {
|
|
9
|
-
if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
|
|
10
|
-
key = keys[i];
|
|
11
|
-
if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
12
|
-
get: ((k) => from[k]).bind(null, key),
|
|
13
|
-
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
14
|
-
});
|
|
15
|
-
}
|
|
16
|
-
return to;
|
|
17
|
-
};
|
|
18
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule || !__hasOwnProp.call(mod, "default") ? __defProp(target, "default", {
|
|
19
|
-
value: mod,
|
|
20
|
-
enumerable: true
|
|
21
|
-
}) : target, mod));
|
|
22
|
-
//#endregion
|
|
23
|
-
exports.__toESM = __toESM;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","names":[],"sources":["../../../../src/addons/arktype/index.ts"],"sourcesContent":["import { ValidatorAddon } from \"../validators.js\";\n\nexport const arktypeAddon = ValidatorAddon(\"arktype\");\n"],"mappings":";AAEA,IAAa,0CAAe,CAAA,CAAA,eAAe,SAAS"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const arktypeAddon: import('../types.js').AddonDefinition;
|
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
//#region src/addons/drizzle/index.ts
|
|
2
|
-
function schemaSource(driver) {
|
|
3
|
-
switch (driver) {
|
|
4
|
-
case "postgres": return `import { pgTable, serial, text } from 'drizzle-orm/pg-core'
|
|
5
|
-
|
|
6
|
-
export const users = pgTable('users', {
|
|
7
|
-
id: serial('id').primaryKey(),
|
|
8
|
-
email: text('email').notNull(),
|
|
9
|
-
})
|
|
10
|
-
`;
|
|
11
|
-
case "mysql": return `import { mysqlTable, serial, varchar } from 'drizzle-orm/mysql-core'
|
|
12
|
-
|
|
13
|
-
export const users = mysqlTable('users', {
|
|
14
|
-
id: serial('id').primaryKey(),
|
|
15
|
-
email: varchar('email', { length: 255 }).notNull(),
|
|
16
|
-
})
|
|
17
|
-
`;
|
|
18
|
-
default: return `import { sqliteTable, integer, text } from 'drizzle-orm/sqlite-core'
|
|
19
|
-
|
|
20
|
-
export const users = sqliteTable('users', {
|
|
21
|
-
id: integer('id').primaryKey({ autoIncrement: true }),
|
|
22
|
-
email: text('email').notNull(),
|
|
23
|
-
})
|
|
24
|
-
`;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
function dbIndexSource(driver) {
|
|
28
|
-
switch (driver) {
|
|
29
|
-
case "postgres": return `import { drizzle } from 'drizzle-orm/node-postgres'
|
|
30
|
-
import pg from 'pg'
|
|
31
|
-
|
|
32
|
-
import * as schema from './schema.js'
|
|
33
|
-
|
|
34
|
-
export function createDb() {
|
|
35
|
-
const pool = new pg.Pool({
|
|
36
|
-
connectionString: process.env.DATABASE_URL,
|
|
37
|
-
})
|
|
38
|
-
return drizzle(pool, { schema })
|
|
39
|
-
}
|
|
40
|
-
`;
|
|
41
|
-
case "mysql": return `import { drizzle } from 'drizzle-orm/mysql2'
|
|
42
|
-
import mysql from 'mysql2/promise'
|
|
43
|
-
|
|
44
|
-
import * as schema from './schema.js'
|
|
45
|
-
|
|
46
|
-
export function createDb() {
|
|
47
|
-
const pool = mysql.createPool(process.env.DATABASE_URL ?? '')
|
|
48
|
-
return drizzle(pool, { schema, mode: 'default' })
|
|
49
|
-
}
|
|
50
|
-
`;
|
|
51
|
-
default: return `import Database from 'better-sqlite3'
|
|
52
|
-
import { drizzle } from 'drizzle-orm/better-sqlite3'
|
|
53
|
-
|
|
54
|
-
import * as schema from './schema.js'
|
|
55
|
-
|
|
56
|
-
export function createDb() {
|
|
57
|
-
const filePath = (process.env.DATABASE_URL ?? 'file:./local.db').replace(/^file:/, '')
|
|
58
|
-
const client = new Database(filePath)
|
|
59
|
-
return drizzle(client, { schema })
|
|
60
|
-
}
|
|
61
|
-
`;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
function drizzleConfigSource(driver) {
|
|
65
|
-
return `import { defineConfig } from 'drizzle-kit'
|
|
66
|
-
|
|
67
|
-
export default defineConfig({
|
|
68
|
-
schema: './src/db/schema.ts',
|
|
69
|
-
out: './drizzle',
|
|
70
|
-
dialect: '${driver === "postgres" ? "postgresql" : driver === "mysql" ? "mysql" : "sqlite"}',
|
|
71
|
-
dbCredentials: {
|
|
72
|
-
url: process.env.DATABASE_URL ?? '',
|
|
73
|
-
},
|
|
74
|
-
})
|
|
75
|
-
`;
|
|
76
|
-
}
|
|
77
|
-
function envExample(driver) {
|
|
78
|
-
switch (driver) {
|
|
79
|
-
case "postgres": return "DATABASE_URL=postgresql://user:password@localhost:5432/mydb\n";
|
|
80
|
-
case "mysql": return "DATABASE_URL=mysql://user:password@localhost:3306/mydb\n";
|
|
81
|
-
default: return "DATABASE_URL=file:./local.db\n";
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
function driverPackages(driver) {
|
|
85
|
-
switch (driver) {
|
|
86
|
-
case "postgres": return ["pg"];
|
|
87
|
-
case "mysql": return ["mysql2"];
|
|
88
|
-
default: return ["better-sqlite3"];
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
function driverDevPackages(driver) {
|
|
92
|
-
switch (driver) {
|
|
93
|
-
case "postgres": return ["@types/pg"];
|
|
94
|
-
case "sqlite": return ["@types/better-sqlite3"];
|
|
95
|
-
default: return [];
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
var drizzleAddon = {
|
|
99
|
-
id: "drizzle",
|
|
100
|
-
category: "database",
|
|
101
|
-
dependencies(ctx) {
|
|
102
|
-
return ["drizzle-orm", ...driverPackages(ctx.driver ?? "sqlite")];
|
|
103
|
-
},
|
|
104
|
-
devDependencies(ctx) {
|
|
105
|
-
return ["drizzle-kit", ...driverDevPackages(ctx.driver ?? "sqlite")];
|
|
106
|
-
},
|
|
107
|
-
scripts() {
|
|
108
|
-
return {
|
|
109
|
-
"db:generate": "drizzle-kit generate",
|
|
110
|
-
"db:push": "drizzle-kit push"
|
|
111
|
-
};
|
|
112
|
-
},
|
|
113
|
-
bootBinding() {
|
|
114
|
-
return {
|
|
115
|
-
key: "db",
|
|
116
|
-
importPath: "./db/index.js",
|
|
117
|
-
factoryName: "createDb"
|
|
118
|
-
};
|
|
119
|
-
},
|
|
120
|
-
async apply(ctx, write) {
|
|
121
|
-
const driver = ctx.driver ?? "sqlite";
|
|
122
|
-
await write("src/db/schema.ts", schemaSource(driver));
|
|
123
|
-
await write("src/db/index.ts", dbIndexSource(driver));
|
|
124
|
-
await write("drizzle.config.ts", drizzleConfigSource(driver));
|
|
125
|
-
await write(".env.example", envExample(driver));
|
|
126
|
-
}
|
|
127
|
-
};
|
|
128
|
-
//#endregion
|
|
129
|
-
exports.drizzleAddon = drizzleAddon;
|
|
130
|
-
|
|
131
|
-
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","names":[],"sources":["../../../../src/addons/drizzle/index.ts"],"sourcesContent":["import type { AddonDefinition } from \"../types.js\";\nimport type { DbDriver } from \"../../core/types.js\";\n\nfunction schemaSource(driver: DbDriver): string {\n switch (driver) {\n case \"postgres\":\n return `import { pgTable, serial, text } from 'drizzle-orm/pg-core'\n\nexport const users = pgTable('users', {\n id: serial('id').primaryKey(),\n email: text('email').notNull(),\n})\n`;\n case \"mysql\":\n return `import { mysqlTable, serial, varchar } from 'drizzle-orm/mysql-core'\n\nexport const users = mysqlTable('users', {\n id: serial('id').primaryKey(),\n email: varchar('email', { length: 255 }).notNull(),\n})\n`;\n case \"sqlite\":\n default:\n return `import { sqliteTable, integer, text } from 'drizzle-orm/sqlite-core'\n\nexport const users = sqliteTable('users', {\n id: integer('id').primaryKey({ autoIncrement: true }),\n email: text('email').notNull(),\n})\n`;\n }\n}\n\nfunction dbIndexSource(driver: DbDriver): string {\n switch (driver) {\n case \"postgres\":\n return `import { drizzle } from 'drizzle-orm/node-postgres'\nimport pg from 'pg'\n\nimport * as schema from './schema.js'\n\nexport function createDb() {\n const pool = new pg.Pool({\n connectionString: process.env.DATABASE_URL,\n })\n return drizzle(pool, { schema })\n}\n`;\n case \"mysql\":\n return `import { drizzle } from 'drizzle-orm/mysql2'\nimport mysql from 'mysql2/promise'\n\nimport * as schema from './schema.js'\n\nexport function createDb() {\n const pool = mysql.createPool(process.env.DATABASE_URL ?? '')\n return drizzle(pool, { schema, mode: 'default' })\n}\n`;\n case \"sqlite\":\n default:\n return `import Database from 'better-sqlite3'\nimport { drizzle } from 'drizzle-orm/better-sqlite3'\n\nimport * as schema from './schema.js'\n\nexport function createDb() {\n const filePath = (process.env.DATABASE_URL ?? 'file:./local.db').replace(/^file:/, '')\n const client = new Database(filePath)\n return drizzle(client, { schema })\n}\n`;\n }\n}\n\nfunction drizzleConfigSource(driver: DbDriver): string {\n const dialect = driver === \"postgres\" ? \"postgresql\" : driver === \"mysql\" ? \"mysql\" : \"sqlite\";\n return `import { defineConfig } from 'drizzle-kit'\n\nexport default defineConfig({\n schema: './src/db/schema.ts',\n out: './drizzle',\n dialect: '${dialect}',\n dbCredentials: {\n url: process.env.DATABASE_URL ?? '',\n },\n})\n`;\n}\n\nfunction envExample(driver: DbDriver): string {\n switch (driver) {\n case \"postgres\":\n return \"DATABASE_URL=postgresql://user:password@localhost:5432/mydb\\n\";\n case \"mysql\":\n return \"DATABASE_URL=mysql://user:password@localhost:3306/mydb\\n\";\n case \"sqlite\":\n default:\n return \"DATABASE_URL=file:./local.db\\n\";\n }\n}\n\nfunction driverPackages(driver: DbDriver): string[] {\n switch (driver) {\n case \"postgres\":\n return [\"pg\"];\n case \"mysql\":\n return [\"mysql2\"];\n case \"sqlite\":\n default:\n return [\"better-sqlite3\"];\n }\n}\n\nfunction driverDevPackages(driver: DbDriver): string[] {\n switch (driver) {\n case \"postgres\":\n return [\"@types/pg\"];\n case \"sqlite\":\n return [\"@types/better-sqlite3\"];\n case \"mysql\":\n default:\n return [];\n }\n}\n\nexport const drizzleAddon: AddonDefinition = {\n id: \"drizzle\",\n category: \"database\",\n dependencies(ctx) {\n const driver = ctx.driver ?? \"sqlite\";\n return [\"drizzle-orm\", ...driverPackages(driver)];\n },\n devDependencies(ctx) {\n const driver = ctx.driver ?? \"sqlite\";\n return [\"drizzle-kit\", ...driverDevPackages(driver)];\n },\n scripts() {\n return {\n \"db:generate\": \"drizzle-kit generate\",\n \"db:push\": \"drizzle-kit push\",\n };\n },\n bootBinding() {\n return {\n key: \"db\",\n importPath: \"./db/index.js\",\n factoryName: \"createDb\",\n };\n },\n async apply(ctx, write) {\n const driver = ctx.driver ?? \"sqlite\";\n await write(\"src/db/schema.ts\", schemaSource(driver));\n await write(\"src/db/index.ts\", dbIndexSource(driver));\n await write(\"drizzle.config.ts\", drizzleConfigSource(driver));\n await write(\".env.example\", envExample(driver));\n },\n};\n"],"mappings":";AAGA,SAAS,aAAa,QAA0B;CAC9C,QAAQ,QAAR;EACE,KAAK,YACH,OAAO;;;;;;;EAOT,KAAK,SACH,OAAO;;;;;;;EAQT,SACE,OAAO;;;;;;;CAOX;AACF;AAEA,SAAS,cAAc,QAA0B;CAC/C,QAAQ,QAAR;EACE,KAAK,YACH,OAAO;;;;;;;;;;;;EAYT,KAAK,SACH,OAAO;;;;;;;;;;EAWT,SACE,OAAO;;;;;;;;;;;CAWX;AACF;AAEA,SAAS,oBAAoB,QAA0B;CAErD,OAAO;;;;;cADS,WAAW,aAAa,eAAe,WAAW,UAAU,UAAU,SAMlE;;;;;;AAMtB;AAEA,SAAS,WAAW,QAA0B;CAC5C,QAAQ,QAAR;EACE,KAAK,YACH,OAAO;EACT,KAAK,SACH,OAAO;EAET,SACE,OAAO;CACX;AACF;AAEA,SAAS,eAAe,QAA4B;CAClD,QAAQ,QAAR;EACE,KAAK,YACH,OAAO,CAAC,IAAI;EACd,KAAK,SACH,OAAO,CAAC,QAAQ;EAElB,SACE,OAAO,CAAC,gBAAgB;CAC5B;AACF;AAEA,SAAS,kBAAkB,QAA4B;CACrD,QAAQ,QAAR;EACE,KAAK,YACH,OAAO,CAAC,WAAW;EACrB,KAAK,UACH,OAAO,CAAC,uBAAuB;EAEjC,SACE,OAAO,CAAC;CACZ;AACF;AAEA,IAAa,eAAgC;CAC3C,IAAI;CACJ,UAAU;CACV,aAAa,KAAK;EAEhB,OAAO,CAAC,eAAe,GAAG,eADX,IAAI,UAAU,QACkB,CAAC;CAClD;CACA,gBAAgB,KAAK;EAEnB,OAAO,CAAC,eAAe,GAAG,kBADX,IAAI,UAAU,QACqB,CAAC;CACrD;CACA,UAAU;EACR,OAAO;GACL,eAAe;GACf,WAAW;EACb;CACF;CACA,cAAc;EACZ,OAAO;GACL,KAAK;GACL,YAAY;GACZ,aAAa;EACf;CACF;CACA,MAAM,MAAM,KAAK,OAAO;EACtB,MAAM,SAAS,IAAI,UAAU;EAC7B,MAAM,MAAM,oBAAoB,aAAa,MAAM,CAAC;EACpD,MAAM,MAAM,mBAAmB,cAAc,MAAM,CAAC;EACpD,MAAM,MAAM,qBAAqB,oBAAoB,MAAM,CAAC;EAC5D,MAAM,MAAM,gBAAgB,WAAW,MAAM,CAAC;CAChD;AACF"}
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
//#region src/addons/kysely/index.ts
|
|
2
|
-
function schemaTypesSource() {
|
|
3
|
-
return `export interface UserTable {
|
|
4
|
-
id: number
|
|
5
|
-
email: string
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
export interface DB {
|
|
9
|
-
users: UserTable
|
|
10
|
-
}
|
|
11
|
-
`;
|
|
12
|
-
}
|
|
13
|
-
function dbIndexSource(driver) {
|
|
14
|
-
switch (driver) {
|
|
15
|
-
case "postgres": return `import { Kysely, PostgresDialect } from 'kysely'
|
|
16
|
-
import pg from 'pg'
|
|
17
|
-
|
|
18
|
-
import type { DB } from './schema.js'
|
|
19
|
-
|
|
20
|
-
export function createDb() {
|
|
21
|
-
const pool = new pg.Pool({
|
|
22
|
-
connectionString: process.env.DATABASE_URL,
|
|
23
|
-
})
|
|
24
|
-
return new Kysely<DB>({
|
|
25
|
-
dialect: new PostgresDialect({ pool }),
|
|
26
|
-
})
|
|
27
|
-
}
|
|
28
|
-
`;
|
|
29
|
-
case "mysql": return `import { Kysely, MysqlDialect } from 'kysely'
|
|
30
|
-
import { createPool } from 'mysql2'
|
|
31
|
-
|
|
32
|
-
import type { DB } from './schema.js'
|
|
33
|
-
|
|
34
|
-
export function createDb() {
|
|
35
|
-
const pool = createPool(process.env.DATABASE_URL ?? '')
|
|
36
|
-
return new Kysely<DB>({
|
|
37
|
-
dialect: new MysqlDialect({ pool }),
|
|
38
|
-
})
|
|
39
|
-
}
|
|
40
|
-
`;
|
|
41
|
-
default: return `import Database from 'better-sqlite3'
|
|
42
|
-
import { Kysely, SqliteDialect } from 'kysely'
|
|
43
|
-
|
|
44
|
-
import type { DB } from './schema.js'
|
|
45
|
-
|
|
46
|
-
export function createDb() {
|
|
47
|
-
const filePath = (process.env.DATABASE_URL ?? 'file:./local.db').replace(/^file:/, '')
|
|
48
|
-
const database = new Database(filePath)
|
|
49
|
-
return new Kysely<DB>({
|
|
50
|
-
dialect: new SqliteDialect({ database }),
|
|
51
|
-
})
|
|
52
|
-
}
|
|
53
|
-
`;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
function driverPackages(driver) {
|
|
57
|
-
switch (driver) {
|
|
58
|
-
case "postgres": return ["pg"];
|
|
59
|
-
case "mysql": return ["mysql2"];
|
|
60
|
-
default: return ["better-sqlite3"];
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
function driverDevPackages(driver) {
|
|
64
|
-
switch (driver) {
|
|
65
|
-
case "postgres": return ["@types/pg"];
|
|
66
|
-
case "sqlite": return ["@types/better-sqlite3"];
|
|
67
|
-
default: return [];
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
function envExample(driver) {
|
|
71
|
-
switch (driver) {
|
|
72
|
-
case "postgres": return "DATABASE_URL=postgresql://user:password@localhost:5432/mydb\n";
|
|
73
|
-
case "mysql": return "DATABASE_URL=mysql://user:password@localhost:3306/mydb\n";
|
|
74
|
-
default: return "DATABASE_URL=file:./local.db\n";
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
var kyselyAddon = {
|
|
78
|
-
id: "kysely",
|
|
79
|
-
category: "database",
|
|
80
|
-
dependencies(ctx) {
|
|
81
|
-
return ["kysely", ...driverPackages(ctx.driver ?? "sqlite")];
|
|
82
|
-
},
|
|
83
|
-
devDependencies(ctx) {
|
|
84
|
-
return driverDevPackages(ctx.driver ?? "sqlite");
|
|
85
|
-
},
|
|
86
|
-
bootBinding() {
|
|
87
|
-
return {
|
|
88
|
-
key: "db",
|
|
89
|
-
importPath: "./db/index.js",
|
|
90
|
-
factoryName: "createDb"
|
|
91
|
-
};
|
|
92
|
-
},
|
|
93
|
-
async apply(ctx, write) {
|
|
94
|
-
const driver = ctx.driver ?? "sqlite";
|
|
95
|
-
await write("src/db/schema.ts", schemaTypesSource());
|
|
96
|
-
await write("src/db/index.ts", dbIndexSource(driver));
|
|
97
|
-
await write(".env.example", envExample(driver));
|
|
98
|
-
}
|
|
99
|
-
};
|
|
100
|
-
//#endregion
|
|
101
|
-
exports.kyselyAddon = kyselyAddon;
|
|
102
|
-
|
|
103
|
-
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","names":[],"sources":["../../../../src/addons/kysely/index.ts"],"sourcesContent":["import type { AddonDefinition } from \"../types.js\";\nimport type { DbDriver } from \"../../core/types.js\";\n\nfunction schemaTypesSource(): string {\n return `export interface UserTable {\n id: number\n email: string\n}\n\nexport interface DB {\n users: UserTable\n}\n`;\n}\n\nfunction dbIndexSource(driver: DbDriver): string {\n switch (driver) {\n case \"postgres\":\n return `import { Kysely, PostgresDialect } from 'kysely'\nimport pg from 'pg'\n\nimport type { DB } from './schema.js'\n\nexport function createDb() {\n const pool = new pg.Pool({\n connectionString: process.env.DATABASE_URL,\n })\n return new Kysely<DB>({\n dialect: new PostgresDialect({ pool }),\n })\n}\n`;\n case \"mysql\":\n return `import { Kysely, MysqlDialect } from 'kysely'\nimport { createPool } from 'mysql2'\n\nimport type { DB } from './schema.js'\n\nexport function createDb() {\n const pool = createPool(process.env.DATABASE_URL ?? '')\n return new Kysely<DB>({\n dialect: new MysqlDialect({ pool }),\n })\n}\n`;\n case \"sqlite\":\n default:\n return `import Database from 'better-sqlite3'\nimport { Kysely, SqliteDialect } from 'kysely'\n\nimport type { DB } from './schema.js'\n\nexport function createDb() {\n const filePath = (process.env.DATABASE_URL ?? 'file:./local.db').replace(/^file:/, '')\n const database = new Database(filePath)\n return new Kysely<DB>({\n dialect: new SqliteDialect({ database }),\n })\n}\n`;\n }\n}\n\nfunction driverPackages(driver: DbDriver): string[] {\n switch (driver) {\n case \"postgres\":\n return [\"pg\"];\n case \"mysql\":\n return [\"mysql2\"];\n case \"sqlite\":\n default:\n return [\"better-sqlite3\"];\n }\n}\n\nfunction driverDevPackages(driver: DbDriver): string[] {\n switch (driver) {\n case \"postgres\":\n return [\"@types/pg\"];\n case \"sqlite\":\n return [\"@types/better-sqlite3\"];\n case \"mysql\":\n default:\n return [];\n }\n}\n\nfunction envExample(driver: DbDriver): string {\n switch (driver) {\n case \"postgres\":\n return \"DATABASE_URL=postgresql://user:password@localhost:5432/mydb\\n\";\n case \"mysql\":\n return \"DATABASE_URL=mysql://user:password@localhost:3306/mydb\\n\";\n case \"sqlite\":\n default:\n return \"DATABASE_URL=file:./local.db\\n\";\n }\n}\n\nexport const kyselyAddon: AddonDefinition = {\n id: \"kysely\",\n category: \"database\",\n dependencies(ctx) {\n const driver = ctx.driver ?? \"sqlite\";\n return [\"kysely\", ...driverPackages(driver)];\n },\n devDependencies(ctx) {\n const driver = ctx.driver ?? \"sqlite\";\n return driverDevPackages(driver);\n },\n bootBinding() {\n return {\n key: \"db\",\n importPath: \"./db/index.js\",\n factoryName: \"createDb\",\n };\n },\n async apply(ctx, write) {\n const driver = ctx.driver ?? \"sqlite\";\n await write(\"src/db/schema.ts\", schemaTypesSource());\n await write(\"src/db/index.ts\", dbIndexSource(driver));\n await write(\".env.example\", envExample(driver));\n },\n};\n"],"mappings":";AAGA,SAAS,oBAA4B;CACnC,OAAO;;;;;;;;;AAST;AAEA,SAAS,cAAc,QAA0B;CAC/C,QAAQ,QAAR;EACE,KAAK,YACH,OAAO;;;;;;;;;;;;;;EAcT,KAAK,SACH,OAAO;;;;;;;;;;;;EAaT,SACE,OAAO;;;;;;;;;;;;;CAaX;AACF;AAEA,SAAS,eAAe,QAA4B;CAClD,QAAQ,QAAR;EACE,KAAK,YACH,OAAO,CAAC,IAAI;EACd,KAAK,SACH,OAAO,CAAC,QAAQ;EAElB,SACE,OAAO,CAAC,gBAAgB;CAC5B;AACF;AAEA,SAAS,kBAAkB,QAA4B;CACrD,QAAQ,QAAR;EACE,KAAK,YACH,OAAO,CAAC,WAAW;EACrB,KAAK,UACH,OAAO,CAAC,uBAAuB;EAEjC,SACE,OAAO,CAAC;CACZ;AACF;AAEA,SAAS,WAAW,QAA0B;CAC5C,QAAQ,QAAR;EACE,KAAK,YACH,OAAO;EACT,KAAK,SACH,OAAO;EAET,SACE,OAAO;CACX;AACF;AAEA,IAAa,cAA+B;CAC1C,IAAI;CACJ,UAAU;CACV,aAAa,KAAK;EAEhB,OAAO,CAAC,UAAU,GAAG,eADN,IAAI,UAAU,QACa,CAAC;CAC7C;CACA,gBAAgB,KAAK;EAEnB,OAAO,kBADQ,IAAI,UAAU,QACE;CACjC;CACA,cAAc;EACZ,OAAO;GACL,KAAK;GACL,YAAY;GACZ,aAAa;EACf;CACF;CACA,MAAM,MAAM,KAAK,OAAO;EACtB,MAAM,SAAS,IAAI,UAAU;EAC7B,MAAM,MAAM,oBAAoB,kBAAkB,CAAC;EACnD,MAAM,MAAM,mBAAmB,cAAc,MAAM,CAAC;EACpD,MAAM,MAAM,gBAAgB,WAAW,MAAM,CAAC;CAChD;AACF"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
//#region src/addons/pino/index.ts
|
|
2
|
-
var pinoAddon = {
|
|
3
|
-
id: "pino",
|
|
4
|
-
category: "logger",
|
|
5
|
-
dependencies() {
|
|
6
|
-
return ["pino"];
|
|
7
|
-
},
|
|
8
|
-
devDependencies() {
|
|
9
|
-
return [];
|
|
10
|
-
},
|
|
11
|
-
bootBinding() {
|
|
12
|
-
return {
|
|
13
|
-
key: "logger",
|
|
14
|
-
importPath: "./logger.js",
|
|
15
|
-
factoryName: "createLogger"
|
|
16
|
-
};
|
|
17
|
-
},
|
|
18
|
-
async apply(_ctx, write) {
|
|
19
|
-
await write("src/logger.ts", `import pino from 'pino'
|
|
20
|
-
|
|
21
|
-
export function createLogger() {
|
|
22
|
-
return pino({ level: process.env.LOG_LEVEL ?? 'info' })
|
|
23
|
-
}
|
|
24
|
-
`);
|
|
25
|
-
}
|
|
26
|
-
};
|
|
27
|
-
//#endregion
|
|
28
|
-
exports.pinoAddon = pinoAddon;
|
|
29
|
-
|
|
30
|
-
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","names":[],"sources":["../../../../src/addons/pino/index.ts"],"sourcesContent":["import type { AddonDefinition } from \"../types.js\";\n\nexport const pinoAddon: AddonDefinition = {\n id: \"pino\",\n category: \"logger\",\n dependencies() {\n return [\"pino\"];\n },\n devDependencies() {\n return [];\n },\n bootBinding() {\n return {\n key: \"logger\",\n importPath: \"./logger.js\",\n factoryName: \"createLogger\",\n };\n },\n async apply(_ctx, write) {\n await write(\n \"src/logger.ts\",\n `import pino from 'pino'\n\nexport function createLogger() {\n return pino({ level: process.env.LOG_LEVEL ?? 'info' })\n}\n`,\n );\n },\n};\n"],"mappings":";AAEA,IAAa,YAA6B;CACxC,IAAI;CACJ,UAAU;CACV,eAAe;EACb,OAAO,CAAC,MAAM;CAChB;CACA,kBAAkB;EAChB,OAAO,CAAC;CACV;CACA,cAAc;EACZ,OAAO;GACL,KAAK;GACL,YAAY;GACZ,aAAa;EACf;CACF;CACA,MAAM,MAAM,MAAM,OAAO;EACvB,MAAM,MACJ,iBACA;;;;;CAMF;CACF;AACF"}
|