@autorunify/capacitor-nrfmesh 0.0.5 → 0.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1366,12 +1366,12 @@ Creates a new function.
1366
1366
 
1367
1367
  #### ModelOptions
1368
1368
 
1369
- | Prop | Type |
1370
- | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
1371
- | **`elementAddress`** | <code>number</code> |
1372
- | **`appkeyIndex`** | <code>number</code> |
1373
- | **`onoff`** | <code>{ set?: <a href="#onoffmodel">OnOffModel</a>; }</code> |
1374
- | **`sensor`** | <code>{ propertyId: number; get?: <a href="#omit">Omit</a>&lt;<a href="#sensormodel">SensorModel</a>, 'values'&gt;; property?: <a href="#partialany">PartialAny</a>&lt;<a href="#sensorrawvalue">SensorRawValue</a>, 'bytes'&gt;; properties?: <a href="#sensorpropertiesmodel">SensorPropertiesModel</a>; }</code> |
1369
+ | Prop | Type |
1370
+ | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
1371
+ | **`elementAddress`** | <code>number</code> |
1372
+ | **`appkeyIndex`** | <code>number</code> |
1373
+ | **`onoff`** | <code>{ set?: <a href="#onoffmodel">OnOffModel</a>; }</code> |
1374
+ | **`sensor`** | <code>{ propertyId?: number; get?: <a href="#omit">Omit</a>&lt;<a href="#sensormodel">SensorModel</a>, 'values'&gt;; property?: <a href="#partialany">PartialAny</a>&lt;<a href="#sensorrawvalue">SensorRawValue</a>, 'bytes'&gt;; properties?: <a href="#sensorpropertiesmodel">SensorPropertiesModel</a>; }</code> |
1375
1375
 
1376
1376
 
1377
1377
  #### ScanResults
@@ -303,6 +303,7 @@ class BleManager {
303
303
 
304
304
  while (timeCount > 0) {
305
305
  delay(timeMillis)
306
+ devicesByFilter.clear()
306
307
  synchronized(devices) {
307
308
  devices.forEach { device ->
308
309
  if (filter == "provisioned" && device.provisioned) {
@@ -318,7 +319,6 @@ class BleManager {
318
319
  if (max > 0 && devicesByFilter.size >= max) {
319
320
  break
320
321
  } else {
321
- devicesByFilter = mutableListOf()
322
322
  timeCount--;
323
323
  }
324
324
  }
@@ -328,8 +328,10 @@ class BleManager {
328
328
 
329
329
  fun disconnect(): Boolean {
330
330
  try {
331
- if (isConnected.value!!) {
331
+ if (isConnected.value == true) {
332
332
  mesh.disconnect()
333
+ } else {
334
+ async.emit(JSObject(), MESH_STATE_DISCONNECTED)
333
335
  }
334
336
 
335
337
  return isConnected.value!!
@@ -24,7 +24,7 @@ class MeshDevice {
24
24
  this.rssi = scanResult.rssi
25
25
 
26
26
  this.scanRecord = scanResult.scanRecord
27
- this.name = if (scanRecord != null) scanRecord.deviceName!! else "Unknown"
27
+ this.name = scanRecord?.deviceName ?: "Unknown"
28
28
  }
29
29
 
30
30
  fun match(scanResult: ScanResult): Boolean {
@@ -904,17 +904,19 @@ class NrfMeshPlugin : Plugin {
904
904
 
905
905
  val sensorOpts = call.getObject("sensor")
906
906
  if (sensorOpts != null) {
907
- val propertyId = sensorOpts.getInteger("propertyId")
908
- ?: return@launch call.reject("sensor options propertyId is required")
909
-
910
907
  val getOpts = sensorOpts.getJSObject("get")
911
908
  if (getOpts != null) {
912
- val message = SensorGetWrapper(appkey, propertyId.toShort())
909
+ val propertyId = sensorOpts.getInteger("propertyId")
910
+
911
+ val message = SensorGetWrapper(appkey, propertyId?.toShort())
913
912
  pairs.add(MessagePair(SENSOR_GET, message))
914
913
  }
915
914
 
916
915
  val propertyOpts = sensorOpts.getJSObject("property")
917
916
  if (propertyOpts != null) {
917
+ val propertyId = sensorOpts.getInteger("propertyId")
918
+ ?: return@launch call.reject("sensor options propertyId is required")
919
+
918
920
  val setPropertyId = propertyOpts.getInteger("propertyId")
919
921
  ?: return@launch call.reject("sensor.property options propertyId is required")
920
922
  val setBytes = propertyOpts.optJSONArray("bytes")
@@ -944,6 +946,9 @@ class NrfMeshPlugin : Plugin {
944
946
 
945
947
  val propertiesOpts = sensorOpts.getJSObject("properties")
946
948
  if (propertiesOpts != null) {
949
+ val propertyId = sensorOpts.getInteger("propertyId")
950
+ ?: return@launch call.reject("sensor options propertyId is required")
951
+
947
952
  val message = SensorSettingsGetWrapper(
948
953
  appkey,
949
954
  propertyId.toShort()
@@ -16,13 +16,15 @@ import java.nio.ByteBuffer
16
16
  import java.nio.ByteOrder.LITTLE_ENDIAN
17
17
 
18
18
  class SensorGetWrapper : SensorGet {
19
- constructor(appkey: ApplicationKey, propertyId: Short)
19
+ constructor(appkey: ApplicationKey, propertyId: Short?)
20
20
  : super(appkey, DeviceProperty.UNKNOWN) {
21
- this.mParameters = ByteBuffer
22
- .allocate(2)
23
- .order(LITTLE_ENDIAN)
24
- .putShort(propertyId)
25
- .array()
21
+ if (propertyId != null) {
22
+ this.mParameters = ByteBuffer
23
+ .allocate(2)
24
+ .order(LITTLE_ENDIAN)
25
+ .putShort(propertyId)
26
+ .array()
27
+ }
26
28
  }
27
29
  }
28
30
 
package/dist/docs.json CHANGED
@@ -4869,7 +4869,7 @@
4869
4869
  "SensorRawValue",
4870
4870
  "SensorPropertiesModel"
4871
4871
  ],
4872
- "type": "{ propertyId: number; get?: Omit<SensorModel, 'values'> | undefined; property?: PartialAny<SensorRawValue, 'bytes'> | undefined; properties?: SensorPropertiesModel | undefined; } | undefined"
4872
+ "type": "{ propertyId?: number | undefined; get?: Omit<SensorModel, 'values'> | undefined; property?: PartialAny<SensorRawValue, 'bytes'> | undefined; properties?: SensorPropertiesModel | undefined; } | undefined"
4873
4873
  }
4874
4874
  ]
4875
4875
  },
@@ -229,7 +229,7 @@ export interface ModelOptions extends TimeoutOptions {
229
229
  set?: OnOffModel;
230
230
  };
231
231
  sensor?: {
232
- propertyId: number;
232
+ propertyId?: number;
233
233
  get?: Omit<SensorModel, 'values'>;
234
234
  property?: PartialAny<SensorRawValue, 'bytes'>;
235
235
  properties?: SensorPropertiesModel;
@@ -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 max?: number\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"]}
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 max?: number\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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@autorunify/capacitor-nrfmesh",
3
- "version": "0.0.5",
3
+ "version": "0.0.7",
4
4
  "description": "nrf mesh plugin",
5
5
  "main": "dist/plugin.cjs.js",
6
6
  "module": "dist/esm/index.js",