pivotick - v2.0.1
    Preparing search index...

    Interface PivotManagerLike

    The shape Graph.pivots exposes. Declared as an interface so the consumer-facing surface is documented in one place and the implementation can stay internal.

    interface PivotManagerLike {
        candidateCeiling: number;
        quickIngestLimit: number;
        rimBadge: PivotRimBadge;
        all(): PivotDefinition[];
        applicableCount(node: Node): number;
        cancel(pivotId?: string, kind?: "summarize" | "fetch"): void;
        canonicalId(element: Node | Edge): string | undefined;
        dismissPending(pivotId: string): void;
        for(nodes: Node[]): PivotDefinition[];
        get(id: string): PivotDefinition | undefined;
        invalidate(pivotId?: string, nodes?: Node[]): void;
        isSavable(element: Node | Edge): boolean;
        isSaved(element: Node | Edge): boolean;
        originFor(id: string, nodes: Node[]): Node[];
        register(definition: PivotDefinition): () => void;
        run(
            id: string,
            nodes?: Node[],
            narrowing?: PivotNarrowing,
            options?: PivotRunOptions,
        ): Promise<PivotRunOutcome>;
        save(target?: string): Promise<PivotSaveReport>;
        showPending(pivotId: string): void;
        unregister(id: string): void;
        unsaved(): PivotRun[];
        unsavedCount(pivotId?: string): { edges: number; nodes: number };
    }

    Implemented by

    Index

    Methods

    • How many pivots apply to one node — what the 'summary' rim badge counts. Held between graph changes, so it is cheap to ask per node per render.

      Parameters

      Returns number

    • Abort in-flight calls — one pivot's or all, and optionally only one kind.

      Parameters

      • OptionalpivotId: string
      • Optionalkind: "summarize" | "fetch"

      Returns void

    • The id the source system assigned this element when it was saved, when it assigned one. The element keeps its own id — re-keying reaches into edges, clusters, selection, the query engine and the history — so graph.getNode(canonicalId) still misses and this is the read that does not.

      Parameters

      Returns string | undefined

    • Drop a waiting re-run and keep triaging what is on show.

      Parameters

      • pivotId: string

      Returns void

    • How much of nodes one pivot applies to — the origin it would actually be run with. Empty when it does not apply at all, and always empty for an origin-less pivot. What a surface reads to say "3 of the 5 you picked".

      Parameters

      • id: string
      • nodes: Node[]

      Returns Node[]

    • Write ingested runs back to their source systems. Runs go one at a time, and a run whose pivot declares no save is never among them.

      Each run is sent only what is still unsaved, so a retry is the same call.

      Parameters

      • Optionaltarget: string

        A run id for one run, a pivot id for every unsaved run of that pivot, or nothing for all of them.

      Returns Promise<PivotSaveReport>

    • Promote a waiting re-run to the set on show.

      Parameters

      • pivotId: string

      Returns void

    • What a Save would send, exact rather than advisory. Narrowed to one pivot's runs when given an id — what a triage pane's own line counts.

      Parameters

      • OptionalpivotId: string

      Returns { edges: number; nodes: number }

    Properties

    candidateCeiling: number

    Absolute ceiling on what one fetch may stage. Refuses rather than truncates.

    quickIngestLimit: number

    How many new candidates a one-click pivot lands without triage — what the UI manager's quickPivot passes as PivotRunOptions.autoIngestUpTo. A run made any other way is unaffected.

    rimBadge: PivotRimBadge

    What the library draws on a node's rim for its pivots.