proxify-method
Advanced tools
| declare function isString(arg: any): boolean; | ||
| declare function isRegex(arg: any): boolean; | ||
| export { isString, isRegex }; |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.isRegex = exports.isString = void 0; | ||
| function isString(arg) { | ||
| return Object.prototype.toString.call(arg) === '[object String]'; | ||
| } | ||
| exports.isString = isString; | ||
| function isRegex(arg) { | ||
| return Object.prototype.toString.call(arg) === '[object RegExp]'; | ||
| } | ||
| exports.isRegex = isRegex; | ||
| //# sourceMappingURL=utils.js.map |
| {"version":3,"file":"utils.js","sourceRoot":"","sources":["../lib/utils.ts"],"names":[],"mappings":";;;AAAA,SAAS,QAAQ,CAAC,GAAG;IACnB,OAAO,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,iBAAiB,CAAC;AACnE,CAAC;AAOC,4BAAQ;AALV,SAAS,OAAO,CAAC,GAAG;IAClB,OAAO,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,iBAAiB,CAAC;AACnE,CAAC;AAIC,0BAAO"} |
+1
-1
@@ -12,3 +12,3 @@ declare function proxify(result: any, chainMehod: { | ||
| chainProxify: ISetUpChain; | ||
| initChainModel: (ctx: any, bindCtx?: any) => void; | ||
| initChainModel: (ctx: any, bindCtx?: any, proxityPattern?: string | RegExp) => void; | ||
| }; | ||
@@ -15,0 +15,0 @@ } |
+19
-4
@@ -6,2 +6,3 @@ "use strict"; | ||
| const sync_proxify_1 = require("./sync.proxify"); | ||
| const utils_1 = require("./utils"); | ||
| function proxify(result, chainMehod, fromResult = false) { | ||
@@ -17,5 +18,9 @@ if ((typeof result).includes('function')) { | ||
| exports.proxify = proxify; | ||
| function initChainModel(ctx, bindCtx, chainMehod, resultFromChain) { | ||
| function initChainModel(ctx, bindCtx, proxityPattern, chainMehod, resultFromChain) { | ||
| const ownProps = Object.getOwnPropertyNames(ctx.__proto__); | ||
| const onlyMethods = ownProps.filter((k) => (typeof ctx.__proto__[k]) === 'function' && !(k === 'constructor')); | ||
| let onlyMethods = ownProps | ||
| .filter((p) => (typeof ctx.__proto__[p]) === 'function' && !(p === 'constructor')); | ||
| if (proxityPattern) { | ||
| onlyMethods = onlyMethods.filter((m) => m.match(proxityPattern)); | ||
| } | ||
| onlyMethods.forEach((m) => { | ||
@@ -39,7 +44,17 @@ const currentMethod = ctx.__proto__[m]; | ||
| chainProxify: (name, asserter) => setUpChain(name, asserter, _chainMehod), | ||
| initChainModel: (ctx, bindCtx) => { | ||
| initChainModel: (ctx, bindCtx, proxityPattern = null) => { | ||
| if (utils_1.isString(proxityPattern)) { | ||
| proxityPattern = new RegExp(proxityPattern); | ||
| } | ||
| if (utils_1.isString(bindCtx) || utils_1.isRegex(bindCtx)) { | ||
| proxityPattern = utils_1.isString(bindCtx) ? new RegExp(bindCtx) : bindCtx; | ||
| bindCtx = ctx; | ||
| } | ||
| if (!bindCtx) { | ||
| bindCtx = ctx; | ||
| } | ||
| const resultFromChain = setUpChain.resultFromChain; | ||
| // back to default condition, should be disabled = false | ||
| setUpChain.resultFromChain = false; | ||
| initChainModel(ctx, bindCtx || ctx, _chainMehod, resultFromChain); | ||
| initChainModel(ctx, bindCtx, proxityPattern, _chainMehod, resultFromChain); | ||
| } | ||
@@ -46,0 +61,0 @@ }; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":";;;AAAA,mDAA6C;AAC7C,iDAA2C;AAE3C,SAAS,OAAO,CAAC,MAAM,EAAE,UAAkD,EAAE,UAAU,GAAG,KAAK;IAC7F,IAAI,CAAC,OAAO,MAAM,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;QACxC,MAAM,GAAG,MAAM,EAAE,CAAC;KACnB;IACD,IAAI,CAAC,OAAO,MAAM,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,EAAE;QAC/C,OAAO,4BAAY,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;KACrD;IACD,OAAO,0BAAW,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;AACrD,CAAC;AAsDC,0BAAO;AApDT,SAAS,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,eAAe;IAC/D,MAAM,QAAQ,GAAG,MAAM,CAAC,mBAAmB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC3D,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,UAAU,IAAI,CAAC,CAAC,CAAC,KAAK,aAAa,CAAC,CAAC,CAAC;IAC/G,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QACxB,MAAM,aAAa,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACvC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,UAAS,GAAG,IAAI;YACjC,OAAO,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC;QACpF,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAeD,SAAS,UAAU,CAAI,IAA8B,EAAE,QAA0B,EAAE,WAAW,GAAG,EAAE;IAEjG,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAK,IAAwB,CAAC,IAAI,EAAE;QACxE,QAAQ,GAAI,IAAwB,CAAC;QACrC,IAAI,GAAI,IAAwB,CAAC,IAAI,CAAC;KACvC;IAED,IAAI,CAAC,CAAC,OAAO,QAAQ,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;QAC3C,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;KAClD;IAED,WAAW,CAAC,IAAc,CAAC,GAAG,QAAQ,CAAC;IAEvC,OAAO;QACL,YAAY,EAAE,CAAC,IAA8B,EAAE,QAA0B,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC;QACrH,cAAc,EAAE,CAAC,GAAG,EAAE,OAAQ,EAAE,EAAE;YAChC,MAAM,eAAe,GAAG,UAAU,CAAC,eAAe,CAAC;YACnD,wDAAwD;YACxD,UAAU,CAAC,eAAe,GAAG,KAAK,CAAC;YACnC,cAAc,CAAC,GAAG,EAAE,OAAO,IAAI,GAAG,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;QACpE,CAAC;KACF,CAAC;AACJ,CAAC;AACD,UAAU,CAAC,eAAe,GAAG,KAAK,CAAC;AAEnC,MAAM,YAAY,GAAG,UAAyB,CAAC;AAI7C,oCAAY"} | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"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"} |
+1
-1
| { | ||
| "name": "proxify-method", | ||
| "version": "0.0.10", | ||
| "version": "0.0.11", | ||
| "description": "Project for flexible extension of the existing functionality", | ||
@@ -5,0 +5,0 @@ "main": "built/index.js", |
25579
8.62%19
18.75%394
7.95%