拓展 / PivotManager
接口: PivotManager
拓展运行时:注册表、两个提供者调用其取消和缓存、缩小门、等待分类的候选集以及其来源的摄取。与分析师可以逆转的所有其他事情一样,逆转是graph.history的工作。
它没有 UI。这里的所有内容都可以从控制台驱动 - 具有 autoIngest: true 的拓展是端到端的,没有单个窗格 - 并且分类窗格和拓展轨道模式是此状态的读取器,而不是它的所有者。
达到Graph.pivots。
实施
访问器
rimBadge
Getter 签名
get rimBadge():
PivotRimBadge
库在节点的边缘为其拓展绘制了什么:每个拓展一个徽章表示潜力,一个徽章用于所有拓展,或者什么都没有。通过图形选项中的pivotRimBadge进行设置,或者稍后在此处进行更改。
分配将每个节点标记为脏节点,就像 setPotential 对节点所做的那样 — 边缘在下一次渲染时重新绘制,因此如果没有其他事情要进行,请调用 graph.renderer.update()。
返回值
Setter 签名
set rimBadge(
mode):void
库在节点的边缘绘制什么作为其拓展。
参数
mode
返回值
void
实现接口
PivotManagerLike.rimBadge
rimBadgeShown
Getter 签名
get rimBadgeShown():
boolean
现在是否绘制轮辋徽章。
返回值
boolean
rimBadgeVisible
Getter 签名
get rimBadgeVisible():
PivotRimBadgeVisibility
当 rimBadge 的边缘徽章绘制时:仅当拓展模式打开、始终或从不时。通过图形选项中的pivotRimBadgeVisible进行设置,或者稍后在此处进行更改。
像rimBadge一样,分配将每个节点标记为脏节点。
返回值
Setter 签名
set rimBadgeVisible(
visibility):void
当那些边缘徽章被绘制时。
参数
visibility
返回值
void
实现接口
PivotManagerLike.rimBadgeVisible
saveControls
Getter 签名
get saveControls():
boolean
拓展面板和分类窗格是否提供自己的 N 未保存·保存。关闭时,消费者只能通过 save 进行写回,与账本和 unsavedCount 一样,这两种方式都有效。通过图形选项中的pivotSaveControls进行设置,或者稍后在此处进行更改。
返回值
boolean
Setter 签名
set saveControls(
shown):void
透视面板和分类窗格是否提供自己的保存。
参数
shown
boolean
返回值
void
实现接口
PivotManagerLike.saveControls
size
Getter 签名
get size():
number
注册了多少个拓展 - 拓展导轨模式的门控读取的内容。
返回值
number
方法
all()
all():
PivotDefinition[]
每个注册的拓展,按注册顺序。
返回值
实现接口
PivotManagerLike.all
applicableCount()
applicableCount(
node):number
有多少个主元适用于一个节点 - 当没有为其声明任何内容时,'summary' 边缘徽章算作什么。
已记住,因为 rim 会在每次渲染时为每个节点询问这一点,而答案是每个注册拓展一次 appliesTo 调用:在一百个提供者和一千个节点上,每次询问是一帧十万次调用。每当注册表或图表的节点发生变化时,备忘录就会被删除,因此读取任何else的谓词可能会变得陈旧——对于边缘上的提示来说是可以接受的,并且面板始终是准确的答案。
参数
node
返回值
number
实现接口
PivotManagerLike.applicableCount
cachedSummary()
cachedSummary(
id,nodes,narrowing):PivotSummary|undefined
该问题的缓存摘要(如果有)。让表面绘制一个它已经知道的数字,而无需再次询问。
参数
id
string
nodes
Node[] = []
narrowing
PivotNarrowing = {}
返回值
PivotSummary | undefined
cancel()
cancel(
pivotId?,kind?):void
中止正在进行的提供程序调用:一个拓展或每个拓展,并且可选地仅一种。
kind 可以让离开一个表面停止它所提出的问题,而不取消它委托的工作 - fetch 已经有自己的候选集和一个显示它的窗格,所以默默地放弃它会丢弃没有人要求丢失的结果。
参数
pivotId?
string
kind?
"summarize" | "fetch"
返回值
void
实现接口
PivotManagerLike.cancel
cancelFetch()
cancelFetch(
pivotId):void
取消飞行中的抓取。候选集随之而来;一切都没有上演。
参数
pivotId
string
返回值
void
candidates()
candidates(
pivotId):PivotCandidateSet|undefined
如果有的话,候选人们会提出一个关键点。
参数
pivotId
string
返回值
PivotCandidateSet | undefined
canonicalId()
canonicalId(
element):string|undefined
源系统在分配元素时为其分配的 id。
参数
element
返回值
string | undefined
实现接口
PivotManagerLike.canonicalId
discard()
discard(
pivotId):void
放下舞台布景,不要拒绝任何东西。关闭窗格并不是一个判决:任何从未被拒绝的内容都会在下次运行时再次提供。
参数
pivotId
string
返回值
void
dismissPending()
dismissPending(
pivotId):void
放弃等待重播并继续放映。没有什么会被拒绝:下一轮选举会再次提供这些候选人。
参数
pivotId
string
返回值
void
实现接口
PivotManagerLike.dismissPending
for()
for(
nodes):PivotDefinition[]
适用于这个起源。空原点会产生无原点的拓展(搜索、导入、暂存),仅此而已,因为没有选择的选择驱动拓展没有任何内容可运行。
仅适用于源的 part 的拓展位于:混合域和 IP 的选择也提供仅域提供商,并且每个提供商都针对其保留的节点运行。
参数
nodes
Node[]
返回值
实现接口
PivotManagerLike.for
get()
get(
id):PivotDefinition|undefined
参数
id
string
返回值
PivotDefinition | undefined
实现接口
PivotManagerLike.get
ingest()
ingest(
pivotId,trigger,options):Promise<PivotRunOutcome>
提交一组已标记的候选者。
纯粹的附加性:画布上已有的 id 会被跳过,永远不会被覆盖,并且仅通过 graph.history 或 graph.removeBySource 进行删除。整批经过一次onBeforeIngest,然后以一个dataBatchChanged的形式落地。
group 将平台折叠成组,每种类型一个 (graph.simplify.groupLanding),默认为 ingestGrouped。
参数
pivotId
string
trigger
"auto" | "triage"
options
group?
boolean
返回值
Promise<PivotRunOutcome>
invalidate()
invalidate(
pivotId?,nodes?):void
删除缓存的摘要:所有摘要、一个拓展表或仅那些询问特定节点的摘要。库会缓存,因为多选摘要是一个聚合体,没有任何东西可以分解,但只有消费者知道他们的后端何时发生变化。
参数
pivotId?
string
nodes?
Node[]
返回值
void
实现接口
PivotManagerLike.invalidate
isSavable()
isSavable(
element):boolean
该元素是否来自其主元声明 save 的运行。
参数
element
返回值
boolean
实现接口
PivotManagerLike.isSavable
isSaved()
isSaved(
element):boolean
写入源系统。 false 既适用于仍在等待的元素,也适用于其主元永远无法将其写入任何地方的元素 - isSavable 是区分这两者的问题。
参数
element
返回值
boolean
实现接口
PivotManagerLike.isSaved
mark()
mark(
pivotId,id,marked):void
标记或取消标记要摄取的候选者。故意保持沉默:对于数百行,在每个刻度上重新渲染窗格会失去分析师的位置,因此调用者会更新它刚刚更改的行。
参数
pivotId
string
id
string
marked
boolean = true
返回值
void
markAll()
markAll(
pivotId,marked):void
标记每一个可登陆的候选者——“全选”决定的是什么。
参数
pivotId
string
marked
boolean = true
返回值
void
on()
on(
listener): () =>void
订阅拓展状态更改 - 注册表、摘要、分阶段候选者、运行堆栈。返回一个处理器。
参数
listener
(change) => void
返回值
():
void
返回值
void
originFor()
originFor(
id,nodes):Node[]
一个主元适用于 nodes 的多少。当它不适用时为空,对于无源拓展为空,根据定义,无源拓展不询问任何内容。
参数
id
string
nodes
Node[]
返回值
Node[]
实现接口
PivotManagerLike.originFor
register()
register(
definition): () =>void
注册一个拓展。返回一个处理器;调用它两次是无操作的。与库中其他地方一样,重复的 ID 会被跳过并带有警告。
参数
definition
返回值
():
void
返回值
void
实现接口
PivotManagerLike.register
reject()
reject(
pivotId,ids):void
明确拒绝候选人。记住会话,按拓展键入:在一个拓展下被拒绝的候选者仍然由另一个拓展提供,该候选者在不同的分析上下文中询问它。
参数
pivotId
string
ids
string[]
返回值
void
rejectedCount()
rejectedCount(
pivotId):number
本届会议有多少候选人因这一支点而被拒绝。
参数
pivotId
string
返回值
number
rejectedIds()
rejectedIds(
pivotId):string[]
该拓展表被拒绝的候选 ID — 窗格按需显示的内容。
参数
pivotId
string
返回值
string[]
rejectedRows()
rejectedRows(
pivotId):PivotRejection[]
拒绝本身,行和所有,最新的最后。列出它们的表面表明:一旦承载它的运行消失,ID 就不再命名。
参数
pivotId
string
返回值
rejectRemaining()
rejectRemaining(
pivotId):void
拒绝这组中尚未分类的所有内容 - 将 1,800 个分类到 12 个并忽略其余的仍然是一个姿态。
参数
pivotId
string
返回值
void
run()
run(
id,nodes,narrowing,options):Promise<PivotRunOutcome>
运行拓展:根据其上限对广告计数进行门控,获取,然后获取结果 (autoIngest) 或将其暂存以进行分类。
在交接时解决——分阶段运行不会等待分析师。结果的 runId 是记录生成的摄取的 ID,因此它是 graph.history.undo 的句柄。
参数
id
string
nodes
Node[] = []
narrowing
PivotNarrowing = {}
options
PivotRunOptions = {}
返回值
Promise<PivotRunOutcome>
实现接口
PivotManagerLike.run
save()
save(
target?,options?):Promise<PivotSaveReport>
将摄取的运行写回其拓展所涉及的系统:一次运行,或每次可保存的运行,但仍有未保存的内容。
库负责记账,而不是传输——运行创建了哪些元素,其中哪些元素已被写入,以及重试应该携带什么。写入本身是 PivotDefinition.save 的,并且声明没有的拓展将被完全跳过而不是算作失败。
一次运行一个:正在写入的后端不受六个并行批次的帮助,并且顺序传递使报告准确。
参数
target?
一次运行的运行 ID,该拓展的每个未保存运行的拓展 ID,{ elements } 仅适用于这些,或者对于所有这些都没有。
string | PivotSaveSelection
options?
PivotSaveOptions = {}
interactive: true 当分析师要求时,可以提示保存。
返回值
Promise<PivotSaveReport>
实现接口
PivotManagerLike.save
showPending()
showPending(
pivotId):void
推动一场等待重演:其候选者将成为节目中的一组,而它所取代的候选者上的标记也会随之而去。当重新运行仍在获取时,无操作——交换一个没有任何内容的集合将是整个机制要避免的静默丢弃。
参数
pivotId
string
返回值
void
实现接口
PivotManagerLike.showPending
staged()
staged():
PivotCandidateSet[]
每个分阶段的候选集——每个已运行但尚未清除的拓展都有一个。
返回值
summarize()
summarize(
id,nodes,narrowing):Promise<PivotSummary|undefined>
询问拓展那里有什么。在不接触提供者的情况下提供缓存的答案,并取代任何已经针对同一数据点进行的汇总。
当调用被取代或取消时,解决 undefined — 没有任何可渲染的内容,也不会出现错误。抛出拒绝的提供者,因此表面可以显示失败并提供重试。
参数
id
string
nodes
Node[] = []
narrowing
PivotNarrowing = {}
返回值
Promise<PivotSummary | undefined>
unregister()
unregister(
id):void
取消注册拓展,删除其缓存的摘要及其暂存的候选者。
参数
id
string
返回值
void
实现接口
PivotManagerLike.unregister
unreject()
unreject(
pivotId,id):void
收回拒绝。无论候选者是否仍处于暂存状态,都会到达会话内存 - 先前运行的拒绝会抑制该行而不是显示它,并且收回它是再次提供该行的唯一方法。
参数
pivotId
string
id
string
返回值
void
unrejectAll()
unrejectAll(
pivotId):void
接受这个支点所带来的每一次拒绝。走出走得太远的Reject all remaining的出路,而逐一恢复则不然。
参数
pivotId
string
返回值
void
unsaved()
unsaved():
PivotRun[]
可保存运行时元素仍在画布上且尚未写入。
返回值
PivotRun[]
实现接口
PivotManagerLike.unsaved
unsavedCount()
unsavedCount(
pivotId?):object
一次保存会发送什么——跨越每一次可保存的跑动,或者一个拓展的跑动。
参数
pivotId?
string
返回值
object
edges
edges:
number
nodes
nodes:
number
实现接口
PivotManagerLike.unsavedCount
属性
candidateCeiling
candidateCeiling:
number=10_000
fetch可以上演的绝对上限。返回更多的提供商是refused——没有任何内容被上演,没有任何内容被截断,并且分析师被告知数字。它是关于候选对象的内存,而不是虚拟化的表。通过图形选项中的pivotCandidateCeiling覆盖它。
实现接口
PivotManagerLike.candidateCeiling
ingestGrouped
ingestGrouped:
boolean=false
当调用者没有说明时,摄取是否会折叠成组,每种类型一个。通过图形选项中的pivotIngestGrouped进行设置,或者稍后在此处进行更改。当图形没有简化时不执行任何操作。
markUnsaved
markUnsaved:
boolean=false
运行创建且尚未写回的节点是否带有 pvt-node-unsaved 类。通过图形选项中的pivotMarkUnsaved进行设置,或者稍后在此处进行更改。
quickIngestLimit
quickIngestLimit:
number=50
一键拓展无需分类即可登陆多少新候选人。这个数字与画布有关,而不是点击:撤消会收回摄取,而不是模拟围绕它所做的布局,因此限制大致是图表可以吸收的内容,并且仍然是分析师正在阅读的图表。通过图形选项中的pivotQuickIngestLimit覆盖它。
实现接口
PivotManagerLike.quickIngestLimit