@camstack/addon-smtp-nodemailer 1.1.14 → 1.1.16

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.
@@ -14918,7 +14918,17 @@ var AgentAddonConfigSchema = object({
14918
14918
  });
14919
14919
  var AgentPipelineSettingsSchema = object({
14920
14920
  addonDefaults: record(string(), AgentAddonConfigSchema).readonly(),
14921
- maxCameras: number().int().nonnegative().nullable().default(null)
14921
+ maxCameras: number().int().nonnegative().nullable().default(null),
14922
+ /** Per-node detection weight (relative share for the quota balancer). */
14923
+ detectWeight: number().positive().optional(),
14924
+ /** Node is eligible to run the detection pipeline (decode + inference). */
14925
+ detect: boolean().optional(),
14926
+ /** Node is eligible to host decoder sessions. */
14927
+ decode: boolean().optional(),
14928
+ /** Node is eligible to run audio-analyzer sessions. */
14929
+ audio: boolean().optional(),
14930
+ /** Node is eligible to be the ingest / source-owner (serve the restream). */
14931
+ ingest: boolean().optional()
14922
14932
  });
14923
14933
  var CameraPipelineForAgentSchema = object({
14924
14934
  steps: array(PipelineStepInputSchema).readonly(),
@@ -14993,7 +15003,10 @@ var AgentLoadSummarySchema = object({
14993
15003
  online: boolean(),
14994
15004
  load: RunnerLocalLoadSchema,
14995
15005
  /** Computed score used by the L2 capacity balancer (lower = less loaded). */
14996
- score: number()
15006
+ score: number(),
15007
+ /** This node's decode hwaccel backend (per-node `probedBestHwaccel`), or null
15008
+ * when not yet probed — for the cluster Pipeline table UI (P0.2). */
15009
+ decodeHwaccel: string().nullable()
14997
15010
  });
14998
15011
  /**
14999
15012
  * Aggregate metrics across the whole detection cluster. Replaces the legacy
@@ -15221,6 +15234,21 @@ method(object({
15221
15234
  }), object({ success: literal(true) }), {
15222
15235
  kind: "mutation",
15223
15236
  auth: "admin"
15237
+ }), method(object({
15238
+ agentNodeId: string(),
15239
+ detectWeight: number().positive().nullable()
15240
+ }), object({ success: literal(true) }), {
15241
+ kind: "mutation",
15242
+ auth: "admin"
15243
+ }), method(object({
15244
+ agentNodeId: string(),
15245
+ detect: boolean().nullable().optional(),
15246
+ decode: boolean().nullable().optional(),
15247
+ audio: boolean().nullable().optional(),
15248
+ ingest: boolean().nullable().optional()
15249
+ }), object({ success: literal(true) }), {
15250
+ kind: "mutation",
15251
+ auth: "admin"
15224
15252
  }), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
15225
15253
  deviceId: number(),
15226
15254
  addonId: string(),
@@ -17542,7 +17570,7 @@ var HardwareEncoderIdSchema = _enum([
17542
17570
  "libx264",
17543
17571
  "libx265"
17544
17572
  ]);
17545
- var HardwareEncodersSchema = object({
17573
+ object({
17546
17574
  encoders: array(object({
17547
17575
  encoder: HardwareEncoderIdSchema,
17548
17576
  codec: _enum(["H264", "H265"]),
@@ -17561,15 +17589,7 @@ var HardwareEncodersSchema = object({
17561
17589
  defaultH265: HardwareEncoderIdSchema,
17562
17590
  probedAt: number()
17563
17591
  });
17564
- /**
17565
- * Decode-side companion to {@link HardwareEncodersSchema}: the `-hwaccel`
17566
- * methods the configured ffmpeg binary actually supports (parsed from
17567
- * `ffmpeg -hwaccels`). Used to gate decode-hwaccel attempts so the transcode
17568
- * egress never spends a spawn on a backend this build cannot offer. Per-stream
17569
- * decode fragility (e.g. VideoToolbox HEVC) is still handled by the egress's
17570
- * software fallback — this only filters out wholly-unsupported backends.
17571
- */
17572
- var HardwareDecodeAccelsSchema = object({
17592
+ object({
17573
17593
  methods: array(string()).readonly(),
17574
17594
  probedAt: number()
17575
17595
  });
@@ -17632,13 +17652,7 @@ var ResolvedInferenceConfigSchema = object({
17632
17652
  format: ModelFormatSchema,
17633
17653
  reason: string()
17634
17654
  });
17635
- method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema), method(_void(), HardwareEncodersSchema), method(_void(), HardwareEncodersSchema, {
17636
- kind: "mutation",
17637
- auth: "admin"
17638
- }), method(_void(), HardwareDecodeAccelsSchema), method(_void(), HardwareDecodeAccelsSchema, {
17639
- kind: "mutation",
17640
- auth: "admin"
17641
- });
17655
+ method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema);
17642
17656
  var PtzPresetSchema = object({
17643
17657
  id: string(),
17644
17658
  name: string()
@@ -21107,6 +21121,18 @@ Object.freeze({
21107
21121
  addonId: null,
21108
21122
  access: "create"
21109
21123
  },
21124
+ "pipelineOrchestrator.setAgentCapabilities": {
21125
+ capName: "pipeline-orchestrator",
21126
+ capScope: "system",
21127
+ addonId: null,
21128
+ access: "create"
21129
+ },
21130
+ "pipelineOrchestrator.setAgentDetectWeight": {
21131
+ capName: "pipeline-orchestrator",
21132
+ capScope: "system",
21133
+ addonId: null,
21134
+ access: "create"
21135
+ },
21110
21136
  "pipelineOrchestrator.setAgentMaxCameras": {
21111
21137
  capName: "pipeline-orchestrator",
21112
21138
  capScope: "system",
@@ -21263,30 +21289,6 @@ Object.freeze({
21263
21289
  addonId: null,
21264
21290
  access: "view"
21265
21291
  },
21266
- "platformProbe.getHardwareDecodeAccels": {
21267
- capName: "platform-probe",
21268
- capScope: "system",
21269
- addonId: null,
21270
- access: "view"
21271
- },
21272
- "platformProbe.getHardwareEncoders": {
21273
- capName: "platform-probe",
21274
- capScope: "system",
21275
- addonId: null,
21276
- access: "view"
21277
- },
21278
- "platformProbe.refreshHardwareDecodeAccels": {
21279
- capName: "platform-probe",
21280
- capScope: "system",
21281
- addonId: null,
21282
- access: "create"
21283
- },
21284
- "platformProbe.refreshHardwareEncoders": {
21285
- capName: "platform-probe",
21286
- capScope: "system",
21287
- addonId: null,
21288
- access: "create"
21289
- },
21290
21292
  "platformProbe.resolveHwAccel": {
21291
21293
  capName: "platform-probe",
21292
21294
  capScope: "system",
@@ -14916,7 +14916,17 @@ var AgentAddonConfigSchema = object({
14916
14916
  });
14917
14917
  var AgentPipelineSettingsSchema = object({
14918
14918
  addonDefaults: record(string(), AgentAddonConfigSchema).readonly(),
14919
- maxCameras: number().int().nonnegative().nullable().default(null)
14919
+ maxCameras: number().int().nonnegative().nullable().default(null),
14920
+ /** Per-node detection weight (relative share for the quota balancer). */
14921
+ detectWeight: number().positive().optional(),
14922
+ /** Node is eligible to run the detection pipeline (decode + inference). */
14923
+ detect: boolean().optional(),
14924
+ /** Node is eligible to host decoder sessions. */
14925
+ decode: boolean().optional(),
14926
+ /** Node is eligible to run audio-analyzer sessions. */
14927
+ audio: boolean().optional(),
14928
+ /** Node is eligible to be the ingest / source-owner (serve the restream). */
14929
+ ingest: boolean().optional()
14920
14930
  });
14921
14931
  var CameraPipelineForAgentSchema = object({
14922
14932
  steps: array(PipelineStepInputSchema).readonly(),
@@ -14991,7 +15001,10 @@ var AgentLoadSummarySchema = object({
14991
15001
  online: boolean(),
14992
15002
  load: RunnerLocalLoadSchema,
14993
15003
  /** Computed score used by the L2 capacity balancer (lower = less loaded). */
14994
- score: number()
15004
+ score: number(),
15005
+ /** This node's decode hwaccel backend (per-node `probedBestHwaccel`), or null
15006
+ * when not yet probed — for the cluster Pipeline table UI (P0.2). */
15007
+ decodeHwaccel: string().nullable()
14995
15008
  });
14996
15009
  /**
14997
15010
  * Aggregate metrics across the whole detection cluster. Replaces the legacy
@@ -15219,6 +15232,21 @@ method(object({
15219
15232
  }), object({ success: literal(true) }), {
15220
15233
  kind: "mutation",
15221
15234
  auth: "admin"
15235
+ }), method(object({
15236
+ agentNodeId: string(),
15237
+ detectWeight: number().positive().nullable()
15238
+ }), object({ success: literal(true) }), {
15239
+ kind: "mutation",
15240
+ auth: "admin"
15241
+ }), method(object({
15242
+ agentNodeId: string(),
15243
+ detect: boolean().nullable().optional(),
15244
+ decode: boolean().nullable().optional(),
15245
+ audio: boolean().nullable().optional(),
15246
+ ingest: boolean().nullable().optional()
15247
+ }), object({ success: literal(true) }), {
15248
+ kind: "mutation",
15249
+ auth: "admin"
15222
15250
  }), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
15223
15251
  deviceId: number(),
15224
15252
  addonId: string(),
@@ -17540,7 +17568,7 @@ var HardwareEncoderIdSchema = _enum([
17540
17568
  "libx264",
17541
17569
  "libx265"
17542
17570
  ]);
17543
- var HardwareEncodersSchema = object({
17571
+ object({
17544
17572
  encoders: array(object({
17545
17573
  encoder: HardwareEncoderIdSchema,
17546
17574
  codec: _enum(["H264", "H265"]),
@@ -17559,15 +17587,7 @@ var HardwareEncodersSchema = object({
17559
17587
  defaultH265: HardwareEncoderIdSchema,
17560
17588
  probedAt: number()
17561
17589
  });
17562
- /**
17563
- * Decode-side companion to {@link HardwareEncodersSchema}: the `-hwaccel`
17564
- * methods the configured ffmpeg binary actually supports (parsed from
17565
- * `ffmpeg -hwaccels`). Used to gate decode-hwaccel attempts so the transcode
17566
- * egress never spends a spawn on a backend this build cannot offer. Per-stream
17567
- * decode fragility (e.g. VideoToolbox HEVC) is still handled by the egress's
17568
- * software fallback — this only filters out wholly-unsupported backends.
17569
- */
17570
- var HardwareDecodeAccelsSchema = object({
17590
+ object({
17571
17591
  methods: array(string()).readonly(),
17572
17592
  probedAt: number()
17573
17593
  });
@@ -17630,13 +17650,7 @@ var ResolvedInferenceConfigSchema = object({
17630
17650
  format: ModelFormatSchema,
17631
17651
  reason: string()
17632
17652
  });
17633
- method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema), method(_void(), HardwareEncodersSchema), method(_void(), HardwareEncodersSchema, {
17634
- kind: "mutation",
17635
- auth: "admin"
17636
- }), method(_void(), HardwareDecodeAccelsSchema), method(_void(), HardwareDecodeAccelsSchema, {
17637
- kind: "mutation",
17638
- auth: "admin"
17639
- });
17653
+ method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema);
17640
17654
  var PtzPresetSchema = object({
17641
17655
  id: string(),
17642
17656
  name: string()
@@ -21105,6 +21119,18 @@ Object.freeze({
21105
21119
  addonId: null,
21106
21120
  access: "create"
21107
21121
  },
21122
+ "pipelineOrchestrator.setAgentCapabilities": {
21123
+ capName: "pipeline-orchestrator",
21124
+ capScope: "system",
21125
+ addonId: null,
21126
+ access: "create"
21127
+ },
21128
+ "pipelineOrchestrator.setAgentDetectWeight": {
21129
+ capName: "pipeline-orchestrator",
21130
+ capScope: "system",
21131
+ addonId: null,
21132
+ access: "create"
21133
+ },
21108
21134
  "pipelineOrchestrator.setAgentMaxCameras": {
21109
21135
  capName: "pipeline-orchestrator",
21110
21136
  capScope: "system",
@@ -21261,30 +21287,6 @@ Object.freeze({
21261
21287
  addonId: null,
21262
21288
  access: "view"
21263
21289
  },
21264
- "platformProbe.getHardwareDecodeAccels": {
21265
- capName: "platform-probe",
21266
- capScope: "system",
21267
- addonId: null,
21268
- access: "view"
21269
- },
21270
- "platformProbe.getHardwareEncoders": {
21271
- capName: "platform-probe",
21272
- capScope: "system",
21273
- addonId: null,
21274
- access: "view"
21275
- },
21276
- "platformProbe.refreshHardwareDecodeAccels": {
21277
- capName: "platform-probe",
21278
- capScope: "system",
21279
- addonId: null,
21280
- access: "create"
21281
- },
21282
- "platformProbe.refreshHardwareEncoders": {
21283
- capName: "platform-probe",
21284
- capScope: "system",
21285
- addonId: null,
21286
- access: "create"
21287
- },
21288
21290
  "platformProbe.resolveHwAccel": {
21289
21291
  capName: "platform-probe",
21290
21292
  capScope: "system",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-smtp-nodemailer",
3
- "version": "1.1.14",
3
+ "version": "1.1.16",
4
4
  "description": "SMTP email provider addon for CamStack — wraps `nodemailer` and registers a `smtp-provider` cap collection entry. Used by magic-link login + notifier addons.",
5
5
  "keywords": [
6
6
  "camstack",