123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147 |
- /**
- * @license Angular v16.2.9
- * (c) 2010-2022 Google LLC. https://angular.io/
- * License: MIT
- */
- import * as i0 from '@angular/core';
- import { InjectionToken } from '@angular/core';
- import { Location as Location_2 } from '@angular/common';
- import { LocationChangeListener } from '@angular/common';
- import { LocationStrategy } from '@angular/common';
- import { PlatformLocation } from '@angular/common';
- import { Provider } from '@angular/core';
- import { SubscriptionLike } from 'rxjs';
- /**
- * Provider for mock platform location config
- *
- * @publicApi
- */
- export declare const MOCK_PLATFORM_LOCATION_CONFIG: InjectionToken<MockPlatformLocationConfig>;
- /**
- * A mock implementation of {@link LocationStrategy} that allows tests to fire simulated
- * location events.
- *
- * @publicApi
- */
- export declare class MockLocationStrategy extends LocationStrategy {
- internalBaseHref: string;
- internalPath: string;
- internalTitle: string;
- urlChanges: string[];
- private stateChanges;
- constructor();
- simulatePopState(url: string): void;
- path(includeHash?: boolean): string;
- prepareExternalUrl(internal: string): string;
- pushState(ctx: any, title: string, path: string, query: string): void;
- replaceState(ctx: any, title: string, path: string, query: string): void;
- onPopState(fn: (value: any) => void): void;
- getBaseHref(): string;
- back(): void;
- forward(): void;
- getState(): unknown;
- static ɵfac: i0.ɵɵFactoryDeclaration<MockLocationStrategy, never>;
- static ɵprov: i0.ɵɵInjectableDeclaration<MockLocationStrategy>;
- }
- /**
- * Mock implementation of URL state.
- *
- * @publicApi
- */
- export declare class MockPlatformLocation implements PlatformLocation {
- private baseHref;
- private hashUpdate;
- private popStateSubject;
- private urlChangeIndex;
- private urlChanges;
- constructor(config?: MockPlatformLocationConfig);
- get hostname(): string;
- get protocol(): string;
- get port(): string;
- get pathname(): string;
- get search(): string;
- get hash(): string;
- get state(): unknown;
- getBaseHrefFromDOM(): string;
- onPopState(fn: LocationChangeListener): VoidFunction;
- onHashChange(fn: LocationChangeListener): VoidFunction;
- get href(): string;
- get url(): string;
- private parseChanges;
- replaceState(state: any, title: string, newUrl: string): void;
- pushState(state: any, title: string, newUrl: string): void;
- forward(): void;
- back(): void;
- historyGo(relativePosition?: number): void;
- getState(): unknown;
- /**
- * Browsers are inconsistent in when they fire events and perform the state updates
- * The most easiest thing to do in our mock is synchronous and that happens to match
- * Firefox and Chrome, at least somewhat closely
- *
- * https://github.com/WICG/navigation-api#watching-for-navigations
- * https://docs.google.com/document/d/1Pdve-DJ1JCGilj9Yqf5HxRJyBKSel5owgOvUJqTauwU/edit#heading=h.3ye4v71wsz94
- * popstate is always sent before hashchange:
- * https://developer.mozilla.org/en-US/docs/Web/API/Window/popstate_event#when_popstate_is_sent
- */
- private emitEvents;
- static ɵfac: i0.ɵɵFactoryDeclaration<MockPlatformLocation, [{ optional: true; }]>;
- static ɵprov: i0.ɵɵInjectableDeclaration<MockPlatformLocation>;
- }
- /**
- * Mock platform location config
- *
- * @publicApi
- */
- export declare interface MockPlatformLocationConfig {
- startUrl?: string;
- appBaseHref?: string;
- }
- /**
- * Returns mock providers for the `Location` and `LocationStrategy` classes.
- * The mocks are helpful in tests to fire simulated location events.
- *
- * @publicApi
- */
- export declare function provideLocationMocks(): Provider[];
- /**
- * A spy for {@link Location} that allows tests to fire simulated location events.
- *
- * @publicApi
- */
- export declare class SpyLocation implements Location_2 {
- urlChanges: string[];
- private _history;
- private _historyIndex;
- /** @nodoc */
- ngOnDestroy(): void;
- setInitialPath(url: string): void;
- setBaseHref(url: string): void;
- path(): string;
- getState(): unknown;
- isCurrentPathEqualTo(path: string, query?: string): boolean;
- simulateUrlPop(pathname: string): void;
- simulateHashChange(pathname: string): void;
- prepareExternalUrl(url: string): string;
- go(path: string, query?: string, state?: any): void;
- replaceState(path: string, query?: string, state?: any): void;
- forward(): void;
- back(): void;
- historyGo(relativePosition?: number): void;
- onUrlChange(fn: (url: string, state: unknown) => void): VoidFunction;
- subscribe(onNext: (value: any) => void, onThrow?: ((error: any) => void) | null, onReturn?: (() => void) | null): SubscriptionLike;
- normalize(url: string): string;
- private pushHistory;
- static ɵfac: i0.ɵɵFactoryDeclaration<SpyLocation, never>;
- static ɵprov: i0.ɵɵInjectableDeclaration<SpyLocation>;
- }
- export { }
|