incyclist-services 1.0.35 → 1.0.37
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/README.MD +1 -0
- package/lib/devices/access/index.js.map +1 -0
- package/lib/devices/access/mock.d.ts +4 -0
- package/lib/devices/access/mock.js +10 -0
- package/lib/devices/access/mock.js.map +1 -0
- package/lib/devices/access/model.d.ts +5 -0
- package/lib/devices/access/model.js.map +1 -0
- package/lib/devices/access/service.d.ts +8 -2
- package/lib/devices/access/service.js +60 -22
- package/lib/devices/access/service.js.map +1 -0
- package/lib/devices/configuration/index.js.map +1 -0
- package/lib/devices/configuration/mock.d.ts +4 -0
- package/lib/devices/configuration/mock.js +16 -0
- package/lib/devices/configuration/mock.js.map +1 -0
- package/lib/devices/configuration/model/app/index.d.ts +1 -0
- package/lib/devices/configuration/model/app/index.js.map +1 -0
- package/lib/devices/configuration/model/index.js.map +1 -0
- package/lib/devices/configuration/model/repository/index.js.map +1 -0
- package/lib/devices/configuration/model/repository/legacy.js.map +1 -0
- package/lib/devices/configuration/model/service/index.js.map +1 -0
- package/lib/devices/configuration/service.d.ts +6 -1
- package/lib/devices/configuration/service.js +35 -10
- package/lib/devices/configuration/service.js.map +1 -0
- package/lib/devices/index.d.ts +1 -0
- package/lib/devices/index.js +1 -0
- package/lib/devices/index.js.map +1 -0
- package/lib/devices/pairing/index.d.ts +2 -0
- package/lib/devices/pairing/index.js +18 -0
- package/lib/devices/pairing/index.js.map +1 -0
- package/lib/devices/pairing/model.d.ts +59 -0
- package/lib/devices/pairing/model.js +2 -0
- package/lib/devices/pairing/model.js.map +1 -0
- package/lib/devices/pairing/service.d.ts +88 -0
- package/lib/devices/pairing/service.js +810 -0
- package/lib/devices/pairing/service.js.map +1 -0
- package/lib/devices/ride/index.js.map +1 -0
- package/lib/devices/ride/model.d.ts +8 -1
- package/lib/devices/ride/model.js.map +1 -0
- package/lib/devices/ride/service.d.ts +5 -11
- package/lib/devices/ride/service.js +8 -5
- package/lib/devices/ride/service.js.map +1 -0
- package/lib/index.js.map +1 -0
- package/lib/settings/index.js.map +1 -0
- package/lib/settings/user/bindings/index.js.map +1 -0
- package/lib/settings/user/bindings/json.js.map +1 -0
- package/lib/settings/user/bindings/types.js.map +1 -0
- package/lib/settings/user/mock.d.ts +4 -0
- package/lib/settings/user/mock.js +46 -0
- package/lib/settings/user/mock.js.map +1 -0
- package/lib/settings/user/service.d.ts +1 -1
- package/lib/settings/user/service.js +2 -1
- package/lib/settings/user/service.js.map +1 -0
- package/lib/utils/clone.js.map +1 -0
- package/lib/utils/index.js.map +1 -0
- package/lib/utils/logging.js.map +1 -0
- package/lib/utils/merge.js.map +1 -0
- package/lib/utils/sleep.js.map +1 -0
- package/lib/utils/valid.js.map +1 -0
- package/package.json +2 -2
package/README.MD
CHANGED
|
@@ -26,3 +26,4 @@ The following Services are currently implemented in this library:
|
|
|
26
26
|
- [DeviceConfiguration](./doc/classes/DeviceConfigurationService.md): manages the user configuration of scanned/added/selected devices
|
|
27
27
|
- [DeviceAccess](./doc/classes/DeviceAccessService.md): manages the basic communication to the device (setting up interfacs, scanning,... )
|
|
28
28
|
- [Device](./src/devices/device/README.MD): allows the Front-End to communicate with a device (reading, writing data)
|
|
29
|
+
- [DevicePairing](./doc/classes/DevicePairingService.md): implements the business logic og the DevicePairing screens
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/devices/access/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,4CAAyB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const service_1 = require("./service");
|
|
4
|
+
class DeviceAccessMock extends service_1.DeviceAccessService {
|
|
5
|
+
constructor() {
|
|
6
|
+
super();
|
|
7
|
+
service_1.DeviceAccessService._instance = this;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.default = DeviceAccessMock;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock.js","sourceRoot":"","sources":["../../../src/devices/access/mock.ts"],"names":[],"mappings":";;AAAA,uCAA+C;AAE/C,MAAqB,gBAAiB,SAAQ,6BAAmB;IAC7D;QACI,KAAK,EAAE,CAAA;QACP,6BAAmB,CAAC,SAAS,GAAG,IAAI,CAAC;IACzC,CAAC;CACJ;AALD,mCAKC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { DeviceSettings, IncyclistCapability } from "incyclist-devices";
|
|
2
|
+
import { InterfaceSetting } from "../configuration";
|
|
2
3
|
export type InterfaceState = 'connected' | 'disconnected' | 'unknown' | 'connecting' | 'disconnecting' | 'unavailable';
|
|
3
4
|
export type ScanState = 'start-requested' | 'started' | 'stop-requested' | 'stopped' | 'idle';
|
|
4
5
|
export interface InterfaceInfo {
|
|
@@ -18,6 +19,10 @@ export interface InterfaceAccessProps {
|
|
|
18
19
|
export interface InterfaceList {
|
|
19
20
|
[index: string]: InterfaceInfo;
|
|
20
21
|
}
|
|
22
|
+
export interface EnrichedInterfaceSetting extends InterfaceSetting {
|
|
23
|
+
state: InterfaceState;
|
|
24
|
+
isScanning: boolean;
|
|
25
|
+
}
|
|
21
26
|
export interface ScanFilter {
|
|
22
27
|
interfaces?: string[];
|
|
23
28
|
capabilities?: (IncyclistCapability | 'bike')[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/devices/access/model.ts"],"names":[],"mappings":""}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
import EventEmitter from "events";
|
|
3
3
|
import { EventLogger } from "gd-eventlog";
|
|
4
4
|
import { DeviceSettings, IncyclistInterface } from "incyclist-devices";
|
|
5
|
-
import {
|
|
5
|
+
import { InterfaceSetting } from "../configuration";
|
|
6
|
+
import { InterfaceList, ScanFilter, InterfaceInfo, InterfaceAccessProps, ScanState, ScanForNewFilter, EnrichedInterfaceSetting } from "./model";
|
|
6
7
|
interface InternalScanState {
|
|
7
8
|
promises: (Promise<DeviceSettings[]>)[];
|
|
8
9
|
interfaces: IncyclistInterface[];
|
|
@@ -21,10 +22,15 @@ export declare class DeviceAccessService extends EventEmitter {
|
|
|
21
22
|
disableInterface(ifaceName: string, avalailable?: boolean): void;
|
|
22
23
|
setInterfaceProperties(ifaceName: string, props: InterfaceAccessProps): void;
|
|
23
24
|
getInterfaceInfo(ifaceName: string): InterfaceInfo;
|
|
25
|
+
enrichWithAccessState(interfaces: InterfaceSetting[]): EnrichedInterfaceSetting[];
|
|
24
26
|
protected getInterface(ifaceName: string): IncyclistInterface;
|
|
25
27
|
connect(ifaceName?: string): Promise<boolean>;
|
|
28
|
+
private getScanTimeout;
|
|
26
29
|
disconnect(ifaceName?: string): Promise<boolean>;
|
|
27
|
-
scan(filter?: ScanFilter
|
|
30
|
+
scan(filter?: ScanFilter, props?: {
|
|
31
|
+
timeout?: number;
|
|
32
|
+
includeKnown?: boolean;
|
|
33
|
+
}): Promise<DeviceSettings[]>;
|
|
28
34
|
scanForNew(filter?: ScanForNewFilter, maxDevices?: number, timeout?: number): Promise<DeviceSettings[] | DeviceSettings>;
|
|
29
35
|
getPaths(ifaceName: string): Promise<string[]>;
|
|
30
36
|
getProtocols(ifaceName: string): string[];
|
|
@@ -46,7 +46,8 @@ class DeviceAccessService extends events_1.default {
|
|
|
46
46
|
enableInterface(ifaceName, binding, props = {}) {
|
|
47
47
|
const existing = this.interfaces[ifaceName];
|
|
48
48
|
if (!binding && !existing) {
|
|
49
|
-
|
|
49
|
+
this.logEvent({ message: 'Interface has not been initialized with binding', interface: ifaceName });
|
|
50
|
+
this.emit('interface-changed', ifaceName, { name: ifaceName, state: 'unavailable', isScanning: false });
|
|
50
51
|
}
|
|
51
52
|
if (!existing) {
|
|
52
53
|
const properties = (0, clone_1.default)(this.defaultProps);
|
|
@@ -60,7 +61,8 @@ class DeviceAccessService extends events_1.default {
|
|
|
60
61
|
}
|
|
61
62
|
else {
|
|
62
63
|
if (this.isScanning(ifaceName)) {
|
|
63
|
-
|
|
64
|
+
this.logEvent({ message: 'Illegal State, enable Interface cannot be called during an ongoing scan' });
|
|
65
|
+
return;
|
|
64
66
|
}
|
|
65
67
|
if (binding)
|
|
66
68
|
existing.interface.setBinding(binding);
|
|
@@ -115,6 +117,21 @@ class DeviceAccessService extends events_1.default {
|
|
|
115
117
|
getInterfaceInfo(ifaceName) {
|
|
116
118
|
return this.interfaces[ifaceName];
|
|
117
119
|
}
|
|
120
|
+
enrichWithAccessState(interfaces) {
|
|
121
|
+
return interfaces.map(i => {
|
|
122
|
+
const info = this.interfaces[i.name];
|
|
123
|
+
const enriched = Object.assign({}, i);
|
|
124
|
+
if (!info) {
|
|
125
|
+
enriched.state = 'unavailable';
|
|
126
|
+
enriched.isScanning = false;
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
enriched.state = info.state;
|
|
130
|
+
enriched.isScanning = info.isScanning;
|
|
131
|
+
}
|
|
132
|
+
return enriched;
|
|
133
|
+
});
|
|
134
|
+
}
|
|
118
135
|
getInterface(ifaceName) {
|
|
119
136
|
const info = this.interfaces[ifaceName];
|
|
120
137
|
return info === null || info === void 0 ? void 0 : info.interface;
|
|
@@ -130,6 +147,7 @@ class DeviceAccessService extends events_1.default {
|
|
|
130
147
|
const impl = this.getInterface(ifaceName);
|
|
131
148
|
if (!impl) {
|
|
132
149
|
this.emit('interface-changed', ifaceName, { name: ifaceName, state: 'unavailable', isScanning: false });
|
|
150
|
+
this.interfaces[ifaceName].state = 'unavailable';
|
|
133
151
|
return false;
|
|
134
152
|
}
|
|
135
153
|
const prevState = this.interfaces[ifaceName].state;
|
|
@@ -144,6 +162,17 @@ class DeviceAccessService extends events_1.default {
|
|
|
144
162
|
return connected;
|
|
145
163
|
});
|
|
146
164
|
}
|
|
165
|
+
getScanTimeout(propsTimeout, interfaceSettingsTimeout) {
|
|
166
|
+
if (propsTimeout) {
|
|
167
|
+
if (propsTimeout === -1)
|
|
168
|
+
return undefined;
|
|
169
|
+
else
|
|
170
|
+
return propsTimeout;
|
|
171
|
+
}
|
|
172
|
+
else {
|
|
173
|
+
return interfaceSettingsTimeout;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
147
176
|
disconnect(ifaceName) {
|
|
148
177
|
return __awaiter(this, void 0, void 0, function* () {
|
|
149
178
|
if (!ifaceName) {
|
|
@@ -166,11 +195,13 @@ class DeviceAccessService extends events_1.default {
|
|
|
166
195
|
return disconnected;
|
|
167
196
|
});
|
|
168
197
|
}
|
|
169
|
-
scan(filter = {}) {
|
|
198
|
+
scan(filter = {}, props = {}) {
|
|
199
|
+
var _a, _b, _c;
|
|
170
200
|
return __awaiter(this, void 0, void 0, function* () {
|
|
171
|
-
this.logEvent({ message: 'device scan start', filter });
|
|
201
|
+
this.logEvent({ message: 'device scan start', filter, props });
|
|
172
202
|
const detected = [];
|
|
173
203
|
const onDataHandlers = {};
|
|
204
|
+
const { includeKnown = false } = props;
|
|
174
205
|
if (!this.isScanning()) {
|
|
175
206
|
this.emitScanStateChange('start-requested');
|
|
176
207
|
this.scanState = {
|
|
@@ -192,17 +223,19 @@ class DeviceAccessService extends events_1.default {
|
|
|
192
223
|
}
|
|
193
224
|
};
|
|
194
225
|
const onDevice = (deviceSettings) => __awaiter(this, void 0, void 0, function* () {
|
|
195
|
-
if (
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
226
|
+
if (!includeKnown) {
|
|
227
|
+
if (adapters.find(a => a.isEqual(deviceSettings))) {
|
|
228
|
+
return;
|
|
229
|
+
}
|
|
230
|
+
if (filter.profile && deviceSettings.profile !== filter.profile) {
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
if (filter.protocol && deviceSettings.protocol !== filter.protocol) {
|
|
234
|
+
return;
|
|
235
|
+
}
|
|
236
|
+
if (filter.protocols && !filter.protocols.includes(deviceSettings.protocol)) {
|
|
237
|
+
return;
|
|
238
|
+
}
|
|
206
239
|
}
|
|
207
240
|
const adapter = incyclist_devices_1.AdapterFactory.create(deviceSettings);
|
|
208
241
|
if (filter.capabilities) {
|
|
@@ -227,17 +260,18 @@ class DeviceAccessService extends events_1.default {
|
|
|
227
260
|
const ifaceName = i.getName();
|
|
228
261
|
const info = this.interfaces[ifaceName];
|
|
229
262
|
info.isScanning = true;
|
|
230
|
-
const
|
|
231
|
-
const { scanTimeout, port, protocol } =
|
|
232
|
-
const
|
|
263
|
+
const scanProps = info.properties || this.defaultProps;
|
|
264
|
+
const { scanTimeout, port, protocol } = scanProps;
|
|
265
|
+
const timeout = this.getScanTimeout(props.timeout, scanTimeout);
|
|
266
|
+
const properties = ifaceName === 'tcpip' || ifaceName === 'serial' ? { timeout, port: port === null || port === void 0 ? void 0 : port.toString(), protocol } : { timeout: scanTimeout };
|
|
233
267
|
this.scanState.promises.push(i.scan(properties));
|
|
234
268
|
});
|
|
235
269
|
this.emitScanStateChange('started');
|
|
236
270
|
try {
|
|
237
|
-
if (this.scanState.promises.length === 0) {
|
|
238
|
-
this.scanState.promises.push(this.dummyScan());
|
|
271
|
+
if (((_a = this.scanState) === null || _a === void 0 ? void 0 : _a.promises.length) === 0) {
|
|
272
|
+
(_b = this.scanState) === null || _b === void 0 ? void 0 : _b.promises.push(this.dummyScan());
|
|
239
273
|
}
|
|
240
|
-
yield Promise.allSettled(this.scanState.promises);
|
|
274
|
+
yield Promise.allSettled((_c = this.scanState) === null || _c === void 0 ? void 0 : _c.promises);
|
|
241
275
|
}
|
|
242
276
|
catch (err) {
|
|
243
277
|
this.logEvent({ message: 'device scan finished with errors', filter, error: err.message, stack: err.stack });
|
|
@@ -250,6 +284,7 @@ class DeviceAccessService extends events_1.default {
|
|
|
250
284
|
if (i.getName() === 'tcpip')
|
|
251
285
|
this.interfaces[i.getName()];
|
|
252
286
|
});
|
|
287
|
+
adapters.forEach(adapter => adapter.removeAllListeners('data'));
|
|
253
288
|
this.emitScanStateChange('stopped');
|
|
254
289
|
this.logEvent({ message: 'device scan finished', filter, detected });
|
|
255
290
|
return detected;
|
|
@@ -355,13 +390,15 @@ class DeviceAccessService extends events_1.default {
|
|
|
355
390
|
this.logEvent({ message: 'stop device scan finished with errors', error: err.message, stack: err.stack });
|
|
356
391
|
return false;
|
|
357
392
|
}
|
|
358
|
-
this.scanState
|
|
393
|
+
this.scanState = null;
|
|
359
394
|
this.emitScanStateChange('stopped');
|
|
360
395
|
this.logEvent({ message: 'stop device scan finished', stopScanresult: result });
|
|
361
396
|
return true;
|
|
362
397
|
});
|
|
363
398
|
}
|
|
364
399
|
isScanning(ifaceName) {
|
|
400
|
+
if (!this.scanState)
|
|
401
|
+
return false;
|
|
365
402
|
if (!ifaceName)
|
|
366
403
|
return this.scanState !== null && this.scanState.promises !== null && this.scanState.promises.length > 0;
|
|
367
404
|
else
|
|
@@ -381,6 +418,7 @@ class DeviceAccessService extends events_1.default {
|
|
|
381
418
|
const remaining = selectedInterfaces.filter(i => interfaceFilter.includes(i));
|
|
382
419
|
interfaces = remaining.map(name => this.interfaces[name].interface);
|
|
383
420
|
}
|
|
421
|
+
console.log('~~getINterfacesForScan', filter, interfaces);
|
|
384
422
|
return interfaces;
|
|
385
423
|
}
|
|
386
424
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/devices/access/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/devices/configuration/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAuB;AACvB,4CAAyB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const mock_1 = __importDefault(require("../../settings/user/mock"));
|
|
7
|
+
const service_1 = require("./service");
|
|
8
|
+
class DeviceConfigurationMock extends service_1.DeviceConfigurationService {
|
|
9
|
+
constructor(settings) {
|
|
10
|
+
const svc = new mock_1.default(settings);
|
|
11
|
+
super();
|
|
12
|
+
this.userSettings = svc;
|
|
13
|
+
service_1.DeviceConfigurationService._instance = this;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
exports.default = DeviceConfigurationMock;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock.js","sourceRoot":"","sources":["../../../src/devices/configuration/mock.ts"],"names":[],"mappings":";;;;;AAAA,oEAAwD;AACxD,uCAAuD;AAEvD,MAAqB,uBAAwB,SAAQ,oCAA0B;IAE3E,YAAY,QAAQ;QAChB,MAAM,GAAG,GAAG,IAAI,cAAgB,CAAC,QAAQ,CAAC,CAAA;QAC1C,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,YAAY,GAAG,GAAG,CAAA;QACvB,oCAA0B,CAAC,SAAS,GAAG,IAAI,CAAA;IAC/C,CAAC;CAEJ;AATD,0CASC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/devices/configuration/model/app/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/devices/configuration/model/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAqB;AACrB,+CAA4B;AAC5B,4CAAyB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/devices/configuration/model/repository/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAIA,2CAAwB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"legacy.js","sourceRoot":"","sources":["../../../../../src/devices/configuration/model/repository/legacy.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/devices/configuration/model/service/index.ts"],"names":[],"mappings":""}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { IncyclistCapability, IncyclistDeviceAdapter } from "incyclist-devices";
|
|
3
|
+
import { UserSettingsService } from "../../settings";
|
|
3
4
|
import { AdapterInfo, DeviceConfigurationInfo, DeviceConfigurationSettings, DeviceModeInfo, ExtendedIncyclistCapability, IncyclistDeviceSettings, InterfaceSetting, LegacySettings } from "./model";
|
|
4
5
|
import EventEmitter from "events";
|
|
5
6
|
import { EventLogger } from "gd-eventlog";
|
|
@@ -15,7 +16,7 @@ export declare class DeviceConfigurationService extends EventEmitter {
|
|
|
15
16
|
protected static _instance: DeviceConfigurationService;
|
|
16
17
|
static getInstance(): DeviceConfigurationService;
|
|
17
18
|
settings: DeviceConfigurationSettings;
|
|
18
|
-
userSettings:
|
|
19
|
+
userSettings: UserSettingsService;
|
|
19
20
|
adapters: DeviceAdapterList;
|
|
20
21
|
protected logger: EventLogger;
|
|
21
22
|
constructor();
|
|
@@ -31,6 +32,10 @@ export declare class DeviceConfigurationService extends EventEmitter {
|
|
|
31
32
|
protected getDeviceConfigurationInfo(): DeviceConfigurationInfo;
|
|
32
33
|
protected emitCapabiltyChanged(capability?: ExtendedIncyclistCapability): void;
|
|
33
34
|
protected emitInitialized(): void;
|
|
35
|
+
load(): {
|
|
36
|
+
capabilities: DeviceConfigurationInfo;
|
|
37
|
+
interfaces: Array<InterfaceSetting>;
|
|
38
|
+
};
|
|
34
39
|
disableCapability(cability: ExtendedIncyclistCapability, disabled?: boolean): void;
|
|
35
40
|
select(udid: string, capability: ExtendedIncyclistCapability, props?: {
|
|
36
41
|
noRecursive?: boolean;
|
|
@@ -36,7 +36,7 @@ class DeviceConfigurationService extends events_1.default {
|
|
|
36
36
|
var _a;
|
|
37
37
|
(_a = this.logger) === null || _a === void 0 ? void 0 : _a.logEvent(e);
|
|
38
38
|
const w = global.window;
|
|
39
|
-
if (w === null || w === void 0 ? void 0 : w.SERVICE_DEBUG) {
|
|
39
|
+
if ((w === null || w === void 0 ? void 0 : w.SERVICE_DEBUG) || process.env.DEBUG) {
|
|
40
40
|
console.log('~~~ CONFIG-SVC', e);
|
|
41
41
|
}
|
|
42
42
|
}
|
|
@@ -45,6 +45,7 @@ class DeviceConfigurationService extends events_1.default {
|
|
|
45
45
|
}
|
|
46
46
|
init() {
|
|
47
47
|
return __awaiter(this, void 0, void 0, function* () {
|
|
48
|
+
yield this.userSettings.init();
|
|
48
49
|
if (this.isInitialized()) {
|
|
49
50
|
this.emitInitialized();
|
|
50
51
|
return;
|
|
@@ -57,6 +58,7 @@ class DeviceConfigurationService extends events_1.default {
|
|
|
57
58
|
settings.modeSettings = this.userSettings.get('preferences.gear', {});
|
|
58
59
|
try {
|
|
59
60
|
yield this.initFromLegacy(settings);
|
|
61
|
+
this.verifyCapabilitySettings();
|
|
60
62
|
}
|
|
61
63
|
catch (err) {
|
|
62
64
|
this.logError(err, 'init()');
|
|
@@ -91,12 +93,6 @@ class DeviceConfigurationService extends events_1.default {
|
|
|
91
93
|
this.logEvent({ message: 'error', fn: 'init()->Adapterfactory.create()', error: err.message, udid: d.udid, settings: d.settings, devices: this.settings.devices, stack: err.stack, });
|
|
92
94
|
}
|
|
93
95
|
});
|
|
94
|
-
const { capabilities } = this.settings;
|
|
95
|
-
for (const capability of ['bike', incyclist_devices_1.IncyclistCapability.Control]) {
|
|
96
|
-
const info = capabilities.find(c => c.capability === capability);
|
|
97
|
-
if (info && info.devices.length > 0 && info.selected === undefined)
|
|
98
|
-
this.select(info.devices[0], capability);
|
|
99
|
-
}
|
|
100
96
|
this.verifyCapabilitySettings();
|
|
101
97
|
this.removeLegacySettings();
|
|
102
98
|
this.logEvent({ message: 'DeviceConfig.init done' });
|
|
@@ -105,6 +101,14 @@ class DeviceConfigurationService extends events_1.default {
|
|
|
105
101
|
}
|
|
106
102
|
verifyCapabilitySettings() {
|
|
107
103
|
const { capabilities } = this.settings;
|
|
104
|
+
const isNewUi = this.userSettings.get('NEW_UI', false);
|
|
105
|
+
if (isNewUi)
|
|
106
|
+
return;
|
|
107
|
+
for (const capability of ['bike', incyclist_devices_1.IncyclistCapability.Control]) {
|
|
108
|
+
const info = capabilities.find(c => c.capability === capability);
|
|
109
|
+
if (info && info.devices.length > 0 && info.selected === undefined)
|
|
110
|
+
this.select(info.devices[0], capability);
|
|
111
|
+
}
|
|
108
112
|
const bikeCap = capabilities.find(c => c.capability === 'bike');
|
|
109
113
|
if (bikeCap && bikeCap.selected) {
|
|
110
114
|
const bike = bikeCap.selected;
|
|
@@ -113,16 +117,19 @@ class DeviceConfigurationService extends events_1.default {
|
|
|
113
117
|
const speed = capabilities.find(c => c.capability === incyclist_devices_1.IncyclistCapability.Speed && c.selected !== undefined);
|
|
114
118
|
const cadence = capabilities.find(c => c.capability === incyclist_devices_1.IncyclistCapability.Cadence && c.selected !== undefined);
|
|
115
119
|
const adapter = this.getAdapter(bike);
|
|
120
|
+
let changed = false;
|
|
116
121
|
const verify = (uuid, cap) => {
|
|
117
122
|
if (!uuid && adapter.hasCapability(cap)) {
|
|
118
123
|
const setting = capabilities.find(c => c.capability === cap);
|
|
119
124
|
if (!setting) {
|
|
120
125
|
capabilities.push({ capability: cap, devices: [bike], selected: bike, disabled: false });
|
|
126
|
+
changed = true;
|
|
121
127
|
}
|
|
122
128
|
else {
|
|
123
129
|
setting.selected = bike;
|
|
124
130
|
if (!setting.devices.includes(bike))
|
|
125
131
|
setting.devices.push(bike);
|
|
132
|
+
changed = true;
|
|
126
133
|
}
|
|
127
134
|
}
|
|
128
135
|
};
|
|
@@ -130,6 +137,10 @@ class DeviceConfigurationService extends events_1.default {
|
|
|
130
137
|
verify(power, incyclist_devices_1.IncyclistCapability.Power);
|
|
131
138
|
verify(speed, incyclist_devices_1.IncyclistCapability.Speed);
|
|
132
139
|
verify(cadence, incyclist_devices_1.IncyclistCapability.Cadence);
|
|
140
|
+
if (changed) {
|
|
141
|
+
this.updateUserSettings();
|
|
142
|
+
this.logEvent({ message: 'capability changed after verification', capabilities });
|
|
143
|
+
}
|
|
133
144
|
}
|
|
134
145
|
}
|
|
135
146
|
initCapabilties() {
|
|
@@ -303,7 +314,9 @@ class DeviceConfigurationService extends events_1.default {
|
|
|
303
314
|
const device = devices.find(d => d.udid === udid);
|
|
304
315
|
const mode = device.mode;
|
|
305
316
|
const modeSetting = device.modes ? device.modes[mode] : undefined;
|
|
306
|
-
|
|
317
|
+
const interfaceName = device.settings.interface;
|
|
318
|
+
const name = (device === null || device === void 0 ? void 0 : device.displayName) || (adapter === null || adapter === void 0 ? void 0 : adapter.getUniqueName()) || (adapter === null || adapter === void 0 ? void 0 : adapter.getName());
|
|
319
|
+
return { udid, name, interface: interfaceName, selected: udid === c.selected, mode, modeSetting };
|
|
307
320
|
})
|
|
308
321
|
};
|
|
309
322
|
return ci;
|
|
@@ -323,6 +336,13 @@ class DeviceConfigurationService extends events_1.default {
|
|
|
323
336
|
const configuration = this.getDeviceConfigurationInfo();
|
|
324
337
|
this.emit('initialized', configuration, this.settings.interfaces);
|
|
325
338
|
}
|
|
339
|
+
load() {
|
|
340
|
+
if (!this.isInitialized())
|
|
341
|
+
throw new Error('load cannot be called before init');
|
|
342
|
+
const capabilities = this.getDeviceConfigurationInfo();
|
|
343
|
+
const interfaces = this.settings.interfaces;
|
|
344
|
+
return { capabilities, interfaces };
|
|
345
|
+
}
|
|
326
346
|
disableCapability(cability, disabled = true) {
|
|
327
347
|
const cabilitySettings = this.settings.capabilities.find(c => c.capability === cability);
|
|
328
348
|
cabilitySettings.disabled = disabled;
|
|
@@ -471,6 +491,7 @@ class DeviceConfigurationService extends events_1.default {
|
|
|
471
491
|
const singleDelete = capability && ((capability !== 'bike' && capability !== incyclist_devices_1.IncyclistCapability.Control) || forceSingle);
|
|
472
492
|
if (singleDelete) {
|
|
473
493
|
const record = capabilities.find(c => c.capability === capability);
|
|
494
|
+
console.log('~~~ record', record);
|
|
474
495
|
if (record) {
|
|
475
496
|
const deviceIdx = record.devices.findIndex(d => d === udid);
|
|
476
497
|
if (record.selected === udid) {
|
|
@@ -484,8 +505,10 @@ class DeviceConfigurationService extends events_1.default {
|
|
|
484
505
|
}
|
|
485
506
|
}
|
|
486
507
|
if (deviceIdx !== -1) {
|
|
508
|
+
console.log('~~~ remove device', deviceIdx);
|
|
487
509
|
record.devices.splice(deviceIdx, 1);
|
|
488
|
-
if (
|
|
510
|
+
if (forceSingle) {
|
|
511
|
+
console.log('~~~ emit Update', deviceIdx);
|
|
489
512
|
this.emitCapabiltyChanged(capability);
|
|
490
513
|
this.updateUserSettings();
|
|
491
514
|
}
|
|
@@ -564,13 +587,15 @@ class DeviceConfigurationService extends events_1.default {
|
|
|
564
587
|
this.userSettings.set('interfaces', this.settings.interfaces);
|
|
565
588
|
}
|
|
566
589
|
canStartRide() {
|
|
590
|
+
const isNewUi = this.userSettings.get('NEW_UI', false);
|
|
567
591
|
const { devices, capabilities } = this.settings || {};
|
|
568
592
|
if (!devices || !capabilities)
|
|
569
593
|
return false;
|
|
570
|
-
|
|
594
|
+
const canStart = ((!isNewUi && this.getSelected('bike') !== undefined) ||
|
|
571
595
|
this.getSelected(incyclist_devices_1.IncyclistCapability.Control) !== undefined ||
|
|
572
596
|
this.getSelected(incyclist_devices_1.IncyclistCapability.Power) !== undefined ||
|
|
573
597
|
this.getSelected(incyclist_devices_1.IncyclistCapability.Speed) !== undefined);
|
|
598
|
+
return canStart;
|
|
574
599
|
}
|
|
575
600
|
getModeSettings(requestedUdid, requestedMode) {
|
|
576
601
|
var _a, _b, _c;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/devices/configuration/service.ts"],"names":[],"mappings":"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"}
|
package/lib/devices/index.d.ts
CHANGED
package/lib/devices/index.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/devices/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,2CAAyB;AACzB,yCAAuB;AACvB,4CAAyB"}
|