@alterior/common 3.6.7 → 3.7.5

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.
@@ -2,5 +2,5 @@
2
2
  * Get the names of the parameters of the given function.
3
3
  * @param fn
4
4
  */
5
- export declare function getParameterNames(fn: any): string[];
5
+ export declare function getParameterNames(fn: Function): string[];
6
6
  //# sourceMappingURL=get-param-names.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-param-names.d.ts","sourceRoot":"","sources":["../src/get-param-names.ts"],"names":[],"mappings":"AA2BA;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,KAAA,GAAG,MAAM,EAAE,CAU9C"}
1
+ {"version":3,"file":"get-param-names.d.ts","sourceRoot":"","sources":["../src/get-param-names.ts"],"names":[],"mappings":"AA2BA;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,GAAG,MAAM,EAAE,CAmBxD"}
@@ -31,6 +31,12 @@ let AFTER_CLOSING_PAREN = /^([^)]*)\).*$/mg;
31
31
  * @param fn
32
32
  */
33
33
  function getParameterNames(fn) {
34
+ // Sometimes the user may want to transform or replace a function, which may cause us to lose access to
35
+ // the parameter names. To provide an escape hatch for that use case, we'll check if the given function
36
+ // has been annotated with parameter names already.
37
+ if ('__parameterNames' in fn) {
38
+ return fn['__parameterNames'];
39
+ }
34
40
  let code = fn.toString()
35
41
  .replace(SPACES, '')
36
42
  .replace(COMMENTS, '')
@@ -1 +1 @@
1
- {"version":3,"file":"get-param-names.js","sourceRoot":"","sources":["../src/get-param-names.ts"],"names":[],"mappings":";AAAA,qEAAqE;;;AAErE;;GAEG;AACH,IAAI,QAAQ,GAAG,kCAAkC,CAAC;AAClD;;GAEG;AACH,IAAI,cAAc,GAAG,WAAW,CAAC;AACjC;;GAEG;AACH,IAAI,UAAU,GAAG,SAAS,CAAC;AAC3B;;GAEG;AACH,IAAI,MAAM,GAAG,MAAM,CAAC;AACpB;;GAEG;AACH,IAAI,oBAAoB,GAAG,YAAY,CAAC;AACtC;;GAEG;AACL,IAAI,mBAAmB,GAAG,iBAAiB,CAAC;AAE5C;;;GAGG;AACH,SAAgB,iBAAiB,CAAC,EAAE;IAClC,IAAI,IAAI,GAAG,EAAE,CAAC,QAAQ,EAAE;SACrB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;SACnB,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;SACrB,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;SAC3B,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC;SACjC,OAAO,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;IAEtC,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACrC,CAAC;AAVD,8CAUC"}
1
+ {"version":3,"file":"get-param-names.js","sourceRoot":"","sources":["../src/get-param-names.ts"],"names":[],"mappings":";AAAA,qEAAqE;;;AAErE;;GAEG;AACH,IAAI,QAAQ,GAAG,kCAAkC,CAAC;AAClD;;GAEG;AACH,IAAI,cAAc,GAAG,WAAW,CAAC;AACjC;;GAEG;AACH,IAAI,UAAU,GAAG,SAAS,CAAC;AAC3B;;GAEG;AACH,IAAI,MAAM,GAAG,MAAM,CAAC;AACpB;;GAEG;AACH,IAAI,oBAAoB,GAAG,YAAY,CAAC;AACtC;;GAEG;AACL,IAAI,mBAAmB,GAAG,iBAAiB,CAAC;AAE5C;;;GAGG;AACH,SAAgB,iBAAiB,CAAC,EAAY;IAE5C,wGAAwG;IACxG,uGAAuG;IACvG,mDAAmD;IAEnD,IAAI,kBAAkB,IAAI,EAAE,EAAE;QAC5B,OAAO,EAAE,CAAC,kBAAkB,CAAa,CAAC;KAC3C;IAED,IAAI,IAAI,GAAG,EAAE,CAAC,QAAQ,EAAE;SACrB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;SACnB,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;SACrB,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;SAC3B,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC;SACjC,OAAO,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;IAEtC,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACrC,CAAC;AAnBD,8CAmBC"}
@@ -2,5 +2,5 @@
2
2
  * Get the names of the parameters of the given function.
3
3
  * @param fn
4
4
  */
5
- export declare function getParameterNames(fn: any): string[];
5
+ export declare function getParameterNames(fn: Function): string[];
6
6
  //# sourceMappingURL=get-param-names.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-param-names.d.ts","sourceRoot":"","sources":["../src/get-param-names.ts"],"names":[],"mappings":"AA2BA;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,KAAA,GAAG,MAAM,EAAE,CAU9C"}
1
+ {"version":3,"file":"get-param-names.d.ts","sourceRoot":"","sources":["../src/get-param-names.ts"],"names":[],"mappings":"AA2BA;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,GAAG,MAAM,EAAE,CAmBxD"}
@@ -28,6 +28,12 @@ let AFTER_CLOSING_PAREN = /^([^)]*)\).*$/mg;
28
28
  * @param fn
29
29
  */
30
30
  export function getParameterNames(fn) {
31
+ // Sometimes the user may want to transform or replace a function, which may cause us to lose access to
32
+ // the parameter names. To provide an escape hatch for that use case, we'll check if the given function
33
+ // has been annotated with parameter names already.
34
+ if ('__parameterNames' in fn) {
35
+ return fn['__parameterNames'];
36
+ }
31
37
  let code = fn.toString()
32
38
  .replace(SPACES, '')
33
39
  .replace(COMMENTS, '')
@@ -1 +1 @@
1
- {"version":3,"file":"get-param-names.js","sourceRoot":"","sources":["../src/get-param-names.ts"],"names":[],"mappings":"AAAA,qEAAqE;AAErE;;GAEG;AACH,IAAI,QAAQ,GAAG,kCAAkC,CAAC;AAClD;;GAEG;AACH,IAAI,cAAc,GAAG,WAAW,CAAC;AACjC;;GAEG;AACH,IAAI,UAAU,GAAG,SAAS,CAAC;AAC3B;;GAEG;AACH,IAAI,MAAM,GAAG,MAAM,CAAC;AACpB;;GAEG;AACH,IAAI,oBAAoB,GAAG,YAAY,CAAC;AACtC;;GAEG;AACL,IAAI,mBAAmB,GAAG,iBAAiB,CAAC;AAE5C;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAAE;IAClC,IAAI,IAAI,GAAG,EAAE,CAAC,QAAQ,EAAE;SACrB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;SACnB,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;SACrB,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;SAC3B,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC;SACjC,OAAO,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;IAEtC,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACrC,CAAC"}
1
+ {"version":3,"file":"get-param-names.js","sourceRoot":"","sources":["../src/get-param-names.ts"],"names":[],"mappings":"AAAA,qEAAqE;AAErE;;GAEG;AACH,IAAI,QAAQ,GAAG,kCAAkC,CAAC;AAClD;;GAEG;AACH,IAAI,cAAc,GAAG,WAAW,CAAC;AACjC;;GAEG;AACH,IAAI,UAAU,GAAG,SAAS,CAAC;AAC3B;;GAEG;AACH,IAAI,MAAM,GAAG,MAAM,CAAC;AACpB;;GAEG;AACH,IAAI,oBAAoB,GAAG,YAAY,CAAC;AACtC;;GAEG;AACL,IAAI,mBAAmB,GAAG,iBAAiB,CAAC;AAE5C;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAAY;IAE5C,wGAAwG;IACxG,uGAAuG;IACvG,mDAAmD;IAEnD,IAAI,kBAAkB,IAAI,EAAE,EAAE;QAC5B,OAAO,EAAE,CAAC,kBAAkB,CAAa,CAAC;KAC3C;IAED,IAAI,IAAI,GAAG,EAAE,CAAC,QAAQ,EAAE;SACrB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;SACnB,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;SACrB,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;SAC3B,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC;SACjC,OAAO,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;IAEtC,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACrC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alterior/common",
3
- "version": "3.6.7",
3
+ "version": "3.7.5",
4
4
  "description": "Useful utilities for Typescript apps",
5
5
  "author": "The Alterior Project (https://github.com/alterior-mvc)",
6
6
  "license": "MIT",
@@ -43,5 +43,5 @@
43
43
  "peerDependencies": {
44
44
  "reflect-metadata": "^0.1.13"
45
45
  },
46
- "gitHead": "5a2dddeed850b8e59217dbbe0614f641206c9072"
46
+ "gitHead": "0d2c79f629c42e3faae334d915d500b2d839cc03"
47
47
  }
@@ -29,7 +29,16 @@ let AFTER_CLOSING_PAREN = /^([^)]*)\).*$/mg;
29
29
  * Get the names of the parameters of the given function.
30
30
  * @param fn
31
31
  */
32
- export function getParameterNames(fn): string[] {
32
+ export function getParameterNames(fn: Function): string[] {
33
+
34
+ // Sometimes the user may want to transform or replace a function, which may cause us to lose access to
35
+ // the parameter names. To provide an escape hatch for that use case, we'll check if the given function
36
+ // has been annotated with parameter names already.
37
+
38
+ if ('__parameterNames' in fn) {
39
+ return fn['__parameterNames'] as string[];
40
+ }
41
+
33
42
  let code = fn.toString()
34
43
  .replace(SPACES, '')
35
44
  .replace(COMMENTS, '')