@camstack/types 1.2.368 → 1.2.370
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/addon.js +1 -1
- package/dist/addon.mjs +1 -1
- package/dist/auth/app-flow.d.ts +72 -0
- package/dist/auth/device-certificate.d.ts +6 -0
- package/dist/capabilities/hub-address.d.ts +17 -0
- package/dist/capabilities/index.d.ts +1 -1
- package/dist/capabilities/login-method.cap.d.ts +54 -0
- package/dist/capabilities/node-certificates.cap.d.ts +9 -0
- package/dist/capabilities/sso-bridge.cap.d.ts +27 -0
- package/dist/client.js +9 -1
- package/dist/client.mjs +9 -1
- package/dist/generated/addon-api.d.ts +427 -10
- package/dist/generated/method-access-map.d.ts +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +171 -6
- package/dist/index.mjs +162 -7
- package/dist/{sleep--g-h2_c_.mjs → sleep-DAX0-2v9.mjs} +2 -0
- package/dist/{sleep-CXlc9YJ5.js → sleep-DnQ5WsMI.js} +2 -0
- package/package.json +1 -1
package/dist/addon.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_sleep = require("./sleep-
|
|
2
|
+
const require_sleep = require("./sleep-DnQ5WsMI.js");
|
|
3
3
|
const require_event_category = require("./event-category-T43rdQWR.js");
|
|
4
4
|
const require_err_msg = require("./err-msg-Dx2Kor0g.js");
|
|
5
5
|
//#region src/generated/cap-input-defaults.ts
|
package/dist/addon.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as viewerUiCapability, At as createSecretsAccess, Bt as PEER_BYTES_STALL_MS, C as isZodSecret, Cn as isSecretClear, Dn as makeSecretMarker, E as HF_REPO, En as isSecretMarkerLike, Ft as registerKnownSecret, Gt as DisposerChain, I as adminUiCapability, It as scrubKnownSecrets, Kt as BaseAddon, Lt as shortSecretRefHash, Mt as clearKnownSecrets, Nt as forgetKnownSecret, On as toSecretFieldView, Ot as resolveSecretViewsIn, P as describeCustomActions, Pt as knownSecretCount, Q as readNodePin, Rt as PEER_BYTES_CHUNK_BYTES, S as collectZodSecretPaths, Sn as classifySecretWrite, Tn as isSecretMarker, Ut as DATAPLANE_SECRET_HEADER, Vt as PEER_BYTES_TICKET_TTL_MS, W as expandCapMethods, Z as nodePin, _ as createEventBusSliceSource, an as formatSecretScope, at as scopeKey, c as asString, cn as normalizeSecretOwner, d as parseJsonUnknown, et as MODEL_FORMATS, f as hfModelUrl, fn as createEvent, g as createDeviceProxy, h as isDeviceScopedCap, in as buildSecretRef, j as DEVICE_CHILDREN_BATCH_MAX, jt as MIN_SCRUBBED_LENGTH, k as deviceOpsCapability, kt as REVALIDATE_AFTER_MS, ln as parseSecretRef, m as DEVICE_SCOPED_CAPS, nn as SECRET_REF_SCHEME, nt as ReadinessTimeoutError, o as asJsonObject, on as globalSecretScope, p as BOOT_RECOVERY_BACKOFF_MS, pn as emitReadiness, qt as normalizeAddonInitResult, r as maskUrlCredentials, rn as arrayItemFieldPath, sn as isSecretRef, t as sleep, tt as ReadinessRegistry, wn as isSecretFieldView, xn as SECRET_CLEAR, zt as PEER_BYTES_MAX_OUTSTANDING } from "./sleep
|
|
1
|
+
import { A as viewerUiCapability, At as createSecretsAccess, Bt as PEER_BYTES_STALL_MS, C as isZodSecret, Cn as isSecretClear, Dn as makeSecretMarker, E as HF_REPO, En as isSecretMarkerLike, Ft as registerKnownSecret, Gt as DisposerChain, I as adminUiCapability, It as scrubKnownSecrets, Kt as BaseAddon, Lt as shortSecretRefHash, Mt as clearKnownSecrets, Nt as forgetKnownSecret, On as toSecretFieldView, Ot as resolveSecretViewsIn, P as describeCustomActions, Pt as knownSecretCount, Q as readNodePin, Rt as PEER_BYTES_CHUNK_BYTES, S as collectZodSecretPaths, Sn as classifySecretWrite, Tn as isSecretMarker, Ut as DATAPLANE_SECRET_HEADER, Vt as PEER_BYTES_TICKET_TTL_MS, W as expandCapMethods, Z as nodePin, _ as createEventBusSliceSource, an as formatSecretScope, at as scopeKey, c as asString, cn as normalizeSecretOwner, d as parseJsonUnknown, et as MODEL_FORMATS, f as hfModelUrl, fn as createEvent, g as createDeviceProxy, h as isDeviceScopedCap, in as buildSecretRef, j as DEVICE_CHILDREN_BATCH_MAX, jt as MIN_SCRUBBED_LENGTH, k as deviceOpsCapability, kt as REVALIDATE_AFTER_MS, ln as parseSecretRef, m as DEVICE_SCOPED_CAPS, nn as SECRET_REF_SCHEME, nt as ReadinessTimeoutError, o as asJsonObject, on as globalSecretScope, p as BOOT_RECOVERY_BACKOFF_MS, pn as emitReadiness, qt as normalizeAddonInitResult, r as maskUrlCredentials, rn as arrayItemFieldPath, sn as isSecretRef, t as sleep, tt as ReadinessRegistry, wn as isSecretFieldView, xn as SECRET_CLEAR, zt as PEER_BYTES_MAX_OUTSTANDING } from "./sleep-DAX0-2v9.mjs";
|
|
2
2
|
import { t as EventCategory } from "./event-category-C4hVnRo8.mjs";
|
|
3
3
|
import { a as DeviceType, t as errMsg } from "./err-msg-DX6i_MY4.mjs";
|
|
4
4
|
//#region src/generated/cap-input-defaults.ts
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The native-app browser sign-in flows the hub serves itself (D858).
|
|
3
|
+
*
|
|
4
|
+
* The viewer app opens the system browser at a hub START route (OIDC
|
|
5
|
+
* `/addon/auth-oidc/<id>/start`, the passkey page `/auth/app/passkey`) and gets
|
|
6
|
+
* a one-shot handoff code back at its custom scheme. These helpers are the one
|
|
7
|
+
* reading of the request every leg shares - the OIDC addon, the finish leg and
|
|
8
|
+
* the passkey page - so a rule tightened for one is tightened for all:
|
|
9
|
+
*
|
|
10
|
+
* - PKCE is mandatory and S256 only (`code_challenge` = base64url of a SHA-256);
|
|
11
|
+
* - `state` is echoed back exactly;
|
|
12
|
+
* - the return URL is one of {@link APP_AUTH_CALLBACK_URLS}, never a free URL;
|
|
13
|
+
* - the purpose is `new-session` or `step-up` (the legacy `renew` has no browser flow).
|
|
14
|
+
*
|
|
15
|
+
* Pure and dependency-free (zod only) so an addon, the backend and a spec read
|
|
16
|
+
* the same code.
|
|
17
|
+
*/
|
|
18
|
+
import { z } from 'zod';
|
|
19
|
+
/** What the app redeems the code for. `step-up` yields a proof, never a session. */
|
|
20
|
+
export declare const AppFlowPurposeSchema: z.ZodEnum<{
|
|
21
|
+
"new-session": "new-session";
|
|
22
|
+
"step-up": "step-up";
|
|
23
|
+
}>;
|
|
24
|
+
export type AppFlowPurpose = z.infer<typeof AppFlowPurposeSchema>;
|
|
25
|
+
/** Where the app is sent when the request names no `redirect`. */
|
|
26
|
+
export declare const APP_FLOW_DEFAULT_REDIRECT = "camstack://auth-callback";
|
|
27
|
+
/**
|
|
28
|
+
* A browser OIDC flow started for an app carries this prefix on the IdP
|
|
29
|
+
* `state` it generates, so a callback whose pending state is gone (expired,
|
|
30
|
+
* replayed) can still be answered at the app and not on a hub error page. The
|
|
31
|
+
* destination of that answer is the fixed default callback - the prefix
|
|
32
|
+
* selects nothing the requester controls.
|
|
33
|
+
*/
|
|
34
|
+
export declare const APP_FLOW_STATE_PREFIX = "a.";
|
|
35
|
+
/** A validated app flow request. */
|
|
36
|
+
export interface AppFlowRequest {
|
|
37
|
+
readonly codeChallenge: string;
|
|
38
|
+
readonly state: string;
|
|
39
|
+
readonly purpose: AppFlowPurpose;
|
|
40
|
+
/** The canonical allow-listed callback URL. */
|
|
41
|
+
readonly redirect: string;
|
|
42
|
+
}
|
|
43
|
+
export type AppFlowRefusal = 'bad-challenge' | 'bad-challenge-method' | 'bad-state' | 'bad-purpose' | 'bad-redirect';
|
|
44
|
+
export type AppFlowParse = {
|
|
45
|
+
readonly ok: true;
|
|
46
|
+
readonly request: AppFlowRequest;
|
|
47
|
+
} | {
|
|
48
|
+
readonly ok: false;
|
|
49
|
+
readonly reason: AppFlowRefusal;
|
|
50
|
+
};
|
|
51
|
+
/** Operator-facing words for a refusal (the "clear page", D858). */
|
|
52
|
+
export declare const APP_FLOW_REFUSAL_MESSAGES: Record<AppFlowRefusal, string>;
|
|
53
|
+
/**
|
|
54
|
+
* Read the app parameters off a start query: `code_challenge`,
|
|
55
|
+
* `code_challenge_method`, `state`, `purpose`, `redirect`. Anything missing or
|
|
56
|
+
* malformed is refused - there is no lenient default for PKCE or state.
|
|
57
|
+
*/
|
|
58
|
+
export declare function parseAppFlowRequest(query: Readonly<Record<string, string | undefined>>): AppFlowParse;
|
|
59
|
+
/** The app's callback with `code` (success) or `error` (refusal), and the echoed `state` when known. */
|
|
60
|
+
export declare function appFlowLocation(redirect: string, result: {
|
|
61
|
+
readonly code: string;
|
|
62
|
+
} | {
|
|
63
|
+
readonly error: string;
|
|
64
|
+
}, state?: string): string;
|
|
65
|
+
/** How a native app starts one login method (D858), as `auth.listLoginMethods` reports it. */
|
|
66
|
+
export declare const AppLoginPathSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
67
|
+
kind: z.ZodLiteral<"native">;
|
|
68
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
69
|
+
kind: z.ZodLiteral<"browser">;
|
|
70
|
+
startPath: z.ZodString;
|
|
71
|
+
}, z.core.$strip>], "kind">;
|
|
72
|
+
export type AppLoginPath = z.infer<typeof AppLoginPathSchema>;
|
|
@@ -368,5 +368,11 @@ export declare const DeviceCertificateLoginMethodSchema: z.ZodObject<{
|
|
|
368
368
|
native: "native";
|
|
369
369
|
web: "web";
|
|
370
370
|
}>>;
|
|
371
|
+
app: z.ZodNullable<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
372
|
+
kind: z.ZodLiteral<"native">;
|
|
373
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
374
|
+
kind: z.ZodLiteral<"browser">;
|
|
375
|
+
startPath: z.ZodString;
|
|
376
|
+
}, z.core.$strip>], "kind">>;
|
|
371
377
|
}, z.core.$strip>;
|
|
372
378
|
export type DeviceCertificateLoginMethod = z.infer<typeof DeviceCertificateLoginMethodSchema>;
|
|
@@ -147,3 +147,20 @@ export declare const HUB_MDNS_TXT_KEYS: {
|
|
|
147
147
|
readonly url: 'url';
|
|
148
148
|
};
|
|
149
149
|
export declare const HUB_MDNS_ROLE = "hub";
|
|
150
|
+
/**
|
|
151
|
+
* How a hub finds agents to pair (D857): every agent publishes ONE mDNS service for its API
|
|
152
|
+
* port, paired or not. The TXT record carries only public facts. Finding an agent grants
|
|
153
|
+
* nothing: pairing still needs the six-digit code confirmed on both screens.
|
|
154
|
+
*/
|
|
155
|
+
export declare const AGENT_MDNS_SERVICE_TYPE = "camstack-agent";
|
|
156
|
+
/** The fully-qualified name a hub browses for. */
|
|
157
|
+
export declare const AGENT_MDNS_QUERY_NAME = "_camstack-agent._tcp.local";
|
|
158
|
+
/** The TXT keys of the agent advertisement. Every value is public. */
|
|
159
|
+
export declare const AGENT_MDNS_TXT_KEYS: {
|
|
160
|
+
readonly nodeId: 'nodeId';
|
|
161
|
+
readonly version: 'version';
|
|
162
|
+
/** `unpaired` | `pending` | `paired`. */
|
|
163
|
+
readonly state: 'state';
|
|
164
|
+
/** First 16 hex chars of the SHA-256 of the agent's mesh leaf; present once paired. */
|
|
165
|
+
readonly keyFingerprint: 'fp';
|
|
166
|
+
};
|
|
@@ -69,7 +69,7 @@ export { EMBEDDING_MODEL_FAILED, EMBEDDING_REQUIREMENTS_FAILED, EMBEDDING_REQUIR
|
|
|
69
69
|
export type { FailureContribution, IFailureContributionProvider, } from './failure-contribution.cap.js';
|
|
70
70
|
export { FailureContributionSchema, FailureReasonCountSchema, failureContributionCapability, } from './failure-contribution.cap.js';
|
|
71
71
|
export { filesystemBrowseCapability, type IFilesystemBrowseProvider, } from './filesystem-browse.cap.js';
|
|
72
|
-
export { AUTOMATIC_HUB_ADDRESS_FLAGS, checkRoleAddress, HUB_ADDRESS_ROLES, type HubAddressCheck, type HubAddressFlags, type HubAddressRole, type HubAddressRoleResolution, type HubAddressRoles, type HubAddressSource, type HubAppConnectionsResolution, HUB_MDNS_QUERY_NAME, HUB_MDNS_ROLE, HUB_MDNS_SERVICE_TYPE, HUB_MDNS_TXT_KEYS, hubAddressHostname, isDefaultAppConnectionEndpoint, isSingleHubAddressRole, PUBLIC_ENDPOINT_HTTP_REASON, resolveAppConnections, resolveHubAddressRoles, resolveInternalAddress, resolveNotificationTapAddress, resolvePublicEndpoint, SINGLE_HUB_ADDRESS_ROLES, type SingleHubAddressRole, selectAppConnectionEndpoints, validateCustomAddress, } from './hub-address.js';
|
|
72
|
+
export { AUTOMATIC_HUB_ADDRESS_FLAGS, checkRoleAddress, HUB_ADDRESS_ROLES, type HubAddressCheck, type HubAddressFlags, type HubAddressRole, type HubAddressRoleResolution, type HubAddressRoles, type HubAddressSource, type HubAppConnectionsResolution, HUB_MDNS_QUERY_NAME, HUB_MDNS_ROLE, HUB_MDNS_SERVICE_TYPE, HUB_MDNS_TXT_KEYS, AGENT_MDNS_QUERY_NAME, AGENT_MDNS_SERVICE_TYPE, AGENT_MDNS_TXT_KEYS, hubAddressHostname, isDefaultAppConnectionEndpoint, isSingleHubAddressRole, PUBLIC_ENDPOINT_HTTP_REASON, resolveAppConnections, resolveHubAddressRoles, resolveInternalAddress, resolveNotificationTapAddress, resolvePublicEndpoint, SINGLE_HUB_ADDRESS_ROLES, type SingleHubAddressRole, selectAppConnectionEndpoints, validateCustomAddress, } from './hub-address.js';
|
|
73
73
|
export { type HfModelResolution, HfModelResolutionSchema, type ILlmProvider, type LlmDefault, LlmDefaultSchema, type LlmDefaultSelector, LlmDefaultSelectorSchema, type LlmProfile, type LlmProfileKind, type LlmProfileKindDescriptor, LlmProfileKindDescriptorSchema, LlmProfileKindSchema, LlmProfileSchema, type LlmRuntimeNode, LlmRuntimeNodeSchema, type LlmUsageRollup, LlmUsageRollupSchema, llmCapability, type ManagedModelCatalogEntry, ManagedModelCatalogEntrySchema, } from './llm.cap.js';
|
|
74
74
|
export { type AppleFmAvailability, AppleFmAvailabilitySchema, type AppleFmUnavailableReason, AppleFmUnavailableReasonSchema, type ILlmRuntimeProvider, type LlmDownloadProgress, LlmDownloadProgressSchema, type LlmNodeModel, LlmNodeModelSchema, type LlmRuntimeAppleCompleteInput, LlmRuntimeAppleCompleteInputSchema, type LlmRuntimeCancelInput, LlmRuntimeCancelInputSchema, type LlmRuntimeCompleteInput, LlmRuntimeCompleteInputSchema, type LlmRuntimeDiskUsage, LlmRuntimeDiskUsageSchema, type LlmRuntimeStatus, LlmRuntimeStatusSchema, llmRuntimeCapability, type ManagedModelExtraFile, ManagedModelExtraFileSchema, type ManagedModelRef, ManagedModelRefSchema, type ManagedRuntimeConfig, ManagedRuntimeConfigSchema, } from './llm-runtime.cap.js';
|
|
75
75
|
export { type LlmErrorCode, LlmErrorCodeSchema, type LlmGenerateBaseInput, LlmGenerateBaseInputSchema, type LlmGenerateErr, LlmGenerateErrSchema, type LlmGenerateOk, LlmGenerateOkSchema, type LlmGenerateResult, LlmGenerateResultSchema, type LlmImage, LlmImageSchema, type LlmRefusalSource, LlmRefusalSourceSchema, type LlmRetryPolicy, LlmRetryPolicySchema, LlmTimeoutDefaults, type LlmUsage, LlmUsageSchema, } from './llm-shared.js';
|
|
@@ -60,6 +60,12 @@ export declare const RedirectLoginMethodSchema: z.ZodObject<{
|
|
|
60
60
|
"second-factor": "second-factor";
|
|
61
61
|
}>;
|
|
62
62
|
linkable: z.ZodOptional<z.ZodBoolean>;
|
|
63
|
+
app: z.ZodOptional<z.ZodNullable<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
64
|
+
kind: z.ZodLiteral<"native">;
|
|
65
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
66
|
+
kind: z.ZodLiteral<"browser">;
|
|
67
|
+
startPath: z.ZodString;
|
|
68
|
+
}, z.core.$strip>], "kind">>>;
|
|
63
69
|
}, z.core.$strip>;
|
|
64
70
|
/**
|
|
65
71
|
* A Module-Federation widget the login page mounts for an in-page
|
|
@@ -82,6 +88,12 @@ export declare const WidgetLoginMethodSchema: z.ZodObject<{
|
|
|
82
88
|
primary: "primary";
|
|
83
89
|
"second-factor": "second-factor";
|
|
84
90
|
}>;
|
|
91
|
+
app: z.ZodOptional<z.ZodNullable<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
92
|
+
kind: z.ZodLiteral<"native">;
|
|
93
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
94
|
+
kind: z.ZodLiteral<"browser">;
|
|
95
|
+
startPath: z.ZodString;
|
|
96
|
+
}, z.core.$strip>], "kind">>>;
|
|
85
97
|
}, z.core.$strip>;
|
|
86
98
|
/**
|
|
87
99
|
* A declarative WebAuthn ceremony the shell renders natively (no remote
|
|
@@ -99,6 +111,12 @@ export declare const PasskeyLoginMethodSchema: z.ZodObject<{
|
|
|
99
111
|
}>;
|
|
100
112
|
rpId: z.ZodString;
|
|
101
113
|
origin: z.ZodNullable<z.ZodString>;
|
|
114
|
+
app: z.ZodOptional<z.ZodNullable<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
115
|
+
kind: z.ZodLiteral<"native">;
|
|
116
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
117
|
+
kind: z.ZodLiteral<"browser">;
|
|
118
|
+
startPath: z.ZodString;
|
|
119
|
+
}, z.core.$strip>], "kind">>>;
|
|
102
120
|
}, z.core.$strip>;
|
|
103
121
|
/** One login-method contribution — redirect button, pre-auth widget, or native passkey ceremony. */
|
|
104
122
|
export declare const LoginMethodContributionSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
@@ -112,6 +130,12 @@ export declare const LoginMethodContributionSchema: z.ZodDiscriminatedUnion<[z.Z
|
|
|
112
130
|
"second-factor": "second-factor";
|
|
113
131
|
}>;
|
|
114
132
|
linkable: z.ZodOptional<z.ZodBoolean>;
|
|
133
|
+
app: z.ZodOptional<z.ZodNullable<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
134
|
+
kind: z.ZodLiteral<"native">;
|
|
135
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
136
|
+
kind: z.ZodLiteral<"browser">;
|
|
137
|
+
startPath: z.ZodString;
|
|
138
|
+
}, z.core.$strip>], "kind">>>;
|
|
115
139
|
}, z.core.$strip>, z.ZodObject<{
|
|
116
140
|
kind: z.ZodLiteral<"widget">;
|
|
117
141
|
id: z.ZodString;
|
|
@@ -126,6 +150,12 @@ export declare const LoginMethodContributionSchema: z.ZodDiscriminatedUnion<[z.Z
|
|
|
126
150
|
primary: "primary";
|
|
127
151
|
"second-factor": "second-factor";
|
|
128
152
|
}>;
|
|
153
|
+
app: z.ZodOptional<z.ZodNullable<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
154
|
+
kind: z.ZodLiteral<"native">;
|
|
155
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
156
|
+
kind: z.ZodLiteral<"browser">;
|
|
157
|
+
startPath: z.ZodString;
|
|
158
|
+
}, z.core.$strip>], "kind">>>;
|
|
129
159
|
}, z.core.$strip>, z.ZodObject<{
|
|
130
160
|
kind: z.ZodLiteral<"passkey">;
|
|
131
161
|
id: z.ZodString;
|
|
@@ -136,6 +166,12 @@ export declare const LoginMethodContributionSchema: z.ZodDiscriminatedUnion<[z.Z
|
|
|
136
166
|
}>;
|
|
137
167
|
rpId: z.ZodString;
|
|
138
168
|
origin: z.ZodNullable<z.ZodString>;
|
|
169
|
+
app: z.ZodOptional<z.ZodNullable<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
170
|
+
kind: z.ZodLiteral<"native">;
|
|
171
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
172
|
+
kind: z.ZodLiteral<"browser">;
|
|
173
|
+
startPath: z.ZodString;
|
|
174
|
+
}, z.core.$strip>], "kind">>>;
|
|
139
175
|
}, z.core.$strip>], "kind">;
|
|
140
176
|
export declare const loginMethodCapability: {
|
|
141
177
|
readonly name: 'login-method';
|
|
@@ -154,6 +190,12 @@ export declare const loginMethodCapability: {
|
|
|
154
190
|
"second-factor": "second-factor";
|
|
155
191
|
}>;
|
|
156
192
|
linkable: z.ZodOptional<z.ZodBoolean>;
|
|
193
|
+
app: z.ZodOptional<z.ZodNullable<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
194
|
+
kind: z.ZodLiteral<"native">;
|
|
195
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
196
|
+
kind: z.ZodLiteral<"browser">;
|
|
197
|
+
startPath: z.ZodString;
|
|
198
|
+
}, z.core.$strip>], "kind">>>;
|
|
157
199
|
}, z.core.$strip>, z.ZodObject<{
|
|
158
200
|
kind: z.ZodLiteral<"widget">;
|
|
159
201
|
id: z.ZodString;
|
|
@@ -168,6 +210,12 @@ export declare const loginMethodCapability: {
|
|
|
168
210
|
primary: "primary";
|
|
169
211
|
"second-factor": "second-factor";
|
|
170
212
|
}>;
|
|
213
|
+
app: z.ZodOptional<z.ZodNullable<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
214
|
+
kind: z.ZodLiteral<"native">;
|
|
215
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
216
|
+
kind: z.ZodLiteral<"browser">;
|
|
217
|
+
startPath: z.ZodString;
|
|
218
|
+
}, z.core.$strip>], "kind">>>;
|
|
171
219
|
}, z.core.$strip>, z.ZodObject<{
|
|
172
220
|
kind: z.ZodLiteral<"passkey">;
|
|
173
221
|
id: z.ZodString;
|
|
@@ -178,6 +226,12 @@ export declare const loginMethodCapability: {
|
|
|
178
226
|
}>;
|
|
179
227
|
rpId: z.ZodString;
|
|
180
228
|
origin: z.ZodNullable<z.ZodString>;
|
|
229
|
+
app: z.ZodOptional<z.ZodNullable<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
230
|
+
kind: z.ZodLiteral<"native">;
|
|
231
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
232
|
+
kind: z.ZodLiteral<"browser">;
|
|
233
|
+
startPath: z.ZodString;
|
|
234
|
+
}, z.core.$strip>], "kind">>>;
|
|
181
235
|
}, z.core.$strip>], "kind">>>, import("./capability-definition.js").CapabilityMethodKind>;
|
|
182
236
|
};
|
|
183
237
|
/** BIG PLAN 2: declarative mount hint — read by `@camstack/system` `buildCapRouters`. */
|
|
@@ -108,6 +108,15 @@ export declare const nodeCertificatesCapability: {
|
|
|
108
108
|
addresses: z.ZodArray<z.ZodString>;
|
|
109
109
|
pinnedCaFingerprintSha256: z.ZodNullable<z.ZodString>;
|
|
110
110
|
}, z.core.$strip>, "mutation">;
|
|
111
|
+
/**
|
|
112
|
+
* The hub unpairs this node (D857): it erases its mesh material, goes back to the
|
|
113
|
+
* unpaired state and advertises itself again. The call is answered first; the wire
|
|
114
|
+
* goes down right after, so the hub revokes the node's certificates BEFORE this
|
|
115
|
+
* connection drops, never after.
|
|
116
|
+
*/
|
|
117
|
+
readonly forgetHub: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{}, z.core.$strip>, z.ZodObject<{
|
|
118
|
+
ok: z.ZodLiteral<true>;
|
|
119
|
+
}, z.core.$strip>, "mutation">;
|
|
111
120
|
/** Install the hub-signed HTTPS leaf and hot-swap the serving context (no restart). */
|
|
112
121
|
readonly installHttpsCertificate: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
113
122
|
certPem: z.ZodString;
|
|
@@ -79,6 +79,15 @@ declare const SsoBridgeClaimsSchema: z.ZodObject<{
|
|
|
79
79
|
linkIntent: z.ZodOptional<z.ZodString>;
|
|
80
80
|
issuer: z.ZodOptional<z.ZodString>;
|
|
81
81
|
browserBinding: z.ZodOptional<z.ZodString>;
|
|
82
|
+
app: z.ZodOptional<z.ZodObject<{
|
|
83
|
+
codeChallenge: z.ZodString;
|
|
84
|
+
state: z.ZodString;
|
|
85
|
+
purpose: z.ZodEnum<{
|
|
86
|
+
"new-session": "new-session";
|
|
87
|
+
"step-up": "step-up";
|
|
88
|
+
}>;
|
|
89
|
+
redirect: z.ZodString;
|
|
90
|
+
}, z.core.$strip>>;
|
|
82
91
|
}, z.core.$strip>;
|
|
83
92
|
export declare const ssoBridgeCapability: {
|
|
84
93
|
readonly name: 'sso-bridge';
|
|
@@ -166,6 +175,15 @@ export declare const ssoBridgeCapability: {
|
|
|
166
175
|
linkIntent: z.ZodOptional<z.ZodString>;
|
|
167
176
|
issuer: z.ZodOptional<z.ZodString>;
|
|
168
177
|
browserBinding: z.ZodOptional<z.ZodString>;
|
|
178
|
+
app: z.ZodOptional<z.ZodObject<{
|
|
179
|
+
codeChallenge: z.ZodString;
|
|
180
|
+
state: z.ZodString;
|
|
181
|
+
purpose: z.ZodEnum<{
|
|
182
|
+
"new-session": "new-session";
|
|
183
|
+
"step-up": "step-up";
|
|
184
|
+
}>;
|
|
185
|
+
redirect: z.ZodString;
|
|
186
|
+
}, z.core.$strip>>;
|
|
169
187
|
}, z.core.$strip>;
|
|
170
188
|
ttlSec: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<"never">]>>;
|
|
171
189
|
}, z.core.$strip>, z.ZodObject<{
|
|
@@ -238,6 +256,15 @@ export declare const ssoBridgeCapability: {
|
|
|
238
256
|
linkIntent: z.ZodOptional<z.ZodString>;
|
|
239
257
|
issuer: z.ZodOptional<z.ZodString>;
|
|
240
258
|
browserBinding: z.ZodOptional<z.ZodString>;
|
|
259
|
+
app: z.ZodOptional<z.ZodObject<{
|
|
260
|
+
codeChallenge: z.ZodString;
|
|
261
|
+
state: z.ZodString;
|
|
262
|
+
purpose: z.ZodEnum<{
|
|
263
|
+
"new-session": "new-session";
|
|
264
|
+
"step-up": "step-up";
|
|
265
|
+
}>;
|
|
266
|
+
redirect: z.ZodString;
|
|
267
|
+
}, z.core.$strip>>;
|
|
241
268
|
}, z.core.$strip>>, import("./capability-definition.js").CapabilityMethodKind>;
|
|
242
269
|
};
|
|
243
270
|
};
|
package/dist/client.js
CHANGED
|
@@ -558,6 +558,12 @@ zod.z.object({
|
|
|
558
558
|
codec: zod.z.string().optional(),
|
|
559
559
|
resolution: CamStreamResolutionSchema.optional()
|
|
560
560
|
});
|
|
561
|
+
zod.z.enum(["new-session", "step-up"]);
|
|
562
|
+
/** How a native app starts one login method (D858), as `auth.listLoginMethods` reports it. */
|
|
563
|
+
var AppLoginPathSchema = zod.z.discriminatedUnion("kind", [zod.z.object({ kind: zod.z.literal("native") }), zod.z.object({
|
|
564
|
+
kind: zod.z.literal("browser"),
|
|
565
|
+
startPath: zod.z.string().startsWith("/")
|
|
566
|
+
})]);
|
|
561
567
|
//#endregion
|
|
562
568
|
//#region src/auth/device-certificate.ts
|
|
563
569
|
/**
|
|
@@ -790,7 +796,9 @@ zod.z.object({
|
|
|
790
796
|
signature: zod.z.literal(DEVICE_CERT_SIGNATURE),
|
|
791
797
|
messageVersion: zod.z.literal(DEVICE_SIGNATURE_MESSAGE_VERSION),
|
|
792
798
|
/** Which clients can execute it: a native app silently, a browser with a non-extractable WebCrypto key. */
|
|
793
|
-
clients: zod.z.array(zod.z.enum(["native", "web"]))
|
|
799
|
+
clients: zod.z.array(zod.z.enum(["native", "web"])),
|
|
800
|
+
/** The app executes it itself, silently (D858). */
|
|
801
|
+
app: AppLoginPathSchema.nullable()
|
|
794
802
|
});
|
|
795
803
|
//#endregion
|
|
796
804
|
//#region src/catalogs/sensor-active-state.ts
|
package/dist/client.mjs
CHANGED
|
@@ -557,6 +557,12 @@ z.object({
|
|
|
557
557
|
codec: z.string().optional(),
|
|
558
558
|
resolution: CamStreamResolutionSchema.optional()
|
|
559
559
|
});
|
|
560
|
+
z.enum(["new-session", "step-up"]);
|
|
561
|
+
/** How a native app starts one login method (D858), as `auth.listLoginMethods` reports it. */
|
|
562
|
+
var AppLoginPathSchema = z.discriminatedUnion("kind", [z.object({ kind: z.literal("native") }), z.object({
|
|
563
|
+
kind: z.literal("browser"),
|
|
564
|
+
startPath: z.string().startsWith("/")
|
|
565
|
+
})]);
|
|
560
566
|
//#endregion
|
|
561
567
|
//#region src/auth/device-certificate.ts
|
|
562
568
|
/**
|
|
@@ -789,7 +795,9 @@ z.object({
|
|
|
789
795
|
signature: z.literal(DEVICE_CERT_SIGNATURE),
|
|
790
796
|
messageVersion: z.literal(DEVICE_SIGNATURE_MESSAGE_VERSION),
|
|
791
797
|
/** Which clients can execute it: a native app silently, a browser with a non-extractable WebCrypto key. */
|
|
792
|
-
clients: z.array(z.enum(["native", "web"]))
|
|
798
|
+
clients: z.array(z.enum(["native", "web"])),
|
|
799
|
+
/** The app executes it itself, silently (D858). */
|
|
800
|
+
app: AppLoginPathSchema.nullable()
|
|
793
801
|
});
|
|
794
802
|
//#endregion
|
|
795
803
|
//#region src/catalogs/sensor-active-state.ts
|