angular-meta
Version:
angular-meta is a lightweight and flexible SEO utility for Angular applications, designed to work seamlessly with Server-Side Rendering (SSR). It dynamically updates <meta>, <link>, and structured schema tags using route data, parameters, and URL. Easily
57 lines (52 loc) • 1.47 kB
TypeScript
import * as i0 from '@angular/core';
import { Provider } from '@angular/core';
import { ResolveFn } from '@angular/router';
/**
* @param apiEndpoint - required
* @param forceCreation - True to create a new element without checking whether one already exists.
*/
interface AngularMetaConfig {
apiEndpoint: string;
forceCreation?: boolean;
}
interface LinkTag {
href?: string;
rel?: string;
type?: string;
title?: string;
media?: string;
}
interface MetaTag {
charset?: string;
content?: string;
httpEquiv?: string;
id?: string;
itemprop?: string;
name?: string;
property?: string;
scheme?: string;
url?: string;
}
type DataTag = LinkTag | MetaTag;
interface AngularMetaData {
title: string;
meta: Array<DataTag>;
schema: any;
}
declare function provideAngularMeta(config: AngularMetaConfig): Provider[];
declare const angularMetaResolver: ResolveFn<boolean>;
declare class AngularMetaCtrl {
private config;
private httpClient;
private meta;
private title;
private document;
private router;
private activatedRoute;
getMetas(data: any): Promise<AngularMetaData>;
setMetaData(data: AngularMetaData): Promise<boolean>;
initFromCtrl(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<AngularMetaCtrl, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<AngularMetaCtrl>;
}
export { AngularMetaCtrl, angularMetaResolver, provideAngularMeta };