@prostojs/mate 0.1.5 → 0.1.7
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
CHANGED
|
@@ -104,7 +104,7 @@ class Mate {
|
|
|
104
104
|
type: undefined,
|
|
105
105
|
};
|
|
106
106
|
if (cb) {
|
|
107
|
-
data.params[index] = cb(data.params[index], args.propKey);
|
|
107
|
+
data.params[index] = cb(data.params[index], args.propKey, typeof index === 'number' ? index : undefined);
|
|
108
108
|
}
|
|
109
109
|
else {
|
|
110
110
|
data = data.params[index];
|
|
@@ -124,11 +124,11 @@ class Mate {
|
|
|
124
124
|
}
|
|
125
125
|
}
|
|
126
126
|
else if (cb && typeof index !== 'number') {
|
|
127
|
-
meta = cb(data, args.propKey);
|
|
127
|
+
meta = cb(data, args.propKey, typeof index === 'number' ? index : undefined);
|
|
128
128
|
}
|
|
129
129
|
Reflect.defineMetadata(this.workspace, meta, newArgs.target, newArgs.propKey);
|
|
130
130
|
}
|
|
131
|
-
read(target, propKey) {
|
|
131
|
+
read(target, propKey, index) {
|
|
132
132
|
const isConstr = isConstructor(target);
|
|
133
133
|
const constructor = isConstr ? target : getConstructor(target);
|
|
134
134
|
const proto = constructor.prototype;
|
package/dist/mate.d.ts
CHANGED
|
@@ -6,16 +6,16 @@ export declare class Mate<T extends TProstoMetadata = TProstoMetadata> {
|
|
|
6
6
|
protected workspace: string;
|
|
7
7
|
protected options: TMateOptions<T>;
|
|
8
8
|
constructor(workspace: string, options?: TMateOptions<T>);
|
|
9
|
-
set<R extends T = T, RP = R['params'][0]>(args: TMergedDecoratorArgs, cb: ((meta: R & RP, propKey?: string | symbol) => R & RP)): void;
|
|
9
|
+
set<R extends T = T, RP = R['params'][0]>(args: TMergedDecoratorArgs, cb: ((meta: R & RP, propKey?: string | symbol, index?: number) => R & RP)): void;
|
|
10
10
|
set<R extends T = T, RP = R['params'][0]>(args: TMergedDecoratorArgs, key: keyof R | keyof RP, value: ((R & RP)[keyof R] & (R & RP)[keyof RP]) | undefined): void;
|
|
11
11
|
set<R extends T = T, RP = R['params'][0]>(args: TMergedDecoratorArgs, key: keyof R | keyof RP, value: ((R & RP)[keyof R] & (R & RP)[keyof RP]) | undefined, isArray: boolean | undefined): void;
|
|
12
|
-
read<R extends T = T>(target: TFunction | TObject, propKey?: string | symbol): R | undefined;
|
|
13
|
-
apply(...decorators: (MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator)[]): MethodDecorator & ClassDecorator & ParameterDecorator;
|
|
14
|
-
decorate<R extends T = T, RP = R['params'][0]>(cb: ((meta: R & RP, propKey?: string | symbol) => R & RP)): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
12
|
+
read<R extends T = T>(target: TFunction | TObject, propKey?: string | symbol, index?: number): R | undefined;
|
|
13
|
+
apply(...decorators: (MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator)[]): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
14
|
+
decorate<R extends T = T, RP = R['params'][0]>(cb: ((meta: R & RP, propKey?: string | symbol, index?: number) => R & RP)): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
15
15
|
decorate<R extends T = T, RP = R['params'][0]>(key: keyof R | keyof RP | ((meta: R & RP) => R & RP), value: ((R & RP)[keyof R] & (R & RP)[keyof RP]) | undefined): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
16
16
|
decorate<R extends T = T, RP = R['params'][0]>(key: keyof R | keyof RP | ((meta: R & RP) => R & RP), value: ((R & RP)[keyof R] & (R & RP)[keyof RP]) | undefined, isArray: boolean | undefined): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
17
17
|
decorate<R extends T = T, RP = R['params'][0]>(key: keyof R | keyof RP | ((meta: R & RP) => R & RP), value: ((R & RP)[keyof R] & (R & RP)[keyof RP]) | undefined, isArray: boolean | undefined, level: TMergedDecoratorArgs['level']): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
18
|
-
decorateClass<R extends T = T, RP = R['params'][0]>(cb: ((meta: R & RP, propKey?: string | symbol) => R & RP)): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
18
|
+
decorateClass<R extends T = T, RP = R['params'][0]>(cb: ((meta: R & RP, propKey?: string | symbol, index?: number) => R & RP)): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
19
19
|
decorateClass<R extends T = T, RP = R['params'][0]>(key: keyof R | keyof RP | ((meta: R & RP) => R & RP), value: ((R & RP)[keyof R] & (R & RP)[keyof RP]) | undefined): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
20
20
|
decorateClass<R extends T = T, RP = R['params'][0]>(key: keyof R | keyof RP | ((meta: R & RP) => R & RP), value: ((R & RP)[keyof R] & (R & RP)[keyof RP]) | undefined, isArray: boolean | undefined): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
21
21
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function e(e){return t(e)?e:e.constructor?e.constructor:Object.getPrototypeOf(e).constructor}function t(e){return"function"==typeof e&&Object.getOwnPropertyNames(e).includes("prototype")&&!Object.getOwnPropertyNames(e).includes("caller")&&!!e.name}const o=()=>`[prostojs/mate][${(new Date).toISOString().replace("T"," ").replace(/\.\d{3}z$/i,"")}] `;const r={},a={},n="object"==typeof global?global:"object"==typeof self?self:{};function
|
|
1
|
+
function e(e){return t(e)?e:e.constructor?e.constructor:Object.getPrototypeOf(e).constructor}function t(e){return"function"==typeof e&&Object.getOwnPropertyNames(e).includes("prototype")&&!Object.getOwnPropertyNames(e).includes("caller")&&!!e.name}const o=()=>`[prostojs/mate][${(new Date).toISOString().replace("T"," ").replace(/\.\d{3}z$/i,"")}] `;const r={},a={},n="object"==typeof global?global:"object"==typeof self?self:{};function i(t,o){const n=void 0!==o,i=n?a:r,s=Symbol.for(e(t));let p=i[s]=i[s]||{};return n&&(p=p[o]=p[o]||{}),p}const s={getOwnMetadata:(e,t,o)=>i(t,o)[e],defineMetadata(e,t,o,r){i(o,r)[e]=t},metadata:(e,t)=>(o,r)=>{c.defineMetadata(e,t,o,r)}};if(n.Reflect){const e=["getOwnMetadata","defineMetadata","metadata"],t=n.Reflect;let r=!0;for(const o of e)"function"!=typeof t[o]&&(Object.defineProperty(t,o,{configurable:!0,writable:!0,value:s[o]}),r=!1);r||(p="A limited 'reflect-metadata' implementation is used. In case of any issues include original 'reflect-metadata' package and require it before any @prostojs/mate import.",console.log("[33m"+o()+p+"[0m"))}else n.Reflect=s;var p;const c=s;function l(e){return function(e){console.error("[91m[1m"+o()+e+"[0m")}(e),new Error(e)}const f=(null===global||void 0===global?void 0:global.Reflect)||(null===self||void 0===self?void 0:self.Reflect)||c;class d{constructor(e,t={}){this.workspace=e,this.options=t}set(e,t,o,r){var a;const n="CLASS"===e.level?{target:e.target}:"PROPERTY"===e.level?{target:e.target,propKey:e.propKey}:e;let i=f.getOwnMetadata(this.workspace,n.target,n.propKey)||{};n.propKey&&this.options.readReturnType&&!i.returnType&&(i.returnType=f.getOwnMetadata("design:returntype",n.target,n.propKey)),n.propKey&&this.options.readType&&!i.type&&(i.type=f.getOwnMetadata("design:type",n.target,n.propKey));const{index:s}=n,p="function"==typeof t?t:void 0;let c=i;if(c.params||(c.params=null===(a=f.getOwnMetadata("design:paramtypes",e.target,e.propKey))||void 0===a?void 0:a.map((e=>({type:e})))),"number"==typeof s&&(c.params=c.params||[],c.params[s]=c.params[s]||{type:void 0},p?c.params[s]=p(c.params[s],e.propKey,"number"==typeof s?s:void 0):c=c.params[s]),"function"!=typeof t)if(r){const e=c[t]||[];Array.isArray(e)||l("Mate.add (isArray=true) called for non-array metadata"),e.unshift(o),c[t]=e}else c[t]=o;else p&&"number"!=typeof s&&(i=p(c,e.propKey,"number"==typeof s?s:void 0));f.defineMetadata(this.workspace,i,n.target,n.propKey)}read(o,r,a){const n=t(o)?o:e(o);let i=f.getOwnMetadata(this.workspace,"string"==typeof r?n.prototype:n,r);if(this.options.inherit){const e="function"==typeof this.options.inherit?this.options.inherit:void 0;let t=this.options.inherit;if(e)if("string"==typeof r){t=e(f.getOwnMetadata(this.workspace,n),r,i)}else t=e(i);if(t){const e=Object.getPrototypeOf(n);if("function"==typeof e&&e!==y&&e!==n){i={...this.read(e,r),...i,params:null==i?void 0:i.params}}}}return i}apply(...e){return(t,o,r)=>{for(const a of e)a(t,o,r)}}decorate(e,t,o,r){return(a,n,i)=>{this.set({target:a,propKey:n,descriptor:"number"==typeof i?void 0:i,index:"number"==typeof i?i:void 0,level:r},e,t,o)}}decorateClass(e,t,o){return this.decorate(e,t,o,"CLASS")}}const y=Object.getPrototypeOf(Function);export{d as Mate,e as getConstructor,t as isConstructor};
|
package/dist/mate.esm-bundler.js
CHANGED
|
@@ -100,7 +100,7 @@ class Mate {
|
|
|
100
100
|
type: undefined,
|
|
101
101
|
};
|
|
102
102
|
if (cb) {
|
|
103
|
-
data.params[index] = cb(data.params[index], args.propKey);
|
|
103
|
+
data.params[index] = cb(data.params[index], args.propKey, typeof index === 'number' ? index : undefined);
|
|
104
104
|
}
|
|
105
105
|
else {
|
|
106
106
|
data = data.params[index];
|
|
@@ -120,11 +120,11 @@ class Mate {
|
|
|
120
120
|
}
|
|
121
121
|
}
|
|
122
122
|
else if (cb && typeof index !== 'number') {
|
|
123
|
-
meta = cb(data, args.propKey);
|
|
123
|
+
meta = cb(data, args.propKey, typeof index === 'number' ? index : undefined);
|
|
124
124
|
}
|
|
125
125
|
Reflect.defineMetadata(this.workspace, meta, newArgs.target, newArgs.propKey);
|
|
126
126
|
}
|
|
127
|
-
read(target, propKey) {
|
|
127
|
+
read(target, propKey, index) {
|
|
128
128
|
const isConstr = isConstructor(target);
|
|
129
129
|
const constructor = isConstr ? target : getConstructor(target);
|
|
130
130
|
const proto = constructor.prototype;
|
package/dist/mate.global.prod.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var ProstoMate=function(
|
|
1
|
+
var ProstoMate=function(e){"use strict";function t(e){return o(e)?e:e.constructor?e.constructor:Object.getPrototypeOf(e).constructor}function o(e){return"function"==typeof e&&Object.getOwnPropertyNames(e).includes("prototype")&&!Object.getOwnPropertyNames(e).includes("caller")&&!!e.name}const r=()=>`[prostojs/mate][${(new Date).toISOString().replace("T"," ").replace(/\.\d{3}z$/i,"")}] `;const a={},n={},s="object"==typeof global?global:"object"==typeof self?self:{};function i(e,o){const r=void 0!==o,s=r?n:a,i=Symbol.for(t(e));let p=s[i]=s[i]||{};return r&&(p=p[o]=p[o]||{}),p}const p={getOwnMetadata:(e,t,o)=>i(t,o)[e],defineMetadata(e,t,o,r){i(o,r)[e]=t},metadata:(e,t)=>(o,r)=>{l.defineMetadata(e,t,o,r)}};if(s.Reflect){const e=["getOwnMetadata","defineMetadata","metadata"],t=s.Reflect;let o=!0;for(const r of e)"function"!=typeof t[r]&&(Object.defineProperty(t,r,{configurable:!0,writable:!0,value:p[r]}),o=!1);o||(c="A limited 'reflect-metadata' implementation is used. In case of any issues include original 'reflect-metadata' package and require it before any @prostojs/mate import.",console.log("[33m"+r()+c+"[0m"))}else s.Reflect=p;var c;const l=p;function f(e){return function(e){console.error("[91m[1m"+r()+e+"[0m")}(e),new Error(e)}const d=(null===global||void 0===global?void 0:global.Reflect)||(null===self||void 0===self?void 0:self.Reflect)||l;const y=Object.getPrototypeOf(Function);return e.Mate=class{constructor(e,t={}){this.workspace=e,this.options=t}set(e,t,o,r){var a;const n="CLASS"===e.level?{target:e.target}:"PROPERTY"===e.level?{target:e.target,propKey:e.propKey}:e;let s=d.getOwnMetadata(this.workspace,n.target,n.propKey)||{};n.propKey&&this.options.readReturnType&&!s.returnType&&(s.returnType=d.getOwnMetadata("design:returntype",n.target,n.propKey)),n.propKey&&this.options.readType&&!s.type&&(s.type=d.getOwnMetadata("design:type",n.target,n.propKey));const{index:i}=n,p="function"==typeof t?t:void 0;let c=s;if(c.params||(c.params=null===(a=d.getOwnMetadata("design:paramtypes",e.target,e.propKey))||void 0===a?void 0:a.map((e=>({type:e})))),"number"==typeof i&&(c.params=c.params||[],c.params[i]=c.params[i]||{type:void 0},p?c.params[i]=p(c.params[i],e.propKey,"number"==typeof i?i:void 0):c=c.params[i]),"function"!=typeof t)if(r){const e=c[t]||[];Array.isArray(e)||f("Mate.add (isArray=true) called for non-array metadata"),e.unshift(o),c[t]=e}else c[t]=o;else p&&"number"!=typeof i&&(s=p(c,e.propKey,"number"==typeof i?i:void 0));d.defineMetadata(this.workspace,s,n.target,n.propKey)}read(e,r,a){const n=o(e)?e:t(e);let s=d.getOwnMetadata(this.workspace,"string"==typeof r?n.prototype:n,r);if(this.options.inherit){const e="function"==typeof this.options.inherit?this.options.inherit:void 0;let t=this.options.inherit;if(e)if("string"==typeof r){t=e(d.getOwnMetadata(this.workspace,n),r,s)}else t=e(s);if(t){const e=Object.getPrototypeOf(n);if("function"==typeof e&&e!==y&&e!==n){s={...this.read(e,r),...s,params:null==s?void 0:s.params}}}}return s}apply(...e){return(t,o,r)=>{for(const a of e)a(t,o,r)}}decorate(e,t,o,r){return(a,n,s)=>{this.set({target:a,propKey:n,descriptor:"number"==typeof s?void 0:s,index:"number"==typeof s?s:void 0,level:r},e,t,o)}}decorateClass(e,t,o){return this.decorate(e,t,o,"CLASS")}},e.getConstructor=t,e.isConstructor=o,Object.defineProperty(e,"__esModule",{value:!0}),e}({});
|
package/dist/src/mate.d.ts
CHANGED
|
@@ -23,16 +23,16 @@ export declare class Mate<T extends TProstoMetadata = TProstoMetadata> {
|
|
|
23
23
|
protected workspace: string;
|
|
24
24
|
protected options: TMateOptions<T>;
|
|
25
25
|
constructor(workspace: string, options?: TMateOptions<T>);
|
|
26
|
-
set<R extends T = T, RP = R['params'][0]>(args: TMergedDecoratorArgs, cb: ((meta: R & RP, propKey?: string | symbol) => R & RP)): void;
|
|
26
|
+
set<R extends T = T, RP = R['params'][0]>(args: TMergedDecoratorArgs, cb: ((meta: R & RP, propKey?: string | symbol, index?: number) => R & RP)): void;
|
|
27
27
|
set<R extends T = T, RP = R['params'][0]>(args: TMergedDecoratorArgs, key: keyof R | keyof RP, value: ((R & RP)[keyof R] & (R & RP)[keyof RP]) | undefined): void;
|
|
28
28
|
set<R extends T = T, RP = R['params'][0]>(args: TMergedDecoratorArgs, key: keyof R | keyof RP, value: ((R & RP)[keyof R] & (R & RP)[keyof RP]) | undefined, isArray: boolean | undefined): void;
|
|
29
|
-
read<R extends T = T>(target: TFunction | TObject, propKey?: string | symbol): R | undefined;
|
|
30
|
-
apply(...decorators: (MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator)[]): MethodDecorator & ClassDecorator & ParameterDecorator;
|
|
31
|
-
decorate<R extends T = T, RP = R['params'][0]>(cb: ((meta: R & RP, propKey?: string | symbol) => R & RP)): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
29
|
+
read<R extends T = T>(target: TFunction | TObject, propKey?: string | symbol, index?: number): R | undefined;
|
|
30
|
+
apply(...decorators: (MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator)[]): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
31
|
+
decorate<R extends T = T, RP = R['params'][0]>(cb: ((meta: R & RP, propKey?: string | symbol, index?: number) => R & RP)): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
32
32
|
decorate<R extends T = T, RP = R['params'][0]>(key: keyof R | keyof RP | ((meta: R & RP) => R & RP), value: ((R & RP)[keyof R] & (R & RP)[keyof RP]) | undefined): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
33
33
|
decorate<R extends T = T, RP = R['params'][0]>(key: keyof R | keyof RP | ((meta: R & RP) => R & RP), value: ((R & RP)[keyof R] & (R & RP)[keyof RP]) | undefined, isArray: boolean | undefined): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
34
34
|
decorate<R extends T = T, RP = R['params'][0]>(key: keyof R | keyof RP | ((meta: R & RP) => R & RP), value: ((R & RP)[keyof R] & (R & RP)[keyof RP]) | undefined, isArray: boolean | undefined, level: TMergedDecoratorArgs['level']): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
35
|
-
decorateClass<R extends T = T, RP = R['params'][0]>(cb: ((meta: R & RP, propKey?: string | symbol) => R & RP)): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
35
|
+
decorateClass<R extends T = T, RP = R['params'][0]>(cb: ((meta: R & RP, propKey?: string | symbol, index?: number) => R & RP)): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
36
36
|
decorateClass<R extends T = T, RP = R['params'][0]>(key: keyof R | keyof RP | ((meta: R & RP) => R & RP), value: ((R & RP)[keyof R] & (R & RP)[keyof RP]) | undefined): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
37
37
|
decorateClass<R extends T = T, RP = R['params'][0]>(key: keyof R | keyof RP | ((meta: R & RP) => R & RP), value: ((R & RP)[keyof R] & (R & RP)[keyof RP]) | undefined, isArray: boolean | undefined): MethodDecorator & ClassDecorator & ParameterDecorator & PropertyDecorator;
|
|
38
38
|
}
|
package/dist/src/mate.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mate.d.ts","sourceRoot":"","sources":["../../src/mate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAK,SAAS,CAAA;AAMjD,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,GAAG,UAAU,CAAA;CAC/B;AAED,MAAM,WAAW,eAAe,CAAC,OAAO,SAAS,qBAAqB,GAAG,qBAAqB;IAC1F,MAAM,EAAE,OAAO,EAAE,CAAA;IACjB,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,UAAU,CAAC,EAAE,SAAS,CAAA;CACzB;AAED,MAAM,WAAW,qBAAqB;IAClC,IAAI,CAAC,EAAE,SAAS,CAAA;CACnB;AAED,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe;IACrE,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,SAAS,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,CAAC,KAAO,OAAO,CAAC,CAAA;CACtF;AAED,qBAAa,IAAI,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe;IAC7C,SAAS,CAAC,SAAS,EAAE,MAAM;IAAE,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;gBAArD,SAAS,EAAE,MAAM,EAAY,OAAO,GAAE,YAAY,CAAC,CAAC,CAAM;IAEhF,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EACpC,IAAI,EAAE,oBAAoB,EAC1B,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"mate.d.ts","sourceRoot":"","sources":["../../src/mate.ts"],"names":[],"mappings":"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"}
|