@smarthome.exchange/integrations 3.0.0 → 4.0.0
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 +11 -0
- package/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/integrations/hue/hue.classes.client.d.ts +26 -3
- package/dist_ts/integrations/hue/hue.classes.client.js +254 -55
- package/dist_ts/integrations/hue/hue.classes.configflow.d.ts +6 -1
- package/dist_ts/integrations/hue/hue.classes.configflow.js +73 -30
- package/dist_ts/integrations/hue/hue.classes.integration.d.ts +2 -2
- package/dist_ts/integrations/hue/hue.classes.integration.js +58 -110
- package/dist_ts/integrations/hue/hue.mapper.d.ts +2 -0
- package/dist_ts/integrations/hue/hue.mapper.js +8 -6
- package/dist_ts/integrations/hue/hue.types.d.ts +32 -1
- package/dist_ts/integrations/hue/hue.validation.d.ts +8 -3
- package/dist_ts/integrations/hue/hue.validation.js +100 -9
- package/package.json +3 -3
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/integrations/hue/hue.classes.client.ts +213 -49
- package/ts/integrations/hue/hue.classes.configflow.ts +64 -27
- package/ts/integrations/hue/hue.classes.integration.ts +52 -97
- package/ts/integrations/hue/hue.mapper.ts +8 -5
- package/ts/integrations/hue/hue.types.ts +37 -1
- package/ts/integrations/hue/hue.validation.ts +89 -10
- package/ts/integrations/hue/readme.md +48 -11
package/changelog.md
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 2026-10-13 - 4.0.0
|
|
4
|
+
|
|
5
|
+
### Breaking Changes
|
|
6
|
+
|
|
7
|
+
- Require independently selected Hue homes at setup, config-flow and public client boundaries, home-qualified resource targets, shared native ownership and explicit default-deny control grants.
|
|
8
|
+
- Replace raw Hue appKey configurations with home/bridge/endpoint-bound credential references; validate and insert pairing credentials through the host provider or encrypted store, join actual provider work and keep flow output and errors free of keys.
|
|
9
|
+
|
|
10
|
+
### Maintenance
|
|
11
|
+
|
|
12
|
+
- release tooling: @git.zone/tstest 7.2.1, @git.zone/tsrun 3.0.3, pnpm 12.10.0
|
|
13
|
+
|
|
3
14
|
## 2026-10-11 - 3.0.0
|
|
4
15
|
|
|
5
16
|
### Breaking Changes
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export const commitinfo = {
|
|
5
5
|
name: '@smarthome.exchange/integrations',
|
|
6
|
-
version: '
|
|
6
|
+
version: '4.0.0',
|
|
7
7
|
description: 'TypeScript-native device integrations for smarthome.exchange.'
|
|
8
8
|
};
|
|
9
9
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSxrQ0FBa0M7SUFDeEMsT0FBTyxFQUFFLE9BQU87SUFDaEIsV0FBVyxFQUFFLCtEQUErRDtDQUM3RSxDQUFBIn0=
|
|
@@ -1,12 +1,28 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { NativeIntegrationOwner } from '../../core/classes.nativeintegrationowner.js';
|
|
2
|
+
import type { IIntegrationSetupContext } from '../../core/types.js';
|
|
3
|
+
import type { IHueConfig, IHueEvent, IHueLightStatePatch, IHueResourceResponse, IHueIntegrationOptions } from './hue.types.js';
|
|
4
|
+
export declare class HuePairingError extends Error {
|
|
5
|
+
readonly linkButtonRequired: boolean;
|
|
6
|
+
constructor(linkButtonRequired?: boolean);
|
|
7
|
+
}
|
|
8
|
+
export interface IHueClientOperation {
|
|
9
|
+
getResources(signalArg?: AbortSignal): Promise<IHueResourceResponse>;
|
|
10
|
+
setLightState(idArg: string, stateArg: IHueLightStatePatch, signalArg?: AbortSignal): Promise<void>;
|
|
11
|
+
}
|
|
2
12
|
export declare class HueClient {
|
|
3
13
|
#private;
|
|
4
|
-
|
|
5
|
-
|
|
14
|
+
constructor(configArg: IHueConfig, contextArg: IIntegrationSetupContext, optionsArg?: IHueIntegrationOptions, ownerArg?: NativeIntegrationOwner);
|
|
15
|
+
get canCreateCredential(): boolean;
|
|
6
16
|
isHealthy(): boolean;
|
|
7
17
|
getResources(abortSignalArg?: AbortSignal): Promise<IHueResourceResponse>;
|
|
8
18
|
private readResources;
|
|
9
19
|
setLightState(lightIdArg: string, stateArg: IHueLightStatePatch, abortSignalArg?: AbortSignal): Promise<void>;
|
|
20
|
+
/** A captured runtime command shares one operation lease, provider deadline and one write attempt. */
|
|
21
|
+
execute<TResult>(workArg: (clientArg: IHueClientOperation) => Promise<TResult>, signalArg?: AbortSignal): Promise<TResult>;
|
|
22
|
+
private captureWrite;
|
|
23
|
+
private write;
|
|
24
|
+
acquireAppKey(deviceTypeArg?: string, signalArg?: AbortSignal): Promise<string>;
|
|
25
|
+
createCredential(appKeyArg: string, signalArg?: AbortSignal): Promise<void>;
|
|
10
26
|
subscribeToEvents(handlerArg: (eventArg: IHueEvent) => unknown, onErrorArg: (errorArg: Error) => unknown, abortSignalArg?: AbortSignal): Promise<() => Promise<void>>;
|
|
11
27
|
private subscribe;
|
|
12
28
|
destroy(): Promise<void>;
|
|
@@ -15,6 +31,13 @@ export declare class HueClient {
|
|
|
15
31
|
private readonly abortSetup;
|
|
16
32
|
private drain;
|
|
17
33
|
private run;
|
|
34
|
+
private foreign;
|
|
35
|
+
private active;
|
|
36
|
+
private cancelled;
|
|
37
|
+
private credentialRequest;
|
|
38
|
+
private storeKey;
|
|
39
|
+
private credential;
|
|
40
|
+
private permission;
|
|
18
41
|
private assertOpen;
|
|
19
42
|
private requestOptions;
|
|
20
43
|
private request;
|