@wervt/nuxt 0.1.0 → 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/dist/module.js CHANGED
@@ -1,6 +1,7 @@
1
1
  import { resolveAppName, setupDev } from "./dev.js";
2
- import { addImports, addPlugin, addServerHandler, createResolver, defineNuxtModule, hasNuxtModule } from "nuxt/kit";
2
+ import { addImports, addPlugin, addServerHandler, createResolver, defineNuxtModule, hasNuxtModule, installModule } from "nuxt/kit";
3
3
  import { builtinModules } from "node:module";
4
+ import evlog from "evlog/nuxt";
4
5
  //#region src/module.ts
5
6
  const CONTENT_DATABASE = {
6
7
  type: "postgres",
@@ -15,6 +16,22 @@ var module_default = defineNuxtModule({
15
16
  const resolver = createResolver(import.meta.url);
16
17
  const nitro = nuxt.options.nitro;
17
18
  if (!nuxt.options.dev) nitro.preset ||= "deno-server";
19
+ if (!hasNuxtModule("evlog/nuxt", nuxt)) {
20
+ const app = await resolveAppName(nuxt.options.rootDir, options.app);
21
+ const config = nuxt.options;
22
+ config.evlog = {
23
+ env: { service: app },
24
+ redact: true,
25
+ exclude: [
26
+ "/_wervt/**",
27
+ "/_nuxt/**",
28
+ "/__nuxt_error",
29
+ "/_fonts/**"
30
+ ],
31
+ ...config.evlog
32
+ };
33
+ await installModule(evlog, void 0, nuxt);
34
+ }
18
35
  const useContentDatabase = !nuxt.options.dev && hasNuxtModule("@nuxt/content", nuxt);
19
36
  if (useContentDatabase) {
20
37
  const options = nuxt.options;
@@ -30,7 +47,7 @@ var module_default = defineNuxtModule({
30
47
  inline: [
31
48
  ...options.externals?.inline ?? [],
32
49
  resolver.resolve("./runtime"),
33
- /(^|\/node_modules\/)(drizzle-orm|postgres|valibot|@electric-sql\/client)(\/|$)/
50
+ /(^|\/node_modules\/)(drizzle-orm|postgres|valibot|@electric-sql\/client|evlog)(\/|$)/
34
51
  ]
35
52
  };
36
53
  const exclude = options.esbuild?.options?.exclude ?? /node_modules/;
@@ -1,6 +1,7 @@
1
1
  import { WervtUser } from "../shared/user.js";
2
2
  import { useDb } from "./db.js";
3
+ import { createEvlogError, log, useLogger } from "./logger.js";
3
4
  import { ShapeOptions, proxyShape } from "./shape.js";
4
5
  import { useWervtUser } from "./user.js";
5
6
  import { SafeResult, useSafeValidatedBody, useSafeValidatedParams, useSafeValidatedQuery, useValidatedBody, useValidatedParams, useValidatedQuery, vh } from "./validate.js";
6
- export { type SafeResult, type ShapeOptions, type WervtUser, proxyShape, useDb, useSafeValidatedBody, useSafeValidatedParams, useSafeValidatedQuery, useValidatedBody, useValidatedParams, useValidatedQuery, useWervtUser, vh };
7
+ export { type SafeResult, type ShapeOptions, type WervtUser, createEvlogError, log, proxyShape, useDb, useLogger, useSafeValidatedBody, useSafeValidatedParams, useSafeValidatedQuery, useValidatedBody, useValidatedParams, useValidatedQuery, useWervtUser, vh };
@@ -1,5 +1,6 @@
1
1
  import { useDb } from "./db.js";
2
+ import { createEvlogError, log, useLogger } from "./logger.js";
2
3
  import { proxyShape } from "./shape.js";
3
4
  import { useWervtUser } from "./user.js";
4
5
  import { useSafeValidatedBody, useSafeValidatedParams, useSafeValidatedQuery, useValidatedBody, useValidatedParams, useValidatedQuery, vh } from "./validate.js";
5
- export { proxyShape, useDb, useSafeValidatedBody, useSafeValidatedParams, useSafeValidatedQuery, useValidatedBody, useValidatedParams, useValidatedQuery, useWervtUser, vh };
6
+ export { createEvlogError, log, proxyShape, useDb, useLogger, useSafeValidatedBody, useSafeValidatedParams, useSafeValidatedQuery, useValidatedBody, useValidatedParams, useValidatedQuery, useWervtUser, vh };
@@ -0,0 +1,7 @@
1
+ import { RequestEvent } from "nuxt/server";
2
+ import { createEvlogError, log } from "evlog";
3
+ //#region src/runtime/server/logger.d.ts
4
+ /** The request's wide event: `useLogger(event).set({ user: { id } })` adds fields to it. */
5
+ export declare function useLogger<T extends object = Record<string, unknown>>(event: RequestEvent, service?: string): import("evlog").AuditableLogger<T>;
6
+ //#endregion
7
+ export { createEvlogError, log };
@@ -0,0 +1,8 @@
1
+ import { createEvlogError, log, useLogger as useLogger$1 } from "evlog";
2
+ //#region src/runtime/server/logger.ts
3
+ /** The request's wide event: `useLogger(event).set({ user: { id } })` adds fields to it. */
4
+ function useLogger(event, service) {
5
+ return useLogger$1(event, service);
6
+ }
7
+ //#endregion
8
+ export { createEvlogError, log, useLogger };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wervt/nuxt",
3
- "version": "0.1.0",
3
+ "version": "0.2.1",
4
4
  "description": "Nuxt module for apps hosted on wervt: database, live data and runtime setup.",
5
5
  "keywords": [
6
6
  "drizzle",
@@ -39,6 +39,7 @@
39
39
  },
40
40
  "dependencies": {
41
41
  "@electric-sql/client": "^1.5.28",
42
+ "evlog": "^2.30.0",
42
43
  "postgres": "^3.4.9",
43
44
  "valibot": "^1.5.0"
44
45
  },