@camstack/addon-pipeline-orchestrator 1.2.88 → 1.2.90
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/assets/viewer/.viewer-current-files.json +1 -1
- package/assets/viewer/.viewer-version +1 -1
- package/assets/viewer/_expo/static/js/web/{index-549c33f7607e53bba78ee62be3fe7bd3.js → index-bdb01da2325ee3ceecde733506d5aba4.js} +664 -663
- package/assets/viewer/index.html +1 -1
- package/dist/_stub.js +24 -24
- package/dist/{_virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_orchestrator_widgets-C3daqr_1.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_orchestrator_widgets-DdSF7Z5h.mjs} +3 -3
- package/dist/_virtual_mf___mfe_internal__addon_pipeline_orchestrator_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-BwZqYGZP.mjs +26 -0
- package/dist/{_virtual_mf___mfe_internal__addon_pipeline_orchestrator_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-7WxrFeM1.mjs → _virtual_mf___mfe_internal__addon_pipeline_orchestrator_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-BiicNLbC.mjs} +2 -2
- package/dist/{hostInit-CQOhaRRM.mjs → hostInit-Dnyhh979.mjs} +3 -3
- package/dist/index.js +147 -9
- package/dist/index.mjs +147 -9
- package/dist/remoteEntry.js +1 -1
- package/package.json +1 -1
- package/assets/viewer/_expo/static/js/web/Clipboard-f613900d51c7724e5591adb72d81419c.js +0 -8
- package/assets/viewer/_expo/static/js/web/Haptics-5dc04e8b21923be55abeb3f7cfd852ee.js +0 -3
- package/assets/viewer/_expo/static/js/web/node-fs-2202273b14547c9d9aef51b6bf6a1cd9.js +0 -1
- package/assets/viewer/_expo/static/js/web/node-path-9ac1e4e4152bfbea31fc86e744b9e12c.js +0 -1
- package/dist/_virtual_mf___mfe_internal__addon_pipeline_orchestrator_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-BtVo8S7A.mjs +0 -26
package/dist/index.js
CHANGED
|
@@ -30,7 +30,7 @@ node_fs = __toESM(node_fs);
|
|
|
30
30
|
let node_path = require("node:path");
|
|
31
31
|
node_path = __toESM(node_path);
|
|
32
32
|
let node_url = require("node:url");
|
|
33
|
-
//#region ../types/dist/event-category-
|
|
33
|
+
//#region ../types/dist/event-category-CIa_iT6b.mjs
|
|
34
34
|
var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
35
35
|
EventCategory["SystemBoot"] = "system.boot";
|
|
36
36
|
EventCategory["SystemAddonsReady"] = "system.addons-ready";
|
|
@@ -46,6 +46,15 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
|
46
46
|
*/
|
|
47
47
|
EventCategory["SystemRestartCompleted"] = "system.restart-completed";
|
|
48
48
|
/**
|
|
49
|
+
* The hub reissued its own TLS certificate at boot (`ensureTlsCert`).
|
|
50
|
+
* Emitted only when the material on disk actually changed, so an
|
|
51
|
+
* operator who trusted the old certificate by hand is told rather than
|
|
52
|
+
* discovering it as a browser error. Payload `TlsCertChangedPayload`.
|
|
53
|
+
*
|
|
54
|
+
* Rule: docs/decisions/adr-0227-*.md
|
|
55
|
+
*/
|
|
56
|
+
EventCategory["SystemTlsCertChanged"] = "system.tls-cert-changed";
|
|
57
|
+
/**
|
|
49
58
|
* A newer addon or server-root package version was found by the
|
|
50
59
|
* authoritative registry check. Emitted once when any observed
|
|
51
60
|
* `latestVersion` changes (or a package/node first appears behind);
|
|
@@ -21133,7 +21142,12 @@ var TerminalSessionInfoSchema = object({
|
|
|
21133
21142
|
var TerminalProfileInfoSchema = object({
|
|
21134
21143
|
profileId: string(),
|
|
21135
21144
|
label: string(),
|
|
21136
|
-
description: string().optional()
|
|
21145
|
+
description: string().optional(),
|
|
21146
|
+
/** Spawn defaults the instance form copies on create. */
|
|
21147
|
+
executable: string().optional(),
|
|
21148
|
+
args: array(string()).readonly().optional(),
|
|
21149
|
+
cwd: string().optional(),
|
|
21150
|
+
environment: array(string()).readonly().optional()
|
|
21137
21151
|
});
|
|
21138
21152
|
/**
|
|
21139
21153
|
* A durable operator-created Terminal instance. Profiles are templates; only
|
|
@@ -21146,7 +21160,11 @@ var TerminalInstanceInfoSchema = object({
|
|
|
21146
21160
|
profileId: string(),
|
|
21147
21161
|
profileLabel: string(),
|
|
21148
21162
|
name: string(),
|
|
21149
|
-
enabled: boolean()
|
|
21163
|
+
enabled: boolean(),
|
|
21164
|
+
executable: string(),
|
|
21165
|
+
args: array(string()).readonly(),
|
|
21166
|
+
cwd: string(),
|
|
21167
|
+
environment: array(string()).readonly()
|
|
21150
21168
|
});
|
|
21151
21169
|
var TerminalLegacyCameraSchema = object({
|
|
21152
21170
|
stableId: string(),
|
|
@@ -21176,7 +21194,21 @@ var TerminalOutputBatchSchema = object({
|
|
|
21176
21194
|
method(_void(), array(TerminalProfileInfoSchema).readonly(), { auth: "admin" }), method(_void(), array(TerminalInstanceInfoSchema).readonly(), { auth: "admin" }), method(object({
|
|
21177
21195
|
targetNodeId: string().min(1),
|
|
21178
21196
|
profileId: string().min(1),
|
|
21179
|
-
name: string().trim().min(1).max(160).optional()
|
|
21197
|
+
name: string().trim().min(1).max(160).optional(),
|
|
21198
|
+
executable: string().max(1024).optional(),
|
|
21199
|
+
args: array(string().max(2048)).max(64).optional(),
|
|
21200
|
+
cwd: string().max(1024).optional(),
|
|
21201
|
+
environment: array(string().max(4096)).max(64).optional()
|
|
21202
|
+
}), TerminalInstanceInfoSchema, {
|
|
21203
|
+
kind: "mutation",
|
|
21204
|
+
auth: "admin"
|
|
21205
|
+
}), method(object({
|
|
21206
|
+
instanceId: string().min(1),
|
|
21207
|
+
name: string().trim().min(1).max(160).optional(),
|
|
21208
|
+
executable: string().max(1024).optional(),
|
|
21209
|
+
args: array(string().max(2048)).max(64).optional(),
|
|
21210
|
+
cwd: string().max(1024).optional(),
|
|
21211
|
+
environment: array(string().max(4096)).max(64).optional()
|
|
21180
21212
|
}), TerminalInstanceInfoSchema, {
|
|
21181
21213
|
kind: "mutation",
|
|
21182
21214
|
auth: "admin"
|
|
@@ -21198,7 +21230,11 @@ method(_void(), array(TerminalProfileInfoSchema).readonly(), { auth: "admin" }),
|
|
|
21198
21230
|
}), method(_void(), array(TerminalSessionInfoSchema).readonly(), { auth: "admin" }), method(object({
|
|
21199
21231
|
profileId: string(),
|
|
21200
21232
|
cols: number().int().positive(),
|
|
21201
|
-
rows: number().int().positive()
|
|
21233
|
+
rows: number().int().positive(),
|
|
21234
|
+
executable: string().max(1024).optional(),
|
|
21235
|
+
args: array(string().max(2048)).max(64).optional(),
|
|
21236
|
+
cwd: string().max(1024).optional(),
|
|
21237
|
+
environment: array(string().max(4096)).max(64).optional()
|
|
21202
21238
|
}), TerminalSessionInfoSchema, {
|
|
21203
21239
|
kind: "mutation",
|
|
21204
21240
|
auth: "admin"
|
|
@@ -24146,6 +24182,20 @@ var AllowedAddressesSchema = object({
|
|
|
24146
24182
|
* Network Addresses admin page and persisted by the addon.
|
|
24147
24183
|
*/
|
|
24148
24184
|
addresses: array(string()).readonly() });
|
|
24185
|
+
var TlsStatusSchema = object({
|
|
24186
|
+
mode: _enum([
|
|
24187
|
+
"generated",
|
|
24188
|
+
"uploaded",
|
|
24189
|
+
"disabled"
|
|
24190
|
+
]),
|
|
24191
|
+
leafFingerprintSha256: string().nullable(),
|
|
24192
|
+
caFingerprintSha256: string().nullable(),
|
|
24193
|
+
validTo: string().nullable(),
|
|
24194
|
+
sans: array(string()),
|
|
24195
|
+
caCertPem: string().nullable(),
|
|
24196
|
+
reissueError: string().nullable(),
|
|
24197
|
+
restartRequired: boolean()
|
|
24198
|
+
});
|
|
24149
24199
|
method(_void(), ListResultSchema), method(_void(), PreferredSchema), method(object({
|
|
24150
24200
|
/**
|
|
24151
24201
|
* LEGACY HINT — do not send from new code. Kept optional so clients
|
|
@@ -24165,7 +24215,20 @@ method(_void(), ListResultSchema), method(_void(), PreferredSchema), method(obje
|
|
|
24165
24215
|
* to avoid mixed-content blocks in the browser. The public
|
|
24166
24216
|
* tunnel always emits `https://` regardless. */
|
|
24167
24217
|
scheme: _enum(["http", "https"]).optional()
|
|
24168
|
-
}), GetConnectionEndpointsResultSchema), method(_void(), NotificationEndpointSchema), method(object({ baseUrl: string().nullable() }), NotificationEndpointSchema, { kind: "mutation" }), method(_void(), AllowedAddressesSchema), method(AllowedAddressesSchema, object({ success: literal(true) }), { kind: "mutation" }), method(_void(), AllowedAddressesSchema, { kind: "mutation" })
|
|
24218
|
+
}), GetConnectionEndpointsResultSchema), method(_void(), NotificationEndpointSchema), method(object({ baseUrl: string().nullable() }), NotificationEndpointSchema, { kind: "mutation" }), method(_void(), AllowedAddressesSchema), method(AllowedAddressesSchema, object({ success: literal(true) }), { kind: "mutation" }), method(_void(), AllowedAddressesSchema, { kind: "mutation" }), method(_void(), TlsStatusSchema), method(object({ reason: string().optional() }), TlsStatusSchema, {
|
|
24219
|
+
kind: "mutation",
|
|
24220
|
+
auth: "admin"
|
|
24221
|
+
}), method(object({
|
|
24222
|
+
certPem: string().min(1),
|
|
24223
|
+
keyPem: string().min(1),
|
|
24224
|
+
caPem: string().optional()
|
|
24225
|
+
}), TlsStatusSchema, {
|
|
24226
|
+
kind: "mutation",
|
|
24227
|
+
auth: "admin"
|
|
24228
|
+
}), method(_void(), object({ pem: string() })), method(_void(), TlsStatusSchema, {
|
|
24229
|
+
kind: "mutation",
|
|
24230
|
+
auth: "admin"
|
|
24231
|
+
});
|
|
24169
24232
|
object({
|
|
24170
24233
|
/** Lifecycle state of the lock. `jammed` means the motor reported
|
|
24171
24234
|
* failure to reach the target — operator intervention required. */
|
|
@@ -30012,6 +30075,12 @@ Object.freeze({
|
|
|
30012
30075
|
addonId: null,
|
|
30013
30076
|
access: "create"
|
|
30014
30077
|
},
|
|
30078
|
+
"localNetwork.downloadCa": {
|
|
30079
|
+
capName: "local-network",
|
|
30080
|
+
capScope: "system",
|
|
30081
|
+
addonId: null,
|
|
30082
|
+
access: "view"
|
|
30083
|
+
},
|
|
30015
30084
|
"localNetwork.getAllowedAddresses": {
|
|
30016
30085
|
capName: "local-network",
|
|
30017
30086
|
capScope: "system",
|
|
@@ -30036,18 +30105,36 @@ Object.freeze({
|
|
|
30036
30105
|
addonId: null,
|
|
30037
30106
|
access: "view"
|
|
30038
30107
|
},
|
|
30108
|
+
"localNetwork.getTlsStatus": {
|
|
30109
|
+
capName: "local-network",
|
|
30110
|
+
capScope: "system",
|
|
30111
|
+
addonId: null,
|
|
30112
|
+
access: "view"
|
|
30113
|
+
},
|
|
30039
30114
|
"localNetwork.list": {
|
|
30040
30115
|
capName: "local-network",
|
|
30041
30116
|
capScope: "system",
|
|
30042
30117
|
addonId: null,
|
|
30043
30118
|
access: "view"
|
|
30044
30119
|
},
|
|
30120
|
+
"localNetwork.regenerateCertificate": {
|
|
30121
|
+
capName: "local-network",
|
|
30122
|
+
capScope: "system",
|
|
30123
|
+
addonId: null,
|
|
30124
|
+
access: "create"
|
|
30125
|
+
},
|
|
30045
30126
|
"localNetwork.resetAllowlistToBestMatch": {
|
|
30046
30127
|
capName: "local-network",
|
|
30047
30128
|
capScope: "system",
|
|
30048
30129
|
addonId: null,
|
|
30049
30130
|
access: "delete"
|
|
30050
30131
|
},
|
|
30132
|
+
"localNetwork.revertToGeneratedCertificate": {
|
|
30133
|
+
capName: "local-network",
|
|
30134
|
+
capScope: "system",
|
|
30135
|
+
addonId: null,
|
|
30136
|
+
access: "create"
|
|
30137
|
+
},
|
|
30051
30138
|
"localNetwork.setAllowedAddresses": {
|
|
30052
30139
|
capName: "local-network",
|
|
30053
30140
|
capScope: "system",
|
|
@@ -30060,6 +30147,12 @@ Object.freeze({
|
|
|
30060
30147
|
addonId: null,
|
|
30061
30148
|
access: "create"
|
|
30062
30149
|
},
|
|
30150
|
+
"localNetwork.uploadCertificate": {
|
|
30151
|
+
capName: "local-network",
|
|
30152
|
+
capScope: "system",
|
|
30153
|
+
addonId: null,
|
|
30154
|
+
access: "create"
|
|
30155
|
+
},
|
|
30063
30156
|
"lockControl.lock": {
|
|
30064
30157
|
capName: "lock-control",
|
|
30065
30158
|
capScope: "device",
|
|
@@ -32940,6 +33033,12 @@ Object.freeze({
|
|
|
32940
33033
|
addonId: null,
|
|
32941
33034
|
access: "create"
|
|
32942
33035
|
},
|
|
33036
|
+
"terminalSession.updateInstance": {
|
|
33037
|
+
capName: "terminal-session",
|
|
33038
|
+
capScope: "system",
|
|
33039
|
+
addonId: null,
|
|
33040
|
+
access: "create"
|
|
33041
|
+
},
|
|
32943
33042
|
"terminalSession.writeInput": {
|
|
32944
33043
|
capName: "terminal-session",
|
|
32945
33044
|
capScope: "system",
|
|
@@ -35494,6 +35593,35 @@ function clusterModelSettingKey(stepId) {
|
|
|
35494
35593
|
}
|
|
35495
35594
|
Object.freeze(Object.fromEntries(CLUSTER_MODEL_SCOPED_STEPS.map((s) => [s.stepId, s.defaultModelId])));
|
|
35496
35595
|
string().min(1);
|
|
35596
|
+
var CLUSTER_STEP_SETTING_FIELDS = [{
|
|
35597
|
+
stepId: "face-embedding",
|
|
35598
|
+
key: "minLandmarkFaceSize",
|
|
35599
|
+
label: "Min face size for recognition (detection px)",
|
|
35600
|
+
description: "Refuse to embed a face smaller than this IN THE DETECTION FRAME. Applies to every node — the enrolled gallery is one index, and two admission floors would fill it from two policies. 0 disables the gate.",
|
|
35601
|
+
type: "slider",
|
|
35602
|
+
min: 0,
|
|
35603
|
+
max: 64,
|
|
35604
|
+
step: 2,
|
|
35605
|
+
default: 24
|
|
35606
|
+
}];
|
|
35607
|
+
function clusterStepSettingKey(stepId, fieldKey) {
|
|
35608
|
+
return `clusterStepSetting:${stepId}:${fieldKey}`;
|
|
35609
|
+
}
|
|
35610
|
+
var ClusterSettingNumberSchema = number().finite();
|
|
35611
|
+
function readClusterStepSettings(config) {
|
|
35612
|
+
const out = {};
|
|
35613
|
+
for (const field of CLUSTER_STEP_SETTING_FIELDS) {
|
|
35614
|
+
const parsed = ClusterSettingNumberSchema.safeParse(config[clusterStepSettingKey(field.stepId, field.key)]);
|
|
35615
|
+
const value = parsed.success ? parsed.data : field.default;
|
|
35616
|
+
const existing = out[field.stepId] ?? {};
|
|
35617
|
+
out[field.stepId] = {
|
|
35618
|
+
...existing,
|
|
35619
|
+
[field.key]: value
|
|
35620
|
+
};
|
|
35621
|
+
}
|
|
35622
|
+
return out;
|
|
35623
|
+
}
|
|
35624
|
+
readClusterStepSettings({});
|
|
35497
35625
|
/**
|
|
35498
35626
|
* THE detail-crop convention — the single derivation of the rectangle a
|
|
35499
35627
|
* detail/enrichment step (clip-embedding, face-detection, plate-detection…)
|
|
@@ -48046,8 +48174,8 @@ function buildGlobalSettingsSections(options) {
|
|
|
48046
48174
|
id: CLUSTER_MODEL_SECTION_ID,
|
|
48047
48175
|
title: "Enrichment models",
|
|
48048
48176
|
tab: "pipeline",
|
|
48049
|
-
description: "The encoders that turn a crop into a VECTOR. One value each for the whole cluster, because each writes into a single shared index
|
|
48050
|
-
fields: CLUSTER_MODEL_SCOPED_STEPS.map((step) => ({
|
|
48177
|
+
description: "The encoders that turn a crop into a VECTOR, and the admission knobs those encoders share. One value each for the whole cluster, because each writes into a single shared index. Changing a model does not corrupt what is already stored (every vector carries the model that produced it) but it does STRAND it until a re-embed pass has run. Step knobs such as the face-size floor apply to every node for the same reason.",
|
|
48178
|
+
fields: [...CLUSTER_MODEL_SCOPED_STEPS.map((step) => ({
|
|
48051
48179
|
key: clusterModelSettingKey(step.stepId),
|
|
48052
48180
|
type: "select",
|
|
48053
48181
|
label: step.label,
|
|
@@ -48057,7 +48185,17 @@ function buildGlobalSettingsSections(options) {
|
|
|
48057
48185
|
label: o.label
|
|
48058
48186
|
})),
|
|
48059
48187
|
default: step.defaultModelId
|
|
48060
|
-
}))
|
|
48188
|
+
})), ...CLUSTER_STEP_SETTING_FIELDS.map((field) => ({
|
|
48189
|
+
key: clusterStepSettingKey(field.stepId, field.key),
|
|
48190
|
+
type: "slider",
|
|
48191
|
+
label: field.label,
|
|
48192
|
+
description: field.description,
|
|
48193
|
+
min: field.min,
|
|
48194
|
+
max: field.max,
|
|
48195
|
+
step: field.step,
|
|
48196
|
+
default: field.default,
|
|
48197
|
+
showValue: true
|
|
48198
|
+
}))]
|
|
48061
48199
|
},
|
|
48062
48200
|
{
|
|
48063
48201
|
id: DETAIL_CROP_SECTION_ID,
|
package/dist/index.mjs
CHANGED
|
@@ -2,7 +2,7 @@ import { randomUUID } from "node:crypto";
|
|
|
2
2
|
import fs from "node:fs";
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
import { fileURLToPath } from "node:url";
|
|
5
|
-
//#region ../types/dist/event-category-
|
|
5
|
+
//#region ../types/dist/event-category-CIa_iT6b.mjs
|
|
6
6
|
var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
7
7
|
EventCategory["SystemBoot"] = "system.boot";
|
|
8
8
|
EventCategory["SystemAddonsReady"] = "system.addons-ready";
|
|
@@ -18,6 +18,15 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
|
18
18
|
*/
|
|
19
19
|
EventCategory["SystemRestartCompleted"] = "system.restart-completed";
|
|
20
20
|
/**
|
|
21
|
+
* The hub reissued its own TLS certificate at boot (`ensureTlsCert`).
|
|
22
|
+
* Emitted only when the material on disk actually changed, so an
|
|
23
|
+
* operator who trusted the old certificate by hand is told rather than
|
|
24
|
+
* discovering it as a browser error. Payload `TlsCertChangedPayload`.
|
|
25
|
+
*
|
|
26
|
+
* Rule: docs/decisions/adr-0227-*.md
|
|
27
|
+
*/
|
|
28
|
+
EventCategory["SystemTlsCertChanged"] = "system.tls-cert-changed";
|
|
29
|
+
/**
|
|
21
30
|
* A newer addon or server-root package version was found by the
|
|
22
31
|
* authoritative registry check. Emitted once when any observed
|
|
23
32
|
* `latestVersion` changes (or a package/node first appears behind);
|
|
@@ -21105,7 +21114,12 @@ var TerminalSessionInfoSchema = object({
|
|
|
21105
21114
|
var TerminalProfileInfoSchema = object({
|
|
21106
21115
|
profileId: string(),
|
|
21107
21116
|
label: string(),
|
|
21108
|
-
description: string().optional()
|
|
21117
|
+
description: string().optional(),
|
|
21118
|
+
/** Spawn defaults the instance form copies on create. */
|
|
21119
|
+
executable: string().optional(),
|
|
21120
|
+
args: array(string()).readonly().optional(),
|
|
21121
|
+
cwd: string().optional(),
|
|
21122
|
+
environment: array(string()).readonly().optional()
|
|
21109
21123
|
});
|
|
21110
21124
|
/**
|
|
21111
21125
|
* A durable operator-created Terminal instance. Profiles are templates; only
|
|
@@ -21118,7 +21132,11 @@ var TerminalInstanceInfoSchema = object({
|
|
|
21118
21132
|
profileId: string(),
|
|
21119
21133
|
profileLabel: string(),
|
|
21120
21134
|
name: string(),
|
|
21121
|
-
enabled: boolean()
|
|
21135
|
+
enabled: boolean(),
|
|
21136
|
+
executable: string(),
|
|
21137
|
+
args: array(string()).readonly(),
|
|
21138
|
+
cwd: string(),
|
|
21139
|
+
environment: array(string()).readonly()
|
|
21122
21140
|
});
|
|
21123
21141
|
var TerminalLegacyCameraSchema = object({
|
|
21124
21142
|
stableId: string(),
|
|
@@ -21148,7 +21166,21 @@ var TerminalOutputBatchSchema = object({
|
|
|
21148
21166
|
method(_void(), array(TerminalProfileInfoSchema).readonly(), { auth: "admin" }), method(_void(), array(TerminalInstanceInfoSchema).readonly(), { auth: "admin" }), method(object({
|
|
21149
21167
|
targetNodeId: string().min(1),
|
|
21150
21168
|
profileId: string().min(1),
|
|
21151
|
-
name: string().trim().min(1).max(160).optional()
|
|
21169
|
+
name: string().trim().min(1).max(160).optional(),
|
|
21170
|
+
executable: string().max(1024).optional(),
|
|
21171
|
+
args: array(string().max(2048)).max(64).optional(),
|
|
21172
|
+
cwd: string().max(1024).optional(),
|
|
21173
|
+
environment: array(string().max(4096)).max(64).optional()
|
|
21174
|
+
}), TerminalInstanceInfoSchema, {
|
|
21175
|
+
kind: "mutation",
|
|
21176
|
+
auth: "admin"
|
|
21177
|
+
}), method(object({
|
|
21178
|
+
instanceId: string().min(1),
|
|
21179
|
+
name: string().trim().min(1).max(160).optional(),
|
|
21180
|
+
executable: string().max(1024).optional(),
|
|
21181
|
+
args: array(string().max(2048)).max(64).optional(),
|
|
21182
|
+
cwd: string().max(1024).optional(),
|
|
21183
|
+
environment: array(string().max(4096)).max(64).optional()
|
|
21152
21184
|
}), TerminalInstanceInfoSchema, {
|
|
21153
21185
|
kind: "mutation",
|
|
21154
21186
|
auth: "admin"
|
|
@@ -21170,7 +21202,11 @@ method(_void(), array(TerminalProfileInfoSchema).readonly(), { auth: "admin" }),
|
|
|
21170
21202
|
}), method(_void(), array(TerminalSessionInfoSchema).readonly(), { auth: "admin" }), method(object({
|
|
21171
21203
|
profileId: string(),
|
|
21172
21204
|
cols: number().int().positive(),
|
|
21173
|
-
rows: number().int().positive()
|
|
21205
|
+
rows: number().int().positive(),
|
|
21206
|
+
executable: string().max(1024).optional(),
|
|
21207
|
+
args: array(string().max(2048)).max(64).optional(),
|
|
21208
|
+
cwd: string().max(1024).optional(),
|
|
21209
|
+
environment: array(string().max(4096)).max(64).optional()
|
|
21174
21210
|
}), TerminalSessionInfoSchema, {
|
|
21175
21211
|
kind: "mutation",
|
|
21176
21212
|
auth: "admin"
|
|
@@ -24118,6 +24154,20 @@ var AllowedAddressesSchema = object({
|
|
|
24118
24154
|
* Network Addresses admin page and persisted by the addon.
|
|
24119
24155
|
*/
|
|
24120
24156
|
addresses: array(string()).readonly() });
|
|
24157
|
+
var TlsStatusSchema = object({
|
|
24158
|
+
mode: _enum([
|
|
24159
|
+
"generated",
|
|
24160
|
+
"uploaded",
|
|
24161
|
+
"disabled"
|
|
24162
|
+
]),
|
|
24163
|
+
leafFingerprintSha256: string().nullable(),
|
|
24164
|
+
caFingerprintSha256: string().nullable(),
|
|
24165
|
+
validTo: string().nullable(),
|
|
24166
|
+
sans: array(string()),
|
|
24167
|
+
caCertPem: string().nullable(),
|
|
24168
|
+
reissueError: string().nullable(),
|
|
24169
|
+
restartRequired: boolean()
|
|
24170
|
+
});
|
|
24121
24171
|
method(_void(), ListResultSchema), method(_void(), PreferredSchema), method(object({
|
|
24122
24172
|
/**
|
|
24123
24173
|
* LEGACY HINT — do not send from new code. Kept optional so clients
|
|
@@ -24137,7 +24187,20 @@ method(_void(), ListResultSchema), method(_void(), PreferredSchema), method(obje
|
|
|
24137
24187
|
* to avoid mixed-content blocks in the browser. The public
|
|
24138
24188
|
* tunnel always emits `https://` regardless. */
|
|
24139
24189
|
scheme: _enum(["http", "https"]).optional()
|
|
24140
|
-
}), GetConnectionEndpointsResultSchema), method(_void(), NotificationEndpointSchema), method(object({ baseUrl: string().nullable() }), NotificationEndpointSchema, { kind: "mutation" }), method(_void(), AllowedAddressesSchema), method(AllowedAddressesSchema, object({ success: literal(true) }), { kind: "mutation" }), method(_void(), AllowedAddressesSchema, { kind: "mutation" })
|
|
24190
|
+
}), GetConnectionEndpointsResultSchema), method(_void(), NotificationEndpointSchema), method(object({ baseUrl: string().nullable() }), NotificationEndpointSchema, { kind: "mutation" }), method(_void(), AllowedAddressesSchema), method(AllowedAddressesSchema, object({ success: literal(true) }), { kind: "mutation" }), method(_void(), AllowedAddressesSchema, { kind: "mutation" }), method(_void(), TlsStatusSchema), method(object({ reason: string().optional() }), TlsStatusSchema, {
|
|
24191
|
+
kind: "mutation",
|
|
24192
|
+
auth: "admin"
|
|
24193
|
+
}), method(object({
|
|
24194
|
+
certPem: string().min(1),
|
|
24195
|
+
keyPem: string().min(1),
|
|
24196
|
+
caPem: string().optional()
|
|
24197
|
+
}), TlsStatusSchema, {
|
|
24198
|
+
kind: "mutation",
|
|
24199
|
+
auth: "admin"
|
|
24200
|
+
}), method(_void(), object({ pem: string() })), method(_void(), TlsStatusSchema, {
|
|
24201
|
+
kind: "mutation",
|
|
24202
|
+
auth: "admin"
|
|
24203
|
+
});
|
|
24141
24204
|
object({
|
|
24142
24205
|
/** Lifecycle state of the lock. `jammed` means the motor reported
|
|
24143
24206
|
* failure to reach the target — operator intervention required. */
|
|
@@ -29984,6 +30047,12 @@ Object.freeze({
|
|
|
29984
30047
|
addonId: null,
|
|
29985
30048
|
access: "create"
|
|
29986
30049
|
},
|
|
30050
|
+
"localNetwork.downloadCa": {
|
|
30051
|
+
capName: "local-network",
|
|
30052
|
+
capScope: "system",
|
|
30053
|
+
addonId: null,
|
|
30054
|
+
access: "view"
|
|
30055
|
+
},
|
|
29987
30056
|
"localNetwork.getAllowedAddresses": {
|
|
29988
30057
|
capName: "local-network",
|
|
29989
30058
|
capScope: "system",
|
|
@@ -30008,18 +30077,36 @@ Object.freeze({
|
|
|
30008
30077
|
addonId: null,
|
|
30009
30078
|
access: "view"
|
|
30010
30079
|
},
|
|
30080
|
+
"localNetwork.getTlsStatus": {
|
|
30081
|
+
capName: "local-network",
|
|
30082
|
+
capScope: "system",
|
|
30083
|
+
addonId: null,
|
|
30084
|
+
access: "view"
|
|
30085
|
+
},
|
|
30011
30086
|
"localNetwork.list": {
|
|
30012
30087
|
capName: "local-network",
|
|
30013
30088
|
capScope: "system",
|
|
30014
30089
|
addonId: null,
|
|
30015
30090
|
access: "view"
|
|
30016
30091
|
},
|
|
30092
|
+
"localNetwork.regenerateCertificate": {
|
|
30093
|
+
capName: "local-network",
|
|
30094
|
+
capScope: "system",
|
|
30095
|
+
addonId: null,
|
|
30096
|
+
access: "create"
|
|
30097
|
+
},
|
|
30017
30098
|
"localNetwork.resetAllowlistToBestMatch": {
|
|
30018
30099
|
capName: "local-network",
|
|
30019
30100
|
capScope: "system",
|
|
30020
30101
|
addonId: null,
|
|
30021
30102
|
access: "delete"
|
|
30022
30103
|
},
|
|
30104
|
+
"localNetwork.revertToGeneratedCertificate": {
|
|
30105
|
+
capName: "local-network",
|
|
30106
|
+
capScope: "system",
|
|
30107
|
+
addonId: null,
|
|
30108
|
+
access: "create"
|
|
30109
|
+
},
|
|
30023
30110
|
"localNetwork.setAllowedAddresses": {
|
|
30024
30111
|
capName: "local-network",
|
|
30025
30112
|
capScope: "system",
|
|
@@ -30032,6 +30119,12 @@ Object.freeze({
|
|
|
30032
30119
|
addonId: null,
|
|
30033
30120
|
access: "create"
|
|
30034
30121
|
},
|
|
30122
|
+
"localNetwork.uploadCertificate": {
|
|
30123
|
+
capName: "local-network",
|
|
30124
|
+
capScope: "system",
|
|
30125
|
+
addonId: null,
|
|
30126
|
+
access: "create"
|
|
30127
|
+
},
|
|
30035
30128
|
"lockControl.lock": {
|
|
30036
30129
|
capName: "lock-control",
|
|
30037
30130
|
capScope: "device",
|
|
@@ -32912,6 +33005,12 @@ Object.freeze({
|
|
|
32912
33005
|
addonId: null,
|
|
32913
33006
|
access: "create"
|
|
32914
33007
|
},
|
|
33008
|
+
"terminalSession.updateInstance": {
|
|
33009
|
+
capName: "terminal-session",
|
|
33010
|
+
capScope: "system",
|
|
33011
|
+
addonId: null,
|
|
33012
|
+
access: "create"
|
|
33013
|
+
},
|
|
32915
33014
|
"terminalSession.writeInput": {
|
|
32916
33015
|
capName: "terminal-session",
|
|
32917
33016
|
capScope: "system",
|
|
@@ -35466,6 +35565,35 @@ function clusterModelSettingKey(stepId) {
|
|
|
35466
35565
|
}
|
|
35467
35566
|
Object.freeze(Object.fromEntries(CLUSTER_MODEL_SCOPED_STEPS.map((s) => [s.stepId, s.defaultModelId])));
|
|
35468
35567
|
string().min(1);
|
|
35568
|
+
var CLUSTER_STEP_SETTING_FIELDS = [{
|
|
35569
|
+
stepId: "face-embedding",
|
|
35570
|
+
key: "minLandmarkFaceSize",
|
|
35571
|
+
label: "Min face size for recognition (detection px)",
|
|
35572
|
+
description: "Refuse to embed a face smaller than this IN THE DETECTION FRAME. Applies to every node — the enrolled gallery is one index, and two admission floors would fill it from two policies. 0 disables the gate.",
|
|
35573
|
+
type: "slider",
|
|
35574
|
+
min: 0,
|
|
35575
|
+
max: 64,
|
|
35576
|
+
step: 2,
|
|
35577
|
+
default: 24
|
|
35578
|
+
}];
|
|
35579
|
+
function clusterStepSettingKey(stepId, fieldKey) {
|
|
35580
|
+
return `clusterStepSetting:${stepId}:${fieldKey}`;
|
|
35581
|
+
}
|
|
35582
|
+
var ClusterSettingNumberSchema = number().finite();
|
|
35583
|
+
function readClusterStepSettings(config) {
|
|
35584
|
+
const out = {};
|
|
35585
|
+
for (const field of CLUSTER_STEP_SETTING_FIELDS) {
|
|
35586
|
+
const parsed = ClusterSettingNumberSchema.safeParse(config[clusterStepSettingKey(field.stepId, field.key)]);
|
|
35587
|
+
const value = parsed.success ? parsed.data : field.default;
|
|
35588
|
+
const existing = out[field.stepId] ?? {};
|
|
35589
|
+
out[field.stepId] = {
|
|
35590
|
+
...existing,
|
|
35591
|
+
[field.key]: value
|
|
35592
|
+
};
|
|
35593
|
+
}
|
|
35594
|
+
return out;
|
|
35595
|
+
}
|
|
35596
|
+
readClusterStepSettings({});
|
|
35469
35597
|
/**
|
|
35470
35598
|
* THE detail-crop convention — the single derivation of the rectangle a
|
|
35471
35599
|
* detail/enrichment step (clip-embedding, face-detection, plate-detection…)
|
|
@@ -48018,8 +48146,8 @@ function buildGlobalSettingsSections(options) {
|
|
|
48018
48146
|
id: CLUSTER_MODEL_SECTION_ID,
|
|
48019
48147
|
title: "Enrichment models",
|
|
48020
48148
|
tab: "pipeline",
|
|
48021
|
-
description: "The encoders that turn a crop into a VECTOR. One value each for the whole cluster, because each writes into a single shared index
|
|
48022
|
-
fields: CLUSTER_MODEL_SCOPED_STEPS.map((step) => ({
|
|
48149
|
+
description: "The encoders that turn a crop into a VECTOR, and the admission knobs those encoders share. One value each for the whole cluster, because each writes into a single shared index. Changing a model does not corrupt what is already stored (every vector carries the model that produced it) but it does STRAND it until a re-embed pass has run. Step knobs such as the face-size floor apply to every node for the same reason.",
|
|
48150
|
+
fields: [...CLUSTER_MODEL_SCOPED_STEPS.map((step) => ({
|
|
48023
48151
|
key: clusterModelSettingKey(step.stepId),
|
|
48024
48152
|
type: "select",
|
|
48025
48153
|
label: step.label,
|
|
@@ -48029,7 +48157,17 @@ function buildGlobalSettingsSections(options) {
|
|
|
48029
48157
|
label: o.label
|
|
48030
48158
|
})),
|
|
48031
48159
|
default: step.defaultModelId
|
|
48032
|
-
}))
|
|
48160
|
+
})), ...CLUSTER_STEP_SETTING_FIELDS.map((field) => ({
|
|
48161
|
+
key: clusterStepSettingKey(field.stepId, field.key),
|
|
48162
|
+
type: "slider",
|
|
48163
|
+
label: field.label,
|
|
48164
|
+
description: field.description,
|
|
48165
|
+
min: field.min,
|
|
48166
|
+
max: field.max,
|
|
48167
|
+
step: field.step,
|
|
48168
|
+
default: field.default,
|
|
48169
|
+
showValue: true
|
|
48170
|
+
}))]
|
|
48033
48171
|
},
|
|
48034
48172
|
{
|
|
48035
48173
|
id: DETAIL_CROP_SECTION_ID,
|
package/dist/remoteEntry.js
CHANGED
|
@@ -30,7 +30,7 @@ async function d(e) {
|
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
async function f() {
|
|
33
|
-
return l ||= d(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_orchestrator_widgets-
|
|
33
|
+
return l ||= d(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_orchestrator_widgets-DdSF7Z5h.mjs")).catch((e) => {
|
|
34
34
|
throw l = void 0, e;
|
|
35
35
|
}), l;
|
|
36
36
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@camstack/addon-pipeline-orchestrator",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.90",
|
|
4
4
|
"description": "Hub-side camera-to-agent load balancer — tracks runner capacity and dispatches attachCamera calls to the optimal pipeline-runner instance",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"camstack",
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
__d(function(g,r,i,a,m,_e,d){"use strict";Object.defineProperty(_e,'__esModule',{value:!0}),Object.defineProperty(_e,"ClipboardPasteButton",{enumerable:!0,get:function(){return c.ClipboardPasteButton}}),_e.getStringAsync=async function(t={}){if(!s.default.getStringAsync)throw new n.UnavailabilityError('Clipboard','getStringAsync');return await s.default.getStringAsync(t)},_e.setStringAsync=async function(t,e={}){if(!s.default.setStringAsync)throw new n.UnavailabilityError('Clipboard','setStringAsync');return s.default.setStringAsync(t,e)},_e.hasStringAsync=function(){if(!s.default.hasStringAsync)throw new n.UnavailabilityError('Clipboard','hasStringAsync');return s.default.hasStringAsync()},_e.getUrlAsync=async function(){if(!s.default.getUrlAsync)throw new n.UnavailabilityError('Clipboard','getUrlAsync');return await s.default.getUrlAsync()},_e.setUrlAsync=async function(t){if(!s.default.setUrlAsync)throw new n.UnavailabilityError('Clipboard','setUrlAsync');return s.default.setUrlAsync(t)},_e.hasUrlAsync=async function(){if(!s.default.hasUrlAsync)throw new n.UnavailabilityError('Clipboard','hasUrlAsync');return await s.default.hasUrlAsync()},_e.getImageAsync=async function(t){if(!s.default.getImageAsync)throw new n.UnavailabilityError('Clipboard','getImageAsync');return await s.default.getImageAsync(t)},_e.setImageAsync=async function(t){if(!s.default.setImageAsync)throw new n.UnavailabilityError('Clipboard','setImageAsync');return s.default.setImageAsync(t)},_e.hasImageAsync=async function(){if(!s.default.hasImageAsync)throw new n.UnavailabilityError('Clipboard','hasImageAsync');return s.default.hasImageAsync()},_e.addClipboardListener=function(t){return s.default.addListener(e.clipboardEventName,t)},_e.removeClipboardListener=function(t){t.remove()},Object.defineProperty(_e,"isPasteButtonAvailable",{enumerable:!0,get:function(){return o}});var t,n=r(d[0]),e=r(d[1]),s=(t=e)&&t.__esModule?t:{default:t},l=r(d[2]);Object.keys(l).forEach(function(t){'default'===t||Object.prototype.hasOwnProperty.call(_e,t)||Object.defineProperty(_e,t,{enumerable:!0,get:function(){return l[t]}})});var c=r(d[3]);const o=!1},2229,[289,2232,2236,2237]);
|
|
2
|
-
__d(function(g,r,i,a,m,_e,d){"use strict";Object.defineProperty(_e,'__esModule',{value:!0}),Object.defineProperty(_e,"default",{enumerable:!0,get:function(){return n.default}}),Object.defineProperty(_e,"clipboardEventName",{enumerable:!0,get:function(){return u}});var e,t=r(d[0]),n=(e=t)&&e.__esModule?e:{default:e};const u='onClipboardChanged'},2232,[2233]);
|
|
3
|
-
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return c}});var t=r(d[0]),n=r(d[1]),o=r(d[2]),c={async getStringAsync(c){if(!navigator.clipboard)throw new t.ClipboardUnavailableException;try{if(c.preferredFormat===o.StringFormat.HTML){const t=await navigator.clipboard.read(),o=await(0,n.findHtmlInClipboardAsync)(t);return o?await new Response(o).text():await navigator.clipboard.readText()}{let t=await navigator.clipboard.readText();if(!t||''===t){const o=await navigator.clipboard.read(),c=await(0,n.findHtmlInClipboardAsync)(o),l=await(c?.text());t=(0,n.htmlToPlainText)(l??'')}return t}}catch(o){if('object'==typeof o&&'NotAllowedError'===o?.name||await(0,n.isClipboardPermissionDeniedAsync)())throw new t.NoPermissionException;try{return window.clipboardData.getData('Text')}catch{return Promise.reject(new Error('Unable to retrieve item from clipboard'))}}},async setStringAsync(c,l){if(l.inputFormat===o.StringFormat.HTML){if(!navigator.clipboard)throw new t.ClipboardUnavailableException;try{const t=(p=c,new ClipboardItem({'text/html':new Blob([p],{type:'text/html'}),'text/plain':new Blob([(0,n.htmlToPlainText)(p)],{type:'text/plain'})}));return await navigator.clipboard.write([t]),!0}catch(o){if('object'==typeof o&&'NotAllowedError'===o?.name||await(0,n.isClipboardPermissionDeniedAsync)())throw new t.NoPermissionException;throw new t.CopyFailureException(o.message)}}try{if(!navigator.clipboard)throw new Error;return await navigator.clipboard.writeText(c),!0}catch{return s(c)}var p},hasStringAsync:async()=>await l(['text/plain','text/html']),async getImageAsync(o){if(!navigator.clipboard)throw new t.ClipboardUnavailableException;try{const t=await navigator.clipboard.read(),o=await(0,n.findImageInClipboardAsync)(t);if(!o)return null;const[c,l]=await Promise.all([(0,n.blobToBase64Async)(o),(0,n.getImageSizeFromBlobAsync)(o)]);return{data:c,size:l}}catch(o){if('object'==typeof o&&'NotAllowedError'===o?.name||await(0,n.isClipboardPermissionDeniedAsync)())throw new t.NoPermissionException;throw new t.PasteFailureException(o.message)}},async setImageAsync(o){if(!navigator.clipboard)throw new t.ClipboardUnavailableException;try{const t=(0,n.base64toBlob)(o,'image/png');await navigator.clipboard.write([new ClipboardItem({[t.type]:t})])}catch(n){throw new t.CopyFailureException(n.message)}},hasImageAsync:async()=>await l(['image/png','image/jpeg']),addClipboardListener(){},removeClipboardListener(){}};async function l(o){if(!navigator.clipboard)throw new t.ClipboardUnavailableException;try{return(await navigator.clipboard.read()).flatMap(t=>t.types).some(t=>o.includes(t))}catch(o){if('object'==typeof o&&'NotAllowedError'===o?.name||await(0,n.isClipboardPermissionDeniedAsync)())throw new t.NoPermissionException;throw o}}function s(t){const n=document.createElement('textarea');n.textContent=t,document.body.appendChild(n),n.select();try{return document.execCommand('copy'),!0}catch{return!1}finally{document.body.removeChild(n)}}},2233,[2234,2235,2236]);
|
|
4
|
-
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"ClipboardUnavailableException",{enumerable:!0,get:function(){return t}}),Object.defineProperty(e,"CopyFailureException",{enumerable:!0,get:function(){return n}}),Object.defineProperty(e,"PasteFailureException",{enumerable:!0,get:function(){return s}}),Object.defineProperty(e,"NoPermissionException",{enumerable:!0,get:function(){return c}});var o=r(d[0]);class t extends o.CodedError{constructor(){super('ERR_CLIPBOARD_UNAVAILABLE',"The 'AsyncClipboard' API is not available on this browser")}}class n extends o.CodedError{constructor(o){super('ERR_COPY_FAILURE',`Failed to copy to clipboard: ${o}`)}}class s extends o.CodedError{constructor(o){super('ERR_COPY_FAILURE',`Failed to paste from clipboard: ${o}`)}}class c extends o.CodedError{constructor(){super('ERR_NO_PERMISSION','User denied permission to access clipboard')}}},2234,[289]);
|
|
5
|
-
__d(function(g,r,_i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),e.base64toBlob=function(n,t){t=t||'';const o=1024,i=atob(n),s=i.length,c=Math.ceil(s/o),l=new Array(c);for(let n=0;n<c;++n){const t=n*o,c=Math.min(t+o,s),u=new Array(c-t);for(let n=t,o=0;n<c;++o,++n){const t=i[n];null!=t&&(u[o]=t.charCodeAt(0))}l[n]=new Uint8Array(u)}return new Blob(l,{type:t})},e.blobToBase64Async=function(n){return new Promise((t,o)=>{const i=new FileReader;i.onloadend=()=>t(i.result),i.readAsDataURL(n)})},e.htmlToPlainText=function(n){const t=document.createElement('div');return t.innerHTML=n,t.textContent||t.innerText||''},e.getImageSizeFromBlobAsync=function(n){return new Promise((t,o)=>{const i=URL.createObjectURL(n),s=document.createElement('img');s.src=i,s.onload=function(){t({width:s.width,height:s.height})}})},e.findImageInClipboardAsync=async function(n){for(const t of n){if(t.types.some(n=>'image/png'===n))return await t.getType('image/png');if(t.types.some(n=>'image/jpeg'===n))return await t.getType('image/jpeg')}return null},e.findHtmlInClipboardAsync=async function(n){for(const t of n)if(t.types.some(n=>'text/html'===n))return await t.getType('text/html');return null},e.isClipboardPermissionDeniedAsync=async function(){return'denied'===(await navigator.permissions.query({name:'clipboard-read'})).state}},2235,[]);
|
|
6
|
-
__d(function(g,r,i,a,m,e,d){"use strict";var t,n;Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"ContentType",{enumerable:!0,get:function(){return t}}),Object.defineProperty(e,"StringFormat",{enumerable:!0,get:function(){return n}}),(function(t){t.PLAIN_TEXT="plain-text",t.HTML="html",t.IMAGE="image",t.URL="url"})(t||(t={})),(function(t){t.PLAIN_TEXT="plainText",t.HTML="html"})(n||(n={}))},2236,[]);
|
|
7
|
-
__d(function(g,r,i,a,m,_e,d){"use strict";const e=["onPress"];function t(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(_e,'__esModule',{value:!0}),_e.ClipboardPasteButton=function(t){let{onPress:o}=t,l=(0,n.default)(t,e);if(!u.default)return null;return(0,s.jsx)(u.default,Object.assign({onPastePressed:({nativeEvent:e})=>{o(e)}},l))};var n=t(r(d[0])),s=r(d[1]),u=t(r(d[2]))},2237,[120,10,2238]);
|
|
8
|
-
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return t}}),r(d[0]),r(d[1]);var t=void 0},2238,[289,136]);
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
__d(function(g,r,i,a,m,_e,d){"use strict";Object.defineProperty(_e,'__esModule',{value:!0}),_e.notificationAsync=async function(e=o.NotificationFeedbackType.Success){if(!c.default?.notificationAsync)throw new t.UnavailabilityError('Haptics','notificationAsync');await c.default.notificationAsync(e)},_e.impactAsync=async function(e=o.ImpactFeedbackStyle.Medium){if(!c.default?.impactAsync)throw new t.UnavailabilityError('Haptic','impactAsync');await c.default.impactAsync(e)},_e.selectionAsync=async function(){if(!c.default?.selectionAsync)throw new t.UnavailabilityError('Haptic','selectionAsync');await c.default.selectionAsync()},_e.performAndroidHapticsAsync=async function(e){return},Object.defineProperty(_e,"NotificationFeedbackType",{enumerable:!0,get:function(){return o.NotificationFeedbackType}}),Object.defineProperty(_e,"ImpactFeedbackStyle",{enumerable:!0,get:function(){return o.ImpactFeedbackStyle}}),Object.defineProperty(_e,"AndroidHaptics",{enumerable:!0,get:function(){return o.AndroidHaptics}});var e,t=r(d[0]),n=r(d[1]),c=(e=n)&&e.__esModule?e:{default:e},o=r(d[2])},2226,[289,2230,2231]);
|
|
2
|
-
__d(function(g,r,_i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return u}});var t=r(d[0]);const n={[t.NotificationFeedbackType.Success]:[40,100,40],[t.NotificationFeedbackType.Warning]:[50,100,50],[t.NotificationFeedbackType.Error]:[60,100,60,100,60],[t.ImpactFeedbackStyle.Light]:[40],[t.ImpactFeedbackStyle.Medium]:[50],[t.ImpactFeedbackStyle.Heavy]:[60],[t.ImpactFeedbackStyle.Soft]:[35],[t.ImpactFeedbackStyle.Rigid]:[45],selection:[50]};function i(){return'undefined'!=typeof window&&'navigator'in window&&'vibrate'in navigator}function c(){try{const t=document.createElement('label');t.ariaHidden='true',t.style.display='none';const n=document.createElement('input');n.type='checkbox',n.setAttribute('switch',''),t.appendChild(n),document.head.appendChild(t),t.click(),document.head.removeChild(t)}catch{}}const o='undefined'!=typeof window&&window.matchMedia('(pointer: coarse)').matches;function s(t){i()?navigator.vibrate(t):o&&c()}var u={async notificationAsync(s){if(i())return void navigator.vibrate(n[s]);if(!o)return;const u=s===t.NotificationFeedbackType.Error?3:2;for(let t=0;t<u;t++)t>0&&await new Promise(t=>setTimeout(t,120)),c()},async impactAsync(t){s(n[t])},async selectionAsync(){s(n.selection)}}},2230,[2231]);
|
|
3
|
-
__d(function(g,r,i,a,m,e,d){"use strict";Object.defineProperty(e,'__esModule',{value:!0}),Object.defineProperty(e,"NotificationFeedbackType",{enumerable:!0,get:function(){return t}}),Object.defineProperty(e,"ImpactFeedbackStyle",{enumerable:!0,get:function(){return n}}),Object.defineProperty(e,"AndroidHaptics",{enumerable:!0,get:function(){return o}});let t=(function(t){return t.Success="success",t.Warning="warning",t.Error="error",t})({}),n=(function(t){return t.Light="light",t.Medium="medium",t.Heavy="heavy",t.Soft="soft",t.Rigid="rigid",t})({}),o=(function(t){return t.Confirm="confirm",t.Reject="reject",t.Gesture_Start="gesture-start",t.Gesture_End="gesture-end",t.Toggle_On="toggle-on",t.Toggle_Off="toggle-off",t.Clock_Tick="clock-tick",t.Context_Click="context-click",t.Drag_Start="drag-start",t.Keyboard_Tap="keyboard-tap",t.Keyboard_Press="keyboard-press",t.Keyboard_Release="keyboard-release",t.Long_Press="long-press",t.Virtual_Key="virtual-key",t.Virtual_Key_Release="virtual-key-release",t.No_Haptics="no-haptics",t.Segment_Tick="segment-tick",t.Segment_Frequent_Tick="segment-frequent-tick",t.Text_Handle_Move="text-handle-move",t})({})},2231,[]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__d(function(g,r,i,a,m,e,d){function n(){throw new Error("node:fs is unavailable in the Viewer runtime")}m.exports={chmodSync:n,createWriteStream:n,existsSync:n,mkdirSync:n,promises:new Proxy({},{get:()=>n}),readFileSync:n,readdirSync:n,renameSync:n,rmSync:n,unlinkSync:n,writeFileSync:n}},2228,[]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__d(function(g,r,i,a,m,e,d){function n(){throw new Error("node:path is unavailable in the Viewer runtime")}m.exports={basename:n,join:n}},2227,[]);
|