@mp-consulting/homebridge-daikin-cloud 1.3.5 → 1.3.7
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/LICENSE +39 -1
- package/README.md +5 -3
- package/dist/src/accessories/air-conditioning-accessory.d.ts +2 -2
- package/dist/src/accessories/air-conditioning-accessory.d.ts.map +1 -1
- package/dist/src/accessories/air-conditioning-accessory.js.map +1 -1
- package/dist/src/accessories/altherma-accessory.d.ts +2 -2
- package/dist/src/accessories/altherma-accessory.d.ts.map +1 -1
- package/dist/src/accessories/altherma-accessory.js.map +1 -1
- package/dist/src/accessories/base-accessory.d.ts +6 -6
- package/dist/src/accessories/base-accessory.d.ts.map +1 -1
- package/dist/src/accessories/base-accessory.js +15 -15
- package/dist/src/accessories/base-accessory.js.map +1 -1
- package/dist/src/api/daikin-api.d.ts +26 -26
- package/dist/src/api/daikin-api.d.ts.map +1 -1
- package/dist/src/api/daikin-api.js +68 -42
- package/dist/src/api/daikin-api.js.map +1 -1
- package/dist/src/api/daikin-cloud.repository.d.ts.map +1 -1
- package/dist/src/api/daikin-cloud.repository.js +22 -14
- package/dist/src/api/daikin-cloud.repository.js.map +1 -1
- package/dist/src/api/daikin-controller.d.ts +41 -47
- package/dist/src/api/daikin-controller.d.ts.map +1 -1
- package/dist/src/api/daikin-controller.js +40 -64
- package/dist/src/api/daikin-controller.js.map +1 -1
- package/dist/src/api/daikin-device.d.ts +36 -31
- package/dist/src/api/daikin-device.d.ts.map +1 -1
- package/dist/src/api/daikin-device.js +45 -31
- package/dist/src/api/daikin-device.js.map +1 -1
- package/dist/src/api/daikin-mobile-oauth.d.ts +20 -20
- package/dist/src/api/daikin-mobile-oauth.d.ts.map +1 -1
- package/dist/src/api/daikin-mobile-oauth.js +49 -44
- package/dist/src/api/daikin-mobile-oauth.js.map +1 -1
- package/dist/src/api/daikin-oauth.d.ts +32 -32
- package/dist/src/api/daikin-oauth.d.ts.map +1 -1
- package/dist/src/api/daikin-oauth.js +64 -56
- package/dist/src/api/daikin-oauth.js.map +1 -1
- package/dist/src/api/daikin-schemas.d.ts +476 -351
- package/dist/src/api/daikin-schemas.d.ts.map +1 -1
- package/dist/src/api/daikin-schemas.js +11 -42
- package/dist/src/api/daikin-schemas.js.map +1 -1
- package/dist/src/api/daikin-types.d.ts +5 -1
- package/dist/src/api/daikin-types.d.ts.map +1 -1
- package/dist/src/api/daikin-types.js.map +1 -1
- package/dist/src/api/daikin-websocket.d.ts +31 -32
- package/dist/src/api/daikin-websocket.d.ts.map +1 -1
- package/dist/src/api/daikin-websocket.js +55 -35
- package/dist/src/api/daikin-websocket.js.map +1 -1
- package/dist/src/api/index.d.ts +2 -1
- package/dist/src/api/index.d.ts.map +1 -1
- package/dist/src/api/index.js +3 -1
- package/dist/src/api/index.js.map +1 -1
- package/dist/src/api/token-storage.d.ts +21 -0
- package/dist/src/api/token-storage.d.ts.map +1 -0
- package/dist/src/api/token-storage.js +90 -0
- package/dist/src/api/token-storage.js.map +1 -0
- package/dist/src/config/config-manager.d.ts +33 -33
- package/dist/src/config/config-manager.d.ts.map +1 -1
- package/dist/src/config/config-manager.js +33 -33
- package/dist/src/config/config-manager.js.map +1 -1
- package/dist/src/constants/api.constants.d.ts +4 -0
- package/dist/src/constants/api.constants.d.ts.map +1 -1
- package/dist/src/constants/api.constants.js +5 -1
- package/dist/src/constants/api.constants.js.map +1 -1
- package/dist/src/constants/device.constants.d.ts +4 -0
- package/dist/src/constants/device.constants.d.ts.map +1 -1
- package/dist/src/constants/device.constants.js +5 -1
- package/dist/src/constants/device.constants.js.map +1 -1
- package/dist/src/device/accessory-factory.d.ts +10 -10
- package/dist/src/device/accessory-factory.d.ts.map +1 -1
- package/dist/src/device/accessory-factory.js +7 -7
- package/dist/src/device/accessory-factory.js.map +1 -1
- package/dist/src/device/capability-detector.d.ts +8 -8
- package/dist/src/device/capability-detector.d.ts.map +1 -1
- package/dist/src/device/capability-detector.js +6 -6
- package/dist/src/device/capability-detector.js.map +1 -1
- package/dist/src/device/capability-docs.d.ts +1 -9
- package/dist/src/device/capability-docs.d.ts.map +1 -1
- package/dist/src/device/capability-docs.js +19 -73
- package/dist/src/device/capability-docs.js.map +1 -1
- package/dist/src/device/profiles/device-profile.d.ts +1 -1
- package/dist/src/device/profiles/device-profile.d.ts.map +1 -1
- package/dist/src/device/profiles/device-profile.js +4 -4
- package/dist/src/device/profiles/device-profile.js.map +1 -1
- package/dist/src/features/base-feature.d.ts +2 -2
- package/dist/src/features/base-feature.d.ts.map +1 -1
- package/dist/src/features/base-feature.js +2 -3
- package/dist/src/features/base-feature.js.map +1 -1
- package/dist/src/features/feature-manager.d.ts +8 -16
- package/dist/src/features/feature-manager.d.ts.map +1 -1
- package/dist/src/features/feature-manager.js +5 -17
- package/dist/src/features/feature-manager.js.map +1 -1
- package/dist/src/features/modes/dry-operation-mode.feature.d.ts +1 -1
- package/dist/src/features/modes/dry-operation-mode.feature.d.ts.map +1 -1
- package/dist/src/features/modes/dry-operation-mode.feature.js.map +1 -1
- package/dist/src/features/modes/econo-mode.feature.d.ts +1 -1
- package/dist/src/features/modes/econo-mode.feature.d.ts.map +1 -1
- package/dist/src/features/modes/econo-mode.feature.js.map +1 -1
- package/dist/src/features/modes/fan-only-operation-mode.feature.d.ts +1 -1
- package/dist/src/features/modes/fan-only-operation-mode.feature.d.ts.map +1 -1
- package/dist/src/features/modes/fan-only-operation-mode.feature.js.map +1 -1
- package/dist/src/features/modes/indoor-silent-mode.feature.d.ts +1 -1
- package/dist/src/features/modes/indoor-silent-mode.feature.d.ts.map +1 -1
- package/dist/src/features/modes/indoor-silent-mode.feature.js.map +1 -1
- package/dist/src/features/modes/outdoor-silent-mode.feature.d.ts +1 -1
- package/dist/src/features/modes/outdoor-silent-mode.feature.d.ts.map +1 -1
- package/dist/src/features/modes/outdoor-silent-mode.feature.js.map +1 -1
- package/dist/src/features/modes/powerful-mode.feature.d.ts +1 -1
- package/dist/src/features/modes/powerful-mode.feature.d.ts.map +1 -1
- package/dist/src/features/modes/powerful-mode.feature.js.map +1 -1
- package/dist/src/features/modes/streamer-mode.feature.d.ts +1 -1
- package/dist/src/features/modes/streamer-mode.feature.d.ts.map +1 -1
- package/dist/src/features/modes/streamer-mode.feature.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/platform.d.ts +11 -8
- package/dist/src/platform.d.ts.map +1 -1
- package/dist/src/platform.js +64 -15
- package/dist/src/platform.js.map +1 -1
- package/dist/src/services/climate-control.service.d.ts +8 -2
- package/dist/src/services/climate-control.service.d.ts.map +1 -1
- package/dist/src/services/climate-control.service.js +59 -58
- package/dist/src/services/climate-control.service.js.map +1 -1
- package/dist/src/services/hot-water-tank.service.d.ts +6 -2
- package/dist/src/services/hot-water-tank.service.d.ts.map +1 -1
- package/dist/src/services/hot-water-tank.service.js +33 -31
- package/dist/src/services/hot-water-tank.service.js.map +1 -1
- package/dist/src/types/daikin-enums.js +12 -12
- package/dist/src/types/daikin-enums.js.map +1 -1
- package/dist/src/types/device-capabilities.d.ts +1 -1
- package/dist/src/types/device-capabilities.d.ts.map +1 -1
- package/dist/src/utils/log-context.d.ts +23 -23
- package/dist/src/utils/log-context.d.ts.map +1 -1
- package/dist/src/utils/log-context.js +28 -28
- package/dist/src/utils/log-context.js.map +1 -1
- package/dist/src/utils/strings.d.ts.map +1 -1
- package/dist/src/utils/strings.js.map +1 -1
- package/dist/src/utils/update-mapper.d.ts +16 -16
- package/dist/src/utils/update-mapper.d.ts.map +1 -1
- package/dist/src/utils/update-mapper.js +14 -14
- package/dist/src/utils/update-mapper.js.map +1 -1
- package/homebridge-ui/public/index.html +2 -2
- package/homebridge-ui/public/script.js +957 -898
- package/homebridge-ui/server.js +746 -678
- package/package.json +29 -27
- package/.claude/settings.json +0 -3
- package/.claude/settings.local.json +0 -29
- package/CHANGELOG.md +0 -103
- package/CLAUDE.md +0 -269
- package/config.md +0 -2
- package/dist/src/api/daikin-device-tracker.d.ts +0 -97
- package/dist/src/api/daikin-device-tracker.d.ts.map +0 -1
- package/dist/src/api/daikin-device-tracker.js +0 -136
- package/dist/src/api/daikin-device-tracker.js.map +0 -1
- package/dist/src/api/http-interceptor.d.ts +0 -99
- package/dist/src/api/http-interceptor.d.ts.map +0 -1
- package/dist/src/api/http-interceptor.js +0 -177
- package/dist/src/api/http-interceptor.js.map +0 -1
- package/dist/src/di/service-container.d.ts +0 -92
- package/dist/src/di/service-container.d.ts.map +0 -1
- package/dist/src/di/service-container.js +0 -156
- package/dist/src/di/service-container.js.map +0 -1
- package/dist/src/features/feature-registry.d.ts +0 -100
- package/dist/src/features/feature-registry.d.ts.map +0 -1
- package/dist/src/features/feature-registry.js +0 -142
- package/dist/src/features/feature-registry.js.map +0 -1
- package/dist/src/services/service-factory.d.ts +0 -46
- package/dist/src/services/service-factory.d.ts.map +0 -1
- package/dist/src/services/service-factory.js +0 -72
- package/dist/src/services/service-factory.js.map +0 -1
- package/dist/src/utils/error-handler.d.ts +0 -101
- package/dist/src/utils/error-handler.d.ts.map +0 -1
- package/dist/src/utils/error-handler.js +0 -251
- package/dist/src/utils/error-handler.js.map +0 -1
- package/dist/src/utils/retry.d.ts +0 -42
- package/dist/src/utils/retry.d.ts.map +0 -1
- package/dist/src/utils/retry.js +0 -70
- package/dist/src/utils/retry.js.map +0 -1
- package/docs/ARCHITECTURE.md +0 -645
- package/docs/IMPLEMENTATION_GUIDE.md +0 -899
- package/docs/IMPROVEMENTS_SUMMARY.md +0 -415
- package/docs/NEXT_STEPS.md +0 -368
- package/docs/Screenshot 2024-07-04 at 18.41.28.png +0 -0
- package/docs/TROUBLESHOOTING.md +0 -475
- package/docs/api-response-for-BRP069A8x.json +0 -520
- package/docs/api-response-for-BRP069C4x-2.json +0 -881
- package/docs/api-response-for-BRP069C4x.json +0 -916
- package/docs/api-response-for-altherma.json +0 -759
- package/docs/api-response-for-altherma2.json +0 -2735
- package/docs/api-response-with-multiple-devices-incl-heatpump.json +0 -2544
- package/docs/cr-insance-altherma-id-0.json +0 -834
- package/docs/mock-air-to-air-dx23.json +0 -759
- package/docs/mock-air-to-air-dx4.json +0 -1134
- package/docs/mock-airpurifier-with-humidifier.json +0 -732
- package/docs/mock-airpurifier.json +0 -450
- package/docs/mock-altherma-air-to-water-lan.json +0 -845
- package/docs/mock-altherma-air-to-water-wlan.json +0 -845
- package/docs/mock-d2cnd-gas-boiler.json +0 -649
- package/docs/setpointmode-vs-controlmode-vs-setpoints-vs-sensorydata.txt +0 -6
- package/images/fan-speed.jpeg +0 -0
- package/images/homekit-controls.jpeg +0 -0
- package/images/homekit-settings.jpeg +0 -0
- package/images/swing-mode.png +0 -0
- package/jest.config.ts +0 -13
- package/test/fixtures/altherma-crSense-2.ts +0 -834
- package/test/fixtures/altherma-fraction.ts +0 -718
- package/test/fixtures/altherma-heat-pump-2.ts +0 -479
- package/test/fixtures/altherma-heat-pump.ts +0 -757
- package/test/fixtures/altherma-miladcerkic-off.ts +0 -524
- package/test/fixtures/altherma-miladcerkic.ts +0 -524
- package/test/fixtures/altherma-v1ckoeln.ts +0 -644
- package/test/fixtures/altherma-with-embedded-id-zero.ts +0 -834
- package/test/fixtures/dx23-airco-2.ts +0 -343
- package/test/fixtures/dx23-airco.ts +0 -518
- package/test/fixtures/dx4-airco.ts +0 -914
- package/test/fixtures/unknown-jan.ts +0 -488
- package/test/fixtures/unknown-kitchen-guests.ts +0 -488
- package/test/helpers/test-isolation.ts +0 -228
- package/test/integration/air-conditioning.test.ts +0 -410
- package/test/integration/altherma.test.ts +0 -289
- package/test/integration/platform.test.ts +0 -118
- package/test/mocks/index.ts +0 -27
- package/test/test-gigya-auth.js +0 -443
- package/test/test-mobile-oauth.js +0 -175
- package/test/test-websocket-mobile.js +0 -123
- package/test/test-websocket.js +0 -116
- package/test/unit/api/__snapshots__/daikinCloud.test.ts.snap +0 -1320
- package/test/unit/api/daikin-api.test.ts +0 -384
- package/test/unit/api/daikin-oauth.test.ts +0 -214
- package/test/unit/api/daikinCloud.test.ts +0 -12
- package/test/unit/config/config-manager.test.ts +0 -271
- package/test/unit/device/daikin-device.test.ts +0 -79
- package/test/unit/services/hot-water-tank.service.test.ts +0 -123
- package/test/unit/utils/error-handler.test.ts +0 -274
- package/test/unit/utils/log-context.test.ts +0 -271
|
@@ -6,52 +6,63 @@
|
|
|
6
6
|
* Provides methods to get and set device data.
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.DaikinCloudDevice = void 0;
|
|
9
|
+
exports.DaikinCloudDevice = exports.DeviceOfflineError = void 0;
|
|
10
10
|
const node_events_1 = require("node:events");
|
|
11
|
+
class DeviceOfflineError extends Error {
|
|
12
|
+
constructor(deviceId) {
|
|
13
|
+
super(`Device ${deviceId} is offline (cloud connection down)`);
|
|
14
|
+
this.name = 'DeviceOfflineError';
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
exports.DeviceOfflineError = DeviceOfflineError;
|
|
11
18
|
class DaikinCloudDevice extends node_events_1.EventEmitter {
|
|
12
19
|
rawData;
|
|
13
20
|
api;
|
|
14
|
-
desc;
|
|
15
21
|
lastUpdated = new Date();
|
|
16
22
|
constructor(rawData, api) {
|
|
17
23
|
super();
|
|
18
24
|
this.rawData = rawData;
|
|
19
25
|
this.api = api;
|
|
20
|
-
this.desc = rawData;
|
|
21
26
|
}
|
|
22
27
|
/**
|
|
23
|
-
|
|
24
|
-
|
|
28
|
+
* Get the raw device data (replaces the old `desc` property)
|
|
29
|
+
*/
|
|
30
|
+
get desc() {
|
|
31
|
+
return this.rawData;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Get the device ID
|
|
35
|
+
*/
|
|
25
36
|
getId() {
|
|
26
37
|
return this.rawData.id;
|
|
27
38
|
}
|
|
28
39
|
/**
|
|
29
|
-
|
|
30
|
-
|
|
40
|
+
* Get the device description
|
|
41
|
+
*/
|
|
31
42
|
getDescription() {
|
|
32
43
|
return {
|
|
33
44
|
deviceModel: this.rawData.deviceModel || 'Unknown',
|
|
34
45
|
};
|
|
35
46
|
}
|
|
36
47
|
/**
|
|
37
|
-
|
|
38
|
-
|
|
48
|
+
* Get the last update timestamp
|
|
49
|
+
*/
|
|
39
50
|
getLastUpdated() {
|
|
40
51
|
return this.lastUpdated;
|
|
41
52
|
}
|
|
42
53
|
/**
|
|
43
|
-
|
|
44
|
-
|
|
54
|
+
* Update the last updated timestamp
|
|
55
|
+
*/
|
|
45
56
|
updateTimestamp() {
|
|
46
57
|
this.lastUpdated = new Date();
|
|
47
58
|
}
|
|
48
59
|
/**
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
60
|
+
* Get data from a management point
|
|
61
|
+
*
|
|
62
|
+
* @param managementPointId - The embedded ID of the management point (e.g., 'climateControl')
|
|
63
|
+
* @param dataPoint - The data point name (e.g., 'operationMode', 'temperatureControl')
|
|
64
|
+
* @param path - Optional path within the data point (e.g., '/operationModes/cooling/setpoints/roomTemperature')
|
|
65
|
+
*/
|
|
55
66
|
getData(managementPointId, dataPoint, path) {
|
|
56
67
|
const managementPoint = this.getManagementPoint(managementPointId);
|
|
57
68
|
if (!managementPoint) {
|
|
@@ -69,16 +80,20 @@ class DaikinCloudDevice extends node_events_1.EventEmitter {
|
|
|
69
80
|
return this.navigatePath(data, path);
|
|
70
81
|
}
|
|
71
82
|
/**
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
83
|
+
* Set data on a management point
|
|
84
|
+
*
|
|
85
|
+
* @param managementPointId - The embedded ID of the management point
|
|
86
|
+
* @param dataPoint - The data point name
|
|
87
|
+
* @param pathOrValue - Either the path within the data point, or the value if no path
|
|
88
|
+
* @param valueOrUndefined - The value to set, or undefined if pathOrValue is the value
|
|
89
|
+
*/
|
|
79
90
|
async setData(managementPointId, dataPoint, pathOrValue, valueOrUndefined) {
|
|
80
91
|
let path;
|
|
81
92
|
let value;
|
|
93
|
+
// Check if device cloud connection is up before attempting write
|
|
94
|
+
if (this.rawData.isCloudConnectionUp?.value === false) {
|
|
95
|
+
throw new DeviceOfflineError(this.rawData.id);
|
|
96
|
+
}
|
|
82
97
|
// Determine which overload was used
|
|
83
98
|
if (valueOrUndefined !== undefined) {
|
|
84
99
|
// setData(managementPointId, dataPoint, path, value)
|
|
@@ -95,17 +110,16 @@ class DaikinCloudDevice extends node_events_1.EventEmitter {
|
|
|
95
110
|
this.lastUpdated = new Date();
|
|
96
111
|
}
|
|
97
112
|
/**
|
|
98
|
-
|
|
99
|
-
|
|
113
|
+
* Update the raw device data (after refresh from API)
|
|
114
|
+
*/
|
|
100
115
|
updateRawData(newData) {
|
|
101
|
-
|
|
102
|
-
this.desc = this.rawData;
|
|
116
|
+
this.rawData = newData;
|
|
103
117
|
this.lastUpdated = new Date();
|
|
104
118
|
}
|
|
105
119
|
/**
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
120
|
+
* Apply a WebSocket update to the device's raw data
|
|
121
|
+
* This updates the in-memory data without making an API call
|
|
122
|
+
*/
|
|
109
123
|
applyWebSocketUpdate(update) {
|
|
110
124
|
const managementPoint = this.getManagementPoint(update.embeddedId);
|
|
111
125
|
if (!managementPoint) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daikin-device.js","sourceRoot":"","sources":["../../../src/api/daikin-device.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,
|
|
1
|
+
{"version":3,"file":"daikin-device.js","sourceRoot":"","sources":["../../../src/api/daikin-device.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Handles OAuth 2.0 authentication using the mobile app flow (Gigya + PKCE).
|
|
5
5
|
* Provides:
|
|
6
|
-
* -
|
|
6
|
+
* - 3000 API calls/day (vs 200 for Developer Portal)
|
|
7
7
|
* - WebSocket access for real-time device updates
|
|
8
8
|
* - Automatic token refresh
|
|
9
9
|
*/
|
|
10
|
-
import { TokenSet, MobileClientConfig } from './daikin-types';
|
|
10
|
+
import type { TokenSet, MobileClientConfig } from './daikin-types';
|
|
11
11
|
export declare class DaikinMobileOAuth {
|
|
12
12
|
private readonly config;
|
|
13
13
|
private readonly onTokenUpdate?;
|
|
@@ -17,34 +17,34 @@ export declare class DaikinMobileOAuth {
|
|
|
17
17
|
private cookies;
|
|
18
18
|
constructor(config: MobileClientConfig, onTokenUpdate?: ((tokenSet: TokenSet) => void) | undefined, onError?: ((error: Error) => void) | undefined);
|
|
19
19
|
/**
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
* Authenticate with email and password using mobile app flow.
|
|
21
|
+
* Returns tokens with WebSocket access and 5000/day rate limit.
|
|
22
|
+
*/
|
|
23
23
|
authenticate(): Promise<TokenSet>;
|
|
24
24
|
/**
|
|
25
|
-
|
|
26
|
-
|
|
25
|
+
* Refresh the access token
|
|
26
|
+
*/
|
|
27
27
|
refreshToken(): Promise<TokenSet>;
|
|
28
28
|
private performRefresh;
|
|
29
29
|
/**
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
* Get a valid access token, refreshing if necessary
|
|
31
|
+
*/
|
|
32
32
|
getAccessToken(): Promise<string>;
|
|
33
33
|
/**
|
|
34
|
-
|
|
35
|
-
|
|
34
|
+
* Check if we have a valid token
|
|
35
|
+
*/
|
|
36
36
|
isAuthenticated(): boolean;
|
|
37
37
|
/**
|
|
38
|
-
|
|
39
|
-
|
|
38
|
+
* Get token expiration date
|
|
39
|
+
*/
|
|
40
40
|
getTokenExpiration(): Date | null;
|
|
41
41
|
/**
|
|
42
|
-
|
|
43
|
-
|
|
42
|
+
* Get current token set (for status display)
|
|
43
|
+
*/
|
|
44
44
|
getTokenSet(): TokenSet | null;
|
|
45
45
|
/**
|
|
46
|
-
|
|
47
|
-
|
|
46
|
+
* Clear stored tokens
|
|
47
|
+
*/
|
|
48
48
|
clearTokens(): void;
|
|
49
49
|
private generatePKCE;
|
|
50
50
|
private getOidcContext;
|
|
@@ -54,9 +54,9 @@ export declare class DaikinMobileOAuth {
|
|
|
54
54
|
private authorizeWithToken;
|
|
55
55
|
private exchangeCodeForTokens;
|
|
56
56
|
private setTokenSet;
|
|
57
|
-
private
|
|
58
|
-
private
|
|
59
|
-
private
|
|
57
|
+
private loadFromFile;
|
|
58
|
+
private saveToFile;
|
|
59
|
+
private deleteFile;
|
|
60
60
|
private httpsRequest;
|
|
61
61
|
}
|
|
62
62
|
//# sourceMappingURL=daikin-mobile-oauth.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daikin-mobile-oauth.d.ts","sourceRoot":"","sources":["../../../src/api/daikin-mobile-oauth.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;
|
|
1
|
+
{"version":3,"file":"daikin-mobile-oauth.d.ts","sourceRoot":"","sources":["../../../src/api/daikin-mobile-oauth.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAmBnE,qBAAa,iBAAiB;IAMtB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;IAP/B,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,cAAc,CAAkC;IACxD,OAAO,CAAC,OAAO,CAAM;gBAGE,MAAM,EAAE,kBAAkB,EAC1B,aAAa,CAAC,GAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,aAAA,EAC5C,OAAO,CAAC,GAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,aAAA;IAKvD;;;SAGK;IACC,YAAY,IAAI,OAAO,CAAC,QAAQ,CAAC;IAsBvC;;SAEK;IACC,YAAY,IAAI,OAAO,CAAC,QAAQ,CAAC;YAqBzB,cAAc;IA+B5B;;SAEK;IACC,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC;IAmBvC;;SAEK;IACL,eAAe,IAAI,OAAO;IAI1B;;SAEK;IACL,kBAAkB,IAAI,IAAI,GAAG,IAAI;IAOjC;;SAEK;IACL,WAAW,IAAI,QAAQ,GAAG,IAAI;IAI9B;;SAEK;IACL,WAAW,IAAI,IAAI;IASnB,OAAO,CAAC,YAAY;YAMN,cAAc;YA2Bd,YAAY;IAwC1B,OAAO,CAAC,mBAAmB;YAqBb,UAAU;YA+CV,kBAAkB;YAmClB,qBAAqB;IAqCnC,OAAO,CAAC,WAAW;IAanB,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,UAAU;IAQlB,OAAO,CAAC,YAAY;CA0CrB"}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*
|
|
5
5
|
* Handles OAuth 2.0 authentication using the mobile app flow (Gigya + PKCE).
|
|
6
6
|
* Provides:
|
|
7
|
-
* -
|
|
7
|
+
* - 3000 API calls/day (vs 200 for Developer Portal)
|
|
8
8
|
* - WebSocket access for real-time device updates
|
|
9
9
|
* - Automatic token refresh
|
|
10
10
|
*/
|
|
@@ -24,19 +24,30 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
24
24
|
}) : function(o, v) {
|
|
25
25
|
o["default"] = v;
|
|
26
26
|
});
|
|
27
|
-
var __importStar = (this && this.__importStar) || function (
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
};
|
|
27
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
28
|
+
var ownKeys = function(o) {
|
|
29
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
30
|
+
var ar = [];
|
|
31
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
32
|
+
return ar;
|
|
33
|
+
};
|
|
34
|
+
return ownKeys(o);
|
|
35
|
+
};
|
|
36
|
+
return function (mod) {
|
|
37
|
+
if (mod && mod.__esModule) return mod;
|
|
38
|
+
var result = {};
|
|
39
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
40
|
+
__setModuleDefault(result, mod);
|
|
41
|
+
return result;
|
|
42
|
+
};
|
|
43
|
+
})();
|
|
34
44
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
35
45
|
exports.DaikinMobileOAuth = void 0;
|
|
36
|
-
const fs = __importStar(require("node:fs"));
|
|
37
46
|
const https = __importStar(require("node:https"));
|
|
38
47
|
const crypto = __importStar(require("node:crypto"));
|
|
39
48
|
const daikin_types_1 = require("./daikin-types");
|
|
49
|
+
const constants_1 = require("../constants");
|
|
50
|
+
const token_storage_1 = require("./token-storage");
|
|
40
51
|
class DaikinMobileOAuth {
|
|
41
52
|
config;
|
|
42
53
|
onTokenUpdate;
|
|
@@ -48,12 +59,12 @@ class DaikinMobileOAuth {
|
|
|
48
59
|
this.config = config;
|
|
49
60
|
this.onTokenUpdate = onTokenUpdate;
|
|
50
61
|
this.onError = onError;
|
|
51
|
-
this.
|
|
62
|
+
this.loadFromFile();
|
|
52
63
|
}
|
|
53
64
|
/**
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
65
|
+
* Authenticate with email and password using mobile app flow.
|
|
66
|
+
* Returns tokens with WebSocket access and 5000/day rate limit.
|
|
67
|
+
*/
|
|
57
68
|
async authenticate() {
|
|
58
69
|
const pkce = this.generatePKCE();
|
|
59
70
|
// Step 1: Get OIDC context
|
|
@@ -70,8 +81,8 @@ class DaikinMobileOAuth {
|
|
|
70
81
|
return tokenSet;
|
|
71
82
|
}
|
|
72
83
|
/**
|
|
73
|
-
|
|
74
|
-
|
|
84
|
+
* Refresh the access token
|
|
85
|
+
*/
|
|
75
86
|
async refreshToken() {
|
|
76
87
|
if (!this.tokenSet?.refresh_token) {
|
|
77
88
|
throw new Error('No refresh token available');
|
|
@@ -110,8 +121,8 @@ class DaikinMobileOAuth {
|
|
|
110
121
|
return result;
|
|
111
122
|
}
|
|
112
123
|
/**
|
|
113
|
-
|
|
114
|
-
|
|
124
|
+
* Get a valid access token, refreshing if necessary
|
|
125
|
+
*/
|
|
115
126
|
async getAccessToken() {
|
|
116
127
|
if (!this.tokenSet) {
|
|
117
128
|
throw new Error('Not authenticated. Please authenticate first.');
|
|
@@ -128,14 +139,14 @@ class DaikinMobileOAuth {
|
|
|
128
139
|
return this.tokenSet.access_token;
|
|
129
140
|
}
|
|
130
141
|
/**
|
|
131
|
-
|
|
132
|
-
|
|
142
|
+
* Check if we have a valid token
|
|
143
|
+
*/
|
|
133
144
|
isAuthenticated() {
|
|
134
145
|
return this.tokenSet !== null && !!this.tokenSet.access_token;
|
|
135
146
|
}
|
|
136
147
|
/**
|
|
137
|
-
|
|
138
|
-
|
|
148
|
+
* Get token expiration date
|
|
149
|
+
*/
|
|
139
150
|
getTokenExpiration() {
|
|
140
151
|
if (!this.tokenSet?.expires_at) {
|
|
141
152
|
return null;
|
|
@@ -143,16 +154,16 @@ class DaikinMobileOAuth {
|
|
|
143
154
|
return new Date(this.tokenSet.expires_at * 1000);
|
|
144
155
|
}
|
|
145
156
|
/**
|
|
146
|
-
|
|
147
|
-
|
|
157
|
+
* Get current token set (for status display)
|
|
158
|
+
*/
|
|
148
159
|
getTokenSet() {
|
|
149
160
|
return this.tokenSet;
|
|
150
161
|
}
|
|
151
162
|
/**
|
|
152
|
-
|
|
153
|
-
|
|
163
|
+
* Clear stored tokens
|
|
164
|
+
*/
|
|
154
165
|
clearTokens() {
|
|
155
|
-
this.
|
|
166
|
+
this.deleteFile();
|
|
156
167
|
this.tokenSet = null;
|
|
157
168
|
}
|
|
158
169
|
// =========================================================================
|
|
@@ -332,17 +343,14 @@ class DaikinMobileOAuth {
|
|
|
332
343
|
tokenSet.expires_at = Math.floor(Date.now() / 1000) + tokenSet.expires_in;
|
|
333
344
|
}
|
|
334
345
|
this.tokenSet = tokenSet;
|
|
335
|
-
this.
|
|
346
|
+
this.saveToFile();
|
|
336
347
|
if (this.onTokenUpdate) {
|
|
337
348
|
this.onTokenUpdate(tokenSet);
|
|
338
349
|
}
|
|
339
350
|
}
|
|
340
|
-
|
|
351
|
+
loadFromFile() {
|
|
341
352
|
try {
|
|
342
|
-
|
|
343
|
-
const data = fs.readFileSync(this.config.tokenFilePath, 'utf8');
|
|
344
|
-
this.tokenSet = JSON.parse(data);
|
|
345
|
-
}
|
|
353
|
+
this.tokenSet = (0, token_storage_1.loadTokenFromFile)(this.config.tokenFilePath);
|
|
346
354
|
}
|
|
347
355
|
catch (error) {
|
|
348
356
|
if (this.onError) {
|
|
@@ -350,10 +358,11 @@ class DaikinMobileOAuth {
|
|
|
350
358
|
}
|
|
351
359
|
}
|
|
352
360
|
}
|
|
353
|
-
|
|
361
|
+
saveToFile() {
|
|
354
362
|
try {
|
|
355
|
-
|
|
356
|
-
|
|
363
|
+
if (this.tokenSet) {
|
|
364
|
+
(0, token_storage_1.saveTokenToFile)(this.config.tokenFilePath, this.tokenSet);
|
|
365
|
+
}
|
|
357
366
|
}
|
|
358
367
|
catch (error) {
|
|
359
368
|
if (this.onError) {
|
|
@@ -361,15 +370,8 @@ class DaikinMobileOAuth {
|
|
|
361
370
|
}
|
|
362
371
|
}
|
|
363
372
|
}
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
if (fs.existsSync(this.config.tokenFilePath)) {
|
|
367
|
-
fs.unlinkSync(this.config.tokenFilePath);
|
|
368
|
-
}
|
|
369
|
-
}
|
|
370
|
-
catch {
|
|
371
|
-
// Ignore delete errors
|
|
372
|
-
}
|
|
373
|
+
deleteFile() {
|
|
374
|
+
(0, token_storage_1.deleteTokenFile)(this.config.tokenFilePath);
|
|
373
375
|
}
|
|
374
376
|
// =========================================================================
|
|
375
377
|
// HTTP helper
|
|
@@ -398,6 +400,9 @@ class DaikinMobileOAuth {
|
|
|
398
400
|
});
|
|
399
401
|
});
|
|
400
402
|
});
|
|
403
|
+
req.setTimeout(constants_1.HTTP_REQUEST_TIMEOUT_MS, () => {
|
|
404
|
+
req.destroy(new Error(`Mobile OAuth request timed out after ${constants_1.HTTP_REQUEST_TIMEOUT_MS}ms`));
|
|
405
|
+
});
|
|
401
406
|
req.on('error', reject);
|
|
402
407
|
if (postData) {
|
|
403
408
|
req.write(postData);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daikin-mobile-oauth.js","sourceRoot":"","sources":["../../../src/api/daikin-mobile-oauth.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"daikin-mobile-oauth.js","sourceRoot":"","sources":["../../../src/api/daikin-mobile-oauth.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,kDAAoC;AACpC,oDAAsC;AAEtC,iDAAsD;AACtD,4CAAuD;AACvD,mDAAsF;AAgBtF,MAAa,iBAAiB;IAML;IACA;IACA;IAPf,QAAQ,GAAoB,IAAI,CAAC;IACjC,cAAc,GAA6B,IAAI,CAAC;IAChD,OAAO,GAAG,EAAE,CAAC;IAErB,YACuB,MAA0B,EAC1B,aAA4C,EAC5C,OAAgC;QAFhC,WAAM,GAAN,MAAM,CAAoB;QAC1B,kBAAa,GAAb,aAAa,CAA+B;QAC5C,YAAO,GAAP,OAAO,CAAyB;QAErD,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;IAED;;;SAGK;IACL,KAAK,CAAC,YAAY;QAChB,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAEjC,2BAA2B;QAC3B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAEhD,6CAA6C;QAC7C,IAAI,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAEhD,2BAA2B;QAC3B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAE3C,0CAA0C;QAC1C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAEhE,0CAA0C;QAC1C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAE9D,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC3B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;SAEK;IACL,KAAK,CAAC,YAAY;QAChB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAChD,CAAC;QAED,sCAAsC;QACtC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC,cAAc,CAAC;QAC7B,CAAC;QAED,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAE5C,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC;YAC3C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YAC3B,OAAO,QAAQ,CAAC;QAClB,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7B,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,cAAc;QAC1B,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAC3B,mCAAoB,CAAC,QAAQ,GAAG,GAAG,GAAG,mCAAoB,CAAC,YAAY,CACxE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAErB,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;YACjC,UAAU,EAAE,eAAe;YAC3B,aAAa,EAAE,IAAI,CAAC,QAAS,CAAC,aAAc;SAC7C,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CACtC,mCAAoB,CAAC,gBAAgB,EACrC;YACE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,mCAAmC;gBACnD,eAAe,EAAE,QAAQ,GAAG,SAAS;aACtC;SACF,EACD,MAAM,CAAC,QAAQ,EAAE,CAClB,CAAC;QAEF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAA8D,CAAC;QAEtG,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,CAAC,MAAM,CAAC,iBAAiB,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACzF,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;SAEK;IACL,KAAK,CAAC,cAAc;QAClB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACnE,CAAC;QAED,kEAAkE;QAClE,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,IAAI,CAAC,CAAC;QAEhD,IAAI,SAAS,GAAG,GAAG,GAAG,EAAE,EAAE,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;YAC3F,CAAC;YACD,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC5B,CAAC;QAED,OAAO,IAAI,CAAC,QAAS,CAAC,YAAY,CAAC;IACrC,CAAC;IAED;;SAEK;IACL,eAAe;QACb,OAAO,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;IAChE,CAAC;IAED;;SAEK;IACL,kBAAkB;QAChB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC;IACnD,CAAC;IAED;;SAEK;IACL,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;SAEK;IACL,WAAW;QACT,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;IAED,4EAA4E;IAC5E,iCAAiC;IACjC,4EAA4E;IAEpE,YAAY;QAClB,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC9D,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QACnF,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IACjC,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,IAAc;QACzC,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;YACjC,SAAS,EAAE,mCAAoB,CAAC,QAAQ;YACxC,YAAY,EAAE,mCAAoB,CAAC,WAAW;YAC9C,aAAa,EAAE,MAAM;YACrB,KAAK,EAAE,mCAAoB,CAAC,KAAK;YACjC,cAAc,EAAE,IAAI,CAAC,SAAS;YAC9B,qBAAqB,EAAE,MAAM;YAC7B,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;SAC9C,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,mCAAoB,CAAC,YAAY,GAAG,gBAAgB,GAAG,mCAAoB,CAAC,MAAM,CAAC;QACpG,MAAM,GAAG,GAAG,QAAQ,GAAG,aAAa,GAAG,MAAM,CAAC;QAE9C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QAEjE,IAAI,QAAQ,CAAC,UAAU,KAAK,GAAG,IAAI,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAkB,CAAC;YACrD,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACvD,IAAI,YAAY,EAAE,CAAC;gBACjB,OAAO,kBAAkB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAChD,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,OAAe;QACxC,MAAM,QAAQ,GAAG,0DAA0D,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,aAAa,GAAG,mCAAoB,CAAC,QAAQ,GAAG,oBAAoB,GAAG,kBAAkB,CAAC,mCAAoB,CAAC,KAAK,CAAC,GAAG,uBAAuB,CAAC;QAE5P,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;YACjC,MAAM,EAAE,mCAAoB,CAAC,MAAM;YACnC,OAAO,EAAE,QAAQ;YACjB,GAAG,EAAE,WAAW;YAChB,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CACtC,mCAAoB,CAAC,YAAY,GAAG,4BAA4B,GAAG,MAAM,EACzE;YACE,MAAM,EAAE,KAAK;YACb,OAAO,EAAE;gBACP,QAAQ,EAAE,KAAK;gBACf,QAAQ,EAAE,sBAAsB;gBAChC,SAAS,EAAE,uBAAuB;aACnC;SACF,CACF,CAAC;QAEF,kBAAkB;QAClB,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAClD,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAC1E,KAAK,MAAM,MAAM,IAAI,WAAW,EAAE,CAAC;gBACjC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;gBAC7C,IAAI,KAAK,EAAE,CAAC;oBACV,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,gBAAgB,GAAG,mCAAoB,CAAC,MAAM,GAAG,WAAW,CAAC,CAAC;QAE3E,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAEO,mBAAmB;QACzB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,EAAE,GAAG,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACnI,OAAO,IAAI,CAAC,SAAS,CAAC;YACpB,EAAE,EAAE,KAAK;YACT,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAChB,EAAE,EAAE,CAAC;YACL,EAAE,EAAE,EAAE;YACN,EAAE,EAAE,CAAC;YACL,EAAE,EAAE,CAAC;YACL,EAAE,EAAE,wFAAwF;YAC5F,EAAE,EAAE,EAAE;YACN,EAAE,EAAE,OAAO;YACX,EAAE,EAAE,CAAC;YACL,GAAG,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE;YACxB,GAAG,EAAE,KAAK;YACV,GAAG,EAAE,IAAI;YACT,GAAG,EAAE,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,CAAC;SACpC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,UAAU;QACtB,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;YACjC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;YAC1B,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YAC9B,iBAAiB,EAAE,UAAU;YAC7B,SAAS,EAAE,OAAO;YAClB,OAAO,EAAE,gDAAgD;YACzD,eAAe,EAAE,MAAM;YACvB,SAAS,EAAE,UAAU;YACrB,IAAI,EAAE,IAAI;YACV,WAAW,EAAE,IAAI,CAAC,mBAAmB,EAAE;YACvC,MAAM,EAAE,mCAAoB,CAAC,MAAM;YACnC,MAAM,EAAE,eAAe;YACvB,GAAG,EAAE,WAAW;YAChB,QAAQ,EAAE,QAAQ;YAClB,OAAO,EAAE,6EAA6E,GAAG,mCAAoB,CAAC,QAAQ;YACtH,QAAQ,EAAE,OAAO;YACjB,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CACtC,mCAAoB,CAAC,YAAY,GAAG,iBAAiB,EACrD;YACE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,mCAAmC;gBACnD,QAAQ,EAAE,sBAAsB;gBAChC,SAAS,EAAE,uBAAuB;gBAClC,QAAQ,EAAE,IAAI,CAAC,OAAO;aACvB;SACF,EACD,MAAM,CAAC,QAAQ,EAAE,CAClB,CAAC;QAEF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAqB,CAAC;QAE7D,IAAI,MAAM,CAAC,SAAS,KAAK,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,gBAAgB,GAAG,MAAM,CAAC,SAAS,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;QAC9G,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,WAAW,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAChD,CAAC;QAED,OAAO,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC;IACxC,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,OAAe,EAAE,UAAkB;QAClE,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;YACjC,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,UAAU;SACxB,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,GAAG,QAAQ,GAAG,mCAAoB,CAAC,MAAM,GAAG,GAAG,GAAG,UAAU,CAAC;QAC3F,MAAM,QAAQ,GAAG,mCAAoB,CAAC,YAAY,GAAG,gBAAgB,GAAG,mCAAoB,CAAC,MAAM,CAAC;QACpG,MAAM,GAAG,GAAG,QAAQ,GAAG,sBAAsB,GAAG,MAAM,CAAC;QAEvD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE;YAC5C,MAAM,EAAE,KAAK;YACb,OAAO,EAAE;gBACP,QAAQ,EAAE,SAAS;gBACnB,SAAS,EAAE,uBAAuB;aACnC;SACF,CAAC,CAAC;QAEH,IAAI,QAAQ,CAAC,UAAU,KAAK,GAAG,IAAI,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAkB,CAAC;YACrD,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;YACjD,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC;YACtB,CAAC;YAED,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YACnD,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;gBAC9D,MAAM,IAAI,KAAK,CAAC,uBAAuB,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1G,CAAC;QACH,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACtD,CAAC;IAEO,KAAK,CAAC,qBAAqB,CAAC,IAAY,EAAE,IAAc;QAC9D,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAC3B,mCAAoB,CAAC,QAAQ,GAAG,GAAG,GAAG,mCAAoB,CAAC,YAAY,CACxE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAErB,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;YACjC,UAAU,EAAE,oBAAoB;YAChC,IAAI,EAAE,IAAI;YACV,YAAY,EAAE,mCAAoB,CAAC,WAAW;YAC9C,aAAa,EAAE,IAAI,CAAC,QAAQ;SAC7B,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CACtC,mCAAoB,CAAC,gBAAgB,EACrC;YACE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,mCAAmC;gBACnD,eAAe,EAAE,QAAQ,GAAG,SAAS;aACtC;SACF,EACD,MAAM,CAAC,QAAQ,EAAE,CAClB,CAAC;QAEF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAA8D,CAAC;QAEtG,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,yBAAyB,GAAG,CAAC,MAAM,CAAC,iBAAiB,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1F,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,4EAA4E;IAC5E,wBAAwB;IACxB,4EAA4E;IAEpE,WAAW,CAAC,QAAkB;QACpC,IAAI,QAAQ,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;YAChD,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC;QAC5E,CAAC;QAED,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,UAAU,EAAE,CAAC;QAElB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAEO,YAAY;QAClB,IAAI,CAAC;YACH,IAAI,CAAC,QAAQ,GAAG,IAAA,iCAAiB,EAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC/D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,6BAA6B,GAAI,KAAe,CAAC,OAAO,CAAC,CAAC,CAAC;YACpF,CAAC;QACH,CAAC;IACH,CAAC;IAEO,UAAU;QAChB,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,IAAA,+BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,6BAA6B,GAAI,KAAe,CAAC,OAAO,CAAC,CAAC,CAAC;YACpF,CAAC;QACH,CAAC;IACH,CAAC;IAEO,UAAU;QAChB,IAAA,+BAAe,EAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC7C,CAAC;IAED,4EAA4E;IAC5E,cAAc;IACd,4EAA4E;IAEpE,YAAY,CAClB,GAAW,EACX,OAA6D,EAC7D,QAAiB;QAEjB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;YAC5B,MAAM,UAAU,GAAyB;gBACvC,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,IAAI,EAAE,GAAG;gBACT,IAAI,EAAE,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM;gBACrC,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,OAAO,EAAE;oBACP,GAAG,OAAO,CAAC,OAAO;oBAClB,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAClF;aACF,CAAC;YAEF,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE;gBAC5C,IAAI,IAAI,GAAG,EAAE,CAAC;gBACd,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC;gBACzC,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;oBACjB,OAAO,CAAC;wBACN,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,CAAC;wBAC/B,OAAO,EAAE,GAAG,CAAC,OAAO;wBACpB,IAAI,EAAE,IAAI;qBACX,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,UAAU,CAAC,mCAAuB,EAAE,GAAG,EAAE;gBAC3C,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,wCAAwC,mCAAuB,IAAI,CAAC,CAAC,CAAC;YAC9F,CAAC,CAAC,CAAC;YAEH,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAExB,IAAI,QAAQ,EAAE,CAAC;gBACb,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACtB,CAAC;YACD,GAAG,CAAC,GAAG,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAlcD,8CAkcC"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Handles OAuth 2.0 authentication with the Daikin Cloud API.
|
|
5
5
|
*/
|
|
6
|
-
import { TokenSet, DaikinClientConfig } from './daikin-types';
|
|
6
|
+
import type { TokenSet, DaikinClientConfig } from './daikin-types';
|
|
7
7
|
export declare class DaikinOAuth {
|
|
8
8
|
private readonly config;
|
|
9
9
|
private readonly onTokenUpdate?;
|
|
@@ -12,68 +12,68 @@ export declare class DaikinOAuth {
|
|
|
12
12
|
private refreshPromise;
|
|
13
13
|
constructor(config: DaikinClientConfig, onTokenUpdate?: ((tokenSet: TokenSet) => void) | undefined, onError?: ((error: Error) => void) | undefined);
|
|
14
14
|
/**
|
|
15
|
-
|
|
16
|
-
|
|
15
|
+
* Build authorization URL (static version)
|
|
16
|
+
*/
|
|
17
17
|
static buildAuthUrlStatic(clientId: string, redirectUri: string, state: string): string;
|
|
18
18
|
/**
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
* Exchange authorization code for tokens (static version)
|
|
20
|
+
*/
|
|
21
21
|
static exchangeCodeStatic(code: string, clientId: string, clientSecret: string, redirectUri: string): Promise<TokenSet>;
|
|
22
22
|
/**
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
* Revoke token (static version)
|
|
24
|
+
*/
|
|
25
25
|
static revokeTokenStatic(refreshToken: string, clientId: string, clientSecret: string): Promise<void>;
|
|
26
26
|
/**
|
|
27
|
-
|
|
28
|
-
|
|
27
|
+
* Make a static token request
|
|
28
|
+
*/
|
|
29
29
|
private static makeStaticRequest;
|
|
30
30
|
/**
|
|
31
|
-
|
|
32
|
-
|
|
31
|
+
* Make a raw static HTTP request
|
|
32
|
+
*/
|
|
33
33
|
private static makeStaticRequestRaw;
|
|
34
34
|
/**
|
|
35
|
-
|
|
36
|
-
|
|
35
|
+
* Get the redirect URI for OAuth
|
|
36
|
+
*/
|
|
37
37
|
getRedirectUri(): string;
|
|
38
38
|
/**
|
|
39
|
-
|
|
40
|
-
|
|
39
|
+
* Build the authorization URL
|
|
40
|
+
*/
|
|
41
41
|
buildAuthUrl(state?: string): {
|
|
42
42
|
url: string;
|
|
43
43
|
state: string;
|
|
44
44
|
};
|
|
45
45
|
/**
|
|
46
|
-
|
|
47
|
-
|
|
46
|
+
* Exchange authorization code for tokens
|
|
47
|
+
*/
|
|
48
48
|
exchangeCode(code: string): Promise<TokenSet>;
|
|
49
49
|
/**
|
|
50
|
-
|
|
51
|
-
|
|
50
|
+
* Refresh the access token
|
|
51
|
+
*/
|
|
52
52
|
refreshToken(): Promise<TokenSet>;
|
|
53
53
|
/**
|
|
54
|
-
|
|
55
|
-
|
|
54
|
+
* Revoke the current token
|
|
55
|
+
*/
|
|
56
56
|
revokeToken(): Promise<void>;
|
|
57
57
|
/**
|
|
58
|
-
|
|
59
|
-
|
|
58
|
+
* Get a valid access token, refreshing if necessary
|
|
59
|
+
*/
|
|
60
60
|
getAccessToken(): Promise<string>;
|
|
61
61
|
/**
|
|
62
|
-
|
|
63
|
-
|
|
62
|
+
* Check if we have a valid token
|
|
63
|
+
*/
|
|
64
64
|
isAuthenticated(): boolean;
|
|
65
65
|
/**
|
|
66
|
-
|
|
67
|
-
|
|
66
|
+
* Get token expiration date
|
|
67
|
+
*/
|
|
68
68
|
getTokenExpiration(): Date | null;
|
|
69
69
|
/**
|
|
70
|
-
|
|
71
|
-
|
|
70
|
+
* Get current token set (for status display)
|
|
71
|
+
*/
|
|
72
72
|
getTokenSet(): TokenSet | null;
|
|
73
73
|
private setTokenSet;
|
|
74
|
-
private
|
|
75
|
-
private
|
|
76
|
-
private
|
|
74
|
+
private loadFromFile;
|
|
75
|
+
private saveToFile;
|
|
76
|
+
private deleteFile;
|
|
77
77
|
private makeTokenRequest;
|
|
78
78
|
private makeRequest;
|
|
79
79
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daikin-oauth.d.ts","sourceRoot":"","sources":["../../../src/api/daikin-oauth.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"daikin-oauth.d.ts","sourceRoot":"","sources":["../../../src/api/daikin-oauth.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAKnE,qBAAa,WAAW;IAKhB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;IAN/B,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,cAAc,CAAkC;gBAGjC,MAAM,EAAE,kBAAkB,EAC1B,aAAa,CAAC,GAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,aAAA,EAC5C,OAAO,CAAC,GAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,aAAA;IASvD;;SAEK;IACL,MAAM,CAAC,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAUvF;;SAEK;WACQ,kBAAkB,CAC7B,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,QAAQ,CAAC;IAiBpB;;SAEK;WACQ,iBAAiB,CAC5B,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC;IAShB;;SAEK;mBACgB,iBAAiB;IAYtC;;SAEK;IACL,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAoCnC;;SAEK;IACL,cAAc,IAAI,MAAM;IAIxB;;SAEK;IACL,YAAY,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;IAW5D;;SAEK;IACC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAanD;;SAEK;IACC,YAAY,IAAI,OAAO,CAAC,QAAQ,CAAC;IA0BvC;;SAEK;IACC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBlC;;SAEK;IACC,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC;IAmBvC;;SAEK;IACL,eAAe,IAAI,OAAO;IAI1B;;SAEK;IACL,kBAAkB,IAAI,IAAI,GAAG,IAAI;IAOjC;;SAEK;IACL,WAAW,IAAI,QAAQ,GAAG,IAAI;IAM9B,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,UAAU;IAYlB,OAAO,CAAC,UAAU;YAIJ,gBAAgB;IAY9B,OAAO,CAAC,WAAW;CA+BpB"}
|