You've already forked obsidian-visualiser
Rename RedrawableHTML, remove File API rate limite and fix pull job transaction.
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
import { Content, type LocalContent } from "./content";
|
||||
import { dom, type RedrawableHTML } from "./dom";
|
||||
import { dom, type HTMLElement } from "./dom";
|
||||
import { clamp } from "./general";
|
||||
|
||||
export type Recursive<T> = T & {
|
||||
@@ -138,14 +138,14 @@ export class Tree<T extends Omit<LocalContent, 'content'>>
|
||||
}
|
||||
export class TreeDOM
|
||||
{
|
||||
container: RedrawableHTML;
|
||||
tree: Tree<Omit<LocalContent & { element?: RedrawableHTML }, "content">>;
|
||||
container: HTMLElement;
|
||||
tree: Tree<Omit<LocalContent & { element?: HTMLElement }, "content">>;
|
||||
|
||||
private filter?: (item: Recursive<Omit<LocalContent, 'content'>>, depth: number) => boolean | undefined;
|
||||
private folder: (item: Recursive<Omit<LocalContent, 'content'>>, depth: number) => RedrawableHTML;
|
||||
private leaf: (item: Recursive<Omit<LocalContent, 'content'>>, depth: number) => RedrawableHTML;
|
||||
private folder: (item: Recursive<Omit<LocalContent, 'content'>>, depth: number) => HTMLElement;
|
||||
private leaf: (item: Recursive<Omit<LocalContent, 'content'>>, depth: number) => HTMLElement;
|
||||
|
||||
constructor(folder: (item: Recursive<Omit<LocalContent, 'content'>>, depth: number) => RedrawableHTML, leaf: (item: Recursive<Omit<LocalContent, 'content'>>, depth: number) => RedrawableHTML, filter?: (item: Recursive<Omit<LocalContent, 'content'>>, depth: number) => boolean | undefined)
|
||||
constructor(folder: (item: Recursive<Omit<LocalContent, 'content'>>, depth: number) => HTMLElement, leaf: (item: Recursive<Omit<LocalContent, 'content'>>, depth: number) => HTMLElement, filter?: (item: Recursive<Omit<LocalContent, 'content'>>, depth: number) => boolean | undefined)
|
||||
{
|
||||
this.tree = new Tree(Content.tree);
|
||||
|
||||
@@ -156,7 +156,7 @@ export class TreeDOM
|
||||
const elements = this.tree.accumulate(this.render.bind(this));
|
||||
this.container = dom('div', { class: 'list-none select-none text-light-100 dark:text-dark-100 text-sm ps-2' }, elements);
|
||||
}
|
||||
render(item: Recursive<Omit<LocalContent & { element?: RedrawableHTML }, "content">>, depth: number): RedrawableHTML | undefined
|
||||
render(item: Recursive<Omit<LocalContent & { element?: HTMLElement }, "content">>, depth: number): HTMLElement | undefined
|
||||
{
|
||||
if(this.filter && !(this.filter(item, depth) ?? true))
|
||||
return;
|
||||
@@ -187,7 +187,7 @@ export class TreeDOM
|
||||
{
|
||||
this.container.replaceChildren(...this.tree.flatten.map(e => e.element!));
|
||||
}
|
||||
toggle(item?: Omit<LocalContent & { element?: RedrawableHTML }, 'content'>, state?: boolean)
|
||||
toggle(item?: Omit<LocalContent & { element?: HTMLElement }, 'content'>, state?: boolean)
|
||||
{
|
||||
if(item && item.type === 'folder')
|
||||
{
|
||||
@@ -202,7 +202,7 @@ export class TreeDOM
|
||||
});
|
||||
}
|
||||
}
|
||||
opened(item?: Omit<LocalContent & { element?: RedrawableHTML }, 'content'>): boolean | undefined
|
||||
opened(item?: Omit<LocalContent & { element?: HTMLElement }, 'content'>): boolean | undefined
|
||||
{
|
||||
return item ? item.element!.getAttribute('data-state') === 'open' : undefined;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user