@theseam/ui-common 0.4.13 → 0.4.15

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 (139) hide show
  1. package/buttons/public-api.d.ts +1 -0
  2. package/buttons/testing/anchor-badge-button.harness.d.ts +16 -0
  3. package/buttons/testing/anchor-button.harness.d.ts +16 -0
  4. package/buttons/testing/badge-button.harness.d.ts +15 -0
  5. package/buttons/testing/base-badge-button.harness.d.ts +15 -0
  6. package/buttons/testing/base-button.harness.d.ts +19 -0
  7. package/buttons/testing/button.harness.d.ts +15 -0
  8. package/buttons/testing/index.d.ts +5 -0
  9. package/buttons/testing/toggle-button.harness.d.ts +21 -0
  10. package/checkbox/checkbox.component.d.ts +1 -1
  11. package/checkbox/checkbox.module.d.ts +2 -3
  12. package/datatable/datatable.module.d.ts +1 -1
  13. package/esm2020/buttons/button/button.component.mjs +2 -1
  14. package/esm2020/buttons/public-api.mjs +2 -1
  15. package/esm2020/buttons/testing/anchor-badge-button.harness.mjs +18 -0
  16. package/esm2020/buttons/testing/anchor-button.harness.mjs +18 -0
  17. package/esm2020/buttons/testing/badge-button.harness.mjs +14 -0
  18. package/esm2020/buttons/testing/base-badge-button.harness.mjs +29 -0
  19. package/esm2020/buttons/testing/base-button.harness.mjs +41 -0
  20. package/esm2020/buttons/testing/button.harness.mjs +16 -0
  21. package/esm2020/buttons/testing/index.mjs +6 -0
  22. package/esm2020/buttons/testing/toggle-button.harness.mjs +25 -0
  23. package/esm2020/checkbox/checkbox.component.mjs +8 -3
  24. package/esm2020/checkbox/checkbox.module.mjs +5 -12
  25. package/esm2020/datatable/datatable.module.mjs +5 -5
  26. package/esm2020/form-field/form-field.component.mjs +4 -4
  27. package/esm2020/framework/schema-form/index.mjs +2 -1
  28. package/esm2020/framework/schema-form/schema-form-framework.component.mjs +6 -3
  29. package/esm2020/framework/schema-form/schema-form-framework.mjs +62 -7
  30. package/esm2020/framework/schema-form/schema-form-widget.mjs +2 -0
  31. package/esm2020/framework/schema-form/schema-form.module.mjs +1 -8
  32. package/esm2020/framework/schema-form-controls/schema-form-checkbox/schema-form-checkbox.component.mjs +21 -11
  33. package/esm2020/framework/schema-form-controls/schema-form-divider/schema-form-divider.component.mjs +20 -0
  34. package/esm2020/framework/schema-form-controls/schema-form-input/schema-form-input.component.mjs +17 -8
  35. package/esm2020/framework/schema-form-controls/schema-form-number/schema-form-number.component.mjs +14 -5
  36. package/esm2020/framework/schema-form-controls/schema-form-select/schema-form-select.component.mjs +19 -9
  37. package/esm2020/framework/schema-form-controls/schema-form-submit/schema-form-submit.component.mjs +21 -13
  38. package/esm2020/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.mjs +30 -18
  39. package/esm2020/framework/schema-form-controls/schema-form-tel/schema-form-tel.component.mjs +48 -0
  40. package/esm2020/framework/schema-form-controls/schema-form-tiled-select/schema-form-tiled-select.component.mjs +57 -0
  41. package/esm2020/google-maps/google-maps/google-maps.component.mjs +9 -2
  42. package/esm2020/google-maps/google-maps-api-loader/lazy-google-maps-api-loader.mjs +2 -1
  43. package/esm2020/menu/public-api.mjs +5 -1
  44. package/esm2020/menu/testing/menu-footer.harness.mjs +28 -0
  45. package/esm2020/menu/testing/menu-header.harness.mjs +23 -0
  46. package/esm2020/menu/testing/menu-item.harness.mjs +59 -0
  47. package/esm2020/menu/testing/menu.harness.mjs +163 -0
  48. package/esm2020/menu/testing/utils.mjs +13 -0
  49. package/esm2020/story-helpers/args-to-tpl.mjs +83 -0
  50. package/esm2020/story-helpers/public-api.mjs +2 -2
  51. package/esm2020/tel-input/public-api.mjs +2 -1
  52. package/esm2020/tel-input/tel-input/tel-input.component.mjs +22 -10
  53. package/esm2020/tel-input/tel-input.directive.mjs +12 -13
  54. package/esm2020/tel-input/tel-input.module.mjs +10 -9
  55. package/esm2020/tel-input/testing/tel-input.harness.mjs +49 -0
  56. package/esm2020/testing/harnesses/ng-select-dropdown.harness.mjs +39 -0
  57. package/esm2020/testing/harnesses/ng-select-option.harness.mjs +26 -0
  58. package/esm2020/testing/harnesses/ng-select.harness.mjs +104 -0
  59. package/esm2020/testing/public-api.mjs +4 -1
  60. package/esm2020/tiled-select/components/tiled-select/tiled-select.component.mjs +1 -1
  61. package/fesm2015/theseam-ui-common-buttons.mjs +181 -3
  62. package/fesm2015/theseam-ui-common-buttons.mjs.map +1 -1
  63. package/fesm2015/theseam-ui-common-checkbox.mjs +12 -14
  64. package/fesm2015/theseam-ui-common-checkbox.mjs.map +1 -1
  65. package/fesm2015/theseam-ui-common-datatable.mjs +4 -4
  66. package/fesm2015/theseam-ui-common-datatable.mjs.map +1 -1
  67. package/fesm2015/theseam-ui-common-form-field.mjs +3 -3
  68. package/fesm2015/theseam-ui-common-form-field.mjs.map +1 -1
  69. package/fesm2015/theseam-ui-common-framework.mjs +248 -164
  70. package/fesm2015/theseam-ui-common-framework.mjs.map +1 -1
  71. package/fesm2015/theseam-ui-common-google-maps.mjs +10 -1
  72. package/fesm2015/theseam-ui-common-google-maps.mjs.map +1 -1
  73. package/fesm2015/theseam-ui-common-menu.mjs +329 -3
  74. package/fesm2015/theseam-ui-common-menu.mjs.map +1 -1
  75. package/fesm2015/theseam-ui-common-story-helpers.mjs +86 -1
  76. package/fesm2015/theseam-ui-common-story-helpers.mjs.map +1 -1
  77. package/fesm2015/theseam-ui-common-tel-input.mjs +105 -29
  78. package/fesm2015/theseam-ui-common-tel-input.mjs.map +1 -1
  79. package/fesm2015/theseam-ui-common-testing.mjs +197 -1
  80. package/fesm2015/theseam-ui-common-testing.mjs.map +1 -1
  81. package/fesm2015/theseam-ui-common-tiled-select.mjs.map +1 -1
  82. package/fesm2020/theseam-ui-common-buttons.mjs +154 -2
  83. package/fesm2020/theseam-ui-common-buttons.mjs.map +1 -1
  84. package/fesm2020/theseam-ui-common-checkbox.mjs +12 -14
  85. package/fesm2020/theseam-ui-common-checkbox.mjs.map +1 -1
  86. package/fesm2020/theseam-ui-common-datatable.mjs +4 -4
  87. package/fesm2020/theseam-ui-common-datatable.mjs.map +1 -1
  88. package/fesm2020/theseam-ui-common-form-field.mjs +3 -3
  89. package/fesm2020/theseam-ui-common-form-field.mjs.map +1 -1
  90. package/fesm2020/theseam-ui-common-framework.mjs +236 -162
  91. package/fesm2020/theseam-ui-common-framework.mjs.map +1 -1
  92. package/fesm2020/theseam-ui-common-google-maps.mjs +9 -1
  93. package/fesm2020/theseam-ui-common-google-maps.mjs.map +1 -1
  94. package/fesm2020/theseam-ui-common-menu.mjs +275 -2
  95. package/fesm2020/theseam-ui-common-menu.mjs.map +1 -1
  96. package/fesm2020/theseam-ui-common-story-helpers.mjs +84 -1
  97. package/fesm2020/theseam-ui-common-story-helpers.mjs.map +1 -1
  98. package/fesm2020/theseam-ui-common-tel-input.mjs +89 -29
  99. package/fesm2020/theseam-ui-common-tel-input.mjs.map +1 -1
  100. package/fesm2020/theseam-ui-common-testing.mjs +165 -1
  101. package/fesm2020/theseam-ui-common-testing.mjs.map +1 -1
  102. package/fesm2020/theseam-ui-common-tiled-select.mjs.map +1 -1
  103. package/framework/schema-form/index.d.ts +1 -0
  104. package/framework/schema-form/schema-form-framework.d.ts +12 -1
  105. package/framework/schema-form/schema-form-widget.d.ts +61 -0
  106. package/framework/schema-form/schema-form.module.d.ts +1 -2
  107. package/framework/schema-form-controls/schema-form-checkbox/schema-form-checkbox.component.d.ts +12 -11
  108. package/framework/schema-form-controls/schema-form-divider/schema-form-divider.component.d.ts +12 -0
  109. package/framework/schema-form-controls/schema-form-input/schema-form-input.component.d.ts +10 -9
  110. package/framework/schema-form-controls/schema-form-number/schema-form-number.component.d.ts +8 -7
  111. package/framework/schema-form-controls/schema-form-select/schema-form-select.component.d.ts +10 -9
  112. package/framework/schema-form-controls/schema-form-submit/schema-form-submit.component.d.ts +10 -9
  113. package/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.d.ts +10 -9
  114. package/framework/schema-form-controls/schema-form-tel/schema-form-tel.component.d.ts +23 -0
  115. package/framework/schema-form-controls/schema-form-tiled-select/schema-form-tiled-select.component.d.ts +32 -0
  116. package/google-maps/google-maps/google-maps.component.d.ts +2 -1
  117. package/google-maps/google-maps-api-loader/lazy-google-maps-api-loader.d.ts +1 -0
  118. package/menu/menu-footer-action/menu-footer-action.component.d.ts +1 -1
  119. package/menu/public-api.d.ts +4 -0
  120. package/menu/testing/menu-footer.harness.d.ts +22 -0
  121. package/menu/testing/menu-header.harness.d.ts +18 -0
  122. package/menu/testing/menu-item.harness.d.ts +37 -0
  123. package/menu/testing/menu.harness.d.ts +74 -0
  124. package/menu/testing/utils.d.ts +5 -0
  125. package/package.json +1 -1
  126. package/story-helpers/args-to-tpl.d.ts +25 -0
  127. package/story-helpers/public-api.d.ts +1 -0
  128. package/tel-input/public-api.d.ts +1 -0
  129. package/tel-input/tel-input/tel-input.component.d.ts +2 -2
  130. package/tel-input/tel-input.directive.d.ts +1 -1
  131. package/tel-input/tel-input.module.d.ts +7 -7
  132. package/tel-input/testing/tel-input.harness.d.ts +19 -0
  133. package/testing/harnesses/ng-select-dropdown.harness.d.ts +23 -0
  134. package/testing/harnesses/ng-select-option.harness.d.ts +18 -0
  135. package/testing/harnesses/ng-select.harness.d.ts +50 -0
  136. package/testing/public-api.d.ts +3 -0
  137. package/tiled-select/components/tiled-select/tiled-select.component.d.ts +10 -10
  138. package/esm2020/framework/schema-form-controls/schema-form-controls.module.mjs +0 -79
  139. package/framework/schema-form-controls/schema-form-controls.module.d.ts +0 -20
@@ -0,0 +1,39 @@
1
+ import { ComponentHarness, HarnessPredicate } from '@angular/cdk/testing';
2
+ import { TheSeamNgSelectOptionHarness } from './ng-select-option.harness';
3
+ export class TheSeamNgSelectDropdownHarness extends ComponentHarness {
4
+ // private readonly _ngSelect = this.locatorFor(TheSeamNgSelectDropdownHarness)
5
+ // private readonly _requiredIndicator = this.locatorFor(TheSeamFormFieldRequiredIndicatorHarness)
6
+ // private readonly _valueLabel = this.locatorForOptional('.ng-value-label')
7
+ // private readonly _options = this.locatorForOptional(TheSeamNgSelectOptionHarness)
8
+ /** Creates a `HarnessPredicate` used to locate a particular `MyMenuHarness`. */
9
+ static with(options) {
10
+ return new HarnessPredicate(TheSeamNgSelectDropdownHarness, options)
11
+ .addOption('field id', options.id, (harness, id) => HarnessPredicate.stringMatches(harness.getId(), id));
12
+ }
13
+ async getId() {
14
+ return (await this.host()).getAttribute('id');
15
+ }
16
+ /**
17
+ * Gets a list of `TheSeamNgSelectOptionHarness` representing the items in the menu.
18
+ * @param filters Optionally filters which menu items are included.
19
+ */
20
+ async getOptions(filters) {
21
+ return this.locatorForAll(TheSeamNgSelectOptionHarness.with({
22
+ ...(filters || {}),
23
+ }))();
24
+ }
25
+ /**
26
+ * Clicks an option in the dropdown.
27
+ * @param optionFilter A filter used to represent which option in the dropdown should be clicked. The
28
+ * first matching dropdown option will be clicked.
29
+ */
30
+ async clickOption(optionFilter) {
31
+ const options = await this.getOptions(optionFilter);
32
+ if (!options.length) {
33
+ throw Error(`Could not find option matching ${JSON.stringify(optionFilter)}`);
34
+ }
35
+ return options[0].click();
36
+ }
37
+ }
38
+ TheSeamNgSelectDropdownHarness.hostSelector = 'ng-dropdown-panel';
39
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctc2VsZWN0LWRyb3Bkb3duLmhhcm5lc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdGVzdGluZy9oYXJuZXNzZXMvbmctc2VsZWN0LWRyb3Bkb3duLmhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFzQixnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBRzdGLE9BQU8sRUFBRSw0QkFBNEIsRUFBdUMsTUFBTSw0QkFBNEIsQ0FBQTtBQU85RyxNQUFNLE9BQU8sOEJBQStCLFNBQVEsZ0JBQWdCO0lBR2xFLCtFQUErRTtJQUMvRSxrR0FBa0c7SUFDbEcsNEVBQTRFO0lBQzVFLG9GQUFvRjtJQUVwRixnRkFBZ0Y7SUFDaEYsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUE4QztRQUN4RCxPQUFPLElBQUksZ0JBQWdCLENBQUMsOEJBQThCLEVBQUUsT0FBTyxDQUFDO2FBQy9ELFNBQVMsQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLEVBQUUsRUFDN0IsQ0FBQyxPQUFPLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUE7SUFDL0UsQ0FBQztJQUVNLEtBQUssQ0FBQyxLQUFLO1FBQ2hCLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUMvQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLFVBQVUsQ0FDZCxPQUErRDtRQUUvRCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQ3ZCLDRCQUE0QixDQUFDLElBQUksQ0FBQztZQUNoQyxHQUFHLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQztTQUMyQixDQUFDLENBQ2pELEVBQUUsQ0FBQTtJQUNMLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLFdBQVcsQ0FDZixZQUFtRTtRQUVuRSxNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLENBQUE7UUFDbkQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUU7WUFDbkIsTUFBTSxLQUFLLENBQUMsa0NBQWtDLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxDQUFBO1NBQzlFO1FBRUQsT0FBTyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUE7SUFDM0IsQ0FBQzs7QUE5Q00sMkNBQVksR0FBRyxtQkFBbUIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbidcbmltcG9ydCB7IEJhc2VIYXJuZXNzRmlsdGVycywgQ29tcG9uZW50SGFybmVzcywgSGFybmVzc1ByZWRpY2F0ZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJ1xuXG5pbXBvcnQgeyBUaGVTZWFtRm9ybUZpZWxkUmVxdWlyZWRJbmRpY2F0b3JIYXJuZXNzIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2Zvcm0tZmllbGQnXG5pbXBvcnQgeyBUaGVTZWFtTmdTZWxlY3RPcHRpb25IYXJuZXNzLCBUaGVTZWFtTmdTZWxlY3RPcHRpb25IYXJuZXNzRmlsdGVycyB9IGZyb20gJy4vbmctc2VsZWN0LW9wdGlvbi5oYXJuZXNzJ1xuXG5leHBvcnQgaW50ZXJmYWNlIFRoZVNlYW1OZ1NlbGVjdERyb3Bkb3duSGFybmVzc0ZpbHRlcnMgZXh0ZW5kcyBCYXNlSGFybmVzc0ZpbHRlcnMge1xuICAvKiogRmlsdGVycyBiYXNlZCBvbiB0aGUgbmFtZSBvZiB0aGUgZmllbGQuICovXG4gIGlkPzogc3RyaW5nIHwgUmVnRXhwXG59XG5cbmV4cG9ydCBjbGFzcyBUaGVTZWFtTmdTZWxlY3REcm9wZG93bkhhcm5lc3MgZXh0ZW5kcyBDb21wb25lbnRIYXJuZXNzIHtcbiAgc3RhdGljIGhvc3RTZWxlY3RvciA9ICduZy1kcm9wZG93bi1wYW5lbCdcblxuICAvLyBwcml2YXRlIHJlYWRvbmx5IF9uZ1NlbGVjdCA9IHRoaXMubG9jYXRvckZvcihUaGVTZWFtTmdTZWxlY3REcm9wZG93bkhhcm5lc3MpXG4gIC8vIHByaXZhdGUgcmVhZG9ubHkgX3JlcXVpcmVkSW5kaWNhdG9yID0gdGhpcy5sb2NhdG9yRm9yKFRoZVNlYW1Gb3JtRmllbGRSZXF1aXJlZEluZGljYXRvckhhcm5lc3MpXG4gIC8vIHByaXZhdGUgcmVhZG9ubHkgX3ZhbHVlTGFiZWwgPSB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbCgnLm5nLXZhbHVlLWxhYmVsJylcbiAgLy8gcHJpdmF0ZSByZWFkb25seSBfb3B0aW9ucyA9IHRoaXMubG9jYXRvckZvck9wdGlvbmFsKFRoZVNlYW1OZ1NlbGVjdE9wdGlvbkhhcm5lc3MpXG5cbiAgLyoqIENyZWF0ZXMgYSBgSGFybmVzc1ByZWRpY2F0ZWAgdXNlZCB0byBsb2NhdGUgYSBwYXJ0aWN1bGFyIGBNeU1lbnVIYXJuZXNzYC4gKi9cbiAgc3RhdGljIHdpdGgob3B0aW9uczogVGhlU2VhbU5nU2VsZWN0RHJvcGRvd25IYXJuZXNzRmlsdGVycyk6IEhhcm5lc3NQcmVkaWNhdGU8VGhlU2VhbU5nU2VsZWN0RHJvcGRvd25IYXJuZXNzPiB7XG4gICAgcmV0dXJuIG5ldyBIYXJuZXNzUHJlZGljYXRlKFRoZVNlYW1OZ1NlbGVjdERyb3Bkb3duSGFybmVzcywgb3B0aW9ucylcbiAgICAgICAgLmFkZE9wdGlvbignZmllbGQgaWQnLCBvcHRpb25zLmlkLFxuICAgICAgICAgICAgKGhhcm5lc3MsIGlkKSA9PiBIYXJuZXNzUHJlZGljYXRlLnN0cmluZ01hdGNoZXMoaGFybmVzcy5nZXRJZCgpLCBpZCkpXG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0SWQoKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmhvc3QoKSkuZ2V0QXR0cmlidXRlKCdpZCcpXG4gIH1cblxuICAvKipcbiAgICogR2V0cyBhIGxpc3Qgb2YgYFRoZVNlYW1OZ1NlbGVjdE9wdGlvbkhhcm5lc3NgIHJlcHJlc2VudGluZyB0aGUgaXRlbXMgaW4gdGhlIG1lbnUuXG4gICAqIEBwYXJhbSBmaWx0ZXJzIE9wdGlvbmFsbHkgZmlsdGVycyB3aGljaCBtZW51IGl0ZW1zIGFyZSBpbmNsdWRlZC5cbiAgICovXG4gIGFzeW5jIGdldE9wdGlvbnMoXG4gICAgZmlsdGVycz86IE9taXQ8VGhlU2VhbU5nU2VsZWN0T3B0aW9uSGFybmVzc0ZpbHRlcnMsICdhbmNlc3Rvcic+LFxuICApOiBQcm9taXNlPFRoZVNlYW1OZ1NlbGVjdE9wdGlvbkhhcm5lc3NbXT4ge1xuICAgIHJldHVybiB0aGlzLmxvY2F0b3JGb3JBbGwoXG4gICAgICBUaGVTZWFtTmdTZWxlY3RPcHRpb25IYXJuZXNzLndpdGgoe1xuICAgICAgICAuLi4oZmlsdGVycyB8fCB7fSksXG4gICAgICB9IHNhdGlzZmllcyBUaGVTZWFtTmdTZWxlY3RPcHRpb25IYXJuZXNzRmlsdGVycyksXG4gICAgKSgpXG4gIH1cblxuICAvKipcbiAgICogQ2xpY2tzIGFuIG9wdGlvbiBpbiB0aGUgZHJvcGRvd24uXG4gICAqIEBwYXJhbSBvcHRpb25GaWx0ZXIgQSBmaWx0ZXIgdXNlZCB0byByZXByZXNlbnQgd2hpY2ggb3B0aW9uIGluIHRoZSBkcm9wZG93biBzaG91bGQgYmUgY2xpY2tlZC4gVGhlXG4gICAqICAgICBmaXJzdCBtYXRjaGluZyBkcm9wZG93biBvcHRpb24gd2lsbCBiZSBjbGlja2VkLlxuICAgKi9cbiAgYXN5bmMgY2xpY2tPcHRpb24oXG4gICAgb3B0aW9uRmlsdGVyOiBPbWl0PFRoZVNlYW1OZ1NlbGVjdE9wdGlvbkhhcm5lc3NGaWx0ZXJzLCAnYW5jZXN0b3InPlxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBvcHRpb25zID0gYXdhaXQgdGhpcy5nZXRPcHRpb25zKG9wdGlvbkZpbHRlcilcbiAgICBpZiAoIW9wdGlvbnMubGVuZ3RoKSB7XG4gICAgICB0aHJvdyBFcnJvcihgQ291bGQgbm90IGZpbmQgb3B0aW9uIG1hdGNoaW5nICR7SlNPTi5zdHJpbmdpZnkob3B0aW9uRmlsdGVyKX1gKVxuICAgIH1cblxuICAgIHJldHVybiBvcHRpb25zWzBdLmNsaWNrKClcbiAgfVxuXG59XG4iXX0=
@@ -0,0 +1,26 @@
1
+ import { coerceBooleanProperty } from '@angular/cdk/coercion';
2
+ import { ComponentHarness, HarnessPredicate } from '@angular/cdk/testing';
3
+ export class TheSeamNgSelectOptionHarness extends ComponentHarness {
4
+ /** Creates a `HarnessPredicate` used to locate a particular `MyMenuHarness`. */
5
+ static with(options) {
6
+ return new HarnessPredicate(TheSeamNgSelectOptionHarness, options)
7
+ .addOption('option value', options.value, (harness, value) => HarnessPredicate.stringMatches(harness.getValue(), value));
8
+ }
9
+ /**
10
+ * NOTE: Only works with string values, curently.
11
+ * @returns value of the select option
12
+ */
13
+ async getValue() {
14
+ return (await this.host()).text();
15
+ }
16
+ /** Whether the ng-select is disabled. */
17
+ async isDisabled() {
18
+ const disabled = (await this.host()).getAttribute('disabled');
19
+ return coerceBooleanProperty(await disabled);
20
+ }
21
+ async click() {
22
+ return (await this.host()).click();
23
+ }
24
+ }
25
+ TheSeamNgSelectOptionHarness.hostSelector = '.ng-option';
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctc2VsZWN0LW9wdGlvbi5oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL3Rlc3RpbmcvaGFybmVzc2VzL25nLXNlbGVjdC1vcHRpb24uaGFybmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUM3RCxPQUFPLEVBQXNCLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFPN0YsTUFBTSxPQUFPLDRCQUE2QixTQUFRLGdCQUFnQjtJQUdoRSxnRkFBZ0Y7SUFDaEYsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUE0QztRQUN0RCxPQUFPLElBQUksZ0JBQWdCLENBQUMsNEJBQTRCLEVBQUUsT0FBTyxDQUFDO2FBQzdELFNBQVMsQ0FBQyxjQUFjLEVBQUUsT0FBTyxDQUFDLEtBQUssRUFDcEMsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUE7SUFDeEYsQ0FBQztJQUVEOzs7T0FHRztJQUNJLEtBQUssQ0FBQyxRQUFRO1FBQ25CLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFBO0lBQ25DLENBQUM7SUFFRCx5Q0FBeUM7SUFDekMsS0FBSyxDQUFDLFVBQVU7UUFDZCxNQUFNLFFBQVEsR0FBRyxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQzdELE9BQU8scUJBQXFCLENBQUMsTUFBTSxRQUFRLENBQUMsQ0FBQTtJQUM5QyxDQUFDO0lBRU0sS0FBSyxDQUFDLEtBQUs7UUFDaEIsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUE7SUFDcEMsQ0FBQzs7QUF6Qk0seUNBQVksR0FBRyxZQUFZLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nXG5pbXBvcnQgeyBCYXNlSGFybmVzc0ZpbHRlcnMsIENvbXBvbmVudEhhcm5lc3MsIEhhcm5lc3NQcmVkaWNhdGUgfSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZydcblxuZXhwb3J0IGludGVyZmFjZSBUaGVTZWFtTmdTZWxlY3RPcHRpb25IYXJuZXNzRmlsdGVycyBleHRlbmRzIEJhc2VIYXJuZXNzRmlsdGVycyB7XG4gIC8qKiBGaWx0ZXJzIGJhc2VkIG9uIHRoZSB2YWx1ZSBvZiB0aGUgZmllbGQuICovXG4gIHZhbHVlPzogc3RyaW5nIHwgUmVnRXhwXG59XG5cbmV4cG9ydCBjbGFzcyBUaGVTZWFtTmdTZWxlY3RPcHRpb25IYXJuZXNzIGV4dGVuZHMgQ29tcG9uZW50SGFybmVzcyB7XG4gIHN0YXRpYyBob3N0U2VsZWN0b3IgPSAnLm5nLW9wdGlvbidcblxuICAvKiogQ3JlYXRlcyBhIGBIYXJuZXNzUHJlZGljYXRlYCB1c2VkIHRvIGxvY2F0ZSBhIHBhcnRpY3VsYXIgYE15TWVudUhhcm5lc3NgLiAqL1xuICBzdGF0aWMgd2l0aChvcHRpb25zOiBUaGVTZWFtTmdTZWxlY3RPcHRpb25IYXJuZXNzRmlsdGVycyk6IEhhcm5lc3NQcmVkaWNhdGU8VGhlU2VhbU5nU2VsZWN0T3B0aW9uSGFybmVzcz4ge1xuICAgIHJldHVybiBuZXcgSGFybmVzc1ByZWRpY2F0ZShUaGVTZWFtTmdTZWxlY3RPcHRpb25IYXJuZXNzLCBvcHRpb25zKVxuICAgICAgICAuYWRkT3B0aW9uKCdvcHRpb24gdmFsdWUnLCBvcHRpb25zLnZhbHVlLFxuICAgICAgICAgICAgKGhhcm5lc3MsIHZhbHVlKSA9PiBIYXJuZXNzUHJlZGljYXRlLnN0cmluZ01hdGNoZXMoaGFybmVzcy5nZXRWYWx1ZSgpLCB2YWx1ZSkpXG4gIH1cblxuICAvKipcbiAgICogTk9URTogT25seSB3b3JrcyB3aXRoIHN0cmluZyB2YWx1ZXMsIGN1cmVudGx5LlxuICAgKiBAcmV0dXJucyB2YWx1ZSBvZiB0aGUgc2VsZWN0IG9wdGlvblxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldFZhbHVlKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmhvc3QoKSkudGV4dCgpXG4gIH1cblxuICAvKiogV2hldGhlciB0aGUgbmctc2VsZWN0IGlzIGRpc2FibGVkLiAqL1xuICBhc3luYyBpc0Rpc2FibGVkKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IGRpc2FibGVkID0gKGF3YWl0IHRoaXMuaG9zdCgpKS5nZXRBdHRyaWJ1dGUoJ2Rpc2FibGVkJylcbiAgICByZXR1cm4gY29lcmNlQm9vbGVhblByb3BlcnR5KGF3YWl0IGRpc2FibGVkKVxuICB9XG5cbiAgcHVibGljIGFzeW5jIGNsaWNrKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5ob3N0KCkpLmNsaWNrKClcbiAgfVxufVxuIl19
@@ -0,0 +1,104 @@
1
+ import { coerceBooleanProperty } from '@angular/cdk/coercion';
2
+ import { ComponentHarness, HarnessPredicate } from '@angular/cdk/testing';
3
+ import { TheSeamNgSelectDropdownHarness } from './ng-select-dropdown.harness';
4
+ export class TheSeamNgSelectHarness extends ComponentHarness {
5
+ constructor() {
6
+ super(...arguments);
7
+ this._documentRootLocator = this.documentRootLocatorFactory();
8
+ this._value = this.locatorForOptional('.ng-value');
9
+ this._valueLabel = this.locatorForOptional('.ng-value-label');
10
+ }
11
+ /** Creates a `HarnessPredicate` used to locate a particular `MyMenuHarness`. */
12
+ static with(options) {
13
+ return new HarnessPredicate(TheSeamNgSelectHarness, options);
14
+ // .addOption('field name', options.name,
15
+ // (harness, name) => HarnessPredicate.stringMatches(harness.getName(), name))
16
+ }
17
+ async getId() {
18
+ return (await this.getInputElement()).getAttribute('id');
19
+ }
20
+ async getAriaControls() {
21
+ return (await this.getInputElement()).getAttribute('aria-controls');
22
+ }
23
+ async getName() {
24
+ return (await this.getInputElement()).getAttribute('name');
25
+ }
26
+ /**
27
+ * NOTE: Only works with string values, curently.
28
+ * @returns value of the select
29
+ */
30
+ async getValue() {
31
+ const valueLabel = await this._valueLabel();
32
+ if (valueLabel === null) {
33
+ const value = await this._value();
34
+ if (value === null) {
35
+ return null;
36
+ }
37
+ return value.text();
38
+ }
39
+ return valueLabel.text();
40
+ }
41
+ /**
42
+ * Gets a list of `TheSeamNgSelectOptionHarness` representing the options in the dropdown.
43
+ *
44
+ * NOTE: Must open the dropdown first. eg. `await ngSelectHarness.click()`
45
+ *
46
+ * @param filters Optionally filters which menu items are included.
47
+ */
48
+ async getOptions(filters) {
49
+ const dropdown = await this._getDropdown();
50
+ if (dropdown === null) {
51
+ return [];
52
+ }
53
+ return dropdown.getOptions(filters);
54
+ }
55
+ /**
56
+ * Clicks an option in the dropdown.
57
+ * @param optionFilter A filter used to represent which option in the dropdown should be clicked. The
58
+ * first matching dropdown option will be clicked.
59
+ */
60
+ async clickOption(optionFilter) {
61
+ await this.click();
62
+ const dropdown = await this._getDropdown();
63
+ if (dropdown === null) {
64
+ throw Error(`Could not find dropdown.`);
65
+ }
66
+ return dropdown.clickOption(optionFilter);
67
+ }
68
+ /** Whether the ng-select is disabled. */
69
+ async isDisabled() {
70
+ const disabled = (await this.host()).getAttribute('disabled');
71
+ return coerceBooleanProperty(await disabled);
72
+ }
73
+ /**
74
+ * Returns the required state of the ng-select.
75
+ *
76
+ * @returns true if the ng-select is required, false if not
77
+ */
78
+ async isRequired() {
79
+ const required = await (await this.host()).getAttribute('required');
80
+ return required === undefined ? true : coerceBooleanProperty(required);
81
+ }
82
+ async click() {
83
+ return (await this.getInputElement()).click();
84
+ }
85
+ /**
86
+ * Returns the input element of the checkbox.
87
+ *
88
+ * @returns the input element of the checkbox
89
+ */
90
+ async getInputElement() {
91
+ return this.locatorFor('input')();
92
+ }
93
+ async _getDropdown() {
94
+ const ariaControls = await this.getAriaControls();
95
+ if (ariaControls) {
96
+ return this._documentRootLocator.locatorForOptional(TheSeamNgSelectDropdownHarness.with({
97
+ id: ariaControls,
98
+ }))();
99
+ }
100
+ return null;
101
+ }
102
+ }
103
+ TheSeamNgSelectHarness.hostSelector = 'ng-select';
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctc2VsZWN0Lmhhcm5lc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vdGVzdGluZy9oYXJuZXNzZXMvbmctc2VsZWN0Lmhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFDN0QsT0FBTyxFQUFzQixnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBSTdGLE9BQU8sRUFBRSw4QkFBOEIsRUFBeUMsTUFBTSw4QkFBOEIsQ0FBQTtBQU9wSCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsZ0JBQWdCO0lBQTVEOztRQUNVLHlCQUFvQixHQUFHLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFBO1FBSS9DLFdBQU0sR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLENBQUE7UUFDN0MsZ0JBQVcsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtJQWtIM0UsQ0FBQztJQWhIQyxnRkFBZ0Y7SUFDaEYsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFzQztRQUNoRCxPQUFPLElBQUksZ0JBQWdCLENBQUMsc0JBQXNCLEVBQUUsT0FBTyxDQUFDLENBQUE7UUFDeEQseUNBQXlDO1FBQ3pDLGtGQUFrRjtJQUN4RixDQUFDO0lBRU0sS0FBSyxDQUFDLEtBQUs7UUFDaEIsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQzFELENBQUM7SUFFTSxLQUFLLENBQUMsZUFBZTtRQUMxQixPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQyxZQUFZLENBQUMsZUFBZSxDQUFDLENBQUE7SUFDckUsQ0FBQztJQUVNLEtBQUssQ0FBQyxPQUFPO1FBQ2xCLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUM1RCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksS0FBSyxDQUFDLFFBQVE7UUFDbkIsTUFBTSxVQUFVLEdBQUcsTUFBTSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUE7UUFDM0MsSUFBSSxVQUFVLEtBQUssSUFBSSxFQUFFO1lBQ3ZCLE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFBO1lBQ2pDLElBQUksS0FBSyxLQUFLLElBQUksRUFBRTtnQkFDbEIsT0FBTyxJQUFJLENBQUE7YUFDWjtZQUVELE9BQU8sS0FBSyxDQUFDLElBQUksRUFBRSxDQUFBO1NBQ3BCO1FBRUQsT0FBTyxVQUFVLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDMUIsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILEtBQUssQ0FBQyxVQUFVLENBQ2QsT0FBK0Q7UUFFL0QsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUE7UUFDMUMsSUFBSSxRQUFRLEtBQUssSUFBSSxFQUFFO1lBQ3JCLE9BQU8sRUFBRSxDQUFBO1NBQ1Y7UUFFRCxPQUFPLFFBQVEsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUE7SUFDckMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsV0FBVyxDQUNmLFlBQW1FO1FBRW5FLE1BQU0sSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFBO1FBQ2xCLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFBO1FBQzFDLElBQUksUUFBUSxLQUFLLElBQUksRUFBRTtZQUNyQixNQUFNLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO1NBQ3hDO1FBRUQsT0FBTyxRQUFRLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFBO0lBQzNDLENBQUM7SUFFRCx5Q0FBeUM7SUFDekMsS0FBSyxDQUFDLFVBQVU7UUFDZCxNQUFNLFFBQVEsR0FBRyxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQzdELE9BQU8scUJBQXFCLENBQUMsTUFBTSxRQUFRLENBQUMsQ0FBQTtJQUM5QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLEtBQUssQ0FBQyxVQUFVO1FBQ3JCLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUNuRSxPQUFPLFFBQVEsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMscUJBQXFCLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDeEUsQ0FBQztJQUVNLEtBQUssQ0FBQyxLQUFLO1FBQ2hCLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFBO0lBQy9DLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksS0FBSyxDQUFDLGVBQWU7UUFDMUIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUE7SUFDbkMsQ0FBQztJQUVPLEtBQUssQ0FBQyxZQUFZO1FBQ3hCLE1BQU0sWUFBWSxHQUFHLE1BQU0sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFBO1FBQ2pELElBQUksWUFBWSxFQUFFO1lBQ2hCLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLGtCQUFrQixDQUNqRCw4QkFBOEIsQ0FBQyxJQUFJLENBQUM7Z0JBQ2xDLEVBQUUsRUFBRSxZQUFZO2FBQytCLENBQUMsQ0FDbkQsRUFBRSxDQUFBO1NBQ0o7UUFDRCxPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7O0FBcEhNLG1DQUFZLEdBQUcsV0FBVyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJ1xuaW1wb3J0IHsgQmFzZUhhcm5lc3NGaWx0ZXJzLCBDb21wb25lbnRIYXJuZXNzLCBIYXJuZXNzUHJlZGljYXRlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnXG5cbmltcG9ydCB7IFRoZVNlYW1Gb3JtRmllbGRSZXF1aXJlZEluZGljYXRvckhhcm5lc3MgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vZm9ybS1maWVsZCdcbmltcG9ydCB7IFRoZVNlYW1OZ1NlbGVjdE9wdGlvbkhhcm5lc3MsIFRoZVNlYW1OZ1NlbGVjdE9wdGlvbkhhcm5lc3NGaWx0ZXJzIH0gZnJvbSAnLi9uZy1zZWxlY3Qtb3B0aW9uLmhhcm5lc3MnXG5pbXBvcnQgeyBUaGVTZWFtTmdTZWxlY3REcm9wZG93bkhhcm5lc3MsIFRoZVNlYW1OZ1NlbGVjdERyb3Bkb3duSGFybmVzc0ZpbHRlcnMgfSBmcm9tICcuL25nLXNlbGVjdC1kcm9wZG93bi5oYXJuZXNzJ1xuXG5leHBvcnQgaW50ZXJmYWNlIFRoZVNlYW1OZ1NlbGVjdEhhcm5lc3NGaWx0ZXJzIGV4dGVuZHMgQmFzZUhhcm5lc3NGaWx0ZXJzIHtcbiAgLyoqIEZpbHRlcnMgYmFzZWQgb24gdGhlIG5hbWUgb2YgdGhlIGZpZWxkLiAqL1xuICAvLyBuYW1lPzogc3RyaW5nIHwgUmVnRXhwXG59XG5cbmV4cG9ydCBjbGFzcyBUaGVTZWFtTmdTZWxlY3RIYXJuZXNzIGV4dGVuZHMgQ29tcG9uZW50SGFybmVzcyB7XG4gIHByaXZhdGUgX2RvY3VtZW50Um9vdExvY2F0b3IgPSB0aGlzLmRvY3VtZW50Um9vdExvY2F0b3JGYWN0b3J5KClcblxuICBzdGF0aWMgaG9zdFNlbGVjdG9yID0gJ25nLXNlbGVjdCdcblxuICBwcml2YXRlIHJlYWRvbmx5IF92YWx1ZSA9IHRoaXMubG9jYXRvckZvck9wdGlvbmFsKCcubmctdmFsdWUnKVxuICBwcml2YXRlIHJlYWRvbmx5IF92YWx1ZUxhYmVsID0gdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoJy5uZy12YWx1ZS1sYWJlbCcpXG5cbiAgLyoqIENyZWF0ZXMgYSBgSGFybmVzc1ByZWRpY2F0ZWAgdXNlZCB0byBsb2NhdGUgYSBwYXJ0aWN1bGFyIGBNeU1lbnVIYXJuZXNzYC4gKi9cbiAgc3RhdGljIHdpdGgob3B0aW9uczogVGhlU2VhbU5nU2VsZWN0SGFybmVzc0ZpbHRlcnMpOiBIYXJuZXNzUHJlZGljYXRlPFRoZVNlYW1OZ1NlbGVjdEhhcm5lc3M+IHtcbiAgICByZXR1cm4gbmV3IEhhcm5lc3NQcmVkaWNhdGUoVGhlU2VhbU5nU2VsZWN0SGFybmVzcywgb3B0aW9ucylcbiAgICAgICAgLy8gLmFkZE9wdGlvbignZmllbGQgbmFtZScsIG9wdGlvbnMubmFtZSxcbiAgICAgICAgLy8gICAgIChoYXJuZXNzLCBuYW1lKSA9PiBIYXJuZXNzUHJlZGljYXRlLnN0cmluZ01hdGNoZXMoaGFybmVzcy5nZXROYW1lKCksIG5hbWUpKVxuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldElkKCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5nZXRJbnB1dEVsZW1lbnQoKSkuZ2V0QXR0cmlidXRlKCdpZCcpXG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0QXJpYUNvbnRyb2xzKCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5nZXRJbnB1dEVsZW1lbnQoKSkuZ2V0QXR0cmlidXRlKCdhcmlhLWNvbnRyb2xzJylcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXROYW1lKCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5nZXRJbnB1dEVsZW1lbnQoKSkuZ2V0QXR0cmlidXRlKCduYW1lJylcbiAgfVxuXG4gIC8qKlxuICAgKiBOT1RFOiBPbmx5IHdvcmtzIHdpdGggc3RyaW5nIHZhbHVlcywgY3VyZW50bHkuXG4gICAqIEByZXR1cm5zIHZhbHVlIG9mIHRoZSBzZWxlY3RcbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRWYWx1ZSgpOiBQcm9taXNlPGFueT4ge1xuICAgIGNvbnN0IHZhbHVlTGFiZWwgPSBhd2FpdCB0aGlzLl92YWx1ZUxhYmVsKClcbiAgICBpZiAodmFsdWVMYWJlbCA9PT0gbnVsbCkge1xuICAgICAgY29uc3QgdmFsdWUgPSBhd2FpdCB0aGlzLl92YWx1ZSgpXG4gICAgICBpZiAodmFsdWUgPT09IG51bGwpIHtcbiAgICAgICAgcmV0dXJuIG51bGxcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHZhbHVlLnRleHQoKVxuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZUxhYmVsLnRleHQoKVxuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYSBsaXN0IG9mIGBUaGVTZWFtTmdTZWxlY3RPcHRpb25IYXJuZXNzYCByZXByZXNlbnRpbmcgdGhlIG9wdGlvbnMgaW4gdGhlIGRyb3Bkb3duLlxuICAgKlxuICAgKiBOT1RFOiBNdXN0IG9wZW4gdGhlIGRyb3Bkb3duIGZpcnN0LiBlZy4gYGF3YWl0IG5nU2VsZWN0SGFybmVzcy5jbGljaygpYFxuICAgKlxuICAgKiBAcGFyYW0gZmlsdGVycyBPcHRpb25hbGx5IGZpbHRlcnMgd2hpY2ggbWVudSBpdGVtcyBhcmUgaW5jbHVkZWQuXG4gICAqL1xuICBhc3luYyBnZXRPcHRpb25zKFxuICAgIGZpbHRlcnM/OiBPbWl0PFRoZVNlYW1OZ1NlbGVjdE9wdGlvbkhhcm5lc3NGaWx0ZXJzLCAnYW5jZXN0b3InPixcbiAgKTogUHJvbWlzZTxUaGVTZWFtTmdTZWxlY3RPcHRpb25IYXJuZXNzW10+IHtcbiAgICBjb25zdCBkcm9wZG93biA9IGF3YWl0IHRoaXMuX2dldERyb3Bkb3duKClcbiAgICBpZiAoZHJvcGRvd24gPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBbXVxuICAgIH1cblxuICAgIHJldHVybiBkcm9wZG93bi5nZXRPcHRpb25zKGZpbHRlcnMpXG4gIH1cblxuICAvKipcbiAgICogQ2xpY2tzIGFuIG9wdGlvbiBpbiB0aGUgZHJvcGRvd24uXG4gICAqIEBwYXJhbSBvcHRpb25GaWx0ZXIgQSBmaWx0ZXIgdXNlZCB0byByZXByZXNlbnQgd2hpY2ggb3B0aW9uIGluIHRoZSBkcm9wZG93biBzaG91bGQgYmUgY2xpY2tlZC4gVGhlXG4gICAqICAgICBmaXJzdCBtYXRjaGluZyBkcm9wZG93biBvcHRpb24gd2lsbCBiZSBjbGlja2VkLlxuICAgKi9cbiAgYXN5bmMgY2xpY2tPcHRpb24oXG4gICAgb3B0aW9uRmlsdGVyOiBPbWl0PFRoZVNlYW1OZ1NlbGVjdE9wdGlvbkhhcm5lc3NGaWx0ZXJzLCAnYW5jZXN0b3InPlxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLmNsaWNrKClcbiAgICBjb25zdCBkcm9wZG93biA9IGF3YWl0IHRoaXMuX2dldERyb3Bkb3duKClcbiAgICBpZiAoZHJvcGRvd24gPT09IG51bGwpIHtcbiAgICAgIHRocm93IEVycm9yKGBDb3VsZCBub3QgZmluZCBkcm9wZG93bi5gKVxuICAgIH1cblxuICAgIHJldHVybiBkcm9wZG93bi5jbGlja09wdGlvbihvcHRpb25GaWx0ZXIpXG4gIH1cblxuICAvKiogV2hldGhlciB0aGUgbmctc2VsZWN0IGlzIGRpc2FibGVkLiAqL1xuICBhc3luYyBpc0Rpc2FibGVkKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IGRpc2FibGVkID0gKGF3YWl0IHRoaXMuaG9zdCgpKS5nZXRBdHRyaWJ1dGUoJ2Rpc2FibGVkJylcbiAgICByZXR1cm4gY29lcmNlQm9vbGVhblByb3BlcnR5KGF3YWl0IGRpc2FibGVkKVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHJlcXVpcmVkIHN0YXRlIG9mIHRoZSBuZy1zZWxlY3QuXG4gICAqXG4gICAqIEByZXR1cm5zIHRydWUgaWYgdGhlIG5nLXNlbGVjdCBpcyByZXF1aXJlZCwgZmFsc2UgaWYgbm90XG4gICAqL1xuICBwdWJsaWMgYXN5bmMgaXNSZXF1aXJlZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCByZXF1aXJlZCA9IGF3YWl0IChhd2FpdCB0aGlzLmhvc3QoKSkuZ2V0QXR0cmlidXRlKCdyZXF1aXJlZCcpXG4gICAgcmV0dXJuIHJlcXVpcmVkID09PSB1bmRlZmluZWQgPyB0cnVlIDogY29lcmNlQm9vbGVhblByb3BlcnR5KHJlcXVpcmVkKVxuICB9XG5cbiAgcHVibGljIGFzeW5jIGNsaWNrKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5nZXRJbnB1dEVsZW1lbnQoKSkuY2xpY2soKVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGlucHV0IGVsZW1lbnQgb2YgdGhlIGNoZWNrYm94LlxuICAgKlxuICAgKiBAcmV0dXJucyB0aGUgaW5wdXQgZWxlbWVudCBvZiB0aGUgY2hlY2tib3hcbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRJbnB1dEVsZW1lbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMubG9jYXRvckZvcignaW5wdXQnKSgpXG4gIH1cblxuICBwcml2YXRlIGFzeW5jIF9nZXREcm9wZG93bigpOiBQcm9taXNlPFRoZVNlYW1OZ1NlbGVjdERyb3Bkb3duSGFybmVzcyB8IG51bGw+IHtcbiAgICBjb25zdCBhcmlhQ29udHJvbHMgPSBhd2FpdCB0aGlzLmdldEFyaWFDb250cm9scygpXG4gICAgaWYgKGFyaWFDb250cm9scykge1xuICAgICAgcmV0dXJuIHRoaXMuX2RvY3VtZW50Um9vdExvY2F0b3IubG9jYXRvckZvck9wdGlvbmFsKFxuICAgICAgICBUaGVTZWFtTmdTZWxlY3REcm9wZG93bkhhcm5lc3Mud2l0aCh7XG4gICAgICAgICAgaWQ6IGFyaWFDb250cm9scyxcbiAgICAgICAgfSBzYXRpc2ZpZXMgVGhlU2VhbU5nU2VsZWN0RHJvcGRvd25IYXJuZXNzRmlsdGVycyksXG4gICAgICApKClcbiAgICB9XG4gICAgcmV0dXJuIG51bGxcbiAgfVxufVxuIl19
@@ -1,7 +1,10 @@
1
+ export * from './harnesses/ng-select-dropdown.harness';
2
+ export * from './harnesses/ng-select-option.harness';
3
+ export * from './harnesses/ng-select.harness';
1
4
  export * from './fake-toastr';
2
5
  export * from './render-story';
3
6
  export * from './tick-helper';
4
7
  export * from './current-tick-time';
5
8
  export * from './story-expect';
6
9
  export * from './get-harness';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90ZXN0aW5nL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxlQUFlLENBQUE7QUFDN0IsY0FBYyxnQkFBZ0IsQ0FBQTtBQUM5QixjQUFjLGVBQWUsQ0FBQTtBQUM3QixjQUFjLHFCQUFxQixDQUFBO0FBRW5DLGNBQWMsZ0JBQWdCLENBQUE7QUFDOUIsY0FBYyxlQUFlLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Zha2UtdG9hc3RyJ1xuZXhwb3J0ICogZnJvbSAnLi9yZW5kZXItc3RvcnknXG5leHBvcnQgKiBmcm9tICcuL3RpY2staGVscGVyJ1xuZXhwb3J0ICogZnJvbSAnLi9jdXJyZW50LXRpY2stdGltZSdcblxuZXhwb3J0ICogZnJvbSAnLi9zdG9yeS1leHBlY3QnXG5leHBvcnQgKiBmcm9tICcuL2dldC1oYXJuZXNzJ1xuIl19
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90ZXN0aW5nL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3Q0FBd0MsQ0FBQTtBQUN0RCxjQUFjLHNDQUFzQyxDQUFBO0FBQ3BELGNBQWMsK0JBQStCLENBQUE7QUFFN0MsY0FBYyxlQUFlLENBQUE7QUFDN0IsY0FBYyxnQkFBZ0IsQ0FBQTtBQUM5QixjQUFjLGVBQWUsQ0FBQTtBQUM3QixjQUFjLHFCQUFxQixDQUFBO0FBRW5DLGNBQWMsZ0JBQWdCLENBQUE7QUFDOUIsY0FBYyxlQUFlLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2hhcm5lc3Nlcy9uZy1zZWxlY3QtZHJvcGRvd24uaGFybmVzcydcbmV4cG9ydCAqIGZyb20gJy4vaGFybmVzc2VzL25nLXNlbGVjdC1vcHRpb24uaGFybmVzcydcbmV4cG9ydCAqIGZyb20gJy4vaGFybmVzc2VzL25nLXNlbGVjdC5oYXJuZXNzJ1xuXG5leHBvcnQgKiBmcm9tICcuL2Zha2UtdG9hc3RyJ1xuZXhwb3J0ICogZnJvbSAnLi9yZW5kZXItc3RvcnknXG5leHBvcnQgKiBmcm9tICcuL3RpY2staGVscGVyJ1xuZXhwb3J0ICogZnJvbSAnLi9jdXJyZW50LXRpY2stdGltZSdcblxuZXhwb3J0ICogZnJvbSAnLi9zdG9yeS1leHBlY3QnXG5leHBvcnQgKiBmcm9tICcuL2dldC1oYXJuZXNzJ1xuIl19
@@ -211,4 +211,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
211
211
  type: ContentChildren,
212
212
  args: [TiledSelectTileOverlayDirective]
213
213
  }] } });
214
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZWQtc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90aWxlZC1zZWxlY3QvY29tcG9uZW50cy90aWxlZC1zZWxlY3QvdGlsZWQtc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90aWxlZC1zZWxlY3QvY29tcG9uZW50cy90aWxlZC1zZWxlY3QvdGlsZWQtc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ2xILE9BQU8sRUFBZ0IsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFFakUsT0FBTyxFQUFxQixTQUFTLEVBQUUsZUFBZSxFQUFjLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBd0IsTUFBTSxlQUFlLENBQUE7QUFDeEosT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRXhFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUV0RCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQTs7Ozs7QUFJeEcsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsU0FBUyxDQUFDO0lBQzNDLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLG1CQUFtQixFQUFFLENBQUM7SUFDckQsT0FBTyxDQUFDLEdBQUcsRUFBRTtRQUNYLE9BQU8sQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUs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VUFBVSxDQUFDLFFBQVEsRUFBRTtnQ0FDbkIsS0FBSyxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUMsbUJBQW1CLENBQUMsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQzs2QkFDdkUsQ0FBQzt5QkFDSCxDQUFDO3FCQUNIO2dMQVdRLE1BQU07c0JBQWQsS0FBSztnQkFFRixLQUFLO3NCQURSLEtBQUs7Z0JBOEJVLEdBQUc7c0JBQWxCLEtBQUs7dUJBQUMsT0FBTztnQkFFVyxRQUFRO3NCQUFoQyxLQUFLO2dCQUNtQixRQUFRO3NCQUFoQyxLQUFLO2dCQUNtQixtQkFBbUI7c0JBQTNDLEtBQUs7Z0JBQ21CLFlBQVk7c0JBQXBDLEtBQUs7Z0JBQ21CLGdCQUFnQjtzQkFBeEMsS0FBSztnQkFDbUIsa0JBQWtCO3NCQUExQyxLQUFLO2dCQUdhLE1BQU07c0JBQXhCLE1BQU07Z0JBUUEsV0FBVztzQkFEakIsZUFBZTt1QkFBQywrQkFBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBhbmltYXRpb24sIHF1ZXJ5LCBzdGFnZ2VyLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciwgdXNlQW5pbWF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucydcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQXJyYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nXG5pbXBvcnQgeyBQbGF0Zm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wbGF0Zm9ybSdcbmltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT3V0cHV0LCBRdWVyeUxpc3QsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcblxuaW1wb3J0IHsgSW5wdXRCb29sZWFuIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2NvcmUnXG5cbmltcG9ydCB7IFRpbGVkU2VsZWN0VGlsZU92ZXJsYXlEaXJlY3RpdmUgfSBmcm9tICcuLy4uLy4uL2RpcmVjdGl2ZXMvdGlsZWQtc2VsZWN0LXRpbGUtb3ZlcmxheS5kaXJlY3RpdmUnXG5cbmltcG9ydCB7IElUaWxlZFNlbGVjdEl0ZW0sIFRpbGVkU2VsZWN0TGF5b3V0IH0gZnJvbSAnLi4vLi4vdGlsZWQtc2VsZWN0Lm1vZGVscydcblxuZXhwb3J0IGNvbnN0IHNsaWRlRW50ZXJBbmltYXRpb24gPSBhbmltYXRpb24oW1xuICBzdHlsZSh7IG9wYWNpdHk6IDAsIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoLTE1cHgpJyB9KSxcbiAgc3RhZ2dlcigxMDAsIFtcbiAgICBhbmltYXRlKCcwLjVzJywgc3R5bGUoeyBvcGFjaXR5OiAxLCB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDApJyB9KSlcbiAgXSlcbl0pXG5cbmV4cG9ydCBjb25zdCBUSUxFRF9TRUxFQ1RfVkFMVUVfQUNDRVNTT1I6IGFueSA9IHtcbiAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRoZVNlYW1UaWxlZFNlbGVjdENvbXBvbmVudCksXG4gIG11bHRpOiB0cnVlLFxufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZWFtLXRpbGVkLXNlbGVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90aWxlZC1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90aWxlZC1zZWxlY3QuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbIFRJTEVEX1NFTEVDVF9WQUxVRV9BQ0NFU1NPUiBdLFxuICBob3N0OiB7XG4gICAgJ1thdHRyLmRhdGEtdGVzdGlkXSc6ICdcInRpbGVkLXNlbGVjdFwiJ1xuICB9LFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcigndGlsZXMnLCBbXG4gICAgICB0cmFuc2l0aW9uKCcqID0+IConLCBbXG4gICAgICAgIHF1ZXJ5KCc6ZW50ZXInLCB1c2VBbmltYXRpb24oc2xpZGVFbnRlckFuaW1hdGlvbiksIHsgb3B0aW9uYWw6IHRydWUgfSlcbiAgICAgIF0pXG4gICAgXSlcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgVGhlU2VhbVRpbGVkU2VsZWN0Q29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfdmFsOiBCb29sZWFuSW5wdXRcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX2Rpc2FibGVkOiBCb29sZWFuSW5wdXRcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX211bHRpcGxlOiBCb29sZWFuSW5wdXRcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX3NlbGVjdGlvblRvZ2dsZWFibGU6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfdGlsZUJhY2tkcm9wOiBCb29sZWFuSW5wdXRcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX3Nob3dTZWxlY3RlZEljb246IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfYW5pbWF0aW9uc0Rpc2FibGVkOiBCb29sZWFuSW5wdXRcblxuICBASW5wdXQoKSBsYXlvdXQ6IFRpbGVkU2VsZWN0TGF5b3V0ID0gJ2dyaWQnXG4gIEBJbnB1dCgpXG4gIGdldCB0aWxlcygpIHsgcmV0dXJuIHRoaXMuX3RpbGVzIH1cbiAgc2V0IHRpbGVzKHZhbHVlOiBJVGlsZWRTZWxlY3RJdGVtW10pIHtcbiAgICBjb25zdCBfdmFsdWUgPSBbIC4uLih2YWx1ZSB8fCBbXSkgXVxuICAgIGZvciAoY29uc3QgdiBvZiBfdmFsdWUpIHtcbiAgICAgIGlmICh2LnZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgaWYgKHYubmFtZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdJZiB2YWx1ZSBpcyB1bmRlZmluZWQgdGhlbiBuYW1lIG11c3QgYmUgZGVmaW5lZC4nKVxuICAgICAgICB9XG4gICAgICAgIHYudmFsdWUgPSB2Lm5hbWVcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBwcmV2ID0gdGhpcy5fdGlsZXNcbiAgICBpZiAocHJldi5sZW5ndGggIT09IF92YWx1ZS5sZW5ndGgpIHtcbiAgICAgIHRoaXMudGlsZXNBbmltYXRpb25TdGF0ZSA9ICF0aGlzLnRpbGVzQW5pbWF0aW9uU3RhdGVcbiAgICB9IGVsc2Uge1xuICAgICAgZm9yIChjb25zdCB0IG9mIF92YWx1ZSkge1xuICAgICAgICBpZiAoIXByZXYuZmluZChwID0+IHAubmFtZSA9PT0gdC5uYW1lKSkge1xuICAgICAgICAgIHRoaXMudGlsZXNBbmltYXRpb25TdGF0ZSA9ICF0aGlzLnRpbGVzQW5pbWF0aW9uU3RhdGVcbiAgICAgICAgICBicmVha1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5fdGlsZXMgPSBfdmFsdWVcbiAgfVxuICBwcml2YXRlIF90aWxlczogSVRpbGVkU2VsZWN0SXRlbVtdID0gW11cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ3ZhbHVlJykgdmFsOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZFxuXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBkaXNhYmxlZCA9IGZhbHNlXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBtdWx0aXBsZSA9IGZhbHNlXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBzZWxlY3Rpb25Ub2dnbGVhYmxlID0gdHJ1ZVxuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgdGlsZUJhY2tkcm9wID0gZmFsc2VcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHNob3dTZWxlY3RlZEljb24gPSB0cnVlXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBhbmltYXRpb25zRGlzYWJsZWQ6IGJvb2xlYW4gPSB0aGlzLl9wbGF0Zm9ybS5JT1NcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1uYXRpdmVcbiAgQE91dHB1dCgpIHJlYWRvbmx5IGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQ+KClcblxuICB0aWxlc0FuaW1hdGlvblN0YXRlID0gZmFsc2VcblxuICBvbkNoYW5nZTogYW55XG4gIG9uVG91Y2hlZDogYW55XG5cbiAgQENvbnRlbnRDaGlsZHJlbihUaWxlZFNlbGVjdFRpbGVPdmVybGF5RGlyZWN0aXZlKVxuICBwdWJsaWMgb3ZlcmxheVRwbHM/OiBRdWVyeUxpc3Q8VGlsZWRTZWxlY3RUaWxlT3ZlcmxheURpcmVjdGl2ZT5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9wbGF0Zm9ybTogUGxhdGZvcm0sXG4gICAgcHJpdmF0ZSByZWFkb25seSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9yZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWZcbiAgKSB7IH1cblxuICBnZXQgdmFsdWUoKTogc3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnZhbFxuICB9XG5cbiAgc2V0IHZhbHVlKHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMudmFsID0gKHRoaXMubXVsdGlwbGUpID8gWyAuLi4odmFsdWUgYXMgc3RyaW5nW10gfHwgW10pIF0gOiB2YWx1ZSB8fCAnJ1xuXG4gICAgdGhpcy5fcmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAndmFsdWUnLCB0aGlzLnZhbClcblxuICAgIGlmICh0aGlzLm9uQ2hhbmdlKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsKVxuICAgICAgdGhpcy5jaGFuZ2UuZW1pdCh0aGlzLnZhbClcbiAgICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKVxuICAgIH1cbiAgICBpZiAodGhpcy5vblRvdWNoZWQpIHsgdGhpcy5vblRvdWNoZWQoKSB9XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWVcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmblxuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm5cbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkXG4gIH1cblxuICBvblRpbGVTZWxlY3RlZChldmVudDogTW91c2VFdmVudCwgdGlsZTogSVRpbGVkU2VsZWN0SXRlbSkge1xuICAgIHRoaXMudG9nZ2xlVGlsZVNlbGVjdGVkKHRpbGUpXG4gIH1cblxuICBwdWJsaWMgaXNTZWxlY3RlZCh0aWxlOiBJVGlsZWRTZWxlY3RJdGVtKSB7XG4gICAgaWYgKCF0aGlzLm11bHRpcGxlKSB7XG4gICAgICBpZiAodGhpcy52YWx1ZSA9PT0gdGlsZS52YWx1ZSkge1xuICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodGhpcy52YWx1ZSkge1xuICAgICAgICBmb3IgKGNvbnN0IHYgb2YgdGhpcy52YWx1ZSkge1xuICAgICAgICAgIGlmICh2ID09PSB0aWxlLnZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmYWxzZVxuICB9XG5cbiAgcHVibGljIHRvZ2dsZVRpbGVTZWxlY3RlZCh0aWxlOiBJVGlsZWRTZWxlY3RJdGVtKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnNlbGVjdGlvblRvZ2dsZWFibGUgJiYgdGhpcy5pc1NlbGVjdGVkKHRpbGUpKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc1NlbGVjdGVkKHRpbGUpKSB7XG4gICAgICB0aGlzLnVuc2VsZWN0VGlsZSh0aWxlKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbGVjdFRpbGUodGlsZSlcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0VGlsZSh0aWxlOiBJVGlsZWRTZWxlY3RJdGVtKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIGlmICghdGhpcy5pc1NlbGVjdGVkKHRpbGUpKSB7XG4gICAgICAgIGNvbnN0IHZhbHVlOiBzdHJpbmdbXSA9IHRoaXMudmFsdWUgYXMgc3RyaW5nW10gfHwgW11cbiAgICAgICAgdGhpcy52YWx1ZSA9IFsgLi4uY29lcmNlQXJyYXkodmFsdWUpLCB0aWxlLnZhbHVlIF1cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy52YWx1ZSA9IHRpbGUudmFsdWVcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgdW5zZWxlY3RUaWxlKHRpbGU6IElUaWxlZFNlbGVjdEl0ZW0pOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xuICAgICAgY29uc3QgdmFsdWU6IHN0cmluZ1tdID0gdGhpcy52YWx1ZSBhcyBzdHJpbmdbXSB8fCBbXVxuICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlLmZpbHRlcih2ID0+IHYgIT09IHRpbGUudmFsdWUpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmFsdWUgPSB1bmRlZmluZWRcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0U2VsZWN0ZWRUaWxlcygpOiBJVGlsZWRTZWxlY3RJdGVtW10ge1xuICAgIHJldHVybiB0aGlzLnRpbGVzLmZpbHRlcih0ID0+IHRoaXMuaXNTZWxlY3RlZCh0KSlcbiAgfVxuXG4gIGdldE92ZXJsYXlUcGwodGlsZTogSVRpbGVkU2VsZWN0SXRlbSk6IFRpbGVkU2VsZWN0VGlsZU92ZXJsYXlEaXJlY3RpdmUgfCB1bmRlZmluZWQge1xuICAgIC8vIGNvbnNvbGUubG9nKCdvdmVybGF5VHBscycsIHRoaXMub3ZlcmxheVRwbHMpXG4gICAgcmV0dXJuICh0aGlzLm92ZXJsYXlUcGxzIHx8IFtdKS5maW5kKHQgPT4gdC5yZWNvcmQ/Lm5hbWUgPT09IHRpbGUubmFtZSlcbiAgfVxuXG59XG5cbi8qKiBAZGVwcmVjYXRlZCBVc2UgYFRoZVNlYW1UaWxlZFNlbGVjdENvbXBvbmVudGAuICovXG5leHBvcnQgdHlwZSBUaWxlZFNlbGVjdENvbXBvbmVudCA9IFRoZVNlYW1UaWxlZFNlbGVjdENvbXBvbmVudFxuIiwiPGRpdiBjbGFzcz1cInRpbGVkLXNlbGVjdC0tY29udGFpbmVyXCJcbiAgW2NsYXNzLmdyaWRdPVwibGF5b3V0ID09PSAnZ3JpZCdcIlxuICBbY2xhc3MubGlzdF09XCJsYXlvdXQgPT09ICdsaXN0J1wiXG4gIFtAdGlsZXNdPVwidGlsZXNBbmltYXRpb25TdGF0ZVwiXG4gIFtALmRpc2FibGVkXT1cImFuaW1hdGlvbnNEaXNhYmxlZFwiPlxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCB0aWxlIG9mIHRpbGVzOyBsZXQgaW5kZXggPSBpbmRleFwiPlxuICAgIDxkaXYgY2xhc3M9XCJ0aWxlLXdyYXBwZXJcIiBbbmdDbGFzc109XCJ0aWxlLmN1c3RvbUNsYXNzIHx8ICcnXCI+XG4gICAgICA8c2VhbS10aWxlZC1zZWxlY3QtdGlsZVxuICAgICAgICBjbGFzcz1cInRpbGVkLXNlbGVjdC10aWxlXCJcbiAgICAgICAgW25nQ2xhc3NdPVwidGlsZS5jdXN0b21DbGFzcyB8fCAnJ1wiXG4gICAgICAgIFtuYW1lXT1cInRpbGUubmFtZVwiXG4gICAgICAgIFtsYWJlbF09XCJ0aWxlLmxhYmVsXCJcbiAgICAgICAgW2ljb25dPVwidGlsZS5pY29uXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkIHx8IHRpbGUuZGlzYWJsZWRcIlxuICAgICAgICBbYXR0ci5oaWRkZW5dPVwidGlsZS5oaWRkZW5cIlxuICAgICAgICBbbGF5b3V0XT1cImxheW91dFwiXG4gICAgICAgIFtzZWxlY3RlZF09XCJpc1NlbGVjdGVkKHRpbGUpXCJcbiAgICAgICAgW3NlbGVjdGFibGVdPVwidHJ1ZVwiXG4gICAgICAgIFt0aWxlQmFja2Ryb3BdPVwidGlsZUJhY2tkcm9wXCJcbiAgICAgICAgW3Nob3dTZWxlY3RlZEljb25dPVwic2hvd1NlbGVjdGVkSWNvblwiXG4gICAgICAgIFtvdmVybGF5VHBsXT1cImdldE92ZXJsYXlUcGwodGlsZSlcIlxuICAgICAgICAoYWN0aXZhdGVkKT1cIm9uVGlsZVNlbGVjdGVkKCRldmVudCwgdGlsZSlcIlxuICAgICAgICBbYXR0ci5kYXRhLXRpbGUtaW5kZXhdPVwiaW5kZXhcIlxuICAgICAgICBbYXR0ci5kYXRhLXRlc3RpZF09XCJ0aWxlLm5hbWVcIj5cbiAgICAgIDwvc2VhbS10aWxlZC1zZWxlY3QtdGlsZT5cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbiJdfQ==
214
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZWQtc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90aWxlZC1zZWxlY3QvY29tcG9uZW50cy90aWxlZC1zZWxlY3QvdGlsZWQtc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90aWxlZC1zZWxlY3QvY29tcG9uZW50cy90aWxlZC1zZWxlY3QvdGlsZWQtc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ2xILE9BQU8sRUFBZ0IsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUE7QUFFakUsT0FBTyxFQUFxQixTQUFTLEVBQUUsZUFBZSxFQUFjLFlBQVksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBd0IsTUFBTSxlQUFlLENBQUE7QUFDeEosT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRXhFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUV0RCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQTs7Ozs7QUFJeEcsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsU0FBUyxDQUFDO0lBQzNDLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLG1CQUFtQixFQUFFLENBQUM7SUFDckQsT0FBTyxDQUFDLEdBQUcsRUFBRTtRQUNYLE9BQU8sQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxTQUFTLEVBQUUs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VUFBVSxDQUFDLFFBQVEsRUFBRTtnQ0FDbkIsS0FBSyxDQUFDLFFBQVEsRUFBRSxZQUFZLENBQUMsbUJBQW1CLENBQUMsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQzs2QkFDdkUsQ0FBQzt5QkFDSCxDQUFDO3FCQUNIO2dMQVdRLE1BQU07c0JBQWQsS0FBSztnQkFFRixLQUFLO3NCQURSLEtBQUs7Z0JBOEJVLEdBQUc7c0JBQWxCLEtBQUs7dUJBQUMsT0FBTztnQkFFVyxRQUFRO3NCQUFoQyxLQUFLO2dCQUNtQixRQUFRO3NCQUFoQyxLQUFLO2dCQUNtQixtQkFBbUI7c0JBQTNDLEtBQUs7Z0JBQ21CLFlBQVk7c0JBQXBDLEtBQUs7Z0JBQ21CLGdCQUFnQjtzQkFBeEMsS0FBSztnQkFDbUIsa0JBQWtCO3NCQUExQyxLQUFLO2dCQUdhLE1BQU07c0JBQXhCLE1BQU07Z0JBUUEsV0FBVztzQkFEakIsZUFBZTt1QkFBQywrQkFBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBhbmltYXRpb24sIHF1ZXJ5LCBzdGFnZ2VyLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciwgdXNlQW5pbWF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucydcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQXJyYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nXG5pbXBvcnQgeyBQbGF0Zm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wbGF0Zm9ybSdcbmltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBJbnB1dCwgT3V0cHV0LCBRdWVyeUxpc3QsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcblxuaW1wb3J0IHsgSW5wdXRCb29sZWFuIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2NvcmUnXG5cbmltcG9ydCB7IFRpbGVkU2VsZWN0VGlsZU92ZXJsYXlEaXJlY3RpdmUgfSBmcm9tICcuLy4uLy4uL2RpcmVjdGl2ZXMvdGlsZWQtc2VsZWN0LXRpbGUtb3ZlcmxheS5kaXJlY3RpdmUnXG5cbmltcG9ydCB7IFRpbGVkU2VsZWN0SXRlbSwgVGlsZWRTZWxlY3RMYXlvdXQgfSBmcm9tICcuLi8uLi90aWxlZC1zZWxlY3QubW9kZWxzJ1xuXG5leHBvcnQgY29uc3Qgc2xpZGVFbnRlckFuaW1hdGlvbiA9IGFuaW1hdGlvbihbXG4gIHN0eWxlKHsgb3BhY2l0eTogMCwgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgtMTVweCknIH0pLFxuICBzdGFnZ2VyKDEwMCwgW1xuICAgIGFuaW1hdGUoJzAuNXMnLCBzdHlsZSh7IG9wYWNpdHk6IDEsIHRyYW5zZm9ybTogJ3RyYW5zbGF0ZVgoMCknIH0pKVxuICBdKVxuXSlcblxuZXhwb3J0IGNvbnN0IFRJTEVEX1NFTEVDVF9WQUxVRV9BQ0NFU1NPUjogYW55ID0ge1xuICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVGhlU2VhbVRpbGVkU2VsZWN0Q29tcG9uZW50KSxcbiAgbXVsdGk6IHRydWUsXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlYW0tdGlsZWQtc2VsZWN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RpbGVkLXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RpbGVkLXNlbGVjdC5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFsgVElMRURfU0VMRUNUX1ZBTFVFX0FDQ0VTU09SIF0sXG4gIGhvc3Q6IHtcbiAgICAnW2F0dHIuZGF0YS10ZXN0aWRdJzogJ1widGlsZWQtc2VsZWN0XCInXG4gIH0sXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCd0aWxlcycsIFtcbiAgICAgIHRyYW5zaXRpb24oJyogPT4gKicsIFtcbiAgICAgICAgcXVlcnkoJzplbnRlcicsIHVzZUFuaW1hdGlvbihzbGlkZUVudGVyQW5pbWF0aW9uKSwgeyBvcHRpb25hbDogdHJ1ZSB9KVxuICAgICAgXSlcbiAgICBdKVxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUaGVTZWFtVGlsZWRTZWxlY3RDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV92YWw6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfZGlzYWJsZWQ6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfbXVsdGlwbGU6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfc2VsZWN0aW9uVG9nZ2xlYWJsZTogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV90aWxlQmFja2Ryb3A6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfc2hvd1NlbGVjdGVkSWNvbjogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9hbmltYXRpb25zRGlzYWJsZWQ6IEJvb2xlYW5JbnB1dFxuXG4gIEBJbnB1dCgpIGxheW91dDogVGlsZWRTZWxlY3RMYXlvdXQgPSAnZ3JpZCdcbiAgQElucHV0KClcbiAgZ2V0IHRpbGVzKCkgeyByZXR1cm4gdGhpcy5fdGlsZXMgfVxuICBzZXQgdGlsZXModmFsdWU6IFRpbGVkU2VsZWN0SXRlbVtdKSB7XG4gICAgY29uc3QgX3ZhbHVlID0gWyAuLi4odmFsdWUgfHwgW10pIF1cbiAgICBmb3IgKGNvbnN0IHYgb2YgX3ZhbHVlKSB7XG4gICAgICBpZiAodi52YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGlmICh2Lm5hbWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignSWYgdmFsdWUgaXMgdW5kZWZpbmVkIHRoZW4gbmFtZSBtdXN0IGJlIGRlZmluZWQuJylcbiAgICAgICAgfVxuICAgICAgICB2LnZhbHVlID0gdi5uYW1lXG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgcHJldiA9IHRoaXMuX3RpbGVzXG4gICAgaWYgKHByZXYubGVuZ3RoICE9PSBfdmFsdWUubGVuZ3RoKSB7XG4gICAgICB0aGlzLnRpbGVzQW5pbWF0aW9uU3RhdGUgPSAhdGhpcy50aWxlc0FuaW1hdGlvblN0YXRlXG4gICAgfSBlbHNlIHtcbiAgICAgIGZvciAoY29uc3QgdCBvZiBfdmFsdWUpIHtcbiAgICAgICAgaWYgKCFwcmV2LmZpbmQocCA9PiBwLm5hbWUgPT09IHQubmFtZSkpIHtcbiAgICAgICAgICB0aGlzLnRpbGVzQW5pbWF0aW9uU3RhdGUgPSAhdGhpcy50aWxlc0FuaW1hdGlvblN0YXRlXG4gICAgICAgICAgYnJlYWtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuX3RpbGVzID0gX3ZhbHVlXG4gIH1cbiAgcHJpdmF0ZSBfdGlsZXM6IFRpbGVkU2VsZWN0SXRlbVtdID0gW11cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLWlucHV0LXJlbmFtZVxuICBASW5wdXQoJ3ZhbHVlJykgdmFsOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZFxuXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBkaXNhYmxlZCA9IGZhbHNlXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBtdWx0aXBsZSA9IGZhbHNlXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBzZWxlY3Rpb25Ub2dnbGVhYmxlID0gdHJ1ZVxuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgdGlsZUJhY2tkcm9wID0gZmFsc2VcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHNob3dTZWxlY3RlZEljb24gPSB0cnVlXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBhbmltYXRpb25zRGlzYWJsZWQ6IGJvb2xlYW4gPSB0aGlzLl9wbGF0Zm9ybS5JT1NcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1uYXRpdmVcbiAgQE91dHB1dCgpIHJlYWRvbmx5IGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQ+KClcblxuICB0aWxlc0FuaW1hdGlvblN0YXRlID0gZmFsc2VcblxuICBvbkNoYW5nZTogYW55XG4gIG9uVG91Y2hlZDogYW55XG5cbiAgQENvbnRlbnRDaGlsZHJlbihUaWxlZFNlbGVjdFRpbGVPdmVybGF5RGlyZWN0aXZlKVxuICBwdWJsaWMgb3ZlcmxheVRwbHM/OiBRdWVyeUxpc3Q8VGlsZWRTZWxlY3RUaWxlT3ZlcmxheURpcmVjdGl2ZT5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9wbGF0Zm9ybTogUGxhdGZvcm0sXG4gICAgcHJpdmF0ZSByZWFkb25seSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9yZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWZcbiAgKSB7IH1cblxuICBnZXQgdmFsdWUoKTogc3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnZhbFxuICB9XG5cbiAgc2V0IHZhbHVlKHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZCkge1xuICAgIHRoaXMudmFsID0gKHRoaXMubXVsdGlwbGUpID8gWyAuLi4odmFsdWUgYXMgc3RyaW5nW10gfHwgW10pIF0gOiB2YWx1ZSB8fCAnJ1xuXG4gICAgdGhpcy5fcmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAndmFsdWUnLCB0aGlzLnZhbClcblxuICAgIGlmICh0aGlzLm9uQ2hhbmdlKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsKVxuICAgICAgdGhpcy5jaGFuZ2UuZW1pdCh0aGlzLnZhbClcbiAgICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKVxuICAgIH1cbiAgICBpZiAodGhpcy5vblRvdWNoZWQpIHsgdGhpcy5vblRvdWNoZWQoKSB9XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWVcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmblxuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm5cbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkXG4gIH1cblxuICBvblRpbGVTZWxlY3RlZChldmVudDogTW91c2VFdmVudCwgdGlsZTogVGlsZWRTZWxlY3RJdGVtKSB7XG4gICAgdGhpcy50b2dnbGVUaWxlU2VsZWN0ZWQodGlsZSlcbiAgfVxuXG4gIHB1YmxpYyBpc1NlbGVjdGVkKHRpbGU6IFRpbGVkU2VsZWN0SXRlbSkge1xuICAgIGlmICghdGhpcy5tdWx0aXBsZSkge1xuICAgICAgaWYgKHRoaXMudmFsdWUgPT09IHRpbGUudmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMudmFsdWUpIHtcbiAgICAgICAgZm9yIChjb25zdCB2IG9mIHRoaXMudmFsdWUpIHtcbiAgICAgICAgICBpZiAodiA9PT0gdGlsZS52YWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuIHRydWVcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2VcbiAgfVxuXG4gIHB1YmxpYyB0b2dnbGVUaWxlU2VsZWN0ZWQodGlsZTogVGlsZWRTZWxlY3RJdGVtKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnNlbGVjdGlvblRvZ2dsZWFibGUgJiYgdGhpcy5pc1NlbGVjdGVkKHRpbGUpKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc1NlbGVjdGVkKHRpbGUpKSB7XG4gICAgICB0aGlzLnVuc2VsZWN0VGlsZSh0aWxlKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbGVjdFRpbGUodGlsZSlcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0VGlsZSh0aWxlOiBUaWxlZFNlbGVjdEl0ZW0pOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xuICAgICAgaWYgKCF0aGlzLmlzU2VsZWN0ZWQodGlsZSkpIHtcbiAgICAgICAgY29uc3QgdmFsdWU6IHN0cmluZ1tdID0gdGhpcy52YWx1ZSBhcyBzdHJpbmdbXSB8fCBbXVxuICAgICAgICB0aGlzLnZhbHVlID0gWyAuLi5jb2VyY2VBcnJheSh2YWx1ZSksIHRpbGUudmFsdWUgXVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZhbHVlID0gdGlsZS52YWx1ZVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB1bnNlbGVjdFRpbGUodGlsZTogVGlsZWRTZWxlY3RJdGVtKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIGNvbnN0IHZhbHVlOiBzdHJpbmdbXSA9IHRoaXMudmFsdWUgYXMgc3RyaW5nW10gfHwgW11cbiAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZS5maWx0ZXIodiA9PiB2ICE9PSB0aWxlLnZhbHVlKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZhbHVlID0gdW5kZWZpbmVkXG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldFNlbGVjdGVkVGlsZXMoKTogVGlsZWRTZWxlY3RJdGVtW10ge1xuICAgIHJldHVybiB0aGlzLnRpbGVzLmZpbHRlcih0ID0+IHRoaXMuaXNTZWxlY3RlZCh0KSlcbiAgfVxuXG4gIGdldE92ZXJsYXlUcGwodGlsZTogVGlsZWRTZWxlY3RJdGVtKTogVGlsZWRTZWxlY3RUaWxlT3ZlcmxheURpcmVjdGl2ZSB8IHVuZGVmaW5lZCB7XG4gICAgLy8gY29uc29sZS5sb2coJ292ZXJsYXlUcGxzJywgdGhpcy5vdmVybGF5VHBscylcbiAgICByZXR1cm4gKHRoaXMub3ZlcmxheVRwbHMgfHwgW10pLmZpbmQodCA9PiB0LnJlY29yZD8ubmFtZSA9PT0gdGlsZS5uYW1lKVxuICB9XG5cbn1cblxuLyoqIEBkZXByZWNhdGVkIFVzZSBgVGhlU2VhbVRpbGVkU2VsZWN0Q29tcG9uZW50YC4gKi9cbmV4cG9ydCB0eXBlIFRpbGVkU2VsZWN0Q29tcG9uZW50ID0gVGhlU2VhbVRpbGVkU2VsZWN0Q29tcG9uZW50XG4iLCI8ZGl2IGNsYXNzPVwidGlsZWQtc2VsZWN0LS1jb250YWluZXJcIlxuICBbY2xhc3MuZ3JpZF09XCJsYXlvdXQgPT09ICdncmlkJ1wiXG4gIFtjbGFzcy5saXN0XT1cImxheW91dCA9PT0gJ2xpc3QnXCJcbiAgW0B0aWxlc109XCJ0aWxlc0FuaW1hdGlvblN0YXRlXCJcbiAgW0AuZGlzYWJsZWRdPVwiYW5pbWF0aW9uc0Rpc2FibGVkXCI+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHRpbGUgb2YgdGlsZXM7IGxldCBpbmRleCA9IGluZGV4XCI+XG4gICAgPGRpdiBjbGFzcz1cInRpbGUtd3JhcHBlclwiIFtuZ0NsYXNzXT1cInRpbGUuY3VzdG9tQ2xhc3MgfHwgJydcIj5cbiAgICAgIDxzZWFtLXRpbGVkLXNlbGVjdC10aWxlXG4gICAgICAgIGNsYXNzPVwidGlsZWQtc2VsZWN0LXRpbGVcIlxuICAgICAgICBbbmdDbGFzc109XCJ0aWxlLmN1c3RvbUNsYXNzIHx8ICcnXCJcbiAgICAgICAgW25hbWVdPVwidGlsZS5uYW1lXCJcbiAgICAgICAgW2xhYmVsXT1cInRpbGUubGFiZWxcIlxuICAgICAgICBbaWNvbl09XCJ0aWxlLmljb25cIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgdGlsZS5kaXNhYmxlZFwiXG4gICAgICAgIFthdHRyLmhpZGRlbl09XCJ0aWxlLmhpZGRlblwiXG4gICAgICAgIFtsYXlvdXRdPVwibGF5b3V0XCJcbiAgICAgICAgW3NlbGVjdGVkXT1cImlzU2VsZWN0ZWQodGlsZSlcIlxuICAgICAgICBbc2VsZWN0YWJsZV09XCJ0cnVlXCJcbiAgICAgICAgW3RpbGVCYWNrZHJvcF09XCJ0aWxlQmFja2Ryb3BcIlxuICAgICAgICBbc2hvd1NlbGVjdGVkSWNvbl09XCJzaG93U2VsZWN0ZWRJY29uXCJcbiAgICAgICAgW292ZXJsYXlUcGxdPVwiZ2V0T3ZlcmxheVRwbCh0aWxlKVwiXG4gICAgICAgIChhY3RpdmF0ZWQpPVwib25UaWxlU2VsZWN0ZWQoJGV2ZW50LCB0aWxlKVwiXG4gICAgICAgIFthdHRyLmRhdGEtdGlsZS1pbmRleF09XCJpbmRleFwiXG4gICAgICAgIFthdHRyLmRhdGEtdGVzdGlkXT1cInRpbGUubmFtZVwiPlxuICAgICAgPC9zZWFtLXRpbGVkLXNlbGVjdC10aWxlPlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
@@ -1,14 +1,191 @@
1
+ import { __awaiter, __decorate } from 'tslib';
2
+ import { ThemeNames, OutlineThemeNames } from '@theseam/ui-common/models';
3
+ import { coerceBooleanProperty } from '@angular/cdk/coercion';
4
+ import { HarnessPredicate, ContentContainerComponentHarness } from '@angular/cdk/testing';
1
5
  import * as i0 from '@angular/core';
2
6
  import { Component, ChangeDetectionStrategy, Input, HostBinding, forwardRef, EventEmitter, Output, NgModule } from '@angular/core';
3
7
  import { mixinSize, mixinTheme, mixinDisabled, InputBoolean, InputNumber } from '@theseam/ui-common/core';
4
8
  import * as i1 from '@angular/cdk/a11y';
5
- import { __decorate } from 'tslib';
6
9
  import * as i2 from '@theseam/ui-common/progress';
7
10
  import { TheSeamProgressModule } from '@theseam/ui-common/progress';
8
- import { coerceBooleanProperty } from '@angular/cdk/coercion';
9
11
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
10
12
  import { CommonModule } from '@angular/common';
11
13
 
14
+ const THEME_NAMES$1 = [...ThemeNames, ...OutlineThemeNames];
15
+ const THEME_CLASSES$1 = THEME_NAMES$1.map(t => `btn-${t}`);
16
+ function getButtonThemeClass(classListString) {
17
+ return ((classListString === null || classListString === void 0 ? void 0 : classListString.split(' ')) || []).find(c => THEME_CLASSES$1.includes(c));
18
+ }
19
+ function createBaseButtonComponentHarnessPredicate(componentHarness, options = {}) {
20
+ return new HarnessPredicate(componentHarness, options)
21
+ .addOption('text', options.text, (harness, text) => HarnessPredicate.stringMatches(harness.getText(), text))
22
+ .addOption('type', options.type, (harness, type) => HarnessPredicate.stringMatches(harness.getType(), type));
23
+ }
24
+ class TheSeamBaseButtonComponentHarness extends ContentContainerComponentHarness {
25
+ /** Whether the button is disabled. */
26
+ isDisabled() {
27
+ return __awaiter(this, void 0, void 0, function* () {
28
+ const disabled = (yield this.host()).getAttribute('disabled');
29
+ return coerceBooleanProperty(yield disabled);
30
+ });
31
+ }
32
+ hasDisabledAria() {
33
+ return __awaiter(this, void 0, void 0, function* () {
34
+ const ariaValue = yield (yield this.host()).getAttribute('aria-disabled');
35
+ return ariaValue === 'true';
36
+ });
37
+ }
38
+ getType() {
39
+ return __awaiter(this, void 0, void 0, function* () {
40
+ return (yield this.host()).getAttribute('type');
41
+ });
42
+ }
43
+ /** Gets the text of the button item. */
44
+ getText() {
45
+ return __awaiter(this, void 0, void 0, function* () {
46
+ return (yield this.host()).text();
47
+ });
48
+ }
49
+ /** Gets the theme of the button item. */
50
+ getTheme() {
51
+ return __awaiter(this, void 0, void 0, function* () {
52
+ return (yield this.host()).getAttribute('class').then(c => { var _a; return ((_a = getButtonThemeClass(c)) === null || _a === void 0 ? void 0 : _a.replace('btn-', '')) || null; });
53
+ });
54
+ }
55
+ click() {
56
+ return __awaiter(this, void 0, void 0, function* () {
57
+ return (yield this.host()).click();
58
+ });
59
+ }
60
+ }
61
+
62
+ const THEME_NAMES = [...ThemeNames, ...OutlineThemeNames];
63
+ const THEME_CLASSES = THEME_NAMES.map(t => `badge-${t}`);
64
+ function getbadgeThemeClass(classListString) {
65
+ return ((classListString === null || classListString === void 0 ? void 0 : classListString.split(' ')) || []).find(c => THEME_CLASSES.includes(c));
66
+ }
67
+ function createBaseBadgeButtonComponentHarnessPredicate(componentHarness, options = {}) {
68
+ return createBaseButtonComponentHarnessPredicate(componentHarness, options);
69
+ }
70
+ class TheSeamBaseBadgeButtonComponentHarness extends TheSeamBaseButtonComponentHarness {
71
+ constructor() {
72
+ super(...arguments);
73
+ this._badgeElement = this.locatorFor('.badge');
74
+ }
75
+ /** Gets the text of the button item. */
76
+ getText() {
77
+ return __awaiter(this, void 0, void 0, function* () {
78
+ return (yield this.host()).text({ exclude: '.badge' });
79
+ });
80
+ }
81
+ /** Gets the text of the badge. */
82
+ getBadgeText() {
83
+ return __awaiter(this, void 0, void 0, function* () {
84
+ return (yield this._badgeElement()).text();
85
+ });
86
+ }
87
+ /** Gets the theme of the badge. */
88
+ getBadgeTheme() {
89
+ return __awaiter(this, void 0, void 0, function* () {
90
+ return (yield this._badgeElement()).getAttribute('class').then(c => { var _a; return ((_a = getbadgeThemeClass(c)) === null || _a === void 0 ? void 0 : _a.replace('badge-', '')) || null; });
91
+ });
92
+ }
93
+ }
94
+
95
+ class TheSeamAnchorBadgeButtonComponentHarness extends TheSeamBaseBadgeButtonComponentHarness {
96
+ /**
97
+ * Gets a `HarnessPredicate` that can be used to search for a button item with specific attributes.
98
+ * @param options Options for filtering which button item instances are considered a match.
99
+ * @return a `HarnessPredicate` configured with the given options.
100
+ */
101
+ static with(options = {}) {
102
+ return createBaseBadgeButtonComponentHarnessPredicate(this, options);
103
+ }
104
+ getTabIndex() {
105
+ return __awaiter(this, void 0, void 0, function* () {
106
+ const tabIndex = yield (yield this.host()).getAttribute('tabindex');
107
+ return Number(tabIndex);
108
+ });
109
+ }
110
+ }
111
+ /** The selector for the host element of a `TheSeamAnchorBadgeButtonComponent` instance. */
112
+ TheSeamAnchorBadgeButtonComponentHarness.hostSelector = 'a[seamBadgeButton]';
113
+
114
+ class TheSeamAnchorButtonComponentHarness extends TheSeamBaseButtonComponentHarness {
115
+ /**
116
+ * Gets a `HarnessPredicate` that can be used to search for a button item with specific attributes.
117
+ * @param options Options for filtering which button item instances are considered a match.
118
+ * @return a `HarnessPredicate` configured with the given options.
119
+ */
120
+ static with(options = {}) {
121
+ return createBaseButtonComponentHarnessPredicate(this, options);
122
+ }
123
+ getTabIndex() {
124
+ return __awaiter(this, void 0, void 0, function* () {
125
+ const tabIndex = yield (yield this.host()).getAttribute('tabindex');
126
+ return Number(tabIndex);
127
+ });
128
+ }
129
+ }
130
+ /** The selector for the host element of a `TheSeamAnchorButtonComponent` instance. */
131
+ TheSeamAnchorButtonComponentHarness.hostSelector = 'a[seamButton]';
132
+
133
+ class TheSeamBadgeButtonComponentHarness extends TheSeamBaseBadgeButtonComponentHarness {
134
+ /**
135
+ * Gets a `HarnessPredicate` that can be used to search for a button item with specific attributes.
136
+ * @param options Options for filtering which button item instances are considered a match.
137
+ * @return a `HarnessPredicate` configured with the given options.
138
+ */
139
+ static with(options = {}) {
140
+ return createBaseBadgeButtonComponentHarnessPredicate(this, options);
141
+ }
142
+ }
143
+ /** The selector for the host element of a `TheSeamBadgeButtonComponent` instance. */
144
+ TheSeamBadgeButtonComponentHarness.hostSelector = 'button[seamBadgeButton]';
145
+
146
+ // import { TheSeamMenuHarness } from './button.harness'
147
+ // import { animatingWait } from './utils'
148
+ class TheSeamButtonComponentHarness extends TheSeamBaseButtonComponentHarness {
149
+ /**
150
+ * Gets a `HarnessPredicate` that can be used to search for a button item with specific attributes.
151
+ * @param options Options for filtering which button item instances are considered a match.
152
+ * @return a `HarnessPredicate` configured with the given options.
153
+ */
154
+ static with(options = {}) {
155
+ return createBaseButtonComponentHarnessPredicate(this, options);
156
+ }
157
+ }
158
+ /** The selector for the host element of a `TheSeamButtonComponent` instance. */
159
+ TheSeamButtonComponentHarness.hostSelector = 'button[seamButton]';
160
+
161
+ class TheSeamToggleButtonComponentHarness extends TheSeamBaseButtonComponentHarness {
162
+ /**
163
+ * Gets a `HarnessPredicate` that can be used to search for a button item with specific attributes.
164
+ * @param options Options for filtering which button item instances are considered a match.
165
+ * @return a `HarnessPredicate` configured with the given options.
166
+ */
167
+ static with(options = {}) {
168
+ return createBaseButtonComponentHarnessPredicate(this, options);
169
+ }
170
+ /**
171
+ * Clicks the button.
172
+ */
173
+ click() {
174
+ return __awaiter(this, void 0, void 0, function* () {
175
+ return (yield this.host()).click();
176
+ });
177
+ }
178
+ /** Gets the theme of the button item. */
179
+ isActive() {
180
+ return __awaiter(this, void 0, void 0, function* () {
181
+ return (yield this.host()).getAttribute('class')
182
+ .then(c => ((c === null || c === void 0 ? void 0 : c.split(' ').indexOf('active')) !== -1) || false);
183
+ });
184
+ }
185
+ }
186
+ /** The selector for the host element of a `TheSeamToggleButtonComponent` instance. */
187
+ TheSeamToggleButtonComponentHarness.hostSelector = 'button[seamToggleButton]';
188
+
12
189
  class TheSeamButtonBase {
13
190
  constructor(_elementRef, _focusMonitor, _renderer) {
14
191
  this._elementRef = _elementRef;
@@ -80,6 +257,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
80
257
  type: Component,
81
258
  args: [{ selector: 'a[seamButton]', exportAs: 'seamButton,seamButtonBaseAnchor', inputs: ['disabled', 'theme', 'size'], host: {
82
259
  'class': 'btn',
260
+ // '[class.disabled]': 'disabled || null',
83
261
  '[attr.tabindex]': 'disabled ? -1 : (tabIndex || 0)',
84
262
  '[attr.disabled]': 'disabled || null',
85
263
  '[attr.aria-disabled]': 'disabled.toString()',
@@ -310,5 +488,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
310
488
  * Generated bundle index. Do not edit.
311
489
  */
312
490
 
313
- export { TOGGLE_BUTTON_VALUE_ACCESSOR, TheSeamAnchorBadgeButtonComponent, TheSeamAnchorButtonComponent, TheSeamBadgeButtonComponent, TheSeamButtonComponent, TheSeamButtonsModule, TheSeamProgressCircleButtonComponent, TheSeamToggleButtonComponent };
491
+ export { TOGGLE_BUTTON_VALUE_ACCESSOR, TheSeamAnchorBadgeButtonComponent, TheSeamAnchorBadgeButtonComponentHarness, TheSeamAnchorButtonComponent, TheSeamAnchorButtonComponentHarness, TheSeamBadgeButtonComponent, TheSeamBadgeButtonComponentHarness, TheSeamButtonComponent, TheSeamButtonComponentHarness, TheSeamButtonsModule, TheSeamProgressCircleButtonComponent, TheSeamToggleButtonComponent, TheSeamToggleButtonComponentHarness };
314
492
  //# sourceMappingURL=theseam-ui-common-buttons.mjs.map