@skyux/core 11.26.0 → 11.28.0

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 (76) hide show
  1. package/documentation.json +1283 -1283
  2. package/esm2022/index.mjs +2 -1
  3. package/esm2022/lib/modules/adapter-service/adapter.module.mjs +5 -5
  4. package/esm2022/lib/modules/adapter-service/adapter.service.mjs +4 -4
  5. package/esm2022/lib/modules/affix/affix.directive.mjs +4 -4
  6. package/esm2022/lib/modules/affix/affix.module.mjs +5 -5
  7. package/esm2022/lib/modules/affix/affix.service.mjs +4 -4
  8. package/esm2022/lib/modules/breakpoint-observer/container-breakpoint-observer.mjs +4 -4
  9. package/esm2022/lib/modules/breakpoint-observer/media-breakpoint-observer.mjs +4 -4
  10. package/esm2022/lib/modules/breakpoint-observer/responsive-host.directive.mjs +4 -4
  11. package/esm2022/lib/modules/dock/dock-dom-adapter.service.mjs +4 -4
  12. package/esm2022/lib/modules/dock/dock.component.mjs +4 -4
  13. package/esm2022/lib/modules/dock/dock.module.mjs +5 -5
  14. package/esm2022/lib/modules/dock/dock.service.mjs +4 -4
  15. package/esm2022/lib/modules/dynamic-component/dynamic-component.module.mjs +5 -5
  16. package/esm2022/lib/modules/dynamic-component/dynamic-component.service.mjs +7 -7
  17. package/esm2022/lib/modules/file-reader/file-reader.service.mjs +32 -0
  18. package/esm2022/lib/modules/format/app-format.mjs +4 -4
  19. package/esm2022/lib/modules/help/help.service.mjs +4 -4
  20. package/esm2022/lib/modules/id/id.directive.mjs +4 -4
  21. package/esm2022/lib/modules/id/id.module.mjs +5 -5
  22. package/esm2022/lib/modules/id/id.service.mjs +4 -4
  23. package/esm2022/lib/modules/layout-host/layout-host.service.mjs +4 -4
  24. package/esm2022/lib/modules/live-announcer/live-announcer.service.mjs +4 -4
  25. package/esm2022/lib/modules/log/log.module.mjs +5 -5
  26. package/esm2022/lib/modules/log/log.service.mjs +5 -6
  27. package/esm2022/lib/modules/media-query/media-query.module.mjs +5 -5
  28. package/esm2022/lib/modules/media-query/media-query.service.mjs +4 -4
  29. package/esm2022/lib/modules/mutation/mutation-observer-service.mjs +4 -4
  30. package/esm2022/lib/modules/numeric/numeric.module.mjs +5 -5
  31. package/esm2022/lib/modules/numeric/numeric.options.mjs +3 -5
  32. package/esm2022/lib/modules/numeric/numeric.pipe.mjs +4 -4
  33. package/esm2022/lib/modules/numeric/numeric.service.mjs +4 -4
  34. package/esm2022/lib/modules/overlay/overlay-adapter.service.mjs +4 -4
  35. package/esm2022/lib/modules/overlay/overlay.component.mjs +4 -4
  36. package/esm2022/lib/modules/overlay/overlay.module.mjs +5 -5
  37. package/esm2022/lib/modules/overlay/overlay.service.mjs +7 -7
  38. package/esm2022/lib/modules/percent-pipe/percent-pipe.module.mjs +5 -5
  39. package/esm2022/lib/modules/percent-pipe/percent.pipe.mjs +4 -4
  40. package/esm2022/lib/modules/resize-observer/resize-observer-media-query.service.mjs +4 -4
  41. package/esm2022/lib/modules/resize-observer/resize-observer.service.mjs +4 -4
  42. package/esm2022/lib/modules/screen-reader-label/screen-reader-label.directive.mjs +4 -4
  43. package/esm2022/lib/modules/scroll-shadow/scroll-shadow.directive.mjs +4 -4
  44. package/esm2022/lib/modules/scrollable-host/scrollable-host.service.mjs +4 -4
  45. package/esm2022/lib/modules/shared/sky-core-resources.module.mjs +5 -5
  46. package/esm2022/lib/modules/title/title.service.mjs +4 -4
  47. package/esm2022/lib/modules/trim/trim.directive.mjs +4 -4
  48. package/esm2022/lib/modules/trim/trim.module.mjs +5 -5
  49. package/esm2022/lib/modules/ui-config/ui-config.service.mjs +4 -4
  50. package/esm2022/lib/modules/viewkeeper/viewkeeper-host-options.mjs +4 -4
  51. package/esm2022/lib/modules/viewkeeper/viewkeeper.directive.mjs +4 -4
  52. package/esm2022/lib/modules/viewkeeper/viewkeeper.module.mjs +5 -5
  53. package/esm2022/lib/modules/viewkeeper/viewkeeper.service.mjs +4 -4
  54. package/esm2022/lib/modules/window/window-ref.mjs +4 -4
  55. package/esm2022/testing/legacy/core-testing.module.mjs +5 -5
  56. package/esm2022/testing/legacy/mock-media-query.service.mjs +4 -4
  57. package/esm2022/testing/legacy/mock-ui-config.service.mjs +4 -4
  58. package/esm2022/testing/modules/file-reader/file-reader-testing.service.mjs +19 -0
  59. package/esm2022/testing/modules/file-reader/provide-file-reader-testing.mjs +22 -0
  60. package/esm2022/testing/modules/help/help-testing.module.mjs +5 -5
  61. package/esm2022/testing/modules/help/help-testing.service.mjs +4 -4
  62. package/esm2022/testing/modules/media-query/breakpoint-observer-testing.mjs +4 -4
  63. package/esm2022/testing/modules/media-query/media-query-testing-controller.mjs +4 -4
  64. package/esm2022/testing/public-api.mjs +2 -1
  65. package/esm2022/version.mjs +1 -1
  66. package/fesm2022/skyux-core-testing.mjs +61 -25
  67. package/fesm2022/skyux-core-testing.mjs.map +1 -1
  68. package/fesm2022/skyux-core.mjs +204 -177
  69. package/fesm2022/skyux-core.mjs.map +1 -1
  70. package/index.d.ts +1 -0
  71. package/lib/modules/file-reader/file-reader.service.d.ts +10 -0
  72. package/lib/modules/log/log.service.d.ts +1 -2
  73. package/package.json +7 -7
  74. package/testing/modules/file-reader/file-reader-testing.service.d.ts +10 -0
  75. package/testing/modules/file-reader/provide-file-reader-testing.d.ts +12 -0
  76. package/testing/public-api.d.ts +1 -0
@@ -13,10 +13,10 @@ export class SkyMediaQueryTestingController {
13
13
  setBreakpoint(breakpoint) {
14
14
  this.#observer.setBreakpoint(breakpoint);
15
15
  }
16
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyMediaQueryTestingController, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
17
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyMediaQueryTestingController }); }
16
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyMediaQueryTestingController, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
17
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyMediaQueryTestingController }); }
18
18
  }
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyMediaQueryTestingController, decorators: [{
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyMediaQueryTestingController, decorators: [{
20
20
  type: Injectable
21
21
  }] });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWEtcXVlcnktdGVzdGluZy1jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvdGVzdGluZy9zcmMvbW9kdWxlcy9tZWRpYS1xdWVyeS9tZWRpYS1xdWVyeS10ZXN0aW5nLWNvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbkQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBRTdFOzs7R0FHRztBQUVILE1BQU0sT0FBTyw4QkFBOEI7SUFDaEMsU0FBUyxHQUFHLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0lBRTFEOztPQUVHO0lBQ0ksYUFBYSxDQUFDLFVBQXlCO1FBQzVDLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzNDLENBQUM7OEdBUlUsOEJBQThCO2tIQUE5Qiw4QkFBOEI7OzJGQUE5Qiw4QkFBOEI7a0JBRDFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreUJyZWFrcG9pbnQgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5cbmltcG9ydCB7IFNreUJyZWFrcG9pbnRPYnNlcnZlclRlc3RpbmcgfSBmcm9tICcuL2JyZWFrcG9pbnQtb2JzZXJ2ZXItdGVzdGluZyc7XG5cbi8qKlxuICogQSBjb250cm9sbGVyIHRvIGJlIGluamVjdGVkIGludG8gdGVzdHMsIHdoaWNoIG1vY2tzIHRoZVxuICogYFNreU1lZGlhUXVlcnlTZXJ2aWNlYCBhbmQgaGFuZGxlcyBpbnRlcmFjdGlvbnMgd2l0aCBicmVha3BvaW50cy5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNreU1lZGlhUXVlcnlUZXN0aW5nQ29udHJvbGxlciB7XG4gIHJlYWRvbmx5ICNvYnNlcnZlciA9IGluamVjdChTa3lCcmVha3BvaW50T2JzZXJ2ZXJUZXN0aW5nKTtcblxuICAvKipcbiAgICogRW1pdHMgdGhlIHByb3ZpZGVkIGJyZWFrcG9pbnQgdG8gYWxsIHN1YnNjcmliZXJzLlxuICAgKi9cbiAgcHVibGljIHNldEJyZWFrcG9pbnQoYnJlYWtwb2ludDogU2t5QnJlYWtwb2ludCk6IHZvaWQge1xuICAgIHRoaXMuI29ic2VydmVyLnNldEJyZWFrcG9pbnQoYnJlYWtwb2ludCk7XG4gIH1cbn1cbiJdfQ==
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWEtcXVlcnktdGVzdGluZy1jb250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2NvcmUvdGVzdGluZy9zcmMvbW9kdWxlcy9tZWRpYS1xdWVyeS9tZWRpYS1xdWVyeS10ZXN0aW5nLWNvbnRyb2xsZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbkQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBRTdFOzs7R0FHRztBQUVILE1BQU0sT0FBTyw4QkFBOEI7SUFDaEMsU0FBUyxHQUFHLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0lBRTFEOztPQUVHO0lBQ0ksYUFBYSxDQUFDLFVBQXlCO1FBQzVDLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzNDLENBQUM7K0dBUlUsOEJBQThCO21IQUE5Qiw4QkFBOEI7OzRGQUE5Qiw4QkFBOEI7a0JBRDFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreUJyZWFrcG9pbnQgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5cbmltcG9ydCB7IFNreUJyZWFrcG9pbnRPYnNlcnZlclRlc3RpbmcgfSBmcm9tICcuL2JyZWFrcG9pbnQtb2JzZXJ2ZXItdGVzdGluZyc7XG5cbi8qKlxuICogQSBjb250cm9sbGVyIHRvIGJlIGluamVjdGVkIGludG8gdGVzdHMsIHdoaWNoIG1vY2tzIHRoZVxuICogYFNreU1lZGlhUXVlcnlTZXJ2aWNlYCBhbmQgaGFuZGxlcyBpbnRlcmFjdGlvbnMgd2l0aCBicmVha3BvaW50cy5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNreU1lZGlhUXVlcnlUZXN0aW5nQ29udHJvbGxlciB7XG4gIHJlYWRvbmx5ICNvYnNlcnZlciA9IGluamVjdChTa3lCcmVha3BvaW50T2JzZXJ2ZXJUZXN0aW5nKTtcblxuICAvKipcbiAgICogRW1pdHMgdGhlIHByb3ZpZGVkIGJyZWFrcG9pbnQgdG8gYWxsIHN1YnNjcmliZXJzLlxuICAgKi9cbiAgcHVibGljIHNldEJyZWFrcG9pbnQoYnJlYWtwb2ludDogU2t5QnJlYWtwb2ludCk6IHZvaWQge1xuICAgIHRoaXMuI29ic2VydmVyLnNldEJyZWFrcG9pbnQoYnJlYWtwb2ludCk7XG4gIH1cbn1cbiJdfQ==
@@ -2,6 +2,7 @@ export { SkyCoreTestingModule } from './legacy/core-testing.module';
2
2
  export { MockSkyMediaQueryService } from './legacy/mock-media-query.service';
3
3
  export { MockSkyUIConfigService } from './legacy/mock-ui-config.service';
4
4
  export { mockResizeObserver, mockResizeObserverEntry, mockResizeObserverHandle, } from './legacy/resize-observer-mock';
5
+ export { provideSkyFileReaderTesting } from './modules/file-reader/provide-file-reader-testing';
5
6
  export { SkyHelpTestingController } from './modules/help/help-testing-controller';
6
7
  export { SkyHelpTestingModule } from './modules/help/help-testing.module';
7
8
  export { SkyMediaQueryTestingController } from './modules/media-query/media-query-testing-controller';
@@ -11,4 +12,4 @@ export { SkyComponentHarness } from './shared/component-harness';
11
12
  export { SkyHarnessUtility } from './shared/harness-utility';
12
13
  export { SkyInputHarness } from './shared/input-harness';
13
14
  export { SkyQueryableComponentHarness } from './shared/queryable-component-harness';
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3Rlc3Rpbmcvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDcEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDN0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDekUsT0FBTyxFQUNMLGtCQUFrQixFQUNsQix1QkFBdUIsRUFDdkIsd0JBQXdCLEdBQ3pCLE1BQU0sK0JBQStCLENBQUM7QUFDdkMsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDbEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDMUUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDdEcsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDaEcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFdEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFakUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgU2t5Q29yZVRlc3RpbmdNb2R1bGUgfSBmcm9tICcuL2xlZ2FjeS9jb3JlLXRlc3RpbmcubW9kdWxlJztcbmV4cG9ydCB7IE1vY2tTa3lNZWRpYVF1ZXJ5U2VydmljZSB9IGZyb20gJy4vbGVnYWN5L21vY2stbWVkaWEtcXVlcnkuc2VydmljZSc7XG5leHBvcnQgeyBNb2NrU2t5VUlDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi9sZWdhY3kvbW9jay11aS1jb25maWcuc2VydmljZSc7XG5leHBvcnQge1xuICBtb2NrUmVzaXplT2JzZXJ2ZXIsXG4gIG1vY2tSZXNpemVPYnNlcnZlckVudHJ5LFxuICBtb2NrUmVzaXplT2JzZXJ2ZXJIYW5kbGUsXG59IGZyb20gJy4vbGVnYWN5L3Jlc2l6ZS1vYnNlcnZlci1tb2NrJztcbmV4cG9ydCB7IFNreUhlbHBUZXN0aW5nQ29udHJvbGxlciB9IGZyb20gJy4vbW9kdWxlcy9oZWxwL2hlbHAtdGVzdGluZy1jb250cm9sbGVyJztcbmV4cG9ydCB7IFNreUhlbHBUZXN0aW5nTW9kdWxlIH0gZnJvbSAnLi9tb2R1bGVzL2hlbHAvaGVscC10ZXN0aW5nLm1vZHVsZSc7XG5leHBvcnQgeyBTa3lNZWRpYVF1ZXJ5VGVzdGluZ0NvbnRyb2xsZXIgfSBmcm9tICcuL21vZHVsZXMvbWVkaWEtcXVlcnkvbWVkaWEtcXVlcnktdGVzdGluZy1jb250cm9sbGVyJztcbmV4cG9ydCB7IHByb3ZpZGVTa3lNZWRpYVF1ZXJ5VGVzdGluZyB9IGZyb20gJy4vbW9kdWxlcy9tZWRpYS1xdWVyeS9wcm92aWRlLW1lZGlhLXF1ZXJ5LXRlc3RpbmcnO1xuZXhwb3J0IHsgU2t5T3ZlcmxheUhhcm5lc3MgfSBmcm9tICcuL21vZHVsZXMvb3ZlcmxheS9vdmVybGF5LWhhcm5lc3MnO1xuZXhwb3J0IHsgU2t5T3ZlcmxheUhhcm5lc3NGaWx0ZXJzIH0gZnJvbSAnLi9tb2R1bGVzL292ZXJsYXkvb3ZlcmxheS1oYXJuZXNzLWZpbHRlcnMnO1xuZXhwb3J0IHsgU2t5Q29tcG9uZW50SGFybmVzcyB9IGZyb20gJy4vc2hhcmVkL2NvbXBvbmVudC1oYXJuZXNzJztcbmV4cG9ydCB7IFNreUhhcm5lc3NGaWx0ZXJzIH0gZnJvbSAnLi9zaGFyZWQvaGFybmVzcy1maWx0ZXJzJztcbmV4cG9ydCB7IFNreUhhcm5lc3NVdGlsaXR5IH0gZnJvbSAnLi9zaGFyZWQvaGFybmVzcy11dGlsaXR5JztcbmV4cG9ydCB7IFNreUlucHV0SGFybmVzcyB9IGZyb20gJy4vc2hhcmVkL2lucHV0LWhhcm5lc3MnO1xuZXhwb3J0IHsgU2t5UXVlcnlhYmxlQ29tcG9uZW50SGFybmVzcyB9IGZyb20gJy4vc2hhcmVkL3F1ZXJ5YWJsZS1jb21wb25lbnQtaGFybmVzcyc7XG4iXX0=
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3Rlc3Rpbmcvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDcEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDN0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDekUsT0FBTyxFQUNMLGtCQUFrQixFQUNsQix1QkFBdUIsRUFDdkIsd0JBQXdCLEdBQ3pCLE1BQU0sK0JBQStCLENBQUM7QUFDdkMsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDaEcsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDbEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDMUUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDdEcsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDaEcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFdEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFakUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgU2t5Q29yZVRlc3RpbmdNb2R1bGUgfSBmcm9tICcuL2xlZ2FjeS9jb3JlLXRlc3RpbmcubW9kdWxlJztcbmV4cG9ydCB7IE1vY2tTa3lNZWRpYVF1ZXJ5U2VydmljZSB9IGZyb20gJy4vbGVnYWN5L21vY2stbWVkaWEtcXVlcnkuc2VydmljZSc7XG5leHBvcnQgeyBNb2NrU2t5VUlDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi9sZWdhY3kvbW9jay11aS1jb25maWcuc2VydmljZSc7XG5leHBvcnQge1xuICBtb2NrUmVzaXplT2JzZXJ2ZXIsXG4gIG1vY2tSZXNpemVPYnNlcnZlckVudHJ5LFxuICBtb2NrUmVzaXplT2JzZXJ2ZXJIYW5kbGUsXG59IGZyb20gJy4vbGVnYWN5L3Jlc2l6ZS1vYnNlcnZlci1tb2NrJztcbmV4cG9ydCB7IHByb3ZpZGVTa3lGaWxlUmVhZGVyVGVzdGluZyB9IGZyb20gJy4vbW9kdWxlcy9maWxlLXJlYWRlci9wcm92aWRlLWZpbGUtcmVhZGVyLXRlc3RpbmcnO1xuZXhwb3J0IHsgU2t5SGVscFRlc3RpbmdDb250cm9sbGVyIH0gZnJvbSAnLi9tb2R1bGVzL2hlbHAvaGVscC10ZXN0aW5nLWNvbnRyb2xsZXInO1xuZXhwb3J0IHsgU2t5SGVscFRlc3RpbmdNb2R1bGUgfSBmcm9tICcuL21vZHVsZXMvaGVscC9oZWxwLXRlc3RpbmcubW9kdWxlJztcbmV4cG9ydCB7IFNreU1lZGlhUXVlcnlUZXN0aW5nQ29udHJvbGxlciB9IGZyb20gJy4vbW9kdWxlcy9tZWRpYS1xdWVyeS9tZWRpYS1xdWVyeS10ZXN0aW5nLWNvbnRyb2xsZXInO1xuZXhwb3J0IHsgcHJvdmlkZVNreU1lZGlhUXVlcnlUZXN0aW5nIH0gZnJvbSAnLi9tb2R1bGVzL21lZGlhLXF1ZXJ5L3Byb3ZpZGUtbWVkaWEtcXVlcnktdGVzdGluZyc7XG5leHBvcnQgeyBTa3lPdmVybGF5SGFybmVzcyB9IGZyb20gJy4vbW9kdWxlcy9vdmVybGF5L292ZXJsYXktaGFybmVzcyc7XG5leHBvcnQgeyBTa3lPdmVybGF5SGFybmVzc0ZpbHRlcnMgfSBmcm9tICcuL21vZHVsZXMvb3ZlcmxheS9vdmVybGF5LWhhcm5lc3MtZmlsdGVycyc7XG5leHBvcnQgeyBTa3lDb21wb25lbnRIYXJuZXNzIH0gZnJvbSAnLi9zaGFyZWQvY29tcG9uZW50LWhhcm5lc3MnO1xuZXhwb3J0IHsgU2t5SGFybmVzc0ZpbHRlcnMgfSBmcm9tICcuL3NoYXJlZC9oYXJuZXNzLWZpbHRlcnMnO1xuZXhwb3J0IHsgU2t5SGFybmVzc1V0aWxpdHkgfSBmcm9tICcuL3NoYXJlZC9oYXJuZXNzLXV0aWxpdHknO1xuZXhwb3J0IHsgU2t5SW5wdXRIYXJuZXNzIH0gZnJvbSAnLi9zaGFyZWQvaW5wdXQtaGFybmVzcyc7XG5leHBvcnQgeyBTa3lRdWVyeWFibGVDb21wb25lbnRIYXJuZXNzIH0gZnJvbSAnLi9zaGFyZWQvcXVlcnlhYmxlLWNvbXBvbmVudC1oYXJuZXNzJztcbiJdfQ==
@@ -15,5 +15,5 @@ export class Version {
15
15
  /**
16
16
  * Represents the version of @skyux/core.
17
17
  */
18
- export const VERSION = new Version('11.26.0');
18
+ export const VERSION = new Version('11.28.0');
19
19
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9jb3JlL3NyYy92ZXJzaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHdDQUF3QztBQUN4QyxtRkFBbUY7QUFFbkY7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLE9BQU87SUFLbEIsWUFBNEIsSUFBWTtRQUFaLFNBQUksR0FBSixJQUFJLENBQVE7UUFDdEMsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNsRCxDQUFDO0NBQ0Y7QUFFRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxJQUFJLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gVGFrZW4gZnJvbSBBbmd1bGFyJ3MgdmVyc2lvbi50cyBmaWxlLlxuLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2Jsb2IvMTYuMi54L3BhY2thZ2VzL2NvcmUvc3JjL3ZlcnNpb24udHNcblxuLyoqXG4gKiBSZXByZXNlbnRzIHRoZSB2ZXJzaW9uIG9mIGEgcGFja2FnZS5cbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgVmVyc2lvbiB7XG4gIHB1YmxpYyByZWFkb25seSBtYWpvcjogc3RyaW5nO1xuICBwdWJsaWMgcmVhZG9ubHkgbWlub3I6IHN0cmluZztcbiAgcHVibGljIHJlYWRvbmx5IHBhdGNoOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IGZ1bGw6IHN0cmluZykge1xuICAgIHRoaXMubWFqb3IgPSBmdWxsLnNwbGl0KCcuJylbMF07XG4gICAgdGhpcy5taW5vciA9IGZ1bGwuc3BsaXQoJy4nKVsxXTtcbiAgICB0aGlzLnBhdGNoID0gZnVsbC5zcGxpdCgnLicpLnNsaWNlKDIpLmpvaW4oJy4nKTtcbiAgfVxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIHZlcnNpb24gb2YgQHNreXV4L2NvcmUuXG4gKi9cbmV4cG9ydCBjb25zdCBWRVJTSU9OID0gbmV3IFZlcnNpb24oJzAuMC4wLVBMQUNFSE9MREVSJyk7XG4iXX0=
@@ -1,6 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { NgZone, Injectable, NgModule, inject } from '@angular/core';
3
- import { SkyMediaQueryService, SkyMediaBreakpoints, SkyUIConfigService, SkyHelpService, SkyContainerBreakpointObserver, SkyMediaBreakpointObserver, SKY_BREAKPOINT_OBSERVER } from '@skyux/core';
3
+ import { SkyMediaQueryService, SkyMediaBreakpoints, SkyUIConfigService, SkyFileReaderService, SkyHelpService, SkyContainerBreakpointObserver, SkyMediaBreakpointObserver, SKY_BREAKPOINT_OBSERVER } from '@skyux/core';
4
4
  import { BehaviorSubject, of, ReplaySubject } from 'rxjs';
5
5
  import { ComponentHarness, HarnessPredicate } from '@angular/cdk/testing';
6
6
 
@@ -40,10 +40,10 @@ class MockSkyMediaQueryService extends SkyMediaQueryService {
40
40
  /* istanbul ignore next */
41
41
  // eslint-disable-next-line @typescript-eslint/no-empty-function
42
42
  destroy() { }
43
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MockSkyMediaQueryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
44
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MockSkyMediaQueryService }); }
43
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MockSkyMediaQueryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
44
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MockSkyMediaQueryService }); }
45
45
  }
46
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MockSkyMediaQueryService, decorators: [{
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MockSkyMediaQueryService, decorators: [{
47
47
  type: Injectable
48
48
  }], ctorParameters: () => [] });
49
49
 
@@ -98,10 +98,10 @@ class MockSkyUIConfigService extends SkyUIConfigService {
98
98
  }
99
99
  }
100
100
  }
101
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MockSkyUIConfigService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
102
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MockSkyUIConfigService }); }
101
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MockSkyUIConfigService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
102
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MockSkyUIConfigService }); }
103
103
  }
104
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: MockSkyUIConfigService, decorators: [{
104
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MockSkyUIConfigService, decorators: [{
105
105
  type: Injectable
106
106
  }] });
107
107
 
@@ -109,9 +109,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
109
109
  * @internal
110
110
  */
111
111
  class SkyCoreTestingModule {
112
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyCoreTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
113
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: SkyCoreTestingModule }); }
114
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyCoreTestingModule, providers: [
112
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyCoreTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
113
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: SkyCoreTestingModule }); }
114
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyCoreTestingModule, providers: [
115
115
  { provide: SkyMediaQueryService, useClass: MockSkyMediaQueryService },
116
116
  {
117
117
  provide: SkyUIConfigService,
@@ -119,7 +119,7 @@ class SkyCoreTestingModule {
119
119
  },
120
120
  ] }); }
121
121
  }
122
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyCoreTestingModule, decorators: [{
122
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyCoreTestingModule, decorators: [{
123
123
  type: NgModule,
124
124
  args: [{
125
125
  providers: [
@@ -182,6 +182,42 @@ function mockResizeObserver() {
182
182
  };
183
183
  }
184
184
 
185
+ /**
186
+ * @internal
187
+ */
188
+ class SkyFileReaderTestingService extends SkyFileReaderService {
189
+ async readAsDataURL(file) {
190
+ return await new Promise((resolve) => {
191
+ resolve(`data:${file.type};base64,MOCK_DATA`);
192
+ });
193
+ }
194
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyFileReaderTestingService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
195
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyFileReaderTestingService }); }
196
+ }
197
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyFileReaderTestingService, decorators: [{
198
+ type: Injectable
199
+ }] });
200
+
201
+ /**
202
+ * Provides mocks for file reader testing.
203
+ * @internal
204
+ * @example
205
+ * ```typescript
206
+ * TestBed.configureTestingModule({
207
+ * providers: [provideSkyFileReaderTesting()]
208
+ * });
209
+ * ```
210
+ */
211
+ function provideSkyFileReaderTesting() {
212
+ return [
213
+ SkyFileReaderTestingService,
214
+ {
215
+ provide: SkyFileReaderService,
216
+ useClass: SkyFileReaderTestingService,
217
+ },
218
+ ];
219
+ }
220
+
185
221
  function formatHelpKeyForError(helpKey) {
186
222
  return helpKey === undefined ? 'undefined' : `'${helpKey}'`;
187
223
  }
@@ -234,10 +270,10 @@ class SkyHelpTestingService extends SkyHelpService {
234
270
  closeHelp() {
235
271
  this.#currentHelpKey = undefined;
236
272
  }
237
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyHelpTestingService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
238
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyHelpTestingService }); }
273
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyHelpTestingService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
274
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyHelpTestingService }); }
239
275
  }
240
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyHelpTestingService, decorators: [{
276
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyHelpTestingService, decorators: [{
241
277
  type: Injectable
242
278
  }] });
243
279
 
@@ -245,9 +281,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
245
281
  * Mocks SkyHelpService to enable testing of global help.
246
282
  */
247
283
  class SkyHelpTestingModule {
248
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyHelpTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
249
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: SkyHelpTestingModule }); }
250
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyHelpTestingModule, providers: [
284
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyHelpTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
285
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: SkyHelpTestingModule }); }
286
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyHelpTestingModule, providers: [
251
287
  {
252
288
  provide: SkyHelpService,
253
289
  useClass: SkyHelpTestingService,
@@ -255,7 +291,7 @@ class SkyHelpTestingModule {
255
291
  SkyHelpTestingController,
256
292
  ] }); }
257
293
  }
258
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyHelpTestingModule, decorators: [{
294
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyHelpTestingModule, decorators: [{
259
295
  type: NgModule,
260
296
  args: [{
261
297
  providers: [
@@ -284,10 +320,10 @@ class SkyBreakpointObserverTesting {
284
320
  setBreakpoint(breakpoint) {
285
321
  this.#breakpointChange.next(breakpoint);
286
322
  }
287
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyBreakpointObserverTesting, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
288
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyBreakpointObserverTesting }); }
323
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyBreakpointObserverTesting, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
324
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyBreakpointObserverTesting }); }
289
325
  }
290
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyBreakpointObserverTesting, decorators: [{
326
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyBreakpointObserverTesting, decorators: [{
291
327
  type: Injectable
292
328
  }] });
293
329
 
@@ -303,10 +339,10 @@ class SkyMediaQueryTestingController {
303
339
  setBreakpoint(breakpoint) {
304
340
  this.#observer.setBreakpoint(breakpoint);
305
341
  }
306
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyMediaQueryTestingController, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
307
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyMediaQueryTestingController }); }
342
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyMediaQueryTestingController, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
343
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyMediaQueryTestingController }); }
308
344
  }
309
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyMediaQueryTestingController, decorators: [{
345
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SkyMediaQueryTestingController, decorators: [{
310
346
  type: Injectable
311
347
  }] });
312
348
 
@@ -478,5 +514,5 @@ class SkyInputHarness extends ComponentHarness {
478
514
  * Generated bundle index. Do not edit.
479
515
  */
480
516
 
481
- export { MockSkyMediaQueryService, MockSkyUIConfigService, SkyComponentHarness, SkyCoreTestingModule, SkyHarnessUtility, SkyHelpTestingController, SkyHelpTestingModule, SkyInputHarness, SkyMediaQueryTestingController, SkyOverlayHarness, SkyQueryableComponentHarness, mockResizeObserver, mockResizeObserverEntry, mockResizeObserverHandle, provideSkyMediaQueryTesting };
517
+ export { MockSkyMediaQueryService, MockSkyUIConfigService, SkyComponentHarness, SkyCoreTestingModule, SkyHarnessUtility, SkyHelpTestingController, SkyHelpTestingModule, SkyInputHarness, SkyMediaQueryTestingController, SkyOverlayHarness, SkyQueryableComponentHarness, mockResizeObserver, mockResizeObserverEntry, mockResizeObserverHandle, provideSkyFileReaderTesting, provideSkyMediaQueryTesting };
482
518
  //# sourceMappingURL=skyux-core-testing.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"skyux-core-testing.mjs","sources":["../../../../../libs/components/core/testing/src/legacy/mock-media-query.service.ts","../../../../../libs/components/core/testing/src/legacy/mock-ui-config.service.ts","../../../../../libs/components/core/testing/src/legacy/core-testing.module.ts","../../../../../libs/components/core/testing/src/legacy/resize-observer-mock.ts","../../../../../libs/components/core/testing/src/modules/help/help-testing-controller.ts","../../../../../libs/components/core/testing/src/modules/help/help-testing.service.ts","../../../../../libs/components/core/testing/src/modules/help/help-testing.module.ts","../../../../../libs/components/core/testing/src/modules/media-query/breakpoint-observer-testing.ts","../../../../../libs/components/core/testing/src/modules/media-query/media-query-testing-controller.ts","../../../../../libs/components/core/testing/src/modules/media-query/provide-media-query-testing.ts","../../../../../libs/components/core/testing/src/shared/component-harness.ts","../../../../../libs/components/core/testing/src/shared/queryable-component-harness.ts","../../../../../libs/components/core/testing/src/modules/overlay/overlay-harness.ts","../../../../../libs/components/core/testing/src/shared/harness-utility.ts","../../../../../libs/components/core/testing/src/shared/input-harness.ts","../../../../../libs/components/core/testing/src/skyux-core-testing.ts"],"sourcesContent":["import { Injectable, NgZone } from '@angular/core';\nimport {\n SkyMediaBreakpoints,\n SkyMediaQueryListener,\n SkyMediaQueryService,\n} from '@skyux/core';\n\nimport { BehaviorSubject, Subscription } from 'rxjs';\n\n/**\n * @internal\n * @deprecated Use `provideSkyMediaQueryTesting()` coupled with `SkyMediaQueryTestingController`.\n */\n@Injectable()\nexport class MockSkyMediaQueryService extends SkyMediaQueryService {\n public static override xs = '(max-width: 767px)';\n public static override sm = '(min-width: 768px) and (max-width: 991px)';\n public static override md = '(min-width: 992px) and (max-width: 1199px)';\n public static override lg = '(min-width: 1200px)';\n\n public override get current(): SkyMediaBreakpoints {\n return this.currentBreakpoints;\n }\n\n public override set current(breakpoints: SkyMediaBreakpoints) {\n this.currentBreakpoints = breakpoints;\n }\n\n public currentMockSubject = new BehaviorSubject<SkyMediaBreakpoints>(\n this.current,\n );\n\n protected currentBreakpoints = SkyMediaBreakpoints.md;\n\n constructor() {\n super(\n new NgZone({\n enableLongStackTrace: true,\n }),\n );\n }\n\n public override subscribe(listener: SkyMediaQueryListener): Subscription {\n return this.currentMockSubject.subscribe({\n next: (breakpoints: SkyMediaBreakpoints) => {\n listener(breakpoints);\n },\n });\n }\n\n public fire(args: SkyMediaBreakpoints): void {\n this.currentBreakpoints = args;\n this.currentMockSubject.next(this.currentBreakpoints);\n }\n\n /* istanbul ignore next */\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n public override destroy(): void {}\n}\n","import { Injectable } from '@angular/core';\nimport { SkyUIConfigService } from '@skyux/core';\n\nimport { Observable, of as observableOf } from 'rxjs';\n\n/**\n * @internal\n */\n@Injectable()\nexport class MockSkyUIConfigService extends SkyUIConfigService {\n public override getConfig(key: string, defaultConfig?: any): Observable<any> {\n switch (key) {\n case 'defaultSettings':\n return observableOf(defaultConfig);\n case 'badData':\n return observableOf({ invalidProperty: 'invalidData' });\n default: {\n return observableOf({\n settings: {\n userSettings: {\n singleColumn: {\n tiles: [\n {\n id: 'tile-1',\n isCollapsed: true,\n },\n {\n id: 'tile-2',\n isCollapsed: true,\n },\n ],\n },\n multiColumn: [\n {\n tiles: [\n {\n id: 'tile-2',\n isCollapsed: true,\n },\n ],\n },\n {\n tiles: [\n {\n id: 'tile-1',\n isCollapsed: true,\n },\n ],\n },\n ],\n },\n defaultSettings: ['tile-1', 'tile-2'],\n },\n });\n }\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { SkyMediaQueryService, SkyUIConfigService } from '@skyux/core';\n\nimport { MockSkyMediaQueryService } from './mock-media-query.service';\nimport { MockSkyUIConfigService } from './mock-ui-config.service';\n\n/**\n * @internal\n */\n@NgModule({\n providers: [\n { provide: SkyMediaQueryService, useClass: MockSkyMediaQueryService },\n {\n provide: SkyUIConfigService,\n useClass: MockSkyUIConfigService,\n },\n ],\n})\nexport class SkyCoreTestingModule {}\n","/* istanbul ignore file: these are used in @skyux/core */\n\n/**\n * @internal\n */\nexport const mockResizeObserverEntry: ResizeObserverEntry = {\n target: {} as Element,\n borderBoxSize: [],\n contentBoxSize: [],\n contentRect: {\n width: 20,\n height: 20,\n x: 20,\n y: 20,\n top: 20,\n bottom: 20,\n left: 20,\n right: 20,\n toJSON: () => 'true',\n } as DOMRectReadOnly,\n devicePixelContentBoxSize: [],\n};\n\nconst defaultCallback: ResizeObserverCallback = (\n entries: ResizeObserverEntry[],\n observer: ResizeObserver,\n) => {};\n\n/**\n * @internal\n */\nexport const mockResizeObserverHandle = {\n callback: defaultCallback,\n emit: (entries: ResizeObserverEntry[], observer?: ResizeObserver) => {\n mockResizeObserverHandle.callback(entries, observer!);\n },\n};\n\n/**\n * @internal\n */\nexport function mockResizeObserver() {\n (window as any).requestAnimationFrame = (callback: () => void): number => {\n callback();\n return 0;\n };\n (window as any).cancelAnimationFrame = (_: number): void => undefined;\n window.ResizeObserver = class {\n constructor(callback: ResizeObserverCallback) {\n mockResizeObserverHandle.callback = callback;\n }\n\n public disconnect() {}\n\n public observe(target: Element, options?: ResizeObserverOptions) {}\n\n public unobserve(element: HTMLElement) {}\n };\n}\n","import { inject } from '@angular/core';\nimport { SkyHelpService } from '@skyux/core';\n\nimport { SkyHelpTestingService } from './help-testing.service';\n\nfunction formatHelpKeyForError(helpKey: string | undefined): string {\n return helpKey === undefined ? 'undefined' : `'${helpKey}'`;\n}\n\n/**\n * Provides methods for validating global help in unit tests.\n */\nexport class SkyHelpTestingController {\n #helpSvc = inject(SkyHelpService) as SkyHelpTestingService;\n\n /**\n * Validates the current help key and throws an error if the current help key does not match the expected help key.\n * @param expectedHelpKey The expected help key.\n */\n public expectCurrentHelpKey(expectedHelpKey: string | undefined): void {\n const currentHelpKey = this.#helpSvc.getCurrentHelpKey();\n\n if (currentHelpKey !== expectedHelpKey) {\n throw new Error(\n `Expected current help key to be ${formatHelpKeyForError(expectedHelpKey)}, but the current help key is ${formatHelpKeyForError(currentHelpKey)}.`,\n );\n }\n }\n\n /**\n * Close the current help.\n */\n public closeHelp(): void {\n this.#helpSvc.closeHelp();\n }\n}\n","import { Injectable } from '@angular/core';\nimport {\n SkyHelpOpenArgs,\n SkyHelpService,\n SkyHelpUpdateArgs,\n} from '@skyux/core';\n\nimport { Observable, of } from 'rxjs';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyHelpTestingService extends SkyHelpService {\n public override get widgetReadyStateChange(): Observable<boolean> {\n return of(true);\n }\n\n #currentHelpKey: string | undefined;\n #currentPageHelpKey: string | undefined;\n\n public override openHelp(args?: SkyHelpOpenArgs): void {\n this.#currentHelpKey = args?.helpKey;\n }\n\n public override updateHelp(args: SkyHelpUpdateArgs): void {\n if ('pageDefaultHelpKey' in args) {\n this.#currentPageHelpKey = args.pageDefaultHelpKey;\n }\n\n if ('helpKey' in args) {\n this.#currentHelpKey = args.helpKey;\n }\n }\n\n public getCurrentHelpKey(): string | undefined {\n return this.#currentHelpKey || this.#currentPageHelpKey;\n }\n\n public closeHelp(): void {\n this.#currentHelpKey = undefined;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { SkyHelpService } from '@skyux/core';\n\nimport { SkyHelpTestingController } from './help-testing-controller';\nimport { SkyHelpTestingService } from './help-testing.service';\n\n/**\n * Mocks SkyHelpService to enable testing of global help.\n */\n@NgModule({\n providers: [\n {\n provide: SkyHelpService,\n useClass: SkyHelpTestingService,\n },\n SkyHelpTestingController,\n ],\n})\nexport class SkyHelpTestingModule {}\n","import { Injectable } from '@angular/core';\nimport { SkyBreakpoint, SkyBreakpointObserver } from '@skyux/core';\n\nimport { Observable, ReplaySubject } from 'rxjs';\n\n/**\n * Overrides the media and container breakpoint observers for testing.\n * @internal\n */\n@Injectable()\nexport class SkyBreakpointObserverTesting implements SkyBreakpointObserver {\n public get breakpointChange(): Observable<SkyBreakpoint> {\n return this.#breakpointChangeObs;\n }\n\n #breakpointChange = new ReplaySubject<SkyBreakpoint>(1);\n #breakpointChangeObs = this.#breakpointChange.asObservable();\n\n public destroy(): void {\n this.#breakpointChange.complete();\n }\n\n public setBreakpoint(breakpoint: SkyBreakpoint): void {\n this.#breakpointChange.next(breakpoint);\n }\n}\n","import { Injectable, inject } from '@angular/core';\nimport { SkyBreakpoint } from '@skyux/core';\n\nimport { SkyBreakpointObserverTesting } from './breakpoint-observer-testing';\n\n/**\n * A controller to be injected into tests, which mocks the\n * `SkyMediaQueryService` and handles interactions with breakpoints.\n */\n@Injectable()\nexport class SkyMediaQueryTestingController {\n readonly #observer = inject(SkyBreakpointObserverTesting);\n\n /**\n * Emits the provided breakpoint to all subscribers.\n */\n public setBreakpoint(breakpoint: SkyBreakpoint): void {\n this.#observer.setBreakpoint(breakpoint);\n }\n}\n","import { Provider } from '@angular/core';\nimport {\n SKY_BREAKPOINT_OBSERVER,\n SkyContainerBreakpointObserver,\n SkyMediaBreakpointObserver,\n SkyMediaQueryService,\n} from '@skyux/core';\n\nimport { SkyBreakpointObserverTesting } from './breakpoint-observer-testing';\nimport { SkyMediaQueryTestingController } from './media-query-testing-controller';\n\n/**\n * Adds mocks to allow interactions with breakpoints in tests.\n */\nexport function provideSkyMediaQueryTesting(): Provider[] {\n return [\n SkyMediaQueryService,\n SkyBreakpointObserverTesting,\n SkyMediaQueryTestingController,\n {\n provide: SkyContainerBreakpointObserver,\n useExisting: SkyBreakpointObserverTesting,\n },\n {\n provide: SkyMediaBreakpointObserver,\n useExisting: SkyBreakpointObserverTesting,\n },\n {\n provide: SKY_BREAKPOINT_OBSERVER,\n useExisting: SkyBreakpointObserverTesting,\n },\n ];\n}\n","import {\n ComponentHarness,\n ComponentHarnessConstructor,\n HarnessPredicate,\n} from '@angular/cdk/testing';\n\nimport { SkyHarnessFilters } from './harness-filters';\n\n/**\n * @internal\n */\nexport abstract class SkyComponentHarness extends ComponentHarness {\n protected static getDataSkyIdPredicate<T extends SkyComponentHarness>(\n this: ComponentHarnessConstructor<T>,\n filters: SkyHarnessFilters,\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, filters).addOption(\n 'dataSkyId',\n filters.dataSkyId,\n (harness, text) =>\n HarnessPredicate.stringMatches(harness.#getSkyId(), text),\n );\n }\n\n async #getSkyId(): Promise<string | null> {\n return await (await this.host()).getAttribute('data-sky-id');\n }\n}\n","import {\n ComponentHarness,\n HarnessQuery,\n TestElement,\n} from '@angular/cdk/testing';\n\nimport { SkyComponentHarness } from './component-harness';\n\n/**\n * @internal\n */\nexport abstract class SkyQueryableComponentHarness extends SkyComponentHarness {\n /**\n * Returns a child harness or throws an error if not found.\n */\n public async queryHarness<T extends ComponentHarness>(\n query: HarnessQuery<T>,\n ): Promise<T> {\n return await this.locatorFor(query)();\n }\n\n /**\n * Returns a child harness or null if not found.\n */\n public async queryHarnessOrNull<T extends ComponentHarness>(\n query: HarnessQuery<T>,\n ): Promise<T | null> {\n return await this.locatorForOptional(query)();\n }\n\n /**\n * Returns child harnesses.\n */\n public async queryHarnesses<T extends ComponentHarness>(\n harness: HarnessQuery<T>,\n ): Promise<T[]> {\n return await this.locatorForAll(harness)();\n }\n\n /**\n * Returns a child test element or throws an error if not found.\n */\n public async querySelector(selector: string): Promise<TestElement | null> {\n return await this.locatorFor(selector)();\n }\n\n /**\n * Returns a child test element or null if not found.\n */\n public async querySelectorOrNull(\n selector: string,\n ): Promise<TestElement | null> {\n return await this.locatorForOptional(selector)();\n }\n\n /**\n * Returns child test elements.\n */\n public async querySelectorAll(selector: string): Promise<TestElement[]> {\n return await this.locatorForAll(selector)();\n }\n}\n","import { HarnessPredicate } from '@angular/cdk/testing';\n\nimport { SkyQueryableComponentHarness } from '../../shared/queryable-component-harness';\n\nimport { SkyOverlayHarnessFilters } from './overlay-harness-filters';\n\n/**\n * Harness for interacting with an overlay component in tests.\n * @internal\n */\nexport class SkyOverlayHarness extends SkyQueryableComponentHarness {\n /**\n * @internal\n */\n public static hostSelector = 'sky-overlay';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyOverlayHarness` that meets certain criteria.\n */\n public static with(\n filters: SkyOverlayHarnessFilters,\n ): HarnessPredicate<SkyOverlayHarness> {\n return new HarnessPredicate(SkyOverlayHarness, filters);\n }\n}\n","import { TestElement } from '@angular/cdk/testing';\n\nexport class SkyHarnessUtility {\n public static async getBackgroundImageUrl(\n el: TestElement,\n ): Promise<string | undefined> {\n const backgroundImage = await el.getCssValue('background-image');\n\n return /url\\(('|\")([^'\"]+)('|\")\\)/gi.exec(backgroundImage)?.[2];\n }\n}\n","import { ComponentHarness } from '@angular/cdk/testing';\n\n/**\n * Harness used to interact with native input elements in tests.\n * @internal\n */\nexport class SkyInputHarness extends ComponentHarness {\n /**\n * Blurs the input.\n */\n public async blur(): Promise<void> {\n await (await this.host()).blur();\n }\n\n /**\n * Clears the input value.\n */\n public async clear(): Promise<void> {\n await (await this.host()).clear();\n }\n\n /**\n * Focuses the input.\n */\n public async focus(): Promise<void> {\n await (await this.host()).focus();\n }\n\n /**\n * Gets the value of the input.\n */\n public async getValue(): Promise<string> {\n return await (await this.host()).getProperty('value');\n }\n\n /**\n * Whether the input is disabled.\n */\n public async isDisabled(): Promise<boolean> {\n const disabled = await (await this.host()).getAttribute('disabled');\n return disabled !== null;\n }\n\n /**\n * Whether the input is focused.\n */\n public async isFocused(): Promise<boolean> {\n return await (await this.host()).isFocused();\n }\n\n /**\n * Sets the value of the input. The value will be set by simulating key\n * presses that correspond to the given value.\n */\n public async setValue(value: string): Promise<void> {\n const inputEl = await this.host();\n await inputEl.clear();\n\n // We don't want to send keys for the value if the value is an empty\n // string in order to clear the value. Sending keys with an empty string\n // still results in unnecessary focus events.\n if (value) {\n await inputEl.sendKeys(value);\n }\n\n // Some input types won't respond to key presses (e.g. `color`) so to be sure that the\n // value is set, we also set the property after the keyboard sequence. Note that we don't\n // want to do it before, because it can cause the value to be entered twice.\n await inputEl.setInputValue(value);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["observableOf"],"mappings":";;;;;;AASA;;;AAGG;AAEG,MAAO,wBAAyB,SAAQ,oBAAoB,CAAA;aACzC,IAAE,CAAA,EAAA,GAAG,oBAAH,CAAwB;aAC1B,IAAE,CAAA,EAAA,GAAG,2CAAH,CAA+C;aACjD,IAAE,CAAA,EAAA,GAAG,4CAAH,CAAgD;aAClD,IAAE,CAAA,EAAA,GAAG,qBAAH,CAAyB;AAElD,IAAA,IAAoB,OAAO,GAAA;QACzB,OAAO,IAAI,CAAC,kBAAkB;;IAGhC,IAAoB,OAAO,CAAC,WAAgC,EAAA;AAC1D,QAAA,IAAI,CAAC,kBAAkB,GAAG,WAAW;;AASvC,IAAA,WAAA,GAAA;QACE,KAAK,CACH,IAAI,MAAM,CAAC;AACT,YAAA,oBAAoB,EAAE,IAAI;AAC3B,SAAA,CAAC,CACH;QAXI,IAAkB,CAAA,kBAAA,GAAG,IAAI,eAAe,CAC7C,IAAI,CAAC,OAAO,CACb;AAES,QAAA,IAAA,CAAA,kBAAkB,GAAG,mBAAmB,CAAC,EAAE;;AAUrC,IAAA,SAAS,CAAC,QAA+B,EAAA;AACvD,QAAA,OAAO,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC;AACvC,YAAA,IAAI,EAAE,CAAC,WAAgC,KAAI;gBACzC,QAAQ,CAAC,WAAW,CAAC;aACtB;AACF,SAAA,CAAC;;AAGG,IAAA,IAAI,CAAC,IAAyB,EAAA;AACnC,QAAA,IAAI,CAAC,kBAAkB,GAAG,IAAI;QAC9B,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC;;;;AAKvC,IAAA,OAAO;8GA3CZ,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAAxB,wBAAwB,EAAA,CAAA,CAAA;;2FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBADpC;;;ACRD;;AAEG;AAEG,MAAO,sBAAuB,SAAQ,kBAAkB,CAAA;IAC5C,SAAS,CAAC,GAAW,EAAE,aAAmB,EAAA;QACxD,QAAQ,GAAG;AACT,YAAA,KAAK,iBAAiB;AACpB,gBAAA,OAAOA,EAAY,CAAC,aAAa,CAAC;AACpC,YAAA,KAAK,SAAS;gBACZ,OAAOA,EAAY,CAAC,EAAE,eAAe,EAAE,aAAa,EAAE,CAAC;YACzD,SAAS;AACP,gBAAA,OAAOA,EAAY,CAAC;AAClB,oBAAA,QAAQ,EAAE;AACR,wBAAA,YAAY,EAAE;AACZ,4BAAA,YAAY,EAAE;AACZ,gCAAA,KAAK,EAAE;AACL,oCAAA;AACE,wCAAA,EAAE,EAAE,QAAQ;AACZ,wCAAA,WAAW,EAAE,IAAI;AAClB,qCAAA;AACD,oCAAA;AACE,wCAAA,EAAE,EAAE,QAAQ;AACZ,wCAAA,WAAW,EAAE,IAAI;AAClB,qCAAA;AACF,iCAAA;AACF,6BAAA;AACD,4BAAA,WAAW,EAAE;AACX,gCAAA;AACE,oCAAA,KAAK,EAAE;AACL,wCAAA;AACE,4CAAA,EAAE,EAAE,QAAQ;AACZ,4CAAA,WAAW,EAAE,IAAI;AAClB,yCAAA;AACF,qCAAA;AACF,iCAAA;AACD,gCAAA;AACE,oCAAA,KAAK,EAAE;AACL,wCAAA;AACE,4CAAA,EAAE,EAAE,QAAQ;AACZ,4CAAA,WAAW,EAAE,IAAI;AAClB,yCAAA;AACF,qCAAA;AACF,iCAAA;AACF,6BAAA;AACF,yBAAA;AACD,wBAAA,eAAe,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC;AACtC,qBAAA;AACF,iBAAA,CAAC;;;;8GA5CG,sBAAsB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAAtB,sBAAsB,EAAA,CAAA,CAAA;;2FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBADlC;;;ACFD;;AAEG;MAUU,oBAAoB,CAAA;8GAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+GAApB,oBAAoB,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,EARpB,SAAA,EAAA;AACT,YAAA,EAAE,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,wBAAwB,EAAE;AACrE,YAAA;AACE,gBAAA,OAAO,EAAE,kBAAkB;AAC3B,gBAAA,QAAQ,EAAE,sBAAsB;AACjC,aAAA;AACF,SAAA,EAAA,CAAA,CAAA;;2FAEU,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAThC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,SAAS,EAAE;AACT,wBAAA,EAAE,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,wBAAwB,EAAE;AACrE,wBAAA;AACE,4BAAA,OAAO,EAAE,kBAAkB;AAC3B,4BAAA,QAAQ,EAAE,sBAAsB;AACjC,yBAAA;AACF,qBAAA;AACF,iBAAA;;;ACjBD;AAEA;;AAEG;AACU,MAAA,uBAAuB,GAAwB;AAC1D,IAAA,MAAM,EAAE,EAAa;AACrB,IAAA,aAAa,EAAE,EAAE;AACjB,IAAA,cAAc,EAAE,EAAE;AAClB,IAAA,WAAW,EAAE;AACX,QAAA,KAAK,EAAE,EAAE;AACT,QAAA,MAAM,EAAE,EAAE;AACV,QAAA,CAAC,EAAE,EAAE;AACL,QAAA,CAAC,EAAE,EAAE;AACL,QAAA,GAAG,EAAE,EAAE;AACP,QAAA,MAAM,EAAE,EAAE;AACV,QAAA,IAAI,EAAE,EAAE;AACR,QAAA,KAAK,EAAE,EAAE;AACT,QAAA,MAAM,EAAE,MAAM,MAAM;AACF,KAAA;AACpB,IAAA,yBAAyB,EAAE,EAAE;;AAG/B,MAAM,eAAe,GAA2B,CAC9C,OAA8B,EAC9B,QAAwB,KACpB,GAAC;AAEP;;AAEG;AACU,MAAA,wBAAwB,GAAG;AACtC,IAAA,QAAQ,EAAE,eAAe;AACzB,IAAA,IAAI,EAAE,CAAC,OAA8B,EAAE,QAAyB,KAAI;AAClE,QAAA,wBAAwB,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAS,CAAC;KACtD;;AAGH;;AAEG;SACa,kBAAkB,GAAA;AAC/B,IAAA,MAAc,CAAC,qBAAqB,GAAG,CAAC,QAAoB,KAAY;AACvE,QAAA,QAAQ,EAAE;AACV,QAAA,OAAO,CAAC;AACV,KAAC;IACA,MAAc,CAAC,oBAAoB,GAAG,CAAC,CAAS,KAAW,SAAS;IACrE,MAAM,CAAC,cAAc,GAAG,MAAA;AACtB,QAAA,WAAA,CAAY,QAAgC,EAAA;AAC1C,YAAA,wBAAwB,CAAC,QAAQ,GAAG,QAAQ;;AAGvC,QAAA,UAAU;AAEV,QAAA,OAAO,CAAC,MAAe,EAAE,OAA+B;QAExD,SAAS,CAAC,OAAoB,EAAA;KACtC;AACH;;ACrDA,SAAS,qBAAqB,CAAC,OAA2B,EAAA;AACxD,IAAA,OAAO,OAAO,KAAK,SAAS,GAAG,WAAW,GAAG,CAAI,CAAA,EAAA,OAAO,GAAG;AAC7D;AAEA;;AAEG;MACU,wBAAwB,CAAA;AACnC,IAAA,QAAQ,GAAG,MAAM,CAAC,cAAc,CAA0B;AAE1D;;;AAGG;AACI,IAAA,oBAAoB,CAAC,eAAmC,EAAA;QAC7D,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE;AAExD,QAAA,IAAI,cAAc,KAAK,eAAe,EAAE;AACtC,YAAA,MAAM,IAAI,KAAK,CACb,CAAA,gCAAA,EAAmC,qBAAqB,CAAC,eAAe,CAAC,CAAA,8BAAA,EAAiC,qBAAqB,CAAC,cAAc,CAAC,CAAA,CAAA,CAAG,CACnJ;;;AAIL;;AAEG;IACI,SAAS,GAAA;AACd,QAAA,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE;;AAE5B;;AC1BD;;AAEG;AAEG,MAAO,qBAAsB,SAAQ,cAAc,CAAA;AACvD,IAAA,IAAoB,sBAAsB,GAAA;AACxC,QAAA,OAAO,EAAE,CAAC,IAAI,CAAC;;AAGjB,IAAA,eAAe;AACf,IAAA,mBAAmB;AAEH,IAAA,QAAQ,CAAC,IAAsB,EAAA;AAC7C,QAAA,IAAI,CAAC,eAAe,GAAG,IAAI,EAAE,OAAO;;AAGtB,IAAA,UAAU,CAAC,IAAuB,EAAA;AAChD,QAAA,IAAI,oBAAoB,IAAI,IAAI,EAAE;AAChC,YAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,kBAAkB;;AAGpD,QAAA,IAAI,SAAS,IAAI,IAAI,EAAE;AACrB,YAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO;;;IAIhC,iBAAiB,GAAA;AACtB,QAAA,OAAO,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,mBAAmB;;IAGlD,SAAS,GAAA;AACd,QAAA,IAAI,CAAC,eAAe,GAAG,SAAS;;8GA3BvB,qBAAqB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAArB,qBAAqB,EAAA,CAAA,CAAA;;2FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBADjC;;;ACND;;AAEG;MAUU,oBAAoB,CAAA;8GAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+GAApB,oBAAoB,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,EARpB,SAAA,EAAA;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,cAAc;AACvB,gBAAA,QAAQ,EAAE,qBAAqB;AAChC,aAAA;YACD,wBAAwB;AACzB,SAAA,EAAA,CAAA,CAAA;;2FAEU,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAThC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,cAAc;AACvB,4BAAA,QAAQ,EAAE,qBAAqB;AAChC,yBAAA;wBACD,wBAAwB;AACzB,qBAAA;AACF,iBAAA;;;ACZD;;;AAGG;MAEU,4BAA4B,CAAA;AACvC,IAAA,IAAW,gBAAgB,GAAA;QACzB,OAAO,IAAI,CAAC,oBAAoB;;AAGlC,IAAA,iBAAiB,GAAG,IAAI,aAAa,CAAgB,CAAC,CAAC;AACvD,IAAA,oBAAoB,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE;IAErD,OAAO,GAAA;AACZ,QAAA,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE;;AAG5B,IAAA,aAAa,CAAC,UAAyB,EAAA;AAC5C,QAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC;;8GAb9B,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAA5B,4BAA4B,EAAA,CAAA,CAAA;;2FAA5B,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBADxC;;;ACJD;;;AAGG;MAEU,8BAA8B,CAAA;AAChC,IAAA,SAAS,GAAG,MAAM,CAAC,4BAA4B,CAAC;AAEzD;;AAEG;AACI,IAAA,aAAa,CAAC,UAAyB,EAAA;AAC5C,QAAA,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,UAAU,CAAC;;8GAP/B,8BAA8B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;kHAA9B,8BAA8B,EAAA,CAAA,CAAA;;2FAA9B,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBAD1C;;;ACED;;AAEG;SACa,2BAA2B,GAAA;IACzC,OAAO;QACL,oBAAoB;QACpB,4BAA4B;QAC5B,8BAA8B;AAC9B,QAAA;AACE,YAAA,OAAO,EAAE,8BAA8B;AACvC,YAAA,WAAW,EAAE,4BAA4B;AAC1C,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,0BAA0B;AACnC,YAAA,WAAW,EAAE,4BAA4B;AAC1C,SAAA;AACD,QAAA;AACE,YAAA,OAAO,EAAE,uBAAuB;AAChC,YAAA,WAAW,EAAE,4BAA4B;AAC1C,SAAA;KACF;AACH;;ACxBA;;AAEG;AACG,MAAgB,mBAAoB,SAAQ,gBAAgB,CAAA;IACtD,OAAO,qBAAqB,CAEpC,OAA0B,EAAA;AAE1B,QAAA,OAAO,IAAI,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,CAClD,WAAW,EACX,OAAO,CAAC,SAAS,EACjB,CAAC,OAAO,EAAE,IAAI,KACZ,gBAAgB,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,IAAI,CAAC,CAC5D;;AAGH,IAAA,MAAM,SAAS,GAAA;AACb,QAAA,OAAO,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE,YAAY,CAAC,aAAa,CAAC;;AAE/D;;ACnBD;;AAEG;AACG,MAAgB,4BAA6B,SAAQ,mBAAmB,CAAA;AAC5E;;AAEG;IACI,MAAM,YAAY,CACvB,KAAsB,EAAA;QAEtB,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;;AAGvC;;AAEG;IACI,MAAM,kBAAkB,CAC7B,KAAsB,EAAA;QAEtB,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE;;AAG/C;;AAEG;IACI,MAAM,cAAc,CACzB,OAAwB,EAAA;QAExB,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE;;AAG5C;;AAEG;IACI,MAAM,aAAa,CAAC,QAAgB,EAAA;QACzC,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;;AAG1C;;AAEG;IACI,MAAM,mBAAmB,CAC9B,QAAgB,EAAA;QAEhB,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE;;AAGlD;;AAEG;IACI,MAAM,gBAAgB,CAAC,QAAgB,EAAA;QAC5C,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE;;AAE9C;;ACvDD;;;AAGG;AACG,MAAO,iBAAkB,SAAQ,4BAA4B,CAAA;AACjE;;AAEG;aACW,IAAY,CAAA,YAAA,GAAG,aAAa,CAAC;AAE3C;;;AAGG;IACI,OAAO,IAAI,CAChB,OAAiC,EAAA;AAEjC,QAAA,OAAO,IAAI,gBAAgB,CAAC,iBAAiB,EAAE,OAAO,CAAC;;;;MCrB9C,iBAAiB,CAAA;AACrB,IAAA,aAAa,qBAAqB,CACvC,EAAe,EAAA;QAEf,MAAM,eAAe,GAAG,MAAM,EAAE,CAAC,WAAW,CAAC,kBAAkB,CAAC;QAEhE,OAAO,6BAA6B,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;;AAElE;;ACRD;;;AAGG;AACG,MAAO,eAAgB,SAAQ,gBAAgB,CAAA;AACnD;;AAEG;AACI,IAAA,MAAM,IAAI,GAAA;QACf,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE;;AAGlC;;AAEG;AACI,IAAA,MAAM,KAAK,GAAA;QAChB,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE;;AAGnC;;AAEG;AACI,IAAA,MAAM,KAAK,GAAA;QAChB,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE;;AAGnC;;AAEG;AACI,IAAA,MAAM,QAAQ,GAAA;AACnB,QAAA,OAAO,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC;;AAGvD;;AAEG;AACI,IAAA,MAAM,UAAU,GAAA;AACrB,QAAA,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE,YAAY,CAAC,UAAU,CAAC;QACnE,OAAO,QAAQ,KAAK,IAAI;;AAG1B;;AAEG;AACI,IAAA,MAAM,SAAS,GAAA;QACpB,OAAO,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE;;AAG9C;;;AAGG;IACI,MAAM,QAAQ,CAAC,KAAa,EAAA;AACjC,QAAA,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE;AACjC,QAAA,MAAM,OAAO,CAAC,KAAK,EAAE;;;;QAKrB,IAAI,KAAK,EAAE;AACT,YAAA,MAAM,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;;;;;AAM/B,QAAA,MAAM,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC;;AAErC;;ACtED;;AAEG;;;;"}
1
+ {"version":3,"file":"skyux-core-testing.mjs","sources":["../../../../../libs/components/core/testing/src/legacy/mock-media-query.service.ts","../../../../../libs/components/core/testing/src/legacy/mock-ui-config.service.ts","../../../../../libs/components/core/testing/src/legacy/core-testing.module.ts","../../../../../libs/components/core/testing/src/legacy/resize-observer-mock.ts","../../../../../libs/components/core/testing/src/modules/file-reader/file-reader-testing.service.ts","../../../../../libs/components/core/testing/src/modules/file-reader/provide-file-reader-testing.ts","../../../../../libs/components/core/testing/src/modules/help/help-testing-controller.ts","../../../../../libs/components/core/testing/src/modules/help/help-testing.service.ts","../../../../../libs/components/core/testing/src/modules/help/help-testing.module.ts","../../../../../libs/components/core/testing/src/modules/media-query/breakpoint-observer-testing.ts","../../../../../libs/components/core/testing/src/modules/media-query/media-query-testing-controller.ts","../../../../../libs/components/core/testing/src/modules/media-query/provide-media-query-testing.ts","../../../../../libs/components/core/testing/src/shared/component-harness.ts","../../../../../libs/components/core/testing/src/shared/queryable-component-harness.ts","../../../../../libs/components/core/testing/src/modules/overlay/overlay-harness.ts","../../../../../libs/components/core/testing/src/shared/harness-utility.ts","../../../../../libs/components/core/testing/src/shared/input-harness.ts","../../../../../libs/components/core/testing/src/skyux-core-testing.ts"],"sourcesContent":["import { Injectable, NgZone } from '@angular/core';\nimport {\n SkyMediaBreakpoints,\n SkyMediaQueryListener,\n SkyMediaQueryService,\n} from '@skyux/core';\n\nimport { BehaviorSubject, Subscription } from 'rxjs';\n\n/**\n * @internal\n * @deprecated Use `provideSkyMediaQueryTesting()` coupled with `SkyMediaQueryTestingController`.\n */\n@Injectable()\nexport class MockSkyMediaQueryService extends SkyMediaQueryService {\n public static override xs = '(max-width: 767px)';\n public static override sm = '(min-width: 768px) and (max-width: 991px)';\n public static override md = '(min-width: 992px) and (max-width: 1199px)';\n public static override lg = '(min-width: 1200px)';\n\n public override get current(): SkyMediaBreakpoints {\n return this.currentBreakpoints;\n }\n\n public override set current(breakpoints: SkyMediaBreakpoints) {\n this.currentBreakpoints = breakpoints;\n }\n\n public currentMockSubject = new BehaviorSubject<SkyMediaBreakpoints>(\n this.current,\n );\n\n protected currentBreakpoints = SkyMediaBreakpoints.md;\n\n constructor() {\n super(\n new NgZone({\n enableLongStackTrace: true,\n }),\n );\n }\n\n public override subscribe(listener: SkyMediaQueryListener): Subscription {\n return this.currentMockSubject.subscribe({\n next: (breakpoints: SkyMediaBreakpoints) => {\n listener(breakpoints);\n },\n });\n }\n\n public fire(args: SkyMediaBreakpoints): void {\n this.currentBreakpoints = args;\n this.currentMockSubject.next(this.currentBreakpoints);\n }\n\n /* istanbul ignore next */\n // eslint-disable-next-line @typescript-eslint/no-empty-function\n public override destroy(): void {}\n}\n","import { Injectable } from '@angular/core';\nimport { SkyUIConfigService } from '@skyux/core';\n\nimport { Observable, of as observableOf } from 'rxjs';\n\n/**\n * @internal\n */\n@Injectable()\nexport class MockSkyUIConfigService extends SkyUIConfigService {\n public override getConfig(key: string, defaultConfig?: any): Observable<any> {\n switch (key) {\n case 'defaultSettings':\n return observableOf(defaultConfig);\n case 'badData':\n return observableOf({ invalidProperty: 'invalidData' });\n default: {\n return observableOf({\n settings: {\n userSettings: {\n singleColumn: {\n tiles: [\n {\n id: 'tile-1',\n isCollapsed: true,\n },\n {\n id: 'tile-2',\n isCollapsed: true,\n },\n ],\n },\n multiColumn: [\n {\n tiles: [\n {\n id: 'tile-2',\n isCollapsed: true,\n },\n ],\n },\n {\n tiles: [\n {\n id: 'tile-1',\n isCollapsed: true,\n },\n ],\n },\n ],\n },\n defaultSettings: ['tile-1', 'tile-2'],\n },\n });\n }\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { SkyMediaQueryService, SkyUIConfigService } from '@skyux/core';\n\nimport { MockSkyMediaQueryService } from './mock-media-query.service';\nimport { MockSkyUIConfigService } from './mock-ui-config.service';\n\n/**\n * @internal\n */\n@NgModule({\n providers: [\n { provide: SkyMediaQueryService, useClass: MockSkyMediaQueryService },\n {\n provide: SkyUIConfigService,\n useClass: MockSkyUIConfigService,\n },\n ],\n})\nexport class SkyCoreTestingModule {}\n","/* istanbul ignore file: these are used in @skyux/core */\n\n/**\n * @internal\n */\nexport const mockResizeObserverEntry: ResizeObserverEntry = {\n target: {} as Element,\n borderBoxSize: [],\n contentBoxSize: [],\n contentRect: {\n width: 20,\n height: 20,\n x: 20,\n y: 20,\n top: 20,\n bottom: 20,\n left: 20,\n right: 20,\n toJSON: () => 'true',\n } as DOMRectReadOnly,\n devicePixelContentBoxSize: [],\n};\n\nconst defaultCallback: ResizeObserverCallback = (\n entries: ResizeObserverEntry[],\n observer: ResizeObserver,\n) => {};\n\n/**\n * @internal\n */\nexport const mockResizeObserverHandle = {\n callback: defaultCallback,\n emit: (entries: ResizeObserverEntry[], observer?: ResizeObserver) => {\n mockResizeObserverHandle.callback(entries, observer!);\n },\n};\n\n/**\n * @internal\n */\nexport function mockResizeObserver() {\n (window as any).requestAnimationFrame = (callback: () => void): number => {\n callback();\n return 0;\n };\n (window as any).cancelAnimationFrame = (_: number): void => undefined;\n window.ResizeObserver = class {\n constructor(callback: ResizeObserverCallback) {\n mockResizeObserverHandle.callback = callback;\n }\n\n public disconnect() {}\n\n public observe(target: Element, options?: ResizeObserverOptions) {}\n\n public unobserve(element: HTMLElement) {}\n };\n}\n","import { Injectable } from '@angular/core';\nimport { SkyFileReaderService } from '@skyux/core';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyFileReaderTestingService extends SkyFileReaderService {\n public override async readAsDataURL(file: File): Promise<string> {\n return await new Promise((resolve) => {\n resolve(`data:${file.type};base64,MOCK_DATA`);\n });\n }\n}\n","import { Provider } from '@angular/core';\nimport { SkyFileReaderService } from '@skyux/core';\n\nimport { SkyFileReaderTestingService } from './file-reader-testing.service';\n\n/**\n * Provides mocks for file reader testing.\n * @internal\n * @example\n * ```typescript\n * TestBed.configureTestingModule({\n * providers: [provideSkyFileReaderTesting()]\n * });\n * ```\n */\nexport function provideSkyFileReaderTesting(): Provider[] {\n return [\n SkyFileReaderTestingService,\n {\n provide: SkyFileReaderService,\n useClass: SkyFileReaderTestingService,\n },\n ];\n}\n","import { inject } from '@angular/core';\nimport { SkyHelpService } from '@skyux/core';\n\nimport { SkyHelpTestingService } from './help-testing.service';\n\nfunction formatHelpKeyForError(helpKey: string | undefined): string {\n return helpKey === undefined ? 'undefined' : `'${helpKey}'`;\n}\n\n/**\n * Provides methods for validating global help in unit tests.\n */\nexport class SkyHelpTestingController {\n #helpSvc = inject(SkyHelpService) as SkyHelpTestingService;\n\n /**\n * Validates the current help key and throws an error if the current help key does not match the expected help key.\n * @param expectedHelpKey The expected help key.\n */\n public expectCurrentHelpKey(expectedHelpKey: string | undefined): void {\n const currentHelpKey = this.#helpSvc.getCurrentHelpKey();\n\n if (currentHelpKey !== expectedHelpKey) {\n throw new Error(\n `Expected current help key to be ${formatHelpKeyForError(expectedHelpKey)}, but the current help key is ${formatHelpKeyForError(currentHelpKey)}.`,\n );\n }\n }\n\n /**\n * Close the current help.\n */\n public closeHelp(): void {\n this.#helpSvc.closeHelp();\n }\n}\n","import { Injectable } from '@angular/core';\nimport {\n SkyHelpOpenArgs,\n SkyHelpService,\n SkyHelpUpdateArgs,\n} from '@skyux/core';\n\nimport { Observable, of } from 'rxjs';\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyHelpTestingService extends SkyHelpService {\n public override get widgetReadyStateChange(): Observable<boolean> {\n return of(true);\n }\n\n #currentHelpKey: string | undefined;\n #currentPageHelpKey: string | undefined;\n\n public override openHelp(args?: SkyHelpOpenArgs): void {\n this.#currentHelpKey = args?.helpKey;\n }\n\n public override updateHelp(args: SkyHelpUpdateArgs): void {\n if ('pageDefaultHelpKey' in args) {\n this.#currentPageHelpKey = args.pageDefaultHelpKey;\n }\n\n if ('helpKey' in args) {\n this.#currentHelpKey = args.helpKey;\n }\n }\n\n public getCurrentHelpKey(): string | undefined {\n return this.#currentHelpKey || this.#currentPageHelpKey;\n }\n\n public closeHelp(): void {\n this.#currentHelpKey = undefined;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { SkyHelpService } from '@skyux/core';\n\nimport { SkyHelpTestingController } from './help-testing-controller';\nimport { SkyHelpTestingService } from './help-testing.service';\n\n/**\n * Mocks SkyHelpService to enable testing of global help.\n */\n@NgModule({\n providers: [\n {\n provide: SkyHelpService,\n useClass: SkyHelpTestingService,\n },\n SkyHelpTestingController,\n ],\n})\nexport class SkyHelpTestingModule {}\n","import { Injectable } from '@angular/core';\nimport { SkyBreakpoint, SkyBreakpointObserver } from '@skyux/core';\n\nimport { Observable, ReplaySubject } from 'rxjs';\n\n/**\n * Overrides the media and container breakpoint observers for testing.\n * @internal\n */\n@Injectable()\nexport class SkyBreakpointObserverTesting implements SkyBreakpointObserver {\n public get breakpointChange(): Observable<SkyBreakpoint> {\n return this.#breakpointChangeObs;\n }\n\n #breakpointChange = new ReplaySubject<SkyBreakpoint>(1);\n #breakpointChangeObs = this.#breakpointChange.asObservable();\n\n public destroy(): void {\n this.#breakpointChange.complete();\n }\n\n public setBreakpoint(breakpoint: SkyBreakpoint): void {\n this.#breakpointChange.next(breakpoint);\n }\n}\n","import { Injectable, inject } from '@angular/core';\nimport { SkyBreakpoint } from '@skyux/core';\n\nimport { SkyBreakpointObserverTesting } from './breakpoint-observer-testing';\n\n/**\n * A controller to be injected into tests, which mocks the\n * `SkyMediaQueryService` and handles interactions with breakpoints.\n */\n@Injectable()\nexport class SkyMediaQueryTestingController {\n readonly #observer = inject(SkyBreakpointObserverTesting);\n\n /**\n * Emits the provided breakpoint to all subscribers.\n */\n public setBreakpoint(breakpoint: SkyBreakpoint): void {\n this.#observer.setBreakpoint(breakpoint);\n }\n}\n","import { Provider } from '@angular/core';\nimport {\n SKY_BREAKPOINT_OBSERVER,\n SkyContainerBreakpointObserver,\n SkyMediaBreakpointObserver,\n SkyMediaQueryService,\n} from '@skyux/core';\n\nimport { SkyBreakpointObserverTesting } from './breakpoint-observer-testing';\nimport { SkyMediaQueryTestingController } from './media-query-testing-controller';\n\n/**\n * Adds mocks to allow interactions with breakpoints in tests.\n */\nexport function provideSkyMediaQueryTesting(): Provider[] {\n return [\n SkyMediaQueryService,\n SkyBreakpointObserverTesting,\n SkyMediaQueryTestingController,\n {\n provide: SkyContainerBreakpointObserver,\n useExisting: SkyBreakpointObserverTesting,\n },\n {\n provide: SkyMediaBreakpointObserver,\n useExisting: SkyBreakpointObserverTesting,\n },\n {\n provide: SKY_BREAKPOINT_OBSERVER,\n useExisting: SkyBreakpointObserverTesting,\n },\n ];\n}\n","import {\n ComponentHarness,\n ComponentHarnessConstructor,\n HarnessPredicate,\n} from '@angular/cdk/testing';\n\nimport { SkyHarnessFilters } from './harness-filters';\n\n/**\n * @internal\n */\nexport abstract class SkyComponentHarness extends ComponentHarness {\n protected static getDataSkyIdPredicate<T extends SkyComponentHarness>(\n this: ComponentHarnessConstructor<T>,\n filters: SkyHarnessFilters,\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, filters).addOption(\n 'dataSkyId',\n filters.dataSkyId,\n (harness, text) =>\n HarnessPredicate.stringMatches(harness.#getSkyId(), text),\n );\n }\n\n async #getSkyId(): Promise<string | null> {\n return await (await this.host()).getAttribute('data-sky-id');\n }\n}\n","import {\n ComponentHarness,\n HarnessQuery,\n TestElement,\n} from '@angular/cdk/testing';\n\nimport { SkyComponentHarness } from './component-harness';\n\n/**\n * @internal\n */\nexport abstract class SkyQueryableComponentHarness extends SkyComponentHarness {\n /**\n * Returns a child harness or throws an error if not found.\n */\n public async queryHarness<T extends ComponentHarness>(\n query: HarnessQuery<T>,\n ): Promise<T> {\n return await this.locatorFor(query)();\n }\n\n /**\n * Returns a child harness or null if not found.\n */\n public async queryHarnessOrNull<T extends ComponentHarness>(\n query: HarnessQuery<T>,\n ): Promise<T | null> {\n return await this.locatorForOptional(query)();\n }\n\n /**\n * Returns child harnesses.\n */\n public async queryHarnesses<T extends ComponentHarness>(\n harness: HarnessQuery<T>,\n ): Promise<T[]> {\n return await this.locatorForAll(harness)();\n }\n\n /**\n * Returns a child test element or throws an error if not found.\n */\n public async querySelector(selector: string): Promise<TestElement | null> {\n return await this.locatorFor(selector)();\n }\n\n /**\n * Returns a child test element or null if not found.\n */\n public async querySelectorOrNull(\n selector: string,\n ): Promise<TestElement | null> {\n return await this.locatorForOptional(selector)();\n }\n\n /**\n * Returns child test elements.\n */\n public async querySelectorAll(selector: string): Promise<TestElement[]> {\n return await this.locatorForAll(selector)();\n }\n}\n","import { HarnessPredicate } from '@angular/cdk/testing';\n\nimport { SkyQueryableComponentHarness } from '../../shared/queryable-component-harness';\n\nimport { SkyOverlayHarnessFilters } from './overlay-harness-filters';\n\n/**\n * Harness for interacting with an overlay component in tests.\n * @internal\n */\nexport class SkyOverlayHarness extends SkyQueryableComponentHarness {\n /**\n * @internal\n */\n public static hostSelector = 'sky-overlay';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyOverlayHarness` that meets certain criteria.\n */\n public static with(\n filters: SkyOverlayHarnessFilters,\n ): HarnessPredicate<SkyOverlayHarness> {\n return new HarnessPredicate(SkyOverlayHarness, filters);\n }\n}\n","import { TestElement } from '@angular/cdk/testing';\n\nexport class SkyHarnessUtility {\n public static async getBackgroundImageUrl(\n el: TestElement,\n ): Promise<string | undefined> {\n const backgroundImage = await el.getCssValue('background-image');\n\n return /url\\(('|\")([^'\"]+)('|\")\\)/gi.exec(backgroundImage)?.[2];\n }\n}\n","import { ComponentHarness } from '@angular/cdk/testing';\n\n/**\n * Harness used to interact with native input elements in tests.\n * @internal\n */\nexport class SkyInputHarness extends ComponentHarness {\n /**\n * Blurs the input.\n */\n public async blur(): Promise<void> {\n await (await this.host()).blur();\n }\n\n /**\n * Clears the input value.\n */\n public async clear(): Promise<void> {\n await (await this.host()).clear();\n }\n\n /**\n * Focuses the input.\n */\n public async focus(): Promise<void> {\n await (await this.host()).focus();\n }\n\n /**\n * Gets the value of the input.\n */\n public async getValue(): Promise<string> {\n return await (await this.host()).getProperty('value');\n }\n\n /**\n * Whether the input is disabled.\n */\n public async isDisabled(): Promise<boolean> {\n const disabled = await (await this.host()).getAttribute('disabled');\n return disabled !== null;\n }\n\n /**\n * Whether the input is focused.\n */\n public async isFocused(): Promise<boolean> {\n return await (await this.host()).isFocused();\n }\n\n /**\n * Sets the value of the input. The value will be set by simulating key\n * presses that correspond to the given value.\n */\n public async setValue(value: string): Promise<void> {\n const inputEl = await this.host();\n await inputEl.clear();\n\n // We don't want to send keys for the value if the value is an empty\n // string in order to clear the value. Sending keys with an empty string\n // still results in unnecessary focus events.\n if (value) {\n await inputEl.sendKeys(value);\n }\n\n // Some input types won't respond to key presses (e.g. `color`) so to be sure that the\n // value is set, we also set the property after the keyboard sequence. Note that we don't\n // want to do it before, because it can cause the value to be entered twice.\n await inputEl.setInputValue(value);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["observableOf"],"mappings":"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"}