@skyux/router 11.22.0 → 11.23.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.
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHJlZi1oYXJuZXNzLWZpbHRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcm91dGVyL3Rlc3Rpbmcvc3JjL21vZHVsZXMvaHJlZi9ocmVmLWhhcm5lc3MtZmlsdGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2t5SGFybmVzc0ZpbHRlcnMgfSBmcm9tICdAc2t5dXgvY29yZS90ZXN0aW5nJztcblxuLyoqXG4gKiBBIHNldCBvZiBjcml0ZXJpYSB0aGF0IGNhbiBiZSB1c2VkIHRvIGZpbHRlciBhIGxpc3Qgb2YgYFNreUhyZWZIYXJuZXNzYCBpbnN0YW5jZXMuXG4gKiBAaW50ZXJuYWxcbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1pbnRlcmZhY2UsIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1vYmplY3QtdHlwZVxuZXhwb3J0IGludGVyZmFjZSBTa3lIcmVmSGFybmVzc0ZpbHRlcnMgZXh0ZW5kcyBTa3lIYXJuZXNzRmlsdGVycyB7fVxuIl19
@@ -0,0 +1,40 @@
1
+ import { SkyComponentHarness } from '@skyux/core/testing';
2
+ /**
3
+ * Allows interaction with a SkyHref directive during testing.
4
+ */
5
+ export class SkyHrefHarness extends SkyComponentHarness {
6
+ static { this.hostSelector = '.sky-href'; }
7
+ /**
8
+ * Gets a `HarnessPredicate` that can be used to search for a
9
+ * `SkyHrefHarness` that meets certain criteria.
10
+ */
11
+ static with(filters) {
12
+ return this.getDataSkyIdPredicate(filters);
13
+ }
14
+ /**
15
+ * Gets the href attribute of the host element.
16
+ */
17
+ async getHref() {
18
+ return await (await this.host()).getAttribute('href');
19
+ }
20
+ /**
21
+ * Gets the visible text.
22
+ */
23
+ async getText() {
24
+ return await this.isVisible().then(async (visible) => {
25
+ if (visible) {
26
+ return await (await this.host()).text();
27
+ }
28
+ return '';
29
+ });
30
+ }
31
+ /**
32
+ * Returns true if the text is visible.
33
+ */
34
+ async isVisible() {
35
+ return await (await this.host())
36
+ .matchesSelector('[hidden]')
37
+ .then((hidden) => !hidden);
38
+ }
39
+ }
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHJlZi1oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3JvdXRlci90ZXN0aW5nL3NyYy9tb2R1bGVzL2hyZWYvaHJlZi1oYXJuZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBSTFEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGNBQWUsU0FBUSxtQkFBbUI7YUFDdkMsaUJBQVksR0FBRyxXQUFXLENBQUM7SUFFekM7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLElBQUksQ0FDaEIsT0FBOEI7UUFFOUIsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLE9BQU87UUFDbEIsT0FBTyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLE9BQU87UUFDbEIsT0FBTyxNQUFNLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFO1lBQ25ELElBQUksT0FBTyxFQUFFLENBQUM7Z0JBQ1osT0FBTyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUMxQyxDQUFDO1lBQ0QsT0FBTyxFQUFFLENBQUM7UUFDWixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxTQUFTO1FBQ3BCLE9BQU8sTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2FBQzdCLGVBQWUsQ0FBQyxVQUFVLENBQUM7YUFDM0IsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQy9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIYXJuZXNzUHJlZGljYXRlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnO1xuaW1wb3J0IHsgU2t5Q29tcG9uZW50SGFybmVzcyB9IGZyb20gJ0Bza3l1eC9jb3JlL3Rlc3RpbmcnO1xuXG5pbXBvcnQgeyBTa3lIcmVmSGFybmVzc0ZpbHRlcnMgfSBmcm9tICcuL2hyZWYtaGFybmVzcy1maWx0ZXJzJztcblxuLyoqXG4gKiBBbGxvd3MgaW50ZXJhY3Rpb24gd2l0aCBhIFNreUhyZWYgZGlyZWN0aXZlIGR1cmluZyB0ZXN0aW5nLlxuICovXG5leHBvcnQgY2xhc3MgU2t5SHJlZkhhcm5lc3MgZXh0ZW5kcyBTa3lDb21wb25lbnRIYXJuZXNzIHtcbiAgcHVibGljIHN0YXRpYyBob3N0U2VsZWN0b3IgPSAnLnNreS1ocmVmJztcblxuICAvKipcbiAgICogR2V0cyBhIGBIYXJuZXNzUHJlZGljYXRlYCB0aGF0IGNhbiBiZSB1c2VkIHRvIHNlYXJjaCBmb3IgYVxuICAgKiBgU2t5SHJlZkhhcm5lc3NgIHRoYXQgbWVldHMgY2VydGFpbiBjcml0ZXJpYS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgd2l0aChcbiAgICBmaWx0ZXJzOiBTa3lIcmVmSGFybmVzc0ZpbHRlcnMsXG4gICk6IEhhcm5lc3NQcmVkaWNhdGU8U2t5SHJlZkhhcm5lc3M+IHtcbiAgICByZXR1cm4gdGhpcy5nZXREYXRhU2t5SWRQcmVkaWNhdGUoZmlsdGVycyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgaHJlZiBhdHRyaWJ1dGUgb2YgdGhlIGhvc3QgZWxlbWVudC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRIcmVmKCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHJldHVybiBhd2FpdCAoYXdhaXQgdGhpcy5ob3N0KCkpLmdldEF0dHJpYnV0ZSgnaHJlZicpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHZpc2libGUgdGV4dC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRUZXh0KCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuaXNWaXNpYmxlKCkudGhlbihhc3luYyAodmlzaWJsZSkgPT4ge1xuICAgICAgaWYgKHZpc2libGUpIHtcbiAgICAgICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLmhvc3QoKSkudGV4dCgpO1xuICAgICAgfVxuICAgICAgcmV0dXJuICcnO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdHJ1ZSBpZiB0aGUgdGV4dCBpcyB2aXNpYmxlLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGlzVmlzaWJsZSgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuaG9zdCgpKVxuICAgICAgLm1hdGNoZXNTZWxlY3RvcignW2hpZGRlbl0nKVxuICAgICAgLnRoZW4oKGhpZGRlbikgPT4gIWhpZGRlbik7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,26 @@
1
+ import { Inject, Injectable, InjectionToken } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export const MockUserHasAccess = new InjectionToken('MockUserHasAccess');
4
+ /**
5
+ * @internal
6
+ */
7
+ export class SkyHrefResolverMockService {
8
+ constructor(userHasAccess) {
9
+ this.userHasAccess = userHasAccess;
10
+ }
11
+ resolveHref(param) {
12
+ return Promise.resolve({
13
+ url: param.url,
14
+ userHasAccess: this.userHasAccess,
15
+ });
16
+ }
17
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyHrefResolverMockService, deps: [{ token: MockUserHasAccess }], target: i0.ɵɵFactoryTarget.Injectable }); }
18
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyHrefResolverMockService }); }
19
+ }
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyHrefResolverMockService, decorators: [{
21
+ type: Injectable
22
+ }], ctorParameters: () => [{ type: undefined, decorators: [{
23
+ type: Inject,
24
+ args: [MockUserHasAccess]
25
+ }] }] });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHJlZi1yZXNvbHZlci1tb2NrLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcm91dGVyL3Rlc3Rpbmcvc3JjL21vZHVsZXMvaHJlZi9ocmVmLXJlc29sdmVyLW1vY2suc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBR25FLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLElBQUksY0FBYyxDQUNqRCxtQkFBbUIsQ0FDcEIsQ0FBQztBQUVGOztHQUVHO0FBRUgsTUFBTSxPQUFPLDBCQUEwQjtJQUNyQyxZQUErQyxhQUFzQjtRQUF0QixrQkFBYSxHQUFiLGFBQWEsQ0FBUztJQUFHLENBQUM7SUFFbEUsV0FBVyxDQUFDLEtBQXNCO1FBQ3ZDLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQztZQUNyQixHQUFHLEVBQUUsS0FBSyxDQUFDLEdBQUc7WUFDZCxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7U0FDbEMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs4R0FSVSwwQkFBMEIsa0JBQ2pCLGlCQUFpQjtrSEFEMUIsMEJBQTBCOzsyRkFBMUIsMEJBQTBCO2tCQUR0QyxVQUFVOzswQkFFSSxNQUFNOzJCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreUhyZWYsIFNreUhyZWZSZXNvbHZlciB9IGZyb20gJ0Bza3l1eC9yb3V0ZXInO1xuXG5leHBvcnQgY29uc3QgTW9ja1VzZXJIYXNBY2Nlc3MgPSBuZXcgSW5qZWN0aW9uVG9rZW48Ym9vbGVhbj4oXG4gICdNb2NrVXNlckhhc0FjY2VzcycsXG4pO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2t5SHJlZlJlc29sdmVyTW9ja1NlcnZpY2UgaW1wbGVtZW50cyBTa3lIcmVmUmVzb2x2ZXIge1xuICBjb25zdHJ1Y3RvcihASW5qZWN0KE1vY2tVc2VySGFzQWNjZXNzKSBwcml2YXRlIHVzZXJIYXNBY2Nlc3M6IGJvb2xlYW4pIHt9XG5cbiAgcHVibGljIHJlc29sdmVIcmVmKHBhcmFtOiB7IHVybDogc3RyaW5nIH0pOiBQcm9taXNlPFNreUhyZWY+IHtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHtcbiAgICAgIHVybDogcGFyYW0udXJsLFxuICAgICAgdXNlckhhc0FjY2VzczogdGhpcy51c2VySGFzQWNjZXNzLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,51 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { SkyHrefModule, SkyHrefResolverService } from '@skyux/router';
3
+ import { MockUserHasAccess, SkyHrefResolverMockService, } from './href-resolver-mock.service';
4
+ import * as i0 from "@angular/core";
5
+ /**
6
+ * Testing module for the `SkyHref` directive and route resolver.
7
+ */
8
+ export class SkyHrefTestingModule {
9
+ static with(options) {
10
+ return {
11
+ ngModule: SkyHrefTestingModule,
12
+ providers: [
13
+ {
14
+ provide: MockUserHasAccess,
15
+ useValue: options.userHasAccess,
16
+ },
17
+ ],
18
+ };
19
+ }
20
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyHrefTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
21
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: SkyHrefTestingModule, exports: [SkyHrefModule] }); }
22
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyHrefTestingModule, providers: [
23
+ SkyHrefResolverMockService,
24
+ {
25
+ provide: SkyHrefResolverService,
26
+ useClass: SkyHrefResolverMockService,
27
+ },
28
+ {
29
+ provide: MockUserHasAccess,
30
+ useValue: true,
31
+ },
32
+ ], imports: [SkyHrefModule] }); }
33
+ }
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyHrefTestingModule, decorators: [{
35
+ type: NgModule,
36
+ args: [{
37
+ exports: [SkyHrefModule],
38
+ providers: [
39
+ SkyHrefResolverMockService,
40
+ {
41
+ provide: SkyHrefResolverService,
42
+ useClass: SkyHrefResolverMockService,
43
+ },
44
+ {
45
+ provide: MockUserHasAccess,
46
+ useValue: true,
47
+ },
48
+ ],
49
+ }]
50
+ }] });
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHJlZi10ZXN0aW5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9yb3V0ZXIvdGVzdGluZy9zcmMvbW9kdWxlcy9ocmVmL2hyZWYtdGVzdGluZy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV0RSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLDBCQUEwQixHQUMzQixNQUFNLDhCQUE4QixDQUFDOztBQUV0Qzs7R0FFRztBQWVILE1BQU0sT0FBTyxvQkFBb0I7SUFDeEIsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUVsQjtRQUNDLE9BQU87WUFDTCxRQUFRLEVBQUUsb0JBQW9CO1lBQzlCLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUsaUJBQWlCO29CQUMxQixRQUFRLEVBQUUsT0FBTyxDQUFDLGFBQWE7aUJBQ2hDO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQzs4R0FiVSxvQkFBb0I7K0dBQXBCLG9CQUFvQixZQWJyQixhQUFhOytHQWFaLG9CQUFvQixhQVpwQjtZQUNULDBCQUEwQjtZQUMxQjtnQkFDRSxPQUFPLEVBQUUsc0JBQXNCO2dCQUMvQixRQUFRLEVBQUUsMEJBQTBCO2FBQ3JDO1lBQ0Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsUUFBUSxFQUFFLElBQUk7YUFDZjtTQUNGLFlBWFMsYUFBYTs7MkZBYVosb0JBQW9CO2tCQWRoQyxRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLGFBQWEsQ0FBQztvQkFDeEIsU0FBUyxFQUFFO3dCQUNULDBCQUEwQjt3QkFDMUI7NEJBQ0UsT0FBTyxFQUFFLHNCQUFzQjs0QkFDL0IsUUFBUSxFQUFFLDBCQUEwQjt5QkFDckM7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsUUFBUSxFQUFFLElBQUk7eUJBQ2Y7cUJBQ0Y7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5SHJlZk1vZHVsZSwgU2t5SHJlZlJlc29sdmVyU2VydmljZSB9IGZyb20gJ0Bza3l1eC9yb3V0ZXInO1xuXG5pbXBvcnQge1xuICBNb2NrVXNlckhhc0FjY2VzcyxcbiAgU2t5SHJlZlJlc29sdmVyTW9ja1NlcnZpY2UsXG59IGZyb20gJy4vaHJlZi1yZXNvbHZlci1tb2NrLnNlcnZpY2UnO1xuXG4vKipcbiAqIFRlc3RpbmcgbW9kdWxlIGZvciB0aGUgYFNreUhyZWZgIGRpcmVjdGl2ZSBhbmQgcm91dGUgcmVzb2x2ZXIuXG4gKi9cbkBOZ01vZHVsZSh7XG4gIGV4cG9ydHM6IFtTa3lIcmVmTW9kdWxlXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgU2t5SHJlZlJlc29sdmVyTW9ja1NlcnZpY2UsXG4gICAge1xuICAgICAgcHJvdmlkZTogU2t5SHJlZlJlc29sdmVyU2VydmljZSxcbiAgICAgIHVzZUNsYXNzOiBTa3lIcmVmUmVzb2x2ZXJNb2NrU2VydmljZSxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IE1vY2tVc2VySGFzQWNjZXNzLFxuICAgICAgdXNlVmFsdWU6IHRydWUsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5SHJlZlRlc3RpbmdNb2R1bGUge1xuICBwdWJsaWMgc3RhdGljIHdpdGgob3B0aW9uczoge1xuICAgIHVzZXJIYXNBY2Nlc3M6IGJvb2xlYW47XG4gIH0pOiBNb2R1bGVXaXRoUHJvdmlkZXJzPFNreUhyZWZUZXN0aW5nTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBTa3lIcmVmVGVzdGluZ01vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogTW9ja1VzZXJIYXNBY2Nlc3MsXG4gICAgICAgICAgdXNlVmFsdWU6IG9wdGlvbnMudXNlckhhc0FjY2VzcyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxufVxuIl19
@@ -1,3 +1,3 @@
1
- export { SkyHrefHarness } from './href/href-harness';
2
- export { SkyHrefTestingModule } from './href/href-testing.module';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9yb3V0ZXIvdGVzdGluZy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNEJBQTRCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBTa3lIcmVmSGFybmVzcyB9IGZyb20gJy4vaHJlZi9ocmVmLWhhcm5lc3MnO1xuZXhwb3J0IHsgU2t5SHJlZlRlc3RpbmdNb2R1bGUgfSBmcm9tICcuL2hyZWYvaHJlZi10ZXN0aW5nLm1vZHVsZSc7XG4iXX0=
1
+ export { SkyHrefTestingModule } from './modules/href/href-testing.module';
2
+ export { SkyHrefHarness } from './modules/href/href-harness';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9yb3V0ZXIvdGVzdGluZy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNkJBQTZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBTa3lIcmVmVGVzdGluZ01vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy9ocmVmL2hyZWYtdGVzdGluZy5tb2R1bGUnO1xuZXhwb3J0IHsgU2t5SHJlZkhhcm5lc3MgfSBmcm9tICcuL21vZHVsZXMvaHJlZi9ocmVmLWhhcm5lc3MnO1xuIl19
@@ -1,46 +1,7 @@
1
- import { SkyComponentHarness } from '@skyux/core/testing';
2
1
  import * as i0 from '@angular/core';
3
2
  import { InjectionToken, Injectable, Inject, NgModule } from '@angular/core';
4
3
  import { SkyHrefModule, SkyHrefResolverService } from '@skyux/router';
5
-
6
- /**
7
- * Allows interaction with a SkyHref directive during testing.
8
- */
9
- class SkyHrefHarness extends SkyComponentHarness {
10
- static { this.hostSelector = '.sky-href'; }
11
- /**
12
- * Gets a `HarnessPredicate` that can be used to search for a
13
- * `SkyHrefHarness` that meets certain criteria.
14
- */
15
- static with(filters) {
16
- return this.getDataSkyIdPredicate(filters);
17
- }
18
- /**
19
- * Gets the href attribute of the host element.
20
- */
21
- async getHref() {
22
- return await (await this.host()).getAttribute('href');
23
- }
24
- /**
25
- * Gets the visible text.
26
- */
27
- async getText() {
28
- return await this.isVisible().then(async (visible) => {
29
- if (visible) {
30
- return await (await this.host()).text();
31
- }
32
- return '';
33
- });
34
- }
35
- /**
36
- * Returns true if the text is visible.
37
- */
38
- async isVisible() {
39
- return await (await this.host())
40
- .matchesSelector('[hidden]')
41
- .then((hidden) => !hidden);
42
- }
43
- }
4
+ import { SkyComponentHarness } from '@skyux/core/testing';
44
5
 
45
6
  const MockUserHasAccess = new InjectionToken('MockUserHasAccess');
46
7
  /**
@@ -113,6 +74,45 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImpor
113
74
  }]
114
75
  }] });
115
76
 
77
+ /**
78
+ * Allows interaction with a SkyHref directive during testing.
79
+ */
80
+ class SkyHrefHarness extends SkyComponentHarness {
81
+ static { this.hostSelector = '.sky-href'; }
82
+ /**
83
+ * Gets a `HarnessPredicate` that can be used to search for a
84
+ * `SkyHrefHarness` that meets certain criteria.
85
+ */
86
+ static with(filters) {
87
+ return this.getDataSkyIdPredicate(filters);
88
+ }
89
+ /**
90
+ * Gets the href attribute of the host element.
91
+ */
92
+ async getHref() {
93
+ return await (await this.host()).getAttribute('href');
94
+ }
95
+ /**
96
+ * Gets the visible text.
97
+ */
98
+ async getText() {
99
+ return await this.isVisible().then(async (visible) => {
100
+ if (visible) {
101
+ return await (await this.host()).text();
102
+ }
103
+ return '';
104
+ });
105
+ }
106
+ /**
107
+ * Returns true if the text is visible.
108
+ */
109
+ async isVisible() {
110
+ return await (await this.host())
111
+ .matchesSelector('[hidden]')
112
+ .then((hidden) => !hidden);
113
+ }
114
+ }
115
+
116
116
  /**
117
117
  * Generated bundle index. Do not edit.
118
118
  */
@@ -1 +1 @@
1
- {"version":3,"file":"skyux-router-testing.mjs","sources":["../../../../../libs/components/router/testing/src/href/href-harness.ts","../../../../../libs/components/router/testing/src/href/href-resolver-mock.service.ts","../../../../../libs/components/router/testing/src/href/href-testing.module.ts","../../../../../libs/components/router/testing/src/skyux-router-testing.ts"],"sourcesContent":["import { HarnessPredicate } from '@angular/cdk/testing';\nimport { SkyComponentHarness } from '@skyux/core/testing';\n\nimport { SkyHrefHarnessFilters } from './href-harness-filters';\n\n/**\n * Allows interaction with a SkyHref directive during testing.\n */\nexport class SkyHrefHarness extends SkyComponentHarness {\n public static hostSelector = '.sky-href';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyHrefHarness` that meets certain criteria.\n */\n public static with(\n filters: SkyHrefHarnessFilters,\n ): HarnessPredicate<SkyHrefHarness> {\n return this.getDataSkyIdPredicate(filters);\n }\n\n /**\n * Gets the href attribute of the host element.\n */\n public async getHref(): Promise<string | null> {\n return await (await this.host()).getAttribute('href');\n }\n\n /**\n * Gets the visible text.\n */\n public async getText(): Promise<string> {\n return await this.isVisible().then(async (visible) => {\n if (visible) {\n return await (await this.host()).text();\n }\n return '';\n });\n }\n\n /**\n * Returns true if the text is visible.\n */\n public async isVisible(): Promise<boolean> {\n return await (await this.host())\n .matchesSelector('[hidden]')\n .then((hidden) => !hidden);\n }\n}\n","import { Inject, Injectable, InjectionToken } from '@angular/core';\nimport { SkyHref, SkyHrefResolver } from '@skyux/router';\n\nexport const MockUserHasAccess = new InjectionToken<boolean>(\n 'MockUserHasAccess',\n);\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyHrefResolverMockService implements SkyHrefResolver {\n constructor(@Inject(MockUserHasAccess) private userHasAccess: boolean) {}\n\n public resolveHref(param: { url: string }): Promise<SkyHref> {\n return Promise.resolve({\n url: param.url,\n userHasAccess: this.userHasAccess,\n });\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { SkyHrefModule, SkyHrefResolverService } from '@skyux/router';\n\nimport {\n MockUserHasAccess,\n SkyHrefResolverMockService,\n} from './href-resolver-mock.service';\n\n/**\n * Testing module for the `SkyHref` directive and route resolver.\n */\n@NgModule({\n exports: [SkyHrefModule],\n providers: [\n SkyHrefResolverMockService,\n {\n provide: SkyHrefResolverService,\n useClass: SkyHrefResolverMockService,\n },\n {\n provide: MockUserHasAccess,\n useValue: true,\n },\n ],\n})\nexport class SkyHrefTestingModule {\n public static with(options: {\n userHasAccess: boolean;\n }): ModuleWithProviders<SkyHrefTestingModule> {\n return {\n ngModule: SkyHrefTestingModule,\n providers: [\n {\n provide: MockUserHasAccess,\n useValue: options.userHasAccess,\n },\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skyux-router-testing.mjs","sources":["../../../../../libs/components/router/testing/src/modules/href/href-resolver-mock.service.ts","../../../../../libs/components/router/testing/src/modules/href/href-testing.module.ts","../../../../../libs/components/router/testing/src/modules/href/href-harness.ts","../../../../../libs/components/router/testing/src/skyux-router-testing.ts"],"sourcesContent":["import { Inject, Injectable, InjectionToken } from '@angular/core';\nimport { SkyHref, SkyHrefResolver } from '@skyux/router';\n\nexport const MockUserHasAccess = new InjectionToken<boolean>(\n 'MockUserHasAccess',\n);\n\n/**\n * @internal\n */\n@Injectable()\nexport class SkyHrefResolverMockService implements SkyHrefResolver {\n constructor(@Inject(MockUserHasAccess) private userHasAccess: boolean) {}\n\n public resolveHref(param: { url: string }): Promise<SkyHref> {\n return Promise.resolve({\n url: param.url,\n userHasAccess: this.userHasAccess,\n });\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { SkyHrefModule, SkyHrefResolverService } from '@skyux/router';\n\nimport {\n MockUserHasAccess,\n SkyHrefResolverMockService,\n} from './href-resolver-mock.service';\n\n/**\n * Testing module for the `SkyHref` directive and route resolver.\n */\n@NgModule({\n exports: [SkyHrefModule],\n providers: [\n SkyHrefResolverMockService,\n {\n provide: SkyHrefResolverService,\n useClass: SkyHrefResolverMockService,\n },\n {\n provide: MockUserHasAccess,\n useValue: true,\n },\n ],\n})\nexport class SkyHrefTestingModule {\n public static with(options: {\n userHasAccess: boolean;\n }): ModuleWithProviders<SkyHrefTestingModule> {\n return {\n ngModule: SkyHrefTestingModule,\n providers: [\n {\n provide: MockUserHasAccess,\n useValue: options.userHasAccess,\n },\n ],\n };\n }\n}\n","import { HarnessPredicate } from '@angular/cdk/testing';\nimport { SkyComponentHarness } from '@skyux/core/testing';\n\nimport { SkyHrefHarnessFilters } from './href-harness-filters';\n\n/**\n * Allows interaction with a SkyHref directive during testing.\n */\nexport class SkyHrefHarness extends SkyComponentHarness {\n public static hostSelector = '.sky-href';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyHrefHarness` that meets certain criteria.\n */\n public static with(\n filters: SkyHrefHarnessFilters,\n ): HarnessPredicate<SkyHrefHarness> {\n return this.getDataSkyIdPredicate(filters);\n }\n\n /**\n * Gets the href attribute of the host element.\n */\n public async getHref(): Promise<string | null> {\n return await (await this.host()).getAttribute('href');\n }\n\n /**\n * Gets the visible text.\n */\n public async getText(): Promise<string> {\n return await this.isVisible().then(async (visible) => {\n if (visible) {\n return await (await this.host()).text();\n }\n return '';\n });\n }\n\n /**\n * Returns true if the text is visible.\n */\n public async isVisible(): Promise<boolean> {\n return await (await this.host())\n .matchesSelector('[hidden]')\n .then((hidden) => !hidden);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skyux/router",
3
- "version": "11.22.0",
3
+ "version": "11.23.0",
4
4
  "author": "Blackbaud, Inc.",
5
5
  "keywords": [
6
6
  "blackbaud",
@@ -20,8 +20,8 @@
20
20
  "@angular/common": "^18.2.8",
21
21
  "@angular/core": "^18.2.8",
22
22
  "@angular/router": "^18.2.8",
23
- "@skyux/config": "11.22.0",
24
- "@skyux/core": "11.22.0"
23
+ "@skyux/config": "11.23.0",
24
+ "@skyux/core": "11.23.0"
25
25
  },
26
26
  "dependencies": {
27
27
  "tslib": "^2.6.3"
@@ -1,2 +1,2 @@
1
- export { SkyHrefHarness } from './href/href-harness';
2
- export { SkyHrefTestingModule } from './href/href-testing.module';
1
+ export { SkyHrefTestingModule } from './modules/href/href-testing.module';
2
+ export { SkyHrefHarness } from './modules/href/href-harness';
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHJlZi1oYXJuZXNzLWZpbHRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcm91dGVyL3Rlc3Rpbmcvc3JjL2hyZWYvaHJlZi1oYXJuZXNzLWZpbHRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNreUhhcm5lc3NGaWx0ZXJzIH0gZnJvbSAnQHNreXV4L2NvcmUvdGVzdGluZyc7XG5cbi8qKlxuICogQSBzZXQgb2YgY3JpdGVyaWEgdGhhdCBjYW4gYmUgdXNlZCB0byBmaWx0ZXIgYSBsaXN0IG9mIGBTa3lIcmVmSGFybmVzc2AgaW5zdGFuY2VzLlxuICogQGludGVybmFsXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktaW50ZXJmYWNlLCBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktb2JqZWN0LXR5cGVcbmV4cG9ydCBpbnRlcmZhY2UgU2t5SHJlZkhhcm5lc3NGaWx0ZXJzIGV4dGVuZHMgU2t5SGFybmVzc0ZpbHRlcnMge31cbiJdfQ==
@@ -1,40 +0,0 @@
1
- import { SkyComponentHarness } from '@skyux/core/testing';
2
- /**
3
- * Allows interaction with a SkyHref directive during testing.
4
- */
5
- export class SkyHrefHarness extends SkyComponentHarness {
6
- static { this.hostSelector = '.sky-href'; }
7
- /**
8
- * Gets a `HarnessPredicate` that can be used to search for a
9
- * `SkyHrefHarness` that meets certain criteria.
10
- */
11
- static with(filters) {
12
- return this.getDataSkyIdPredicate(filters);
13
- }
14
- /**
15
- * Gets the href attribute of the host element.
16
- */
17
- async getHref() {
18
- return await (await this.host()).getAttribute('href');
19
- }
20
- /**
21
- * Gets the visible text.
22
- */
23
- async getText() {
24
- return await this.isVisible().then(async (visible) => {
25
- if (visible) {
26
- return await (await this.host()).text();
27
- }
28
- return '';
29
- });
30
- }
31
- /**
32
- * Returns true if the text is visible.
33
- */
34
- async isVisible() {
35
- return await (await this.host())
36
- .matchesSelector('[hidden]')
37
- .then((hidden) => !hidden);
38
- }
39
- }
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHJlZi1oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3JvdXRlci90ZXN0aW5nL3NyYy9ocmVmL2hyZWYtaGFybmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUkxRDs7R0FFRztBQUNILE1BQU0sT0FBTyxjQUFlLFNBQVEsbUJBQW1CO2FBQ3ZDLGlCQUFZLEdBQUcsV0FBVyxDQUFDO0lBRXpDOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxJQUFJLENBQ2hCLE9BQThCO1FBRTlCLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxPQUFPO1FBQ2xCLE9BQU8sTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxPQUFPO1FBQ2xCLE9BQU8sTUFBTSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsRUFBRTtZQUNuRCxJQUFJLE9BQU8sRUFBRSxDQUFDO2dCQUNaLE9BQU8sTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDMUMsQ0FBQztZQUNELE9BQU8sRUFBRSxDQUFDO1FBQ1osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsU0FBUztRQUNwQixPQUFPLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQzthQUM3QixlQUFlLENBQUMsVUFBVSxDQUFDO2FBQzNCLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUMvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGFybmVzc1ByZWRpY2F0ZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJztcbmltcG9ydCB7IFNreUNvbXBvbmVudEhhcm5lc3MgfSBmcm9tICdAc2t5dXgvY29yZS90ZXN0aW5nJztcblxuaW1wb3J0IHsgU2t5SHJlZkhhcm5lc3NGaWx0ZXJzIH0gZnJvbSAnLi9ocmVmLWhhcm5lc3MtZmlsdGVycyc7XG5cbi8qKlxuICogQWxsb3dzIGludGVyYWN0aW9uIHdpdGggYSBTa3lIcmVmIGRpcmVjdGl2ZSBkdXJpbmcgdGVzdGluZy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNreUhyZWZIYXJuZXNzIGV4dGVuZHMgU2t5Q29tcG9uZW50SGFybmVzcyB7XG4gIHB1YmxpYyBzdGF0aWMgaG9zdFNlbGVjdG9yID0gJy5za3ktaHJlZic7XG5cbiAgLyoqXG4gICAqIEdldHMgYSBgSGFybmVzc1ByZWRpY2F0ZWAgdGhhdCBjYW4gYmUgdXNlZCB0byBzZWFyY2ggZm9yIGFcbiAgICogYFNreUhyZWZIYXJuZXNzYCB0aGF0IG1lZXRzIGNlcnRhaW4gY3JpdGVyaWEuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHdpdGgoXG4gICAgZmlsdGVyczogU2t5SHJlZkhhcm5lc3NGaWx0ZXJzLFxuICApOiBIYXJuZXNzUHJlZGljYXRlPFNreUhyZWZIYXJuZXNzPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0RGF0YVNreUlkUHJlZGljYXRlKGZpbHRlcnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGhyZWYgYXR0cmlidXRlIG9mIHRoZSBob3N0IGVsZW1lbnQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0SHJlZigpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuaG9zdCgpKS5nZXRBdHRyaWJ1dGUoJ2hyZWYnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB2aXNpYmxlIHRleHQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0VGV4dCgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmlzVmlzaWJsZSgpLnRoZW4oYXN5bmMgKHZpc2libGUpID0+IHtcbiAgICAgIGlmICh2aXNpYmxlKSB7XG4gICAgICAgIHJldHVybiBhd2FpdCAoYXdhaXQgdGhpcy5ob3N0KCkpLnRleHQoKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiAnJztcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRydWUgaWYgdGhlIHRleHQgaXMgdmlzaWJsZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBpc1Zpc2libGUoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLmhvc3QoKSlcbiAgICAgIC5tYXRjaGVzU2VsZWN0b3IoJ1toaWRkZW5dJylcbiAgICAgIC50aGVuKChoaWRkZW4pID0+ICFoaWRkZW4pO1xuICB9XG59XG4iXX0=
@@ -1,26 +0,0 @@
1
- import { Inject, Injectable, InjectionToken } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export const MockUserHasAccess = new InjectionToken('MockUserHasAccess');
4
- /**
5
- * @internal
6
- */
7
- export class SkyHrefResolverMockService {
8
- constructor(userHasAccess) {
9
- this.userHasAccess = userHasAccess;
10
- }
11
- resolveHref(param) {
12
- return Promise.resolve({
13
- url: param.url,
14
- userHasAccess: this.userHasAccess,
15
- });
16
- }
17
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyHrefResolverMockService, deps: [{ token: MockUserHasAccess }], target: i0.ɵɵFactoryTarget.Injectable }); }
18
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyHrefResolverMockService }); }
19
- }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyHrefResolverMockService, decorators: [{
21
- type: Injectable
22
- }], ctorParameters: () => [{ type: undefined, decorators: [{
23
- type: Inject,
24
- args: [MockUserHasAccess]
25
- }] }] });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHJlZi1yZXNvbHZlci1tb2NrLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvcm91dGVyL3Rlc3Rpbmcvc3JjL2hyZWYvaHJlZi1yZXNvbHZlci1tb2NrLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUduRSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLGNBQWMsQ0FDakQsbUJBQW1CLENBQ3BCLENBQUM7QUFFRjs7R0FFRztBQUVILE1BQU0sT0FBTywwQkFBMEI7SUFDckMsWUFBK0MsYUFBc0I7UUFBdEIsa0JBQWEsR0FBYixhQUFhLENBQVM7SUFBRyxDQUFDO0lBRWxFLFdBQVcsQ0FBQyxLQUFzQjtRQUN2QyxPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUM7WUFDckIsR0FBRyxFQUFFLEtBQUssQ0FBQyxHQUFHO1lBQ2QsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1NBQ2xDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBUlUsMEJBQTBCLGtCQUNqQixpQkFBaUI7a0hBRDFCLDBCQUEwQjs7MkZBQTFCLDBCQUEwQjtrQkFEdEMsVUFBVTs7MEJBRUksTUFBTTsyQkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lIcmVmLCBTa3lIcmVmUmVzb2x2ZXIgfSBmcm9tICdAc2t5dXgvcm91dGVyJztcblxuZXhwb3J0IGNvbnN0IE1vY2tVc2VySGFzQWNjZXNzID0gbmV3IEluamVjdGlvblRva2VuPGJvb2xlYW4+KFxuICAnTW9ja1VzZXJIYXNBY2Nlc3MnLFxuKTtcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNreUhyZWZSZXNvbHZlck1vY2tTZXJ2aWNlIGltcGxlbWVudHMgU2t5SHJlZlJlc29sdmVyIHtcbiAgY29uc3RydWN0b3IoQEluamVjdChNb2NrVXNlckhhc0FjY2VzcykgcHJpdmF0ZSB1c2VySGFzQWNjZXNzOiBib29sZWFuKSB7fVxuXG4gIHB1YmxpYyByZXNvbHZlSHJlZihwYXJhbTogeyB1cmw6IHN0cmluZyB9KTogUHJvbWlzZTxTa3lIcmVmPiB7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh7XG4gICAgICB1cmw6IHBhcmFtLnVybCxcbiAgICAgIHVzZXJIYXNBY2Nlc3M6IHRoaXMudXNlckhhc0FjY2VzcyxcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -1,51 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { SkyHrefModule, SkyHrefResolverService } from '@skyux/router';
3
- import { MockUserHasAccess, SkyHrefResolverMockService, } from './href-resolver-mock.service';
4
- import * as i0 from "@angular/core";
5
- /**
6
- * Testing module for the `SkyHref` directive and route resolver.
7
- */
8
- export class SkyHrefTestingModule {
9
- static with(options) {
10
- return {
11
- ngModule: SkyHrefTestingModule,
12
- providers: [
13
- {
14
- provide: MockUserHasAccess,
15
- useValue: options.userHasAccess,
16
- },
17
- ],
18
- };
19
- }
20
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyHrefTestingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
21
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: SkyHrefTestingModule, exports: [SkyHrefModule] }); }
22
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyHrefTestingModule, providers: [
23
- SkyHrefResolverMockService,
24
- {
25
- provide: SkyHrefResolverService,
26
- useClass: SkyHrefResolverMockService,
27
- },
28
- {
29
- provide: MockUserHasAccess,
30
- useValue: true,
31
- },
32
- ], imports: [SkyHrefModule] }); }
33
- }
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: SkyHrefTestingModule, decorators: [{
35
- type: NgModule,
36
- args: [{
37
- exports: [SkyHrefModule],
38
- providers: [
39
- SkyHrefResolverMockService,
40
- {
41
- provide: SkyHrefResolverService,
42
- useClass: SkyHrefResolverMockService,
43
- },
44
- {
45
- provide: MockUserHasAccess,
46
- useValue: true,
47
- },
48
- ],
49
- }]
50
- }] });
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHJlZi10ZXN0aW5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9yb3V0ZXIvdGVzdGluZy9zcmMvaHJlZi9ocmVmLXRlc3RpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxhQUFhLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdEUsT0FBTyxFQUNMLGlCQUFpQixFQUNqQiwwQkFBMEIsR0FDM0IsTUFBTSw4QkFBOEIsQ0FBQzs7QUFFdEM7O0dBRUc7QUFlSCxNQUFNLE9BQU8sb0JBQW9CO0lBQ3hCLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FFbEI7UUFDQyxPQUFPO1lBQ0wsUUFBUSxFQUFFLG9CQUFvQjtZQUM5QixTQUFTLEVBQUU7Z0JBQ1Q7b0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtvQkFDMUIsUUFBUSxFQUFFLE9BQU8sQ0FBQyxhQUFhO2lCQUNoQzthQUNGO1NBQ0YsQ0FBQztJQUNKLENBQUM7OEdBYlUsb0JBQW9COytHQUFwQixvQkFBb0IsWUFickIsYUFBYTsrR0FhWixvQkFBb0IsYUFacEI7WUFDVCwwQkFBMEI7WUFDMUI7Z0JBQ0UsT0FBTyxFQUFFLHNCQUFzQjtnQkFDL0IsUUFBUSxFQUFFLDBCQUEwQjthQUNyQztZQUNEO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFFBQVEsRUFBRSxJQUFJO2FBQ2Y7U0FDRixZQVhTLGFBQWE7OzJGQWFaLG9CQUFvQjtrQkFkaEMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxhQUFhLENBQUM7b0JBQ3hCLFNBQVMsRUFBRTt3QkFDVCwwQkFBMEI7d0JBQzFCOzRCQUNFLE9BQU8sRUFBRSxzQkFBc0I7NEJBQy9CLFFBQVEsRUFBRSwwQkFBMEI7eUJBQ3JDO3dCQUNEOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFFBQVEsRUFBRSxJQUFJO3lCQUNmO3FCQUNGO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreUhyZWZNb2R1bGUsIFNreUhyZWZSZXNvbHZlclNlcnZpY2UgfSBmcm9tICdAc2t5dXgvcm91dGVyJztcblxuaW1wb3J0IHtcbiAgTW9ja1VzZXJIYXNBY2Nlc3MsXG4gIFNreUhyZWZSZXNvbHZlck1vY2tTZXJ2aWNlLFxufSBmcm9tICcuL2hyZWYtcmVzb2x2ZXItbW9jay5zZXJ2aWNlJztcblxuLyoqXG4gKiBUZXN0aW5nIG1vZHVsZSBmb3IgdGhlIGBTa3lIcmVmYCBkaXJlY3RpdmUgYW5kIHJvdXRlIHJlc29sdmVyLlxuICovXG5ATmdNb2R1bGUoe1xuICBleHBvcnRzOiBbU2t5SHJlZk1vZHVsZV0sXG4gIHByb3ZpZGVyczogW1xuICAgIFNreUhyZWZSZXNvbHZlck1vY2tTZXJ2aWNlLFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IFNreUhyZWZSZXNvbHZlclNlcnZpY2UsXG4gICAgICB1c2VDbGFzczogU2t5SHJlZlJlc29sdmVyTW9ja1NlcnZpY2UsXG4gICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBNb2NrVXNlckhhc0FjY2VzcyxcbiAgICAgIHVzZVZhbHVlOiB0cnVlLFxuICAgIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFNreUhyZWZUZXN0aW5nTW9kdWxlIHtcbiAgcHVibGljIHN0YXRpYyB3aXRoKG9wdGlvbnM6IHtcbiAgICB1c2VySGFzQWNjZXNzOiBib29sZWFuO1xuICB9KTogTW9kdWxlV2l0aFByb3ZpZGVyczxTa3lIcmVmVGVzdGluZ01vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogU2t5SHJlZlRlc3RpbmdNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IE1vY2tVc2VySGFzQWNjZXNzLFxuICAgICAgICAgIHVzZVZhbHVlOiBvcHRpb25zLnVzZXJIYXNBY2Nlc3MsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==