@autorunify/capacitor-nrfmesh 0.0.1 → 0.0.3
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 +13 -3
- package/android/build.gradle +1 -1
- package/android/src/main/java/com/autorunify/capacitor/nrfmesh/BleManager.kt +18 -13
- package/android/src/main/java/com/autorunify/capacitor/nrfmesh/NrfMeshPlugin.kt +25 -9
- package/dist/docs.json +10 -0
- package/dist/esm/definitions.d.ts +1 -0
- package/dist/esm/definitions.js.map +1 -1
- package/dist/esm/web.d.ts +1 -0
- package/dist/esm/web.js +1 -0
- package/dist/esm/web.js.map +1 -1
- package/dist/plugin.cjs.js +1 -0
- package/dist/plugin.cjs.js.map +1 -1
- package/dist/plugin.js +1 -0
- package/dist/plugin.js.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
#
|
|
1
|
+
# auto-nrfmesh
|
|
2
2
|
|
|
3
3
|
nrf mesh plugin
|
|
4
4
|
|
|
@@ -7,13 +7,13 @@ nrf mesh plugin
|
|
|
7
7
|
To use npm
|
|
8
8
|
|
|
9
9
|
```bash
|
|
10
|
-
npm install autorunify
|
|
10
|
+
npm install @autorunify/capacitor-nrfmesh
|
|
11
11
|
````
|
|
12
12
|
|
|
13
13
|
To use yarn
|
|
14
14
|
|
|
15
15
|
```bash
|
|
16
|
-
yarn add autorunify
|
|
16
|
+
yarn add @autorunify/capacitor-nrfmesh
|
|
17
17
|
```
|
|
18
18
|
|
|
19
19
|
Sync native files
|
|
@@ -44,6 +44,7 @@ npx cap sync
|
|
|
44
44
|
* [`node(...)`](#node)
|
|
45
45
|
* [`model(...)`](#model)
|
|
46
46
|
* [`init()`](#init)
|
|
47
|
+
* [`kill()`](#kill)
|
|
47
48
|
* [`devices(...)`](#devices)
|
|
48
49
|
* [`identify(...)`](#identify)
|
|
49
50
|
* [`provision(...)`](#provision)
|
|
@@ -286,6 +287,15 @@ init() => Promise<any>
|
|
|
286
287
|
--------------------
|
|
287
288
|
|
|
288
289
|
|
|
290
|
+
### kill()
|
|
291
|
+
|
|
292
|
+
```typescript
|
|
293
|
+
kill() => Promise<void>
|
|
294
|
+
```
|
|
295
|
+
|
|
296
|
+
--------------------
|
|
297
|
+
|
|
298
|
+
|
|
289
299
|
### devices(...)
|
|
290
300
|
|
|
291
301
|
```typescript
|
package/android/build.gradle
CHANGED
|
@@ -24,7 +24,7 @@ apply plugin: 'org.jetbrains.kotlin.android'
|
|
|
24
24
|
|
|
25
25
|
android {
|
|
26
26
|
namespace = "com.autorunify.capacitor.nrfmesh"
|
|
27
|
-
|
|
27
|
+
compileSdkVersion project.hasProperty('compileSdkVersion') ? rootProject.ext.compileSdkVersion : 36
|
|
28
28
|
defaultConfig {
|
|
29
29
|
minSdkVersion project.hasProperty('minSdkVersion') ? rootProject.ext.minSdkVersion : 24
|
|
30
30
|
targetSdkVersion project.hasProperty('targetSdkVersion') ? rootProject.ext.targetSdkVersion : 36
|
|
@@ -159,6 +159,7 @@ class BleManager {
|
|
|
159
159
|
private val notify: NrfMeshPlugin
|
|
160
160
|
private val mesh: MeshManager
|
|
161
161
|
private val async: AsyncManager
|
|
162
|
+
private lateinit var context: Context
|
|
162
163
|
|
|
163
164
|
private lateinit var adapter: BluetoothAdapter
|
|
164
165
|
private lateinit var stateReceiver: StateReceiver
|
|
@@ -185,27 +186,17 @@ class BleManager {
|
|
|
185
186
|
|
|
186
187
|
val manager = context.getSystemService(Context.BLUETOOTH_SERVICE) as BluetoothManager
|
|
187
188
|
this.adapter = manager.adapter
|
|
188
|
-
|
|
189
|
+
this.context = context
|
|
189
190
|
|
|
190
|
-
fun handleOnStart(context: Context) {
|
|
191
191
|
this.stateReceiver = StateReceiver(this)
|
|
192
192
|
this.scanReceiver = ScanReceiver(this)
|
|
193
|
+
}
|
|
193
194
|
|
|
195
|
+
fun handleOnStart(context: Context) {
|
|
194
196
|
|
|
195
|
-
val filter = IntentFilter(BluetoothAdapter.ACTION_STATE_CHANGED)
|
|
196
|
-
filter.addAction(BluetoothDevice.ACTION_ACL_CONNECTED)
|
|
197
|
-
filter.addAction(BluetoothDevice.ACTION_ACL_DISCONNECTED)
|
|
198
|
-
|
|
199
|
-
context.registerReceiver(this.stateReceiver, filter)
|
|
200
197
|
}
|
|
201
198
|
|
|
202
199
|
fun handleOnStop(context: Context) {
|
|
203
|
-
try {
|
|
204
|
-
context.unregisterReceiver(this.stateReceiver)
|
|
205
|
-
} catch (e: IllegalArgumentException) {
|
|
206
|
-
|
|
207
|
-
}
|
|
208
|
-
|
|
209
200
|
this.scan(false)
|
|
210
201
|
|
|
211
202
|
if (isConnected.value!!) {
|
|
@@ -247,6 +238,15 @@ class BleManager {
|
|
|
247
238
|
|
|
248
239
|
fun scan(startScan: Boolean) {
|
|
249
240
|
if (startScan) {
|
|
241
|
+
try {
|
|
242
|
+
val filter = IntentFilter(BluetoothAdapter.ACTION_STATE_CHANGED)
|
|
243
|
+
filter.addAction(BluetoothDevice.ACTION_ACL_CONNECTED)
|
|
244
|
+
filter.addAction(BluetoothDevice.ACTION_ACL_DISCONNECTED)
|
|
245
|
+
context.registerReceiver(this.stateReceiver, filter)
|
|
246
|
+
} catch (ex: Exception) {
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
|
|
250
250
|
val settings = ScanSettings.Builder()
|
|
251
251
|
.setScanMode(ScanSettings.SCAN_MODE_LOW_LATENCY)
|
|
252
252
|
.setReportDelay(0)
|
|
@@ -274,6 +274,11 @@ class BleManager {
|
|
|
274
274
|
synchronized(this) {
|
|
275
275
|
if (!isScanning) return
|
|
276
276
|
isScanning = false
|
|
277
|
+
try {
|
|
278
|
+
context.unregisterReceiver(this.stateReceiver)
|
|
279
|
+
} catch (ex: Exception) {
|
|
280
|
+
}
|
|
281
|
+
|
|
277
282
|
|
|
278
283
|
val scanner = BluetoothLeScannerCompat.getScanner()
|
|
279
284
|
scanner.stopScan(scanReceiver)
|
|
@@ -47,7 +47,6 @@ import no.nordicsemi.android.mesh.opcodes.ConfigMessageOpCodes.CONFIG_NETWORK_TR
|
|
|
47
47
|
import no.nordicsemi.android.mesh.opcodes.ConfigMessageOpCodes.CONFIG_NETWORK_TRANSMIT_SET
|
|
48
48
|
import no.nordicsemi.android.mesh.opcodes.ConfigMessageOpCodes.CONFIG_SIG_MODEL_APP_GET
|
|
49
49
|
import no.nordicsemi.android.mesh.opcodes.ConfigMessageOpCodes.CONFIG_VENDOR_MODEL_APP_GET
|
|
50
|
-
import no.nordicsemi.android.mesh.sensorutils.DeviceProperty
|
|
51
50
|
import no.nordicsemi.android.mesh.transport.ConfigAppKeyAdd
|
|
52
51
|
import no.nordicsemi.android.mesh.transport.ConfigAppKeyDelete
|
|
53
52
|
import no.nordicsemi.android.mesh.transport.ConfigAppKeyGet
|
|
@@ -69,8 +68,6 @@ import no.nordicsemi.android.mesh.transport.ConfigSigModelAppGet
|
|
|
69
68
|
import no.nordicsemi.android.mesh.transport.ConfigVendorModelAppGet
|
|
70
69
|
import no.nordicsemi.android.mesh.transport.GenericOnOffGet
|
|
71
70
|
import no.nordicsemi.android.mesh.transport.GenericOnOffSet
|
|
72
|
-
import no.nordicsemi.android.mesh.transport.SensorSettingGet
|
|
73
|
-
import no.nordicsemi.android.mesh.transport.SensorSettingsGet
|
|
74
71
|
import java.util.UUID
|
|
75
72
|
import kotlin.random.Random
|
|
76
73
|
|
|
@@ -448,12 +445,31 @@ class NrfMeshPlugin : Plugin {
|
|
|
448
445
|
if (!this.ble.assertAdapter(call)) return
|
|
449
446
|
if (!this.ble.assertEnabled(call)) return
|
|
450
447
|
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
448
|
+
CoroutineScope(Dispatchers.Default).launch {
|
|
449
|
+
try {
|
|
450
|
+
async.on(call, MESH_NETWORK_INIT)
|
|
451
|
+
ble.scan(true)
|
|
452
|
+
mesh.init()
|
|
453
|
+
} catch (ex: Exception) {
|
|
454
|
+
call.reject(ex.message)
|
|
455
|
+
}
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
|
|
459
|
+
@PluginMethod
|
|
460
|
+
fun kill(call: PluginCall) {
|
|
461
|
+
if (!this.ble.assertFeature(call)) return
|
|
462
|
+
if (!this.ble.assertAdapter(call)) return
|
|
463
|
+
if (!this.ble.assertEnabled(call)) return
|
|
464
|
+
|
|
465
|
+
CoroutineScope(Dispatchers.Default).launch {
|
|
466
|
+
try {
|
|
467
|
+
ble.disconnect()
|
|
468
|
+
ble.scan(false)
|
|
469
|
+
call.resolve()
|
|
470
|
+
} catch (ex: Exception) {
|
|
471
|
+
call.reject(ex.message)
|
|
472
|
+
}
|
|
457
473
|
}
|
|
458
474
|
}
|
|
459
475
|
|
package/dist/docs.json
CHANGED
|
@@ -275,6 +275,16 @@
|
|
|
275
275
|
"complexTypes": [],
|
|
276
276
|
"slug": "init"
|
|
277
277
|
},
|
|
278
|
+
{
|
|
279
|
+
"name": "kill",
|
|
280
|
+
"signature": "() => Promise<void>",
|
|
281
|
+
"parameters": [],
|
|
282
|
+
"returns": "Promise<void>",
|
|
283
|
+
"tags": [],
|
|
284
|
+
"docs": "",
|
|
285
|
+
"complexTypes": [],
|
|
286
|
+
"slug": "kill"
|
|
287
|
+
},
|
|
278
288
|
{
|
|
279
289
|
"name": "devices",
|
|
280
290
|
"signature": "(options?: ScanOptions | undefined) => Promise<ScanResults>",
|
|
@@ -333,6 +333,7 @@ export interface NrfMeshPlugin {
|
|
|
333
333
|
node(options: NodeOptions): Promise<NodeResults>;
|
|
334
334
|
model(options: ModelOptions): Promise<ModelResults>;
|
|
335
335
|
init(): Promise<any>;
|
|
336
|
+
kill(): Promise<void>;
|
|
336
337
|
devices(options?: ScanOptions): Promise<ScanResults>;
|
|
337
338
|
identify(options: IdentifyOptions): Promise<IdentifyResults>;
|
|
338
339
|
provision(options: ProvisionOptions): Promise<ProvisionResults>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/definitions.ts"],"names":[],"mappings":"","sourcesContent":["import type { PluginListenerHandle } from '@capacitor/core'\n\ntype PartialAny<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;\n\nexport type PermissionState = 'denied' | 'granted'\n\nexport type PermissionKey =\n \"android.permission.BLUETOOTH\" |\n \"android.permission.BLUETOOTH_ADMIN\" |\n \"android.permission.ACCESS_COARSE_LOCATION\" |\n \"android.permission.ACCESS_FINE_LOCATION\" |\n \"android.permission.BLUETOOTH_SCAN\" |\n \"android.permission.BLUETOOTH_CONNECT\"\n\n\nexport type Permissions = {\n [key in PermissionKey]: PermissionState;\n}\n\nexport interface BluetoothState {\n enabled: boolean;\n}\n\nexport interface TimeoutOptions {\n timeout?: number\n}\n\nexport interface ConnectionState {\n connected: boolean\n}\n\nexport interface NetKey {\n index: number;\n key: string;\n minSecurity: string;\n name: string;\n phase: number;\n timestamp: string;\n oldKey?: string;\n}\n\nexport interface AppKey {\n index: number\n boundNetKey: number\n key: string\n name: string\n}\n\nexport interface MeshGroup {\n name: string\n address: number\n addressHex: string\n}\n\nexport interface MeshNode {\n name: string\n deviceKey: string\n unicastAddress: number\n security: string\n ttl: number\n netkeys: Array<{ index: number, updated: boolean }>\n appkeys: Array<{ index: number, updated: boolean }>\n elements: Array<{\n name: string\n elementAddress: number\n models: Array<{\n modelId: number\n appkeys: Array<number>\n subscriptions: Array<number>\n publication?: number\n }>\n }>\n features?: {\n friend: number\n lowPower: number\n proxy: number\n relay: number\n }\n networkTransmit?: {\n count: number\n interval: number\n steps: number\n }\n}\n\nexport interface OnOffModel {\n state: boolean\n}\n\nexport interface SensorRawValue {\n propertyId: number\n bytes: Array<number>\n}\n\nexport interface SensorModel {\n values: Array<SensorRawValue>\n}\n\nexport interface SensorPropertiesModel {\n properties: Array<Omit<SensorRawValue, 'bytes'>>\n}\n\nexport interface NetKeysResults {\n netkeys: Array<NetKey>\n}\n\nexport interface NetKeyOptions {\n add?: Omit<NetKey, 'index' | 'key' | 'minSecurity' | 'name' | 'phase' | 'timestamp' | 'oldKey'>\n del?: Omit<NetKey, 'key' | 'minSecurity' | 'name' | 'phase' | 'timestamp' | 'oldKey'>\n get?: Omit<NetKey, 'key' | 'minSecurity' | 'name' | 'phase' | 'timestamp' | 'oldKey'>\n}\n\nexport interface AppKeysOptions {\n boundNetKey: number\n}\n\nexport interface AppKeysResults {\n appkeys: Array<AppKey>\n}\n\nexport interface AppKeyOptions {\n add?: Partial<Omit<AppKey, 'index' | 'key' | 'name'>>\n del?: Omit<AppKey, 'boundNetKey' | 'key' | 'name'>\n get?: Omit<AppKey, 'boundNetKey' | 'key' | 'name'>\n}\n\nexport interface GroupsResults {\n groups: Array<MeshGroup>\n}\n\nexport interface GroupOptions {\n add?: Omit<MeshGroup, 'name' | 'addressHex'>\n del?: Omit<MeshGroup, 'name' | 'addressHex'>\n get?: Omit<MeshGroup, 'name' | 'addressHex'>\n}\n\nexport interface NodesResults {\n nodes: Array<MeshNode>\n}\n\nexport interface NodeDefaultTTL {\n ttl: number;\n}\n\nexport interface NodeNetworkTransmit {\n count: number\n intervalSteps: number\n}\n\nexport interface NodeNetkey {\n netkeyIndex: number\n}\n\nexport interface NodeNetkeys {\n netkeyIndexes: Array<number>\n}\n\nexport interface NodeAppkey {\n netkeyIndex: number\n appkeyIndex: number\n}\n\nexport interface NodeAppkeys {\n netkeyIndex: number\n appkeyIndexes: Array<number>\n}\n\nexport interface ModelAppkey {\n elementAddress: number;\n modelId: number;\n appkeyIndex: number;\n}\n\nexport interface ModelAppkeys {\n elementAddress: number;\n modelId: number;\n appkeyIndexs: Array<number>;\n}\n\nexport interface HeartbeatPub {\n address: number\n count: number\n period: number\n ttl: number\n netkeyIndex: number\n features: {\n friend: number\n proxy: number\n relay: number\n lowPower: number\n }\n}\n\nexport interface HeartbeatSub {\n srcAddress: number\n dstAddress: number\n period: number\n count: number\n minHops: number\n maxHops: number\n}\n\nexport interface NodeOptions extends TimeoutOptions {\n unicastAddress: number\n get?: Object\n defaultTTL?: { set?: NodeDefaultTTL }\n networkTransmit?: { set?: NodeNetworkTransmit }\n netkey?: {\n add?: NodeNetkey\n del?: NodeNetkey\n get?: Omit<NodeNetkeys, 'netkeyIndexes'>\n }\n appkey?: {\n add?: Omit<NodeAppkey, 'netkeyIndex'>\n del?: Omit<NodeAppkey, 'netkeyIndex'>\n get?: Partial<Omit<NodeAppkeys, 'appkeyIndexes'>>\n },\n heartbeat?: {\n pub?: { set?: PartialAny<Omit<HeartbeatPub, 'features'>, 'address' | 'count' | 'netkeyIndex'> }\n sub?: { set?: Omit<HeartbeatSub, 'count' | 'minHops' | 'maxHops'> }\n },\n bind?: {\n add?: ModelAppkey\n del?: ModelAppkey\n get?: Omit<ModelAppkeys, \"appkeyIndexs\">\n }\n}\n\nexport interface NodeResults {\n get?: MeshNode\n defaultTTL?: NodeDefaultTTL\n networkTransmit?: NodeNetworkTransmit\n netkey?: {\n add?: NodeNetkey\n del?: NodeNetkey\n get?: NodeNetkeys\n }\n appkey?: {\n add?: NodeAppkey\n del?: NodeAppkey\n get?: NodeAppkeys\n },\n heartbeat?: {\n pub?: HeartbeatPub\n sub?: HeartbeatSub\n },\n bind?: {\n add?: ModelAppkey\n del?: ModelAppkey\n get?: ModelAppkeys\n }\n}\n\nexport interface ModelOptions extends TimeoutOptions {\n elementAddress: number\n appkeyIndex: number\n onoff?: {\n set?: OnOffModel\n },\n sensor?: {\n propertyId: number\n get?: Omit<SensorModel, 'values'>\n property?: PartialAny<SensorRawValue, 'bytes'>\n properties?: SensorPropertiesModel\n }\n}\n\nexport interface ModelResults {\n onoff?: OnOffModel,\n sensor?: {\n get?: SensorModel\n property?: SensorRawValue\n properties?: SensorPropertiesModel\n }\n}\n\nexport interface MeshDevice {\n address: string\n name: string\n provisioned: boolean\n rssi: number\n uuid?: string\n}\n\nexport interface ScanOptions extends TimeoutOptions {\n filter?: 'all' | 'provisioned' | 'unprovisioned'\n}\n\nexport interface ScanResults {\n devices: Array<MeshDevice>\n}\n\nexport interface IdentifyOptions extends TimeoutOptions {\n address: string;\n uuid: string;\n}\n\nexport interface IdentifyResults {\n numberOfElements: number;\n availableOOBTypes: Array<string>;\n algorithms: number;\n publicKeyType: number;\n staticOobTypes: number;\n outputOobSize: number;\n outputOobActions: number;\n inputOobSize: number;\n inputOobActions: number;\n}\n\nexport interface ProvisionOptions extends TimeoutOptions {\n address: string;\n uuid: string;\n}\n\nexport interface ProvisionResults {\n completed: boolean;\n uuid: string;\n unicastAddress?: number;\n}\n\nexport interface CompositionOptions extends TimeoutOptions {\n unicastAddress: number\n}\n\nexport interface CompositionResults {\n companyIdentifier: string;\n productIdentifier: string;\n productVersion: string;\n nodeFeaturesSupported: {\n relay: boolean;\n proxy: boolean;\n friend: boolean;\n lowPower: boolean;\n };\n elements: Array<{\n name: string;\n elementAddress: number;\n sigModelCount: number;\n vendorModelCount: number;\n location: number;\n models: Array<{\n modelId: number;\n modelName: string;\n boundAppKeyIndexes: Array<number>;\n }>;\n }>;\n}\n\nexport interface OnStateChangeEvent {\n action: 'enabled' | 'connected'\n state: boolean\n}\n\nexport interface OnNodeChangeEvent {\n action: 'del' | 'add' | 'heartbeat'\n unicastAddress: number\n}\n\nexport interface NrfMeshPlugin {\n checkPermissions(): Promise<Permissions>;\n requestPermissions(): Promise<Permissions>;\n isBluetoothEnabled(): Promise<BluetoothState>;\n\n isConnected(): Promise<ConnectionState>;\n connect(options?: TimeoutOptions): Promise<void>;\n disconnect(options?: TimeoutOptions): Promise<void>;\n\n export(): Promise<any>\n import(options: any): Promise<void>\n\n netkeys(): Promise<NetKeysResults>\n netkey(options: NetKeyOptions): Promise<NetKey>\n\n appkeys(options?: AppKeysOptions): Promise<AppKeysResults>\n appkey(options: AppKeyOptions): Promise<AppKey>\n\n groups(): Promise<GroupsResults>\n group(options: GroupOptions): Promise<MeshGroup>\n\n nodes(): Promise<NodesResults>\n node(options: NodeOptions): Promise<NodeResults>\n\n model(options: ModelOptions): Promise<ModelResults>\n\n init(): Promise<any>;\n devices(options?: ScanOptions): Promise<ScanResults>;\n identify(options: IdentifyOptions): Promise<IdentifyResults>;\n provision(options: ProvisionOptions): Promise<ProvisionResults>;\n composition(options: CompositionOptions): Promise<CompositionResults>;\n\n addListener(\n event: 'state',\n callback: (e: OnStateChangeEvent) => void,\n ): Promise<PluginListenerHandle>;\n addListener(\n event: 'node',\n callback: (e: OnNodeChangeEvent) => void,\n ): Promise<PluginListenerHandle>;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/definitions.ts"],"names":[],"mappings":"","sourcesContent":["import type { PluginListenerHandle } from '@capacitor/core'\n\ntype PartialAny<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;\n\nexport type PermissionState = 'denied' | 'granted'\n\nexport type PermissionKey =\n \"android.permission.BLUETOOTH\" |\n \"android.permission.BLUETOOTH_ADMIN\" |\n \"android.permission.ACCESS_COARSE_LOCATION\" |\n \"android.permission.ACCESS_FINE_LOCATION\" |\n \"android.permission.BLUETOOTH_SCAN\" |\n \"android.permission.BLUETOOTH_CONNECT\"\n\n\nexport type Permissions = {\n [key in PermissionKey]: PermissionState;\n}\n\nexport interface BluetoothState {\n enabled: boolean;\n}\n\nexport interface TimeoutOptions {\n timeout?: number\n}\n\nexport interface ConnectionState {\n connected: boolean\n}\n\nexport interface NetKey {\n index: number;\n key: string;\n minSecurity: string;\n name: string;\n phase: number;\n timestamp: string;\n oldKey?: string;\n}\n\nexport interface AppKey {\n index: number\n boundNetKey: number\n key: string\n name: string\n}\n\nexport interface MeshGroup {\n name: string\n address: number\n addressHex: string\n}\n\nexport interface MeshNode {\n name: string\n deviceKey: string\n unicastAddress: number\n security: string\n ttl: number\n netkeys: Array<{ index: number, updated: boolean }>\n appkeys: Array<{ index: number, updated: boolean }>\n elements: Array<{\n name: string\n elementAddress: number\n models: Array<{\n modelId: number\n appkeys: Array<number>\n subscriptions: Array<number>\n publication?: number\n }>\n }>\n features?: {\n friend: number\n lowPower: number\n proxy: number\n relay: number\n }\n networkTransmit?: {\n count: number\n interval: number\n steps: number\n }\n}\n\nexport interface OnOffModel {\n state: boolean\n}\n\nexport interface SensorRawValue {\n propertyId: number\n bytes: Array<number>\n}\n\nexport interface SensorModel {\n values: Array<SensorRawValue>\n}\n\nexport interface SensorPropertiesModel {\n properties: Array<Omit<SensorRawValue, 'bytes'>>\n}\n\nexport interface NetKeysResults {\n netkeys: Array<NetKey>\n}\n\nexport interface NetKeyOptions {\n add?: Omit<NetKey, 'index' | 'key' | 'minSecurity' | 'name' | 'phase' | 'timestamp' | 'oldKey'>\n del?: Omit<NetKey, 'key' | 'minSecurity' | 'name' | 'phase' | 'timestamp' | 'oldKey'>\n get?: Omit<NetKey, 'key' | 'minSecurity' | 'name' | 'phase' | 'timestamp' | 'oldKey'>\n}\n\nexport interface AppKeysOptions {\n boundNetKey: number\n}\n\nexport interface AppKeysResults {\n appkeys: Array<AppKey>\n}\n\nexport interface AppKeyOptions {\n add?: Partial<Omit<AppKey, 'index' | 'key' | 'name'>>\n del?: Omit<AppKey, 'boundNetKey' | 'key' | 'name'>\n get?: Omit<AppKey, 'boundNetKey' | 'key' | 'name'>\n}\n\nexport interface GroupsResults {\n groups: Array<MeshGroup>\n}\n\nexport interface GroupOptions {\n add?: Omit<MeshGroup, 'name' | 'addressHex'>\n del?: Omit<MeshGroup, 'name' | 'addressHex'>\n get?: Omit<MeshGroup, 'name' | 'addressHex'>\n}\n\nexport interface NodesResults {\n nodes: Array<MeshNode>\n}\n\nexport interface NodeDefaultTTL {\n ttl: number;\n}\n\nexport interface NodeNetworkTransmit {\n count: number\n intervalSteps: number\n}\n\nexport interface NodeNetkey {\n netkeyIndex: number\n}\n\nexport interface NodeNetkeys {\n netkeyIndexes: Array<number>\n}\n\nexport interface NodeAppkey {\n netkeyIndex: number\n appkeyIndex: number\n}\n\nexport interface NodeAppkeys {\n netkeyIndex: number\n appkeyIndexes: Array<number>\n}\n\nexport interface ModelAppkey {\n elementAddress: number;\n modelId: number;\n appkeyIndex: number;\n}\n\nexport interface ModelAppkeys {\n elementAddress: number;\n modelId: number;\n appkeyIndexs: Array<number>;\n}\n\nexport interface HeartbeatPub {\n address: number\n count: number\n period: number\n ttl: number\n netkeyIndex: number\n features: {\n friend: number\n proxy: number\n relay: number\n lowPower: number\n }\n}\n\nexport interface HeartbeatSub {\n srcAddress: number\n dstAddress: number\n period: number\n count: number\n minHops: number\n maxHops: number\n}\n\nexport interface NodeOptions extends TimeoutOptions {\n unicastAddress: number\n get?: Object\n defaultTTL?: { set?: NodeDefaultTTL }\n networkTransmit?: { set?: NodeNetworkTransmit }\n netkey?: {\n add?: NodeNetkey\n del?: NodeNetkey\n get?: Omit<NodeNetkeys, 'netkeyIndexes'>\n }\n appkey?: {\n add?: Omit<NodeAppkey, 'netkeyIndex'>\n del?: Omit<NodeAppkey, 'netkeyIndex'>\n get?: Partial<Omit<NodeAppkeys, 'appkeyIndexes'>>\n },\n heartbeat?: {\n pub?: { set?: PartialAny<Omit<HeartbeatPub, 'features'>, 'address' | 'count' | 'netkeyIndex'> }\n sub?: { set?: Omit<HeartbeatSub, 'count' | 'minHops' | 'maxHops'> }\n },\n bind?: {\n add?: ModelAppkey\n del?: ModelAppkey\n get?: Omit<ModelAppkeys, \"appkeyIndexs\">\n }\n}\n\nexport interface NodeResults {\n get?: MeshNode\n defaultTTL?: NodeDefaultTTL\n networkTransmit?: NodeNetworkTransmit\n netkey?: {\n add?: NodeNetkey\n del?: NodeNetkey\n get?: NodeNetkeys\n }\n appkey?: {\n add?: NodeAppkey\n del?: NodeAppkey\n get?: NodeAppkeys\n },\n heartbeat?: {\n pub?: HeartbeatPub\n sub?: HeartbeatSub\n },\n bind?: {\n add?: ModelAppkey\n del?: ModelAppkey\n get?: ModelAppkeys\n }\n}\n\nexport interface ModelOptions extends TimeoutOptions {\n elementAddress: number\n appkeyIndex: number\n onoff?: {\n set?: OnOffModel\n },\n sensor?: {\n propertyId: number\n get?: Omit<SensorModel, 'values'>\n property?: PartialAny<SensorRawValue, 'bytes'>\n properties?: SensorPropertiesModel\n }\n}\n\nexport interface ModelResults {\n onoff?: OnOffModel,\n sensor?: {\n get?: SensorModel\n property?: SensorRawValue\n properties?: SensorPropertiesModel\n }\n}\n\nexport interface MeshDevice {\n address: string\n name: string\n provisioned: boolean\n rssi: number\n uuid?: string\n}\n\nexport interface ScanOptions extends TimeoutOptions {\n filter?: 'all' | 'provisioned' | 'unprovisioned'\n}\n\nexport interface ScanResults {\n devices: Array<MeshDevice>\n}\n\nexport interface IdentifyOptions extends TimeoutOptions {\n address: string;\n uuid: string;\n}\n\nexport interface IdentifyResults {\n numberOfElements: number;\n availableOOBTypes: Array<string>;\n algorithms: number;\n publicKeyType: number;\n staticOobTypes: number;\n outputOobSize: number;\n outputOobActions: number;\n inputOobSize: number;\n inputOobActions: number;\n}\n\nexport interface ProvisionOptions extends TimeoutOptions {\n address: string;\n uuid: string;\n}\n\nexport interface ProvisionResults {\n completed: boolean;\n uuid: string;\n unicastAddress?: number;\n}\n\nexport interface CompositionOptions extends TimeoutOptions {\n unicastAddress: number\n}\n\nexport interface CompositionResults {\n companyIdentifier: string;\n productIdentifier: string;\n productVersion: string;\n nodeFeaturesSupported: {\n relay: boolean;\n proxy: boolean;\n friend: boolean;\n lowPower: boolean;\n };\n elements: Array<{\n name: string;\n elementAddress: number;\n sigModelCount: number;\n vendorModelCount: number;\n location: number;\n models: Array<{\n modelId: number;\n modelName: string;\n boundAppKeyIndexes: Array<number>;\n }>;\n }>;\n}\n\nexport interface OnStateChangeEvent {\n action: 'enabled' | 'connected'\n state: boolean\n}\n\nexport interface OnNodeChangeEvent {\n action: 'del' | 'add' | 'heartbeat'\n unicastAddress: number\n}\n\nexport interface NrfMeshPlugin {\n checkPermissions(): Promise<Permissions>;\n requestPermissions(): Promise<Permissions>;\n isBluetoothEnabled(): Promise<BluetoothState>;\n\n isConnected(): Promise<ConnectionState>;\n connect(options?: TimeoutOptions): Promise<void>;\n disconnect(options?: TimeoutOptions): Promise<void>;\n\n export(): Promise<any>\n import(options: any): Promise<void>\n\n netkeys(): Promise<NetKeysResults>\n netkey(options: NetKeyOptions): Promise<NetKey>\n\n appkeys(options?: AppKeysOptions): Promise<AppKeysResults>\n appkey(options: AppKeyOptions): Promise<AppKey>\n\n groups(): Promise<GroupsResults>\n group(options: GroupOptions): Promise<MeshGroup>\n\n nodes(): Promise<NodesResults>\n node(options: NodeOptions): Promise<NodeResults>\n\n model(options: ModelOptions): Promise<ModelResults>\n\n init(): Promise<any>;\n kill(): Promise<void>\n devices(options?: ScanOptions): Promise<ScanResults>;\n identify(options: IdentifyOptions): Promise<IdentifyResults>;\n provision(options: ProvisionOptions): Promise<ProvisionResults>;\n composition(options: CompositionOptions): Promise<CompositionResults>;\n\n addListener(\n event: 'state',\n callback: (e: OnStateChangeEvent) => void,\n ): Promise<PluginListenerHandle>;\n addListener(\n event: 'node',\n callback: (e: OnNodeChangeEvent) => void,\n ): Promise<PluginListenerHandle>;\n}\n"]}
|
package/dist/esm/web.d.ts
CHANGED
|
@@ -19,6 +19,7 @@ export declare class NrfMeshWeb extends WebPlugin implements NrfMeshPlugin {
|
|
|
19
19
|
node(): Promise<NodeResults>;
|
|
20
20
|
model(): Promise<ModelResults>;
|
|
21
21
|
init(): Promise<void>;
|
|
22
|
+
kill(): Promise<void>;
|
|
22
23
|
devices(): Promise<ScanResults>;
|
|
23
24
|
identify(): Promise<IdentifyResults>;
|
|
24
25
|
provision(): Promise<ProvisionResults>;
|
package/dist/esm/web.js
CHANGED
package/dist/esm/web.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAsB5C,MAAM,OAAO,UAAW,SAAQ,SAAS;IACvC,KAAK,CAAC,gBAAgB,KAA2B,OAAO,EAAiB,CAAA,CAAC,CAAC;IAC3E,KAAK,CAAC,kBAAkB,KAA2B,OAAO,EAAiB,CAAA,CAAC,CAAC;IAC7E,KAAK,CAAC,kBAAkB,KAA8B,OAAO,EAAoB,CAAA,CAAC,CAAC;IAEnF,KAAK,CAAC,WAAW,KAA+B,OAAO,EAAqB,CAAA,CAAC,CAAC;IAC9E,KAAK,CAAC,OAAO,KAAoB,CAAC;IAClC,KAAK,CAAC,UAAU,KAAoB,CAAC;IAErC,KAAK,CAAC,MAAM,KAAmB,CAAC;IAChC,KAAK,CAAC,MAAM,KAAoB,CAAC;IAEjC,KAAK,CAAC,OAAO,KAA8B,OAAO,EAAoB,CAAA,CAAC,CAAC;IACxE,KAAK,CAAC,MAAM,KAAsB,OAAO,EAAY,CAAA,CAAC,CAAC;IAEvD,KAAK,CAAC,OAAO,KAA8B,OAAO,EAAoB,CAAA,CAAC,CAAC;IACxE,KAAK,CAAC,MAAM,KAAsB,OAAO,EAAY,CAAA,CAAC,CAAC;IAEvD,KAAK,CAAC,MAAM,KAA6B,OAAO,EAAmB,CAAA,CAAC,CAAC;IACrE,KAAK,CAAC,KAAK,KAAyB,OAAO,EAAe,CAAA,CAAC,CAAC;IAE5D,KAAK,CAAC,KAAK,KAA4B,OAAO,EAAkB,CAAA,CAAC,CAAC;IAClE,KAAK,CAAC,IAAI,KAA2B,OAAO,EAAiB,CAAA,CAAC,CAAC;IAE/D,KAAK,CAAC,KAAK,KAA4B,OAAO,EAAkB,CAAA,CAAC,CAAC;IAElE,KAAK,CAAC,IAAI,KAAoB,CAAC;IAC/B,KAAK,CAAC,OAAO,KAA2B,OAAO,EAAiB,CAAA,CAAC,CAAC;IAClE,KAAK,CAAC,QAAQ,KAA+B,OAAO,EAAqB,CAAA,CAAC,CAAC;IAAA,CAAC;IAC5E,KAAK,CAAC,SAAS,KAAgC,OAAO,EAAsB,CAAA,CAAC,CAAC;IAC9E,KAAK,CAAC,WAAW,KAAkC,OAAO,EAAwB,CAAA,CAAC,CAAC;CACrF","sourcesContent":["import { WebPlugin } from '@capacitor/core';\n\nimport type {\n NrfMeshPlugin,\n Permissions,\n BluetoothState,\n ScanResults,\n IdentifyResults,\n ConnectionState,\n ProvisionResults,\n CompositionResults,\n NetKeysResults,\n NetKey,\n AppKeysResults,\n AppKey,\n GroupsResults,\n MeshGroup,\n NodesResults,\n NodeResults,\n ModelResults,\n} from './definitions';\n\nexport class NrfMeshWeb extends WebPlugin implements NrfMeshPlugin {\n async checkPermissions(): Promise<Permissions> { return {} as Permissions }\n async requestPermissions(): Promise<Permissions> { return {} as Permissions }\n async isBluetoothEnabled(): Promise<BluetoothState> { return {} as BluetoothState }\n\n async isConnected(): Promise<ConnectionState> { return {} as ConnectionState }\n async connect(): Promise<void> { }\n async disconnect(): Promise<void> { }\n\n async export(): Promise<any> { }\n async import(): Promise<void> { }\n\n async netkeys(): Promise<NetKeysResults> { return {} as NetKeysResults }\n async netkey(): Promise<NetKey> { return {} as NetKey }\n\n async appkeys(): Promise<AppKeysResults> { return {} as AppKeysResults }\n async appkey(): Promise<AppKey> { return {} as AppKey }\n\n async groups(): Promise<GroupsResults> { return {} as GroupsResults }\n async group(): Promise<MeshGroup> { return {} as MeshGroup }\n\n async nodes(): Promise<NodesResults> { return {} as NodesResults }\n async node(): Promise<NodeResults> { return {} as NodeResults }\n\n async model(): Promise<ModelResults> { return {} as ModelResults }\n\n async init(): Promise<void> { }\n async devices(): Promise<ScanResults> { return {} as ScanResults }\n async identify(): Promise<IdentifyResults> { return {} as IdentifyResults };\n async provision(): Promise<ProvisionResults> { return {} as ProvisionResults }\n async composition(): Promise<CompositionResults> { return {} as CompositionResults }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"web.js","sourceRoot":"","sources":["../../src/web.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAsB5C,MAAM,OAAO,UAAW,SAAQ,SAAS;IACvC,KAAK,CAAC,gBAAgB,KAA2B,OAAO,EAAiB,CAAA,CAAC,CAAC;IAC3E,KAAK,CAAC,kBAAkB,KAA2B,OAAO,EAAiB,CAAA,CAAC,CAAC;IAC7E,KAAK,CAAC,kBAAkB,KAA8B,OAAO,EAAoB,CAAA,CAAC,CAAC;IAEnF,KAAK,CAAC,WAAW,KAA+B,OAAO,EAAqB,CAAA,CAAC,CAAC;IAC9E,KAAK,CAAC,OAAO,KAAoB,CAAC;IAClC,KAAK,CAAC,UAAU,KAAoB,CAAC;IAErC,KAAK,CAAC,MAAM,KAAmB,CAAC;IAChC,KAAK,CAAC,MAAM,KAAoB,CAAC;IAEjC,KAAK,CAAC,OAAO,KAA8B,OAAO,EAAoB,CAAA,CAAC,CAAC;IACxE,KAAK,CAAC,MAAM,KAAsB,OAAO,EAAY,CAAA,CAAC,CAAC;IAEvD,KAAK,CAAC,OAAO,KAA8B,OAAO,EAAoB,CAAA,CAAC,CAAC;IACxE,KAAK,CAAC,MAAM,KAAsB,OAAO,EAAY,CAAA,CAAC,CAAC;IAEvD,KAAK,CAAC,MAAM,KAA6B,OAAO,EAAmB,CAAA,CAAC,CAAC;IACrE,KAAK,CAAC,KAAK,KAAyB,OAAO,EAAe,CAAA,CAAC,CAAC;IAE5D,KAAK,CAAC,KAAK,KAA4B,OAAO,EAAkB,CAAA,CAAC,CAAC;IAClE,KAAK,CAAC,IAAI,KAA2B,OAAO,EAAiB,CAAA,CAAC,CAAC;IAE/D,KAAK,CAAC,KAAK,KAA4B,OAAO,EAAkB,CAAA,CAAC,CAAC;IAElE,KAAK,CAAC,IAAI,KAAoB,CAAC;IAC/B,KAAK,CAAC,IAAI,KAAoB,CAAC;IAC/B,KAAK,CAAC,OAAO,KAA2B,OAAO,EAAiB,CAAA,CAAC,CAAC;IAClE,KAAK,CAAC,QAAQ,KAA+B,OAAO,EAAqB,CAAA,CAAC,CAAC;IAAA,CAAC;IAC5E,KAAK,CAAC,SAAS,KAAgC,OAAO,EAAsB,CAAA,CAAC,CAAC;IAC9E,KAAK,CAAC,WAAW,KAAkC,OAAO,EAAwB,CAAA,CAAC,CAAC;CACrF","sourcesContent":["import { WebPlugin } from '@capacitor/core';\n\nimport type {\n NrfMeshPlugin,\n Permissions,\n BluetoothState,\n ScanResults,\n IdentifyResults,\n ConnectionState,\n ProvisionResults,\n CompositionResults,\n NetKeysResults,\n NetKey,\n AppKeysResults,\n AppKey,\n GroupsResults,\n MeshGroup,\n NodesResults,\n NodeResults,\n ModelResults,\n} from './definitions';\n\nexport class NrfMeshWeb extends WebPlugin implements NrfMeshPlugin {\n async checkPermissions(): Promise<Permissions> { return {} as Permissions }\n async requestPermissions(): Promise<Permissions> { return {} as Permissions }\n async isBluetoothEnabled(): Promise<BluetoothState> { return {} as BluetoothState }\n\n async isConnected(): Promise<ConnectionState> { return {} as ConnectionState }\n async connect(): Promise<void> { }\n async disconnect(): Promise<void> { }\n\n async export(): Promise<any> { }\n async import(): Promise<void> { }\n\n async netkeys(): Promise<NetKeysResults> { return {} as NetKeysResults }\n async netkey(): Promise<NetKey> { return {} as NetKey }\n\n async appkeys(): Promise<AppKeysResults> { return {} as AppKeysResults }\n async appkey(): Promise<AppKey> { return {} as AppKey }\n\n async groups(): Promise<GroupsResults> { return {} as GroupsResults }\n async group(): Promise<MeshGroup> { return {} as MeshGroup }\n\n async nodes(): Promise<NodesResults> { return {} as NodesResults }\n async node(): Promise<NodeResults> { return {} as NodeResults }\n\n async model(): Promise<ModelResults> { return {} as ModelResults }\n\n async init(): Promise<void> { }\n async kill(): Promise<void> { }\n async devices(): Promise<ScanResults> { return {} as ScanResults }\n async identify(): Promise<IdentifyResults> { return {} as IdentifyResults };\n async provision(): Promise<ProvisionResults> { return {} as ProvisionResults }\n async composition(): Promise<CompositionResults> { return {} as CompositionResults }\n}\n"]}
|
package/dist/plugin.cjs.js
CHANGED
package/dist/plugin.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.cjs.js","sources":["esm/sensor.js","esm/index.js","esm/web.js"],"sourcesContent":["export function unsignedToSigned(unsigned, size) {\n if ((unsigned & (1 << (size - 1))) != 0) {\n unsigned = -1 * ((1 << (size - 1)) - (unsigned & ((1 << (size - 1)) - 1)));\n }\n return unsigned;\n}\nexport function signedToUnsigned(signed, size) {\n if (signed < 0) {\n signed = (1 << size) + signed;\n signed &= (1 << size) - 1;\n }\n return signed;\n}\nexport class SensorValue {\n static register(propertyId, cls, ...args) {\n SensorValue.types.set(propertyId, { args, CLS: cls });\n }\n static from(src) {\n if (typeof src === 'number') {\n const TP = SensorValue.types.get(src);\n if (TP)\n return new TP.CLS(src, ...TP.args);\n return new Unknown(src);\n }\n const ins = SensorValue.from(src.propertyId);\n ins.setValue(Uint8Array.from(src.bytes));\n return ins;\n }\n get propertyId() {\n return this._propertyId;\n }\n get value() {\n return this._value;\n }\n constructor(propertyId) {\n this._propertyId = propertyId;\n this._value = null;\n }\n isLittleEndian() {\n const ua = new ArrayBuffer(4);\n const u8a = new Uint8Array(ua);\n const u32a = new Uint32Array(ua);\n u32a[0] = 0x01020304;\n return u8a[0] == 0x01;\n }\n toRawValue() {\n const values = [];\n this.toBytes().forEach(v => values.push(v));\n return {\n propertyId: this.propertyId,\n bytes: values\n };\n }\n}\nSensorValue.types = new Map();\nexport class Bool extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'boolean') {\n this._value = value;\n return;\n }\n if (value.byteLength == 0)\n this._value = false;\n else\n this._value = value[0] == 0x01;\n }\n toBytes() {\n const u8a = new Uint8Array(1);\n u8a[0] = this._value ? 0x01 : 0x00;\n return u8a;\n }\n}\nexport class Percentage8 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = unsignedToSigned(value[0], 8) / 2.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 2.0).toString());\n const u8a = new Uint8Array(1);\n u8a[0] = (val >> 0) & 0xff;\n return u8a;\n }\n}\nexport class Temperature extends SensorValue {\n get type() {\n return this._type;\n }\n constructor(propertyId, type) {\n super(propertyId);\n this._type = type || 'Celsius';\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n const u8a = value;\n let tval;\n if (u8a.byteLength == 1) {\n tval = unsignedToSigned(u8a[0], 8);\n if (tval == 0x8000)\n this._value = null;\n else\n this._value = tval / 2.0;\n this._type = 'Celsius';\n }\n else if (u8a.byteLength == 2) {\n tval = unsignedToSigned((u8a[1] << 8) | u8a[0], 16);\n if (tval == 0x8000)\n this._value = null;\n else\n this._value = tval / 100.0;\n this._type = 'Fahrenheit';\n }\n }\n toBytes() {\n const u8a = new Uint8Array(this._type == 'Celsius' ? 1 : 2);\n if (this._type == 'Celsius') {\n const val = parseInt(((this._value || 0) * 2).toString());\n u8a[0] = val & 0xff;\n }\n else {\n const val = parseInt(((this._value || 0) * 100).toString());\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n }\n return u8a;\n }\n}\nexport class Count extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n if (value.byteLength == 2) {\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n }\n else if (value.byteLength == 3) {\n this._value |= value[0] << 16;\n this._value |= value[1] << 8;\n this._value |= value[2] << 0;\n }\n }\n toBytes() {\n const m16 = 0xffff;\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(val > m16 ? 3 : 2);\n if (val > m16) {\n u8a[0] = (val >> 16) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 0) & 0xff;\n }\n else {\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n }\n return u8a;\n }\n}\nexport class Humidity extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value /= 100.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 100).toString());\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class PerceivedLightness extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class TimeSecond extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n const len = value.byteLength;\n this._value = 0;\n if (len == 1) {\n this._value |= value[0];\n }\n else if (len == 2) {\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n }\n else if (len == 4) {\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n }\n }\n toBytes() {\n const val = this._value || 0;\n let len = 1;\n if (val > 0xffff)\n len = 2;\n if (val > 0xffffffff)\n len = 4;\n const u8a = new Uint8Array(len);\n if (len == 1) {\n u8a[0] = (val >> 0) & 0xff;\n }\n else if (len == 2) {\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n }\n else if (len == 4) {\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n }\n return u8a;\n }\n}\nexport class Illuminance extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value /= 100.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 100).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class TimeHour24 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class TimeMillisecond24 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value /= 1000.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 1000).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class DateUtc extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (value instanceof Date) {\n this._value = value;\n return;\n }\n let val = 0;\n val |= value[0] << 0;\n val |= value[1] << 8;\n val |= value[2] << 16;\n val *= 86400000;\n this._value = new Date(val);\n }\n toBytes() {\n const time = this._value.getTime();\n const val = parseInt((time / 86400000).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class Pressure extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value /= 10.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 10).toString());\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Coefficient extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n if (this.isLittleEndian()) {\n const f32a = new Float32Array(value);\n this._value = f32a[0];\n }\n else {\n const f32a = new Float32Array(value.reverse());\n this._value = f32a[0];\n }\n }\n toBytes() {\n const val = this._value;\n const ua = new ArrayBuffer(4);\n const u8a = new Uint8Array(ua);\n const f32a = new Float32Array(ua);\n f32a[0] = val;\n if (this.isLittleEndian()) {\n return u8a;\n }\n else {\n return u8a.reverse();\n }\n }\n}\nexport class FixedString extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'string') {\n this._value = value;\n return;\n }\n this._value = String.fromCharCode(...value);\n }\n toBytes() {\n const vals = (this._value || '').split('');\n const raws = Uint8Array.from(vals.map(c => c.charCodeAt(0)));\n let flen = raws.byteLength;\n let len = 0;\n if (flen > 0 && flen <= 8) {\n len = 8;\n }\n else if (flen > 8 && flen <= 16) {\n len = 16;\n }\n else if (flen > 16 && flen <= 24) {\n len = 24;\n }\n else if (flen > 24 && flen <= 36) {\n len = 36;\n }\n else if (flen > 36 && flen <= 64) {\n len = 64;\n }\n const u8a = new Uint8Array(len);\n raws.forEach((v, i) => {\n u8a[i] = v;\n });\n return u8a;\n }\n}\nexport class Energy32 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value /= 1000.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 1000).toString());\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Power extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value /= 10.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 10).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class ElectricCurrent extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value /= 100.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 100).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class Unknown extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n this._value = new Uint8Array(0);\n }\n setValue(value) {\n this._value = value;\n }\n toBytes() {\n return this._value;\n }\n}\nexport class Uint8 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(1);\n u8a[0] = (val >> 0) & 0xff;\n return u8a;\n }\n}\nexport class Uint16 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class Uint32 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Int8 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value = unsignedToSigned(this._value, 8);\n }\n toBytes() {\n const int = parseInt((this._value || 0).toString());\n const val = signedToUnsigned(int, 8);\n const u8a = new Uint8Array(1);\n u8a[0] = (val >> 0) & 0xff;\n return u8a;\n }\n}\nexport class Int16 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value = unsignedToSigned(this._value, 16);\n }\n toBytes() {\n const int = parseInt((this._value || 0).toString());\n const val = signedToUnsigned(int, 16);\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class Int32 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value = unsignedToSigned(this._value, 32);\n }\n toBytes() {\n const int = parseInt((this._value || 0).toString());\n const val = signedToUnsigned(int, 32);\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Uint16Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = parseInt(int.toString());\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class Uint24Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = parseInt(int.toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class Uint32Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = parseInt(int.toString());\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Int16Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value = unsignedToSigned(this._value, 16);\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = signedToUnsigned(parseInt(int.toString()), 16);\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class Int24Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value = unsignedToSigned(this._value, 24);\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = signedToUnsigned(parseInt(int.toString()), 24);\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class Int32Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value = unsignedToSigned(this._value, 32);\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = signedToUnsigned(parseInt(int.toString()), 32);\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\n//# sourceMappingURL=sensor.js.map","import { registerPlugin } from '@capacitor/core';\nconst NrfMesh = registerPlugin('NrfMesh', {\n web: () => import('./web').then((m) => new m.NrfMeshWeb()),\n});\nexport * from './definitions';\nexport * from './sensor';\nexport { NrfMesh };\n//# sourceMappingURL=index.js.map","import { WebPlugin } from '@capacitor/core';\nexport class NrfMeshWeb extends WebPlugin {\n async checkPermissions() { return {}; }\n async requestPermissions() { return {}; }\n async isBluetoothEnabled() { return {}; }\n async isConnected() { return {}; }\n async connect() { }\n async disconnect() { }\n async export() { }\n async import() { }\n async netkeys() { return {}; }\n async netkey() { return {}; }\n async appkeys() { return {}; }\n async appkey() { return {}; }\n async groups() { return {}; }\n async group() { return {}; }\n async nodes() { return {}; }\n async node() { return {}; }\n async model() { return {}; }\n async init() { }\n async devices() { return {}; }\n async identify() { return {}; }\n ;\n async provision() { return {}; }\n async composition() { return {}; }\n}\n//# sourceMappingURL=web.js.map"],"names":["registerPlugin","WebPlugin"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plugin.cjs.js","sources":["esm/sensor.js","esm/index.js","esm/web.js"],"sourcesContent":["export function unsignedToSigned(unsigned, size) {\n if ((unsigned & (1 << (size - 1))) != 0) {\n unsigned = -1 * ((1 << (size - 1)) - (unsigned & ((1 << (size - 1)) - 1)));\n }\n return unsigned;\n}\nexport function signedToUnsigned(signed, size) {\n if (signed < 0) {\n signed = (1 << size) + signed;\n signed &= (1 << size) - 1;\n }\n return signed;\n}\nexport class SensorValue {\n static register(propertyId, cls, ...args) {\n SensorValue.types.set(propertyId, { args, CLS: cls });\n }\n static from(src) {\n if (typeof src === 'number') {\n const TP = SensorValue.types.get(src);\n if (TP)\n return new TP.CLS(src, ...TP.args);\n return new Unknown(src);\n }\n const ins = SensorValue.from(src.propertyId);\n ins.setValue(Uint8Array.from(src.bytes));\n return ins;\n }\n get propertyId() {\n return this._propertyId;\n }\n get value() {\n return this._value;\n }\n constructor(propertyId) {\n this._propertyId = propertyId;\n this._value = null;\n }\n isLittleEndian() {\n const ua = new ArrayBuffer(4);\n const u8a = new Uint8Array(ua);\n const u32a = new Uint32Array(ua);\n u32a[0] = 0x01020304;\n return u8a[0] == 0x01;\n }\n toRawValue() {\n const values = [];\n this.toBytes().forEach(v => values.push(v));\n return {\n propertyId: this.propertyId,\n bytes: values\n };\n }\n}\nSensorValue.types = new Map();\nexport class Bool extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'boolean') {\n this._value = value;\n return;\n }\n if (value.byteLength == 0)\n this._value = false;\n else\n this._value = value[0] == 0x01;\n }\n toBytes() {\n const u8a = new Uint8Array(1);\n u8a[0] = this._value ? 0x01 : 0x00;\n return u8a;\n }\n}\nexport class Percentage8 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = unsignedToSigned(value[0], 8) / 2.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 2.0).toString());\n const u8a = new Uint8Array(1);\n u8a[0] = (val >> 0) & 0xff;\n return u8a;\n }\n}\nexport class Temperature extends SensorValue {\n get type() {\n return this._type;\n }\n constructor(propertyId, type) {\n super(propertyId);\n this._type = type || 'Celsius';\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n const u8a = value;\n let tval;\n if (u8a.byteLength == 1) {\n tval = unsignedToSigned(u8a[0], 8);\n if (tval == 0x8000)\n this._value = null;\n else\n this._value = tval / 2.0;\n this._type = 'Celsius';\n }\n else if (u8a.byteLength == 2) {\n tval = unsignedToSigned((u8a[1] << 8) | u8a[0], 16);\n if (tval == 0x8000)\n this._value = null;\n else\n this._value = tval / 100.0;\n this._type = 'Fahrenheit';\n }\n }\n toBytes() {\n const u8a = new Uint8Array(this._type == 'Celsius' ? 1 : 2);\n if (this._type == 'Celsius') {\n const val = parseInt(((this._value || 0) * 2).toString());\n u8a[0] = val & 0xff;\n }\n else {\n const val = parseInt(((this._value || 0) * 100).toString());\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n }\n return u8a;\n }\n}\nexport class Count extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n if (value.byteLength == 2) {\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n }\n else if (value.byteLength == 3) {\n this._value |= value[0] << 16;\n this._value |= value[1] << 8;\n this._value |= value[2] << 0;\n }\n }\n toBytes() {\n const m16 = 0xffff;\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(val > m16 ? 3 : 2);\n if (val > m16) {\n u8a[0] = (val >> 16) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 0) & 0xff;\n }\n else {\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n }\n return u8a;\n }\n}\nexport class Humidity extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value /= 100.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 100).toString());\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class PerceivedLightness extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class TimeSecond extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n const len = value.byteLength;\n this._value = 0;\n if (len == 1) {\n this._value |= value[0];\n }\n else if (len == 2) {\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n }\n else if (len == 4) {\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n }\n }\n toBytes() {\n const val = this._value || 0;\n let len = 1;\n if (val > 0xffff)\n len = 2;\n if (val > 0xffffffff)\n len = 4;\n const u8a = new Uint8Array(len);\n if (len == 1) {\n u8a[0] = (val >> 0) & 0xff;\n }\n else if (len == 2) {\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n }\n else if (len == 4) {\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n }\n return u8a;\n }\n}\nexport class Illuminance extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value /= 100.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 100).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class TimeHour24 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class TimeMillisecond24 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value /= 1000.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 1000).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class DateUtc extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (value instanceof Date) {\n this._value = value;\n return;\n }\n let val = 0;\n val |= value[0] << 0;\n val |= value[1] << 8;\n val |= value[2] << 16;\n val *= 86400000;\n this._value = new Date(val);\n }\n toBytes() {\n const time = this._value.getTime();\n const val = parseInt((time / 86400000).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class Pressure extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value /= 10.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 10).toString());\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Coefficient extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n if (this.isLittleEndian()) {\n const f32a = new Float32Array(value);\n this._value = f32a[0];\n }\n else {\n const f32a = new Float32Array(value.reverse());\n this._value = f32a[0];\n }\n }\n toBytes() {\n const val = this._value;\n const ua = new ArrayBuffer(4);\n const u8a = new Uint8Array(ua);\n const f32a = new Float32Array(ua);\n f32a[0] = val;\n if (this.isLittleEndian()) {\n return u8a;\n }\n else {\n return u8a.reverse();\n }\n }\n}\nexport class FixedString extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'string') {\n this._value = value;\n return;\n }\n this._value = String.fromCharCode(...value);\n }\n toBytes() {\n const vals = (this._value || '').split('');\n const raws = Uint8Array.from(vals.map(c => c.charCodeAt(0)));\n let flen = raws.byteLength;\n let len = 0;\n if (flen > 0 && flen <= 8) {\n len = 8;\n }\n else if (flen > 8 && flen <= 16) {\n len = 16;\n }\n else if (flen > 16 && flen <= 24) {\n len = 24;\n }\n else if (flen > 24 && flen <= 36) {\n len = 36;\n }\n else if (flen > 36 && flen <= 64) {\n len = 64;\n }\n const u8a = new Uint8Array(len);\n raws.forEach((v, i) => {\n u8a[i] = v;\n });\n return u8a;\n }\n}\nexport class Energy32 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value /= 1000.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 1000).toString());\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Power extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value /= 10.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 10).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class ElectricCurrent extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value /= 100.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 100).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class Unknown extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n this._value = new Uint8Array(0);\n }\n setValue(value) {\n this._value = value;\n }\n toBytes() {\n return this._value;\n }\n}\nexport class Uint8 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(1);\n u8a[0] = (val >> 0) & 0xff;\n return u8a;\n }\n}\nexport class Uint16 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class Uint32 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Int8 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value = unsignedToSigned(this._value, 8);\n }\n toBytes() {\n const int = parseInt((this._value || 0).toString());\n const val = signedToUnsigned(int, 8);\n const u8a = new Uint8Array(1);\n u8a[0] = (val >> 0) & 0xff;\n return u8a;\n }\n}\nexport class Int16 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value = unsignedToSigned(this._value, 16);\n }\n toBytes() {\n const int = parseInt((this._value || 0).toString());\n const val = signedToUnsigned(int, 16);\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class Int32 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value = unsignedToSigned(this._value, 32);\n }\n toBytes() {\n const int = parseInt((this._value || 0).toString());\n const val = signedToUnsigned(int, 32);\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Uint16Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = parseInt(int.toString());\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class Uint24Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = parseInt(int.toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class Uint32Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = parseInt(int.toString());\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Int16Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value = unsignedToSigned(this._value, 16);\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = signedToUnsigned(parseInt(int.toString()), 16);\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class Int24Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value = unsignedToSigned(this._value, 24);\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = signedToUnsigned(parseInt(int.toString()), 24);\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class Int32Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value = unsignedToSigned(this._value, 32);\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = signedToUnsigned(parseInt(int.toString()), 32);\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\n//# sourceMappingURL=sensor.js.map","import { registerPlugin } from '@capacitor/core';\nconst NrfMesh = registerPlugin('NrfMesh', {\n web: () => import('./web').then((m) => new m.NrfMeshWeb()),\n});\nexport * from './definitions';\nexport * from './sensor';\nexport { NrfMesh };\n//# sourceMappingURL=index.js.map","import { WebPlugin } from '@capacitor/core';\nexport class NrfMeshWeb extends WebPlugin {\n async checkPermissions() { return {}; }\n async requestPermissions() { return {}; }\n async isBluetoothEnabled() { return {}; }\n async isConnected() { return {}; }\n async connect() { }\n async disconnect() { }\n async export() { }\n async import() { }\n async netkeys() { return {}; }\n async netkey() { return {}; }\n async appkeys() { return {}; }\n async appkey() { return {}; }\n async groups() { return {}; }\n async group() { return {}; }\n async nodes() { return {}; }\n async node() { return {}; }\n async model() { return {}; }\n async init() { }\n async kill() { }\n async devices() { return {}; }\n async identify() { return {}; }\n ;\n async provision() { return {}; }\n async composition() { return {}; }\n}\n//# sourceMappingURL=web.js.map"],"names":["registerPlugin","WebPlugin"],"mappings":"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"}
|
package/dist/plugin.js
CHANGED
package/dist/plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sources":["esm/sensor.js","esm/index.js","esm/web.js"],"sourcesContent":["export function unsignedToSigned(unsigned, size) {\n if ((unsigned & (1 << (size - 1))) != 0) {\n unsigned = -1 * ((1 << (size - 1)) - (unsigned & ((1 << (size - 1)) - 1)));\n }\n return unsigned;\n}\nexport function signedToUnsigned(signed, size) {\n if (signed < 0) {\n signed = (1 << size) + signed;\n signed &= (1 << size) - 1;\n }\n return signed;\n}\nexport class SensorValue {\n static register(propertyId, cls, ...args) {\n SensorValue.types.set(propertyId, { args, CLS: cls });\n }\n static from(src) {\n if (typeof src === 'number') {\n const TP = SensorValue.types.get(src);\n if (TP)\n return new TP.CLS(src, ...TP.args);\n return new Unknown(src);\n }\n const ins = SensorValue.from(src.propertyId);\n ins.setValue(Uint8Array.from(src.bytes));\n return ins;\n }\n get propertyId() {\n return this._propertyId;\n }\n get value() {\n return this._value;\n }\n constructor(propertyId) {\n this._propertyId = propertyId;\n this._value = null;\n }\n isLittleEndian() {\n const ua = new ArrayBuffer(4);\n const u8a = new Uint8Array(ua);\n const u32a = new Uint32Array(ua);\n u32a[0] = 0x01020304;\n return u8a[0] == 0x01;\n }\n toRawValue() {\n const values = [];\n this.toBytes().forEach(v => values.push(v));\n return {\n propertyId: this.propertyId,\n bytes: values\n };\n }\n}\nSensorValue.types = new Map();\nexport class Bool extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'boolean') {\n this._value = value;\n return;\n }\n if (value.byteLength == 0)\n this._value = false;\n else\n this._value = value[0] == 0x01;\n }\n toBytes() {\n const u8a = new Uint8Array(1);\n u8a[0] = this._value ? 0x01 : 0x00;\n return u8a;\n }\n}\nexport class Percentage8 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = unsignedToSigned(value[0], 8) / 2.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 2.0).toString());\n const u8a = new Uint8Array(1);\n u8a[0] = (val >> 0) & 0xff;\n return u8a;\n }\n}\nexport class Temperature extends SensorValue {\n get type() {\n return this._type;\n }\n constructor(propertyId, type) {\n super(propertyId);\n this._type = type || 'Celsius';\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n const u8a = value;\n let tval;\n if (u8a.byteLength == 1) {\n tval = unsignedToSigned(u8a[0], 8);\n if (tval == 0x8000)\n this._value = null;\n else\n this._value = tval / 2.0;\n this._type = 'Celsius';\n }\n else if (u8a.byteLength == 2) {\n tval = unsignedToSigned((u8a[1] << 8) | u8a[0], 16);\n if (tval == 0x8000)\n this._value = null;\n else\n this._value = tval / 100.0;\n this._type = 'Fahrenheit';\n }\n }\n toBytes() {\n const u8a = new Uint8Array(this._type == 'Celsius' ? 1 : 2);\n if (this._type == 'Celsius') {\n const val = parseInt(((this._value || 0) * 2).toString());\n u8a[0] = val & 0xff;\n }\n else {\n const val = parseInt(((this._value || 0) * 100).toString());\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n }\n return u8a;\n }\n}\nexport class Count extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n if (value.byteLength == 2) {\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n }\n else if (value.byteLength == 3) {\n this._value |= value[0] << 16;\n this._value |= value[1] << 8;\n this._value |= value[2] << 0;\n }\n }\n toBytes() {\n const m16 = 0xffff;\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(val > m16 ? 3 : 2);\n if (val > m16) {\n u8a[0] = (val >> 16) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 0) & 0xff;\n }\n else {\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n }\n return u8a;\n }\n}\nexport class Humidity extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value /= 100.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 100).toString());\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class PerceivedLightness extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class TimeSecond extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n const len = value.byteLength;\n this._value = 0;\n if (len == 1) {\n this._value |= value[0];\n }\n else if (len == 2) {\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n }\n else if (len == 4) {\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n }\n }\n toBytes() {\n const val = this._value || 0;\n let len = 1;\n if (val > 0xffff)\n len = 2;\n if (val > 0xffffffff)\n len = 4;\n const u8a = new Uint8Array(len);\n if (len == 1) {\n u8a[0] = (val >> 0) & 0xff;\n }\n else if (len == 2) {\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n }\n else if (len == 4) {\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n }\n return u8a;\n }\n}\nexport class Illuminance extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value /= 100.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 100).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class TimeHour24 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class TimeMillisecond24 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value /= 1000.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 1000).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class DateUtc extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (value instanceof Date) {\n this._value = value;\n return;\n }\n let val = 0;\n val |= value[0] << 0;\n val |= value[1] << 8;\n val |= value[2] << 16;\n val *= 86400000;\n this._value = new Date(val);\n }\n toBytes() {\n const time = this._value.getTime();\n const val = parseInt((time / 86400000).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class Pressure extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value /= 10.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 10).toString());\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Coefficient extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n if (this.isLittleEndian()) {\n const f32a = new Float32Array(value);\n this._value = f32a[0];\n }\n else {\n const f32a = new Float32Array(value.reverse());\n this._value = f32a[0];\n }\n }\n toBytes() {\n const val = this._value;\n const ua = new ArrayBuffer(4);\n const u8a = new Uint8Array(ua);\n const f32a = new Float32Array(ua);\n f32a[0] = val;\n if (this.isLittleEndian()) {\n return u8a;\n }\n else {\n return u8a.reverse();\n }\n }\n}\nexport class FixedString extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'string') {\n this._value = value;\n return;\n }\n this._value = String.fromCharCode(...value);\n }\n toBytes() {\n const vals = (this._value || '').split('');\n const raws = Uint8Array.from(vals.map(c => c.charCodeAt(0)));\n let flen = raws.byteLength;\n let len = 0;\n if (flen > 0 && flen <= 8) {\n len = 8;\n }\n else if (flen > 8 && flen <= 16) {\n len = 16;\n }\n else if (flen > 16 && flen <= 24) {\n len = 24;\n }\n else if (flen > 24 && flen <= 36) {\n len = 36;\n }\n else if (flen > 36 && flen <= 64) {\n len = 64;\n }\n const u8a = new Uint8Array(len);\n raws.forEach((v, i) => {\n u8a[i] = v;\n });\n return u8a;\n }\n}\nexport class Energy32 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value /= 1000.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 1000).toString());\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Power extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value /= 10.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 10).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class ElectricCurrent extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value /= 100.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 100).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class Unknown extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n this._value = new Uint8Array(0);\n }\n setValue(value) {\n this._value = value;\n }\n toBytes() {\n return this._value;\n }\n}\nexport class Uint8 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(1);\n u8a[0] = (val >> 0) & 0xff;\n return u8a;\n }\n}\nexport class Uint16 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class Uint32 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Int8 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value = unsignedToSigned(this._value, 8);\n }\n toBytes() {\n const int = parseInt((this._value || 0).toString());\n const val = signedToUnsigned(int, 8);\n const u8a = new Uint8Array(1);\n u8a[0] = (val >> 0) & 0xff;\n return u8a;\n }\n}\nexport class Int16 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value = unsignedToSigned(this._value, 16);\n }\n toBytes() {\n const int = parseInt((this._value || 0).toString());\n const val = signedToUnsigned(int, 16);\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class Int32 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value = unsignedToSigned(this._value, 32);\n }\n toBytes() {\n const int = parseInt((this._value || 0).toString());\n const val = signedToUnsigned(int, 32);\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Uint16Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = parseInt(int.toString());\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class Uint24Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = parseInt(int.toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class Uint32Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = parseInt(int.toString());\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Int16Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value = unsignedToSigned(this._value, 16);\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = signedToUnsigned(parseInt(int.toString()), 16);\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class Int24Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value = unsignedToSigned(this._value, 24);\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = signedToUnsigned(parseInt(int.toString()), 24);\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class Int32Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value = unsignedToSigned(this._value, 32);\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = signedToUnsigned(parseInt(int.toString()), 32);\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\n//# sourceMappingURL=sensor.js.map","import { registerPlugin } from '@capacitor/core';\nconst NrfMesh = registerPlugin('NrfMesh', {\n web: () => import('./web').then((m) => new m.NrfMeshWeb()),\n});\nexport * from './definitions';\nexport * from './sensor';\nexport { NrfMesh };\n//# sourceMappingURL=index.js.map","import { WebPlugin } from '@capacitor/core';\nexport class NrfMeshWeb extends WebPlugin {\n async checkPermissions() { return {}; }\n async requestPermissions() { return {}; }\n async isBluetoothEnabled() { return {}; }\n async isConnected() { return {}; }\n async connect() { }\n async disconnect() { }\n async export() { }\n async import() { }\n async netkeys() { return {}; }\n async netkey() { return {}; }\n async appkeys() { return {}; }\n async appkey() { return {}; }\n async groups() { return {}; }\n async group() { return {}; }\n async nodes() { return {}; }\n async node() { return {}; }\n async model() { return {}; }\n async init() { }\n async devices() { return {}; }\n async identify() { return {}; }\n ;\n async provision() { return {}; }\n async composition() { return {}; }\n}\n//# sourceMappingURL=web.js.map"],"names":["registerPlugin","WebPlugin"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plugin.js","sources":["esm/sensor.js","esm/index.js","esm/web.js"],"sourcesContent":["export function unsignedToSigned(unsigned, size) {\n if ((unsigned & (1 << (size - 1))) != 0) {\n unsigned = -1 * ((1 << (size - 1)) - (unsigned & ((1 << (size - 1)) - 1)));\n }\n return unsigned;\n}\nexport function signedToUnsigned(signed, size) {\n if (signed < 0) {\n signed = (1 << size) + signed;\n signed &= (1 << size) - 1;\n }\n return signed;\n}\nexport class SensorValue {\n static register(propertyId, cls, ...args) {\n SensorValue.types.set(propertyId, { args, CLS: cls });\n }\n static from(src) {\n if (typeof src === 'number') {\n const TP = SensorValue.types.get(src);\n if (TP)\n return new TP.CLS(src, ...TP.args);\n return new Unknown(src);\n }\n const ins = SensorValue.from(src.propertyId);\n ins.setValue(Uint8Array.from(src.bytes));\n return ins;\n }\n get propertyId() {\n return this._propertyId;\n }\n get value() {\n return this._value;\n }\n constructor(propertyId) {\n this._propertyId = propertyId;\n this._value = null;\n }\n isLittleEndian() {\n const ua = new ArrayBuffer(4);\n const u8a = new Uint8Array(ua);\n const u32a = new Uint32Array(ua);\n u32a[0] = 0x01020304;\n return u8a[0] == 0x01;\n }\n toRawValue() {\n const values = [];\n this.toBytes().forEach(v => values.push(v));\n return {\n propertyId: this.propertyId,\n bytes: values\n };\n }\n}\nSensorValue.types = new Map();\nexport class Bool extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'boolean') {\n this._value = value;\n return;\n }\n if (value.byteLength == 0)\n this._value = false;\n else\n this._value = value[0] == 0x01;\n }\n toBytes() {\n const u8a = new Uint8Array(1);\n u8a[0] = this._value ? 0x01 : 0x00;\n return u8a;\n }\n}\nexport class Percentage8 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = unsignedToSigned(value[0], 8) / 2.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 2.0).toString());\n const u8a = new Uint8Array(1);\n u8a[0] = (val >> 0) & 0xff;\n return u8a;\n }\n}\nexport class Temperature extends SensorValue {\n get type() {\n return this._type;\n }\n constructor(propertyId, type) {\n super(propertyId);\n this._type = type || 'Celsius';\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n const u8a = value;\n let tval;\n if (u8a.byteLength == 1) {\n tval = unsignedToSigned(u8a[0], 8);\n if (tval == 0x8000)\n this._value = null;\n else\n this._value = tval / 2.0;\n this._type = 'Celsius';\n }\n else if (u8a.byteLength == 2) {\n tval = unsignedToSigned((u8a[1] << 8) | u8a[0], 16);\n if (tval == 0x8000)\n this._value = null;\n else\n this._value = tval / 100.0;\n this._type = 'Fahrenheit';\n }\n }\n toBytes() {\n const u8a = new Uint8Array(this._type == 'Celsius' ? 1 : 2);\n if (this._type == 'Celsius') {\n const val = parseInt(((this._value || 0) * 2).toString());\n u8a[0] = val & 0xff;\n }\n else {\n const val = parseInt(((this._value || 0) * 100).toString());\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n }\n return u8a;\n }\n}\nexport class Count extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n if (value.byteLength == 2) {\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n }\n else if (value.byteLength == 3) {\n this._value |= value[0] << 16;\n this._value |= value[1] << 8;\n this._value |= value[2] << 0;\n }\n }\n toBytes() {\n const m16 = 0xffff;\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(val > m16 ? 3 : 2);\n if (val > m16) {\n u8a[0] = (val >> 16) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 0) & 0xff;\n }\n else {\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n }\n return u8a;\n }\n}\nexport class Humidity extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value /= 100.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 100).toString());\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class PerceivedLightness extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class TimeSecond extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n const len = value.byteLength;\n this._value = 0;\n if (len == 1) {\n this._value |= value[0];\n }\n else if (len == 2) {\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n }\n else if (len == 4) {\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n }\n }\n toBytes() {\n const val = this._value || 0;\n let len = 1;\n if (val > 0xffff)\n len = 2;\n if (val > 0xffffffff)\n len = 4;\n const u8a = new Uint8Array(len);\n if (len == 1) {\n u8a[0] = (val >> 0) & 0xff;\n }\n else if (len == 2) {\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n }\n else if (len == 4) {\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n }\n return u8a;\n }\n}\nexport class Illuminance extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value /= 100.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 100).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class TimeHour24 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class TimeMillisecond24 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value /= 1000.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 1000).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class DateUtc extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (value instanceof Date) {\n this._value = value;\n return;\n }\n let val = 0;\n val |= value[0] << 0;\n val |= value[1] << 8;\n val |= value[2] << 16;\n val *= 86400000;\n this._value = new Date(val);\n }\n toBytes() {\n const time = this._value.getTime();\n const val = parseInt((time / 86400000).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class Pressure extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value /= 10.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 10).toString());\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Coefficient extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n if (this.isLittleEndian()) {\n const f32a = new Float32Array(value);\n this._value = f32a[0];\n }\n else {\n const f32a = new Float32Array(value.reverse());\n this._value = f32a[0];\n }\n }\n toBytes() {\n const val = this._value;\n const ua = new ArrayBuffer(4);\n const u8a = new Uint8Array(ua);\n const f32a = new Float32Array(ua);\n f32a[0] = val;\n if (this.isLittleEndian()) {\n return u8a;\n }\n else {\n return u8a.reverse();\n }\n }\n}\nexport class FixedString extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'string') {\n this._value = value;\n return;\n }\n this._value = String.fromCharCode(...value);\n }\n toBytes() {\n const vals = (this._value || '').split('');\n const raws = Uint8Array.from(vals.map(c => c.charCodeAt(0)));\n let flen = raws.byteLength;\n let len = 0;\n if (flen > 0 && flen <= 8) {\n len = 8;\n }\n else if (flen > 8 && flen <= 16) {\n len = 16;\n }\n else if (flen > 16 && flen <= 24) {\n len = 24;\n }\n else if (flen > 24 && flen <= 36) {\n len = 36;\n }\n else if (flen > 36 && flen <= 64) {\n len = 64;\n }\n const u8a = new Uint8Array(len);\n raws.forEach((v, i) => {\n u8a[i] = v;\n });\n return u8a;\n }\n}\nexport class Energy32 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value /= 1000.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 1000).toString());\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Power extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value /= 10.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 10).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class ElectricCurrent extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value /= 100.0;\n }\n toBytes() {\n const val = parseInt(((this._value || 0) * 100).toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class Unknown extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n this._value = new Uint8Array(0);\n }\n setValue(value) {\n this._value = value;\n }\n toBytes() {\n return this._value;\n }\n}\nexport class Uint8 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(1);\n u8a[0] = (val >> 0) & 0xff;\n return u8a;\n }\n}\nexport class Uint16 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class Uint32 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n }\n toBytes() {\n const val = parseInt((this._value || 0).toString());\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Int8 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value = unsignedToSigned(this._value, 8);\n }\n toBytes() {\n const int = parseInt((this._value || 0).toString());\n const val = signedToUnsigned(int, 8);\n const u8a = new Uint8Array(1);\n u8a[0] = (val >> 0) & 0xff;\n return u8a;\n }\n}\nexport class Int16 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value = unsignedToSigned(this._value, 16);\n }\n toBytes() {\n const int = parseInt((this._value || 0).toString());\n const val = signedToUnsigned(int, 16);\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class Int32 extends SensorValue {\n constructor(propertyId) {\n super(propertyId);\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value = unsignedToSigned(this._value, 32);\n }\n toBytes() {\n const int = parseInt((this._value || 0).toString());\n const val = signedToUnsigned(int, 32);\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Uint16Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = parseInt(int.toString());\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class Uint24Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = parseInt(int.toString());\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class Uint32Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = parseInt(int.toString());\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\nexport class Int16Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value = unsignedToSigned(this._value, 16);\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = signedToUnsigned(parseInt(int.toString()), 16);\n const u8a = new Uint8Array(2);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n return u8a;\n }\n}\nexport class Int24Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value = unsignedToSigned(this._value, 24);\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = signedToUnsigned(parseInt(int.toString()), 24);\n const u8a = new Uint8Array(3);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n return u8a;\n }\n}\nexport class Int32Value extends SensorValue {\n get exponent() {\n return this._exponent;\n }\n constructor(propertyId, exponent) {\n super(propertyId);\n this._exponent = exponent || 0;\n }\n setValue(value) {\n if (typeof value == 'number') {\n this._value = value;\n return;\n }\n this._value = 0;\n this._value |= value[0] << 0;\n this._value |= value[1] << 8;\n this._value |= value[2] << 16;\n this._value |= value[3] << 24;\n this._value = unsignedToSigned(this._value, 32);\n this._value /= Math.pow(10, this._exponent);\n }\n toBytes() {\n const int = (this._value || 0) * Math.pow(10, this._exponent);\n const val = signedToUnsigned(parseInt(int.toString()), 32);\n const u8a = new Uint8Array(4);\n u8a[0] = (val >> 0) & 0xff;\n u8a[1] = (val >> 8) & 0xff;\n u8a[2] = (val >> 16) & 0xff;\n u8a[3] = (val >> 24) & 0xff;\n return u8a;\n }\n}\n//# sourceMappingURL=sensor.js.map","import { registerPlugin } from '@capacitor/core';\nconst NrfMesh = registerPlugin('NrfMesh', {\n web: () => import('./web').then((m) => new m.NrfMeshWeb()),\n});\nexport * from './definitions';\nexport * from './sensor';\nexport { NrfMesh };\n//# sourceMappingURL=index.js.map","import { WebPlugin } from '@capacitor/core';\nexport class NrfMeshWeb extends WebPlugin {\n async checkPermissions() { return {}; }\n async requestPermissions() { return {}; }\n async isBluetoothEnabled() { return {}; }\n async isConnected() { return {}; }\n async connect() { }\n async disconnect() { }\n async export() { }\n async import() { }\n async netkeys() { return {}; }\n async netkey() { return {}; }\n async appkeys() { return {}; }\n async appkey() { return {}; }\n async groups() { return {}; }\n async group() { return {}; }\n async nodes() { return {}; }\n async node() { return {}; }\n async model() { return {}; }\n async init() { }\n async kill() { }\n async devices() { return {}; }\n async identify() { return {}; }\n ;\n async provision() { return {}; }\n async composition() { return {}; }\n}\n//# sourceMappingURL=web.js.map"],"names":["registerPlugin","WebPlugin"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@autorunify/capacitor-nrfmesh",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.3",
|
|
4
4
|
"description": "nrf mesh plugin",
|
|
5
5
|
"main": "dist/plugin.cjs.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -21,10 +21,10 @@
|
|
|
21
21
|
"license": "MIT",
|
|
22
22
|
"repository": {
|
|
23
23
|
"type": "git",
|
|
24
|
-
"url": "git+https://github.com/autorunify/
|
|
24
|
+
"url": "git+https://github.com/autorunify/auto-nrfmesh.git"
|
|
25
25
|
},
|
|
26
26
|
"bugs": {
|
|
27
|
-
"url": "https://github.com/autorunify/
|
|
27
|
+
"url": "https://github.com/autorunify/auto-nrfmesh/issues"
|
|
28
28
|
},
|
|
29
29
|
"keywords": [
|
|
30
30
|
"capacitor",
|