nesties 1.1.22 → 1.1.24

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.
@@ -1,3 +1,5 @@
1
1
  import { I18nModuleBase } from './i18n-token';
2
+ import { I18nModuleOptions } from './i18n-module.options';
2
3
  export declare class I18nModule extends I18nModuleBase {
4
+ static forRoot(options: I18nModuleOptions): void;
3
5
  }
@@ -1,17 +1,18 @@
1
1
  import { ExecutionContext } from '@nestjs/common';
2
2
  import { I18nModuleOptions } from './i18n-module.options';
3
3
  import { ModuleRef } from '@nestjs/core';
4
+ import { ParamResolverBase } from '../resolver';
4
5
  import { I18n } from 'nfkit';
5
6
  import { I18nNesties } from './i18n.types';
6
7
  export declare class I18nService extends I18n<I18nNesties.Ex> {
7
8
  private i18nServiceOptions;
8
9
  private moduleRef;
9
- constructor(i18nServiceOptions: I18nModuleOptions, moduleRef: ModuleRef);
10
+ private resolver;
11
+ constructor(i18nServiceOptions: I18nModuleOptions, moduleRef: ModuleRef, resolver: ParamResolverBase<string>);
10
12
  private _shadowMiddlewareMap;
11
13
  private logger;
12
14
  middleware(mw: I18nNesties.Middleware, prior?: boolean): this;
13
15
  removeMiddleware(mw: I18nNesties.Middleware): this;
14
- private resolver;
15
16
  getExactLocaleFromRequest(ctx: ExecutionContext): Promise<string>;
16
17
  translateRequest(ctx: ExecutionContext, obj: any): Promise<any>;
17
18
  }
@@ -0,0 +1,8 @@
1
+ import { I18nService } from './i18n.service';
2
+ export declare class LocaleContext {
3
+ private localeInput;
4
+ private i18nService;
5
+ constructor(localeInput: string, i18nService: I18nService);
6
+ locale: string;
7
+ translate<T>(v: T): Promise<T>;
8
+ }
@@ -0,0 +1,3 @@
1
+ export * from './resolver';
2
+ export * from './lambda';
3
+ export * from './api-inject';
@@ -0,0 +1,10 @@
1
+ import { Awaitable } from 'nfkit';
2
+ import { AnyReq, ParamResolverBase, TransformParamResolver } from './resolver';
3
+ import { ModuleRef } from '@nestjs/core';
4
+ export declare const createLambdaParamResolver: <T, U, Req extends AnyReq = AnyReq>(cb: (param: T, ref: ModuleRef, req: Req) => Awaitable<U>) => (resolver: ParamResolverBase<T>) => TransformParamResolver<T, U, Req>;
5
+ export declare const ParseIntParamResolver: (resolver: ParamResolverBase<string, AnyReq>) => TransformParamResolver<string, string | number, AnyReq>;
6
+ export declare const ParseFloatParamResolver: (resolver: ParamResolverBase<string, AnyReq>) => TransformParamResolver<string, string | number, AnyReq>;
7
+ export declare const ParseBoolParamResolver: (resolver: ParamResolverBase<any, AnyReq>) => TransformParamResolver<any, boolean, AnyReq>;
8
+ export declare const ParseDateParamResolver: (resolver: ParamResolverBase<string | number | Date, AnyReq>) => TransformParamResolver<string | number | Date, string | number | Date, AnyReq>;
9
+ export declare const ParseBase64ParamResolver: (resolver: ParamResolverBase<string, AnyReq>) => TransformParamResolver<string, string | Buffer, AnyReq>;
10
+ export declare const DefaultValueParamResolver: <T>(r: ParamResolverBase<T>, defaultValue: T) => TransformParamResolver<T, T, AnyReq>;
@@ -1,10 +1,10 @@
1
1
  import type { Request } from 'express';
2
- import { Awaitable } from './utility/awaitable';
2
+ import { Awaitable } from '../utility';
3
3
  import { PipeTransform } from '@nestjs/common';
4
4
  import { ModuleRef } from '@nestjs/core';
5
5
  import { ApiHeaderOptions, ApiQueryOptions } from '@nestjs/swagger';
6
6
  import { Type } from '@nestjs/common/interfaces';
7
- import { ParamResolverSwaggerInfo } from './utility/param-resolver-swagger-info.type';
7
+ import { ParamResolverSwaggerInfo } from '../utility/param-resolver-swagger-info.type';
8
8
  declare const ParamResolverCopiedFieldsFromSwagger: readonly ["required", "description", "example", "examples"];
9
9
  export interface ParamResolverInputStatic extends Pick<ApiHeaderOptions | ApiQueryOptions, (typeof ParamResolverCopiedFieldsFromSwagger)[number]> {
10
10
  paramType: 'header' | 'query';
@@ -41,7 +41,7 @@ export declare abstract class ParamResolverBase<T, R extends AnyReq = AnyReq> {
41
41
  toString(): string;
42
42
  toRequestScopedProvider(): {
43
43
  token: string;
44
- provider: import("./create-provider").TypedFactoryProvider<["REQUEST", typeof ModuleRef], T>;
44
+ provider: import("../create-provider").TypedFactoryProvider<["REQUEST", typeof ModuleRef], T>;
45
45
  inject: () => PropertyDecorator & ParameterDecorator;
46
46
  };
47
47
  }
@@ -1,4 +1,3 @@
1
- import 'reflect-metadata';
2
1
  import { InjectionToken } from '@nestjs/common/interfaces/modules/injection-token.interface';
3
2
  import { AnyClass } from './class-types';
4
3
  export type InjectPos = {
@@ -3,3 +3,4 @@ export * from './class-types';
3
3
  export * from './awaitable';
4
4
  export * from './get-api-property';
5
5
  export * from './create-mutate-inject';
6
+ export * from './parse-bool';
@@ -0,0 +1 @@
1
+ export declare const parseBool: (value: any) => boolean;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "nesties",
3
3
  "description": "Nest.js utilities",
4
- "version": "1.1.22",
4
+ "version": "1.1.24",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.mjs",
7
7
  "types": "dist/index.d.ts",
@@ -1,14 +0,0 @@
1
- export type I18nPiece = {
2
- type: 'raw';
3
- value: string;
4
- } | {
5
- type: 'ph';
6
- rawInner: string;
7
- key: string;
8
- };
9
- /**
10
- * 栈式解析 #{ ... } 占位。支持内部成对花括号,如 #{ foo {{ bar }} }。
11
- * - 未闭合时:把从上次位置 i 到结尾整体作为 raw 放回(避免被拆成两段)
12
- * - key = trim(rawInner)
13
- */
14
- export declare const parseI18n: (text: string) => I18nPiece[];