@oasisdigital/ng-doc-portal-plugin
Version:
Nx plugin for adding the ng-doc-portal system to your nx workspace
48 lines (47 loc) • 1.49 kB
TypeScript
import { Observable } from 'rxjs';
import { RawFileEvent } from './types';
export declare class DocPageLoadersCompiler {
private readonly configFileLocation;
private readonly docPageLoadersFileLocation;
private readonly silenced;
private globPatterns;
constructor(configFileLocation: string, docPageLoadersFileLocation: string, silenced?: boolean);
runOnce(): Promise<void>;
watch(): Observable<void>;
handleFileEvents(obs: Observable<RawFileEvent>): Observable<void>;
/**
* Build an Observable that emits the initial list of file paths.
* @private
*/
private buildInitialFileEvent;
/**
* Generate an Observable of the raw file events.
* @private
*/
private buildWatcher;
/**
* Create the RawFileEvent from the chokidar event.
*
* @param rawFilePath The file that was modified
* @param event The type of chokidar change
* @private
*/
private buildRawFileEvent;
/**
* Process a raw file event, adding loader string payloads.
*
* @param fileEvent The raw file event that describe which file(s)
* is affected and what is happening.
* @private
*/
private addPayloadToEvent;
private detectAndHandleDuplicateTitles;
/**
* Generate a file to hold the loader content.
*
* @param content The loader content generated from our path files
* @private
*/
private writeDynamicPageContentToFile;
private log;
}