@camstack/types 1.2.435 → 1.2.436
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/CHANGELOG.md +9 -0
- package/dist/capabilities/addons.cap.d.ts +8 -0
- package/dist/capabilities/index.d.ts +1 -1
- package/dist/capabilities/notification-output.cap.d.ts +70 -0
- package/dist/client.js +49 -1
- package/dist/client.mjs +49 -1
- package/dist/composition/helpers/index.d.ts +1 -1
- package/dist/composition/helpers/source-pick.d.ts +7 -0
- package/dist/{composition-CZImLpOI.mjs → composition-DwA0uVW5.mjs} +1 -0
- package/dist/{composition-BZf_gqG7.js → composition-WNkEpwkF.js} +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +150 -10
- package/dist/index.mjs +147 -11
- package/dist/interfaces/addon.d.ts +8 -0
- package/dist/node.js +1 -1
- package/dist/node.mjs +1 -1
- package/dist/notification/delivery-params.d.ts +15 -0
- package/dist/vendor-login-proxy/index.d.ts +1 -1
- package/dist/vendor-login-proxy/url-rewrite.d.ts +7 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [1.2.436] - 2026-10-28
|
|
11
|
+
|
|
12
|
+
### Changed
|
|
13
|
+
|
|
14
|
+
- Addon manifest entries can declare which Integrations block they belong to (integrationSection)
|
|
15
|
+
- A notifier can declare extra delivery parameters (type, options, default) and a rule target can carry them to it.
|
|
16
|
+
- Vendor sign-in proxy: form fields carrying a proxied address are sent back to the vendor with the vendor's own address
|
|
17
|
+
- A temperature or humidity group can include thermostats and climate devices, read from their current temperature/humidity
|
|
18
|
+
|
|
10
19
|
## [1.2.435] - 2026-10-28
|
|
11
20
|
|
|
12
21
|
### Changed
|
|
@@ -51,6 +51,10 @@ declare const AddonListItemSchema: z.ZodObject<{
|
|
|
51
51
|
}, z.core.$strip>>;
|
|
52
52
|
protected: z.ZodOptional<z.ZodBoolean>;
|
|
53
53
|
removable: z.ZodOptional<z.ZodBoolean>;
|
|
54
|
+
integrationSection: z.ZodOptional<z.ZodEnum<{
|
|
55
|
+
providers: "providers";
|
|
56
|
+
system: "system";
|
|
57
|
+
}>>;
|
|
54
58
|
}, z.core.$strip>;
|
|
55
59
|
declaration: z.ZodOptional<z.ZodUnknown>;
|
|
56
60
|
source: z.ZodString;
|
|
@@ -400,6 +404,10 @@ export declare const addonsCapability: {
|
|
|
400
404
|
}, z.core.$strip>>;
|
|
401
405
|
protected: z.ZodOptional<z.ZodBoolean>;
|
|
402
406
|
removable: z.ZodOptional<z.ZodBoolean>;
|
|
407
|
+
integrationSection: z.ZodOptional<z.ZodEnum<{
|
|
408
|
+
providers: "providers";
|
|
409
|
+
system: "system";
|
|
410
|
+
}>>;
|
|
403
411
|
}, z.core.$strip>;
|
|
404
412
|
declaration: z.ZodOptional<z.ZodUnknown>;
|
|
405
413
|
source: z.ZodString;
|
|
@@ -100,7 +100,7 @@ export type { BrokerConnectionDetails, BrokerInfo as MqttBrokerInfo, BrokerStatu
|
|
|
100
100
|
export { AddBrokerInputSchema, BrokerConnectionDetailsSchema, BrokerInfoSchema as MqttBrokerInfoSchema, MqttBrokerStatusSchema, mqttBrokerCapability, StartEmbeddedInputSchema, } from './mqtt-broker.cap.js';
|
|
101
101
|
export type { NetworkAccessStatus, NetworkEndpoint, NetworkTunnelStartedData, } from './network-access.cap.js';
|
|
102
102
|
export { NetworkAccessStatusSchema, NetworkEndpointSchema, NetworkTunnelStartedDataSchema, networkAccessCapability, } from './network-access.cap.js';
|
|
103
|
-
export { type Attachment, type AttachmentMediaType, AttachmentMediaTypeSchema, AttachmentSchema, type DiscoveredTarget, DiscoveredTargetSchema, type INotificationOutputProvider, type NotificationAction, type NotificationActionIcon, NotificationActionIconSchema, NotificationActionSchema, type NotificationFormat, NotificationFormatSchema, NotificationSchema, notificationOutputCapability, type ProbeTargetConfigResult, ProbeTargetConfigResultSchema, type RenderedAs, RenderedAsSchema, type SendResult, SendResultSchema, type Target, type TargetKind, type TargetKindCaps, TargetKindCapsSchema, type TargetKindLevel, TargetKindLevelSchema, TargetKindSchema, TargetSchema, type TestResult, TestResultSchema, } from './notification-output.cap.js';
|
|
103
|
+
export { type Attachment, type AttachmentMediaType, AttachmentMediaTypeSchema, AttachmentSchema, type DeliveryParam, DeliveryParamSchema, type DeliveryParamValue, DeliveryParamValueSchema, type DiscoveredTarget, DiscoveredTargetSchema, type INotificationOutputProvider, type NotificationAction, type NotificationActionIcon, NotificationActionIconSchema, NotificationActionSchema, type NotificationFormat, NotificationFormatSchema, NotificationSchema, notificationOutputCapability, type ProbeTargetConfigResult, ProbeTargetConfigResultSchema, type RenderedAs, RenderedAsSchema, type SendResult, SendResultSchema, type Target, type TargetKind, type TargetKindCaps, TargetKindCapsSchema, type TargetKindLevel, TargetKindLevelSchema, TargetKindSchema, TargetSchema, type TestResult, TestResultSchema, } from './notification-output.cap.js';
|
|
104
104
|
export { consumableLowPercentOf, type INotificationRulesProvider, isRetiredClearKey, NC_ALARM_DELAY_MAX_SEC, NC_ALARM_NONBLOCKING_MAX, NC_ALARM_SENSORS_MAX, NC_ALARM_SYSTEM_EVENT_KINDS, NC_ALARM_TRIGGERED_MAX_SEC, NC_AUDIO_DBFS_FLOOR, NC_AUTHORABLE_SYSTEM_EVENT_KINDS, NC_LEGACY_SYSTEM_EVENT_KINDS, NC_BATTERY_CONSUMABLE_SYSTEM_EVENT_KINDS, NC_CLIP_POST_ROLL_DEFAULT_SEC, NC_CLIP_PRE_ROLL_DEFAULT_SEC, NC_CLIP_RETENTION_MAX_SEC, NC_CONDITION_CATALOG, NC_CONFIRM_DEFAULT_MAX_IMAGE_PX, NC_CONFIRM_DEFAULT_TIMEOUT_MS, NC_CONFIRM_MAX_TIMEOUT_MS, NC_CONFIRM_MIN_TIMEOUT_MS, NC_CONSUMABLE_LOW_PERCENT_DEFAULT, NC_CONSUMABLE_LOW_PERCENT_MAX, NC_CONSUMABLE_SYSTEM_EVENT_KINDS, NC_DEFAULT_SNOOZE_MINUTES, NC_GROUPING_DEFAULT_SEC, NC_GROUPING_MAX_SEC, NC_GROUPING_MIN_SEC, NC_HISTORY_LIMIT_DEFAULT, NC_HISTORY_LIMIT_MAX, NC_MAX_PER_TRACK_IMMEDIATE, NC_RULE_CLEARABLE_KEYS, NC_RULE_RETIRED_CLEAR_KEYS, NC_SNOOZE_MAX_MINUTES, type NcActionBinding, NcActionBindingSchema, type NcAlarmBlocking, type NcAlarmBlockingEdit, NcAlarmBlockingEditSchema, NcAlarmBlockingSchema, type NcAlarmConfig, NcAlarmConfigSchema, type NcAlarmCreateProfileInput, NcAlarmCreateProfileInputSchema, type NcAlarmModeCoverage, NcAlarmModeCoverageSchema, type NcAlarmModeDelays, type NcAlarmModeDelaysEdit, NcAlarmModeDelaysEditSchema, NcAlarmModeDelaysSchema, type NcAlarmModeDeviceList, NcAlarmModeDeviceListSchema, type NcAlarmNonBlocking, type NcAlarmNonBlockingEdit, NcAlarmNonBlockingEditSchema, NcAlarmNonBlockingSchema, type NcAlarmPostTriggeredAction, NcAlarmPostTriggeredActionSchema, type NcAlarmProfileIdInput, NcAlarmProfileIdInputSchema, type NcAlarmProfileMeta, NcAlarmProfileMetaSchema, type NcAlarmProfilesView, NcAlarmProfilesViewSchema, type NcAlarmRenameProfileInput, NcAlarmRenameProfileInputSchema, type NcAlarmSecureOnArmEdit, NcAlarmSecureOnArmEditSchema, type NcAlarmSecureOnArmOff, NcAlarmSecureOnArmOffSchema, type NcAlarmSensorReading, NcAlarmSensorReadingSchema, type NcAlarmSensorState, NcAlarmSensorStateSchema, type NcAlarmSensors, type NcAlarmSensorsInput, NcAlarmSensorsInputSchema, NcAlarmSensorsSchema, type NcAlarmSettings, type NcAlarmSettingsPatch, NcAlarmSettingsPatchSchema, NcAlarmSettingsSchema, type NcAlarmSkippedDevice, NcAlarmSkippedDeviceSchema, type NcAlarmSkipReason, NcAlarmSkipReasonSchema, type NcAudioCondition, NcAudioConditionSchema, type NcClipRetentionAsk, NcClipRetentionAskSchema, type NcClipRetentionPlan, NcClipRetentionPlanSchema, type NcConditionDescriptor, NcConditionDescriptorSchema, type NcConditions, NcConditionsSchema, type NcConfirm, type NcConfirmExpect, NcConfirmExpectSchema, NcConfirmSchema, type NcCrossing, NcCrossingSchema, type NcDelivery, NcDeliverySchema, type NcDeviceStateCondition, NcDeviceStateConditionSchema, type NcHistoryEntry, NcHistoryEntrySchema, type NcHistoryFilter, NcHistoryFilterSchema, type NcHistoryRecordKind, NcHistoryRecordKindSchema, type NcHistoryStatus, NcHistoryStatusSchema, type NcHistorySubject, NcHistorySubjectSchema, type NcHookBindings, NcHookBindingsSchema, type NcLegacyRuleActionSequence, NcLegacyRuleActionSequenceSchema, type NcLinkedCameraMode, NcLinkedCameraModeSchema, type NcMediaFrame, NcMediaFrameSchema, type NcMediaImage, NcMediaImageSchema, type NcMediaPolicy, NcMediaPolicySchema, type NcOccupancyCondition, NcOccupancyConditionSchema, type NcPlateMatcher, NcPlateMatcherSchema, type NcRule, type NcRuleAction, NcRuleActionSchema, type NcRuleActionSequence, NcRuleActionSequenceSchema, type NcRuleActions, NcRuleActionsSchema, type NcRuleClearableKey, NcRuleClearableKeySchema, type NcRuleInput, NcRuleInputSchema, NcRuleKindSchema, type NcRuleLastRun, NcRuleLastRunSchema, type NcRuleLastRuns, NcRuleLastRunsSchema, type NcRuleNotificationButton, NcRuleNotificationButtonSchema, type NcRulePatch, NcRulePatchSchema, NcRuleSchema, type NcRuleTarget, NcRuleTargetSchema, type NcRuleUpdateInput, NcRuleUpdateInputSchema, type NcSceneCondition, NcSceneConditionSchema, type NcSchedule, NcScheduleSchema, type NcScheduleWindow, NcScheduleWindowSchema, type NcSensorTransition, NcSensorTransitionSchema, type NcSharedSequence, type NcSharedSequenceInput, NcSharedSequenceInputSchema, NcSharedSequenceSchema, type NcSnooze, type NcSnoozeInput, NcSnoozeInputSchema, NcSnoozeSchema, type NcSnoozeScope, NcSnoozeScopeSchema, type NcSnoozeSuppressed, NcSnoozeSuppressedSchema, type NcStateSummaryPreview, type NcStateSummaryPreviewRow, NcStateSummaryPreviewRowSchema, NcStateSummaryPreviewSchema, type NcStateSummaryPreviewSection, NcStateSummaryPreviewSectionSchema, type NcStateSummarySectionId, NC_STATE_SUMMARY_SECTION_IDS, NcStateSummarySectionIdSchema, type NcStateSummarySplit, NcStateSummarySplitSchema, type NcSystemEventCondition, NcSystemEventConditionSchema, type NcSystemEventDelivery, type NcSystemEventDeliveryMode, NcSystemEventDeliveryModeSchema, NcSystemEventDeliverySchema, type NcSystemEventKind, NcSystemEventKindSchema, type NcTemplateFamily, NcTemplateFamilySchema, type NcTemplateField, NcTemplateFieldSchema, type NcTemplatePreview, type NcTemplatePreviewInput, NcTemplatePreviewInputSchema, NcTemplatePreviewSchema, type NcTemplateVarContext, NcTemplateVarContextSchema, type NcTemplateVarDescriptor, NcTemplateVarDescriptorSchema, type NcTemplateVarGroup, NcTemplateVarGroupSchema, type NcTemplateVarKind, NcTemplateVarKindSchema, type NcTestResult, NcTestResultSchema, type NcThrottle, type NcThrottleGranularity, NcThrottleGranularitySchema, NcThrottleSchema, type NcZoneCondition, NcZoneConditionSchema, notificationRulesCapability, } from './notification-rules.cap.js';
|
|
105
105
|
export { type IOauthIntegrationProvider, type OauthIntegrationDescriptor, OauthIntegrationDescriptorSchema, oauthIntegrationCapability, } from './oauth-integration.cap.js';
|
|
106
106
|
export { type IOidcConnectionsProvider, type OidcConnection, OidcConnectionSchema, type OidcConnectionUpdateInput, OidcConnectionUpdateInputSchema, oidcConnectionsCapability, } from './oidc-connections.cap.js';
|
|
@@ -157,6 +157,37 @@ export declare const NotificationActionSchema: z.ZodObject<{
|
|
|
157
157
|
}>>;
|
|
158
158
|
}, z.core.$strip>;
|
|
159
159
|
export type NotificationAction = z.infer<typeof NotificationActionSchema>;
|
|
160
|
+
/** A delivery parameter value: what a notifier declared it takes. */
|
|
161
|
+
export declare const DeliveryParamValueSchema: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>;
|
|
162
|
+
export type DeliveryParamValue = z.infer<typeof DeliveryParamValueSchema>;
|
|
163
|
+
/**
|
|
164
|
+
* One extra delivery parameter a notifier KIND declares (D938). A rule that
|
|
165
|
+
* addresses a target of that kind may set it; a kind that declares nothing is
|
|
166
|
+
* never handed one. The admin UI derives its control from this descriptor —
|
|
167
|
+
* no editor knows a service by name.
|
|
168
|
+
*
|
|
169
|
+
* Optional fields are `.optional()`, never `.default()` (a Zod default does not
|
|
170
|
+
* run on the addon cap path).
|
|
171
|
+
*/
|
|
172
|
+
export declare const DeliveryParamSchema: z.ZodObject<{
|
|
173
|
+
key: z.ZodString;
|
|
174
|
+
label: z.ZodString;
|
|
175
|
+
labelKey: z.ZodOptional<z.ZodString>;
|
|
176
|
+
type: z.ZodEnum<{
|
|
177
|
+
boolean: "boolean";
|
|
178
|
+
enum: "enum";
|
|
179
|
+
number: "number";
|
|
180
|
+
string: "string";
|
|
181
|
+
}>;
|
|
182
|
+
options: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
183
|
+
value: z.ZodString;
|
|
184
|
+
label: z.ZodString;
|
|
185
|
+
}, z.core.$strip>>>;
|
|
186
|
+
min: z.ZodOptional<z.ZodNumber>;
|
|
187
|
+
max: z.ZodOptional<z.ZodNumber>;
|
|
188
|
+
default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
|
|
189
|
+
}, z.core.$strip>;
|
|
190
|
+
export type DeliveryParam = z.infer<typeof DeliveryParamSchema>;
|
|
160
191
|
/**
|
|
161
192
|
* The canonical notification. `body` is the only hard field (Apprise model).
|
|
162
193
|
* `priority` is a 5-level ORDINAL (1=lowest … 3=normal(default) … 5=urgent),
|
|
@@ -225,6 +256,7 @@ export declare const NotificationSchema: z.ZodObject<{
|
|
|
225
256
|
deviceId: z.ZodOptional<z.ZodNumber>;
|
|
226
257
|
eventId: z.ZodOptional<z.ZodString>;
|
|
227
258
|
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
259
|
+
delivery: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
|
|
228
260
|
}, z.core.$strip>;
|
|
229
261
|
/** One declared native severity/priority level for a kind. */
|
|
230
262
|
export declare const TargetKindLevelSchema: z.ZodObject<{
|
|
@@ -310,6 +342,24 @@ export declare const TargetKindSchema: z.ZodObject<{
|
|
|
310
342
|
configSchema: z.ZodUnknown;
|
|
311
343
|
destinationKeys: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
312
344
|
supportsDiscovery: z.ZodBoolean;
|
|
345
|
+
deliveryParams: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
346
|
+
key: z.ZodString;
|
|
347
|
+
label: z.ZodString;
|
|
348
|
+
labelKey: z.ZodOptional<z.ZodString>;
|
|
349
|
+
type: z.ZodEnum<{
|
|
350
|
+
boolean: "boolean";
|
|
351
|
+
enum: "enum";
|
|
352
|
+
number: "number";
|
|
353
|
+
string: "string";
|
|
354
|
+
}>;
|
|
355
|
+
options: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
356
|
+
value: z.ZodString;
|
|
357
|
+
label: z.ZodString;
|
|
358
|
+
}, z.core.$strip>>>;
|
|
359
|
+
min: z.ZodOptional<z.ZodNumber>;
|
|
360
|
+
max: z.ZodOptional<z.ZodNumber>;
|
|
361
|
+
default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
|
|
362
|
+
}, z.core.$strip>>>;
|
|
313
363
|
caps: z.ZodObject<{
|
|
314
364
|
attachments: z.ZodObject<{
|
|
315
365
|
mediaTypes: z.ZodArray<z.ZodEnum<{
|
|
@@ -453,6 +503,24 @@ export declare const notificationOutputCapability: {
|
|
|
453
503
|
configSchema: z.ZodUnknown;
|
|
454
504
|
destinationKeys: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
455
505
|
supportsDiscovery: z.ZodBoolean;
|
|
506
|
+
deliveryParams: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
507
|
+
key: z.ZodString;
|
|
508
|
+
label: z.ZodString;
|
|
509
|
+
labelKey: z.ZodOptional<z.ZodString>;
|
|
510
|
+
type: z.ZodEnum<{
|
|
511
|
+
boolean: "boolean";
|
|
512
|
+
enum: "enum";
|
|
513
|
+
number: "number";
|
|
514
|
+
string: "string";
|
|
515
|
+
}>;
|
|
516
|
+
options: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
517
|
+
value: z.ZodString;
|
|
518
|
+
label: z.ZodString;
|
|
519
|
+
}, z.core.$strip>>>;
|
|
520
|
+
min: z.ZodOptional<z.ZodNumber>;
|
|
521
|
+
max: z.ZodOptional<z.ZodNumber>;
|
|
522
|
+
default: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
|
|
523
|
+
}, z.core.$strip>>>;
|
|
456
524
|
caps: z.ZodObject<{
|
|
457
525
|
attachments: z.ZodObject<{
|
|
458
526
|
mediaTypes: z.ZodArray<z.ZodEnum<{
|
|
@@ -601,6 +669,7 @@ export declare const notificationOutputCapability: {
|
|
|
601
669
|
deviceId: z.ZodOptional<z.ZodNumber>;
|
|
602
670
|
eventId: z.ZodOptional<z.ZodString>;
|
|
603
671
|
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
672
|
+
delivery: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
|
|
604
673
|
}, z.core.$strip>;
|
|
605
674
|
}, z.core.$strip>, z.ZodObject<{
|
|
606
675
|
success: z.ZodBoolean;
|
|
@@ -680,6 +749,7 @@ export declare const notificationOutputCapability: {
|
|
|
680
749
|
deviceId: z.ZodOptional<z.ZodNumber>;
|
|
681
750
|
eventId: z.ZodOptional<z.ZodString>;
|
|
682
751
|
metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
752
|
+
delivery: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
|
|
683
753
|
}, z.core.$strip>>;
|
|
684
754
|
}, z.core.$strip>, z.ZodObject<{
|
|
685
755
|
success: z.ZodBoolean;
|
package/dist/client.js
CHANGED
|
@@ -21321,6 +21321,43 @@ var NotificationActionSchema = zod.z.object({
|
|
|
21321
21321
|
*/
|
|
21322
21322
|
mode: zod.z.enum(["navigate", "background"]).optional()
|
|
21323
21323
|
});
|
|
21324
|
+
/** A delivery parameter value: what a notifier declared it takes. */
|
|
21325
|
+
var DeliveryParamValueSchema = zod.z.union([
|
|
21326
|
+
zod.z.string(),
|
|
21327
|
+
zod.z.number(),
|
|
21328
|
+
zod.z.boolean()
|
|
21329
|
+
]);
|
|
21330
|
+
/**
|
|
21331
|
+
* One extra delivery parameter a notifier KIND declares (D938). A rule that
|
|
21332
|
+
* addresses a target of that kind may set it; a kind that declares nothing is
|
|
21333
|
+
* never handed one. The admin UI derives its control from this descriptor —
|
|
21334
|
+
* no editor knows a service by name.
|
|
21335
|
+
*
|
|
21336
|
+
* Optional fields are `.optional()`, never `.default()` (a Zod default does not
|
|
21337
|
+
* run on the addon cap path).
|
|
21338
|
+
*/
|
|
21339
|
+
var DeliveryParamSchema = zod.z.object({
|
|
21340
|
+
key: zod.z.string().min(1),
|
|
21341
|
+
label: zod.z.string(),
|
|
21342
|
+
/** i18n key of the label, resolved by the declaring addon's namespace. */
|
|
21343
|
+
labelKey: zod.z.string().optional(),
|
|
21344
|
+
type: zod.z.enum([
|
|
21345
|
+
"enum",
|
|
21346
|
+
"number",
|
|
21347
|
+
"boolean",
|
|
21348
|
+
"string"
|
|
21349
|
+
]),
|
|
21350
|
+
/** `enum` only: the closed set of accepted values. */
|
|
21351
|
+
options: zod.z.array(zod.z.object({
|
|
21352
|
+
value: zod.z.string(),
|
|
21353
|
+
label: zod.z.string()
|
|
21354
|
+
})).optional(),
|
|
21355
|
+
/** `number` only. */
|
|
21356
|
+
min: zod.z.number().optional(),
|
|
21357
|
+
max: zod.z.number().optional(),
|
|
21358
|
+
/** What the notifier does when the rule sets nothing; shown as the placeholder. */
|
|
21359
|
+
default: DeliveryParamValueSchema.optional()
|
|
21360
|
+
});
|
|
21324
21361
|
/**
|
|
21325
21362
|
* The canonical notification. `body` is the only hard field (Apprise model).
|
|
21326
21363
|
* `priority` is a 5-level ORDINAL (1=lowest … 3=normal(default) … 5=urgent),
|
|
@@ -21343,7 +21380,13 @@ var NotificationSchema = zod.z.object({
|
|
|
21343
21380
|
tag: zod.z.string().optional(),
|
|
21344
21381
|
deviceId: zod.z.number().optional(),
|
|
21345
21382
|
eventId: zod.z.string().optional(),
|
|
21346
|
-
metadata: zod.z.record(zod.z.string(), zod.z.unknown()).optional()
|
|
21383
|
+
metadata: zod.z.record(zod.z.string(), zod.z.unknown()).optional(),
|
|
21384
|
+
/**
|
|
21385
|
+
* Values for the parameters the target's kind DECLARES in
|
|
21386
|
+
* {@link TargetKindSchema} `deliveryParams`. Already validated against the
|
|
21387
|
+
* declaration by the sender; a notifier reads only the keys it declared.
|
|
21388
|
+
*/
|
|
21389
|
+
delivery: zod.z.record(zod.z.string(), DeliveryParamValueSchema).optional()
|
|
21347
21390
|
});
|
|
21348
21391
|
/** One declared native severity/priority level for a kind. */
|
|
21349
21392
|
var TargetKindLevelSchema = zod.z.object({
|
|
@@ -21451,6 +21494,11 @@ var TargetKindSchema = zod.z.object({
|
|
|
21451
21494
|
*/
|
|
21452
21495
|
destinationKeys: zod.z.array(zod.z.string()).optional(),
|
|
21453
21496
|
supportsDiscovery: zod.z.boolean(),
|
|
21497
|
+
/**
|
|
21498
|
+
* Extra delivery parameters a rule may set for a target of this kind (D938).
|
|
21499
|
+
* Absent = none; the rule editor then offers nothing.
|
|
21500
|
+
*/
|
|
21501
|
+
deliveryParams: zod.z.array(DeliveryParamSchema).optional(),
|
|
21454
21502
|
caps: TargetKindCapsSchema
|
|
21455
21503
|
});
|
|
21456
21504
|
/**
|
package/dist/client.mjs
CHANGED
|
@@ -21320,6 +21320,43 @@ var NotificationActionSchema = z.object({
|
|
|
21320
21320
|
*/
|
|
21321
21321
|
mode: z.enum(["navigate", "background"]).optional()
|
|
21322
21322
|
});
|
|
21323
|
+
/** A delivery parameter value: what a notifier declared it takes. */
|
|
21324
|
+
var DeliveryParamValueSchema = z.union([
|
|
21325
|
+
z.string(),
|
|
21326
|
+
z.number(),
|
|
21327
|
+
z.boolean()
|
|
21328
|
+
]);
|
|
21329
|
+
/**
|
|
21330
|
+
* One extra delivery parameter a notifier KIND declares (D938). A rule that
|
|
21331
|
+
* addresses a target of that kind may set it; a kind that declares nothing is
|
|
21332
|
+
* never handed one. The admin UI derives its control from this descriptor —
|
|
21333
|
+
* no editor knows a service by name.
|
|
21334
|
+
*
|
|
21335
|
+
* Optional fields are `.optional()`, never `.default()` (a Zod default does not
|
|
21336
|
+
* run on the addon cap path).
|
|
21337
|
+
*/
|
|
21338
|
+
var DeliveryParamSchema = z.object({
|
|
21339
|
+
key: z.string().min(1),
|
|
21340
|
+
label: z.string(),
|
|
21341
|
+
/** i18n key of the label, resolved by the declaring addon's namespace. */
|
|
21342
|
+
labelKey: z.string().optional(),
|
|
21343
|
+
type: z.enum([
|
|
21344
|
+
"enum",
|
|
21345
|
+
"number",
|
|
21346
|
+
"boolean",
|
|
21347
|
+
"string"
|
|
21348
|
+
]),
|
|
21349
|
+
/** `enum` only: the closed set of accepted values. */
|
|
21350
|
+
options: z.array(z.object({
|
|
21351
|
+
value: z.string(),
|
|
21352
|
+
label: z.string()
|
|
21353
|
+
})).optional(),
|
|
21354
|
+
/** `number` only. */
|
|
21355
|
+
min: z.number().optional(),
|
|
21356
|
+
max: z.number().optional(),
|
|
21357
|
+
/** What the notifier does when the rule sets nothing; shown as the placeholder. */
|
|
21358
|
+
default: DeliveryParamValueSchema.optional()
|
|
21359
|
+
});
|
|
21323
21360
|
/**
|
|
21324
21361
|
* The canonical notification. `body` is the only hard field (Apprise model).
|
|
21325
21362
|
* `priority` is a 5-level ORDINAL (1=lowest … 3=normal(default) … 5=urgent),
|
|
@@ -21342,7 +21379,13 @@ var NotificationSchema = z.object({
|
|
|
21342
21379
|
tag: z.string().optional(),
|
|
21343
21380
|
deviceId: z.number().optional(),
|
|
21344
21381
|
eventId: z.string().optional(),
|
|
21345
|
-
metadata: z.record(z.string(), z.unknown()).optional()
|
|
21382
|
+
metadata: z.record(z.string(), z.unknown()).optional(),
|
|
21383
|
+
/**
|
|
21384
|
+
* Values for the parameters the target's kind DECLARES in
|
|
21385
|
+
* {@link TargetKindSchema} `deliveryParams`. Already validated against the
|
|
21386
|
+
* declaration by the sender; a notifier reads only the keys it declared.
|
|
21387
|
+
*/
|
|
21388
|
+
delivery: z.record(z.string(), DeliveryParamValueSchema).optional()
|
|
21346
21389
|
});
|
|
21347
21390
|
/** One declared native severity/priority level for a kind. */
|
|
21348
21391
|
var TargetKindLevelSchema = z.object({
|
|
@@ -21450,6 +21493,11 @@ var TargetKindSchema = z.object({
|
|
|
21450
21493
|
*/
|
|
21451
21494
|
destinationKeys: z.array(z.string()).optional(),
|
|
21452
21495
|
supportsDiscovery: z.boolean(),
|
|
21496
|
+
/**
|
|
21497
|
+
* Extra delivery parameters a rule may set for a target of this kind (D938).
|
|
21498
|
+
* Absent = none; the rule editor then offers nothing.
|
|
21499
|
+
*/
|
|
21500
|
+
deliveryParams: z.array(DeliveryParamSchema).optional(),
|
|
21453
21501
|
caps: TargetKindCapsSchema
|
|
21454
21502
|
});
|
|
21455
21503
|
/**
|
|
@@ -10,5 +10,5 @@ export { KWH_PER_WATT_MS, wattMillisecondsToKwh } from './energy.js';
|
|
|
10
10
|
export { type HistoryValue, type IntegralScale, type SeriesBefore, type SeriesKind, type SeriesPoint, type SeriesRead, STATISTIC_STATS, SERIES_KINDS, evaluateDerivative, evaluateStatistic, integrateReading, } from './history-math.js';
|
|
11
11
|
export { type CalendarPeriod, type CalendarWindow, type HistoryRetention, type HistoryTier, type HistoryTierPlan, type OpenRange, type ResetPeriod, type RollingSpan, type RollingWindow, type StatisticWindow, CALENDAR_PERIODS, CalendarWindowSchema, DAY_MS, DEFAULT_HISTORY_RETENTION, HISTORY_FAST_MS, HISTORY_SLOW_MS, HISTORY_TIERS, HOUR_MS, MINUTE_MS, MIN_CUSTOM_MINUTES, RESET_PERIODS, ROLLING_SPANS, RollingWindowSchema, StatisticWindowSchema, integralCadenceMs, maxDurationMs, nextLocalMidnight, openReset, openStatistic, planResetTier, planStatisticTier, rollingDurationMs, statisticCadenceMs, } from './history-window.js';
|
|
12
12
|
export { type HelperMemberFact, helperSaveProblems, } from './save.js';
|
|
13
|
-
export { type SourcePick, type SourcePickAccept, type SourcePickHistory, type SourcePickRequest, type MathSourceKind, sourcePickForHistory, sourcePickForMath, sourcePickForTemplate, } from './source-pick.js';
|
|
13
|
+
export { type SourcePick, type SourcePickAccept, type SourcePickFieldChoice, type SourcePickHistory, type SourcePickRequest, type MathSourceKind, sourcePickForHistory, sourcePickForMath, sourcePickForTemplate, } from './source-pick.js';
|
|
14
14
|
export { ACTIVE_CRITERIA, AGGREGATE_REDUCERS, ActiveCriterionSchema, AggregateReducerSchema, BINARY_AGGREGATES, GROUP_TEMPLATE_IDS, ApplianceHelperSpecSchema, ARITHMETIC_OPS, ArithmeticHelperSpecSchema, DERIVATIVE_UNITS, DerivativeHelperSpecSchema, EXPRESSION_OUTPUTS, ExpressionHelperSpecSchema, ThresholdHelperSpecSchema, GroupHelperSpecSchema, GroupTemplateIdSchema, HelperMemberSchema, HelperSpecSchema, INTEGRAL_OUTPUTS, IntegralHelperSpecSchema, MAX_HELPER_MEMBERS, helperMembers, isHistoryHelper, NUMERIC_AGGREGATES, StatisticHelperSpecSchema, type ActiveCriterion, type AggregateReducer, type BinaryAggregate, type ApplianceHelperSpec, type ArithmeticHelperSpec, type ArithmeticOp, type DerivativeHelperSpec, type DerivativeUnit, type ExpressionHelperSpec, type ExpressionInput, type ExpressionOutput, type ThresholdHelperSpec, type GroupHelperSpec, type GroupTemplateId, type HelperMember, type HelperSpec, type HistoryHelperSpec, type IntegralHelperSpec, type IntegralOutput, type NumericAggregate, type StatisticHelperSpec, type StatisticStat, } from './spec.js';
|
|
@@ -15,7 +15,14 @@ export interface SourcePickHistory {
|
|
|
15
15
|
readonly required: boolean;
|
|
16
16
|
readonly minRetentionMs: number | null;
|
|
17
17
|
}
|
|
18
|
+
/**
|
|
19
|
+
* How a device that satisfies several accept entries gets its field. `first-match`
|
|
20
|
+
* takes the first listed entry the device has (the dedicated sensor before a
|
|
21
|
+
* climate reading); `operator` waits for the operator to pick (occupancy).
|
|
22
|
+
*/
|
|
23
|
+
export type SourcePickFieldChoice = 'first-match' | 'operator';
|
|
18
24
|
export interface SourcePickRequest {
|
|
25
|
+
readonly fieldChoice: SourcePickFieldChoice;
|
|
19
26
|
readonly purpose: 'member' | 'reading' | 'historised';
|
|
20
27
|
readonly multiple: boolean;
|
|
21
28
|
readonly max: number;
|
|
@@ -2266,6 +2266,7 @@ function isApplianceKind(value) {
|
|
|
2266
2266
|
/** The member step: one power reading, from a sensor or from the plug itself. */
|
|
2267
2267
|
function sourcePickForAppliance() {
|
|
2268
2268
|
return {
|
|
2269
|
+
fieldChoice: "operator",
|
|
2269
2270
|
purpose: "reading",
|
|
2270
2271
|
multiple: false,
|
|
2271
2272
|
max: 1,
|
|
@@ -2266,6 +2266,7 @@ function isApplianceKind(value) {
|
|
|
2266
2266
|
/** The member step: one power reading, from a sensor or from the plug itself. */
|
|
2267
2267
|
function sourcePickForAppliance() {
|
|
2268
2268
|
return {
|
|
2269
|
+
fieldChoice: "operator",
|
|
2269
2270
|
purpose: "reading",
|
|
2270
2271
|
multiple: false,
|
|
2271
2272
|
max: 1,
|
package/dist/index.d.ts
CHANGED
|
@@ -293,6 +293,7 @@ export { AUDIO_SCALE_EPOCH_ISO, AUDIO_SCALE_EPOCH_MS, type AudioScaleEra, audioS
|
|
|
293
293
|
export { audioIsFailClosed, audioKindId, audioLabelChoices, audioModeOf, audioOrDefaults, isAudioLabelSelected, NC_AUDIO_CONFIRM_HITS_DEFAULT, NC_AUDIO_CONFIRM_HITS_MAX, NC_AUDIO_CONFIRM_HITS_MIN, NC_AUDIO_CONFIRM_WINDOW_MAX_SEC, NC_AUDIO_CONFIRM_WINDOW_MIN_SEC, NC_AUDIO_CONFIRM_WINDOW_SEC_DEFAULT, NC_AUDIO_DB_MAX, NC_AUDIO_DB_MIN, NC_AUDIO_DB_OFFERED, NC_AUDIO_DB_STEP, NC_AUDIO_DEFAULTS, NC_AUDIO_HIT_PERCENT_MAX, NC_AUDIO_HIT_PERCENT_MIN, NC_AUDIO_SAMPLING_MAX_SEC, NC_AUDIO_SAMPLING_MIN_SEC, type NcAudioLabelChoice, type NcAudioMode, type NcAudioPatch, normalizeAudioLabel, patchAudio, toggleAudioLabel, } from './notification/audio-condition.js';
|
|
294
294
|
export { isAudioClassName, isBaseConditionKey, knownValues, NC_BASE_CONDITION_KEYS, type NcBaseConditionKey, pickerForCondition, pickerForRuleClasses, type TaxonomyGroup, type TaxonomyOption, type TaxonomyPicker, } from './notification/condition-taxonomy.js';
|
|
295
295
|
export { type PreparedAction, type PreparedAttachment, type PreparedNotification, prepareNotification, type ResolvedLevel, } from './notification/degrade-engine.js';
|
|
296
|
+
export { deliveryParamsDeclaredBy, resolveDeliveryParams } from './notification/delivery-params.js';
|
|
296
297
|
export { htmlToText, markdownToHtmlLite, markdownToText, type NotificationFormat as NotificationBodyFormat, resolveFormat, textToHtml, transcodeBody, } from './notification/format-transcode.js';
|
|
297
298
|
export { conditionExclusionReason, conditionVisibleForKind, defaultDeliveryForSection, droppedConditionsForKind, isAudioRule, isOccupancyRule, isSystemDelivery, isSystemRuleKind, kindsForDiscriminator, NC_AUDIO_SEED, NC_CAMERA_SCOPE_CAP_NAME, NC_OCCUPANCY_DEFAULTS, NC_RULE_EDITOR_SECTION_ORDER, NC_RULE_KIND_SPECS, NC_RULE_SECTIONS, NC_SYSTEM_DELIVERY, NC_SYSTEM_RULE_KINDS, type NcDroppedCondition, type NcKindVisibilitySubject, type NcRuleEditorSection, type NcRuleEditorSectionKey, type NcRuleKind, type NcRuleKindSpec, type NcRuleOwningSectionKey, type NcRuleSection, type NcRuleSectionKey, type NcRuleConditionsSubject, type NcRuleSectionSubject, type NcRuleSeed, parseRuleSection, ruleDeviceCompatCapNames, ruleDeviceCompatCapQueries, ruleEditorSectionsForKind, ruleGroupingApplies, ruleKindOf, ruleKindSpec, ruleMatchesSection, ruleSection, ruleSectionOf, ruleSeedForSection, systemFamilyOfKind, systemRuleKindOf, } from './notification/rule-kinds.js';
|
|
298
299
|
export { imageModesForKind, legacyImageMode, NC_MEDIA_IMAGE_MODES, type NcMediaRuleSubject, ncMediaPolicyError, normalizeNcMediaPolicy, resolveNcMediaImage, ruleTriggerZoneIds, subjectHasPath, } from './notification/media-image.js';
|