blob: 8b4f8a0080ea7b4f9f1724284fe96730e143390d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
export interface NavItem {
id: string,
href: string,
label: string,
subitems?: Array<NavItem>,
parent?: string
}
export interface LandmarkItem {
href?: string,
label?: string,
type?: string
}
export default class Navigation {
constructor(xml: XMLDocument);
toc: Array<NavItem>;
landmarks: Array<LandmarkItem>;
parse(xml: XMLDocument): void;
get(target: string) : NavItem;
landmark(type: string) : LandmarkItem;
load(json: string): Array<NavItem>;
forEach(fn: (item: NavItem) => {}): any;
private unpack(toc: Array<NavItem>): void;
private parseNav(navHtml: XMLDocument): Array<NavItem>;
private navItem(item: Element): NavItem;
private parseLandmarks(navHtml: XMLDocument): Array<LandmarkItem>;
private landmarkItem(item: Element): LandmarkItem;
private parseNcx(navHtml: XMLDocument): Array<NavItem>;
private ncxItem(item: Element): NavItem;
private getByIndex(target: string, index: number, navItems: NavItem[]): NavItem;
}
|