@devmoods/express-extras 0.47.4 → 0.48.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/config.d.ts CHANGED
@@ -1,26 +1,8 @@
1
1
  export declare const config: {
2
- extend: <T extends Record<string, unknown>>(appConfig: T) => {
3
- value: {
4
- CI: boolean;
5
- PORT: number;
6
- AUTH_TOKEN_EXPIRES_IN: number;
7
- AUTH_TEMP_TOKEN_EXPIRES_IN: number;
8
- AUTH_SECRET: string;
9
- REDIS_URL: string;
10
- POSTGRES_URL: string;
11
- SENTRY_DSN: string;
12
- LOG_LEVEL: string;
13
- LOG_SQL: boolean;
14
- NODE_ENV: string;
15
- CSRF_SECRET: string;
16
- READINESS_PERIOD_MS: number;
17
- GRACE_PERIOD_MS: number;
18
- SLACK_WEBHOOK_URL: string;
19
- } & T;
20
- };
21
2
  value: {
22
3
  CI: boolean;
23
4
  PORT: number;
5
+ PUBLIC_URL: string;
24
6
  AUTH_TOKEN_EXPIRES_IN: number;
25
7
  AUTH_TEMP_TOKEN_EXPIRES_IN: number;
26
8
  AUTH_SECRET: string;
@@ -34,5 +16,27 @@ export declare const config: {
34
16
  READINESS_PERIOD_MS: number;
35
17
  GRACE_PERIOD_MS: number;
36
18
  SLACK_WEBHOOK_URL: string;
19
+ VITE_USE_DEV_SERVER: boolean;
37
20
  };
38
21
  };
22
+ export declare function extendConfig<T extends Record<string, unknown>>(appConfig: T): {
23
+ value: {
24
+ CI: boolean;
25
+ PORT: number;
26
+ PUBLIC_URL: string;
27
+ AUTH_TOKEN_EXPIRES_IN: number;
28
+ AUTH_TEMP_TOKEN_EXPIRES_IN: number;
29
+ AUTH_SECRET: string;
30
+ REDIS_URL: string;
31
+ POSTGRES_URL: string;
32
+ SENTRY_DSN: string;
33
+ LOG_LEVEL: string;
34
+ LOG_SQL: boolean;
35
+ NODE_ENV: string;
36
+ CSRF_SECRET: string;
37
+ READINESS_PERIOD_MS: number;
38
+ GRACE_PERIOD_MS: number;
39
+ SLACK_WEBHOOK_URL: string;
40
+ VITE_USE_DEV_SERVER: boolean;
41
+ } & T;
42
+ };
package/dist/config.js CHANGED
@@ -1,17 +1,11 @@
1
1
  import { readEnv } from './utils.js';
2
2
  function lazy(fn) {
3
3
  return { value: fn() };
4
- // return {
5
- // get value() {
6
- // const value = fn();
7
- // Object.defineProperty(this, 'value', { value });
8
- // return value;
9
- // },
10
- // };
11
4
  }
12
- const baseConfig = () => ({
5
+ const baseConfig = {
13
6
  CI: readEnv.boolean('CI', false),
14
7
  PORT: readEnv.number('PORT', 0),
8
+ PUBLIC_URL: readEnv('PUBLIC_URL', ''),
15
9
  AUTH_TOKEN_EXPIRES_IN: readEnv.number('AUTH_TOKEN_EXPIRES', 3600 * 24 * 30), // 30 days
16
10
  AUTH_TEMP_TOKEN_EXPIRES_IN: readEnv.number('AUTH_TEMP_TOKEN_EXPIRES', 3600),
17
11
  AUTH_SECRET: readEnv('AUTH_JWT_SECRET', ''),
@@ -25,11 +19,9 @@ const baseConfig = () => ({
25
19
  READINESS_PERIOD_MS: readEnv.number('READINESS_PERIOD_MS', 0),
26
20
  GRACE_PERIOD_MS: readEnv.number('GRACE_PERIOD_MS', 20000),
27
21
  SLACK_WEBHOOK_URL: readEnv('SLACK_WEBHOOK_URL', ''),
28
- });
29
- export const config = {
30
- ...lazy(baseConfig),
31
- extend: (appConfig) => {
32
- const base = config.value;
33
- return lazy(() => ({ ...base, ...appConfig }));
34
- },
22
+ VITE_USE_DEV_SERVER: readEnv.boolean('VITE_USE_DEV_SERVER', false),
35
23
  };
24
+ export const config = lazy(() => baseConfig);
25
+ export function extendConfig(appConfig) {
26
+ return lazy(() => Object.assign(baseConfig, appConfig));
27
+ }
package/dist/vite/ssr.js CHANGED
@@ -3,9 +3,9 @@ import * as path from 'node:path';
3
3
  import express, {} from 'express';
4
4
  import { createServer as createViteServer } from 'vite';
5
5
  import {} from './types.js';
6
+ import { config } from '../config.js';
6
7
  import { route, useCspNonce } from '../middleware.js';
7
- import { readEnv } from '../utils.js';
8
- export async function createSsrMiddleware({ root = process.cwd(), getInitialData = async () => ({}), useDevServer = readEnv.boolean('VITE_USE_DEV_SERVER', false), } = {}) {
8
+ export async function createSsrMiddleware({ root = process.cwd(), getInitialData = async () => ({}), useDevServer = config.value.VITE_USE_DEV_SERVER, } = {}) {
9
9
  const resolve = (p) => path.resolve(root, p);
10
10
  let vite;
11
11
  const middlewares = [];
@@ -27,8 +27,7 @@ export async function createSsrMiddleware({ root = process.cwd(), getInitialData
27
27
  render = (await vite.ssrLoadModule('/src/entry-server.tsx')).render;
28
28
  }
29
29
  else {
30
- // @ts-expect-error foo foo fo
31
- const result = await import('../../dist/server/entry-server.js');
30
+ const result = await import(path.join(root, 'dist/server/entry-server.js'));
32
31
  render = result.render;
33
32
  }
34
33
  const rendered = await render(req, res, {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@devmoods/express-extras",
3
- "version": "0.47.4",
3
+ "version": "0.48.1",
4
4
  "description": "Kubernetes-ready utilities for rapid Node.js application development",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",