@camstack/addon-post-analysis 1.2.337 → 1.2.338
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-CD0UYoAb.mjs → clip-model-registry-BLUVLdlY.mjs} +264 -124
- package/dist/{clip-model-registry-CML1YOOa.js → clip-model-registry-BcSLJ8aL.js} +264 -124
- 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-DGaCYQ8R.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_analytics_widgets-DDfv_NZB.mjs} +2 -2
- package/dist/pipeline-analytics/_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-D3jDbheU.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-BRmdbHeK.mjs +26 -0
- package/dist/pipeline-analytics/{hostInit-Dlhtn22B.mjs → hostInit-BTA95n_5.mjs} +2 -2
- package/dist/pipeline-analytics/index.js +2 -2
- package/dist/pipeline-analytics/index.mjs +2 -2
- 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-D7NMYqUM.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-bIOxWlPv.mjs +0 -26
|
@@ -5482,7 +5482,7 @@ var ZodIssueCode = {
|
|
|
5482
5482
|
var ZodFirstPartyTypeKind;
|
|
5483
5483
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5484
5484
|
//#endregion
|
|
5485
|
-
//#region ../types/dist/sleep-
|
|
5485
|
+
//#region ../types/dist/sleep-C16NCZR2.mjs
|
|
5486
5486
|
/**
|
|
5487
5487
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5488
5488
|
* window to float samples (D455).
|
|
@@ -19485,6 +19485,96 @@ var filesystemBrowseCapability = {
|
|
|
19485
19485
|
})
|
|
19486
19486
|
}
|
|
19487
19487
|
};
|
|
19488
|
+
/** The central link domain the viewer app claims (Universal Links / App Links). */
|
|
19489
|
+
var CAMSTACK_APP_LINK_ORIGIN = "https://camstack.zentik.app";
|
|
19490
|
+
/** Where the hub serves the viewer SPA. */
|
|
19491
|
+
var HUB_VIEWER_MOUNT = "/viewer/camstack";
|
|
19492
|
+
/** True when `baseUrl` names the CamStack app link rather than a hub address. */
|
|
19493
|
+
function isAppLinkBase(baseUrl) {
|
|
19494
|
+
if (baseUrl === null || baseUrl === void 0 || baseUrl === "") return false;
|
|
19495
|
+
try {
|
|
19496
|
+
return new URL(baseUrl).origin === CAMSTACK_APP_LINK_ORIGIN;
|
|
19497
|
+
} catch {
|
|
19498
|
+
return false;
|
|
19499
|
+
}
|
|
19500
|
+
}
|
|
19501
|
+
/**
|
|
19502
|
+
* The base a viewer link is built on, from the flagged notification address:
|
|
19503
|
+
* the effective address is the explicit choice, else AUTO's `resolved`. The
|
|
19504
|
+
* one reading of that answer — the NC's tap and the Network page's preview
|
|
19505
|
+
* both go through it.
|
|
19506
|
+
*/
|
|
19507
|
+
function viewerLinkBaseOf(endpoint) {
|
|
19508
|
+
const flagged = endpoint.baseUrl ?? endpoint.resolved;
|
|
19509
|
+
return isAppLinkBase(flagged) ? {
|
|
19510
|
+
form: "app",
|
|
19511
|
+
hubBaseUrl: endpoint.appLinkHub ?? null
|
|
19512
|
+
} : {
|
|
19513
|
+
form: "hub",
|
|
19514
|
+
hubBaseUrl: flagged
|
|
19515
|
+
};
|
|
19516
|
+
}
|
|
19517
|
+
/**
|
|
19518
|
+
* Reduce a base URL to the bare origin the central page accepts as `hub=`,
|
|
19519
|
+
* or `null` when it cannot be one: not http(s), carries credentials, or does
|
|
19520
|
+
* not parse. A path/query/fragment is dropped — the central page mounts the
|
|
19521
|
+
* viewer under the origin itself.
|
|
19522
|
+
*/
|
|
19523
|
+
function toAppLinkHubOrigin(baseUrl) {
|
|
19524
|
+
let parsed;
|
|
19525
|
+
try {
|
|
19526
|
+
parsed = new URL(baseUrl);
|
|
19527
|
+
} catch {
|
|
19528
|
+
return null;
|
|
19529
|
+
}
|
|
19530
|
+
if (parsed.protocol !== "https:" && parsed.protocol !== "http:") return null;
|
|
19531
|
+
if (parsed.username !== "" || parsed.password !== "") return null;
|
|
19532
|
+
if (parsed.hostname === "") return null;
|
|
19533
|
+
return parsed.origin;
|
|
19534
|
+
}
|
|
19535
|
+
/** The viewer route for a destination, or null when it names nothing. */
|
|
19536
|
+
function viewerRoute(destination) {
|
|
19537
|
+
switch (destination.kind) {
|
|
19538
|
+
case "camera": {
|
|
19539
|
+
if (!Number.isInteger(destination.deviceId) || destination.deviceId <= 0) return null;
|
|
19540
|
+
const at = destination.atMs;
|
|
19541
|
+
return {
|
|
19542
|
+
path: `/camera/${String(destination.deviceId)}`,
|
|
19543
|
+
query: at !== void 0 && Number.isFinite(at) ? [["at", String(Math.trunc(at))]] : []
|
|
19544
|
+
};
|
|
19545
|
+
}
|
|
19546
|
+
case "events": return {
|
|
19547
|
+
path: "/events",
|
|
19548
|
+
query: []
|
|
19549
|
+
};
|
|
19550
|
+
case "notifications": return {
|
|
19551
|
+
path: "/notifications",
|
|
19552
|
+
query: []
|
|
19553
|
+
};
|
|
19554
|
+
}
|
|
19555
|
+
}
|
|
19556
|
+
function encodeQuery(query) {
|
|
19557
|
+
if (query.length === 0) return "";
|
|
19558
|
+
return `?${query.map(([k, v]) => `${encodeURIComponent(k)}=${encodeURIComponent(v)}`).join("&")}`;
|
|
19559
|
+
}
|
|
19560
|
+
/**
|
|
19561
|
+
* The link for a viewer destination, or `null` when none can be minted: an
|
|
19562
|
+
* unknown destination, or the `hub` form with no reachable base (a dead link
|
|
19563
|
+
* is worse than none).
|
|
19564
|
+
*/
|
|
19565
|
+
function buildViewerLink(input) {
|
|
19566
|
+
const route = viewerRoute(input.destination);
|
|
19567
|
+
if (route === null) return null;
|
|
19568
|
+
const raw = input.base.hubBaseUrl;
|
|
19569
|
+
const base = raw === null ? "" : raw.replace(/\/+$/, "");
|
|
19570
|
+
if (input.base.form === "app") {
|
|
19571
|
+
const origin = base === "" ? null : toAppLinkHubOrigin(base);
|
|
19572
|
+
const query = origin === null ? route.query : [...route.query, ["hub", origin]];
|
|
19573
|
+
return `${CAMSTACK_APP_LINK_ORIGIN}${route.path}${encodeQuery(query)}`;
|
|
19574
|
+
}
|
|
19575
|
+
if (base === "" || isAppLinkBase(base)) return null;
|
|
19576
|
+
return `${base}${HUB_VIEWER_MOUNT}${route.path}${encodeQuery(route.query)}`;
|
|
19577
|
+
}
|
|
19488
19578
|
/**
|
|
19489
19579
|
* Transport bounds for AI capability methods.
|
|
19490
19580
|
*
|
|
@@ -34562,96 +34652,6 @@ var videoclipsCapability = {
|
|
|
34562
34652
|
})
|
|
34563
34653
|
}
|
|
34564
34654
|
};
|
|
34565
|
-
/** The central link domain the viewer app claims (Universal Links / App Links). */
|
|
34566
|
-
var CAMSTACK_APP_LINK_ORIGIN = "https://camstack.zentik.app";
|
|
34567
|
-
/** Where the hub serves the viewer SPA. */
|
|
34568
|
-
var HUB_VIEWER_MOUNT = "/viewer/camstack";
|
|
34569
|
-
/** True when `baseUrl` names the CamStack app link rather than a hub address. */
|
|
34570
|
-
function isAppLinkBase(baseUrl) {
|
|
34571
|
-
if (baseUrl === null || baseUrl === void 0 || baseUrl === "") return false;
|
|
34572
|
-
try {
|
|
34573
|
-
return new URL(baseUrl).origin === CAMSTACK_APP_LINK_ORIGIN;
|
|
34574
|
-
} catch {
|
|
34575
|
-
return false;
|
|
34576
|
-
}
|
|
34577
|
-
}
|
|
34578
|
-
/**
|
|
34579
|
-
* The base a viewer link is built on, from the flagged notification address:
|
|
34580
|
-
* the effective address is the explicit choice, else AUTO's `resolved`. The
|
|
34581
|
-
* one reading of that answer — the NC's tap and the Network page's preview
|
|
34582
|
-
* both go through it.
|
|
34583
|
-
*/
|
|
34584
|
-
function viewerLinkBaseOf(endpoint) {
|
|
34585
|
-
const flagged = endpoint.baseUrl ?? endpoint.resolved;
|
|
34586
|
-
return isAppLinkBase(flagged) ? {
|
|
34587
|
-
form: "app",
|
|
34588
|
-
hubBaseUrl: endpoint.appLinkHub ?? null
|
|
34589
|
-
} : {
|
|
34590
|
-
form: "hub",
|
|
34591
|
-
hubBaseUrl: flagged
|
|
34592
|
-
};
|
|
34593
|
-
}
|
|
34594
|
-
/**
|
|
34595
|
-
* Reduce a base URL to the bare origin the central page accepts as `hub=`,
|
|
34596
|
-
* or `null` when it cannot be one: not http(s), carries credentials, or does
|
|
34597
|
-
* not parse. A path/query/fragment is dropped — the central page mounts the
|
|
34598
|
-
* viewer under the origin itself.
|
|
34599
|
-
*/
|
|
34600
|
-
function toAppLinkHubOrigin(baseUrl) {
|
|
34601
|
-
let parsed;
|
|
34602
|
-
try {
|
|
34603
|
-
parsed = new URL(baseUrl);
|
|
34604
|
-
} catch {
|
|
34605
|
-
return null;
|
|
34606
|
-
}
|
|
34607
|
-
if (parsed.protocol !== "https:" && parsed.protocol !== "http:") return null;
|
|
34608
|
-
if (parsed.username !== "" || parsed.password !== "") return null;
|
|
34609
|
-
if (parsed.hostname === "") return null;
|
|
34610
|
-
return parsed.origin;
|
|
34611
|
-
}
|
|
34612
|
-
/** The viewer route for a destination, or null when it names nothing. */
|
|
34613
|
-
function viewerRoute(destination) {
|
|
34614
|
-
switch (destination.kind) {
|
|
34615
|
-
case "camera": {
|
|
34616
|
-
if (!Number.isInteger(destination.deviceId) || destination.deviceId <= 0) return null;
|
|
34617
|
-
const at = destination.atMs;
|
|
34618
|
-
return {
|
|
34619
|
-
path: `/camera/${String(destination.deviceId)}`,
|
|
34620
|
-
query: at !== void 0 && Number.isFinite(at) ? [["at", String(Math.trunc(at))]] : []
|
|
34621
|
-
};
|
|
34622
|
-
}
|
|
34623
|
-
case "events": return {
|
|
34624
|
-
path: "/events",
|
|
34625
|
-
query: []
|
|
34626
|
-
};
|
|
34627
|
-
case "notifications": return {
|
|
34628
|
-
path: "/notifications",
|
|
34629
|
-
query: []
|
|
34630
|
-
};
|
|
34631
|
-
}
|
|
34632
|
-
}
|
|
34633
|
-
function encodeQuery(query) {
|
|
34634
|
-
if (query.length === 0) return "";
|
|
34635
|
-
return `?${query.map(([k, v]) => `${encodeURIComponent(k)}=${encodeURIComponent(v)}`).join("&")}`;
|
|
34636
|
-
}
|
|
34637
|
-
/**
|
|
34638
|
-
* The link for a viewer destination, or `null` when none can be minted: an
|
|
34639
|
-
* unknown destination, or the `hub` form with no reachable base (a dead link
|
|
34640
|
-
* is worse than none).
|
|
34641
|
-
*/
|
|
34642
|
-
function buildViewerLink(input) {
|
|
34643
|
-
const route = viewerRoute(input.destination);
|
|
34644
|
-
if (route === null) return null;
|
|
34645
|
-
const raw = input.base.hubBaseUrl;
|
|
34646
|
-
const base = raw === null ? "" : raw.replace(/\/+$/, "");
|
|
34647
|
-
if (input.base.form === "app") {
|
|
34648
|
-
const origin = base === "" ? null : toAppLinkHubOrigin(base);
|
|
34649
|
-
const query = origin === null ? route.query : [...route.query, ["hub", origin]];
|
|
34650
|
-
return `${CAMSTACK_APP_LINK_ORIGIN}${route.path}${encodeQuery(query)}`;
|
|
34651
|
-
}
|
|
34652
|
-
if (base === "" || isAppLinkBase(base)) return null;
|
|
34653
|
-
return `${base}${HUB_VIEWER_MOUNT}${route.path}${encodeQuery(route.query)}`;
|
|
34654
|
-
}
|
|
34655
34655
|
/**
|
|
34656
34656
|
* Optional client-side hints sent at session creation to help the provider
|
|
34657
34657
|
* pick the best native source. All fields optional — a viewer that knows
|
|
@@ -35127,6 +35127,35 @@ var webrtcSessionCapability = {
|
|
|
35127
35127
|
alive: boolean()
|
|
35128
35128
|
})),
|
|
35129
35129
|
/**
|
|
35130
|
+
* The viewer's downlink probe, for ONE live session (D733).
|
|
35131
|
+
*
|
|
35132
|
+
* The player measures `/adaptive-probe` after the session's first decoded
|
|
35133
|
+
* frame (D635). It used to act on the reading itself, by opening a SECOND
|
|
35134
|
+
* session with `hints.downlinkMbps` — every adaptive live open became two
|
|
35135
|
+
* sessions, two ICE + DTLS handshakes and two server pipelines. It now
|
|
35136
|
+
* hands the measurement to the session it already has; the provider picks
|
|
35137
|
+
* the rung exactly as it would from an offer's hints (same viewport
|
|
35138
|
+
* ceiling) and moves the session there — in place when the negotiated
|
|
35139
|
+
* codec carries the new rendition, by the existing re-offer
|
|
35140
|
+
* (`getSessionState.pendingRenegotiation`) when it cannot.
|
|
35141
|
+
*
|
|
35142
|
+
* A MEASUREMENT, never a tier: the client does not choose. A probe only
|
|
35143
|
+
* raises the rung; lowering it stays the ladder's call on delivery.
|
|
35144
|
+
* `held` answers why nothing moved (`not-adaptive`, `pinned`,
|
|
35145
|
+
* `already-there`, `recorded`, …) — a client that gets ANY answer must not
|
|
35146
|
+
* fall back to a reconnect; only a provider that does not know the method
|
|
35147
|
+
* (an older hub) leaves the client its legacy second session.
|
|
35148
|
+
*/
|
|
35149
|
+
applyDownlinkProbe: method(object({
|
|
35150
|
+
deviceId: number().int().nonnegative(),
|
|
35151
|
+
sessionId: string(),
|
|
35152
|
+
downlinkMbps: number().nonnegative()
|
|
35153
|
+
}), object({
|
|
35154
|
+
outcome: _enum(["switching", "held"]),
|
|
35155
|
+
tier: CamProfileSchema.nullable(),
|
|
35156
|
+
reason: string()
|
|
35157
|
+
}), { kind: "mutation" }),
|
|
35158
|
+
/**
|
|
35130
35159
|
* The SERVER's half of the stream-debug overlay, for one live session.
|
|
35131
35160
|
*
|
|
35132
35161
|
* The client can measure its own transport (`getStats()`); it cannot see
|
|
@@ -39377,7 +39406,8 @@ var ConnectionEndpointSchema = object({
|
|
|
39377
39406
|
"lan-ipv6",
|
|
39378
39407
|
"public",
|
|
39379
39408
|
"loopback",
|
|
39380
|
-
"app-link"
|
|
39409
|
+
"app-link",
|
|
39410
|
+
"custom"
|
|
39381
39411
|
]),
|
|
39382
39412
|
/**
|
|
39383
39413
|
* Originating-interface kind — `lan`/`wifi`/`docker`/`vpn`/`other`/
|
|
@@ -39480,13 +39510,12 @@ var ViewerEndpointsSchema = object({
|
|
|
39480
39510
|
resolved: array(string()).readonly()
|
|
39481
39511
|
});
|
|
39482
39512
|
/**
|
|
39483
|
-
*
|
|
39484
|
-
*
|
|
39513
|
+
* DEPRECATED compatibility shape of `getHubAddresses` (D729 amendment, kept
|
|
39514
|
+
* one release for addons built against it): `cluster` is the `agents` role,
|
|
39515
|
+
* `browser` the `signIn` role; `override` is the flagged address.
|
|
39485
39516
|
*/
|
|
39486
39517
|
var HubAddressSnapshotSchema = object({
|
|
39487
|
-
/** The operator's override, or null for automatic. */
|
|
39488
39518
|
override: string().nullable(),
|
|
39489
|
-
/** The address in use, or null when nothing qualifies (never loopback). */
|
|
39490
39519
|
resolved: string().nullable(),
|
|
39491
39520
|
source: _enum([
|
|
39492
39521
|
"override",
|
|
@@ -39495,11 +39524,61 @@ var HubAddressSnapshotSchema = object({
|
|
|
39495
39524
|
])
|
|
39496
39525
|
});
|
|
39497
39526
|
var HubAddressesSchema = object({
|
|
39498
|
-
/** "Hub address for agents" — agents' bundle/model pulls, LAN devices. */
|
|
39499
39527
|
cluster: HubAddressSnapshotSchema,
|
|
39500
|
-
/** "Public address for sign-in links" — e-mail links, OIDC, WebAuthn, OAuth2. */
|
|
39501
39528
|
browser: HubAddressSnapshotSchema
|
|
39502
39529
|
});
|
|
39530
|
+
/**
|
|
39531
|
+
* What an address is used for (`hub-address.ts`). `viewer` is many-valued;
|
|
39532
|
+
* `notifications`, `agents` and `signIn` are carried by at most one address.
|
|
39533
|
+
*/
|
|
39534
|
+
var HubAddressRoleSchema = _enum([
|
|
39535
|
+
"viewer",
|
|
39536
|
+
"notifications",
|
|
39537
|
+
"agents",
|
|
39538
|
+
"signIn"
|
|
39539
|
+
]);
|
|
39540
|
+
var RoleSourceSchema = _enum([
|
|
39541
|
+
"flagged",
|
|
39542
|
+
"auto",
|
|
39543
|
+
"none"
|
|
39544
|
+
]);
|
|
39545
|
+
/** One single-valued role: the flagged address, the one in use, and why. */
|
|
39546
|
+
var HubAddressRoleResolutionSchema = object({
|
|
39547
|
+
/** The address carrying the flag, or null = automatic. */
|
|
39548
|
+
flagged: string().nullable(),
|
|
39549
|
+
/** The address in use, or null when nothing qualifies (never loopback). */
|
|
39550
|
+
resolved: string().nullable(),
|
|
39551
|
+
source: RoleSourceSchema
|
|
39552
|
+
});
|
|
39553
|
+
var HubViewerResolutionSchema = object({
|
|
39554
|
+
/** The addresses flagged `viewer`, or empty = automatic. */
|
|
39555
|
+
flagged: array(string()).readonly(),
|
|
39556
|
+
/** What the apps race right now. */
|
|
39557
|
+
resolved: array(string()).readonly(),
|
|
39558
|
+
source: RoleSourceSchema
|
|
39559
|
+
});
|
|
39560
|
+
var HubAddressBookSchema = object({
|
|
39561
|
+
rows: array(ConnectionEndpointSchema.extend({
|
|
39562
|
+
/** In the hub's detected palette right now. */
|
|
39563
|
+
detected: boolean(),
|
|
39564
|
+
/** Entered by the operator (removable). */
|
|
39565
|
+
custom: boolean(),
|
|
39566
|
+
/** The roles explicitly flagged on this address. */
|
|
39567
|
+
flags: array(HubAddressRoleSchema).readonly(),
|
|
39568
|
+
/** The roles this address serves right now — flagged or automatic. */
|
|
39569
|
+
inUse: array(HubAddressRoleSchema).readonly(),
|
|
39570
|
+
/** The roles this address may be flagged with. */
|
|
39571
|
+
eligible: array(HubAddressRoleSchema).readonly()
|
|
39572
|
+
})).readonly(),
|
|
39573
|
+
roles: object({
|
|
39574
|
+
viewer: HubViewerResolutionSchema,
|
|
39575
|
+
notifications: HubAddressRoleResolutionSchema,
|
|
39576
|
+
agents: HubAddressRoleResolutionSchema,
|
|
39577
|
+
signIn: HubAddressRoleResolutionSchema
|
|
39578
|
+
}),
|
|
39579
|
+
/** The `hub=` an app link carries (D709), or null. */
|
|
39580
|
+
appLinkHub: string().nullable()
|
|
39581
|
+
});
|
|
39503
39582
|
var AllowedAddressesSchema = object({
|
|
39504
39583
|
/**
|
|
39505
39584
|
* Allowlist of interface addresses operators have explicitly opted
|
|
@@ -39612,46 +39691,78 @@ var localNetworkCapability = {
|
|
|
39612
39691
|
*/
|
|
39613
39692
|
getNotificationEndpoint: method(_void(), NotificationEndpointSchema),
|
|
39614
39693
|
/**
|
|
39615
|
-
*
|
|
39616
|
-
*
|
|
39617
|
-
*
|
|
39618
|
-
*
|
|
39694
|
+
* @deprecated Use `setAddressRole({ role: 'notifications', … })`. Kept so
|
|
39695
|
+
* an older admin UI keeps working: it writes the same `notifications`
|
|
39696
|
+
* flag, with the same validation. `baseUrl: null` restores automatic; an
|
|
39697
|
+
* address that is not detected becomes a custom address.
|
|
39619
39698
|
*/
|
|
39620
39699
|
setNotificationEndpoint: method(object({ baseUrl: string().nullable() }), NotificationEndpointSchema, { kind: "mutation" }),
|
|
39621
39700
|
/**
|
|
39622
|
-
* The
|
|
39623
|
-
*
|
|
39624
|
-
*
|
|
39625
|
-
*
|
|
39701
|
+
* The `viewer` role as shipped apps read it: the flagged addresses
|
|
39702
|
+
* (detected or custom), or empty for AUTO — every LAN IPv4 address plus
|
|
39703
|
+
* the public tunnel, never IPv6, mesh, loopback or a custom address.
|
|
39704
|
+
* `resolved` is the set as it stands right now; the custom ones in it are
|
|
39705
|
+
* also in `getConnectionEndpoints`, which the apps filter by it.
|
|
39626
39706
|
*/
|
|
39627
39707
|
getViewerEndpoints: method(_void(), ViewerEndpointsSchema),
|
|
39628
39708
|
/**
|
|
39629
|
-
*
|
|
39630
|
-
*
|
|
39631
|
-
*
|
|
39709
|
+
* @deprecated Use `setAddressRole({ role: 'viewer', … })`. Kept so an
|
|
39710
|
+
* older admin UI keeps working: it replaces the same `viewer` flags.
|
|
39711
|
+
* Empty `baseUrls` restores automatic.
|
|
39632
39712
|
*/
|
|
39633
39713
|
setViewerEndpoints: method(object({ baseUrls: array(string()).readonly() }), ViewerEndpointsSchema, { kind: "mutation" }),
|
|
39634
39714
|
/**
|
|
39635
|
-
* The
|
|
39636
|
-
*
|
|
39637
|
-
*
|
|
39638
|
-
*
|
|
39639
|
-
*
|
|
39715
|
+
* The Network page's Addresses table and every role's answer — the ONE
|
|
39716
|
+
* reading of "which address is this hub reached at, for what": detected
|
|
39717
|
+
* endpoints and custom addresses with their role flags, and per role the
|
|
39718
|
+
* flagged address, the one in use and whether it is automatic. Agent
|
|
39719
|
+
* deliveries, sign-in and LAN devices read `roles.agents` / `roles.signIn`
|
|
39720
|
+
* here; nothing ranks the palette itself. `scheme` is the one the caller
|
|
39721
|
+
* shows LAN rows in (as `getConnectionEndpoints`); agents and sign-in are
|
|
39722
|
+
* always resolved over the HTTPS palette.
|
|
39640
39723
|
*/
|
|
39641
|
-
|
|
39724
|
+
getAddresses: method(object({ scheme: _enum(["http", "https"]).optional() }).optional(), HubAddressBookSchema),
|
|
39725
|
+
/**
|
|
39726
|
+
* Add a custom address. Validated: an http(s) origin with a host, no
|
|
39727
|
+
* credentials, no path, never loopback — an invalid one is refused with
|
|
39728
|
+
* the reason and nothing is stored. Adding an address that already exists
|
|
39729
|
+
* only updates its label.
|
|
39730
|
+
*/
|
|
39731
|
+
addCustomAddress: method(object({
|
|
39732
|
+
baseUrl: string(),
|
|
39733
|
+
label: string().max(80)
|
|
39734
|
+
}), HubAddressBookSchema, {
|
|
39735
|
+
kind: "mutation",
|
|
39736
|
+
auth: "admin"
|
|
39737
|
+
}),
|
|
39738
|
+
/** Remove a custom address. Its role flags go with it (those roles turn automatic). */
|
|
39739
|
+
removeCustomAddress: method(object({ baseUrl: string() }), HubAddressBookSchema, {
|
|
39740
|
+
kind: "mutation",
|
|
39741
|
+
auth: "admin"
|
|
39742
|
+
}),
|
|
39642
39743
|
/**
|
|
39643
|
-
*
|
|
39644
|
-
*
|
|
39645
|
-
*
|
|
39744
|
+
* Flag (`enabled: true`) or unflag an address for a role. For a
|
|
39745
|
+
* single-valued role, flagging moves the flag off every other address.
|
|
39746
|
+
* `baseUrl: null` returns the role to automatic. The address must be a row
|
|
39747
|
+
* of the table (detected, custom, or the app link for notifications);
|
|
39748
|
+
* `signIn` on a plain-http address is refused unless `acceptInsecureHttp`.
|
|
39646
39749
|
*/
|
|
39647
|
-
|
|
39648
|
-
|
|
39649
|
-
baseUrl: string().nullable()
|
|
39650
|
-
|
|
39750
|
+
setAddressRole: method(object({
|
|
39751
|
+
role: HubAddressRoleSchema,
|
|
39752
|
+
baseUrl: string().nullable(),
|
|
39753
|
+
enabled: boolean(),
|
|
39754
|
+
acceptInsecureHttp: boolean().optional()
|
|
39755
|
+
}), HubAddressBookSchema, {
|
|
39651
39756
|
kind: "mutation",
|
|
39652
39757
|
auth: "admin"
|
|
39653
39758
|
}),
|
|
39654
39759
|
/**
|
|
39760
|
+
* @deprecated Read `getAddresses().roles.agents` / `.signIn`. Kept one
|
|
39761
|
+
* release so an addon built against the D729 amendment keeps resolving:
|
|
39762
|
+
* `cluster` = the `agents` role, `browser` = the `signIn` role.
|
|
39763
|
+
*/
|
|
39764
|
+
getHubAddresses: method(_void(), HubAddressesSchema),
|
|
39765
|
+
/**
|
|
39655
39766
|
* Read the operator's allowlist. Empty = "auto" (no filter). Used
|
|
39656
39767
|
* by the admin UI's address selector to seed its checkbox state.
|
|
39657
39768
|
*/
|
|
@@ -51664,12 +51775,24 @@ Object.freeze({
|
|
|
51664
51775
|
addonId: null,
|
|
51665
51776
|
access: "view"
|
|
51666
51777
|
},
|
|
51778
|
+
"localNetwork.addCustomAddress": {
|
|
51779
|
+
capName: "local-network",
|
|
51780
|
+
capScope: "system",
|
|
51781
|
+
addonId: null,
|
|
51782
|
+
access: "create"
|
|
51783
|
+
},
|
|
51667
51784
|
"localNetwork.downloadCa": {
|
|
51668
51785
|
capName: "local-network",
|
|
51669
51786
|
capScope: "system",
|
|
51670
51787
|
addonId: null,
|
|
51671
51788
|
access: "view"
|
|
51672
51789
|
},
|
|
51790
|
+
"localNetwork.getAddresses": {
|
|
51791
|
+
capName: "local-network",
|
|
51792
|
+
capScope: "system",
|
|
51793
|
+
addonId: null,
|
|
51794
|
+
access: "view"
|
|
51795
|
+
},
|
|
51673
51796
|
"localNetwork.getAllowedAddresses": {
|
|
51674
51797
|
capName: "local-network",
|
|
51675
51798
|
capScope: "system",
|
|
@@ -51724,6 +51847,12 @@ Object.freeze({
|
|
|
51724
51847
|
addonId: null,
|
|
51725
51848
|
access: "create"
|
|
51726
51849
|
},
|
|
51850
|
+
"localNetwork.removeCustomAddress": {
|
|
51851
|
+
capName: "local-network",
|
|
51852
|
+
capScope: "system",
|
|
51853
|
+
addonId: null,
|
|
51854
|
+
access: "delete"
|
|
51855
|
+
},
|
|
51727
51856
|
"localNetwork.resetAllowlistToBestMatch": {
|
|
51728
51857
|
capName: "local-network",
|
|
51729
51858
|
capScope: "system",
|
|
@@ -51736,13 +51865,13 @@ Object.freeze({
|
|
|
51736
51865
|
addonId: null,
|
|
51737
51866
|
access: "create"
|
|
51738
51867
|
},
|
|
51739
|
-
"localNetwork.
|
|
51868
|
+
"localNetwork.setAddressRole": {
|
|
51740
51869
|
capName: "local-network",
|
|
51741
51870
|
capScope: "system",
|
|
51742
51871
|
addonId: null,
|
|
51743
51872
|
access: "create"
|
|
51744
51873
|
},
|
|
51745
|
-
"localNetwork.
|
|
51874
|
+
"localNetwork.setAllowedAddresses": {
|
|
51746
51875
|
capName: "local-network",
|
|
51747
51876
|
capScope: "system",
|
|
51748
51877
|
addonId: null,
|
|
@@ -55996,6 +56125,12 @@ Object.freeze({
|
|
|
55996
56125
|
addonId: null,
|
|
55997
56126
|
access: "create"
|
|
55998
56127
|
},
|
|
56128
|
+
"webrtcSession.applyDownlinkProbe": {
|
|
56129
|
+
capName: "webrtc-session",
|
|
56130
|
+
capScope: "device",
|
|
56131
|
+
addonId: null,
|
|
56132
|
+
access: "create"
|
|
56133
|
+
},
|
|
55999
56134
|
"webrtcSession.closeSession": {
|
|
56000
56135
|
capName: "webrtc-session",
|
|
56001
56136
|
capScope: "device",
|
|
@@ -60094,6 +60229,11 @@ Object.freeze({
|
|
|
60094
60229
|
form: "single",
|
|
60095
60230
|
optional: false
|
|
60096
60231
|
}],
|
|
60232
|
+
"webrtcSession.applyDownlinkProbe": [{
|
|
60233
|
+
name: "deviceId",
|
|
60234
|
+
form: "single",
|
|
60235
|
+
optional: false
|
|
60236
|
+
}],
|
|
60097
60237
|
"webrtcSession.closeSession": [{
|
|
60098
60238
|
name: "deviceId",
|
|
60099
60239
|
form: "single",
|
|
@@ -2,7 +2,7 @@ Object.defineProperties(exports, {
|
|
|
2
2
|
__esModule: { value: true },
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
|
-
const require_clip_model_registry = require("../clip-model-registry-
|
|
5
|
+
const require_clip_model_registry = require("../clip-model-registry-BcSLJ8aL.js");
|
|
6
6
|
let node_fs = require("node:fs");
|
|
7
7
|
node_fs = require_clip_model_registry.__toESM(node_fs);
|
|
8
8
|
let node_path = require("node:path");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Ci as normalizeNodeId, Jn as embeddingEncoderCapability, Or as parseProcStatus, Qn as embeddingRequirementsUnavailableError, Yn as embeddingModelFailedError, Zn as embeddingRequirementsFailedError, Zt as PoolMemoryWatchdog, a as CLIP_EMBEDDING_STEP_ID, c as resolveClusterModelPin, hi as BaseAddon, i as CLIP_TEXT_MODELS, n as DEFAULT_CLIP_MODEL, r as CLIP_IMAGE_MODELS, t as BUILTIN_CLIP_MODELS, zr as resolvePoolMemoryPolicy } from "../clip-model-registry-
|
|
1
|
+
import { Ci as normalizeNodeId, Jn as embeddingEncoderCapability, Or as parseProcStatus, Qn as embeddingRequirementsUnavailableError, Yn as embeddingModelFailedError, Zn as embeddingRequirementsFailedError, Zt as PoolMemoryWatchdog, a as CLIP_EMBEDDING_STEP_ID, c as resolveClusterModelPin, hi as BaseAddon, i as CLIP_TEXT_MODELS, n as DEFAULT_CLIP_MODEL, r as CLIP_IMAGE_MODELS, t as BUILTIN_CLIP_MODELS, zr as resolvePoolMemoryPolicy } from "../clip-model-registry-BLUVLdlY.mjs";
|
|
2
2
|
import { createRequire } from "node:module";
|
|
3
3
|
import * as fs from "node:fs";
|
|
4
4
|
import * as path$1 from "node:path";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { a as e, i as t, n, o as r, r as i, t as a } from "./_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare__react__loadShare__.js-C0AuF9av.mjs";
|
|
2
2
|
import { t as o } from "./_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_tanstack_mf_1_react_mf_2_query__loadShare__.js-B3Wx5J80.mjs";
|
|
3
|
-
import { a as s, i as c, n as l, o as u, r as d, s as f, t as p } from "./_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-
|
|
3
|
+
import { a as s, i as c, n as l, o as u, r as d, s as f, t as p } from "./_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-BRmdbHeK.mjs";
|
|
4
4
|
import { n as m, r as h, t as g } from "./_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-Bm-iyjmq.mjs";
|
|
5
|
-
import { t as _ } from "./_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-
|
|
5
|
+
import { t as _ } from "./_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-D3jDbheU.mjs";
|
|
6
6
|
//#region ../../node_modules/lucide-react/dist/esm/shared/src/utils/mergeClasses.js
|
|
7
7
|
var v = (...e) => e.filter((e, t, n) => !!e && e.trim() !== "" && n.indexOf(e) === t).join(" ").trim(), y = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(), b = (e) => e.replace(/^([A-Z])|[\s-_]+(\w)/g, (e, t, n) => n ? n.toUpperCase() : t.toLowerCase()), x = (e) => {
|
|
8
8
|
let t = b(e);
|
|
@@ -18,7 +18,7 @@ var e = {
|
|
|
18
18
|
},
|
|
19
19
|
"@camstack/types": {
|
|
20
20
|
name: "@camstack/types",
|
|
21
|
-
version: "1.2.
|
|
21
|
+
version: "1.2.310",
|
|
22
22
|
scope: ["default"],
|
|
23
23
|
loaded: !1,
|
|
24
24
|
from: "addon_pipeline_analytics_widgets",
|
|
@@ -33,7 +33,7 @@ var e = {
|
|
|
33
33
|
},
|
|
34
34
|
"@camstack/ui-library": {
|
|
35
35
|
name: "@camstack/ui-library",
|
|
36
|
-
version: "1.2.
|
|
36
|
+
version: "1.2.236",
|
|
37
37
|
scope: ["default"],
|
|
38
38
|
loaded: !1,
|
|
39
39
|
from: "addon_pipeline_analytics_widgets",
|