@airpower/transformer 0.0.7 → 0.1.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.
@@ -1,4 +1,5 @@
1
- import { DecoratorTarget } from '../type/type';
1
+ import { ITransformerConstructor, Transformer } from '../transformer';
2
+ import { DecoratorTarget, TransformerField } from '../type';
2
3
  /**
3
4
  * ### 为属性配置别名
4
5
  * @param alias 别名
@@ -10,4 +11,4 @@ export declare function Alias(alias: string): (target: DecoratorTarget, key: str
10
11
  * @param target 目标类
11
12
  * @param key 属性名
12
13
  */
13
- export declare function getAlias(target: DecoratorTarget, key: string): string;
14
+ export declare function getAlias<T extends Transformer>(target: ITransformerConstructor<T> | T, key: TransformerField<T>): string;
@@ -1,4 +1,5 @@
1
- import { DecoratorTarget } from '../type/type';
1
+ import { ITransformerConstructor, Transformer } from '../transformer';
2
+ import { DecoratorTarget, TransformerField } from '../type';
2
3
  /**
3
4
  * ### 属性忽略前缀
4
5
  */
@@ -9,4 +10,4 @@ export declare function IgnorePrefix(): (target: DecoratorTarget, key: string) =
9
10
  * @param target 目标类
10
11
  * @param key 属性名
11
12
  */
12
- export declare function getIgnorePrefix(target: DecoratorTarget, key: string): boolean;
13
+ export declare function getIgnorePrefix<T extends Transformer>(target: ITransformerConstructor<T> | T, key: TransformerField<T>): boolean;
@@ -1,4 +1,5 @@
1
- import { DecoratorTarget } from '../type/type';
1
+ import { ITransformerConstructor, Transformer } from '../transformer';
2
+ import { DecoratorTarget } from '../type';
2
3
  /**
3
4
  * ### 标记类转换的前缀
4
5
  * @param prefix 转换前缀
@@ -8,4 +9,4 @@ export declare function Prefix(prefix: string): (target: DecoratorTarget) => voi
8
9
  * ### 获取类转换的前缀
9
10
  * @param target 目标类
10
11
  */
11
- export declare function getPrefix(target: DecoratorTarget): string;
12
+ export declare function getPrefix<T extends Transformer>(target: ITransformerConstructor<T> | T): string;
@@ -1,5 +1,5 @@
1
- import { IJson } from '../transformer';
2
- import { DecoratorTarget } from '../type/type';
1
+ import { IJson, ITransformerConstructor, Transformer } from '../transformer';
2
+ import { DecoratorTarget, TransformerField } from '../type';
3
3
  /**
4
4
  * ### 自定义转换到 `Class` 的方法
5
5
  * @param func 方法
@@ -10,4 +10,4 @@ export declare function ToClass(func: (json: IJson) => unknown): (target: Decora
10
10
  * @param target 目标类
11
11
  * @param key 属性名
12
12
  */
13
- export declare function getToClass(target: DecoratorTarget, key: string): (json: IJson) => unknown;
13
+ export declare function getToClass<T extends Transformer>(target: ITransformerConstructor<T> | T, key: TransformerField<T>): (json: IJson) => unknown;
@@ -1,5 +1,5 @@
1
- import { Transformer } from '../transformer';
2
- import { DecoratorTarget } from '../type/type';
1
+ import { ITransformerConstructor, Transformer } from '../transformer';
2
+ import { DecoratorTarget, TransformerField } from '../type';
3
3
  /**
4
4
  * ### 自定义转换到 `JSON` 的方法
5
5
  * @param func 方法
@@ -10,4 +10,4 @@ export declare function ToJson<M extends Transformer>(func: (instance: M) => unk
10
10
  * @param target 目标类
11
11
  * @param key 属性名
12
12
  */
13
- export declare function getToJson<M extends Transformer>(target: DecoratorTarget, key: string): (instance: M) => unknown;
13
+ export declare function getToJson<T extends Transformer>(target: ITransformerConstructor<T> | T, key: TransformerField<T>): (instance: T) => unknown;
@@ -1,5 +1,5 @@
1
1
  import { ITransformerConstructor, Transformer } from '../transformer';
2
- import { DecoratorTarget } from '../type/type';
2
+ import { DecoratorTarget, TransformerField } from '../type';
3
3
  /**
4
4
  * ### 为属性配置强制类型
5
5
  * @param type 强制转换的类型
@@ -12,11 +12,11 @@ export declare function Type<T extends Transformer>(type: ITransformerConstructo
12
12
  * @param target 目标类
13
13
  * @param key 属性名
14
14
  */
15
- export declare function getType<T extends Transformer>(target: DecoratorTarget, key: string): ITransformerConstructor<T> | undefined;
15
+ export declare function getType<T extends Transformer>(target: ITransformerConstructor<T> | T, key: TransformerField<T>): ITransformerConstructor<T> | undefined;
16
16
  /**
17
17
  * ### 获取属性是否强制数组
18
18
  * @returns 别名
19
19
  * @param target 目标类
20
20
  * @param key 属性名
21
21
  */
22
- export declare function getArray(target: DecoratorTarget, key: string): boolean;
22
+ export declare function getArray<T extends Transformer>(target: ITransformerConstructor<T> | T, key: TransformerField<T>): boolean;
package/dist/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  export * from './decorator';
2
2
  export * from './transformer';
3
+ export * from './type';
package/dist/main.js CHANGED
@@ -342,14 +342,14 @@ function Alias(alias) {
342
342
  return (target, key) => DecoratorUtil.setFieldConfig(target, key, KEY$5, alias);
343
343
  }
344
344
  function getAlias(target, key) {
345
- return (DecoratorUtil.getFieldConfig(target, key, KEY$5) || "").toString();
345
+ return (DecoratorUtil.getFieldConfig(target, key.toString(), KEY$5) || "").toString();
346
346
  }
347
347
  const KEY$4 = `${DecoratorUtil.DecoratorKeyPrefix}[IgnorePrefix]`;
348
348
  function IgnorePrefix() {
349
349
  return (target, key) => DecoratorUtil.setFieldConfig(target, key, KEY$4, true);
350
350
  }
351
351
  function getIgnorePrefix(target, key) {
352
- return !!DecoratorUtil.getFieldConfig(target, key, KEY$4);
352
+ return !!DecoratorUtil.getFieldConfig(target, key.toString(), KEY$4);
353
353
  }
354
354
  const KEY$3 = `${DecoratorUtil.DecoratorKeyPrefix}[Prefix]`;
355
355
  function Prefix(prefix) {
@@ -363,14 +363,14 @@ function ToClass(func) {
363
363
  return (target, key) => DecoratorUtil.setFieldConfig(target, key, KEY$2, func);
364
364
  }
365
365
  function getToClass(target, key) {
366
- return DecoratorUtil.getFieldConfig(target, key, KEY$2);
366
+ return DecoratorUtil.getFieldConfig(target, key.toString(), KEY$2);
367
367
  }
368
368
  const KEY$1 = `${DecoratorUtil.DecoratorKeyPrefix}[ToJson]`;
369
369
  function ToJson(func) {
370
370
  return (target, key) => DecoratorUtil.setFieldConfig(target, key, KEY$1, func);
371
371
  }
372
372
  function getToJson(target, key) {
373
- return DecoratorUtil.getFieldConfig(target, key, KEY$1);
373
+ return DecoratorUtil.getFieldConfig(target, key.toString(), KEY$1);
374
374
  }
375
375
  const KEY = `${DecoratorUtil.DecoratorKeyPrefix}[Type]`;
376
376
  const KEY_ARRAY = `${DecoratorUtil.DecoratorKeyPrefix}[Array]`;
@@ -383,10 +383,10 @@ function Type(type, array = false) {
383
383
  };
384
384
  }
385
385
  function getType(target, key) {
386
- return DecoratorUtil.getFieldConfig(target, key, KEY) || void 0;
386
+ return DecoratorUtil.getFieldConfig(target, key.toString(), KEY) || void 0;
387
387
  }
388
388
  function getArray(target, key) {
389
- return !!DecoratorUtil.getFieldConfig(target, key, KEY_ARRAY);
389
+ return !!DecoratorUtil.getFieldConfig(target, key.toString(), KEY_ARRAY);
390
390
  }
391
391
  export {
392
392
  Alias,
@@ -1,4 +1,4 @@
1
- import { DecoratorData, DecoratorTarget } from '../type/type';
1
+ import { DecoratorData, DecoratorTarget } from '../type';
2
2
  /**
3
3
  * # 装饰器工具类
4
4
  *
@@ -6,3 +6,7 @@ export type DecoratorTarget = any;
6
6
  * ### 装饰器存储的数据类型
7
7
  */
8
8
  export type DecoratorData = any;
9
+ /**
10
+ * ### 装饰器的类属性
11
+ */
12
+ export type TransformerField<T> = keyof T | string;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@airpower/transformer",
3
3
  "type": "module",
4
- "version": "0.0.7",
4
+ "version": "0.1.1",
5
5
  "description": "AirPower-Transformer 是一个基于 TypeScript 的数据转换器,提供了从 JSON 对象到 类实例 对象之间互相转换的系列装饰器和方法。",
6
6
  "author": {
7
7
  "name": "Hamm",
@@ -46,7 +46,7 @@
46
46
  "@types/node": "^22.13.14",
47
47
  "eslint": "^9.23.0",
48
48
  "typescript": "^5.8.2",
49
- "vite": "^6.2.0",
49
+ "vite": "^6.3.2",
50
50
  "vite-plugin-dts": "^4.5.3"
51
51
  },
52
52
  "publishConfig": {