Default WorkPool card View service.
export class class PoolCardDefault WorkPool card View service.
PoolCard extends import ViewView.const Card: View.FulfilledPrototype<
View.ViewProps,
View.WithSize<{
readonly _tag: "Card"
}>
>
Size-chrome add-ons —
SizeChrome
with size fulfilled.
Mint with View.Card.Tag<Self, Props?>()(key, statics?).
Matcher components are not these — use View.react(…).Card or
useMatch
.
Card.Prototype<ViewProps, {}, WithSize<{ readonly _tag: "Card"; }>>.Tag: <PoolCard, {}>() => <K, NewStatics>(key: K, statics?: NewStatics | undefined) => ServiceClass<PoolCard, K, View.View<{
readonly tag: View.ViewTag;
readonly name?: string | undefined;
}>> & { readonly [K in keyof (View.WithSize<{
readonly _tag: "Card";
}> & NewStatics)]: (View.WithSize<{
readonly _tag: "Card";
}> & NewStatics)[K]; } & {
readonly Type: {
readonly tag: View.ViewTag;
readonly name?: string | undefined;
};
}
Mint a Context.Service class handle (Effect Service<Self, View<Props>>()("key")).
NewProps — extra component props (additive)
statics — optional runtime statics (spec, …); merged onto the class
- Annotate skins with
PoolCard["Service"] (no typeof)
Does not change this Prototype’s Requirement type — returns a class.
For bind, the class still needs .size (use
Card
/
Detail
/
Page
, or pass size in statics / fulfill via .Prototype() first).
Tag<class PoolCardDefault WorkPool card View service.
PoolCard>()(
"hyperlink/view/pool-card",
{ spec: {
status: Marked<Method<undefined, Struct<{
readonly sizes: Struct<{
readonly high: Number;
readonly normal: Number;
readonly low: Number;
}>;
readonly paused: Boolean;
readonly inFlight: Number;
readonly completed: Number;
readonly phase: Literals<readonly ["running", "draining", "off"]>;
}>, Never, true, MethodAnnotations & {
description: string;
}, Derive>, {
readonly _tag: "ref";
}>;
size: Marked<Method<undefined, Number, Never, true, MethodAnnotations & {
...;
}, Derive>, {
readonly _tag: "ref";
}>;
... 6 more ...;
metrics: {
...;
};
}
spec: import WorkPoolWorkPool.const queueControlSpec: {
status: Marked<Method<undefined, Struct<{
readonly sizes: Struct<{
readonly high: Number;
readonly normal: Number;
readonly low: Number;
}>;
readonly paused: Boolean;
readonly inFlight: Number;
readonly completed: Number;
readonly phase: Literals<readonly ["running", "draining", "off"]>;
}>, Never, true, MethodAnnotations & {
description: string;
}, Derive>, {
readonly _tag: "ref";
}>;
size: Marked<Method<undefined, Number, Never, true, MethodAnnotations & {
...;
}, Derive>, {
readonly _tag: "ref";
}>;
... 6 more ...;
metrics: {
...;
};
}
The queue control + observation contract: the fixed-schema verbs of a queue handle,
shared by every queue instance. The data-plane (item-typed) verbs are added in a later
slice. Mirrors the matching members of the engine handle API (QueueHandleApi).
queueControlSpec },
) {}