@camstack/types 1.2.105 → 1.2.107
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/capabilities/addons.cap.d.ts +4 -4
- package/dist/capabilities/battery.cap.d.ts +4 -4
- package/dist/capabilities/control.cap.d.ts +4 -4
- package/dist/capabilities/core-blocks.cap.d.ts +8 -8
- package/dist/capabilities/custom-model-registry.cap.d.ts +4 -4
- package/dist/capabilities/data-store-provider.cap.d.ts +18 -0
- package/dist/capabilities/device-manager.cap.d.ts +1 -1
- package/dist/capabilities/face-gallery.cap.d.ts +3 -1
- package/dist/capabilities/llm-runtime.cap.d.ts +3 -3
- package/dist/capabilities/llm.cap.d.ts +4 -4
- package/dist/capabilities/model-convert.cap.d.ts +6 -6
- package/dist/capabilities/model-distributor.cap.d.ts +4 -4
- package/dist/capabilities/native-object-detection.cap.d.ts +15 -15
- package/dist/capabilities/notification-output.cap.d.ts +18 -18
- package/dist/capabilities/notification-rules.cap.d.ts +26 -26
- package/dist/capabilities/oauth-integration.cap.d.ts +2 -2
- package/dist/capabilities/osd-manager.cap.d.ts +14 -14
- package/dist/capabilities/pipeline-analytics.cap.d.ts +53 -53
- package/dist/capabilities/pipeline-executor.cap.d.ts +7 -7
- package/dist/capabilities/pipeline-orchestrator.cap.d.ts +19 -19
- package/dist/capabilities/plate-gallery.cap.d.ts +3 -1
- package/dist/capabilities/platform-probe.cap.d.ts +2 -2
- package/dist/capabilities/recording-export.cap.d.ts +7 -7
- package/dist/capabilities/recording.cap.d.ts +9 -30
- package/dist/capabilities/scene-monitor.cap.d.ts +8 -8
- package/dist/capabilities/settings-store.cap.d.ts +17 -2
- package/dist/capabilities/sso-bridge.cap.d.ts +3 -3
- package/dist/capabilities/storage-migration.cap.d.ts +1 -1
- package/dist/capabilities/stream-broker.cap.d.ts +6 -6
- package/dist/capabilities/user-management.cap.d.ts +20 -20
- package/dist/capabilities/vacuum-control.cap.d.ts +13 -13
- package/dist/encode-profile.d.ts +2 -2
- package/dist/generated/addon-api.d.ts +2 -6
- package/dist/health/wiring-health.d.ts +8 -8
- package/dist/index.js +126 -110
- package/dist/index.mjs +127 -105
- package/dist/interfaces/addon.d.ts +29 -7
- package/dist/interfaces/adoption-job.d.ts +2 -2
- package/dist/interfaces/ops-log.d.ts +2 -2
- package/dist/interfaces/recording-config.d.ts +7 -57
- package/dist/interfaces/relocate.d.ts +4 -4
- package/dist/interfaces/storage.d.ts +23 -0
- package/dist/lifecycle/job.d.ts +4 -4
- package/dist/schemas/auth-records.d.ts +4 -4
- package/dist/types/models.d.ts +7 -7
- package/package.json +1 -1
|
@@ -38,8 +38,8 @@ export type RecordingWeekday = z.infer<typeof RecordingWeekdaySchema>;
|
|
|
38
38
|
* every save (`activeModeForConfig`). Writing it has no effect.
|
|
39
39
|
*/
|
|
40
40
|
export declare const RecordingStorageModeSchema: z.ZodEnum<{
|
|
41
|
-
events: "events";
|
|
42
41
|
off: "off";
|
|
42
|
+
events: "events";
|
|
43
43
|
continuous: "continuous";
|
|
44
44
|
}>;
|
|
45
45
|
export type RecordingStorageMode = z.infer<typeof RecordingStorageModeSchema>;
|
|
@@ -161,53 +161,6 @@ export declare const RecordingRetentionSchema: z.ZodObject<{
|
|
|
161
161
|
maxSizeGb: z.ZodOptional<z.ZodNumber>;
|
|
162
162
|
}, z.core.$strip>;
|
|
163
163
|
export type RecordingRetention = z.infer<typeof RecordingRetentionSchema>;
|
|
164
|
-
/**
|
|
165
|
-
* Scrub-thumbnail fidelity preset — the single per-camera selector bundling the
|
|
166
|
-
* sprite tile RESOLUTION + JPEG QUALITY the recorder packs timeline-scrub
|
|
167
|
-
* previews at. Five graduated steps; absent on a config = `standard` (the
|
|
168
|
-
* shipped default, matching `sheet-geometry`/`sheet-composer`).
|
|
169
|
-
*
|
|
170
|
-
* Existing sheets are IMMUTABLE — a changed preset applies to NEW windows only.
|
|
171
|
-
* Each window's index sidecar carries its own tile dims, so a camera whose
|
|
172
|
-
* preset changed over time renders every historical window at the dims it was
|
|
173
|
-
* written with.
|
|
174
|
-
*/
|
|
175
|
-
export declare const ScrubThumbnailPresetSchema: z.ZodEnum<{
|
|
176
|
-
high: "high";
|
|
177
|
-
low: "low";
|
|
178
|
-
max: "max";
|
|
179
|
-
standard: "standard";
|
|
180
|
-
minimal: "minimal";
|
|
181
|
-
}>;
|
|
182
|
-
export type ScrubThumbnailPreset = z.infer<typeof ScrubThumbnailPresetSchema>;
|
|
183
|
-
/** Resolved sprite geometry + encode quality for a scrub-thumbnail preset. */
|
|
184
|
-
export interface ScrubThumbnailGeometry {
|
|
185
|
-
/** Tile width in px (16:9). */
|
|
186
|
-
readonly tileWidth: number;
|
|
187
|
-
/** Tile height in px (16:9). */
|
|
188
|
-
readonly tileHeight: number;
|
|
189
|
-
/** Sheet JPEG quality, 1..100 (higher = better). */
|
|
190
|
-
readonly quality: number;
|
|
191
|
-
}
|
|
192
|
-
/** The default preset when a config omits `scrubThumbnails`. */
|
|
193
|
-
export declare const DEFAULT_SCRUB_THUMBNAIL_PRESET: ScrubThumbnailPreset;
|
|
194
|
-
/**
|
|
195
|
-
* Preset → tile geometry + JPEG quality. Every step is 16:9; the graduated
|
|
196
|
-
* ladder trades sheet size (and remote fetch cost) for scrub crispness.
|
|
197
|
-
* `standard` matches the shipped `sheet-geometry`/`sheet-composer` defaults
|
|
198
|
-
* (480×270 q72), so an unset config is byte-identical to today. The map is
|
|
199
|
-
* strictly monotone in resolution AND quality across the ordered steps.
|
|
200
|
-
*/
|
|
201
|
-
export declare const SCRUB_THUMBNAIL_PRESETS: Record<ScrubThumbnailPreset, ScrubThumbnailGeometry>;
|
|
202
|
-
/** Human labels for each preset (resolution-tagged), for settings UIs. */
|
|
203
|
-
export declare const SCRUB_THUMBNAIL_PRESET_LABELS: Record<ScrubThumbnailPreset, string>;
|
|
204
|
-
/** Ordered low→high so a UI can render the ladder in graduated order. */
|
|
205
|
-
export declare const SCRUB_THUMBNAIL_PRESET_ORDER: readonly ScrubThumbnailPreset[];
|
|
206
|
-
/**
|
|
207
|
-
* Resolve the geometry for a recording config's scrub-thumbnail preset,
|
|
208
|
-
* defaulting to `standard` when unset. Pure — no I/O.
|
|
209
|
-
*/
|
|
210
|
-
export declare function resolveScrubThumbnailGeometry(preset: ScrubThumbnailPreset | undefined): ScrubThumbnailGeometry;
|
|
211
164
|
/**
|
|
212
165
|
* The full per-camera recording intent — the wire shape of a RecordingTarget.
|
|
213
166
|
*
|
|
@@ -216,15 +169,19 @@ export declare function resolveScrubThumbnailGeometry(preset: ScrubThumbnailPres
|
|
|
216
169
|
* other field is a storage knob (profiles, segment length, retention, scrub).
|
|
217
170
|
*
|
|
218
171
|
* STRICT on purpose: the legacy authoring surface (`schedule`/`schedules`/
|
|
219
|
-
* `triggers`/`preBufferSec`/`postBufferSec`/`rules`) was retired 2026-07-30
|
|
172
|
+
* `triggers`/`preBufferSec`/`postBufferSec`/`rules`) was retired 2026-07-30,
|
|
173
|
+
* and `scrubThumbnails` — a five-step fidelity knob for a sprite tier that was
|
|
174
|
+
* deleted on 2026-07-24 and had ZERO consumers in the recorder — on 2026-08-25
|
|
175
|
+
* (D62: a switch that writes a store nobody reads is worse than no switch).
|
|
176
|
+
* Stored rows keep loading: the READ schema is `.strip()` (config-store.ts).
|
|
220
177
|
* A stale caller must fail loudly — silently stripping its legacy intent would
|
|
221
178
|
* persist a band-less config, i.e. silently stop recording the camera.
|
|
222
179
|
*/
|
|
223
180
|
export declare const RecordingConfigSchema: z.ZodObject<{
|
|
224
181
|
enabled: z.ZodBoolean;
|
|
225
182
|
mode: z.ZodOptional<z.ZodEnum<{
|
|
226
|
-
events: "events";
|
|
227
183
|
off: "off";
|
|
184
|
+
events: "events";
|
|
228
185
|
continuous: "continuous";
|
|
229
186
|
}>>;
|
|
230
187
|
profiles: z.ZodOptional<z.ZodArray<z.ZodEnum<{
|
|
@@ -252,13 +209,6 @@ export declare const RecordingConfigSchema: z.ZodObject<{
|
|
|
252
209
|
maxAgeDays: z.ZodOptional<z.ZodNumber>;
|
|
253
210
|
maxSizeGb: z.ZodOptional<z.ZodNumber>;
|
|
254
211
|
}, z.core.$strip>>;
|
|
255
|
-
scrubThumbnails: z.ZodOptional<z.ZodEnum<{
|
|
256
|
-
high: "high";
|
|
257
|
-
low: "low";
|
|
258
|
-
max: "max";
|
|
259
|
-
standard: "standard";
|
|
260
|
-
minimal: "minimal";
|
|
261
|
-
}>>;
|
|
262
212
|
}, z.core.$strict>;
|
|
263
213
|
export type RecordingConfig = z.infer<typeof RecordingConfigSchema>;
|
|
264
214
|
/** The bands + enabled flag a mode is derived from — all {@link deriveRecordingMode} reads. */
|
|
@@ -16,20 +16,20 @@ import { z } from 'zod';
|
|
|
16
16
|
* runs at all.
|
|
17
17
|
*/
|
|
18
18
|
export declare const RelocateJobStateSchema: z.ZodEnum<{
|
|
19
|
+
running: "running";
|
|
19
20
|
queued: "queued";
|
|
20
21
|
done: "done";
|
|
21
22
|
failed: "failed";
|
|
22
|
-
running: "running";
|
|
23
23
|
cancelled: "cancelled";
|
|
24
24
|
}>;
|
|
25
25
|
export type RelocateJobState = z.infer<typeof RelocateJobStateSchema>;
|
|
26
26
|
export declare const RelocateJobSchema: z.ZodObject<{
|
|
27
27
|
jobId: z.ZodString;
|
|
28
28
|
state: z.ZodEnum<{
|
|
29
|
+
running: "running";
|
|
29
30
|
queued: "queued";
|
|
30
31
|
done: "done";
|
|
31
32
|
failed: "failed";
|
|
32
|
-
running: "running";
|
|
33
33
|
cancelled: "cancelled";
|
|
34
34
|
}>;
|
|
35
35
|
fromLocationId: z.ZodString;
|
|
@@ -162,10 +162,10 @@ export declare const StorageMigrationMoveSchema: z.ZodObject<{
|
|
|
162
162
|
toLocationId: z.ZodString;
|
|
163
163
|
moverJobId: z.ZodNullable<z.ZodString>;
|
|
164
164
|
state: z.ZodNullable<z.ZodEnum<{
|
|
165
|
+
running: "running";
|
|
165
166
|
queued: "queued";
|
|
166
167
|
done: "done";
|
|
167
168
|
failed: "failed";
|
|
168
|
-
running: "running";
|
|
169
169
|
cancelled: "cancelled";
|
|
170
170
|
}>>;
|
|
171
171
|
error: z.ZodNullable<z.ZodString>;
|
|
@@ -201,10 +201,10 @@ export declare const StorageMigrationJobSchema: z.ZodObject<{
|
|
|
201
201
|
toLocationId: z.ZodString;
|
|
202
202
|
moverJobId: z.ZodNullable<z.ZodString>;
|
|
203
203
|
state: z.ZodNullable<z.ZodEnum<{
|
|
204
|
+
running: "running";
|
|
204
205
|
queued: "queued";
|
|
205
206
|
done: "done";
|
|
206
207
|
failed: "failed";
|
|
207
|
-
running: "running";
|
|
208
208
|
cancelled: "cancelled";
|
|
209
209
|
}>>;
|
|
210
210
|
error: z.ZodNullable<z.ZodString>;
|
|
@@ -65,6 +65,29 @@ export interface SettingsQueryInput {
|
|
|
65
65
|
readonly namespace?: string;
|
|
66
66
|
readonly collection: SettingsCollection;
|
|
67
67
|
readonly filter?: QueryFilter;
|
|
68
|
+
/**
|
|
69
|
+
* Read ONLY these columns (plus the primary key, always). Omit for the whole
|
|
70
|
+
* row.
|
|
71
|
+
*
|
|
72
|
+
* A projection, not a predicate — which is why it sits here and not inside
|
|
73
|
+
* {@link QueryFilter}. `count` and `histogram` take a filter and answer a
|
|
74
|
+
* scalar; a column list inside the filter would be a field they could only
|
|
75
|
+
* ignore, and a filter object shared between `query` and `count` (the
|
|
76
|
+
* notification-centre artefact index does exactly that) would carry it into
|
|
77
|
+
* both. This repo has already paid for one silently-ignored filter field.
|
|
78
|
+
*
|
|
79
|
+
* **The engine REFUSES a name it cannot serve.** Not a column of the
|
|
80
|
+
* collection, or a collection whose row is a single JSON blob, and the call
|
|
81
|
+
* throws. The alternative — skipping it, the way an unresolvable PREDICATE is
|
|
82
|
+
* skipped — would hand back a record whose missing key is indistinguishable
|
|
83
|
+
* from a NULL in the database, and the caller cannot tell "I did not read it"
|
|
84
|
+
* from "it is not there". A predicate that over-matches returns extra rows; a
|
|
85
|
+
* projection that under-reads returns wrong VALUES.
|
|
86
|
+
*
|
|
87
|
+
* The returned `data` therefore contains exactly these keys and the primary
|
|
88
|
+
* key — absent means NOT READ, and every absent key was asked to be absent.
|
|
89
|
+
*/
|
|
90
|
+
readonly columns?: readonly string[];
|
|
68
91
|
}
|
|
69
92
|
export interface SettingsInsertInput<T extends object = Record<string, unknown>> {
|
|
70
93
|
readonly namespace?: string;
|
package/dist/lifecycle/job.d.ts
CHANGED
|
@@ -91,17 +91,17 @@ export declare const lifecycleTaskSchema: z.ZodObject<{
|
|
|
91
91
|
}, z.core.$strip>;
|
|
92
92
|
export type LifecycleTask = z.infer<typeof lifecycleTaskSchema>;
|
|
93
93
|
export declare const lifecycleJobStateSchema: z.ZodEnum<{
|
|
94
|
-
failed: "failed";
|
|
95
94
|
running: "running";
|
|
95
|
+
failed: "failed";
|
|
96
96
|
completed: "completed";
|
|
97
97
|
"partially-failed": "partially-failed";
|
|
98
98
|
cancelled: "cancelled";
|
|
99
99
|
}>;
|
|
100
100
|
export type LifecycleJobState = z.infer<typeof lifecycleJobStateSchema>;
|
|
101
101
|
export declare const lifecycleJobScopeSchema: z.ZodEnum<{
|
|
102
|
+
cluster: "cluster";
|
|
102
103
|
single: "single";
|
|
103
104
|
bulk: "bulk";
|
|
104
|
-
cluster: "cluster";
|
|
105
105
|
}>;
|
|
106
106
|
export type LifecycleJobScope = z.infer<typeof lifecycleJobScopeSchema>;
|
|
107
107
|
export declare const lifecycleJobSchema: z.ZodObject<{
|
|
@@ -115,9 +115,9 @@ export declare const lifecycleJobSchema: z.ZodObject<{
|
|
|
115
115
|
createdAtMs: z.ZodNumber;
|
|
116
116
|
createdBy: z.ZodString;
|
|
117
117
|
scope: z.ZodEnum<{
|
|
118
|
+
cluster: "cluster";
|
|
118
119
|
single: "single";
|
|
119
120
|
bulk: "bulk";
|
|
120
|
-
cluster: "cluster";
|
|
121
121
|
}>;
|
|
122
122
|
tasks: z.ZodArray<z.ZodObject<{
|
|
123
123
|
taskId: z.ZodString;
|
|
@@ -166,8 +166,8 @@ export declare const lifecycleJobSchema: z.ZodObject<{
|
|
|
166
166
|
finishedAtMs: z.ZodNullable<z.ZodNumber>;
|
|
167
167
|
}, z.core.$strip>>;
|
|
168
168
|
state: z.ZodEnum<{
|
|
169
|
-
failed: "failed";
|
|
170
169
|
running: "running";
|
|
170
|
+
failed: "failed";
|
|
171
171
|
completed: "completed";
|
|
172
172
|
"partially-failed": "partially-failed";
|
|
173
173
|
cancelled: "cancelled";
|
|
@@ -34,8 +34,8 @@ export declare const MethodAccessSchema: z.ZodEnum<{
|
|
|
34
34
|
}>;
|
|
35
35
|
export type MethodAccess = z.infer<typeof MethodAccessSchema>;
|
|
36
36
|
export declare const CapScopeSchema: z.ZodEnum<{
|
|
37
|
-
system: "system";
|
|
38
37
|
device: "device";
|
|
38
|
+
system: "system";
|
|
39
39
|
}>;
|
|
40
40
|
export type CapScope = z.infer<typeof CapScopeSchema>;
|
|
41
41
|
/**
|
|
@@ -96,8 +96,8 @@ declare const DeviceTokenScopeSchema: z.ZodObject<{
|
|
|
96
96
|
export declare const TokenScopeSchema: z.ZodPreprocess<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
97
97
|
type: z.ZodLiteral<"category">;
|
|
98
98
|
target: z.ZodEnum<{
|
|
99
|
-
system: "system";
|
|
100
99
|
device: "device";
|
|
100
|
+
system: "system";
|
|
101
101
|
}>;
|
|
102
102
|
access: z.ZodArray<z.ZodEnum<{
|
|
103
103
|
view: "view";
|
|
@@ -154,8 +154,8 @@ export declare const UserRecordSchema: z.ZodObject<{
|
|
|
154
154
|
scopes: z.ZodDefault<z.ZodArray<z.ZodPreprocess<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
155
155
|
type: z.ZodLiteral<"category">;
|
|
156
156
|
target: z.ZodEnum<{
|
|
157
|
-
system: "system";
|
|
158
157
|
device: "device";
|
|
158
|
+
system: "system";
|
|
159
159
|
}>;
|
|
160
160
|
access: z.ZodArray<z.ZodEnum<{
|
|
161
161
|
view: "view";
|
|
@@ -224,8 +224,8 @@ export declare const ScopedTokenSchema: z.ZodObject<{
|
|
|
224
224
|
scopes: z.ZodArray<z.ZodPreprocess<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
225
225
|
type: z.ZodLiteral<"category">;
|
|
226
226
|
target: z.ZodEnum<{
|
|
227
|
-
system: "system";
|
|
228
227
|
device: "device";
|
|
228
|
+
system: "system";
|
|
229
229
|
}>;
|
|
230
230
|
access: z.ZodArray<z.ZodEnum<{
|
|
231
231
|
view: "view";
|
package/dist/types/models.d.ts
CHANGED
|
@@ -121,8 +121,8 @@ export declare const ModelVariantGroupSchema: z.ZodObject<{
|
|
|
121
121
|
int8: "int8";
|
|
122
122
|
}>>;
|
|
123
123
|
optimization: z.ZodOptional<z.ZodEnum<{
|
|
124
|
-
fast: "fast";
|
|
125
124
|
standard: "standard";
|
|
125
|
+
fast: "fast";
|
|
126
126
|
}>>;
|
|
127
127
|
resolution: z.ZodOptional<z.ZodNumber>;
|
|
128
128
|
}, z.core.$strip>;
|
|
@@ -236,9 +236,9 @@ export declare const ModelCatalogEntrySchema: z.ZodObject<{
|
|
|
236
236
|
nhwc: "nhwc";
|
|
237
237
|
}>>;
|
|
238
238
|
inputNormalization: z.ZodOptional<z.ZodEnum<{
|
|
239
|
-
none: "none";
|
|
240
239
|
"zero-one": "zero-one";
|
|
241
240
|
imagenet: "imagenet";
|
|
241
|
+
none: "none";
|
|
242
242
|
}>>;
|
|
243
243
|
outputProbabilities: z.ZodOptional<z.ZodBoolean>;
|
|
244
244
|
preprocessMode: z.ZodOptional<z.ZodEnum<{
|
|
@@ -266,8 +266,8 @@ export declare const ModelCatalogEntrySchema: z.ZodObject<{
|
|
|
266
266
|
int8: "int8";
|
|
267
267
|
}>>;
|
|
268
268
|
optimization: z.ZodOptional<z.ZodEnum<{
|
|
269
|
-
fast: "fast";
|
|
270
269
|
standard: "standard";
|
|
270
|
+
fast: "fast";
|
|
271
271
|
}>>;
|
|
272
272
|
resolution: z.ZodOptional<z.ZodNumber>;
|
|
273
273
|
}, z.core.$strip>>;
|
|
@@ -351,19 +351,19 @@ export declare const ModelConvertMetadataSchema: z.ZodObject<{
|
|
|
351
351
|
nhwc: "nhwc";
|
|
352
352
|
}>>;
|
|
353
353
|
inputNormalization: z.ZodOptional<z.ZodEnum<{
|
|
354
|
-
none: "none";
|
|
355
354
|
"zero-one": "zero-one";
|
|
356
355
|
imagenet: "imagenet";
|
|
356
|
+
none: "none";
|
|
357
357
|
}>>;
|
|
358
358
|
preprocessMode: z.ZodOptional<z.ZodEnum<{
|
|
359
359
|
letterbox: "letterbox";
|
|
360
360
|
resize: "resize";
|
|
361
361
|
}>>;
|
|
362
362
|
outputFormat: z.ZodEnum<{
|
|
363
|
-
classification: "classification";
|
|
364
363
|
yolo: "yolo";
|
|
365
364
|
ssd: "ssd";
|
|
366
365
|
embedding: "embedding";
|
|
366
|
+
classification: "classification";
|
|
367
367
|
ocr: "ocr";
|
|
368
368
|
segmentation: "segmentation";
|
|
369
369
|
}>;
|
|
@@ -481,9 +481,9 @@ export declare const ConvertResultSchema: z.ZodObject<{
|
|
|
481
481
|
nhwc: "nhwc";
|
|
482
482
|
}>>;
|
|
483
483
|
inputNormalization: z.ZodOptional<z.ZodEnum<{
|
|
484
|
-
none: "none";
|
|
485
484
|
"zero-one": "zero-one";
|
|
486
485
|
imagenet: "imagenet";
|
|
486
|
+
none: "none";
|
|
487
487
|
}>>;
|
|
488
488
|
outputProbabilities: z.ZodOptional<z.ZodBoolean>;
|
|
489
489
|
preprocessMode: z.ZodOptional<z.ZodEnum<{
|
|
@@ -511,8 +511,8 @@ export declare const ConvertResultSchema: z.ZodObject<{
|
|
|
511
511
|
int8: "int8";
|
|
512
512
|
}>>;
|
|
513
513
|
optimization: z.ZodOptional<z.ZodEnum<{
|
|
514
|
-
fast: "fast";
|
|
515
514
|
standard: "standard";
|
|
515
|
+
fast: "fast";
|
|
516
516
|
}>>;
|
|
517
517
|
resolution: z.ZodOptional<z.ZodNumber>;
|
|
518
518
|
}, z.core.$strip>>;
|