@camstack/addon-post-analysis 1.2.603 → 1.2.608
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{clip-model-registry-D0-VNIW5.js → clip-model-registry-B11yS32V.js} +548 -39
- package/dist/{clip-model-registry-lQ7QWjLf.mjs → clip-model-registry-BItfTZEx.mjs} +507 -40
- package/dist/embedding-encoder/index.js +1 -1
- package/dist/embedding-encoder/index.mjs +1 -1
- package/dist/pipeline-analytics/_stub.js +2 -2
- package/dist/pipeline-analytics/{_virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_analytics_widgets-CXNgqP3Y.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_analytics_widgets-LGLlz5Sk.mjs} +3 -3
- package/dist/pipeline-analytics/_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-iXmJsQ9Y.mjs +26 -0
- package/dist/pipeline-analytics/_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-Cm7pZeMH.mjs +26 -0
- package/dist/pipeline-analytics/{hostInit-BMh6UjVP.mjs → hostInit-Cko0y33G.mjs} +3 -3
- package/dist/pipeline-analytics/index.js +67507 -67010
- package/dist/pipeline-analytics/index.mjs +67117 -66620
- package/dist/pipeline-analytics/remoteEntry.js +1 -1
- package/package.json +1 -1
- package/dist/pipeline-analytics/_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-1AlitJg2.mjs +0 -26
- package/dist/pipeline-analytics/_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-Cfj8Mv5X.mjs +0 -26
|
@@ -30,7 +30,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
30
30
|
}) : target, mod));
|
|
31
31
|
//#endregion
|
|
32
32
|
let node_crypto = require("node:crypto");
|
|
33
|
-
//#region ../types/dist/event-category-
|
|
33
|
+
//#region ../types/dist/event-category-DOl51-Ij.mjs
|
|
34
34
|
var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
35
35
|
EventCategory["SystemBoot"] = "system.boot";
|
|
36
36
|
EventCategory["SystemAddonsReady"] = "system.addons-ready";
|
|
@@ -109,9 +109,18 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
|
109
109
|
/**
|
|
110
110
|
* The node's one-shot runner boot check (D877): planned runners against the
|
|
111
111
|
* process service, `degraded` when any is failed, refused or missing. The
|
|
112
|
-
* alert centre turns it into one
|
|
112
|
+
* alert centre turns it into one critical alert.
|
|
113
113
|
*/
|
|
114
114
|
EventCategory["SystemRunnerCheck"] = "system.runner-check";
|
|
115
|
+
/**
|
|
116
|
+
* An alert EPISODE opened or closed, emitted by the alert centre for alerts
|
|
117
|
+
* of severity `critical` or `error` (`AlertEpisodePayload`). The alert
|
|
118
|
+
* centre sends no notification of its own: Notification Center turns this
|
|
119
|
+
* into the `alert-critical` / `alert-error` / `alert-critical-resolved`
|
|
120
|
+
* system-event kinds, and reconciles from the alerts store because a bus
|
|
121
|
+
* event may be dropped (D8, D11).
|
|
122
|
+
*/
|
|
123
|
+
EventCategory["AlertEpisode"] = "alert.episode";
|
|
115
124
|
EventCategory["AddonError"] = "addon.error";
|
|
116
125
|
EventCategory["AddonPageReady"] = "addon.page-ready";
|
|
117
126
|
EventCategory["AddonWidgetReady"] = "addon.widget-ready";
|
|
@@ -5634,7 +5643,7 @@ var ZodIssueCode = {
|
|
|
5634
5643
|
var ZodFirstPartyTypeKind;
|
|
5635
5644
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5636
5645
|
//#endregion
|
|
5637
|
-
//#region ../types/dist/sleep-
|
|
5646
|
+
//#region ../types/dist/sleep-BxjU_fJM.mjs
|
|
5638
5647
|
/**
|
|
5639
5648
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5640
5649
|
* window to float samples (D455).
|
|
@@ -12826,6 +12835,41 @@ var StorageCleanupJobSchema = object({
|
|
|
12826
12835
|
});
|
|
12827
12836
|
var StorageCleanupStatusInputSchema = object({ jobId: string().optional() });
|
|
12828
12837
|
/**
|
|
12838
|
+
* Start a mover only when no single-location repoint holds an overlapping
|
|
12839
|
+
* physical root. Asks BEFORE (cheap refusal, no job) and AFTER registering the
|
|
12840
|
+
* job: the repoint announces its claim and then lists movers, so a mover that
|
|
12841
|
+
* registers first is seen by it and one that registers second sees the claim —
|
|
12842
|
+
* neither side can miss the other (2026-10-20: a repoint and a relocate job
|
|
12843
|
+
* moved and deleted the same event media with no lock between them).
|
|
12844
|
+
*
|
|
12845
|
+
* Fail CLOSED: a clearance that cannot be asked refuses the start.
|
|
12846
|
+
*/
|
|
12847
|
+
async function startMoverUnderClearance(deps) {
|
|
12848
|
+
const refuse = (detail) => {
|
|
12849
|
+
throw new Error(`mover refused: ${detail}`);
|
|
12850
|
+
};
|
|
12851
|
+
const ask = async () => {
|
|
12852
|
+
try {
|
|
12853
|
+
return await deps.clearance(deps.locationIds);
|
|
12854
|
+
} catch (err) {
|
|
12855
|
+
return refuse(`the storage orchestrator could not be asked (${err instanceof Error ? err.message : String(err)})`);
|
|
12856
|
+
}
|
|
12857
|
+
};
|
|
12858
|
+
const blocked = (answer) => `a re-point of "${answer.repointLocationId ?? "a location"}" holds an overlapping storage root`;
|
|
12859
|
+
const before = await ask();
|
|
12860
|
+
if (!before.clear) return refuse(blocked(before));
|
|
12861
|
+
const jobId = deps.start();
|
|
12862
|
+
const after = await ask().catch((err) => {
|
|
12863
|
+
deps.cancel(jobId);
|
|
12864
|
+
throw err;
|
|
12865
|
+
});
|
|
12866
|
+
if (!after.clear) {
|
|
12867
|
+
deps.cancel(jobId);
|
|
12868
|
+
return refuse(blocked(after));
|
|
12869
|
+
}
|
|
12870
|
+
return jobId;
|
|
12871
|
+
}
|
|
12872
|
+
/**
|
|
12829
12873
|
* The storage-location STATE MODEL (D385) — one typed state, one policy module.
|
|
12830
12874
|
*
|
|
12831
12875
|
* A location's state used to be split across two authorities: the typed
|
|
@@ -14669,7 +14713,14 @@ var AlertSeveritySchema = _enum([
|
|
|
14669
14713
|
]);
|
|
14670
14714
|
var AlertActionSchema = object({
|
|
14671
14715
|
label: string(),
|
|
14672
|
-
href: string().optional()
|
|
14716
|
+
href: string().optional(),
|
|
14717
|
+
/**
|
|
14718
|
+
* How `href` is followed. Absent / `app`: an admin-ui route (client-side).
|
|
14719
|
+
* `server`: a route the HUB serves (an addon HTTP route such as an OAuth
|
|
14720
|
+
* start) — the browser must leave the SPA with a full navigation, because
|
|
14721
|
+
* the SPA has no such route and would bounce to the home page.
|
|
14722
|
+
*/
|
|
14723
|
+
navigation: _enum(["app", "server"]).optional()
|
|
14673
14724
|
});
|
|
14674
14725
|
var AlertStatusSchema = _enum([
|
|
14675
14726
|
"active",
|
|
@@ -19061,7 +19112,11 @@ var deviceDiscoveryCapability = {
|
|
|
19061
19112
|
};
|
|
19062
19113
|
/**
|
|
19063
19114
|
* `device-adoption` — generic discovery + adoption surface,
|
|
19064
|
-
* system-scoped
|
|
19115
|
+
* system-scoped collection (one provider per integration addon), routed
|
|
19116
|
+
* by explicit `{ addonId }` on direct `deviceAdoption.*` calls — the same
|
|
19117
|
+
* pin model as `connection-test`. The admin UI keeps using
|
|
19118
|
+
* `deviceManager.adoption*` (which already threads `addonId`). The de-HA-ified
|
|
19119
|
+
* successor to `ha-discovery`:
|
|
19065
19120
|
* keyed by `integrationId` (the addon resolves integrationId → broker
|
|
19066
19121
|
* internally) rather than a connection-specific `brokerId`, and it
|
|
19067
19122
|
* REUSES the shared `DiscoveredChildDevice` candidate type from
|
|
@@ -43539,6 +43594,9 @@ var NcSystemEventKindSchema = _enum([
|
|
|
43539
43594
|
"server-updated",
|
|
43540
43595
|
"export-completed",
|
|
43541
43596
|
"backup-completed",
|
|
43597
|
+
"alert-critical",
|
|
43598
|
+
"alert-error",
|
|
43599
|
+
"alert-critical-resolved",
|
|
43542
43600
|
"camera-online",
|
|
43543
43601
|
"camera-offline",
|
|
43544
43602
|
"camera-disabled",
|
|
@@ -45104,6 +45162,18 @@ var NC_CONDITION_CATALOG = [
|
|
|
45104
45162
|
value: "backup-completed",
|
|
45105
45163
|
label: "Backup completed"
|
|
45106
45164
|
},
|
|
45165
|
+
{
|
|
45166
|
+
value: "alert-critical",
|
|
45167
|
+
label: "Critical alert raised"
|
|
45168
|
+
},
|
|
45169
|
+
{
|
|
45170
|
+
value: "alert-error",
|
|
45171
|
+
label: "Error alert raised"
|
|
45172
|
+
},
|
|
45173
|
+
{
|
|
45174
|
+
value: "alert-critical-resolved",
|
|
45175
|
+
label: "Critical alert resolved"
|
|
45176
|
+
},
|
|
45107
45177
|
{
|
|
45108
45178
|
value: "alarm-arm-refused",
|
|
45109
45179
|
label: "Alarm arm refused"
|
|
@@ -54407,7 +54477,10 @@ method(StorageMigrationInputSchema, StorageMigrationPlanSchema, { auth: "admin"
|
|
|
54407
54477
|
}), method(object({ jobId: string().optional() }), StorageMigrationJobSchema.nullable(), { auth: "admin" }), method(object({ jobId: string() }), object({ cancelled: boolean() }), {
|
|
54408
54478
|
kind: "mutation",
|
|
54409
54479
|
auth: "admin"
|
|
54410
|
-
}), method(object({}), array(StorageMigrationMoverSchema).readonly(), { auth: "admin" }), method(object({
|
|
54480
|
+
}), method(object({}), array(StorageMigrationMoverSchema).readonly(), { auth: "admin" }), method(object({ locationIds: array(string()).readonly() }), object({
|
|
54481
|
+
clear: boolean(),
|
|
54482
|
+
repointLocationId: string().optional()
|
|
54483
|
+
}), { auth: "admin" }), method(object({}), array(StorageMigrationResidueSchema).readonly(), { auth: "admin" }), method(StorageMigrationDrainInputSchema, object({ jobId: string() }), {
|
|
54411
54484
|
kind: "mutation",
|
|
54412
54485
|
auth: "admin"
|
|
54413
54486
|
}), method(StorageCleanupInputSchema, object({ jobId: string() }), {
|
|
@@ -58746,6 +58819,11 @@ onStatusChanged: { data: object({
|
|
|
58746
58819
|
*
|
|
58747
58820
|
* `kind: 'poll'` — cloud REST APIs typically have no push channel; the
|
|
58748
58821
|
* provider refreshes the slice on an interval and eagerly after commands.
|
|
58822
|
+
*
|
|
58823
|
+
* UNKNOWN IS NOT OFF. Every field the appliance reports separately is
|
|
58824
|
+
* nullable: `null` means "not known right now" (the appliance has not said,
|
|
58825
|
+
* the link is down, or the description does not carry it) and is never
|
|
58826
|
+
* rendered or exported as `false` / `0`. `availability` says why.
|
|
58749
58827
|
*/
|
|
58750
58828
|
var DishwasherStateSchema = _enum([
|
|
58751
58829
|
"idle",
|
|
@@ -58755,35 +58833,155 @@ var DishwasherStateSchema = _enum([
|
|
|
58755
58833
|
"error",
|
|
58756
58834
|
"unavailable"
|
|
58757
58835
|
]);
|
|
58836
|
+
/**
|
|
58837
|
+
* The appliance's own operation state, uncollapsed. `state` above is the coarse
|
|
58838
|
+
* view for compact surfaces; this is what the appliance said.
|
|
58839
|
+
*/
|
|
58840
|
+
var DishwasherOperationStateSchema = _enum([
|
|
58841
|
+
"Inactive",
|
|
58842
|
+
"Ready",
|
|
58843
|
+
"DelayedStart",
|
|
58844
|
+
"Run",
|
|
58845
|
+
"Pause",
|
|
58846
|
+
"ActionRequired",
|
|
58847
|
+
"Finished",
|
|
58848
|
+
"Error",
|
|
58849
|
+
"Aborting"
|
|
58850
|
+
]);
|
|
58851
|
+
/**
|
|
58852
|
+
* Why fields may be `null`:
|
|
58853
|
+
* - `available` — the link is up and the description is loaded;
|
|
58854
|
+
* - `offline` — the local link is down (values are unknown, not last-known);
|
|
58855
|
+
* - `description-missing` — the link is up but the appliance's description could not
|
|
58856
|
+
* be loaded, so its values cannot be decoded.
|
|
58857
|
+
*/
|
|
58858
|
+
var DishwasherAvailabilitySchema = _enum([
|
|
58859
|
+
"available",
|
|
58860
|
+
"offline",
|
|
58861
|
+
"description-missing"
|
|
58862
|
+
]);
|
|
58758
58863
|
var DishwasherConsumableLevelSchema = _enum([
|
|
58759
58864
|
"ok",
|
|
58760
58865
|
"low",
|
|
58761
58866
|
"empty"
|
|
58762
58867
|
]);
|
|
58763
58868
|
var DishwasherStatusSchema = object({
|
|
58869
|
+
availability: DishwasherAvailabilitySchema,
|
|
58870
|
+
/** Coarse state for compact surfaces; `unavailable` whenever the appliance state is not known. */
|
|
58764
58871
|
state: DishwasherStateSchema,
|
|
58765
|
-
/**
|
|
58872
|
+
/** The appliance's operation state as reported; null when not known. */
|
|
58873
|
+
operationState: DishwasherOperationStateSchema.nullable(),
|
|
58874
|
+
/** Feature key of the ACTIVE (running) program, or null when none runs / not known. */
|
|
58766
58875
|
program: string().nullable(),
|
|
58767
|
-
/**
|
|
58876
|
+
/** Feature key of the SELECTED program (what Start would run), or null when none / not known. */
|
|
58877
|
+
selectedProgram: string().nullable(),
|
|
58878
|
+
/** Feature keys of the programs the appliance currently offers — drives the UI selector. */
|
|
58768
58879
|
availablePrograms: array(string()),
|
|
58769
|
-
/**
|
|
58770
|
-
|
|
58880
|
+
/** Seconds remaining on the active cycle, or null when not running / not known. */
|
|
58881
|
+
remainingSeconds: number().int().nonnegative().nullable(),
|
|
58882
|
+
/** Seconds the delayed start is set to (time until the cycle starts), or null. */
|
|
58883
|
+
delayedStartSeconds: number().int().nonnegative().nullable(),
|
|
58771
58884
|
/** Cycle completion 0..100, or null when not applicable. */
|
|
58772
58885
|
progressPercent: number().min(0).max(100).nullable(),
|
|
58773
|
-
/** True when the door is reported open. */
|
|
58774
|
-
doorOpen: boolean(),
|
|
58775
|
-
/** True when
|
|
58776
|
-
|
|
58777
|
-
/**
|
|
58778
|
-
|
|
58886
|
+
/** True when the door is reported open; null when the door state is not known. */
|
|
58887
|
+
doorOpen: boolean().nullable(),
|
|
58888
|
+
/** True when the door is latched (locked) during a cycle; null when not reported. */
|
|
58889
|
+
doorLocked: boolean().nullable(),
|
|
58890
|
+
/** True when remote start is allowed (door closed, power on, etc.); null when not known. */
|
|
58891
|
+
remoteStartAllowed: boolean().nullable(),
|
|
58892
|
+
/** True when the appliance accepts remote control now; null when not known. */
|
|
58893
|
+
remoteControlActive: boolean().nullable(),
|
|
58894
|
+
/** True while somebody operates the appliance at its panel; null when not reported. */
|
|
58895
|
+
localControlActive: boolean().nullable(),
|
|
58896
|
+
/** Main power / switched-on state; null when not known. */
|
|
58897
|
+
powerOn: boolean().nullable(),
|
|
58898
|
+
/** The raw power state (`On`, `Off`, `Standby`, …); null when not known. */
|
|
58899
|
+
powerState: string().nullable(),
|
|
58779
58900
|
saltLevel: DishwasherConsumableLevelSchema.nullable(),
|
|
58780
58901
|
rinseAidLevel: DishwasherConsumableLevelSchema.nullable(),
|
|
58781
|
-
|
|
58782
|
-
|
|
58902
|
+
/** Option states: null when the appliance does not expose the option or has not said. */
|
|
58903
|
+
halfLoad: boolean().nullable(),
|
|
58904
|
+
hygienePlus: boolean().nullable(),
|
|
58905
|
+
/** Extra dry option when the appliance exposes it. */
|
|
58906
|
+
extraDry: boolean().nullable(),
|
|
58907
|
+
/** Intensive zone (lower basket) when the appliance exposes it. */
|
|
58908
|
+
intensiveZone: boolean().nullable(),
|
|
58909
|
+
/** VarioSpeed / VarioSpeed+ when the appliance exposes it. */
|
|
58910
|
+
varioSpeedPlus: boolean().nullable(),
|
|
58911
|
+
/** Child lock (controls disabled on the appliance); null when not known. */
|
|
58912
|
+
childLock: boolean().nullable(),
|
|
58913
|
+
/** Feature keys of the events currently raised (salt low, rinse aid low, program finished, …). */
|
|
58914
|
+
activeEvents: array(string()),
|
|
58915
|
+
/** Numeric error code when the appliance reports one; null otherwise. */
|
|
58783
58916
|
errorCode: number().nullable(),
|
|
58917
|
+
/** Name of the raised alert-level event while the appliance is in error; null otherwise. */
|
|
58784
58918
|
errorLabel: string().nullable(),
|
|
58919
|
+
/** Ms epoch of the last value received from the appliance; 0 = never. */
|
|
58785
58920
|
lastFetchedAt: number()
|
|
58786
58921
|
});
|
|
58922
|
+
var DeviceIdSchema = number().int().nonnegative();
|
|
58923
|
+
/** A value a program option or setting can take. */
|
|
58924
|
+
var DishwasherValueSchema = union([
|
|
58925
|
+
boolean(),
|
|
58926
|
+
string(),
|
|
58927
|
+
number()
|
|
58928
|
+
]);
|
|
58929
|
+
var DishwasherAccessSchema = _enum([
|
|
58930
|
+
"none",
|
|
58931
|
+
"read",
|
|
58932
|
+
"readWrite",
|
|
58933
|
+
"writeOnly",
|
|
58934
|
+
"readStatic"
|
|
58935
|
+
]);
|
|
58936
|
+
/**
|
|
58937
|
+
* One option or setting the appliance declares, with the constraints its description
|
|
58938
|
+
* gives. A `readWrite` descriptor that is `available` is what `setOption` accepts.
|
|
58939
|
+
*/
|
|
58940
|
+
var DishwasherOptionDescriptorSchema = object({
|
|
58941
|
+
/** Feature key (`Dishcare.Dishwasher.Option.ExtraDry`). */
|
|
58942
|
+
key: string(),
|
|
58943
|
+
/** Last segment of the key, for display. */
|
|
58944
|
+
name: string(),
|
|
58945
|
+
type: _enum([
|
|
58946
|
+
"boolean",
|
|
58947
|
+
"number",
|
|
58948
|
+
"enum",
|
|
58949
|
+
"string"
|
|
58950
|
+
]),
|
|
58951
|
+
access: DishwasherAccessSchema,
|
|
58952
|
+
/** The appliance reports this entity as currently available. */
|
|
58953
|
+
available: boolean(),
|
|
58954
|
+
/** Unit the description declares for a number; null when it declares none. */
|
|
58955
|
+
unit: string().nullable(),
|
|
58956
|
+
min: number().nullable(),
|
|
58957
|
+
max: number().nullable(),
|
|
58958
|
+
step: number().nullable(),
|
|
58959
|
+
/** Allowed members of an enum; null for other types. */
|
|
58960
|
+
enumValues: array(string()).nullable(),
|
|
58961
|
+
defaultValue: DishwasherValueSchema.nullable()
|
|
58962
|
+
});
|
|
58963
|
+
var DishwasherProgramSchema = object({
|
|
58964
|
+
/** Feature key (`Dishcare.Dishwasher.Program.Eco50`) — what `setProgram` / `start` take. */
|
|
58965
|
+
key: string(),
|
|
58966
|
+
name: string(),
|
|
58967
|
+
/** The appliance currently offers this program. */
|
|
58968
|
+
available: boolean(),
|
|
58969
|
+
/** The options this program lists, with the program-level access / availability / default. */
|
|
58970
|
+
options: array(DishwasherOptionDescriptorSchema)
|
|
58971
|
+
});
|
|
58972
|
+
var DishwasherOptionsSchema = object({
|
|
58973
|
+
availability: DishwasherAvailabilitySchema,
|
|
58974
|
+
/** What the appliance can be told to do, from the commands its description declares. */
|
|
58975
|
+
supportsStart: boolean(),
|
|
58976
|
+
supportsPause: boolean(),
|
|
58977
|
+
supportsResume: boolean(),
|
|
58978
|
+
supportsStop: boolean(),
|
|
58979
|
+
supportsPower: boolean(),
|
|
58980
|
+
/** Every program the description lists, with its options. */
|
|
58981
|
+
programs: array(DishwasherProgramSchema),
|
|
58982
|
+
/** Every option and setting entity the description lists (programs reference these by key). */
|
|
58983
|
+
options: array(DishwasherOptionDescriptorSchema)
|
|
58984
|
+
});
|
|
58787
58985
|
var dishwasherCapability = {
|
|
58788
58986
|
name: "dishwasher",
|
|
58789
58987
|
scope: "device",
|
|
@@ -58791,58 +58989,102 @@ var dishwasherCapability = {
|
|
|
58791
58989
|
mode: "singleton",
|
|
58792
58990
|
deviceTypes: [DeviceType.Dishwasher],
|
|
58793
58991
|
methods: {
|
|
58794
|
-
|
|
58992
|
+
/**
|
|
58993
|
+
* Start a program. Without `program` the selected one starts. `options` are
|
|
58994
|
+
* option feature keys; each is checked against the program's constraints.
|
|
58995
|
+
*/
|
|
58996
|
+
start: method(object({
|
|
58997
|
+
deviceId: DeviceIdSchema,
|
|
58998
|
+
program: string().min(1).optional(),
|
|
58999
|
+
options: record(string(), DishwasherValueSchema).optional()
|
|
59000
|
+
}), _void(), {
|
|
58795
59001
|
kind: "mutation",
|
|
58796
59002
|
auth: "protected"
|
|
58797
59003
|
}),
|
|
58798
|
-
pause: method(object({ deviceId:
|
|
59004
|
+
pause: method(object({ deviceId: DeviceIdSchema }), _void(), {
|
|
58799
59005
|
kind: "mutation",
|
|
58800
59006
|
auth: "protected"
|
|
58801
59007
|
}),
|
|
58802
|
-
|
|
59008
|
+
resume: method(object({ deviceId: DeviceIdSchema }), _void(), {
|
|
58803
59009
|
kind: "mutation",
|
|
58804
59010
|
auth: "protected"
|
|
58805
59011
|
}),
|
|
59012
|
+
stop: method(object({ deviceId: DeviceIdSchema }), _void(), {
|
|
59013
|
+
kind: "mutation",
|
|
59014
|
+
auth: "protected"
|
|
59015
|
+
}),
|
|
59016
|
+
/** Select (not start) a program; refused when the appliance does not offer it. */
|
|
58806
59017
|
setProgram: method(object({
|
|
58807
|
-
deviceId:
|
|
59018
|
+
deviceId: DeviceIdSchema,
|
|
58808
59019
|
program: string().min(1)
|
|
58809
59020
|
}), _void(), {
|
|
58810
59021
|
kind: "mutation",
|
|
58811
59022
|
auth: "protected"
|
|
58812
59023
|
}),
|
|
58813
59024
|
setPower: method(object({
|
|
58814
|
-
deviceId:
|
|
59025
|
+
deviceId: DeviceIdSchema,
|
|
58815
59026
|
on: boolean()
|
|
58816
59027
|
}), _void(), {
|
|
58817
59028
|
kind: "mutation",
|
|
58818
59029
|
auth: "protected"
|
|
58819
59030
|
}),
|
|
58820
59031
|
setHalfLoad: method(object({
|
|
58821
|
-
deviceId:
|
|
59032
|
+
deviceId: DeviceIdSchema,
|
|
58822
59033
|
on: boolean()
|
|
58823
59034
|
}), _void(), {
|
|
58824
59035
|
kind: "mutation",
|
|
58825
59036
|
auth: "protected"
|
|
58826
59037
|
}),
|
|
58827
59038
|
setHygienePlus: method(object({
|
|
58828
|
-
deviceId:
|
|
59039
|
+
deviceId: DeviceIdSchema,
|
|
59040
|
+
on: boolean()
|
|
59041
|
+
}), _void(), {
|
|
59042
|
+
kind: "mutation",
|
|
59043
|
+
auth: "protected"
|
|
59044
|
+
}),
|
|
59045
|
+
setExtraDry: method(object({
|
|
59046
|
+
deviceId: DeviceIdSchema,
|
|
58829
59047
|
on: boolean()
|
|
58830
59048
|
}), _void(), {
|
|
58831
59049
|
kind: "mutation",
|
|
58832
59050
|
auth: "protected"
|
|
58833
59051
|
}),
|
|
59052
|
+
setIntensiveZone: method(object({
|
|
59053
|
+
deviceId: DeviceIdSchema,
|
|
59054
|
+
on: boolean()
|
|
59055
|
+
}), _void(), {
|
|
59056
|
+
kind: "mutation",
|
|
59057
|
+
auth: "protected"
|
|
59058
|
+
}),
|
|
59059
|
+
setVarioSpeedPlus: method(object({
|
|
59060
|
+
deviceId: DeviceIdSchema,
|
|
59061
|
+
on: boolean()
|
|
59062
|
+
}), _void(), {
|
|
59063
|
+
kind: "mutation",
|
|
59064
|
+
auth: "protected"
|
|
59065
|
+
}),
|
|
59066
|
+
setChildLock: method(object({
|
|
59067
|
+
deviceId: DeviceIdSchema,
|
|
59068
|
+
on: boolean()
|
|
59069
|
+
}), _void(), {
|
|
59070
|
+
kind: "mutation",
|
|
59071
|
+
auth: "protected"
|
|
59072
|
+
}),
|
|
59073
|
+
/**
|
|
59074
|
+
* Write any option or setting by feature key. Refused when the description does
|
|
59075
|
+
* not list it, it is not writable or not available now, or the value is outside
|
|
59076
|
+
* its declared range / members.
|
|
59077
|
+
*/
|
|
58834
59078
|
setOption: method(object({
|
|
58835
|
-
deviceId:
|
|
59079
|
+
deviceId: DeviceIdSchema,
|
|
58836
59080
|
key: string().min(1),
|
|
58837
|
-
value:
|
|
58838
|
-
boolean(),
|
|
58839
|
-
string(),
|
|
58840
|
-
number()
|
|
58841
|
-
])
|
|
59081
|
+
value: DishwasherValueSchema
|
|
58842
59082
|
}), _void(), {
|
|
58843
59083
|
kind: "mutation",
|
|
58844
59084
|
auth: "protected"
|
|
58845
|
-
})
|
|
59085
|
+
}),
|
|
59086
|
+
/** What this appliance can do, from its own description — the UI is derived from it. */
|
|
59087
|
+
getOptions: method(object({ deviceId: DeviceIdSchema }), DishwasherOptionsSchema, { auth: "protected" })
|
|
58846
59088
|
},
|
|
58847
59089
|
status: {
|
|
58848
59090
|
schema: DishwasherStatusSchema,
|
|
@@ -72530,6 +72772,12 @@ Object.freeze({
|
|
|
72530
72772
|
addonId: null,
|
|
72531
72773
|
access: "view"
|
|
72532
72774
|
},
|
|
72775
|
+
"dishwasher.getOptions": {
|
|
72776
|
+
capName: "dishwasher",
|
|
72777
|
+
capScope: "device",
|
|
72778
|
+
addonId: null,
|
|
72779
|
+
access: "view"
|
|
72780
|
+
},
|
|
72533
72781
|
"dishwasher.getStatus": {
|
|
72534
72782
|
capName: "dishwasher",
|
|
72535
72783
|
capScope: "device",
|
|
@@ -72542,6 +72790,24 @@ Object.freeze({
|
|
|
72542
72790
|
addonId: null,
|
|
72543
72791
|
access: "create"
|
|
72544
72792
|
},
|
|
72793
|
+
"dishwasher.resume": {
|
|
72794
|
+
capName: "dishwasher",
|
|
72795
|
+
capScope: "device",
|
|
72796
|
+
addonId: null,
|
|
72797
|
+
access: "create"
|
|
72798
|
+
},
|
|
72799
|
+
"dishwasher.setChildLock": {
|
|
72800
|
+
capName: "dishwasher",
|
|
72801
|
+
capScope: "device",
|
|
72802
|
+
addonId: null,
|
|
72803
|
+
access: "create"
|
|
72804
|
+
},
|
|
72805
|
+
"dishwasher.setExtraDry": {
|
|
72806
|
+
capName: "dishwasher",
|
|
72807
|
+
capScope: "device",
|
|
72808
|
+
addonId: null,
|
|
72809
|
+
access: "create"
|
|
72810
|
+
},
|
|
72545
72811
|
"dishwasher.setHalfLoad": {
|
|
72546
72812
|
capName: "dishwasher",
|
|
72547
72813
|
capScope: "device",
|
|
@@ -72554,6 +72820,12 @@ Object.freeze({
|
|
|
72554
72820
|
addonId: null,
|
|
72555
72821
|
access: "create"
|
|
72556
72822
|
},
|
|
72823
|
+
"dishwasher.setIntensiveZone": {
|
|
72824
|
+
capName: "dishwasher",
|
|
72825
|
+
capScope: "device",
|
|
72826
|
+
addonId: null,
|
|
72827
|
+
access: "create"
|
|
72828
|
+
},
|
|
72557
72829
|
"dishwasher.setOption": {
|
|
72558
72830
|
capName: "dishwasher",
|
|
72559
72831
|
capScope: "device",
|
|
@@ -72572,6 +72844,12 @@ Object.freeze({
|
|
|
72572
72844
|
addonId: null,
|
|
72573
72845
|
access: "create"
|
|
72574
72846
|
},
|
|
72847
|
+
"dishwasher.setVarioSpeedPlus": {
|
|
72848
|
+
capName: "dishwasher",
|
|
72849
|
+
capScope: "device",
|
|
72850
|
+
addonId: null,
|
|
72851
|
+
access: "create"
|
|
72852
|
+
},
|
|
72575
72853
|
"dishwasher.start": {
|
|
72576
72854
|
capName: "dishwasher",
|
|
72577
72855
|
capScope: "device",
|
|
@@ -77018,6 +77296,12 @@ Object.freeze({
|
|
|
77018
77296
|
addonId: null,
|
|
77019
77297
|
access: "view"
|
|
77020
77298
|
},
|
|
77299
|
+
"storageMigration.moverClearance": {
|
|
77300
|
+
capName: "storage-migration",
|
|
77301
|
+
capScope: "system",
|
|
77302
|
+
addonId: null,
|
|
77303
|
+
access: "view"
|
|
77304
|
+
},
|
|
77021
77305
|
"storageMigration.movers": {
|
|
77022
77306
|
capName: "storage-migration",
|
|
77023
77307
|
capScope: "system",
|
|
@@ -79211,6 +79495,11 @@ Object.freeze({
|
|
|
79211
79495
|
form: "single",
|
|
79212
79496
|
optional: false
|
|
79213
79497
|
}],
|
|
79498
|
+
"dishwasher.getOptions": [{
|
|
79499
|
+
name: "deviceId",
|
|
79500
|
+
form: "single",
|
|
79501
|
+
optional: false
|
|
79502
|
+
}],
|
|
79214
79503
|
"dishwasher.getStatus": [{
|
|
79215
79504
|
name: "deviceId",
|
|
79216
79505
|
form: "single",
|
|
@@ -79221,6 +79510,21 @@ Object.freeze({
|
|
|
79221
79510
|
form: "single",
|
|
79222
79511
|
optional: false
|
|
79223
79512
|
}],
|
|
79513
|
+
"dishwasher.resume": [{
|
|
79514
|
+
name: "deviceId",
|
|
79515
|
+
form: "single",
|
|
79516
|
+
optional: false
|
|
79517
|
+
}],
|
|
79518
|
+
"dishwasher.setChildLock": [{
|
|
79519
|
+
name: "deviceId",
|
|
79520
|
+
form: "single",
|
|
79521
|
+
optional: false
|
|
79522
|
+
}],
|
|
79523
|
+
"dishwasher.setExtraDry": [{
|
|
79524
|
+
name: "deviceId",
|
|
79525
|
+
form: "single",
|
|
79526
|
+
optional: false
|
|
79527
|
+
}],
|
|
79224
79528
|
"dishwasher.setHalfLoad": [{
|
|
79225
79529
|
name: "deviceId",
|
|
79226
79530
|
form: "single",
|
|
@@ -79231,6 +79535,11 @@ Object.freeze({
|
|
|
79231
79535
|
form: "single",
|
|
79232
79536
|
optional: false
|
|
79233
79537
|
}],
|
|
79538
|
+
"dishwasher.setIntensiveZone": [{
|
|
79539
|
+
name: "deviceId",
|
|
79540
|
+
form: "single",
|
|
79541
|
+
optional: false
|
|
79542
|
+
}],
|
|
79234
79543
|
"dishwasher.setOption": [{
|
|
79235
79544
|
name: "deviceId",
|
|
79236
79545
|
form: "single",
|
|
@@ -79246,6 +79555,11 @@ Object.freeze({
|
|
|
79246
79555
|
form: "single",
|
|
79247
79556
|
optional: false
|
|
79248
79557
|
}],
|
|
79558
|
+
"dishwasher.setVarioSpeedPlus": [{
|
|
79559
|
+
name: "deviceId",
|
|
79560
|
+
form: "single",
|
|
79561
|
+
optional: false
|
|
79562
|
+
}],
|
|
79249
79563
|
"dishwasher.start": [{
|
|
79250
79564
|
name: "deviceId",
|
|
79251
79565
|
form: "single",
|
|
@@ -81398,7 +81712,7 @@ function systemEventFilterApplies(kind, filter) {
|
|
|
81398
81712
|
switch (filter) {
|
|
81399
81713
|
case "deviceIds": return kind.startsWith("device-") || kind.startsWith("stream-") || kind === "detection-blind" || kind.startsWith("recording-") || kind === "alarm-triggered";
|
|
81400
81714
|
case "deviceTypes": return kind.startsWith("device-") || kind === "detection-blind";
|
|
81401
|
-
case "nodeIds": return kind.startsWith("node-") || kind === "addon-crash-loop" || kind === "addon-update-available" || kind === "addon-updated" || kind === "server-update-available" || kind === "wrapper-update-available" || kind === "server-updated" || kind.startsWith("storage-location-");
|
|
81715
|
+
case "nodeIds": return kind.startsWith("node-") || kind === "addon-crash-loop" || kind === "addon-update-available" || kind === "addon-updated" || kind === "server-update-available" || kind === "wrapper-update-available" || kind === "server-updated" || kind.startsWith("storage-location-") || kind.startsWith("alert-");
|
|
81402
81716
|
case "packageNames": return kind.endsWith("update-available") || kind === "addon-updated" || kind === "node-updating" || kind === "server-updated";
|
|
81403
81717
|
case "consumableLowPercent": return NC_CONSUMABLE_SYSTEM_EVENT_KINDS.includes(kind);
|
|
81404
81718
|
}
|
|
@@ -81458,6 +81772,9 @@ var NC_SYSTEM_EVENT_FAMILY = {
|
|
|
81458
81772
|
"wrapper-update-available": "system",
|
|
81459
81773
|
"backup-completed": "system",
|
|
81460
81774
|
"export-completed": "system",
|
|
81775
|
+
"alert-critical": "system",
|
|
81776
|
+
"alert-error": "system",
|
|
81777
|
+
"alert-critical-resolved": "system",
|
|
81461
81778
|
"storage-location-low": "system",
|
|
81462
81779
|
"storage-location-critical": "system",
|
|
81463
81780
|
"storage-location-ok": "system",
|
|
@@ -81600,6 +81917,16 @@ var NC_SYSTEM_EVENT_KIND_GROUP_SPECS = [
|
|
|
81600
81917
|
"storage-location-ok"
|
|
81601
81918
|
]
|
|
81602
81919
|
},
|
|
81920
|
+
{
|
|
81921
|
+
id: "alerts",
|
|
81922
|
+
family: "system",
|
|
81923
|
+
label: "Alerts",
|
|
81924
|
+
kinds: [
|
|
81925
|
+
"alert-critical",
|
|
81926
|
+
"alert-error",
|
|
81927
|
+
"alert-critical-resolved"
|
|
81928
|
+
]
|
|
81929
|
+
},
|
|
81603
81930
|
{
|
|
81604
81931
|
id: "alarm",
|
|
81605
81932
|
family: "alarm",
|
|
@@ -82411,6 +82738,96 @@ function sensorRaisedOf(kind, value) {
|
|
|
82411
82738
|
const raw = Object.entries(value).find(([key]) => key === field)?.[1];
|
|
82412
82739
|
return typeof raw === "boolean" ? raw : void 0;
|
|
82413
82740
|
}
|
|
82741
|
+
/**
|
|
82742
|
+
* An alert EPISODE as a notification subject.
|
|
82743
|
+
*
|
|
82744
|
+
* The alert centre sends nothing of its own. A critical or error alert reaches
|
|
82745
|
+
* the operator through Notification Center system-event rules, and this file is
|
|
82746
|
+
* the one vocabulary the two sides share: the alert centre mints the episode
|
|
82747
|
+
* identity and announces its two edges on the bus (`alert.episode`), and
|
|
82748
|
+
* Notification Center derives the same identity when it RECONCILES from the
|
|
82749
|
+
* alerts store, because a bus event may be dropped (D8, D11).
|
|
82750
|
+
*
|
|
82751
|
+
* ## Episode identity
|
|
82752
|
+
*
|
|
82753
|
+
* `metadata.episodeId`, minted by the alert centre when an alert opens (new, or
|
|
82754
|
+
* re-opened after it was completed/dismissed, or its emitter changed
|
|
82755
|
+
* `metadata.episodeKey`) and kept through every re-emit while it stays open. An
|
|
82756
|
+
* alert row written before the alert centre minted ids has none: its episode is
|
|
82757
|
+
* `<id>@<createdAt>`, derived here so both sides agree.
|
|
82758
|
+
*/
|
|
82759
|
+
/** The bus payload of `EventCategory.AlertEpisode`. */
|
|
82760
|
+
var AlertEpisodePayloadSchema = object({
|
|
82761
|
+
phase: _enum(["raised", "resolved"]),
|
|
82762
|
+
episodeId: string().min(1),
|
|
82763
|
+
alertId: string().min(1),
|
|
82764
|
+
severity: AlertSeveritySchema,
|
|
82765
|
+
category: string(),
|
|
82766
|
+
title: string(),
|
|
82767
|
+
message: string(),
|
|
82768
|
+
sourceType: string().optional(),
|
|
82769
|
+
sourceId: string().optional(),
|
|
82770
|
+
nodeId: string().optional(),
|
|
82771
|
+
/** The alert's own action link (where the operator acts on it), when it has one. */
|
|
82772
|
+
actionUrl: string().optional(),
|
|
82773
|
+
at: number()
|
|
82774
|
+
});
|
|
82775
|
+
/** The payload of an `alert.episode` event's `data`, or `null` when it is not one. */
|
|
82776
|
+
function parseAlertEpisodePayload(data) {
|
|
82777
|
+
const parsed = AlertEpisodePayloadSchema.safeParse(data);
|
|
82778
|
+
return parsed.success ? parsed.data : null;
|
|
82779
|
+
}
|
|
82780
|
+
/** An episode is closed once its alert is completed or dismissed. */
|
|
82781
|
+
function isAlertEpisodeOpen(status) {
|
|
82782
|
+
return status !== "completed" && status !== "dismissed";
|
|
82783
|
+
}
|
|
82784
|
+
/** Only these severities are ever announced. */
|
|
82785
|
+
function isAlertEpisodeSeverity(severity) {
|
|
82786
|
+
return severity === "critical" || severity === "error";
|
|
82787
|
+
}
|
|
82788
|
+
function alertEpisodeId(alert) {
|
|
82789
|
+
const minted = alert.metadata?.["episodeId"];
|
|
82790
|
+
return typeof minted === "string" && minted.length > 0 ? minted : `${alert.id}@${String(alert.createdAt)}`;
|
|
82791
|
+
}
|
|
82792
|
+
/** The node an alert is about, from the places emitters put it. */
|
|
82793
|
+
function alertNodeId(alert) {
|
|
82794
|
+
const direct = alert.metadata?.["nodeId"];
|
|
82795
|
+
if (typeof direct === "string") return direct;
|
|
82796
|
+
const runner = alert.metadata?.["runner"];
|
|
82797
|
+
if (typeof runner === "object" && runner !== null && "nodeId" in runner) {
|
|
82798
|
+
const id = runner.nodeId;
|
|
82799
|
+
if (typeof id === "string") return id;
|
|
82800
|
+
}
|
|
82801
|
+
return alert.source?.type === "node" ? alert.source.id : void 0;
|
|
82802
|
+
}
|
|
82803
|
+
/**
|
|
82804
|
+
* The system-event kind of an episode edge, or `null` when none is announced
|
|
82805
|
+
* (an `error` episode announces its opening only).
|
|
82806
|
+
*/
|
|
82807
|
+
function alertEpisodeKind(severity, phase) {
|
|
82808
|
+
if (severity === "critical") return phase === "raised" ? "alert-critical" : "alert-critical-resolved";
|
|
82809
|
+
if (severity === "error" && phase === "raised") return "alert-error";
|
|
82810
|
+
return null;
|
|
82811
|
+
}
|
|
82812
|
+
function alertEpisodePayload(alert, phase, at) {
|
|
82813
|
+
const nodeId = alertNodeId(alert);
|
|
82814
|
+
return {
|
|
82815
|
+
phase,
|
|
82816
|
+
episodeId: alertEpisodeId(alert),
|
|
82817
|
+
alertId: alert.id,
|
|
82818
|
+
severity: alert.severity,
|
|
82819
|
+
category: alert.category,
|
|
82820
|
+
title: alert.title,
|
|
82821
|
+
message: alert.message,
|
|
82822
|
+
...alert.source !== void 0 ? {
|
|
82823
|
+
sourceType: alert.source.type,
|
|
82824
|
+
sourceId: alert.source.id
|
|
82825
|
+
} : {},
|
|
82826
|
+
...nodeId !== void 0 ? { nodeId } : {},
|
|
82827
|
+
...alert.action?.href !== void 0 ? { actionUrl: alert.action.href } : {},
|
|
82828
|
+
at
|
|
82829
|
+
};
|
|
82830
|
+
}
|
|
82414
82831
|
var RULE_BODY_ONLY = ["body"];
|
|
82415
82832
|
var RULE_TEXT = ["title", "body"];
|
|
82416
82833
|
var BATTERY = ["device-battery-low", "device-battery-normal"];
|
|
@@ -82420,6 +82837,11 @@ var TANK = [
|
|
|
82420
82837
|
"device-tank-full",
|
|
82421
82838
|
"device-tank-normal"
|
|
82422
82839
|
];
|
|
82840
|
+
var ALERT_EPISODE = [
|
|
82841
|
+
"alert-critical",
|
|
82842
|
+
"alert-error",
|
|
82843
|
+
"alert-critical-resolved"
|
|
82844
|
+
];
|
|
82423
82845
|
var UPDATES = [
|
|
82424
82846
|
"addon-update-available",
|
|
82425
82847
|
"server-update-available",
|
|
@@ -82944,7 +83366,8 @@ var NC_TEMPLATE_VARS = [
|
|
|
82944
83366
|
"server-updated",
|
|
82945
83367
|
"storage-location-low",
|
|
82946
83368
|
"storage-location-critical",
|
|
82947
|
-
"storage-location-ok"
|
|
83369
|
+
"storage-location-ok",
|
|
83370
|
+
...ALERT_EPISODE
|
|
82948
83371
|
]
|
|
82949
83372
|
},
|
|
82950
83373
|
{
|
|
@@ -82966,7 +83389,8 @@ var NC_TEMPLATE_VARS = [
|
|
|
82966
83389
|
"server-updated",
|
|
82967
83390
|
"storage-location-low",
|
|
82968
83391
|
"storage-location-critical",
|
|
82969
|
-
"storage-location-ok"
|
|
83392
|
+
"storage-location-ok",
|
|
83393
|
+
...ALERT_EPISODE
|
|
82970
83394
|
]
|
|
82971
83395
|
},
|
|
82972
83396
|
{
|
|
@@ -83033,7 +83457,7 @@ var NC_TEMPLATE_VARS = [
|
|
|
83033
83457
|
families: ["rule"],
|
|
83034
83458
|
fields: [...RULE_TEXT],
|
|
83035
83459
|
kinds: ["system"],
|
|
83036
|
-
systemEventKinds: ["recording-degraded"]
|
|
83460
|
+
systemEventKinds: ["recording-degraded", ...ALERT_EPISODE]
|
|
83037
83461
|
},
|
|
83038
83462
|
{
|
|
83039
83463
|
name: "locationName",
|
|
@@ -83230,13 +83654,53 @@ var NC_TEMPLATE_VARS = [
|
|
|
83230
83654
|
},
|
|
83231
83655
|
{
|
|
83232
83656
|
name: "title",
|
|
83233
|
-
label: "Export title",
|
|
83657
|
+
label: "Export or alert title",
|
|
83234
83658
|
example: "Ingresso 08:00",
|
|
83235
83659
|
group: "system",
|
|
83236
83660
|
families: ["rule"],
|
|
83237
83661
|
fields: [...RULE_TEXT],
|
|
83238
83662
|
kinds: ["system"],
|
|
83239
|
-
systemEventKinds: ["export-completed"]
|
|
83663
|
+
systemEventKinds: ["export-completed", ...ALERT_EPISODE]
|
|
83664
|
+
},
|
|
83665
|
+
{
|
|
83666
|
+
name: "severity",
|
|
83667
|
+
label: "Alert severity",
|
|
83668
|
+
example: "critical",
|
|
83669
|
+
group: "system",
|
|
83670
|
+
families: ["rule"],
|
|
83671
|
+
fields: [...RULE_TEXT],
|
|
83672
|
+
kinds: ["system"],
|
|
83673
|
+
systemEventKinds: [...ALERT_EPISODE]
|
|
83674
|
+
},
|
|
83675
|
+
{
|
|
83676
|
+
name: "category",
|
|
83677
|
+
label: "Alert category",
|
|
83678
|
+
example: "addon.runner-failed",
|
|
83679
|
+
group: "system",
|
|
83680
|
+
families: ["rule"],
|
|
83681
|
+
fields: [...RULE_TEXT],
|
|
83682
|
+
kinds: ["system"],
|
|
83683
|
+
systemEventKinds: [...ALERT_EPISODE]
|
|
83684
|
+
},
|
|
83685
|
+
{
|
|
83686
|
+
name: "source",
|
|
83687
|
+
label: "Alert source (addon, node or runner)",
|
|
83688
|
+
example: "recorder",
|
|
83689
|
+
group: "system",
|
|
83690
|
+
families: ["rule"],
|
|
83691
|
+
fields: [...RULE_TEXT],
|
|
83692
|
+
kinds: ["system"],
|
|
83693
|
+
systemEventKinds: [...ALERT_EPISODE]
|
|
83694
|
+
},
|
|
83695
|
+
{
|
|
83696
|
+
name: "actionUrl",
|
|
83697
|
+
label: "Alert action link",
|
|
83698
|
+
example: "/system/addons",
|
|
83699
|
+
group: "system",
|
|
83700
|
+
families: ["rule"],
|
|
83701
|
+
fields: [...RULE_TEXT],
|
|
83702
|
+
kinds: ["system"],
|
|
83703
|
+
systemEventKinds: [...ALERT_EPISODE]
|
|
83240
83704
|
},
|
|
83241
83705
|
{
|
|
83242
83706
|
name: "exportId",
|
|
@@ -83447,7 +83911,10 @@ var NC_TEMPLATE_HELD_BACK_SYSTEM_EVENT_KINDS = [
|
|
|
83447
83911
|
"device-tank-full",
|
|
83448
83912
|
"device-tank-normal",
|
|
83449
83913
|
"node-restarting",
|
|
83450
|
-
"node-updating"
|
|
83914
|
+
"node-updating",
|
|
83915
|
+
"alert-critical",
|
|
83916
|
+
"alert-error",
|
|
83917
|
+
"alert-critical-resolved"
|
|
83451
83918
|
];
|
|
83452
83919
|
/**
|
|
83453
83920
|
* The catalog as `getTemplateCatalog` SERVES it: every descriptor, with the
|
|
@@ -86247,6 +86714,24 @@ Object.defineProperty(exports, "alarmPanelCapability", {
|
|
|
86247
86714
|
return alarmPanelCapability;
|
|
86248
86715
|
}
|
|
86249
86716
|
});
|
|
86717
|
+
Object.defineProperty(exports, "alertEpisodeId", {
|
|
86718
|
+
enumerable: true,
|
|
86719
|
+
get: function() {
|
|
86720
|
+
return alertEpisodeId;
|
|
86721
|
+
}
|
|
86722
|
+
});
|
|
86723
|
+
Object.defineProperty(exports, "alertEpisodeKind", {
|
|
86724
|
+
enumerable: true,
|
|
86725
|
+
get: function() {
|
|
86726
|
+
return alertEpisodeKind;
|
|
86727
|
+
}
|
|
86728
|
+
});
|
|
86729
|
+
Object.defineProperty(exports, "alertEpisodePayload", {
|
|
86730
|
+
enumerable: true,
|
|
86731
|
+
get: function() {
|
|
86732
|
+
return alertEpisodePayload;
|
|
86733
|
+
}
|
|
86734
|
+
});
|
|
86250
86735
|
Object.defineProperty(exports, "applyBlockingEdit", {
|
|
86251
86736
|
enumerable: true,
|
|
86252
86737
|
get: function() {
|
|
@@ -86541,6 +87026,18 @@ Object.defineProperty(exports, "isAlarmControllableCap", {
|
|
|
86541
87026
|
return isAlarmControllableCap;
|
|
86542
87027
|
}
|
|
86543
87028
|
});
|
|
87029
|
+
Object.defineProperty(exports, "isAlertEpisodeOpen", {
|
|
87030
|
+
enumerable: true,
|
|
87031
|
+
get: function() {
|
|
87032
|
+
return isAlertEpisodeOpen;
|
|
87033
|
+
}
|
|
87034
|
+
});
|
|
87035
|
+
Object.defineProperty(exports, "isAlertEpisodeSeverity", {
|
|
87036
|
+
enumerable: true,
|
|
87037
|
+
get: function() {
|
|
87038
|
+
return isAlertEpisodeSeverity;
|
|
87039
|
+
}
|
|
87040
|
+
});
|
|
86544
87041
|
Object.defineProperty(exports, "isAppLinkBase", {
|
|
86545
87042
|
enumerable: true,
|
|
86546
87043
|
get: function() {
|
|
@@ -86715,6 +87212,12 @@ Object.defineProperty(exports, "occupancyScope", {
|
|
|
86715
87212
|
return occupancyScope;
|
|
86716
87213
|
}
|
|
86717
87214
|
});
|
|
87215
|
+
Object.defineProperty(exports, "parseAlertEpisodePayload", {
|
|
87216
|
+
enumerable: true,
|
|
87217
|
+
get: function() {
|
|
87218
|
+
return parseAlertEpisodePayload;
|
|
87219
|
+
}
|
|
87220
|
+
});
|
|
86718
87221
|
Object.defineProperty(exports, "parseProcStatus", {
|
|
86719
87222
|
enumerable: true,
|
|
86720
87223
|
get: function() {
|
|
@@ -86889,6 +87392,12 @@ Object.defineProperty(exports, "sleep", {
|
|
|
86889
87392
|
return sleep;
|
|
86890
87393
|
}
|
|
86891
87394
|
});
|
|
87395
|
+
Object.defineProperty(exports, "startMoverUnderClearance", {
|
|
87396
|
+
enumerable: true,
|
|
87397
|
+
get: function() {
|
|
87398
|
+
return startMoverUnderClearance;
|
|
87399
|
+
}
|
|
87400
|
+
});
|
|
86892
87401
|
Object.defineProperty(exports, "storageOccupancyCapability", {
|
|
86893
87402
|
enumerable: true,
|
|
86894
87403
|
get: function() {
|