brilliantsole 0.0.16 → 0.0.17
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 +12 -0
- package/build/brilliantsole.cjs +43 -11
- package/build/brilliantsole.cjs.map +1 -1
- package/build/brilliantsole.js +44 -13
- package/build/brilliantsole.js.map +1 -1
- package/build/brilliantsole.ls.js +43 -11
- package/build/brilliantsole.ls.js.map +1 -1
- package/build/brilliantsole.min.js +1 -1
- package/build/brilliantsole.min.js.map +1 -1
- package/build/brilliantsole.module.d.ts +15 -1
- package/build/brilliantsole.module.js +44 -14
- package/build/brilliantsole.module.js.map +1 -1
- package/build/brilliantsole.module.min.d.ts +15 -1
- package/build/brilliantsole.module.min.js +1 -1
- package/build/brilliantsole.module.min.js.map +1 -1
- package/build/brilliantsole.node.module.d.ts +15 -1
- package/build/brilliantsole.node.module.js +43 -12
- package/build/brilliantsole.node.module.js.map +1 -1
- package/build/dts/BS.d.ts +1 -0
- package/build/dts/connection/BaseConnectionManager.d.ts +2 -0
- package/build/dts/utils/RangeHelper.d.ts +4 -0
- package/build/index.d.ts +15 -1
- package/build/index.node.d.ts +15 -1
- package/examples/3d/index.html +15 -0
- package/examples/3d/scene.html +23 -1
- package/examples/3d/script.js +0 -9
- package/examples/bottango/index.html +113 -0
- package/examples/bottango/script.js +345 -0
- package/examples/server/script.js +5 -5
- package/package.json +4 -1
- package/src/BS.ts +2 -0
- package/src/Device.ts +6 -2
- package/src/FileTransferManager.ts +3 -1
- package/src/InformationManager.ts +3 -3
- package/src/connection/BaseConnectionManager.ts +11 -1
- package/src/connection/ClientConnectionManager.ts +1 -0
- package/src/connection/bluetooth/WebBluetoothConnectionManager.ts +1 -1
- package/src/server/BaseClient.ts +2 -2
- package/src/utils/RangeHelper.ts +22 -1
package/README.md
CHANGED
|
@@ -19,3 +19,15 @@ if it doesn't work, try turning the firewall off
|
|
|
19
19
|
|
|
20
20
|
if you have issues saving or running stuff on mac, try:
|
|
21
21
|
`sudo chown -R username directory_name`
|
|
22
|
+
|
|
23
|
+
## Running the Node.js server for WebSocket/UDP stuff
|
|
24
|
+
|
|
25
|
+
__To insall via npm:__
|
|
26
|
+
```javascript
|
|
27
|
+
npm install brilliantsole
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
__to add in a webpage:__
|
|
31
|
+
```html
|
|
32
|
+
<script src="https://unpkg.com/brilliantsole@latest/build/brilliantsole.js"></script>
|
|
33
|
+
```
|
package/build/brilliantsole.cjs
CHANGED
|
@@ -779,7 +779,9 @@ _a$6 = FileTransferManager, _FileTransferManager_maxLength = new WeakMap(), _Fil
|
|
|
779
779
|
return;
|
|
780
780
|
}
|
|
781
781
|
if (!__classPrivateFieldGet(this, _FileTransferManager_buffer, "f")) {
|
|
782
|
-
|
|
782
|
+
if (!this.isServerSide) {
|
|
783
|
+
_console$x.error("no buffer defined");
|
|
784
|
+
}
|
|
783
785
|
return;
|
|
784
786
|
}
|
|
785
787
|
const buffer = __classPrivateFieldGet(this, _FileTransferManager_buffer, "f");
|
|
@@ -840,19 +842,36 @@ function parseTimestamp(dataView, byteOffset) {
|
|
|
840
842
|
return timestamp;
|
|
841
843
|
}
|
|
842
844
|
|
|
843
|
-
var _RangeHelper_range;
|
|
845
|
+
var _RangeHelper_instances, _RangeHelper_range, _RangeHelper_updateSpan;
|
|
844
846
|
const initialRange = { min: Infinity, max: -Infinity, span: 0 };
|
|
845
847
|
class RangeHelper {
|
|
846
848
|
constructor() {
|
|
849
|
+
_RangeHelper_instances.add(this);
|
|
847
850
|
_RangeHelper_range.set(this, Object.assign({}, initialRange));
|
|
848
851
|
}
|
|
852
|
+
get min() {
|
|
853
|
+
return __classPrivateFieldGet(this, _RangeHelper_range, "f").min;
|
|
854
|
+
}
|
|
855
|
+
get max() {
|
|
856
|
+
return __classPrivateFieldGet(this, _RangeHelper_range, "f").max;
|
|
857
|
+
}
|
|
858
|
+
set min(newMin) {
|
|
859
|
+
__classPrivateFieldGet(this, _RangeHelper_range, "f").min = newMin;
|
|
860
|
+
__classPrivateFieldGet(this, _RangeHelper_range, "f").max = Math.max(newMin, __classPrivateFieldGet(this, _RangeHelper_range, "f").max);
|
|
861
|
+
__classPrivateFieldGet(this, _RangeHelper_instances, "m", _RangeHelper_updateSpan).call(this);
|
|
862
|
+
}
|
|
863
|
+
set max(newMax) {
|
|
864
|
+
__classPrivateFieldGet(this, _RangeHelper_range, "f").max = newMax;
|
|
865
|
+
__classPrivateFieldGet(this, _RangeHelper_range, "f").min = Math.min(newMax, __classPrivateFieldGet(this, _RangeHelper_range, "f").min);
|
|
866
|
+
__classPrivateFieldGet(this, _RangeHelper_instances, "m", _RangeHelper_updateSpan).call(this);
|
|
867
|
+
}
|
|
849
868
|
reset() {
|
|
850
869
|
Object.assign(__classPrivateFieldGet(this, _RangeHelper_range, "f"), initialRange);
|
|
851
870
|
}
|
|
852
871
|
update(value) {
|
|
853
872
|
__classPrivateFieldGet(this, _RangeHelper_range, "f").min = Math.min(value, __classPrivateFieldGet(this, _RangeHelper_range, "f").min);
|
|
854
873
|
__classPrivateFieldGet(this, _RangeHelper_range, "f").max = Math.max(value, __classPrivateFieldGet(this, _RangeHelper_range, "f").max);
|
|
855
|
-
__classPrivateFieldGet(this,
|
|
874
|
+
__classPrivateFieldGet(this, _RangeHelper_instances, "m", _RangeHelper_updateSpan).call(this);
|
|
856
875
|
}
|
|
857
876
|
getNormalization(value, weightByRange) {
|
|
858
877
|
let normalization = getInterpolation(value, __classPrivateFieldGet(this, _RangeHelper_range, "f").min, __classPrivateFieldGet(this, _RangeHelper_range, "f").max, __classPrivateFieldGet(this, _RangeHelper_range, "f").span);
|
|
@@ -866,7 +885,9 @@ class RangeHelper {
|
|
|
866
885
|
return this.getNormalization(value, weightByRange);
|
|
867
886
|
}
|
|
868
887
|
}
|
|
869
|
-
_RangeHelper_range = new WeakMap()
|
|
888
|
+
_RangeHelper_range = new WeakMap(), _RangeHelper_instances = new WeakSet(), _RangeHelper_updateSpan = function _RangeHelper_updateSpan() {
|
|
889
|
+
__classPrivateFieldGet(this, _RangeHelper_range, "f").span = __classPrivateFieldGet(this, _RangeHelper_range, "f").max - __classPrivateFieldGet(this, _RangeHelper_range, "f").min;
|
|
890
|
+
};
|
|
870
891
|
|
|
871
892
|
var _CenterOfPressureHelper_range;
|
|
872
893
|
class CenterOfPressureHelper {
|
|
@@ -2017,14 +2038,14 @@ _InformationManager_isCharging = new WeakMap(), _InformationManager_batteryCurre
|
|
|
2017
2038
|
_console$n.log({ currentTime });
|
|
2018
2039
|
__classPrivateFieldSet(this, _InformationManager_isCurrentTimeSet, currentTime != 0 || Math.abs(Date.now() - currentTime) < Uint16Max, "f");
|
|
2019
2040
|
if (!__classPrivateFieldGet(this, _InformationManager_isCurrentTimeSet, "f")) {
|
|
2020
|
-
__classPrivateFieldGet(this, _InformationManager_instances, "m", _InformationManager_setCurrentTime).call(this);
|
|
2041
|
+
__classPrivateFieldGet(this, _InformationManager_instances, "m", _InformationManager_setCurrentTime).call(this, false);
|
|
2021
2042
|
}
|
|
2022
|
-
}, _InformationManager_setCurrentTime = async function _InformationManager_setCurrentTime() {
|
|
2043
|
+
}, _InformationManager_setCurrentTime = async function _InformationManager_setCurrentTime(sendImmediately) {
|
|
2023
2044
|
_console$n.log("setting current time...");
|
|
2024
2045
|
const dataView = new DataView(new ArrayBuffer(8));
|
|
2025
2046
|
dataView.setBigUint64(0, BigInt(Date.now()), true);
|
|
2026
2047
|
const promise = this.waitForEvent("getCurrentTime");
|
|
2027
|
-
this.sendMessage([{ type: "setCurrentTime", data: dataView.buffer }]);
|
|
2048
|
+
this.sendMessage([{ type: "setCurrentTime", data: dataView.buffer }], sendImmediately);
|
|
2028
2049
|
await promise;
|
|
2029
2050
|
};
|
|
2030
2051
|
|
|
@@ -2334,7 +2355,7 @@ _VibrationManager_instances = new WeakSet(), _VibrationManager_verifyLocation =
|
|
|
2334
2355
|
return data;
|
|
2335
2356
|
};
|
|
2336
2357
|
|
|
2337
|
-
var _BaseConnectionManager_instances, _a$4, _BaseConnectionManager_AssertValidTxRxMessageType, _BaseConnectionManager_assertIsSupported, _BaseConnectionManager_status, _BaseConnectionManager_assertIsNotConnected, _BaseConnectionManager_assertIsNotConnecting, _BaseConnectionManager_assertIsConnected, _BaseConnectionManager_assertIsNotDisconnecting, _BaseConnectionManager_assertIsConnectedAndNotDisconnecting, _BaseConnectionManager_pendingMessages, _BaseConnectionManager_onRxMessage, _BaseConnectionManager_timer, _BaseConnectionManager_checkConnection;
|
|
2358
|
+
var _BaseConnectionManager_instances, _a$4, _BaseConnectionManager_AssertValidTxRxMessageType, _BaseConnectionManager_assertIsSupported, _BaseConnectionManager_status, _BaseConnectionManager_assertIsNotConnected, _BaseConnectionManager_assertIsNotConnecting, _BaseConnectionManager_assertIsConnected, _BaseConnectionManager_assertIsNotDisconnecting, _BaseConnectionManager_assertIsConnectedAndNotDisconnecting, _BaseConnectionManager_pendingMessages, _BaseConnectionManager_isSendingMessages, _BaseConnectionManager_onRxMessage, _BaseConnectionManager_timer, _BaseConnectionManager_checkConnection;
|
|
2338
2359
|
const _console$l = createConsole("BaseConnectionManager", { log: true });
|
|
2339
2360
|
const ConnectionStatuses = ["notConnected", "connecting", "connected", "disconnecting"];
|
|
2340
2361
|
const ConnectionEventTypes = [...ConnectionStatuses, "connectionStatus", "isConnected"];
|
|
@@ -2373,6 +2394,7 @@ class BaseConnectionManager {
|
|
|
2373
2394
|
_BaseConnectionManager_instances.add(this);
|
|
2374
2395
|
_BaseConnectionManager_status.set(this, "notConnected");
|
|
2375
2396
|
_BaseConnectionManager_pendingMessages.set(this, []);
|
|
2397
|
+
_BaseConnectionManager_isSendingMessages.set(this, false);
|
|
2376
2398
|
_BaseConnectionManager_timer.set(this, new Timer(__classPrivateFieldGet(this, _BaseConnectionManager_instances, "m", _BaseConnectionManager_checkConnection).bind(this), 5000));
|
|
2377
2399
|
__classPrivateFieldGet(this, _BaseConnectionManager_instances, "m", _BaseConnectionManager_assertIsSupported).call(this);
|
|
2378
2400
|
}
|
|
@@ -2432,6 +2454,10 @@ class BaseConnectionManager {
|
|
|
2432
2454
|
if (!sendImmediately) {
|
|
2433
2455
|
return;
|
|
2434
2456
|
}
|
|
2457
|
+
if (__classPrivateFieldGet(this, _BaseConnectionManager_isSendingMessages, "f")) {
|
|
2458
|
+
return;
|
|
2459
|
+
}
|
|
2460
|
+
__classPrivateFieldSet(this, _BaseConnectionManager_isSendingMessages, true, "f");
|
|
2435
2461
|
_console$l.log("sendTxMessages", __classPrivateFieldGet(this, _BaseConnectionManager_pendingMessages, "f").slice());
|
|
2436
2462
|
const arrayBuffers = __classPrivateFieldGet(this, _BaseConnectionManager_pendingMessages, "f").map((message) => {
|
|
2437
2463
|
__classPrivateFieldGet(_a$4, _a$4, "m", _BaseConnectionManager_AssertValidTxRxMessageType).call(_a$4, message.type);
|
|
@@ -2464,15 +2490,17 @@ class BaseConnectionManager {
|
|
|
2464
2490
|
await this.sendTxData(arrayBuffer);
|
|
2465
2491
|
}
|
|
2466
2492
|
__classPrivateFieldGet(this, _BaseConnectionManager_pendingMessages, "f").length = 0;
|
|
2493
|
+
__classPrivateFieldSet(this, _BaseConnectionManager_isSendingMessages, false, "f");
|
|
2467
2494
|
}
|
|
2468
2495
|
async sendTxData(data) {
|
|
2469
2496
|
_console$l.log("sendTxData", data);
|
|
2470
2497
|
}
|
|
2471
2498
|
parseRxMessage(dataView) {
|
|
2472
2499
|
parseMessage(dataView, TxRxMessageTypes, __classPrivateFieldGet(this, _BaseConnectionManager_instances, "m", _BaseConnectionManager_onRxMessage).bind(this), null, true);
|
|
2500
|
+
this.onMessagesReceived();
|
|
2473
2501
|
}
|
|
2474
2502
|
}
|
|
2475
|
-
_a$4 = BaseConnectionManager, _BaseConnectionManager_status = new WeakMap(), _BaseConnectionManager_pendingMessages = new WeakMap(), _BaseConnectionManager_timer = new WeakMap(), _BaseConnectionManager_instances = new WeakSet(), _BaseConnectionManager_AssertValidTxRxMessageType = function _BaseConnectionManager_AssertValidTxRxMessageType(messageType) {
|
|
2503
|
+
_a$4 = BaseConnectionManager, _BaseConnectionManager_status = new WeakMap(), _BaseConnectionManager_pendingMessages = new WeakMap(), _BaseConnectionManager_isSendingMessages = new WeakMap(), _BaseConnectionManager_timer = new WeakMap(), _BaseConnectionManager_instances = new WeakSet(), _BaseConnectionManager_AssertValidTxRxMessageType = function _BaseConnectionManager_AssertValidTxRxMessageType(messageType) {
|
|
2476
2504
|
_console$l.assertEnumWithError(messageType, TxRxMessageTypes);
|
|
2477
2505
|
}, _BaseConnectionManager_assertIsSupported = function _BaseConnectionManager_assertIsSupported() {
|
|
2478
2506
|
_console$l.assertWithError(this.isSupported, `${this.constructor.name} is not supported`);
|
|
@@ -2843,7 +2871,6 @@ _WebBluetoothConnectionManager_boundBluetoothCharacteristicEventListeners = new
|
|
|
2843
2871
|
_console$h.log("getting services...");
|
|
2844
2872
|
const services = await this.server.getPrimaryServices();
|
|
2845
2873
|
_console$h.log("got services", services.length);
|
|
2846
|
-
await this.server.getPrimaryService("8d53dc1d-1db7-4cd3-868b-8a527460aa84");
|
|
2847
2874
|
_console$h.log("getting characteristics...");
|
|
2848
2875
|
for (const serviceIndex in services) {
|
|
2849
2876
|
const service = services[serviceIndex];
|
|
@@ -4126,7 +4153,7 @@ _DeviceManager_boundDeviceEventListeners = new WeakMap(), _DeviceManager_Connect
|
|
|
4126
4153
|
DeviceManager.shared = new DeviceManager();
|
|
4127
4154
|
var DeviceManager$1 = DeviceManager.shared;
|
|
4128
4155
|
|
|
4129
|
-
var _Device_instances, _a$3, _Device_DefaultConnectionManager, _Device_eventDispatcher, _Device_dispatchEvent_get, _Device_connectionManager, _Device_sendTxMessages, _Device_isConnected, _Device_assertIsConnected, _Device_hasRequiredInformation_get, _Device_requestRequiredInformation, _Device_assertCanReconnect, _Device_ReconnectOnDisconnection, _Device_reconnectOnDisconnection, _Device_reconnectIntervalId, _Device_onConnectionStatusUpdated, _Device_dispatchConnectionEvents, _Device_checkConnection, _Device_clear, _Device_onConnectionMessageReceived, _Device_deviceInformationManager, _Device_batteryLevel, _Device_updateBatteryLevel, _Device_sensorConfigurationManager, _Device_ClearSensorConfigurationOnLeave, _Device_clearSensorConfigurationOnLeave, _Device_sensorDataManager, _Device_vibrationManager, _Device_fileTransferManager, _Device_tfliteManager, _Device_firmwareManager, _Device_sendSmpMessage, _Device_isServerSide;
|
|
4156
|
+
var _Device_instances, _a$3, _Device_DefaultConnectionManager, _Device_eventDispatcher, _Device_dispatchEvent_get, _Device_connectionManager, _Device_sendTxMessages, _Device_isConnected, _Device_assertIsConnected, _Device_hasRequiredInformation_get, _Device_requestRequiredInformation, _Device_assertCanReconnect, _Device_ReconnectOnDisconnection, _Device_reconnectOnDisconnection, _Device_reconnectIntervalId, _Device_onConnectionStatusUpdated, _Device_dispatchConnectionEvents, _Device_checkConnection, _Device_clear, _Device_onConnectionMessageReceived, _Device_onConnectionMessagesReceived, _Device_deviceInformationManager, _Device_batteryLevel, _Device_updateBatteryLevel, _Device_sensorConfigurationManager, _Device_ClearSensorConfigurationOnLeave, _Device_clearSensorConfigurationOnLeave, _Device_sensorDataManager, _Device_vibrationManager, _Device_fileTransferManager, _Device_tfliteManager, _Device_firmwareManager, _Device_sendSmpMessage, _Device_isServerSide;
|
|
4130
4157
|
const _console$d = createConsole("Device", { log: true });
|
|
4131
4158
|
const DeviceEventTypes = [
|
|
4132
4159
|
"connectionMessage",
|
|
@@ -4251,10 +4278,12 @@ class Device {
|
|
|
4251
4278
|
if (this.connectionManager) {
|
|
4252
4279
|
this.connectionManager.onStatusUpdated = undefined;
|
|
4253
4280
|
this.connectionManager.onMessageReceived = undefined;
|
|
4281
|
+
this.connectionManager.onMessagesReceived = undefined;
|
|
4254
4282
|
}
|
|
4255
4283
|
if (newConnectionManager) {
|
|
4256
4284
|
newConnectionManager.onStatusUpdated = __classPrivateFieldGet(this, _Device_instances, "m", _Device_onConnectionStatusUpdated).bind(this);
|
|
4257
4285
|
newConnectionManager.onMessageReceived = __classPrivateFieldGet(this, _Device_instances, "m", _Device_onConnectionMessageReceived).bind(this);
|
|
4286
|
+
newConnectionManager.onMessagesReceived = __classPrivateFieldGet(this, _Device_instances, "m", _Device_onConnectionMessagesReceived).bind(this);
|
|
4258
4287
|
}
|
|
4259
4288
|
__classPrivateFieldSet(this, _Device_connectionManager, newConnectionManager, "f");
|
|
4260
4289
|
_console$d.log("assigned new connectionManager", __classPrivateFieldGet(this, _Device_connectionManager, "f"));
|
|
@@ -4631,9 +4660,11 @@ _a$3 = Device, _Device_eventDispatcher = new WeakMap(), _Device_connectionManage
|
|
|
4631
4660
|
}
|
|
4632
4661
|
this.latestConnectionMessage.set(messageType, dataView);
|
|
4633
4662
|
__classPrivateFieldGet(this, _Device_instances, "a", _Device_dispatchEvent_get).call(this, "connectionMessage", { messageType, dataView });
|
|
4663
|
+
}, _Device_onConnectionMessagesReceived = function _Device_onConnectionMessagesReceived() {
|
|
4634
4664
|
if (!this.isConnected && __classPrivateFieldGet(this, _Device_instances, "a", _Device_hasRequiredInformation_get)) {
|
|
4635
4665
|
__classPrivateFieldGet(this, _Device_instances, "m", _Device_checkConnection).call(this);
|
|
4636
4666
|
}
|
|
4667
|
+
__classPrivateFieldGet(this, _Device_instances, "m", _Device_sendTxMessages).call(this);
|
|
4637
4668
|
}, _Device_updateBatteryLevel = function _Device_updateBatteryLevel(updatedBatteryLevel) {
|
|
4638
4669
|
_console$d.assertTypeWithError(updatedBatteryLevel, "number");
|
|
4639
4670
|
if (__classPrivateFieldGet(this, _Device_batteryLevel, "f") == updatedBatteryLevel) {
|
|
@@ -5987,6 +6018,7 @@ exports.MaxVibrationWaveformEffectSegmentLoopCount = MaxVibrationWaveformEffectS
|
|
|
5987
6018
|
exports.MaxVibrationWaveformEffectSequenceLoopCount = MaxVibrationWaveformEffectSequenceLoopCount;
|
|
5988
6019
|
exports.MaxVibrationWaveformSegmentDuration = MaxVibrationWaveformSegmentDuration;
|
|
5989
6020
|
exports.MinNameLength = MinNameLength;
|
|
6021
|
+
exports.RangeHelper = RangeHelper;
|
|
5990
6022
|
exports.Scanner = scanner$1;
|
|
5991
6023
|
exports.SensorRateStep = SensorRateStep;
|
|
5992
6024
|
exports.SensorTypes = SensorTypes;
|