@formant/data-sdk 1.2.0 → 1.3.0

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 (58) hide show
  1. package/dist/data-sdk.es.js +5202 -5007
  2. package/dist/data-sdk.umd.js +30 -29
  3. package/dist/types/data-sdk/src/Account.d.ts +10 -0
  4. package/dist/types/data-sdk/src/AppRtcClientPools.d.ts +2 -4
  5. package/dist/types/data-sdk/src/AudioPlayer.d.ts +2 -1
  6. package/dist/types/data-sdk/src/BaseDevice.d.ts +129 -0
  7. package/dist/types/data-sdk/src/Device.d.ts +6 -132
  8. package/dist/types/data-sdk/src/Fleet.d.ts +8 -0
  9. package/dist/types/data-sdk/src/KeyValue.d.ts +2 -1
  10. package/dist/types/data-sdk/src/Manipulator.d.ts +2 -2
  11. package/dist/types/data-sdk/src/PeerDevice.d.ts +7 -25
  12. package/dist/types/data-sdk/src/RequestDataChannel.d.ts +3 -3
  13. package/dist/types/data-sdk/src/Role.d.ts +8 -0
  14. package/dist/types/data-sdk/src/User.d.ts +8 -0
  15. package/dist/types/data-sdk/src/main.d.ts +3 -0
  16. package/dist/types/data-sdk/src/model/CognitoRegion.d.ts +2 -0
  17. package/dist/types/data-sdk/src/model/IAccount.d.ts +7 -0
  18. package/dist/types/data-sdk/src/model/IAccountTree.d.ts +4 -0
  19. package/dist/types/data-sdk/src/model/IAudioInfo.d.ts +4 -0
  20. package/dist/types/data-sdk/src/model/ICommandPropgress.d.ts +5 -0
  21. package/dist/types/data-sdk/src/model/IDevice.d.ts +31 -0
  22. package/dist/types/data-sdk/src/model/IDeviceReportedConfigurationState.d.ts +3 -0
  23. package/dist/types/data-sdk/src/model/IDeviceRosState.d.ts +4 -0
  24. package/dist/types/data-sdk/src/model/IDeviceScope.d.ts +5 -0
  25. package/dist/types/data-sdk/src/model/IDeviceState.d.ts +16 -0
  26. package/dist/types/data-sdk/src/model/IDictionary.d.ts +3 -0
  27. package/dist/types/data-sdk/src/model/IFleet.d.ts +8 -0
  28. package/dist/types/data-sdk/src/model/IHwInfo.d.ts +17 -0
  29. package/dist/types/data-sdk/src/model/IKernelInfo.d.ts +5 -0
  30. package/dist/types/data-sdk/src/model/INetwork.d.ts +4 -0
  31. package/dist/types/data-sdk/src/model/INodeInfo.d.ts +5 -0
  32. package/dist/types/data-sdk/src/model/IOnDemandPresenceStreamItemGroup.d.ts +6 -0
  33. package/dist/types/data-sdk/src/model/IOnDemandPresenceTimeRange.d.ts +7 -0
  34. package/dist/types/data-sdk/src/model/IOnDemandState.d.ts +4 -0
  35. package/dist/types/data-sdk/src/model/IOnDemandStreamPresence.d.ts +5 -0
  36. package/dist/types/data-sdk/src/model/IOnDemmandBuffer.d.ts +6 -0
  37. package/dist/types/data-sdk/src/model/IOnvifDevice.d.ts +5 -0
  38. package/dist/types/data-sdk/src/model/IOsInfo.d.ts +6 -0
  39. package/dist/types/data-sdk/src/model/IRole.d.ts +9 -0
  40. package/dist/types/data-sdk/src/model/IRosTopic.d.ts +4 -0
  41. package/dist/types/data-sdk/src/model/ITaggedEntity.d.ts +5 -0
  42. package/dist/types/data-sdk/src/model/IUser.d.ts +29 -0
  43. package/dist/types/data-sdk/src/model/IUserScope.d.ts +15 -0
  44. package/dist/types/data-sdk/src/model/IVideoDevice.d.ts +4 -0
  45. package/dist/types/data-sdk/src/model/IdeviceFollower.d.ts +4 -0
  46. package/dist/types/data-sdk/src/model/InetworkInfo.d.ts +4 -0
  47. package/dist/types/data-sdk/src/model/OnDemandBufferType.d.ts +2 -0
  48. package/dist/types/data-sdk/src/model/Policies.d.ts +35 -0
  49. package/dist/types/data-sdk/src/model/RequiredKeys.d.ts +3 -0
  50. package/dist/types/data-sdk/src/model/Resource.d.ts +2 -0
  51. package/dist/types/data-sdk/src/model/cognitoRegions.d.ts +1 -0
  52. package/dist/types/data-sdk/src/model/onDemandBufferTypes.d.ts +1 -0
  53. package/dist/types/data-sdk/src/model/resources.d.ts +1 -0
  54. package/dist/types/data-sdk/src/stores/AuthenticationStore.d.ts +4 -3
  55. package/dist/types/data-sdk/src/stores/IAuthenticationStore.d.ts +3 -10
  56. package/dist/types/data-sdk/src/utils/index.d.ts +0 -1
  57. package/package.json +1 -1
  58. package/dist/types/data-sdk/src/utils/rtcClientVersion.d.ts +0 -2
@@ -0,0 +1,5 @@
1
+ import { IOnDemandPresenceStreamItemGroup } from "./IOnDemandPresenceStreamItemGroup";
2
+ export interface IOnDemandStreamPresence {
3
+ streamName: string;
4
+ presence: IOnDemandPresenceStreamItemGroup[];
5
+ }
@@ -0,0 +1,6 @@
1
+ import { IOnDemandStreamPresence } from "./IOnDemandStreamPresence";
2
+ import { OnDemandBufferType } from "./OnDemandBufferType";
3
+ export interface IOnDemandBuffer {
4
+ bufferType: OnDemandBufferType;
5
+ streams: IOnDemandStreamPresence[];
6
+ }
@@ -0,0 +1,5 @@
1
+ export interface IOnvifDevice {
2
+ id: string;
3
+ name: string;
4
+ address: string;
5
+ }
@@ -0,0 +1,6 @@
1
+ export interface IOsInfo {
2
+ name?: string;
3
+ vendor?: string;
4
+ version?: string;
5
+ release?: string;
6
+ }
@@ -0,0 +1,9 @@
1
+ import { ITaggedEntity } from "./ITaggedEntity";
2
+ import { Policies } from "./Policies";
3
+ import { Uuid } from "./Uuid";
4
+ export interface IRole extends ITaggedEntity {
5
+ organizationId?: Uuid;
6
+ name: string;
7
+ policies: Policies;
8
+ isImmutable?: boolean;
9
+ }
@@ -0,0 +1,4 @@
1
+ export interface IRosTopic {
2
+ name: string;
3
+ type: string;
4
+ }
@@ -0,0 +1,5 @@
1
+ import { IBaseEntity } from "./IBaseEntity";
2
+ import { ITags } from "./ITags";
3
+ export interface ITaggedEntity extends IBaseEntity {
4
+ tags: ITags;
5
+ }
@@ -0,0 +1,29 @@
1
+ import { ITaggedEntity } from "./ITaggedEntity";
2
+ import { Uuid } from "./Uuid";
3
+ import { IsoDate } from "./IsoDate";
4
+ import { CognitoRegion } from "./CognitoRegion";
5
+ import { IUserScope } from "./IUserScope";
6
+ export interface IUser extends ITaggedEntity {
7
+ organizationId?: Uuid;
8
+ accountId?: Uuid | null;
9
+ roleId: Uuid | null;
10
+ email?: string;
11
+ firstName?: string;
12
+ lastName?: string;
13
+ scope?: IUserScope | null;
14
+ teamId?: Uuid | null;
15
+ eventTriggerGroupId?: Uuid | null;
16
+ phoneNumber?: string;
17
+ enabled?: boolean;
18
+ isOrganizationOwner?: boolean;
19
+ termsAccepted?: string;
20
+ lastLoggedIn?: IsoDate;
21
+ passwordHash?: string | null;
22
+ isSingleSignOn?: boolean;
23
+ isServiceAccount?: boolean;
24
+ region: CognitoRegion;
25
+ jobTitle?: string;
26
+ language?: string;
27
+ units?: string;
28
+ timezone?: string;
29
+ }
@@ -0,0 +1,15 @@
1
+ import { IScopeFilter } from "./IScopeFilter";
2
+ import { RequireKeys } from "./RequiredKeys";
3
+ export interface IUserResourceScope {
4
+ roles?: IScopeFilter;
5
+ users?: IScopeFilter;
6
+ teams?: IScopeFilter;
7
+ devices?: IScopeFilter;
8
+ fleets?: IScopeFilter;
9
+ events?: IScopeFilter;
10
+ views?: IScopeFilter;
11
+ }
12
+ export interface IUserScope extends IScopeFilter, IUserResourceScope {
13
+ }
14
+ export type IFullUserScope = IScopeFilter & RequireKeys<IUserResourceScope>;
15
+ export declare const fullAccessUserScope: IFullUserScope;
@@ -0,0 +1,4 @@
1
+ export interface IVideoDevice {
2
+ path: string;
3
+ name: string;
4
+ }
@@ -0,0 +1,4 @@
1
+ import { Uuid } from "./Uuid";
2
+ export interface IDeviceFollower {
3
+ userId: Uuid;
4
+ }
@@ -0,0 +1,4 @@
1
+ import { INetwork } from "./INetwork";
2
+ export interface INetworkInfo {
3
+ networks: INetwork[];
4
+ }
@@ -0,0 +1,2 @@
1
+ import { onDemandBufferTypes } from "./onDemandBufferTypes";
2
+ export type OnDemandBufferType = (typeof onDemandBufferTypes)[number];
@@ -0,0 +1,35 @@
1
+ import { AccessLevel } from "./AccessLevel";
2
+ import { Resource } from "./Resource";
3
+ export declare const resourcePolicyMap: {
4
+ organization: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
5
+ users: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
6
+ devices: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator", "edit-tags"];
7
+ roles: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator", "edit-tags"];
8
+ billing: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
9
+ streams: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
10
+ views: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator", "edit-tags"];
11
+ channels: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
12
+ comments: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
13
+ teleop: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
14
+ terminal: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
15
+ portForwarding: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
16
+ events: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
17
+ commands: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
18
+ annotations: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
19
+ capture: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
20
+ share: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
21
+ fileStorage: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
22
+ integrations: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
23
+ interventions: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
24
+ analytics: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
25
+ keyValueStorage: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
26
+ schedules: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
27
+ kiosk: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
28
+ taskSummaries: readonly ["viewer" | "operator" | "administrator", "viewer" | "operator" | "administrator"];
29
+ };
30
+ export type ResourcePolicy<T extends Resource> = (typeof resourcePolicyMap)[T][number];
31
+ export type Policies = {
32
+ [_ in Resource]?: ResourcePolicy<_>[];
33
+ };
34
+ export declare function getAccessLevel(policies: ResourcePolicy<Resource>[]): AccessLevel | undefined;
35
+ export declare function includesAccess<T extends Resource = Resource>(accessPolicy: ResourcePolicy<T>[] | undefined, targetPolicy: ResourcePolicy<T>): boolean;
@@ -0,0 +1,3 @@
1
+ export type RequireKeys<T> = {
2
+ [K in keyof T & {}]: T[K];
3
+ };
@@ -0,0 +1,2 @@
1
+ import { resources } from "./resources";
2
+ export type Resource = (typeof resources)[number];
@@ -0,0 +1 @@
1
+ export declare const cognitoRegions: readonly ["AMER", "EMEA", "JAPAC"];
@@ -0,0 +1 @@
1
+ export declare const onDemandBufferTypes: readonly ["s3_asset", "datapoint"];
@@ -0,0 +1 @@
1
+ export declare const resources: readonly ["organization", "users", "devices", "roles", "streams", "views", "channels", "comments", "teleop", "terminal", "portForwarding", "events", "commands", "annotations", "capture", "share", "fileStorage", "integrations", "interventions", "analytics", "keyValueStorage", "schedules", "kiosk", "billing", "taskSummaries"];
@@ -1,4 +1,5 @@
1
- import { User, IAuthentication, IAuthenticationStore, IConfirmForgotPasswordRequest, IRespondToNewPasswordRequiredChallengeRequest } from "./IAuthenticationStore";
1
+ import { IAuthentication, IAuthenticationStore, IConfirmForgotPasswordRequest, IRespondToNewPasswordRequiredChallengeRequest } from "./IAuthenticationStore";
2
+ import { IUser } from "../model/IUser";
2
3
  interface IAuthenticationStoreOptions {
3
4
  apiUrl: string;
4
5
  refreshAuthToken: () => void;
@@ -18,7 +19,7 @@ export declare class AuthenticationStore implements IAuthenticationStore {
18
19
  private readonly _addAccessTokenRefreshListener;
19
20
  constructor({ apiUrl, refreshAuthToken, addAccessTokenRefreshListener, }: IAuthenticationStoreOptions);
20
21
  get token(): string | undefined;
21
- get currentUser(): User | undefined;
22
+ get currentUser(): IUser | undefined;
22
23
  get currentOrganization(): string | undefined;
23
24
  get defaultDeviceId(): string | undefined;
24
25
  /**
@@ -35,7 +36,7 @@ export declare class AuthenticationStore implements IAuthenticationStore {
35
36
  /**
36
37
  * @deprecated use currentUser property instead.
37
38
  */
38
- getCurrentUser(): User | undefined;
39
+ getCurrentUser(): IUser | undefined;
39
40
  waitTilAuthenticated(): Promise<boolean>;
40
41
  listenForRefresh(): Promise<void>;
41
42
  forgotPassword(email: string): Promise<void>;
@@ -1,11 +1,4 @@
1
- export interface User {
2
- firstName: string;
3
- lastName: string;
4
- email: string;
5
- organizationId: string;
6
- roleId: string;
7
- id: string;
8
- }
1
+ import { IUser } from "../model/IUser";
9
2
  export interface IAuthentication {
10
3
  accessToken: string;
11
4
  organizationId: string;
@@ -24,7 +17,7 @@ export interface IRespondToNewPasswordRequiredChallengeRequest {
24
17
  }
25
18
  export interface IAuthenticationStore {
26
19
  readonly token: string | undefined;
27
- readonly currentUser: User | undefined;
20
+ readonly currentUser: IUser | undefined;
28
21
  readonly currentOrganization: string | undefined;
29
22
  readonly defaultDeviceId: string | undefined;
30
23
  /**
@@ -38,7 +31,7 @@ export interface IAuthenticationStore {
38
31
  login(email: string, password: string): Promise<IAuthentication | Error>;
39
32
  loginWithToken(token: string, refreshToken?: string): Promise<void>;
40
33
  isAuthenticated(): boolean;
41
- getCurrentUser(): User | undefined;
34
+ getCurrentUser(): IUser | undefined;
42
35
  waitTilAuthenticated(): Promise<boolean>;
43
36
  listenForRefresh(): Promise<void>;
44
37
  forgotPassword(email: string): Promise<void>;
@@ -3,4 +3,3 @@ export * from "./numericAggregateUtils";
3
3
  export * from "./timeout";
4
4
  export * from "./serializeHash";
5
5
  export * from "./isRtcPeer";
6
- export { getRtcClientVersion } from "./rtcClientVersion";
package/package.json CHANGED
@@ -24,7 +24,7 @@
24
24
  }
25
25
  }
26
26
  },
27
- "version": "1.2.0",
27
+ "version": "1.3.0",
28
28
  "scripts": {
29
29
  "preversion": "npm run test && tsc --project ./configs/tsconfig.type-check.json",
30
30
  "postversion": "make",
@@ -1,2 +0,0 @@
1
- export declare function overrideRtcClientVersion(newVersion: string | null): void;
2
- export declare function getRtcClientVersion(): string | null;