@prostojs/mate 0.2.0 → 0.3.0
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/mate.cjs.prod.js +13 -7
- package/dist/mate.d.ts +8 -7
- package/dist/mate.esm-bundler.js +13 -7
- package/dist/src/mate.d.ts +8 -7
- package/dist/src/mate.d.ts.map +1 -1
- package/dist/src/reflect.d.ts.map +1 -1
- package/dist/src/tests/mate.artifacts.d.ts +3 -2
- package/dist/src/tests/mate.artifacts.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/mate.cjs.prod.js
CHANGED
|
@@ -11,16 +11,22 @@ function isConstructor(v) {
|
|
|
11
11
|
return typeof v === 'function' && Object.getOwnPropertyNames(v).includes('prototype') && !Object.getOwnPropertyNames(v).includes('caller') && !!v.name;
|
|
12
12
|
}
|
|
13
13
|
|
|
14
|
-
const classMetadata =
|
|
15
|
-
const paramMetadata =
|
|
14
|
+
const classMetadata = new WeakMap();
|
|
15
|
+
const paramMetadata = new WeakMap();
|
|
16
16
|
const root = typeof global === 'object' ? global : typeof self === 'object' ? self : {};
|
|
17
17
|
function getMetaObject(target, prop) {
|
|
18
18
|
const isParam = typeof prop !== 'undefined';
|
|
19
19
|
const metadata = isParam ? paramMetadata : classMetadata;
|
|
20
|
-
const targetKey =
|
|
21
|
-
let meta = metadata
|
|
22
|
-
if (
|
|
23
|
-
meta =
|
|
20
|
+
const targetKey = getConstructor(target);
|
|
21
|
+
let meta = metadata.get(targetKey);
|
|
22
|
+
if (!meta) {
|
|
23
|
+
meta = {};
|
|
24
|
+
metadata.set(targetKey, meta);
|
|
25
|
+
}
|
|
26
|
+
if (isParam) {
|
|
27
|
+
meta = (meta[prop] =
|
|
28
|
+
meta[prop] || {});
|
|
29
|
+
}
|
|
24
30
|
return meta;
|
|
25
31
|
}
|
|
26
32
|
const _reflect = {
|
|
@@ -144,7 +150,7 @@ class Mate {
|
|
|
144
150
|
if (shouldInherit) {
|
|
145
151
|
const parent = Object.getPrototypeOf(constructor);
|
|
146
152
|
if (typeof parent === 'function' && parent !== fnProto && parent !== constructor) {
|
|
147
|
-
const inheritedMeta = this.read(parent, propKey) || {};
|
|
153
|
+
const inheritedMeta = (this.read(parent, propKey) || {});
|
|
148
154
|
const ownParams = ownMeta === null || ownMeta === void 0 ? void 0 : ownMeta.params;
|
|
149
155
|
ownMeta = { ...inheritedMeta, ...ownMeta };
|
|
150
156
|
if (typeof propKey === 'string' && ownParams && (inheritedMeta === null || inheritedMeta === void 0 ? void 0 : inheritedMeta.params)) {
|
package/dist/mate.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ export declare function getConstructor<T = TAny>(instance: T): TFunction;
|
|
|
4
4
|
|
|
5
5
|
export declare function isConstructor<T = TAny>(v: T): v is (T & TClassConstructor);
|
|
6
6
|
|
|
7
|
-
export declare class Mate<TClass extends TObject = TMateClassMeta
|
|
7
|
+
export declare class Mate<TClass extends TObject = TMateClassMeta<TMateParamMeta>, TProp extends {
|
|
8
8
|
params: TMateParamMeta[];
|
|
9
9
|
} = Required<TMatePropMeta<TMateParamMeta>>> {
|
|
10
10
|
protected workspace: string;
|
|
@@ -14,7 +14,7 @@ export declare class Mate<TClass extends TObject = TMateClassMeta, TProp extends
|
|
|
14
14
|
set<T = TClass & TProp & TCommonMateWithParam<TProp['params'][0]>>(args: TMergedDecoratorArgs, cb: ((meta: T, level: TLevels, propKey?: string | symbol, index?: number) => T)): void;
|
|
15
15
|
set<T = TClass & TProp & TCommonMateWithParam<TProp['params'][0]>, K extends keyof T = keyof T>(args: TMergedDecoratorArgs, key: keyof T, value: T[K]): void;
|
|
16
16
|
set<T = TClass & TProp & TCommonMateWithParam<TProp['params'][0]>, K extends keyof T = keyof T>(args: TMergedDecoratorArgs, key: keyof T, value: T[K], isArray: boolean | undefined): void;
|
|
17
|
-
read<
|
|
17
|
+
read<PK>(target: TFunction | TObject, propKey?: PK): PK extends PropertyKey ? (TClass & TProp & TCommonMate<TProp['params'][0]> | undefined) : TClass | undefined;
|
|
18
18
|
apply(...decorators: (MethodDecorator | ClassDecorator | ParameterDecorator | PropertyDecorator)[]): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
19
19
|
decorate<T = TClass & TProp & TCommonMateWithParam<TProp['params'][0]>>(cb: ((meta: T, level: TLevels, propKey?: string | symbol, index?: number) => T)): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
20
20
|
decorate<T = TClass & TProp & TCommonMateWithParam<TProp['params'][0]>, K extends keyof T = keyof T>(key: K, value: T[K]): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
@@ -30,9 +30,9 @@ declare type TAny = any;
|
|
|
30
30
|
|
|
31
31
|
declare type TClassConstructor<T = unknown> = new (...args: TAny[]) => T;
|
|
32
32
|
|
|
33
|
-
declare type TCommonMate<TParam extends TObject> = TMateClassMeta & TMatePropMeta<TParam>;
|
|
33
|
+
declare type TCommonMate<TParam extends TObject> = TMateClassMeta<TParam> & TMatePropMeta<TParam>;
|
|
34
34
|
|
|
35
|
-
declare type TCommonMateWithParam<TParam extends TObject> = TMateClassMeta & TMatePropMeta<TParam> & TParam;
|
|
35
|
+
declare type TCommonMateWithParam<TParam extends TObject> = TMateClassMeta<TParam> & TMatePropMeta<TParam> & TParam;
|
|
36
36
|
|
|
37
37
|
declare interface TConsoleBase {
|
|
38
38
|
error: ((...args: any) => void);
|
|
@@ -45,20 +45,21 @@ declare type TFunction = Function;
|
|
|
45
45
|
|
|
46
46
|
declare type TLevels = 'CLASS' | 'METHOD' | 'PROP' | 'PARAM';
|
|
47
47
|
|
|
48
|
-
export declare interface TMateClassMeta {
|
|
48
|
+
export declare interface TMateClassMeta<TParam> {
|
|
49
49
|
properties?: (string | symbol)[];
|
|
50
50
|
type?: TFunction;
|
|
51
51
|
returnType?: TFunction;
|
|
52
|
+
params?: (TParam & TMateParamMeta)[];
|
|
52
53
|
}
|
|
53
54
|
|
|
54
|
-
export declare interface TMateOptions<TClass extends TObject = TMateClassMeta
|
|
55
|
+
export declare interface TMateOptions<TClass extends TObject = TMateClassMeta<TMateParamMeta>, TProp extends {
|
|
55
56
|
params: TMateParamMeta[];
|
|
56
57
|
} = Required<TMatePropMeta<TMateParamMeta>>> {
|
|
57
58
|
logger?: TConsoleBase;
|
|
58
59
|
readReturnType?: boolean;
|
|
59
60
|
readType?: boolean;
|
|
60
61
|
collectPropKeys?: boolean;
|
|
61
|
-
inherit?: boolean | ((classMeta: TClass & TMateClassMeta
|
|
62
|
+
inherit?: boolean | ((classMeta: TClass & TMateClassMeta<TMateParamMeta>, targetMeta: (TMatePropMeta<TProp['params'][0]> & TProp) | (TMateParamMeta & TProp['params'][0]), level: 'CLASS' | 'PROP' | 'PARAM', key?: string) => boolean);
|
|
62
63
|
}
|
|
63
64
|
|
|
64
65
|
export declare interface TMateParamMeta {
|
package/dist/mate.esm-bundler.js
CHANGED
|
@@ -7,16 +7,22 @@ function isConstructor(v) {
|
|
|
7
7
|
return typeof v === 'function' && Object.getOwnPropertyNames(v).includes('prototype') && !Object.getOwnPropertyNames(v).includes('caller') && !!v.name;
|
|
8
8
|
}
|
|
9
9
|
|
|
10
|
-
const classMetadata =
|
|
11
|
-
const paramMetadata =
|
|
10
|
+
const classMetadata = new WeakMap();
|
|
11
|
+
const paramMetadata = new WeakMap();
|
|
12
12
|
const root = typeof global === 'object' ? global : typeof self === 'object' ? self : {};
|
|
13
13
|
function getMetaObject(target, prop) {
|
|
14
14
|
const isParam = typeof prop !== 'undefined';
|
|
15
15
|
const metadata = isParam ? paramMetadata : classMetadata;
|
|
16
|
-
const targetKey =
|
|
17
|
-
let meta = metadata
|
|
18
|
-
if (
|
|
19
|
-
meta =
|
|
16
|
+
const targetKey = getConstructor(target);
|
|
17
|
+
let meta = metadata.get(targetKey);
|
|
18
|
+
if (!meta) {
|
|
19
|
+
meta = {};
|
|
20
|
+
metadata.set(targetKey, meta);
|
|
21
|
+
}
|
|
22
|
+
if (isParam) {
|
|
23
|
+
meta = (meta[prop] =
|
|
24
|
+
meta[prop] || {});
|
|
25
|
+
}
|
|
20
26
|
return meta;
|
|
21
27
|
}
|
|
22
28
|
const _reflect = {
|
|
@@ -140,7 +146,7 @@ class Mate {
|
|
|
140
146
|
if (shouldInherit) {
|
|
141
147
|
const parent = Object.getPrototypeOf(constructor);
|
|
142
148
|
if (typeof parent === 'function' && parent !== fnProto && parent !== constructor) {
|
|
143
|
-
const inheritedMeta = this.read(parent, propKey) || {};
|
|
149
|
+
const inheritedMeta = (this.read(parent, propKey) || {});
|
|
144
150
|
const ownParams = ownMeta === null || ownMeta === void 0 ? void 0 : ownMeta.params;
|
|
145
151
|
ownMeta = { ...inheritedMeta, ...ownMeta };
|
|
146
152
|
if (typeof propKey === 'string' && ownParams && (inheritedMeta === null || inheritedMeta === void 0 ? void 0 : inheritedMeta.params)) {
|
package/dist/src/mate.d.ts
CHANGED
|
@@ -13,28 +13,29 @@ export interface TMateParamMeta {
|
|
|
13
13
|
export interface TMatePropMeta<TParam extends TObject = TEmpty> {
|
|
14
14
|
params?: (TParam & TMateParamMeta)[];
|
|
15
15
|
}
|
|
16
|
-
export interface TMateClassMeta {
|
|
16
|
+
export interface TMateClassMeta<TParam> {
|
|
17
17
|
properties?: (string | symbol)[];
|
|
18
18
|
type?: TFunction;
|
|
19
19
|
returnType?: TFunction;
|
|
20
|
+
params?: (TParam & TMateParamMeta)[];
|
|
20
21
|
}
|
|
21
|
-
declare type TCommonMate<TParam extends TObject> = TMateClassMeta & TMatePropMeta<TParam>;
|
|
22
|
-
declare type TCommonMateWithParam<TParam extends TObject> = TMateClassMeta & TMatePropMeta<TParam> & TParam;
|
|
22
|
+
declare type TCommonMate<TParam extends TObject> = TMateClassMeta<TParam> & TMatePropMeta<TParam>;
|
|
23
|
+
declare type TCommonMateWithParam<TParam extends TObject> = TMateClassMeta<TParam> & TMatePropMeta<TParam> & TParam;
|
|
23
24
|
interface TConsoleBase {
|
|
24
25
|
error: ((...args: any) => void);
|
|
25
26
|
}
|
|
26
|
-
export interface TMateOptions<TClass extends TObject = TMateClassMeta
|
|
27
|
+
export interface TMateOptions<TClass extends TObject = TMateClassMeta<TMateParamMeta>, TProp extends {
|
|
27
28
|
params: TMateParamMeta[];
|
|
28
29
|
} = Required<TMatePropMeta<TMateParamMeta>>> {
|
|
29
30
|
logger?: TConsoleBase;
|
|
30
31
|
readReturnType?: boolean;
|
|
31
32
|
readType?: boolean;
|
|
32
33
|
collectPropKeys?: boolean;
|
|
33
|
-
inherit?: boolean | ((classMeta: TClass & TMateClassMeta
|
|
34
|
+
inherit?: boolean | ((classMeta: TClass & TMateClassMeta<TMateParamMeta>, targetMeta: (TMatePropMeta<TProp['params'][0]> & TProp) | (TMateParamMeta & TProp['params'][0]), level: 'CLASS' | 'PROP' | 'PARAM', key?: string) => boolean);
|
|
34
35
|
}
|
|
35
36
|
interface TEmpty {
|
|
36
37
|
}
|
|
37
|
-
export declare class Mate<TClass extends TObject = TMateClassMeta
|
|
38
|
+
export declare class Mate<TClass extends TObject = TMateClassMeta<TMateParamMeta>, TProp extends {
|
|
38
39
|
params: TMateParamMeta[];
|
|
39
40
|
} = Required<TMatePropMeta<TMateParamMeta>>> {
|
|
40
41
|
protected workspace: string;
|
|
@@ -44,7 +45,7 @@ export declare class Mate<TClass extends TObject = TMateClassMeta, TProp extends
|
|
|
44
45
|
set<T = TClass & TProp & TCommonMateWithParam<TProp['params'][0]>>(args: TMergedDecoratorArgs, cb: ((meta: T, level: TLevels, propKey?: string | symbol, index?: number) => T)): void;
|
|
45
46
|
set<T = TClass & TProp & TCommonMateWithParam<TProp['params'][0]>, K extends keyof T = keyof T>(args: TMergedDecoratorArgs, key: keyof T, value: T[K]): void;
|
|
46
47
|
set<T = TClass & TProp & TCommonMateWithParam<TProp['params'][0]>, K extends keyof T = keyof T>(args: TMergedDecoratorArgs, key: keyof T, value: T[K], isArray: boolean | undefined): void;
|
|
47
|
-
read<
|
|
48
|
+
read<PK>(target: TFunction | TObject, propKey?: PK): PK extends PropertyKey ? (TClass & TProp & TCommonMate<TProp['params'][0]> | undefined) : TClass | undefined;
|
|
48
49
|
apply(...decorators: (MethodDecorator | ClassDecorator | ParameterDecorator | PropertyDecorator)[]): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
49
50
|
decorate<T = TClass & TProp & TCommonMateWithParam<TProp['params'][0]>>(cb: ((meta: T, level: TLevels, propKey?: string | symbol, index?: number) => T)): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
50
51
|
decorate<T = TClass & TProp & TCommonMateWithParam<TProp['params'][0]>, K extends keyof T = keyof T>(key: K, value: T[K]): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
package/dist/src/mate.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mate.d.ts","sourceRoot":"","sources":["../../src/mate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAK,SAAS,CAAA;AAMjD,aAAK,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAA;AAEpD,MAAM,WAAW,oBAAoB;IACjC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAA;IAC3B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACzB,UAAU,CAAC,EAAE,uBAAuB,CAAC,IAAI,CAAC,CAAA;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,cAAc;IAC3B,IAAI,CAAC,EAAE,SAAS,CAAA;CACnB;AAED,MAAM,WAAW,aAAa,CAAC,MAAM,SAAS,OAAO,GAAG,MAAM;IAC1D,MAAM,CAAC,EAAE,CAAC,MAAM,GAAG,cAAc,CAAC,EAAE,CAAA;CACvC;AAED,MAAM,WAAW,cAAc;
|
|
1
|
+
{"version":3,"file":"mate.d.ts","sourceRoot":"","sources":["../../src/mate.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reflect.d.ts","sourceRoot":"","sources":["../../src/reflect.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"reflect.d.ts","sourceRoot":"","sources":["../../src/reflect.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAkE5C,eAAO,MAAM,OAAO;wBAnCI,MAAM,GAAG,MAAM,UAAU,OAAO,GAAG,SAAS,SAAS,MAAM,GAAG,MAAM,GAAG,OAAO;wBAG9E,MAAM,GAAG,MAAM,QAAQ,OAAO,UAAU,OAAO,GAAG,SAAS,SAAS,MAAM,GAAG,MAAM,GAAG,IAAI;kBAIhG,MAAM,GAAG,MAAM,QAAQ,OAAO,GAAG,cAAc,GAAG,eAAe,GAAG,kBAAkB;CA4BzE,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Mate, TMateParamMeta } from '..';
|
|
2
|
-
interface TClass {
|
|
2
|
+
interface TClass<TParam> {
|
|
3
3
|
inherit?: boolean;
|
|
4
4
|
fromPropertyCb?: string[];
|
|
5
5
|
d1?: string;
|
|
@@ -9,6 +9,7 @@ interface TClass {
|
|
|
9
9
|
class?: string;
|
|
10
10
|
classArray?: string[];
|
|
11
11
|
fromProperty?: string;
|
|
12
|
+
params?: (TMateParamMeta & TParam)[];
|
|
12
13
|
}
|
|
13
14
|
interface TProp<TParam> {
|
|
14
15
|
inherit?: boolean;
|
|
@@ -30,7 +31,7 @@ interface TParam {
|
|
|
30
31
|
param2?: string;
|
|
31
32
|
paramArray?: string[];
|
|
32
33
|
}
|
|
33
|
-
export declare const mate: Mate<TClass
|
|
34
|
+
export declare const mate: Mate<TClass<TParam>, TProp<TParam>>;
|
|
34
35
|
export declare class MateTestClass {
|
|
35
36
|
constructor(_a: string);
|
|
36
37
|
prop1?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mate.artifacts.d.ts","sourceRoot":"","sources":["../../../src/tests/mate.artifacts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,IAAI,CAAA;AAEzC,UAAU,MAAM;
|
|
1
|
+
{"version":3,"file":"mate.artifacts.d.ts","sourceRoot":"","sources":["../../../src/tests/mate.artifacts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,IAAI,CAAA;AAEzC,UAAU,MAAM,CAAC,MAAM;IACnB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,MAAM,CAAC,EAAE,CAAC,cAAc,GAAG,MAAM,CAAC,EAAE,CAAA;CACvC;AAED,UAAU,KAAK,CAAC,MAAM;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;IACtB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,CAAC,cAAc,GAAG,MAAM,CAAC,EAAE,CAAA;CACtC;AAED,UAAU,MAAM;IACZ,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;CACxB;AAED,eAAO,MAAM,IAAI,qCAaf,CAAA;AAcF,qBAIa,aAAa;gBAKd,EAAE,EAAE,MAAM;IAOlB,KAAK,CAAC,EAAE,MAAM,CAAA;IAGd,KAAK,CAAC,EAAE,MAAM,CAAA;IAMd,IAAI,CAKI,EAAE,EAAE,MAAM,GAAG,MAAM;IAgB3B,KAAK,CAMG,EAAE,EAAE,MAAM;IAWlB,KAAK,EAAE,MAAM,CAAK;IAGlB,KAAK;CAGR;AAED,qBACa,cAAc;gBACX,CAAC,EAAE,MAAM;IAOrB,IAAI,CAGD,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO;IAM9B,eAAe,CAAC,GAAG,EAAE,MAAM;CAG9B;AAED,qBACa,cAAe,SAAQ,cAAc;;IAM9C,KAAK;IAML,eAAe;CAGlB;AAED,qBACa,cAAe,SAAQ,cAAc;;IAM9C,KAAK;IAKL,eAAe;CAGlB"}
|