@vertexvis/stream-api 0.24.5 → 1.0.0-canary.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.
@@ -1 +1 @@
1
- export {};
1
+ export {};
@@ -1,2 +1,2 @@
1
- import { EventMessage } from '../../types';
2
- export declare function animationCompleted(id: string): EventMessage;
1
+ import { EventMessage } from '../../types';
2
+ export declare function animationCompleted(id: string): EventMessage;
@@ -1,4 +1,4 @@
1
- import * as Events from './events';
2
- import * as Requests from './requests';
3
- import * as Responses from './responses';
4
- export { Events, Requests, Responses };
1
+ import * as Events from './events';
2
+ import * as Requests from './requests';
3
+ import * as Responses from './responses';
4
+ export { Events, Requests, Responses };
@@ -1,14 +1,14 @@
1
- import { vertexvis } from '@vertexvis/frame-streaming-protos';
2
- import { RequestMessage } from '../../types';
3
- declare type Metadata = Partial<Pick<RequestMessage, 'sentAtTime'>>;
4
- interface RequestId {
5
- requestId?: string;
6
- }
7
- interface Payload<P> {
8
- payload?: P;
9
- }
10
- declare type DrawFrameRequest = RequestId & Payload<vertexvis.protobuf.stream.IDrawFramePayload>;
11
- declare type GracefulReconnectRequest = RequestId & Payload<vertexvis.protobuf.stream.IGracefulReconnectionPayload>;
12
- export declare function drawFrame(req?: DrawFrameRequest, meta?: Metadata): RequestMessage;
13
- export declare function gracefulReconnect(req?: GracefulReconnectRequest, meta?: Metadata): RequestMessage;
14
- export {};
1
+ import { vertexvis } from '@vertexvis/frame-streaming-protos';
2
+ import { RequestMessage } from '../../types';
3
+ type Metadata = Partial<Pick<RequestMessage, 'sentAtTime'>>;
4
+ interface RequestId {
5
+ requestId?: string;
6
+ }
7
+ interface Payload<P> {
8
+ payload?: P;
9
+ }
10
+ type DrawFrameRequest = RequestId & Payload<vertexvis.protobuf.stream.IDrawFramePayload>;
11
+ type GracefulReconnectRequest = RequestId & Payload<vertexvis.protobuf.stream.IGracefulReconnectionPayload>;
12
+ export declare function drawFrame(req?: DrawFrameRequest, meta?: Metadata): RequestMessage;
13
+ export declare function gracefulReconnect(req?: GracefulReconnectRequest, meta?: Metadata): RequestMessage;
14
+ export {};
@@ -1,20 +1,20 @@
1
- import { vertexvis } from '@vertexvis/frame-streaming-protos';
2
- import { ResponseMessage } from '../../types';
3
- declare type Metadata = Partial<Pick<ResponseMessage, 'sentAtTime'>>;
4
- interface RequestId {
5
- requestId?: string;
6
- }
7
- interface Result<T> {
8
- result?: T;
9
- }
10
- declare type StartStreamResponse = RequestId & Result<vertexvis.protobuf.stream.IStartStreamResult>;
11
- declare type SyncTimeResponse = RequestId & Result<vertexvis.protobuf.stream.ISyncTimeResult>;
12
- declare type ReconnectResponse = RequestId & Result<vertexvis.protobuf.stream.IReconnectResult>;
13
- declare type LoadSceneViewStateResponse = RequestId & Result<vertexvis.protobuf.stream.ILoadSceneViewStateResult>;
14
- declare type RefreshTokenResponse = RequestId & Result<vertexvis.protobuf.stream.IRefreshTokenResult>;
15
- export declare function startStream(res?: StartStreamResponse, meta?: Metadata): ResponseMessage;
16
- export declare function syncTime(res?: SyncTimeResponse, meta?: Metadata): ResponseMessage;
17
- export declare function reconnect(res?: ReconnectResponse, meta?: Metadata): ResponseMessage;
18
- export declare function loadSceneViewState(res?: LoadSceneViewStateResponse, meta?: Metadata): ResponseMessage;
19
- export declare function refreshToken(res?: RefreshTokenResponse, meta?: Metadata): ResponseMessage;
20
- export {};
1
+ import { vertexvis } from '@vertexvis/frame-streaming-protos';
2
+ import { ResponseMessage } from '../../types';
3
+ type Metadata = Partial<Pick<ResponseMessage, 'sentAtTime'>>;
4
+ interface RequestId {
5
+ requestId?: string;
6
+ }
7
+ interface Result<T> {
8
+ result?: T;
9
+ }
10
+ type StartStreamResponse = RequestId & Result<vertexvis.protobuf.stream.IStartStreamResult>;
11
+ type SyncTimeResponse = RequestId & Result<vertexvis.protobuf.stream.ISyncTimeResult>;
12
+ type ReconnectResponse = RequestId & Result<vertexvis.protobuf.stream.IReconnectResult>;
13
+ type LoadSceneViewStateResponse = RequestId & Result<vertexvis.protobuf.stream.ILoadSceneViewStateResult>;
14
+ type RefreshTokenResponse = RequestId & Result<vertexvis.protobuf.stream.IRefreshTokenResult>;
15
+ export declare function startStream(res?: StartStreamResponse, meta?: Metadata): ResponseMessage;
16
+ export declare function syncTime(res?: SyncTimeResponse, meta?: Metadata): ResponseMessage;
17
+ export declare function reconnect(res?: ReconnectResponse, meta?: Metadata): ResponseMessage;
18
+ export declare function loadSceneViewState(res?: LoadSceneViewStateResponse, meta?: Metadata): ResponseMessage;
19
+ export declare function refreshToken(res?: RefreshTokenResponse, meta?: Metadata): ResponseMessage;
20
+ export {};
@@ -1,3 +1,3 @@
1
- import * as Fixtures from './fixtures';
2
- export * from './webSocketClientMock';
3
- export { Fixtures };
1
+ import * as Fixtures from './fixtures';
2
+ export * from './webSocketClientMock';
3
+ export { Fixtures };
@@ -1,77 +1,77 @@
1
- import { Disposable } from '@vertexvis/utils';
2
- import { ConnectionDescriptor } from '../connection';
3
- import { CloseHandler, MessageHandler, WebSocketClient, WebSocketSendData } from '../webSocketClient';
4
- export declare class WebSocketClientMock implements WebSocketClient {
5
- private closeHandlers;
6
- private msgHandlers;
7
- private sentMessages;
8
- close(): void;
9
- connect(descriptor: ConnectionDescriptor): Promise<void>;
10
- onClose(handler: CloseHandler): Disposable;
11
- onMessage(handler: MessageHandler): Disposable;
12
- send(data: WebSocketSendData): void;
13
- reconnect(descriptor: ConnectionDescriptor): Promise<void>;
14
- /**
15
- * Simulates a websocket message that was sent by the server and received by
16
- * the client.
17
- *
18
- * @param data The websocket message data.
19
- */
20
- receiveMessage(data: WebSocketSendData): void;
21
- /**
22
- * Resets the internal state of the mock by clearing any accrued sent messages
23
- * and removing all handlers.
24
- */
25
- reset(): void;
26
- /**
27
- * Returns `true` if there are remaining sent messages..
28
- */
29
- hasNextSent(): boolean;
30
- /**
31
- * Decodes and returns the next message that was sent on this websocket.
32
- *
33
- * @example
34
- *
35
- * const ws = new WebSocketClientMock();
36
- * const decoder = str => parseInt(str)
37
- * ws.send("1");
38
- * ws.send("2");
39
- *
40
- * ws.nextSent(decoder); // 1
41
- * ws.nextSent(decoder); // 2
42
- *
43
- * @param decoder A function to decode a message.
44
- */
45
- nextSent<T>(decoder: (data: WebSocketSendData) => T): T;
46
- /**
47
- * Returns the next message that was sent on this websocket.
48
- *
49
- * @example
50
- * ```
51
- * const ws = new WebSocketClientMock();
52
- * ws.send("1");
53
- * ws.send("2");
54
- *
55
- * ws.nextSent(); // "1"
56
- * ws.nextSent(); // "2"
57
- * ```
58
- */
59
- nextSent(): WebSocketSendData;
60
- /**
61
- * Skips the next N sent messages.
62
- *
63
- * @example
64
- * ```
65
- * const ws = new WebSocketClientMock();
66
- * ws.send("1");
67
- * ws.send("2");
68
- * ws.send("3");
69
- *
70
- * ws.skipSent(2);
71
- * ws.nextSent(); // "3"
72
- * ```
73
- *
74
- * @param n The number of sent messages to skip over.
75
- */
76
- skipSent(n?: number): this;
77
- }
1
+ import { Disposable } from '@vertexvis/utils';
2
+ import { ConnectionDescriptor } from '../connection';
3
+ import { CloseHandler, MessageHandler, WebSocketClient, WebSocketSendData } from '../webSocketClient';
4
+ export declare class WebSocketClientMock implements WebSocketClient {
5
+ private closeHandlers;
6
+ private msgHandlers;
7
+ private sentMessages;
8
+ close(): void;
9
+ connect(descriptor: ConnectionDescriptor): Promise<void>;
10
+ onClose(handler: CloseHandler): Disposable;
11
+ onMessage(handler: MessageHandler): Disposable;
12
+ send(data: WebSocketSendData): void;
13
+ reconnect(descriptor: ConnectionDescriptor): Promise<void>;
14
+ /**
15
+ * Simulates a websocket message that was sent by the server and received by
16
+ * the client.
17
+ *
18
+ * @param data The websocket message data.
19
+ */
20
+ receiveMessage(data: WebSocketSendData): void;
21
+ /**
22
+ * Resets the internal state of the mock by clearing any accrued sent messages
23
+ * and removing all handlers.
24
+ */
25
+ reset(): void;
26
+ /**
27
+ * Returns `true` if there are remaining sent messages..
28
+ */
29
+ hasNextSent(): boolean;
30
+ /**
31
+ * Decodes and returns the next message that was sent on this websocket.
32
+ *
33
+ * @example
34
+ *
35
+ * const ws = new WebSocketClientMock();
36
+ * const decoder = str => parseInt(str)
37
+ * ws.send("1");
38
+ * ws.send("2");
39
+ *
40
+ * ws.nextSent(decoder); // 1
41
+ * ws.nextSent(decoder); // 2
42
+ *
43
+ * @param decoder A function to decode a message.
44
+ */
45
+ nextSent<T>(decoder: (data: WebSocketSendData) => T): T;
46
+ /**
47
+ * Returns the next message that was sent on this websocket.
48
+ *
49
+ * @example
50
+ * ```
51
+ * const ws = new WebSocketClientMock();
52
+ * ws.send("1");
53
+ * ws.send("2");
54
+ *
55
+ * ws.nextSent(); // "1"
56
+ * ws.nextSent(); // "2"
57
+ * ```
58
+ */
59
+ nextSent(): WebSocketSendData;
60
+ /**
61
+ * Skips the next N sent messages.
62
+ *
63
+ * @example
64
+ * ```
65
+ * const ws = new WebSocketClientMock();
66
+ * ws.send("1");
67
+ * ws.send("2");
68
+ * ws.send("3");
69
+ *
70
+ * ws.skipSent(2);
71
+ * ws.nextSent(); // "3"
72
+ * ```
73
+ *
74
+ * @param n The number of sent messages to skip over.
75
+ */
76
+ skipSent(n?: number): this;
77
+ }
package/dist/time.d.ts CHANGED
@@ -1,37 +1,37 @@
1
- import { google } from '@vertexvis/frame-streaming-protos';
2
- declare type MaybeTimestampOrDuration = Pick<google.protobuf.ITimestamp, 'seconds' | 'nanos'>;
3
- declare type DefinedTimestampOrDuration = Required<Pick<google.protobuf.ITimestamp, 'seconds' | 'nanos'>>;
4
- /**
5
- * Converts a JS date type to a `google.protobuf.Timestamp`. The returned time
6
- * will be represented as UTC.
7
- *
8
- * @param date The date to convert.
9
- */
10
- export declare function toProtoTimestamp(date: Date): google.protobuf.Timestamp;
11
- /**
12
- * Returns the current date and time as a `google.protobuf.Timestamp`.
13
- */
14
- export declare function currentDateAsProtoTimestamp(): google.protobuf.Timestamp;
15
- /**
16
- * Converts the given milliseconds into a `google.protobuf.Duration`.
17
- *
18
- * @param ms The milliseconds to convert.
19
- */
20
- export declare function toProtoDuration(ms: number): google.protobuf.Duration;
21
- /**
22
- * Converts the two dates into a `google.protobuf.Duration`, where the duration
23
- * is `end - start`. If `end` is before `start`, then the duration will be
24
- * negative.
25
- *
26
- * @param start The starting time.
27
- * @param end The ending time.
28
- */
29
- export declare function toProtoDuration(start: Date, end: Date): google.protobuf.Duration;
30
- /**
31
- * Converts a protobuf timestamp or duration to a JS date.
32
- *
33
- * @param time The timestamp or duration to convert.
34
- */
35
- export declare function protoToDate(time: DefinedTimestampOrDuration): Date;
36
- export declare function protoToDate(time: MaybeTimestampOrDuration): Date | undefined;
37
- export {};
1
+ import { google } from '@vertexvis/frame-streaming-protos';
2
+ type MaybeTimestampOrDuration = Pick<google.protobuf.ITimestamp, 'seconds' | 'nanos'>;
3
+ type DefinedTimestampOrDuration = Required<Pick<google.protobuf.ITimestamp, 'seconds' | 'nanos'>>;
4
+ /**
5
+ * Converts a JS date type to a `google.protobuf.Timestamp`. The returned time
6
+ * will be represented as UTC.
7
+ *
8
+ * @param date The date to convert.
9
+ */
10
+ export declare function toProtoTimestamp(date: Date): google.protobuf.Timestamp;
11
+ /**
12
+ * Returns the current date and time as a `google.protobuf.Timestamp`.
13
+ */
14
+ export declare function currentDateAsProtoTimestamp(): google.protobuf.Timestamp;
15
+ /**
16
+ * Converts the given milliseconds into a `google.protobuf.Duration`.
17
+ *
18
+ * @param ms The milliseconds to convert.
19
+ */
20
+ export declare function toProtoDuration(ms: number): google.protobuf.Duration;
21
+ /**
22
+ * Converts the two dates into a `google.protobuf.Duration`, where the duration
23
+ * is `end - start`. If `end` is before `start`, then the duration will be
24
+ * negative.
25
+ *
26
+ * @param start The starting time.
27
+ * @param end The ending time.
28
+ */
29
+ export declare function toProtoDuration(start: Date, end: Date): google.protobuf.Duration;
30
+ /**
31
+ * Converts a protobuf timestamp or duration to a JS date.
32
+ *
33
+ * @param time The timestamp or duration to convert.
34
+ */
35
+ export declare function protoToDate(time: DefinedTimestampOrDuration): Date;
36
+ export declare function protoToDate(time: MaybeTimestampOrDuration): Date | undefined;
37
+ export {};
package/dist/types.d.ts CHANGED
@@ -1,63 +1,63 @@
1
- import { vertexvis } from '@vertexvis/frame-streaming-protos';
2
- import { DeepRequired, RequiredAndNonNullable } from '@vertexvis/utils';
3
- export declare type RequestMessage = RequiredAndNonNullable<Pick<vertexvis.protobuf.stream.IStreamMessage, 'request' | 'sentAtTime'>>;
4
- export declare type ResponseMessage = RequiredAndNonNullable<Pick<vertexvis.protobuf.stream.IStreamMessage, 'response' | 'sentAtTime'>>;
5
- export declare type EventMessage = RequiredAndNonNullable<Pick<vertexvis.protobuf.stream.IStreamMessage, 'event' | 'sentAtTime'>>;
6
- export declare type StreamAttributes = vertexvis.protobuf.stream.IStreamAttributes;
7
- export declare type StartStreamPayload = DeepRequired<vertexvis.protobuf.stream.IStartStreamPayload, [
8
- 'frameCorrelationId'
9
- ] | ['frameBackgroundColor'] | ['streamAttributes']>;
10
- export declare type ReconnectPayload = DeepRequired<vertexvis.protobuf.stream.IReconnectPayload, [
11
- 'frameCorrelationId'
12
- ] | ['frameBackgroundColor']>;
13
- export declare type UpdateStreamPayload = vertexvis.protobuf.stream.IUpdateStreamPayload;
14
- export declare type ReplaceCameraPayload = DeepRequired<vertexvis.protobuf.stream.IUpdateCameraPayload, [
15
- 'frameCorrelationId'
16
- ]>;
17
- export declare type UpdateDimensionsPayload = DeepRequired<vertexvis.protobuf.stream.IUpdateDimensionsPayload, [
18
- 'frameCorrelationId'
19
- ]>;
20
- export declare type UpdateCrossSectioningPayload = DeepRequired<vertexvis.protobuf.stream.IUpdateCrossSectioningPayload, [
21
- 'frameCorrelationId'
22
- ]>;
23
- export declare type UpdateModelViewPayload = DeepRequired<vertexvis.protobuf.stream.IUpdateModelViewPayload, [
24
- 'frameCorrelationId'
25
- ]>;
26
- export declare type HitItemsPayload = DeepRequired<vertexvis.protobuf.stream.IHitItemsPayload, [
27
- ]>;
28
- export declare type DrawFramePayload = DeepRequired<vertexvis.protobuf.stream.IDrawFramePayload, [
29
- ]>;
30
- export declare type GracefulReconnectPayload = DeepRequired<vertexvis.protobuf.stream.IGracefulReconnectionPayload, [
31
- ]>;
32
- export declare type SyncTimePayload = DeepRequired<vertexvis.protobuf.stream.ISyncTimePayload, [
33
- ]>;
34
- export declare type RecordPerformancePayload = DeepRequired<vertexvis.protobuf.stream.IRecordPerformancePayload, [
35
- ]>;
36
- export declare type LoadSceneViewStatePayload = DeepRequired<vertexvis.protobuf.stream.ILoadSceneViewStatePayload, [
37
- ]>;
38
- export declare type GetStencilBufferPayload = DeepRequired<vertexvis.protobuf.stream.IGetStencilBufferPayload, [
39
- ]>;
40
- export declare type BeginInteractionPayload = DeepRequired<vertexvis.protobuf.stream.IBeginInteractionPayload, [
41
- 'transform'
42
- ]>;
43
- export declare type UpdateInteractionPayload = DeepRequired<vertexvis.protobuf.stream.IUpdateInteractionPayload, [
44
- 'transform'
45
- ]>;
46
- export declare type EndInteractionPayload = DeepRequired<vertexvis.protobuf.stream.IEndInteractionPayload, [
47
- 'transform'
48
- ]>;
49
- export declare type DrawFrameResult = DeepRequired<Pick<vertexvis.protobuf.stream.IStreamResponse, 'drawFrame'>, ['drawFrame', 'timing', 'receiveToPaintDuration'] | ['drawFrame', 'timing', 'sendToReceiveDuration']>;
50
- export declare type StartStreamResult = DeepRequired<vertexvis.protobuf.stream.IStartStreamResult, [
51
- ]>;
52
- export declare type SyncTimeResult = DeepRequired<vertexvis.protobuf.stream.ISyncTimeResult, [
53
- ]>;
54
- export declare type ReconnectResult = DeepRequired<vertexvis.protobuf.stream.IReconnectResult, [
55
- ]>;
56
- export declare type LoadSceneViewStateResult = DeepRequired<vertexvis.protobuf.stream.ILoadSceneViewStateResult, [
57
- ]>;
58
- export declare type RefreshTokenResult = DeepRequired<vertexvis.protobuf.stream.IRefreshTokenResult, [
59
- ]>;
60
- export declare type ResponseResult = DrawFrameResult;
61
- export declare type ResponseError = vertexvis.protobuf.stream.IError;
62
- export declare type AnimationCompletedEvent = DeepRequired<Pick<vertexvis.protobuf.stream.IAnimationCompletedEvent, 'animationId'>, [
63
- ]>;
1
+ import { vertexvis } from '@vertexvis/frame-streaming-protos';
2
+ import { DeepRequired, RequiredAndNonNullable } from '@vertexvis/utils';
3
+ export type RequestMessage = RequiredAndNonNullable<Pick<vertexvis.protobuf.stream.IStreamMessage, 'request' | 'sentAtTime'>>;
4
+ export type ResponseMessage = RequiredAndNonNullable<Pick<vertexvis.protobuf.stream.IStreamMessage, 'response' | 'sentAtTime'>>;
5
+ export type EventMessage = RequiredAndNonNullable<Pick<vertexvis.protobuf.stream.IStreamMessage, 'event' | 'sentAtTime'>>;
6
+ export type StreamAttributes = vertexvis.protobuf.stream.IStreamAttributes;
7
+ export type StartStreamPayload = DeepRequired<vertexvis.protobuf.stream.IStartStreamPayload, [
8
+ 'frameCorrelationId'
9
+ ] | ['frameBackgroundColor'] | ['streamAttributes']>;
10
+ export type ReconnectPayload = DeepRequired<vertexvis.protobuf.stream.IReconnectPayload, [
11
+ 'frameCorrelationId'
12
+ ] | ['frameBackgroundColor']>;
13
+ export type UpdateStreamPayload = vertexvis.protobuf.stream.IUpdateStreamPayload;
14
+ export type ReplaceCameraPayload = DeepRequired<vertexvis.protobuf.stream.IUpdateCameraPayload, [
15
+ 'frameCorrelationId'
16
+ ]>;
17
+ export type UpdateDimensionsPayload = DeepRequired<vertexvis.protobuf.stream.IUpdateDimensionsPayload, [
18
+ 'frameCorrelationId'
19
+ ]>;
20
+ export type UpdateCrossSectioningPayload = DeepRequired<vertexvis.protobuf.stream.IUpdateCrossSectioningPayload, [
21
+ 'frameCorrelationId'
22
+ ]>;
23
+ export type UpdateModelViewPayload = DeepRequired<vertexvis.protobuf.stream.IUpdateModelViewPayload, [
24
+ 'frameCorrelationId'
25
+ ]>;
26
+ export type HitItemsPayload = DeepRequired<vertexvis.protobuf.stream.IHitItemsPayload, [
27
+ ]>;
28
+ export type DrawFramePayload = DeepRequired<vertexvis.protobuf.stream.IDrawFramePayload, [
29
+ ]>;
30
+ export type GracefulReconnectPayload = DeepRequired<vertexvis.protobuf.stream.IGracefulReconnectionPayload, [
31
+ ]>;
32
+ export type SyncTimePayload = DeepRequired<vertexvis.protobuf.stream.ISyncTimePayload, [
33
+ ]>;
34
+ export type RecordPerformancePayload = DeepRequired<vertexvis.protobuf.stream.IRecordPerformancePayload, [
35
+ ]>;
36
+ export type LoadSceneViewStatePayload = DeepRequired<vertexvis.protobuf.stream.ILoadSceneViewStatePayload, [
37
+ ]>;
38
+ export type GetStencilBufferPayload = DeepRequired<vertexvis.protobuf.stream.IGetStencilBufferPayload, [
39
+ ]>;
40
+ export type BeginInteractionPayload = DeepRequired<vertexvis.protobuf.stream.IBeginInteractionPayload, [
41
+ 'transform'
42
+ ]>;
43
+ export type UpdateInteractionPayload = DeepRequired<vertexvis.protobuf.stream.IUpdateInteractionPayload, [
44
+ 'transform'
45
+ ]>;
46
+ export type EndInteractionPayload = DeepRequired<vertexvis.protobuf.stream.IEndInteractionPayload, [
47
+ 'transform'
48
+ ]>;
49
+ export type DrawFrameResult = DeepRequired<Pick<vertexvis.protobuf.stream.IStreamResponse, 'drawFrame'>, ['drawFrame', 'timing', 'receiveToPaintDuration'] | ['drawFrame', 'timing', 'sendToReceiveDuration']>;
50
+ export type StartStreamResult = DeepRequired<vertexvis.protobuf.stream.IStartStreamResult, [
51
+ ]>;
52
+ export type SyncTimeResult = DeepRequired<vertexvis.protobuf.stream.ISyncTimeResult, [
53
+ ]>;
54
+ export type ReconnectResult = DeepRequired<vertexvis.protobuf.stream.IReconnectResult, [
55
+ ]>;
56
+ export type LoadSceneViewStateResult = DeepRequired<vertexvis.protobuf.stream.ILoadSceneViewStateResult, [
57
+ ]>;
58
+ export type RefreshTokenResult = DeepRequired<vertexvis.protobuf.stream.IRefreshTokenResult, [
59
+ ]>;
60
+ export type ResponseResult = DrawFrameResult;
61
+ export type ResponseError = vertexvis.protobuf.stream.IError;
62
+ export type AnimationCompletedEvent = DeepRequired<Pick<vertexvis.protobuf.stream.IAnimationCompletedEvent, 'animationId'>, [
63
+ ]>;
@@ -1,9 +1,9 @@
1
- import { vertexvis } from '@vertexvis/frame-streaming-protos';
2
- export declare function validateBoundingBox(boundingBox: vertexvis.protobuf.core.IBoundingBox3f): boolean;
3
- export declare function validateCamera(camera: vertexvis.protobuf.stream.ICamera): boolean;
4
- export declare function validatePerspectiveCamera(camera: vertexvis.protobuf.stream.IPerspectiveCamera): boolean;
5
- export declare function validateOrthographicCamera(camera: vertexvis.protobuf.stream.IOrthographicCamera): boolean;
6
- export declare function validateDimensions(dimensions: vertexvis.protobuf.stream.IDimensions): boolean;
7
- export declare function validateNumber(number: number): boolean;
8
- export declare function validatePoint(point: vertexvis.protobuf.stream.IPoint): boolean;
9
- export declare function validateVector(vector: vertexvis.protobuf.core.IVector3f, verifyNonZeroLength: boolean): boolean;
1
+ import { vertexvis } from '@vertexvis/frame-streaming-protos';
2
+ export declare function validateBoundingBox(boundingBox: vertexvis.protobuf.core.IBoundingBox3f): boolean;
3
+ export declare function validateCamera(camera: vertexvis.protobuf.stream.ICamera): boolean;
4
+ export declare function validatePerspectiveCamera(camera: vertexvis.protobuf.stream.IPerspectiveCamera): boolean;
5
+ export declare function validateOrthographicCamera(camera: vertexvis.protobuf.stream.IOrthographicCamera): boolean;
6
+ export declare function validateDimensions(dimensions: vertexvis.protobuf.stream.IDimensions): boolean;
7
+ export declare function validateNumber(number: number): boolean;
8
+ export declare function validatePoint(point: vertexvis.protobuf.stream.IPoint): boolean;
9
+ export declare function validateVector(vector: vertexvis.protobuf.core.IVector3f, verifyNonZeroLength: boolean): boolean;
@@ -1,28 +1,28 @@
1
- import { Disposable } from '@vertexvis/utils';
2
- import { ConnectionDescriptor } from './connection';
3
- export declare type WebSocketSendData = string | ArrayBufferLike | Blob | ArrayBufferView;
4
- export declare type MessageHandler = (event: MessageEvent) => void;
5
- export declare type CloseHandler = (event: CloseEvent) => void;
6
- export interface WebSocketClient {
7
- close(): void;
8
- connect(descriptor: ConnectionDescriptor): Promise<void>;
9
- onMessage(handler: MessageHandler): Disposable;
10
- onClose(handler: CloseHandler): Disposable;
11
- send(data: WebSocketSendData): void;
12
- }
13
- export declare class WebSocketClientImpl implements WebSocketClient {
14
- private webSocket?;
15
- private listeners;
16
- private onMessageDispatcher;
17
- private onCloseDispatcher;
18
- close(): void;
19
- connect(descriptor: ConnectionDescriptor): Promise<void>;
20
- onMessage(handler: MessageHandler): Disposable;
21
- onClose(handler: CloseHandler): Disposable;
22
- send(data: WebSocketSendData): void;
23
- private addWebSocketListeners;
24
- private removeWebSocketListeners;
25
- private handleMessage;
26
- private handleClose;
27
- private onOpen;
28
- }
1
+ import { Disposable } from '@vertexvis/utils';
2
+ import { ConnectionDescriptor } from './connection';
3
+ export type WebSocketSendData = string | ArrayBufferLike | Blob | ArrayBufferView;
4
+ export type MessageHandler = (event: MessageEvent) => void;
5
+ export type CloseHandler = (event: CloseEvent) => void;
6
+ export interface WebSocketClient {
7
+ close(): void;
8
+ connect(descriptor: ConnectionDescriptor): Promise<void>;
9
+ onMessage(handler: MessageHandler): Disposable;
10
+ onClose(handler: CloseHandler): Disposable;
11
+ send(data: WebSocketSendData): void;
12
+ }
13
+ export declare class WebSocketClientImpl implements WebSocketClient {
14
+ private webSocket?;
15
+ private listeners;
16
+ private onMessageDispatcher;
17
+ private onCloseDispatcher;
18
+ close(): void;
19
+ connect(descriptor: ConnectionDescriptor): Promise<void>;
20
+ onMessage(handler: MessageHandler): Disposable;
21
+ onClose(handler: CloseHandler): Disposable;
22
+ send(data: WebSocketSendData): void;
23
+ private addWebSocketListeners;
24
+ private removeWebSocketListeners;
25
+ private handleMessage;
26
+ private handleClose;
27
+ private onOpen;
28
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vertexvis/stream-api",
3
- "version": "0.24.5",
3
+ "version": "1.0.0-canary.0",
4
4
  "description": "A websocket client for interacting with Vertex's stream API.",
5
5
  "license": "MIT",
6
6
  "author": "Vertex Developers <support@vertexvis.com> (https://developer.vertexvis.com)",
@@ -12,9 +12,18 @@
12
12
  "bugs": {
13
13
  "url": "https://github.com/Vertexvis/vertex-web-sdk/issues"
14
14
  },
15
- "main": "./dist/bundle.cjs.js",
16
- "module": "./dist/bundle.esm.js",
17
- "typings": "./dist/index.d.ts",
15
+ "type": "module",
16
+ "main": "./dist/bundle.cjs",
17
+ "module": "./dist/bundle.js",
18
+ "types": "./dist/index.d.ts",
19
+ "exports": {
20
+ ".": {
21
+ "types": "./dist/index.d.ts",
22
+ "import": "./dist/bundle.js",
23
+ "require": "./dist/bundle.cjs",
24
+ "default": "./dist/bundle.js"
25
+ }
26
+ },
18
27
  "publishConfig": {
19
28
  "registry": "https://registry.npmjs.org",
20
29
  "access": "public"
@@ -31,7 +40,7 @@
31
40
  "format": "yarn lint --fix",
32
41
  "lint": "eslint --ext .ts,.tsx,.js,.jsx --ignore-path ../../.gitignore .",
33
42
  "start": "jest --watch",
34
- "test": "jest",
43
+ "test": "jest --runInBand",
35
44
  "test:ci": "yarn test:coverage",
36
45
  "test:coverage": "yarn test --coverage"
37
46
  },
@@ -40,24 +49,25 @@
40
49
  "long": "^5.3.1"
41
50
  },
42
51
  "devDependencies": {
43
- "@types/jest": "^27.5.1",
52
+ "@types/jest": "^29.5.14",
44
53
  "@vertexvis/eslint-config-vertexvis-typescript": "^0.5.0",
45
54
  "@vertexvis/jest-config-vertexvis": "^0.5.4",
46
- "@vertexvis/utils": "0.24.5",
47
- "@vertexwebsdk/build": "0.24.5",
55
+ "@vertexvis/utils": "1.0.0-canary.0",
56
+ "@vertexwebsdk/build": "1.0.0-canary.0",
48
57
  "eslint": "^8.57.1",
49
- "jest": "^27.5.1",
50
- "jest-cli": "^27.5.1",
58
+ "jest": "^29.5.14",
59
+ "jest-cli": "^29.5.14",
60
+ "jest-environment-jsdom": "^29.7.0",
51
61
  "protobufjs": "^7.5.4",
52
62
  "rollup": "^2.80.0",
53
- "ts-jest": "^27.1.4",
54
- "tslib": "^2.1.0",
55
- "typescript": "^4.5.4"
63
+ "ts-jest": "^29.4.9",
64
+ "tslib": "^2.4.0",
65
+ "typescript": "^5.2.0"
56
66
  },
57
67
  "peerDependencies": {
58
68
  "@vertexvis/utils": ">=0.23.0",
59
69
  "protobufjs": ">=6.9.0 <8.0.0",
60
- "tslib": ">=2.1.0"
70
+ "tslib": ">=2.4.0"
61
71
  },
62
- "gitHead": "386c9e6d3c991c81e431e1d96a2c532d90312ec6"
72
+ "gitHead": "30f7f54aa881ded109ea285d2838ee49754abcfe"
63
73
  }