@expressms/smartapp-sdk 1.12.0-alpha.5 → 1.12.0-alpha.6

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.
Files changed (60) hide show
  1. package/build/main/index.d.ts +9 -9
  2. package/build/main/index.js +24 -56
  3. package/build/main/lib/client/index.d.ts +14 -3
  4. package/build/main/lib/client/index.js +39 -9
  5. package/build/main/lib/devices/bluetooth.d.ts +52 -0
  6. package/build/main/lib/devices/bluetooth.js +160 -0
  7. package/build/main/lib/devices/gps.d.ts +5 -0
  8. package/build/main/lib/devices/gps.js +20 -0
  9. package/build/main/lib/devices/index.d.ts +5 -0
  10. package/build/main/lib/devices/index.js +35 -0
  11. package/build/main/lib/devices/nfc.d.ts +6 -0
  12. package/build/main/lib/devices/nfc.js +24 -0
  13. package/build/main/lib/helpers/helpers.d.ts +0 -1
  14. package/build/main/lib/helpers/helpers.js +2 -12
  15. package/build/main/lib/logging/index.js +5 -9
  16. package/build/main/lib/notification/index.d.ts +1 -2
  17. package/build/main/lib/notification/index.js +1 -1
  18. package/build/main/lib/routing/index.d.ts +6 -7
  19. package/build/main/lib/routing/index.js +2 -2
  20. package/build/main/types/bridge.d.ts +7 -32
  21. package/build/main/types/bridge.js +8 -4
  22. package/build/main/types/devices.d.ts +53 -0
  23. package/build/main/types/devices.js +3 -0
  24. package/build/main/types/index.d.ts +1 -0
  25. package/build/main/types/index.js +2 -1
  26. package/build/module/index.d.ts +9 -9
  27. package/build/module/index.js +10 -10
  28. package/build/module/lib/client/index.d.ts +14 -3
  29. package/build/module/lib/client/index.js +37 -8
  30. package/build/module/lib/devices/bluetooth.d.ts +52 -0
  31. package/build/module/lib/devices/bluetooth.js +148 -0
  32. package/build/module/lib/devices/gps.d.ts +5 -0
  33. package/build/module/lib/devices/gps.js +13 -0
  34. package/build/module/lib/devices/index.d.ts +5 -0
  35. package/build/module/lib/devices/index.js +6 -0
  36. package/build/module/lib/devices/nfc.d.ts +6 -0
  37. package/build/module/lib/devices/nfc.js +17 -0
  38. package/build/module/lib/helpers/helpers.d.ts +0 -1
  39. package/build/module/lib/helpers/helpers.js +1 -10
  40. package/build/module/lib/logging/index.js +4 -8
  41. package/build/module/lib/notification/index.d.ts +1 -2
  42. package/build/module/lib/notification/index.js +2 -3
  43. package/build/module/lib/routing/index.d.ts +6 -7
  44. package/build/module/lib/routing/index.js +7 -8
  45. package/build/module/types/bridge.d.ts +7 -32
  46. package/build/module/types/bridge.js +8 -4
  47. package/build/module/types/devices.d.ts +53 -0
  48. package/build/module/types/devices.js +2 -0
  49. package/build/module/types/index.d.ts +1 -0
  50. package/build/module/types/index.js +2 -1
  51. package/build/umd/index.js +222 -98
  52. package/package.json +1 -1
  53. package/build/main/lib/proxy/index.d.ts +0 -35
  54. package/build/main/lib/proxy/index.js +0 -102
  55. package/build/main/types/proxy.d.ts +0 -40
  56. package/build/main/types/proxy.js +0 -3
  57. package/build/module/lib/proxy/index.d.ts +0 -35
  58. package/build/module/lib/proxy/index.js +0 -91
  59. package/build/module/types/proxy.d.ts +0 -40
  60. package/build/module/types/proxy.js +0 -2
@@ -0,0 +1,17 @@
1
+ import bridge from '@expressms/smartapp-bridge';
2
+ import { ERROR_CODES, METHODS, } from '../../types';
3
+ /**
4
+ * Enable bluetooth
5
+ * @returns Promise that'll be fullfilled with `payload.nfcTag` on success, otherwise rejected with reason
6
+ */
7
+ export const readTag = () => {
8
+ if (!bridge)
9
+ return Promise.reject(ERROR_CODES.NO_BRIDGE);
10
+ return bridge
11
+ .sendClientEvent({
12
+ method: METHODS.ENABLE_BLUETOOTH,
13
+ params: {},
14
+ })
15
+ .then(event => event);
16
+ };
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmZjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9kZXZpY2VzL25mYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLE1BQU0sTUFBTSw0QkFBNEIsQ0FBQTtBQUMvQyxPQUFPLEVBQ0wsV0FBVyxFQUNYLE9BQU8sR0FFUixNQUFNLGFBQWEsQ0FBQTtBQUVwQjs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsR0FBZ0MsRUFBRTtJQUN2RCxJQUFJLENBQUMsTUFBTTtRQUFFLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUE7SUFFekQsT0FBTyxNQUFNO1NBQ1YsZUFBZSxDQUFDO1FBQ2YsTUFBTSxFQUFFLE9BQU8sQ0FBQyxnQkFBZ0I7UUFDaEMsTUFBTSxFQUFFLEVBQUU7S0FDWCxDQUFDO1NBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBMkIsQ0FBQyxDQUFBO0FBQy9DLENBQUMsQ0FBQSJ9
@@ -1,4 +1,3 @@
1
1
  export declare const useQuery: () => {
2
2
  [k: string]: string;
3
3
  };
4
- export declare const disableCopy: () => void;
@@ -2,13 +2,4 @@ export const useQuery = () => {
2
2
  const urlSearchParams = new URLSearchParams(window.location.search);
3
3
  return Object.fromEntries(urlSearchParams.entries());
4
4
  };
5
- const noop = (event) => {
6
- event.preventDefault();
7
- return false;
8
- };
9
- export const disableCopy = () => {
10
- document.addEventListener('selectstart', noop);
11
- document.addEventListener('contextmenu', noop);
12
- document.addEventListener('copy', noop);
13
- };
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvaGVscGVycy9oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxHQUFHLEVBQUU7SUFDM0IsTUFBTSxlQUFlLEdBQUcsSUFBSSxlQUFlLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUNuRSxPQUFPLE1BQU0sQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUE7QUFDdEQsQ0FBQyxDQUFBO0FBRUQsTUFBTSxJQUFJLEdBQUcsQ0FBQyxLQUFZLEVBQVcsRUFBRTtJQUNyQyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUE7SUFDdEIsT0FBTyxLQUFLLENBQUE7QUFDZCxDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsR0FBRyxFQUFFO0lBQzlCLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0MsUUFBUSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMvQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFBO0FBQ3pDLENBQUMsQ0FBQSJ9
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvaGVscGVycy9oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxHQUFHLEVBQUU7SUFDM0IsTUFBTSxlQUFlLEdBQUcsSUFBSSxlQUFlLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUNuRSxPQUFPLE1BQU0sQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUE7QUFDdEQsQ0FBQyxDQUFBIn0=
@@ -1,17 +1,13 @@
1
1
  import bridge from "@expressms/smartapp-bridge";
2
2
  import { ERROR_CODES } from "../../types";
3
- import { disableCopy } from "../helpers/helpers";
4
3
  import { bridgeSendReady } from "../index";
5
4
  export const ready = async (timeout) => {
6
- if (!bridge)
7
- return Promise.reject(ERROR_CODES.NO_BRIDGE);
8
5
  const response = await bridgeSendReady(timeout);
9
6
  const isLogsEnabled = response?.payload?.logsEnabled;
10
- const isCopyDisabled = !!response?.payload?.rules?.find(rule => rule.action === 'copy');
7
+ if (!bridge)
8
+ return Promise.reject(ERROR_CODES.NO_BRIDGE);
11
9
  if (isLogsEnabled)
12
- bridge.enableLogs();
13
- if (isCopyDisabled)
14
- disableCopy();
10
+ bridge.enableLogs?.();
15
11
  return response;
16
12
  };
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2xvZ2dpbmcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxNQUFNLE1BQU0sNEJBQTRCLENBQUE7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBc0IsTUFBTSxhQUFhLENBQUE7QUFDN0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBQ2hELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFFMUMsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUFHLEtBQUssRUFBRSxPQUFnQixFQUFFLEVBQUU7SUFDOUMsSUFBSSxDQUFDLE1BQU07UUFBRSxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBRXpELE1BQU0sUUFBUSxHQUFHLE1BQU0sZUFBZSxDQUFDLE9BQU8sQ0FBdUIsQ0FBQTtJQUVyRSxNQUFNLGFBQWEsR0FBRyxRQUFRLEVBQUUsT0FBTyxFQUFFLFdBQVcsQ0FBQTtJQUNwRCxNQUFNLGNBQWMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxNQUFNLENBQUMsQ0FBQTtJQUV2RixJQUFJLGFBQWE7UUFBRSxNQUFNLENBQUMsVUFBVSxFQUFFLENBQUE7SUFDdEMsSUFBSSxjQUFjO1FBQUUsV0FBVyxFQUFFLENBQUE7SUFFakMsT0FBTyxRQUFRLENBQUE7QUFDakIsQ0FBQyxDQUFBIn0=
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL2xvZ2dpbmcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxNQUFNLE1BQU0sNEJBQTRCLENBQUE7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBc0IsTUFBTSxhQUFhLENBQUE7QUFDN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQUUxQyxNQUFNLENBQUMsTUFBTSxLQUFLLEdBQUcsS0FBSyxFQUFFLE9BQWdCLEVBQUUsRUFBRTtJQUM5QyxNQUFNLFFBQVEsR0FBRyxNQUFNLGVBQWUsQ0FBQyxPQUFPLENBQXVCLENBQUE7SUFDckUsTUFBTSxhQUFhLEdBQUcsUUFBUSxFQUFFLE9BQU8sRUFBRSxXQUFXLENBQUE7SUFFcEQsSUFBSSxDQUFDLE1BQU07UUFBRSxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBRXpELElBQUksYUFBYTtRQUFFLE1BQU0sQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFBO0lBRXhDLE9BQU8sUUFBUSxDQUFBO0FBQ2pCLENBQUMsQ0FBQSJ9
@@ -1,2 +1 @@
1
- declare const onNotification: (handleNotification: Function) => Promise<void | undefined>;
2
- export { onNotification, };
1
+ export declare const onNotification: (handleNotification: Function) => Promise<void | undefined>;
@@ -1,6 +1,6 @@
1
1
  import bridge from "@expressms/smartapp-bridge";
2
2
  import { METHODS } from "../../types";
3
- const onNotification = async (handleNotification) => {
3
+ export const onNotification = async (handleNotification) => {
4
4
  const response = await bridge?.sendClientEvent({
5
5
  method: METHODS.NOTIFICATION,
6
6
  params: {},
@@ -12,5 +12,4 @@ const onNotification = async (handleNotification) => {
12
12
  }
13
13
  });
14
14
  };
15
- export { onNotification, };
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL25vdGlmaWNhdGlvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLE1BQU0sTUFBTSw0QkFBNEIsQ0FBQTtBQUMvQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRXJDLE1BQU0sY0FBYyxHQUFHLEtBQUssRUFBRSxrQkFBNEIsRUFBRSxFQUFFO0lBQzVELE1BQU0sUUFBUSxHQUFHLE1BQU0sTUFBTSxFQUFFLGVBQWUsQ0FBQztRQUM3QyxNQUFNLEVBQUUsT0FBTyxDQUFDLFlBQVk7UUFDNUIsTUFBTSxFQUFFLEVBQUU7S0FDWCxDQUFDLENBQUE7SUFFRiw4REFBOEQ7SUFDOUQsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUMsS0FBVSxFQUFFLEVBQUU7UUFDdEMsSUFBSSxLQUFLLEVBQUUsSUFBSSxLQUFLLE9BQU8sQ0FBQyxZQUFZLEVBQUU7WUFDeEMsa0JBQWtCLENBQUMsUUFBUSxDQUFDLENBQUE7U0FDN0I7SUFDSCxDQUFDLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQTtBQUVELE9BQU8sRUFDTCxjQUFjLEdBQ2YsQ0FBQSJ9
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL25vdGlmaWNhdGlvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLE1BQU0sTUFBTSw0QkFBNEIsQ0FBQTtBQUMvQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRXJDLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxLQUFLLEVBQUUsa0JBQTRCLEVBQUUsRUFBRTtJQUNuRSxNQUFNLFFBQVEsR0FBRyxNQUFNLE1BQU0sRUFBRSxlQUFlLENBQUM7UUFDN0MsTUFBTSxFQUFFLE9BQU8sQ0FBQyxZQUFZO1FBQzVCLE1BQU0sRUFBRSxFQUFFO0tBQ1gsQ0FBQyxDQUFBO0lBRUYsOERBQThEO0lBQzlELE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFO1FBQ3RDLElBQUksS0FBSyxFQUFFLElBQUksS0FBSyxPQUFPLENBQUMsWUFBWSxFQUFFO1lBQ3hDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxDQUFBO1NBQzdCO0lBQ0gsQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDLENBQUEifQ==
@@ -1,10 +1,9 @@
1
- declare const routingChanged: (isRoot: boolean) => Promise<import("@expressms/smartapp-bridge/build/main/types/eventEmitter").EmitterEventPayload> | undefined;
2
- declare const onBackPressed: (handleBackPressed: Function) => void | undefined;
3
- declare const openSmartApp: ({ appId, meta }: {
1
+ export declare const routingChanged: (isRoot: boolean) => Promise<import("@expressms/smartapp-bridge/build/main/types/eventEmitter").EmitterEventPayload> | undefined;
2
+ export declare const onBackPressed: (handleBackPressed: Function) => void | undefined;
3
+ export declare const openSmartApp: ({ appId, meta }: {
4
4
  appId: string;
5
5
  meta?: object | undefined;
6
6
  }) => Promise<import("@expressms/smartapp-bridge/build/main/types/eventEmitter").EmitterEventPayload> | undefined;
7
- declare const closeSmartApp: () => Promise<import("@expressms/smartapp-bridge/build/main/types/eventEmitter").EmitterEventPayload> | undefined;
8
- declare const onMoveToRoot: (handleMoveToRoot: Function) => void | undefined;
9
- declare const exitSmartAppToCatalog: () => Promise<import("@expressms/smartapp-bridge/build/main/types/eventEmitter").EmitterEventPayload> | undefined;
10
- export { routingChanged, onBackPressed, openSmartApp, exitSmartAppToCatalog, onMoveToRoot, closeSmartApp };
7
+ export declare const closeSmartApp: () => Promise<import("@expressms/smartapp-bridge/build/main/types/eventEmitter").EmitterEventPayload> | undefined;
8
+ export declare const onMoveToRoot: (handleMoveToRoot: Function) => void | undefined;
9
+ export declare const exitSmartAppToCatalog: () => Promise<import("@expressms/smartapp-bridge/build/main/types/eventEmitter").EmitterEventPayload> | undefined;
@@ -1,6 +1,6 @@
1
1
  import bridge from "@expressms/smartapp-bridge";
2
2
  import { LOCATION, METHODS } from '../../types';
3
- const routingChanged = (isRoot) => {
3
+ export const routingChanged = (isRoot) => {
4
4
  return bridge?.sendClientEvent({
5
5
  method: METHODS.ROUTING_CHANGED,
6
6
  params: {
@@ -8,35 +8,34 @@ const routingChanged = (isRoot) => {
8
8
  },
9
9
  });
10
10
  };
11
- const onBackPressed = (handleBackPressed) => {
11
+ export const onBackPressed = (handleBackPressed) => {
12
12
  return bridge?.onReceive(event => {
13
13
  if (event.type === METHODS.BACK_PRESSED)
14
14
  handleBackPressed();
15
15
  });
16
16
  };
17
- const openSmartApp = ({ appId, meta }) => {
17
+ export const openSmartApp = ({ appId, meta }) => {
18
18
  return bridge?.sendClientEvent({
19
19
  method: METHODS.OPEN_SMART_APP,
20
20
  params: meta ? { appId, meta } : { appId },
21
21
  });
22
22
  };
23
- const closeSmartApp = () => {
23
+ export const closeSmartApp = () => {
24
24
  return bridge?.sendClientEvent({
25
25
  method: METHODS.CLOSE_SMART_APP,
26
26
  params: {},
27
27
  });
28
28
  };
29
- const onMoveToRoot = (handleMoveToRoot) => {
29
+ export const onMoveToRoot = (handleMoveToRoot) => {
30
30
  return bridge?.onReceive(event => {
31
31
  if (event.type === METHODS.MOVE_TO_ROOT)
32
32
  handleMoveToRoot();
33
33
  });
34
34
  };
35
- const exitSmartAppToCatalog = () => {
35
+ export const exitSmartAppToCatalog = () => {
36
36
  return bridge?.sendClientEvent({
37
37
  method: METHODS.OPEN_SMART_APP,
38
38
  params: { appId: '' },
39
39
  });
40
40
  };
41
- export { routingChanged, onBackPressed, openSmartApp, exitSmartAppToCatalog, onMoveToRoot, closeSmartApp };
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3JvdXRpbmcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxNQUFNLE1BQU0sNEJBQTRCLENBQUE7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFFL0MsTUFBTSxjQUFjLEdBQUcsQ0FBQyxNQUFlLEVBQUUsRUFBRTtJQUN6QyxPQUFPLE1BQU0sRUFBRSxlQUFlLENBQUM7UUFDN0IsTUFBTSxFQUFFLE9BQU8sQ0FBQyxlQUFlO1FBQy9CLE1BQU0sRUFBRTtZQUNOLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNO1NBQ25EO0tBQ0YsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFBO0FBRUQsTUFBTSxhQUFhLEdBQUcsQ0FBQyxpQkFBMkIsRUFBRSxFQUFFO0lBQ3BELE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUMvQixJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssT0FBTyxDQUFDLFlBQVk7WUFBRSxpQkFBaUIsRUFBRSxDQUFBO0lBQzlELENBQUMsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFBO0FBRUQsTUFBTSxZQUFZLEdBQUcsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQW9DLEVBQUUsRUFBRTtJQUN6RSxPQUFPLE1BQU0sRUFBRSxlQUFlLENBQUM7UUFDN0IsTUFBTSxFQUFFLE9BQU8sQ0FBQyxjQUFjO1FBQzlCLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRTtLQUMzQyxDQUFDLENBQUE7QUFDSixDQUFDLENBQUE7QUFFRCxNQUFNLGFBQWEsR0FBRyxHQUFHLEVBQUU7SUFDekIsT0FBTyxNQUFNLEVBQUUsZUFBZSxDQUFDO1FBQzdCLE1BQU0sRUFBRSxPQUFPLENBQUMsZUFBZTtRQUMvQixNQUFNLEVBQUUsRUFBRTtLQUNYLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQTtBQUVELE1BQU0sWUFBWSxHQUFHLENBQUMsZ0JBQTBCLEVBQUUsRUFBRTtJQUNsRCxPQUFPLE1BQU0sRUFBRSxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDL0IsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLE9BQU8sQ0FBQyxZQUFZO1lBQUUsZ0JBQWdCLEVBQUUsQ0FBQTtJQUM3RCxDQUFDLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQTtBQUVELE1BQU0scUJBQXFCLEdBQUcsR0FBRyxFQUFFO0lBQ2pDLE9BQU8sTUFBTSxFQUFFLGVBQWUsQ0FBQztRQUM3QixNQUFNLEVBQUUsT0FBTyxDQUFDLGNBQWM7UUFDOUIsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtLQUN0QixDQUFDLENBQUE7QUFDSixDQUFDLENBQUE7QUFFRCxPQUFPLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUscUJBQXFCLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxDQUFBIn0=
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3JvdXRpbmcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxNQUFNLE1BQU0sNEJBQTRCLENBQUE7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFFL0MsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsTUFBZSxFQUFFLEVBQUU7SUFDaEQsT0FBTyxNQUFNLEVBQUUsZUFBZSxDQUFDO1FBQzdCLE1BQU0sRUFBRSxPQUFPLENBQUMsZUFBZTtRQUMvQixNQUFNLEVBQUU7WUFDTixRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTTtTQUNuRDtLQUNGLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxDQUFDLGlCQUEyQixFQUFFLEVBQUU7SUFDM0QsT0FBTyxNQUFNLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQy9CLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxPQUFPLENBQUMsWUFBWTtZQUFFLGlCQUFpQixFQUFFLENBQUE7SUFDOUQsQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQW9DLEVBQUUsRUFBRTtJQUNoRixPQUFPLE1BQU0sRUFBRSxlQUFlLENBQUM7UUFDN0IsTUFBTSxFQUFFLE9BQU8sQ0FBQyxjQUFjO1FBQzlCLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRTtLQUMzQyxDQUFDLENBQUE7QUFDSixDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsR0FBRyxFQUFFO0lBQ2hDLE9BQU8sTUFBTSxFQUFFLGVBQWUsQ0FBQztRQUM3QixNQUFNLEVBQUUsT0FBTyxDQUFDLGVBQWU7UUFDL0IsTUFBTSxFQUFFLEVBQUU7S0FDWCxDQUFDLENBQUE7QUFDSixDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxnQkFBMEIsRUFBRSxFQUFFO0lBQ3pELE9BQU8sTUFBTSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUMvQixJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssT0FBTyxDQUFDLFlBQVk7WUFBRSxnQkFBZ0IsRUFBRSxDQUFBO0lBQzdELENBQUMsQ0FBQyxDQUFBO0FBQ0osQ0FBQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsR0FBRyxFQUFFO0lBQ3hDLE9BQU8sTUFBTSxFQUFFLGVBQWUsQ0FBQztRQUM3QixNQUFNLEVBQUUsT0FBTyxDQUFDLGNBQWM7UUFDOUIsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtLQUN0QixDQUFDLENBQUE7QUFDSixDQUFDLENBQUEifQ==
@@ -40,9 +40,13 @@ export declare enum METHODS {
40
40
  GET_SMARTAPP_LIST = "get_smartapp_list",
41
41
  SET_WEB_RESOURCE_COOKIES = "set_web_resource_cookies",
42
42
  SET_ALLOWED_NAVIGATION_DOMAINS = "set_allowed_navigation_domains",
43
- GET_CREDENTIALS = "get_credentials",
44
- SET_CREDENTIALS = "set_credentials",
45
- RUN_WEB_COMMANDS_PIPELINE = "run_web_commands_pipeline"
43
+ ENABLE_BLUETOOTH = "enable_bluetooth",
44
+ SCAN_BLE_DEVICES = "scan_ble_devices",
45
+ CONNECT_BLE_DEVICE = "connect_ble_device",
46
+ DISCONNECT_BLE_DEVICE = "disconnect_ble_device",
47
+ DISCOVER_BLE_GATT_SERVICES = "discover_ble_gatt_services",
48
+ READ_BLE_GATT_CHARACTERISTIC = "read_ble_gatt_characteristic",
49
+ READ_NFC_TAG = "read_nfc_tag"
46
50
  }
47
51
  export declare enum STATUS {
48
52
  SUCCESS = "success",
@@ -124,34 +128,6 @@ export interface InitialDataMenuAction extends InitialData {
124
128
  files?: File[];
125
129
  };
126
130
  }
127
- export type RuleDownload = {
128
- action: 'download';
129
- ruleMeta: {
130
- contentType: string | null;
131
- fileSize: number | null;
132
- fileExt: Array<string> | null;
133
- };
134
- };
135
- export type RuleUpload = {
136
- action: 'upload';
137
- ruleMeta: {
138
- contentType: string | null;
139
- fileSize: number | null;
140
- fileExt: Array<string> | null;
141
- };
142
- };
143
- export type RuleShare = {
144
- action: 'share';
145
- ruleMeta: {
146
- contentType: string | null;
147
- fileSize: number | null;
148
- fileExt: Array<string> | null;
149
- };
150
- };
151
- export type RuleCopy = {
152
- action: 'copy';
153
- ruleMeta: {};
154
- };
155
131
  export type ReadyEventResponse = {
156
132
  ref: string;
157
133
  status: STATUS.SUCCESS;
@@ -161,7 +137,6 @@ export type ReadyEventResponse = {
161
137
  type: string;
162
138
  openSmartAppMeta?: object;
163
139
  initialData?: InitialDataEmail | InitialDataProfileAction | InitialDataPush | InitialDataDeeplink | InitialDataMenuAction;
164
- rules?: Array<RuleDownload | RuleUpload | RuleShare | RuleCopy>;
165
140
  };
166
141
  } | undefined;
167
142
  export interface File {
@@ -40,9 +40,13 @@ export var METHODS;
40
40
  METHODS["GET_SMARTAPP_LIST"] = "get_smartapp_list";
41
41
  METHODS["SET_WEB_RESOURCE_COOKIES"] = "set_web_resource_cookies";
42
42
  METHODS["SET_ALLOWED_NAVIGATION_DOMAINS"] = "set_allowed_navigation_domains";
43
- METHODS["GET_CREDENTIALS"] = "get_credentials";
44
- METHODS["SET_CREDENTIALS"] = "set_credentials";
45
- METHODS["RUN_WEB_COMMANDS_PIPELINE"] = "run_web_commands_pipeline";
43
+ METHODS["ENABLE_BLUETOOTH"] = "enable_bluetooth";
44
+ METHODS["SCAN_BLE_DEVICES"] = "scan_ble_devices";
45
+ METHODS["CONNECT_BLE_DEVICE"] = "connect_ble_device";
46
+ METHODS["DISCONNECT_BLE_DEVICE"] = "disconnect_ble_device";
47
+ METHODS["DISCOVER_BLE_GATT_SERVICES"] = "discover_ble_gatt_services";
48
+ METHODS["READ_BLE_GATT_CHARACTERISTIC"] = "read_ble_gatt_characteristic";
49
+ METHODS["READ_NFC_TAG"] = "read_nfc_tag";
46
50
  })(METHODS || (METHODS = {}));
47
51
  export var STATUS;
48
52
  (function (STATUS) {
@@ -54,4 +58,4 @@ export var ERROR_CODES;
54
58
  ERROR_CODES["NO_BRIDGE"] = "no_bridge";
55
59
  ERROR_CODES["SUBSCRIPTION_NOT_FOUND"] = "subscription_not_found";
56
60
  })(ERROR_CODES || (ERROR_CODES = {}));
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJpZGdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3R5cGVzL2JyaWRnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQU4sSUFBWSxPQTRDWDtBQTVDRCxXQUFZLE9BQU87SUFDakIsMEJBQWUsQ0FBQTtJQUNmLDhDQUFtQyxDQUFBO0lBQ25DLHdDQUE2QixDQUFBO0lBQzdCLHdDQUE2QixDQUFBO0lBQzdCLHNDQUEyQixDQUFBO0lBQzNCLHNDQUEyQixDQUFBO0lBQzNCLHdEQUE2QyxDQUFBO0lBQzdDLHdDQUE2QixDQUFBO0lBQzdCLHdDQUE2QixDQUFBO0lBQzdCLDRDQUFpQyxDQUFBO0lBQ2pDLHdEQUE2QyxDQUFBO0lBQzdDLGtDQUF1QixDQUFBO0lBQ3ZCLG9FQUF5RCxDQUFBO0lBQ3pELGdEQUFxQyxDQUFBO0lBQ3JDLDhDQUFtQyxDQUFBO0lBQ25DLGtEQUF1QyxDQUFBO0lBQ3ZDLGdEQUFxQyxDQUFBO0lBQ3JDLHdEQUE2QyxDQUFBO0lBQzdDLDhDQUFtQyxDQUFBO0lBQ25DLGtDQUF1QixDQUFBO0lBQ3ZCLHNDQUEyQixDQUFBO0lBQzNCLHdDQUE2QixDQUFBO0lBQzdCLDhEQUFtRCxDQUFBO0lBQ25ELGtFQUF1RCxDQUFBO0lBQ3ZELDBEQUErQyxDQUFBO0lBQy9DLDhDQUFtQyxDQUFBO0lBQ25DLGtEQUF1QyxDQUFBO0lBQ3ZDLG9EQUF5QyxDQUFBO0lBQ3pDLG9EQUF5QyxDQUFBO0lBQ3pDLDBEQUErQyxDQUFBO0lBQy9DLHdEQUE2QyxDQUFBO0lBQzdDLDhDQUFtQyxDQUFBO0lBQ25DLDREQUFpRCxDQUFBO0lBQ2pELG9EQUF5QyxDQUFBO0lBQ3pDLDhDQUFtQyxDQUFBO0lBQ25DLHNDQUEyQixDQUFBO0lBQzNCLG9EQUF5QyxDQUFBO0lBQ3pDLGtEQUF1QyxDQUFBO0lBQ3ZDLGdFQUFxRCxDQUFBO0lBQ3JELDRFQUFpRSxDQUFBO0lBQ2pFLDhDQUFtQyxDQUFBO0lBQ25DLDhDQUFtQyxDQUFBO0lBQ25DLGtFQUF1RCxDQUFBO0FBQ3pELENBQUMsRUE1Q1csT0FBTyxLQUFQLE9BQU8sUUE0Q2xCO0FBRUQsTUFBTSxDQUFOLElBQVksTUFHWDtBQUhELFdBQVksTUFBTTtJQUNoQiw2QkFBbUIsQ0FBQTtJQUNuQix5QkFBZSxDQUFBO0FBQ2pCLENBQUMsRUFIVyxNQUFNLEtBQU4sTUFBTSxRQUdqQjtBQUVELE1BQU0sQ0FBTixJQUFZLFdBR1g7QUFIRCxXQUFZLFdBQVc7SUFDckIsc0NBQXVCLENBQUE7SUFDdkIsZ0VBQWlELENBQUE7QUFDbkQsQ0FBQyxFQUhXLFdBQVcsS0FBWCxXQUFXLFFBR3RCIn0=
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJpZGdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3R5cGVzL2JyaWRnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLENBQU4sSUFBWSxPQWdEWDtBQWhERCxXQUFZLE9BQU87SUFDakIsMEJBQWUsQ0FBQTtJQUNmLDhDQUFtQyxDQUFBO0lBQ25DLHdDQUE2QixDQUFBO0lBQzdCLHdDQUE2QixDQUFBO0lBQzdCLHNDQUEyQixDQUFBO0lBQzNCLHNDQUEyQixDQUFBO0lBQzNCLHdEQUE2QyxDQUFBO0lBQzdDLHdDQUE2QixDQUFBO0lBQzdCLHdDQUE2QixDQUFBO0lBQzdCLDRDQUFpQyxDQUFBO0lBQ2pDLHdEQUE2QyxDQUFBO0lBQzdDLGtDQUF1QixDQUFBO0lBQ3ZCLG9FQUF5RCxDQUFBO0lBQ3pELGdEQUFxQyxDQUFBO0lBQ3JDLDhDQUFtQyxDQUFBO0lBQ25DLGtEQUF1QyxDQUFBO0lBQ3ZDLGdEQUFxQyxDQUFBO0lBQ3JDLHdEQUE2QyxDQUFBO0lBQzdDLDhDQUFtQyxDQUFBO0lBQ25DLGtDQUF1QixDQUFBO0lBQ3ZCLHNDQUEyQixDQUFBO0lBQzNCLHdDQUE2QixDQUFBO0lBQzdCLDhEQUFtRCxDQUFBO0lBQ25ELGtFQUF1RCxDQUFBO0lBQ3ZELDBEQUErQyxDQUFBO0lBQy9DLDhDQUFtQyxDQUFBO0lBQ25DLGtEQUF1QyxDQUFBO0lBQ3ZDLG9EQUF5QyxDQUFBO0lBQ3pDLG9EQUF5QyxDQUFBO0lBQ3pDLDBEQUErQyxDQUFBO0lBQy9DLHdEQUE2QyxDQUFBO0lBQzdDLDhDQUFtQyxDQUFBO0lBQ25DLDREQUFpRCxDQUFBO0lBQ2pELG9EQUF5QyxDQUFBO0lBQ3pDLDhDQUFtQyxDQUFBO0lBQ25DLHNDQUEyQixDQUFBO0lBQzNCLG9EQUF5QyxDQUFBO0lBQ3pDLGtEQUF1QyxDQUFBO0lBQ3ZDLGdFQUFxRCxDQUFBO0lBQ3JELDRFQUFpRSxDQUFBO0lBQ2pFLGdEQUFxQyxDQUFBO0lBQ3JDLGdEQUFxQyxDQUFBO0lBQ3JDLG9EQUF5QyxDQUFBO0lBQ3pDLDBEQUErQyxDQUFBO0lBQy9DLG9FQUF5RCxDQUFBO0lBQ3pELHdFQUE2RCxDQUFBO0lBQzdELHdDQUE2QixDQUFBO0FBQy9CLENBQUMsRUFoRFcsT0FBTyxLQUFQLE9BQU8sUUFnRGxCO0FBRUQsTUFBTSxDQUFOLElBQVksTUFHWDtBQUhELFdBQVksTUFBTTtJQUNoQiw2QkFBbUIsQ0FBQTtJQUNuQix5QkFBZSxDQUFBO0FBQ2pCLENBQUMsRUFIVyxNQUFNLEtBQU4sTUFBTSxRQUdqQjtBQUVELE1BQU0sQ0FBTixJQUFZLFdBR1g7QUFIRCxXQUFZLFdBQVc7SUFDckIsc0NBQXVCLENBQUE7SUFDdkIsZ0VBQWlELENBQUE7QUFDbkQsQ0FBQyxFQUhXLFdBQVcsS0FBWCxXQUFXLFFBR3RCIn0=
@@ -0,0 +1,53 @@
1
+ import { EmitterEventPayload } from '@expressms/smartapp-bridge/build/main/types/eventEmitter';
2
+ import { STATUS, StatusResponse } from './bridge';
3
+ export type BluetoothErrorCode = 'permission_denied' | 'bluetooth_not_found' | 'ble_device_not_found' | 'ble_device_not_connected' | 'ble_gatt_service_not_found' | 'ble_gatt_characteristic_not_found' | 'io_error' | 'error';
4
+ export type BleDevice = {
5
+ address: string;
6
+ name: string;
7
+ };
8
+ export type BleGattCharacteristic = {
9
+ uuid: string;
10
+ };
11
+ export type BleGattService = {
12
+ uuid: string;
13
+ characteristics: Array<BleGattCharacteristic>;
14
+ };
15
+ export interface BluetoothStatusResponse extends StatusResponse {
16
+ payload: {
17
+ status: STATUS;
18
+ errorCode?: BluetoothErrorCode;
19
+ };
20
+ }
21
+ export interface BluetoothScanBleDevicesResponse extends EmitterEventPayload {
22
+ payload: {
23
+ status: STATUS;
24
+ errorCode?: BluetoothErrorCode;
25
+ bleDevices: Array<BleDevice>;
26
+ };
27
+ }
28
+ export interface BluetoothDiscoverGattServicesResponse extends EmitterEventPayload {
29
+ payload: {
30
+ status: STATUS;
31
+ errorCode?: BluetoothErrorCode;
32
+ gattServices: Array<BleGattService>;
33
+ };
34
+ }
35
+ export interface BluetoothBleDeviceFoundEvent extends EmitterEventPayload {
36
+ payload: {
37
+ status: STATUS;
38
+ bleDevice: BleDevice;
39
+ };
40
+ }
41
+ export type BleDeviceCallback = (device: BleDevice) => {};
42
+ export type NfcErrorCode = 'permission_denied' | 'nfc_not_found' | 'nfc_write_error' | 'cancelled_by_user' | 'error';
43
+ export type NfcMessage = Array<number>;
44
+ export interface NfcReadTagResponse extends EmitterEventPayload {
45
+ payload: {
46
+ status: STATUS;
47
+ errorCode?: NfcErrorCode;
48
+ nfcTag: {
49
+ id: string;
50
+ messages: Array<NfcMessage>;
51
+ };
52
+ };
53
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90eXBlcy9kZXZpY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIifQ==
@@ -4,3 +4,4 @@ export * from "./contacts";
4
4
  export * from "./client";
5
5
  export * from "./storage";
6
6
  export * from "./events";
7
+ export * from "./devices";
@@ -4,4 +4,5 @@ export * from "./contacts";
4
4
  export * from "./client";
5
5
  export * from "./storage";
6
6
  export * from "./events";
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdHlwZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxVQUFVLENBQUE7QUFDeEIsY0FBYyxXQUFXLENBQUE7QUFDekIsY0FBYyxZQUFZLENBQUE7QUFDMUIsY0FBYyxVQUFVLENBQUE7QUFDeEIsY0FBYyxXQUFXLENBQUE7QUFDekIsY0FBYyxVQUFVLENBQUEifQ==
7
+ export * from "./devices";
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdHlwZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxVQUFVLENBQUE7QUFDeEIsY0FBYyxXQUFXLENBQUE7QUFDekIsY0FBYyxZQUFZLENBQUE7QUFDMUIsY0FBYyxVQUFVLENBQUE7QUFDeEIsY0FBYyxXQUFXLENBQUE7QUFDekIsY0FBYyxVQUFVLENBQUE7QUFDeEIsY0FBYyxXQUFXLENBQUEifQ==