@interactors/core 1.0.1 → 1.1.0-alpha.2

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.
Files changed (94) hide show
  1. package/esm/src/constructor.d.ts.map +1 -1
  2. package/esm/src/constructor.js +8 -1
  3. package/esm/src/constructor.js.map +1 -1
  4. package/esm/src/errors.d.ts.map +1 -1
  5. package/esm/src/errors.js.map +1 -1
  6. package/esm/src/index.d.ts +3 -0
  7. package/esm/src/index.d.ts.map +1 -1
  8. package/esm/src/index.js +2 -0
  9. package/esm/src/index.js.map +1 -1
  10. package/esm/src/matcher.d.ts +4 -0
  11. package/esm/src/matcher.d.ts.map +1 -1
  12. package/esm/src/matcher.js +8 -0
  13. package/esm/src/matcher.js.map +1 -1
  14. package/esm/src/matchers/and.d.ts.map +1 -1
  15. package/esm/src/matchers/and.js +2 -1
  16. package/esm/src/matchers/and.js.map +1 -1
  17. package/esm/src/matchers/every.d.ts.map +1 -1
  18. package/esm/src/matchers/every.js +2 -1
  19. package/esm/src/matchers/every.js.map +1 -1
  20. package/esm/src/matchers/including.d.ts.map +1 -1
  21. package/esm/src/matchers/including.js +2 -1
  22. package/esm/src/matchers/including.js.map +1 -1
  23. package/esm/src/matchers/matching.d.ts.map +1 -1
  24. package/esm/src/matchers/matching.js +2 -1
  25. package/esm/src/matchers/matching.js.map +1 -1
  26. package/esm/src/matchers/not.d.ts.map +1 -1
  27. package/esm/src/matchers/not.js +2 -1
  28. package/esm/src/matchers/not.js.map +1 -1
  29. package/esm/src/matchers/or.d.ts.map +1 -1
  30. package/esm/src/matchers/or.js +2 -1
  31. package/esm/src/matchers/or.js.map +1 -1
  32. package/esm/src/matchers/some.d.ts.map +1 -1
  33. package/esm/src/matchers/some.js +2 -1
  34. package/esm/src/matchers/some.js.map +1 -1
  35. package/esm/src/merge-objects.d.ts +1 -1
  36. package/esm/src/merge-objects.d.ts.map +1 -1
  37. package/esm/src/metadata.d.ts +50 -0
  38. package/esm/src/metadata.d.ts.map +1 -0
  39. package/esm/src/metadata.js +96 -0
  40. package/esm/src/metadata.js.map +1 -0
  41. package/package.json +4 -3
  42. package/script/src/constructor.d.ts.map +1 -1
  43. package/script/src/constructor.js +8 -1
  44. package/script/src/constructor.js.map +1 -1
  45. package/script/src/errors.d.ts.map +1 -1
  46. package/script/src/errors.js.map +1 -1
  47. package/script/src/index.d.ts +3 -0
  48. package/script/src/index.d.ts.map +1 -1
  49. package/script/src/index.js +9 -1
  50. package/script/src/index.js.map +1 -1
  51. package/script/src/matcher.d.ts +4 -0
  52. package/script/src/matcher.d.ts.map +1 -1
  53. package/script/src/matcher.js +9 -0
  54. package/script/src/matcher.js.map +1 -1
  55. package/script/src/matchers/and.d.ts.map +1 -1
  56. package/script/src/matchers/and.js +1 -0
  57. package/script/src/matchers/and.js.map +1 -1
  58. package/script/src/matchers/every.d.ts.map +1 -1
  59. package/script/src/matchers/every.js +1 -0
  60. package/script/src/matchers/every.js.map +1 -1
  61. package/script/src/matchers/including.d.ts.map +1 -1
  62. package/script/src/matchers/including.js +1 -0
  63. package/script/src/matchers/including.js.map +1 -1
  64. package/script/src/matchers/matching.d.ts.map +1 -1
  65. package/script/src/matchers/matching.js +1 -0
  66. package/script/src/matchers/matching.js.map +1 -1
  67. package/script/src/matchers/not.d.ts.map +1 -1
  68. package/script/src/matchers/not.js +1 -0
  69. package/script/src/matchers/not.js.map +1 -1
  70. package/script/src/matchers/or.d.ts.map +1 -1
  71. package/script/src/matchers/or.js +1 -0
  72. package/script/src/matchers/or.js.map +1 -1
  73. package/script/src/matchers/some.d.ts.map +1 -1
  74. package/script/src/matchers/some.js +1 -0
  75. package/script/src/matchers/some.js.map +1 -1
  76. package/script/src/merge-objects.d.ts +1 -1
  77. package/script/src/merge-objects.d.ts.map +1 -1
  78. package/script/src/metadata.d.ts +50 -0
  79. package/script/src/metadata.d.ts.map +1 -0
  80. package/script/src/metadata.js +105 -0
  81. package/script/src/metadata.js.map +1 -0
  82. package/src/src/constructor.ts +10 -1
  83. package/src/src/errors.ts +4 -4
  84. package/src/src/index.ts +12 -0
  85. package/src/src/matcher.ts +12 -0
  86. package/src/src/matchers/and.ts +3 -1
  87. package/src/src/matchers/every.ts +3 -1
  88. package/src/src/matchers/including.ts +3 -1
  89. package/src/src/matchers/matching.ts +3 -1
  90. package/src/src/matchers/not.ts +3 -1
  91. package/src/src/matchers/or.ts +3 -1
  92. package/src/src/matchers/some.ts +3 -1
  93. package/src/src/merge-objects.ts +3 -1
  94. package/src/src/metadata.ts +166 -0
@@ -1 +1 @@
1
- {"version":3,"file":"constructor.js","sourceRoot":"","sources":["../../src/src/constructor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constructor.js","sourceRoot":"","sources":["../../src/src/constructor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/src/errors.ts"],"names":[],"mappings":"AAAA,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,IAAI,SAAwB;CAC7B;AAED,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,IAAI,SAA2B;CAChC;AAED,qBAAa,cAAe,SAAQ,KAAK;IACvC,IAAI,SAAoB;CACzB;AAED,qBAAa,sBAAuB,SAAQ,KAAK;IAC/C,IAAI,SAA4B;CACjC"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/src/errors.ts"],"names":[],"mappings":"AAAA,qBAAa,kBAAmB,SAAQ,KAAK;IAClC,IAAI,SAAwB;CACtC;AAED,qBAAa,qBAAsB,SAAQ,KAAK;IACrC,IAAI,SAA2B;CACzC;AAED,qBAAa,cAAe,SAAQ,KAAK;IAC9B,IAAI,SAAoB;CAClC;AAED,qBAAa,sBAAuB,SAAQ,KAAK;IACtC,IAAI,SAA4B;CAC1C"}
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/src/errors.ts"],"names":[],"mappings":";;;AAAA,MAAa,kBAAmB,SAAQ,KAAK;IAA7C;;QACE;;;;mBAAO,oBAAoB;WAAC;IAC9B,CAAC;CAAA;AAFD,gDAEC;AAED,MAAa,qBAAsB,SAAQ,KAAK;IAAhD;;QACE;;;;mBAAO,uBAAuB;WAAC;IACjC,CAAC;CAAA;AAFD,sDAEC;AAED,MAAa,cAAe,SAAQ,KAAK;IAAzC;;QACE;;;;mBAAO,gBAAgB;WAAC;IAC1B,CAAC;CAAA;AAFD,wCAEC;AAED,MAAa,sBAAuB,SAAQ,KAAK;IAAjD;;QACE;;;;mBAAO,wBAAwB;WAAC;IAClC,CAAC;CAAA;AAFD,wDAEC"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/src/errors.ts"],"names":[],"mappings":";;;AAAA,MAAa,kBAAmB,SAAQ,KAAK;IAA7C;;QACW;;;;mBAAO,oBAAoB;WAAC;IACvC,CAAC;CAAA;AAFD,gDAEC;AAED,MAAa,qBAAsB,SAAQ,KAAK;IAAhD;;QACW;;;;mBAAO,uBAAuB;WAAC;IAC1C,CAAC;CAAA;AAFD,sDAEC;AAED,MAAa,cAAe,SAAQ,KAAK;IAAzC;;QACW;;;;mBAAO,gBAAgB;WAAC;IACnC,CAAC;CAAA;AAFD,wCAEC;AAED,MAAa,sBAAuB,SAAQ,KAAK;IAAjD;;QACW;;;;mBAAO,wBAAwB;WAAC;IAC3C,CAAC;CAAA;AAFD,wDAEC"}
@@ -4,7 +4,10 @@ export { isInteraction } from './interaction.js';
4
4
  export { createInteractor } from './create-interactor.js';
5
5
  export { createInspector } from './inspector.js';
6
6
  export { isVisible } from 'element-is-visible';
7
+ export { createMatcher } from './matcher.js';
7
8
  export type { Matcher } from './matcher.js';
9
+ export { CONSTRUCTOR_METADATA_VERSION, getInteractorConstructorMetadata, getMatcherConstructorMetadata, isInteractorConstructor, isMatcherConstructor, } from './metadata.js';
10
+ export type { InteractorConstructorMetadata, MatcherConstructorMetadata, } from './metadata.js';
8
11
  export { including } from './matchers/including.js';
9
12
  export { matching } from './matchers/matching.js';
10
13
  export { and } from './matchers/and.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,UAAU,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAChJ,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7F,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,YAAY,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACtC,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAE5C,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACtD,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,UAAU,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAChJ,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7F,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,YAAY,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EACL,4BAA4B,EAC5B,gCAAgC,EAChC,6BAA6B,EAC7B,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,6BAA6B,EAC7B,0BAA0B,GAC3B,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACtC,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAE5C,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACtD,YAAY,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.click = exports.every = exports.some = exports.not = exports.or = exports.and = exports.matching = exports.including = exports.isVisible = exports.createInspector = exports.createInteractor = exports.isInteraction = void 0;
3
+ exports.click = exports.every = exports.some = exports.not = exports.or = exports.and = exports.matching = exports.including = exports.isMatcherConstructor = exports.isInteractorConstructor = exports.getMatcherConstructorMetadata = exports.getInteractorConstructorMetadata = exports.CONSTRUCTOR_METADATA_VERSION = exports.createMatcher = exports.isVisible = exports.createInspector = exports.createInteractor = exports.isInteraction = void 0;
4
4
  var interaction_js_1 = require("./interaction.js");
5
5
  Object.defineProperty(exports, "isInteraction", { enumerable: true, get: function () { return interaction_js_1.isInteraction; } });
6
6
  var create_interactor_js_1 = require("./create-interactor.js");
@@ -9,6 +9,14 @@ var inspector_js_1 = require("./inspector.js");
9
9
  Object.defineProperty(exports, "createInspector", { enumerable: true, get: function () { return inspector_js_1.createInspector; } });
10
10
  var element_is_visible_1 = require("element-is-visible");
11
11
  Object.defineProperty(exports, "isVisible", { enumerable: true, get: function () { return element_is_visible_1.isVisible; } });
12
+ var matcher_js_1 = require("./matcher.js");
13
+ Object.defineProperty(exports, "createMatcher", { enumerable: true, get: function () { return matcher_js_1.createMatcher; } });
14
+ var metadata_js_1 = require("./metadata.js");
15
+ Object.defineProperty(exports, "CONSTRUCTOR_METADATA_VERSION", { enumerable: true, get: function () { return metadata_js_1.CONSTRUCTOR_METADATA_VERSION; } });
16
+ Object.defineProperty(exports, "getInteractorConstructorMetadata", { enumerable: true, get: function () { return metadata_js_1.getInteractorConstructorMetadata; } });
17
+ Object.defineProperty(exports, "getMatcherConstructorMetadata", { enumerable: true, get: function () { return metadata_js_1.getMatcherConstructorMetadata; } });
18
+ Object.defineProperty(exports, "isInteractorConstructor", { enumerable: true, get: function () { return metadata_js_1.isInteractorConstructor; } });
19
+ Object.defineProperty(exports, "isMatcherConstructor", { enumerable: true, get: function () { return metadata_js_1.isMatcherConstructor; } });
12
20
  var including_js_1 = require("./matchers/including.js");
13
21
  Object.defineProperty(exports, "including", { enumerable: true, get: function () { return including_js_1.including; } });
14
22
  var matching_js_1 = require("./matchers/matching.js");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/src/index.ts"],"names":[],"mappings":";;;AAEA,mDAAgD;AAAvC,+GAAA,aAAa,OAAA;AACtB,+DAA0D;AAAjD,wHAAA,gBAAgB,OAAA;AACzB,+CAAgD;AAAvC,+GAAA,eAAe,OAAA;AACxB,yDAA+C;AAAtC,+GAAA,SAAS,OAAA;AAGlB,wDAAoD;AAA3C,yGAAA,SAAS,OAAA;AAClB,sDAAkD;AAAzC,uGAAA,QAAQ,OAAA;AACjB,4CAAwC;AAA/B,6FAAA,GAAG,OAAA;AACZ,0CAAsC;AAA7B,2FAAA,EAAE,OAAA;AACX,4CAAwC;AAA/B,6FAAA,GAAG,OAAA;AACZ,8CAA0C;AAAjC,+FAAA,IAAI,OAAA;AACb,gDAA4C;AAAnC,iGAAA,KAAK,OAAA;AAEd,+CAA2C;AAAlC,iGAAA,KAAK,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/src/index.ts"],"names":[],"mappings":";;;AAEA,mDAAgD;AAAvC,+GAAA,aAAa,OAAA;AACtB,+DAA0D;AAAjD,wHAAA,gBAAgB,OAAA;AACzB,+CAAgD;AAAvC,+GAAA,eAAe,OAAA;AACxB,yDAA+C;AAAtC,+GAAA,SAAS,OAAA;AAClB,2CAA6C;AAApC,2GAAA,aAAa,OAAA;AAEtB,6CAMuB;AALrB,2HAAA,4BAA4B,OAAA;AAC5B,+HAAA,gCAAgC,OAAA;AAChC,4HAAA,6BAA6B,OAAA;AAC7B,sHAAA,uBAAuB,OAAA;AACvB,mHAAA,oBAAoB,OAAA;AAOtB,wDAAoD;AAA3C,yGAAA,SAAS,OAAA;AAClB,sDAAkD;AAAzC,uGAAA,QAAQ,OAAA;AACjB,4CAAwC;AAA/B,6FAAA,GAAG,OAAA;AACZ,0CAAsC;AAA7B,2FAAA,EAAE,OAAA;AACX,4CAAwC;AAA/B,6FAAA,GAAG,OAAA;AACZ,8CAA0C;AAAjC,+FAAA,IAAI,OAAA;AACb,gDAA4C;AAAnC,iGAAA,KAAK,OAAA;AAEd,+CAA2C;AAAlC,iGAAA,KAAK,OAAA"}
@@ -4,6 +4,10 @@ export interface Matcher<T> {
4
4
  code?(): string;
5
5
  }
6
6
  export type MaybeMatcher<T> = Matcher<T> | T;
7
+ /**
8
+ * Create a matcher constructor that can be discovered by build tools.
9
+ */
10
+ export declare function createMatcher<F extends (...args: any[]) => Matcher<any>>(name: string, constructor: F): F;
7
11
  export declare function isMatcher<T>(value: MaybeMatcher<T>): value is Matcher<T>;
8
12
  export declare function matcherDescription<T>(value: MaybeMatcher<T>): string;
9
13
  export declare function applyMatcher<T>(value: MaybeMatcher<T>, actual: T): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"matcher.d.ts","sourceRoot":"","sources":["../../src/src/matcher.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,OAAO,CAAC,CAAC;IACxB,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC;IAC1B,WAAW,IAAI,MAAM,CAAC;IACtB,IAAI,CAAC,IAAI,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAE7C,wBAAgB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC,CAExE;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,CAMpE;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,OAAO,CAM1E;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,CAQ7D"}
1
+ {"version":3,"file":"matcher.d.ts","sourceRoot":"","sources":["../../src/src/matcher.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,OAAO,CAAC,CAAC;IACxB,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC;IAC1B,WAAW,IAAI,MAAM,CAAC;IACtB,IAAI,CAAC,IAAI,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAE7C;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,EACtE,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,CAAC,GACb,CAAC,CAGH;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC,CAExE;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,CAMpE;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,OAAO,CAM1E;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,CAQ7D"}
@@ -3,11 +3,20 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createMatcher = createMatcher;
6
7
  exports.isMatcher = isMatcher;
7
8
  exports.matcherDescription = matcherDescription;
8
9
  exports.applyMatcher = applyMatcher;
9
10
  exports.matcherCode = matcherCode;
10
11
  const lodash_isequal_1 = __importDefault(require("lodash.isequal"));
12
+ const metadata_js_1 = require("./metadata.js");
13
+ /**
14
+ * Create a matcher constructor that can be discovered by build tools.
15
+ */
16
+ function createMatcher(name, constructor) {
17
+ (0, metadata_js_1.defineMatcherConstructorMetadata)(constructor, { name });
18
+ return constructor;
19
+ }
11
20
  function isMatcher(value) {
12
21
  return value && typeof value.match === 'function' && typeof value.description === 'function';
13
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"matcher.js","sourceRoot":"","sources":["../../src/src/matcher.ts"],"names":[],"mappings":";;;;;AAUA,8BAEC;AAED,gDAMC;AAED,oCAMC;AAED,kCAQC;AAtCD,oEAAqC;AAUrC,SAAgB,SAAS,CAAI,KAAsB;IACjD,OAAO,KAAK,IAAI,OAAQ,KAAoB,CAAC,KAAK,KAAK,UAAU,IAAI,OAAQ,KAAoB,CAAC,WAAW,KAAK,UAAU,CAAC;AAC/H,CAAC;AAED,SAAgB,kBAAkB,CAAI,KAAsB;IAC1D,IAAG,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC;SAAM,CAAC;QACN,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC;AAED,SAAgB,YAAY,CAAI,KAAsB,EAAE,MAAS;IAC/D,IAAG,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;SAAM,CAAC;QACN,OAAO,IAAA,wBAAO,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAChC,CAAC;AACH,CAAC;AAED,SAAgB,WAAW,CAAI,KAAsB;IACnD,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;SAAM,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;SAAM,CAAC;QACN,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"matcher.js","sourceRoot":"","sources":["../../src/src/matcher.ts"],"names":[],"mappings":";;;;;AAcA,sCAMC;AAED,8BAEC;AAED,gDAMC;AAED,oCAMC;AAED,kCAQC;AAlDD,oEAAqC;AACrC,+CAAiE;AAUjE;;GAEG;AACH,SAAgB,aAAa,CAC3B,IAAY,EACZ,WAAc;IAEd,IAAA,8CAAgC,EAAC,WAAW,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAgB,SAAS,CAAI,KAAsB;IACjD,OAAO,KAAK,IAAI,OAAQ,KAAoB,CAAC,KAAK,KAAK,UAAU,IAAI,OAAQ,KAAoB,CAAC,WAAW,KAAK,UAAU,CAAC;AAC/H,CAAC;AAED,SAAgB,kBAAkB,CAAI,KAAsB;IAC1D,IAAG,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC;SAAM,CAAC;QACN,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC;AAED,SAAgB,YAAY,CAAI,KAAsB,EAAE,MAAS;IAC/D,IAAG,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;SAAM,CAAC;QACN,OAAO,IAAA,wBAAO,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAChC,CAAC;AACH,CAAC;AAED,SAAgB,WAAW,CAAI,KAAsB;IACnD,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;IACtB,CAAC;SAAM,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;QACnC,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;SAAM,CAAC;QACN,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"and.d.ts","sourceRoot":"","sources":["../../../src/src/matchers/and.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,YAAY,EAAiD,MAAM,eAAe,CAAC;AAE/G,wBAAgB,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAY7D"}
1
+ {"version":3,"file":"and.d.ts","sourceRoot":"","sources":["../../../src/src/matchers/and.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,YAAY,EAAgE,MAAM,eAAe,CAAC;AAE9H,wBAAgB,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAY7D"}
@@ -15,4 +15,5 @@ function and(...args) {
15
15
  }
16
16
  };
17
17
  }
18
+ (0, matcher_js_1.createMatcher)('and', and);
18
19
  //# sourceMappingURL=and.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"and.js","sourceRoot":"","sources":["../../../src/src/matchers/and.ts"],"names":[],"mappings":";;AAEA,kBAYC;AAdD,8CAA+G;AAE/G,SAAgB,GAAG,CAAI,GAAG,IAAuB;IAC/C,OAAO;QACL,KAAK,CAAC,MAAS;YACb,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,yBAAY,EAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QAChE,CAAC;QACD,WAAW;YACT,OAAO,IAAI,CAAC,GAAG,CAAC,+BAAkB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpD,CAAC;QACD,IAAI;YACF,OAAO,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAA,wBAAW,EAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAA;QAC/D,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"and.js","sourceRoot":"","sources":["../../../src/src/matchers/and.ts"],"names":[],"mappings":";;AAEA,kBAYC;AAdD,8CAA8H;AAE9H,SAAgB,GAAG,CAAI,GAAG,IAAuB;IAC/C,OAAO;QACL,KAAK,CAAC,MAAS;YACb,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,yBAAY,EAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QAChE,CAAC;QACD,WAAW;YACT,OAAO,IAAI,CAAC,GAAG,CAAC,+BAAkB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpD,CAAC;QACD,IAAI;YACF,OAAO,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAA,wBAAW,EAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAA;QAC/D,CAAC;KACF,CAAA;AACH,CAAC;AAED,IAAA,0BAAa,EAAC,KAAK,EAAE,GAAG,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"every.d.ts","sourceRoot":"","sources":["../../../src/src/matchers/every.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,YAAY,EAAiD,MAAM,eAAe,CAAC;AAE/G,wBAAgB,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAYxE"}
1
+ {"version":3,"file":"every.d.ts","sourceRoot":"","sources":["../../../src/src/matchers/every.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,YAAY,EAAgE,MAAM,eAAe,CAAC;AAE9H,wBAAgB,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAYxE"}
@@ -15,4 +15,5 @@ function every(expected) {
15
15
  }
16
16
  };
17
17
  }
18
+ (0, matcher_js_1.createMatcher)('every', every);
18
19
  //# sourceMappingURL=every.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"every.js","sourceRoot":"","sources":["../../../src/src/matchers/every.ts"],"names":[],"mappings":";;AAEA,sBAYC;AAdD,8CAA+G;AAE/G,SAAgB,KAAK,CAAI,QAAyB;IAChD,OAAO;QACL,KAAK,CAAC,MAAmB;YACvB,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,yBAAY,EAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;QAC5E,CAAC;QACD,WAAW;YACT,OAAO,cAAc,IAAA,+BAAkB,EAAC,QAAQ,CAAC,EAAE,CAAC;QACtD,CAAC;QACD,IAAI;YACF,OAAO,SAAS,IAAA,wBAAW,EAAC,QAAQ,CAAC,GAAG,CAAA;QAC1C,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"every.js","sourceRoot":"","sources":["../../../src/src/matchers/every.ts"],"names":[],"mappings":";;AAEA,sBAYC;AAdD,8CAA8H;AAE9H,SAAgB,KAAK,CAAI,QAAyB;IAChD,OAAO;QACL,KAAK,CAAC,MAAmB;YACvB,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,yBAAY,EAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;QAC5E,CAAC;QACD,WAAW;YACT,OAAO,cAAc,IAAA,+BAAkB,EAAC,QAAQ,CAAC,EAAE,CAAC;QACtD,CAAC;QACD,IAAI;YACF,OAAO,SAAS,IAAA,wBAAW,EAAC,QAAQ,CAAC,GAAG,CAAA;QAC1C,CAAC;KACF,CAAA;AACH,CAAC;AAED,IAAA,0BAAa,EAAC,OAAO,EAAE,KAAK,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"including.d.ts","sourceRoot":"","sources":["../../../src/src/matchers/including.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAc,MAAM,eAAe,CAAC;AAEzD,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAY5D"}
1
+ {"version":3,"file":"including.d.ts","sourceRoot":"","sources":["../../../src/src/matchers/including.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAA8B,MAAM,eAAe,CAAC;AAEzE,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAY5D"}
@@ -15,4 +15,5 @@ function including(subString) {
15
15
  }
16
16
  };
17
17
  }
18
+ (0, matcher_js_1.createMatcher)('including', including);
18
19
  //# sourceMappingURL=including.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"including.js","sourceRoot":"","sources":["../../../src/src/matchers/including.ts"],"names":[],"mappings":";;AAEA,8BAYC;AAdD,8CAAyD;AAEzD,SAAgB,SAAS,CAAC,SAAiB;IACzC,OAAO;QACL,KAAK,CAAC,MAAc;YAClB,OAAO,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACpC,CAAC;QACD,WAAW;YACT,OAAO,aAAa,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;QAClD,CAAC;QACD,IAAI;YACF,OAAO,aAAa,IAAA,wBAAW,EAAC,SAAS,CAAC,GAAG,CAAA;QAC/C,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"including.js","sourceRoot":"","sources":["../../../src/src/matchers/including.ts"],"names":[],"mappings":";;AAEA,8BAYC;AAdD,8CAAyE;AAEzE,SAAgB,SAAS,CAAC,SAAiB;IACzC,OAAO;QACL,KAAK,CAAC,MAAc;YAClB,OAAO,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACpC,CAAC;QACD,WAAW;YACT,OAAO,aAAa,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;QAClD,CAAC;QACD,IAAI;YACF,OAAO,aAAa,IAAA,wBAAW,EAAC,SAAS,CAAC,GAAG,CAAA;QAC/C,CAAC;KACF,CAAA;AACH,CAAC;AAED,IAAA,0BAAa,EAAC,WAAW,EAAE,SAAS,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"matching.d.ts","sourceRoot":"","sources":["../../../src/src/matchers/matching.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAe,MAAM,eAAe,CAAC;AAE1D,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAYxD"}
1
+ {"version":3,"file":"matching.d.ts","sourceRoot":"","sources":["../../../src/src/matchers/matching.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAA8B,MAAM,eAAe,CAAC;AAEzE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAYxD"}
@@ -15,4 +15,5 @@ function matching(regexp) {
15
15
  }
16
16
  };
17
17
  }
18
+ (0, matcher_js_1.createMatcher)('matching', matching);
18
19
  //# sourceMappingURL=matching.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"matching.js","sourceRoot":"","sources":["../../../src/src/matchers/matching.ts"],"names":[],"mappings":";;AAEA,4BAYC;AAdD,8CAA0D;AAE1D,SAAgB,QAAQ,CAAC,MAAc;IACrC,OAAO;QACL,KAAK,CAAC,MAAc;YAClB,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC;QACtC,CAAC;QACD,WAAW;YACT,OAAO,YAAY,MAAM,EAAE,CAAC;QAC9B,CAAC;QACD,IAAI;YACF,OAAO,YAAY,IAAA,wBAAW,EAAC,MAAM,CAAC,GAAG,CAAA;QAC3C,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"matching.js","sourceRoot":"","sources":["../../../src/src/matchers/matching.ts"],"names":[],"mappings":";;AAEA,4BAYC;AAdD,8CAAyE;AAEzE,SAAgB,QAAQ,CAAC,MAAc;IACrC,OAAO;QACL,KAAK,CAAC,MAAc;YAClB,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC;QACtC,CAAC;QACD,WAAW;YACT,OAAO,YAAY,MAAM,EAAE,CAAC;QAC9B,CAAC;QACD,IAAI;YACF,OAAO,YAAY,IAAA,wBAAW,EAAC,MAAM,CAAC,GAAG,CAAA;QAC3C,CAAC;KACF,CAAA;AACH,CAAC;AAED,IAAA,0BAAa,EAAC,UAAU,EAAE,QAAQ,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"not.d.ts","sourceRoot":"","sources":["../../../src/src/matchers/not.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,YAAY,EAAiD,MAAM,eAAe,CAAC;AAE/G,wBAAgB,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAY3D"}
1
+ {"version":3,"file":"not.d.ts","sourceRoot":"","sources":["../../../src/src/matchers/not.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,YAAY,EAAgE,MAAM,eAAe,CAAC;AAE9H,wBAAgB,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAY3D"}
@@ -15,4 +15,5 @@ function not(matcher) {
15
15
  }
16
16
  };
17
17
  }
18
+ (0, matcher_js_1.createMatcher)('not', not);
18
19
  //# sourceMappingURL=not.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"not.js","sourceRoot":"","sources":["../../../src/src/matchers/not.ts"],"names":[],"mappings":";;AAEA,kBAYC;AAdD,8CAA+G;AAE/G,SAAgB,GAAG,CAAI,OAAwB;IAC7C,OAAO;QACL,KAAK,CAAC,MAAS;YACb,OAAO,CAAC,IAAA,yBAAY,EAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACxC,CAAC;QACD,WAAW;YACT,OAAO,OAAO,IAAA,+BAAkB,EAAC,OAAO,CAAC,EAAE,CAAC;QAC9C,CAAC;QACD,IAAI;YACF,OAAO,OAAO,IAAA,wBAAW,EAAC,OAAO,CAAC,GAAG,CAAA;QACvC,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"not.js","sourceRoot":"","sources":["../../../src/src/matchers/not.ts"],"names":[],"mappings":";;AAEA,kBAYC;AAdD,8CAA8H;AAE9H,SAAgB,GAAG,CAAI,OAAwB;IAC7C,OAAO;QACL,KAAK,CAAC,MAAS;YACb,OAAO,CAAC,IAAA,yBAAY,EAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACxC,CAAC;QACD,WAAW;YACT,OAAO,OAAO,IAAA,+BAAkB,EAAC,OAAO,CAAC,EAAE,CAAC;QAC9C,CAAC;QACD,IAAI;YACF,OAAO,OAAO,IAAA,wBAAW,EAAC,OAAO,CAAC,GAAG,CAAA;QACvC,CAAC;KACF,CAAA;AACH,CAAC;AAED,IAAA,0BAAa,EAAC,KAAK,EAAE,GAAG,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"or.d.ts","sourceRoot":"","sources":["../../../src/src/matchers/or.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,YAAY,EAAiD,MAAM,eAAe,CAAC;AAE/G,wBAAgB,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAY5D"}
1
+ {"version":3,"file":"or.d.ts","sourceRoot":"","sources":["../../../src/src/matchers/or.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,YAAY,EAAgE,MAAM,eAAe,CAAC;AAE9H,wBAAgB,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAY5D"}
@@ -15,4 +15,5 @@ function or(...args) {
15
15
  }
16
16
  };
17
17
  }
18
+ (0, matcher_js_1.createMatcher)('or', or);
18
19
  //# sourceMappingURL=or.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"or.js","sourceRoot":"","sources":["../../../src/src/matchers/or.ts"],"names":[],"mappings":";;AAEA,gBAYC;AAdD,8CAA+G;AAE/G,SAAgB,EAAE,CAAI,GAAG,IAAuB;IAC9C,OAAO;QACL,KAAK,CAAC,MAAS;YACb,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,yBAAY,EAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QAC/D,CAAC;QACD,WAAW;YACT,OAAO,IAAI,CAAC,GAAG,CAAC,+BAAkB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnD,CAAC;QACD,IAAI;YACF,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAA,wBAAW,EAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAA;QAC9D,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"or.js","sourceRoot":"","sources":["../../../src/src/matchers/or.ts"],"names":[],"mappings":";;AAEA,gBAYC;AAdD,8CAA8H;AAE9H,SAAgB,EAAE,CAAI,GAAG,IAAuB;IAC9C,OAAO;QACL,KAAK,CAAC,MAAS;YACb,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,yBAAY,EAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QAC/D,CAAC;QACD,WAAW;YACT,OAAO,IAAI,CAAC,GAAG,CAAC,+BAAkB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnD,CAAC;QACD,IAAI;YACF,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAA,wBAAW,EAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAA;QAC9D,CAAC;KACF,CAAA;AACH,CAAC;AAED,IAAA,0BAAa,EAAC,IAAI,EAAE,EAAE,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"some.d.ts","sourceRoot":"","sources":["../../../src/src/matchers/some.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,YAAY,EAAiD,MAAM,eAAe,CAAC;AAE/G,wBAAgB,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAYvE"}
1
+ {"version":3,"file":"some.d.ts","sourceRoot":"","sources":["../../../src/src/matchers/some.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,YAAY,EAAgE,MAAM,eAAe,CAAC;AAE9H,wBAAgB,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAYvE"}
@@ -15,4 +15,5 @@ function some(expected) {
15
15
  }
16
16
  };
17
17
  }
18
+ (0, matcher_js_1.createMatcher)('some', some);
18
19
  //# sourceMappingURL=some.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"some.js","sourceRoot":"","sources":["../../../src/src/matchers/some.ts"],"names":[],"mappings":";;AAEA,oBAYC;AAdD,8CAA+G;AAE/G,SAAgB,IAAI,CAAI,QAAyB;IAC/C,OAAO;QACL,KAAK,CAAC,MAAmB;YACvB,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,yBAAY,EAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;QAC3E,CAAC;QACD,WAAW;YACT,OAAO,aAAa,IAAA,+BAAkB,EAAC,QAAQ,CAAC,EAAE,CAAC;QACrD,CAAC;QACD,IAAI;YACF,OAAO,QAAQ,IAAA,wBAAW,EAAC,QAAQ,CAAC,GAAG,CAAA;QACzC,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"some.js","sourceRoot":"","sources":["../../../src/src/matchers/some.ts"],"names":[],"mappings":";;AAEA,oBAYC;AAdD,8CAA8H;AAE9H,SAAgB,IAAI,CAAI,QAAyB;IAC/C,OAAO;QACL,KAAK,CAAC,MAAmB;YACvB,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,yBAAY,EAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;QAC3E,CAAC;QACD,WAAW;YACT,OAAO,aAAa,IAAA,+BAAkB,EAAC,QAAQ,CAAC,EAAE,CAAC;QACrD,CAAC;QACD,IAAI;YACF,OAAO,QAAQ,IAAA,wBAAW,EAAC,QAAQ,CAAC,GAAG,CAAA;QACzC,CAAC;KACF,CAAA;AACH,CAAC;AAED,IAAA,0BAAa,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC"}
@@ -1,2 +1,2 @@
1
- export type MergeObjects<A, B> = B & Omit<A, keyof B>;
1
+ export type MergeObjects<A, B> = keyof A extends never ? B : keyof B extends never ? A : B & Omit<A, keyof B>;
2
2
  //# sourceMappingURL=merge-objects.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"merge-objects.d.ts","sourceRoot":"","sources":["../../src/src/merge-objects.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"merge-objects.d.ts","sourceRoot":"","sources":["../../src/src/merge-objects.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,SAAS,KAAK,GAAG,CAAC,GACtD,MAAM,CAAC,SAAS,KAAK,GAAG,CAAC,GACzB,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC"}
@@ -0,0 +1,50 @@
1
+ import type { Matcher } from "./matcher.js";
2
+ import type { InteractorConstructor } from "./specification.js";
3
+ /**
4
+ * Version of the metadata attached to interactor and matcher constructors.
5
+ *
6
+ * Consumers should use the helpers in this module instead of reading the
7
+ * symbol properties directly.
8
+ */
9
+ export declare const CONSTRUCTOR_METADATA_VERSION: 1;
10
+ /** @internal */
11
+ export declare const INTERACTOR_CONSTRUCTOR_METADATA: unique symbol;
12
+ /** @internal */
13
+ export declare const MATCHER_CONSTRUCTOR_METADATA: unique symbol;
14
+ export interface InteractorConstructorMetadata {
15
+ readonly kind: "interactor";
16
+ readonly version: typeof CONSTRUCTOR_METADATA_VERSION;
17
+ readonly name: string;
18
+ readonly actions: readonly string[];
19
+ readonly filters: readonly string[];
20
+ }
21
+ export interface MatcherConstructorMetadata {
22
+ readonly kind: "matcher";
23
+ readonly version: typeof CONSTRUCTOR_METADATA_VERSION;
24
+ readonly name: string;
25
+ }
26
+ type AnyInteractorConstructor = InteractorConstructor<Element, any, any, any>;
27
+ type AnyMatcherConstructor = (...args: any[]) => Matcher<any>;
28
+ /**
29
+ * Return stable, serializable metadata for an interactor constructor.
30
+ */
31
+ export declare function getInteractorConstructorMetadata(value: unknown): InteractorConstructorMetadata | undefined;
32
+ /**
33
+ * Determine whether a value was created by {@link createInteractor}.
34
+ *
35
+ * The brand uses the global symbol registry so this works when the producer
36
+ * and consumer load different copies of `@interactors/core`.
37
+ */
38
+ export declare function isInteractorConstructor(value: unknown): value is AnyInteractorConstructor;
39
+ /**
40
+ * Return stable, serializable metadata for a matcher constructor.
41
+ */
42
+ export declare function getMatcherConstructorMetadata(value: unknown): MatcherConstructorMetadata | undefined;
43
+ /** Determine whether a value was created by {@link createMatcher}. */
44
+ export declare function isMatcherConstructor(value: unknown): value is AnyMatcherConstructor;
45
+ /** @internal */
46
+ export declare function defineInteractorConstructorMetadata(constructor: Function, metadata: Omit<InteractorConstructorMetadata, "kind" | "version">): void;
47
+ /** @internal */
48
+ export declare function defineMatcherConstructorMetadata(constructor: Function, metadata: Omit<MatcherConstructorMetadata, "kind" | "version">): void;
49
+ export {};
50
+ //# sourceMappingURL=metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/src/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAEhE;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,GAAa,CAAC;AAEvD,gBAAgB;AAChB,eAAO,MAAM,+BAA+B,eAE3C,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,4BAA4B,eAExC,CAAC;AAEF,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,4BAA4B,CAAC;IACtD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,OAAO,4BAA4B,CAAC;IACtD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,KAAK,wBAAwB,GAAG,qBAAqB,CACnD,OAAO,EACP,GAAG,EACH,GAAG,EACH,GAAG,CACJ,CAAC;AAEF,KAAK,qBAAqB,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;AAE9D;;GAEG;AACH,wBAAgB,gCAAgC,CAC9C,KAAK,EAAE,OAAO,GACb,6BAA6B,GAAG,SAAS,CAQ3C;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,wBAAwB,CAEnC;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,OAAO,GACb,0BAA0B,GAAG,SAAS,CAQxC;AAED,sEAAsE;AACtE,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,qBAAqB,CAEhC;AAED,gBAAgB;AAChB,wBAAgB,mCAAmC,CACjD,WAAW,EAAE,QAAQ,EACrB,QAAQ,EAAE,IAAI,CAAC,6BAA6B,EAAE,MAAM,GAAG,SAAS,CAAC,GAChE,IAAI,CAQN;AAED,gBAAgB;AAChB,wBAAgB,gCAAgC,CAC9C,WAAW,EAAE,QAAQ,EACrB,QAAQ,EAAE,IAAI,CAAC,0BAA0B,EAAE,MAAM,GAAG,SAAS,CAAC,GAC7D,IAAI,CAMN"}
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MATCHER_CONSTRUCTOR_METADATA = exports.INTERACTOR_CONSTRUCTOR_METADATA = exports.CONSTRUCTOR_METADATA_VERSION = void 0;
4
+ exports.getInteractorConstructorMetadata = getInteractorConstructorMetadata;
5
+ exports.isInteractorConstructor = isInteractorConstructor;
6
+ exports.getMatcherConstructorMetadata = getMatcherConstructorMetadata;
7
+ exports.isMatcherConstructor = isMatcherConstructor;
8
+ exports.defineInteractorConstructorMetadata = defineInteractorConstructorMetadata;
9
+ exports.defineMatcherConstructorMetadata = defineMatcherConstructorMetadata;
10
+ /**
11
+ * Version of the metadata attached to interactor and matcher constructors.
12
+ *
13
+ * Consumers should use the helpers in this module instead of reading the
14
+ * symbol properties directly.
15
+ */
16
+ exports.CONSTRUCTOR_METADATA_VERSION = 1;
17
+ /** @internal */
18
+ exports.INTERACTOR_CONSTRUCTOR_METADATA = Symbol.for("@interactors/core/interactor-constructor-metadata");
19
+ /** @internal */
20
+ exports.MATCHER_CONSTRUCTOR_METADATA = Symbol.for("@interactors/core/matcher-constructor-metadata");
21
+ /**
22
+ * Return stable, serializable metadata for an interactor constructor.
23
+ */
24
+ function getInteractorConstructorMetadata(value) {
25
+ if (typeof value !== "function") {
26
+ return undefined;
27
+ }
28
+ let metadata = Reflect.get(value, exports.INTERACTOR_CONSTRUCTOR_METADATA);
29
+ return isInteractorConstructorMetadata(metadata) ? metadata : undefined;
30
+ }
31
+ /**
32
+ * Determine whether a value was created by {@link createInteractor}.
33
+ *
34
+ * The brand uses the global symbol registry so this works when the producer
35
+ * and consumer load different copies of `@interactors/core`.
36
+ */
37
+ function isInteractorConstructor(value) {
38
+ return getInteractorConstructorMetadata(value) !== undefined;
39
+ }
40
+ /**
41
+ * Return stable, serializable metadata for a matcher constructor.
42
+ */
43
+ function getMatcherConstructorMetadata(value) {
44
+ if (typeof value !== "function") {
45
+ return undefined;
46
+ }
47
+ let metadata = Reflect.get(value, exports.MATCHER_CONSTRUCTOR_METADATA);
48
+ return isMatcherConstructorMetadata(metadata) ? metadata : undefined;
49
+ }
50
+ /** Determine whether a value was created by {@link createMatcher}. */
51
+ function isMatcherConstructor(value) {
52
+ return getMatcherConstructorMetadata(value) !== undefined;
53
+ }
54
+ /** @internal */
55
+ function defineInteractorConstructorMetadata(constructor, metadata) {
56
+ defineMetadata(constructor, exports.INTERACTOR_CONSTRUCTOR_METADATA, {
57
+ kind: "interactor",
58
+ version: exports.CONSTRUCTOR_METADATA_VERSION,
59
+ name: metadata.name,
60
+ actions: Object.freeze([...metadata.actions].sort()),
61
+ filters: Object.freeze([...metadata.filters].sort()),
62
+ });
63
+ }
64
+ /** @internal */
65
+ function defineMatcherConstructorMetadata(constructor, metadata) {
66
+ defineMetadata(constructor, exports.MATCHER_CONSTRUCTOR_METADATA, {
67
+ kind: "matcher",
68
+ version: exports.CONSTRUCTOR_METADATA_VERSION,
69
+ name: metadata.name,
70
+ });
71
+ }
72
+ function defineMetadata(constructor, key, metadata) {
73
+ Object.defineProperty(constructor, key, {
74
+ configurable: false,
75
+ enumerable: false,
76
+ writable: false,
77
+ value: Object.freeze(metadata),
78
+ });
79
+ }
80
+ function isInteractorConstructorMetadata(value) {
81
+ if (!isRecord(value)) {
82
+ return false;
83
+ }
84
+ return value.kind === "interactor" &&
85
+ value.version === exports.CONSTRUCTOR_METADATA_VERSION &&
86
+ typeof value.name === "string" &&
87
+ isStringArray(value.actions) &&
88
+ isStringArray(value.filters);
89
+ }
90
+ function isMatcherConstructorMetadata(value) {
91
+ if (!isRecord(value)) {
92
+ return false;
93
+ }
94
+ return value.kind === "matcher" &&
95
+ value.version === exports.CONSTRUCTOR_METADATA_VERSION &&
96
+ typeof value.name === "string";
97
+ }
98
+ function isRecord(value) {
99
+ return typeof value === "object" && value !== null;
100
+ }
101
+ function isStringArray(value) {
102
+ return Array.isArray(value) &&
103
+ value.every((item) => typeof item === "string");
104
+ }
105
+ //# sourceMappingURL=metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/src/metadata.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,7 @@ import { createInteraction, type AssertionInteraction, type ActionInteraction }
24
24
  import { isMatcher } from './matcher.js';
25
25
  import { matching } from './matchers/matching.js';
26
26
  import { hasMatchMatching, resolveEmpty, resolveFirst, resolveUnique, unsafeSyncResolveParent, unsafeSyncResolveUnique } from './resolvers.js';
27
+ import { defineInteractorConstructorMetadata } from "./metadata.js";
27
28
 
28
29
  const defaultLocator: FilterDefinition<string, Element> = (element) => element.textContent || "";
29
30
 
@@ -200,7 +201,7 @@ export function createConstructor<E extends Element, FP extends FilterParams<any
200
201
  return instantiateInteractor({ name, specification, filter, locator, ancestors: [] }, unsafeSyncResolveUnique);
201
202
  }
202
203
 
203
- return Object.assign(initInteractor, {
204
+ let constructor = Object.assign(initInteractor, {
204
205
  interactorName: name,
205
206
  selector: (value: string): InteractorConstructor<E, FP, FM, AM> => {
206
207
  return createConstructor(name, { ...specification, selector: value });
@@ -218,4 +219,12 @@ export function createConstructor<E extends Element, FP extends FilterParams<any
218
219
  return createConstructor(newName, specification) as unknown as InteractorConstructor<ER, FP, FM, AM>;
219
220
  },
220
221
  }) as unknown as InteractorConstructor<E, FP, FM, AM>;
222
+
223
+ defineInteractorConstructorMetadata(constructor, {
224
+ name,
225
+ actions: Object.keys(specification.actions ?? {}),
226
+ filters: Object.keys(specification.filters ?? {}),
227
+ });
228
+
229
+ return constructor;
221
230
  }
package/src/src/errors.ts CHANGED
@@ -1,15 +1,15 @@
1
1
  export class NoSuchElementError extends Error {
2
- name = "NoSuchElementError";
2
+ override name = "NoSuchElementError";
3
3
  }
4
4
 
5
5
  export class AmbiguousElementError extends Error {
6
- name = "AmbiguousElementError";
6
+ override name = "AmbiguousElementError";
7
7
  }
8
8
 
9
9
  export class NotAbsentError extends Error {
10
- name = "NotAbsentError";
10
+ override name = "NotAbsentError";
11
11
  }
12
12
 
13
13
  export class FilterNotMatchingError extends Error {
14
- name = "FilterNotMatchingError";
14
+ override name = "FilterNotMatchingError";
15
15
  }
package/src/src/index.ts CHANGED
@@ -4,7 +4,19 @@ export { isInteraction } from './interaction.js'
4
4
  export { createInteractor } from './create-interactor.js';
5
5
  export { createInspector } from './inspector.js'
6
6
  export { isVisible } from 'element-is-visible';
7
+ export { createMatcher } from './matcher.js';
7
8
  export type { Matcher } from './matcher.js';
9
+ export {
10
+ CONSTRUCTOR_METADATA_VERSION,
11
+ getInteractorConstructorMetadata,
12
+ getMatcherConstructorMetadata,
13
+ isInteractorConstructor,
14
+ isMatcherConstructor,
15
+ } from './metadata.js';
16
+ export type {
17
+ InteractorConstructorMetadata,
18
+ MatcherConstructorMetadata,
19
+ } from './metadata.js';
8
20
 
9
21
  export { including } from './matchers/including.js';
10
22
  export { matching } from './matchers/matching.js';
@@ -1,4 +1,5 @@
1
1
  import isEqual from 'lodash.isequal';
2
+ import { defineMatcherConstructorMetadata } from './metadata.js';
2
3
 
3
4
  export interface Matcher<T> {
4
5
  match(actual: T): boolean;
@@ -8,6 +9,17 @@ export interface Matcher<T> {
8
9
 
9
10
  export type MaybeMatcher<T> = Matcher<T> | T;
10
11
 
12
+ /**
13
+ * Create a matcher constructor that can be discovered by build tools.
14
+ */
15
+ export function createMatcher<F extends (...args: any[]) => Matcher<any>>(
16
+ name: string,
17
+ constructor: F,
18
+ ): F {
19
+ defineMatcherConstructorMetadata(constructor, { name });
20
+ return constructor;
21
+ }
22
+
11
23
  export function isMatcher<T>(value: MaybeMatcher<T>): value is Matcher<T> {
12
24
  return value && typeof (value as Matcher<T>).match === 'function' && typeof (value as Matcher<T>).description === 'function';
13
25
  }
@@ -1,4 +1,4 @@
1
- import { type Matcher, type MaybeMatcher, matcherDescription, applyMatcher, matcherCode } from '../matcher.js';
1
+ import { type Matcher, type MaybeMatcher, matcherDescription, applyMatcher, matcherCode, createMatcher } from '../matcher.js';
2
2
 
3
3
  export function and<T>(...args: MaybeMatcher<T>[]): Matcher<T> {
4
4
  return {
@@ -13,3 +13,5 @@ export function and<T>(...args: MaybeMatcher<T>[]): Matcher<T> {
13
13
  }
14
14
  }
15
15
  }
16
+
17
+ createMatcher('and', and);
@@ -1,4 +1,4 @@
1
- import { type Matcher, type MaybeMatcher, applyMatcher, matcherDescription, matcherCode } from '../matcher.js';
1
+ import { type Matcher, type MaybeMatcher, applyMatcher, matcherDescription, matcherCode, createMatcher } from '../matcher.js';
2
2
 
3
3
  export function every<T>(expected: MaybeMatcher<T>): Matcher<Iterable<T>> {
4
4
  return {
@@ -13,3 +13,5 @@ export function every<T>(expected: MaybeMatcher<T>): Matcher<Iterable<T>> {
13
13
  }
14
14
  }
15
15
  }
16
+
17
+ createMatcher('every', every);
@@ -1,4 +1,4 @@
1
- import { type Matcher, matcherCode} from '../matcher.js';
1
+ import { type Matcher, matcherCode, createMatcher } from '../matcher.js';
2
2
 
3
3
  export function including(subString: string): Matcher<string> {
4
4
  return {
@@ -13,3 +13,5 @@ export function including(subString: string): Matcher<string> {
13
13
  }
14
14
  }
15
15
  }
16
+
17
+ createMatcher('including', including);
@@ -1,4 +1,4 @@
1
- import { type Matcher, matcherCode } from '../matcher.js';
1
+ import { type Matcher, matcherCode, createMatcher } from '../matcher.js';
2
2
 
3
3
  export function matching(regexp: RegExp): Matcher<string> {
4
4
  return {
@@ -13,3 +13,5 @@ export function matching(regexp: RegExp): Matcher<string> {
13
13
  }
14
14
  }
15
15
  }
16
+
17
+ createMatcher('matching', matching);