@3deye-toolkit/react-event-search 0.0.4 → 0.0.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.
|
@@ -2,7 +2,6 @@ import { BehaviorSubject } from 'rxjs';
|
|
|
2
2
|
import crossfilter from 'crossfilter2';
|
|
3
3
|
import type { IReactionDisposer } from 'mobx';
|
|
4
4
|
import { Observable } from 'rxjs';
|
|
5
|
-
import { default as React_2 } from 'react';
|
|
6
5
|
import { Subject } from 'rxjs';
|
|
7
6
|
import { Subscription } from 'rxjs';
|
|
8
7
|
import { z } from 'zod';
|
|
@@ -30,34 +29,7 @@ declare class AccountStore extends ApiStore {
|
|
|
30
29
|
updateCustomPreferences: (preferences: Partial<Preferences>) => Observable<RawUser>;
|
|
31
30
|
setDefaultGroup(groupId: number): Observable<RawUser> | undefined;
|
|
32
31
|
get preferences(): Preferences;
|
|
33
|
-
getPreference: <T extends
|
|
34
|
-
utc: boolean;
|
|
35
|
-
hour12: boolean;
|
|
36
|
-
startOfWeek: "monday" | "sunday";
|
|
37
|
-
defaultVideoResizeMode?: VideoResizeMode | undefined;
|
|
38
|
-
camerasResizeMode?: [number, VideoResizeMode][] | undefined;
|
|
39
|
-
fisheyeCameras?: [number, [number, number, number] | {
|
|
40
|
-
params: {
|
|
41
|
-
x: number;
|
|
42
|
-
y: number;
|
|
43
|
-
r: number;
|
|
44
|
-
s: number;
|
|
45
|
-
};
|
|
46
|
-
positions?: [{
|
|
47
|
-
lat: number;
|
|
48
|
-
lon: number;
|
|
49
|
-
fov: number;
|
|
50
|
-
}, {
|
|
51
|
-
lat: number;
|
|
52
|
-
lon: number;
|
|
53
|
-
fov: number;
|
|
54
|
-
}, {
|
|
55
|
-
lat: number;
|
|
56
|
-
lon: number;
|
|
57
|
-
fov: number;
|
|
58
|
-
}] | undefined;
|
|
59
|
-
} | null][] | undefined;
|
|
60
|
-
}[T];
|
|
32
|
+
getPreference: <T extends keyof Preferences>(key: T) => Preferences[T];
|
|
61
33
|
private retryOnVersionMismatch;
|
|
62
34
|
}
|
|
63
35
|
|
|
@@ -141,6 +113,18 @@ declare abstract class ApiStore {
|
|
|
141
113
|
dispose(): void;
|
|
142
114
|
}
|
|
143
115
|
|
|
116
|
+
declare interface App {
|
|
117
|
+
cameras: CamerasStore;
|
|
118
|
+
archives: ArchivesStore;
|
|
119
|
+
events: EventsStore;
|
|
120
|
+
eventSchema: EventSchemaStore;
|
|
121
|
+
thumbnails: ThumbnailsStore;
|
|
122
|
+
account: AccountStore;
|
|
123
|
+
notification: NotificationService;
|
|
124
|
+
auth: Auth;
|
|
125
|
+
api: Api<IApi> & IApi;
|
|
126
|
+
}
|
|
127
|
+
|
|
144
128
|
/**
|
|
145
129
|
* @alpha
|
|
146
130
|
*/
|
|
@@ -288,7 +272,7 @@ declare class Camera {
|
|
|
288
272
|
get supportsWebRTC(): boolean;
|
|
289
273
|
constructor(raw: RawCamera);
|
|
290
274
|
update: (raw: RawCamera) => void;
|
|
291
|
-
can: (permission: CameraPermissions) =>
|
|
275
|
+
can: (permission: CameraPermissions) => boolean;
|
|
292
276
|
}
|
|
293
277
|
|
|
294
278
|
declare interface CameraAddress {
|
|
@@ -381,44 +365,6 @@ declare interface ChunksQuery {
|
|
|
381
365
|
to: Date;
|
|
382
366
|
}
|
|
383
367
|
|
|
384
|
-
declare class Clip {
|
|
385
|
-
id: number;
|
|
386
|
-
cameraId: number;
|
|
387
|
-
name: string;
|
|
388
|
-
startTime: Date;
|
|
389
|
-
endTime: Date;
|
|
390
|
-
type: 'Archive' | 'Timelaps' | 'Timelaps to do';
|
|
391
|
-
createdAt: Date;
|
|
392
|
-
/**
|
|
393
|
-
* clip duration in seconds
|
|
394
|
-
*/
|
|
395
|
-
duration: number;
|
|
396
|
-
chunks: ArchiveChunk[];
|
|
397
|
-
clipUrl?: string;
|
|
398
|
-
description: string;
|
|
399
|
-
version: string;
|
|
400
|
-
raw: RawClip;
|
|
401
|
-
isDownloading: boolean;
|
|
402
|
-
archives?: ArchiveChunk[];
|
|
403
|
-
constructor(raw: RawClip);
|
|
404
|
-
get isTimelapse(): boolean;
|
|
405
|
-
update(raw: RawClip): void;
|
|
406
|
-
}
|
|
407
|
-
|
|
408
|
-
declare interface ClipParams {
|
|
409
|
-
cameraId: number;
|
|
410
|
-
startTime: Date;
|
|
411
|
-
endTime: Date;
|
|
412
|
-
name: string;
|
|
413
|
-
description?: string;
|
|
414
|
-
}
|
|
415
|
-
|
|
416
|
-
declare interface ClipsQuery {
|
|
417
|
-
cameraId: number;
|
|
418
|
-
from: Date;
|
|
419
|
-
to: Date;
|
|
420
|
-
}
|
|
421
|
-
|
|
422
368
|
declare interface Connection {
|
|
423
369
|
state: CONNECTION_STATE;
|
|
424
370
|
stop: () => void;
|
|
@@ -465,8 +411,8 @@ declare type DetectedObject = Car | LicensePlate | {
|
|
|
465
411
|
};
|
|
466
412
|
|
|
467
413
|
declare interface DetectedObjectOption {
|
|
468
|
-
|
|
469
|
-
|
|
414
|
+
value: string;
|
|
415
|
+
label: string;
|
|
470
416
|
color: string;
|
|
471
417
|
highlightColor: string;
|
|
472
418
|
type: 'detectedObject';
|
|
@@ -490,7 +436,7 @@ declare class EventSchemaStore extends ApiStore {
|
|
|
490
436
|
dispose(): void;
|
|
491
437
|
}
|
|
492
438
|
|
|
493
|
-
declare const EventSearch:
|
|
439
|
+
declare const EventSearch: React.FC<Props>;
|
|
494
440
|
export default EventSearch;
|
|
495
441
|
|
|
496
442
|
declare class EventSearchStore extends ApiStore {
|
|
@@ -499,7 +445,6 @@ declare class EventSearchStore extends ApiStore {
|
|
|
499
445
|
private account;
|
|
500
446
|
private notification;
|
|
501
447
|
private heatmaps?;
|
|
502
|
-
api: ExtendedApi;
|
|
503
448
|
disposables: (IReactionDisposer | Subscription)[];
|
|
504
449
|
readonly analyticsEnabled: boolean;
|
|
505
450
|
cameraId: number | null;
|
|
@@ -562,7 +507,6 @@ declare class EventSearchStore extends ApiStore {
|
|
|
562
507
|
Bottom: number;
|
|
563
508
|
};
|
|
564
509
|
afterInit(): void;
|
|
565
|
-
dispose(): void;
|
|
566
510
|
}
|
|
567
511
|
|
|
568
512
|
declare class EventsLoader extends ApiStore {
|
|
@@ -595,7 +539,7 @@ declare class EventsLoader extends ApiStore {
|
|
|
595
539
|
objectIdx: number;
|
|
596
540
|
}[]);
|
|
597
541
|
flushUpdates: () => void;
|
|
598
|
-
setLiveUpdateMode: (mode:
|
|
542
|
+
setLiveUpdateMode: (mode: "manual" | "auto" | "disabled") => void;
|
|
599
543
|
load: () => void;
|
|
600
544
|
reload: () => void;
|
|
601
545
|
loadMore: () => void;
|
|
@@ -713,12 +657,6 @@ declare class EventsStore extends ApiStore {
|
|
|
713
657
|
|
|
714
658
|
declare type EventType = 'Motion' | 'Tampering' | 'PanTiltZoom' | 'CrossLine' | 'Intrusion' | 'LicensePlate' | 'FaceDetection' | 'Audio' | 'Analytic' | 'SpeedDetection' | 'PeopleCounter' | 'Temperature' | 'PoS' | 'GPS' | 'DigitalInput' | 'Normal' | 'Suspicious' | 'Loitering' | 'Vandalism' | 'Trespass' | 'Emergency' | 'LifeInDanger' | 'ErroneousAlert' | 'Misidentification' | 'Fire' | 'MedicalDuress' | 'HoldUp' | 'CheckIn' | 'CheckOut' | 'ClockIn' | 'ClockOut' | 'ParkingStart' | 'ParkingEnd' | 'ParkingViolation' | 'GateAccess' | 'DoorAccess' | 'TemperatureCheck' | 'IDCheck' | 'PPECheck' | 'WelfareCheck' | 'VehicleBreakIn' | 'DrugTrafficking' | 'Assault' | 'PackageDelivery' | 'Uncategorized';
|
|
715
659
|
|
|
716
|
-
declare type ExtendedApi = Api<IApi> & IApi & {
|
|
717
|
-
archives: {
|
|
718
|
-
GetLongLastingTimeLaps: (cameraId: number) => Observable<ApiResult<RawClip>>;
|
|
719
|
-
};
|
|
720
|
-
};
|
|
721
|
-
|
|
722
660
|
declare type ExtractHubs<T, K> = {
|
|
723
661
|
[P in keyof ExtractMethods<T, K>]: ExtractMethods<T[P], K[P]>;
|
|
724
662
|
};
|
|
@@ -825,7 +763,7 @@ declare interface IApi {
|
|
|
825
763
|
UpdateCamgroup: (params: any) => Observable<ApiResult<RawCamgroup>>;
|
|
826
764
|
};
|
|
827
765
|
sound: {
|
|
828
|
-
GetPushSoundServiceUrl: (id: number) => Observable<
|
|
766
|
+
GetPushSoundServiceUrl: (id: number) => Observable<ApiResult<string>>;
|
|
829
767
|
};
|
|
830
768
|
thumbnails: {
|
|
831
769
|
GetThumbnailsInfo: (params: {
|
|
@@ -857,6 +795,7 @@ declare interface InitParams {
|
|
|
857
795
|
widgetId: string;
|
|
858
796
|
widgetToken: string;
|
|
859
797
|
};
|
|
798
|
+
clientId?: string;
|
|
860
799
|
tokenStorage?: Storage_2;
|
|
861
800
|
tokenStorageKey?: string;
|
|
862
801
|
apiUrl?: string;
|
|
@@ -877,42 +816,6 @@ declare type IntervalState = {
|
|
|
877
816
|
request: Observable<Thumbnail[]>;
|
|
878
817
|
};
|
|
879
818
|
|
|
880
|
-
declare class LibraryStore extends ApiStore {
|
|
881
|
-
private notification?;
|
|
882
|
-
data: crossfilter.Crossfilter<Clip>;
|
|
883
|
-
clipsByCameraId: crossfilter.Dimension<Clip, number>;
|
|
884
|
-
clipsByCreationDate: crossfilter.Dimension<Clip, number>;
|
|
885
|
-
clipsByStart: crossfilter.Dimension<Clip, number>;
|
|
886
|
-
clipsByEnd: crossfilter.Dimension<Clip, number>;
|
|
887
|
-
clipsByType: crossfilter.Dimension<Clip, string>;
|
|
888
|
-
clipsById: crossfilter.Dimension<Clip, number>;
|
|
889
|
-
clipsMap: Map<number, Clip>;
|
|
890
|
-
loaded: boolean;
|
|
891
|
-
loading: boolean;
|
|
892
|
-
updates: number;
|
|
893
|
-
constructor(notification?: NotificationService | undefined);
|
|
894
|
-
/**
|
|
895
|
-
* Fetches all clips from the server and updates the store
|
|
896
|
-
*/
|
|
897
|
-
fetch(): Observable<Clip[]>;
|
|
898
|
-
add: (clips: Clip[]) => void;
|
|
899
|
-
addOrUpdate: (clips: Clip[]) => void;
|
|
900
|
-
removeFromStore: (clips: {
|
|
901
|
-
id: number;
|
|
902
|
-
}[]) => void;
|
|
903
|
-
getClips({ cameraId, from, to }: ClipsQuery): Clip[];
|
|
904
|
-
getTimelapses(): Clip[];
|
|
905
|
-
getRecentlyAdded(): Clip[];
|
|
906
|
-
all(): Clip[];
|
|
907
|
-
getOnly(type: 'clips' | 'timelapses' | null, sortDirection?: 'asc' | 'desc'): Clip[];
|
|
908
|
-
createClip: (data: ClipParams) => void;
|
|
909
|
-
createTimelapse: (data: TimelapseParams) => void;
|
|
910
|
-
rename(clip: Clip, name: string): void;
|
|
911
|
-
delete(clip: Clip): void;
|
|
912
|
-
protected afterInit(): void;
|
|
913
|
-
dispose(): void;
|
|
914
|
-
}
|
|
915
|
-
|
|
916
819
|
declare interface LicensePlate {
|
|
917
820
|
Type: 'LicensePlate';
|
|
918
821
|
Value: string;
|
|
@@ -988,20 +891,11 @@ declare interface PendingRequest_2 {
|
|
|
988
891
|
request: Observable<Thumbnail[]>;
|
|
989
892
|
}
|
|
990
893
|
|
|
991
|
-
declare enum PREFERENCES {
|
|
992
|
-
DEFAULT_VIDEO_RESIZE_MODE = "defaultVideoResizeMode",
|
|
993
|
-
RESIZE_MODE_PER_CAMERA = "camerasResizeMode",
|
|
994
|
-
FISHEYE_CAMERAS = "fisheyeCameras",
|
|
995
|
-
UTC = "utc",
|
|
996
|
-
HOUR12 = "hour12",
|
|
997
|
-
START_OF_WEEK = "startOfWeek"
|
|
998
|
-
}
|
|
999
|
-
|
|
1000
894
|
declare type Preferences = z.infer<typeof preferencesSchema>;
|
|
1001
895
|
|
|
1002
896
|
declare const preferencesSchema: z.ZodObject<{
|
|
1003
|
-
defaultVideoResizeMode: z.ZodOptional<z.
|
|
1004
|
-
camerasResizeMode: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.
|
|
897
|
+
defaultVideoResizeMode: z.ZodOptional<z.ZodEnum<["fill", "contain"]>>;
|
|
898
|
+
camerasResizeMode: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodEnum<["fill", "contain"]>], null>, "many">>;
|
|
1005
899
|
fisheyeCameras: z.ZodOptional<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>, z.ZodObject<{
|
|
1006
900
|
params: z.ZodObject<{
|
|
1007
901
|
x: z.ZodNumber;
|
|
@@ -1011,13 +905,13 @@ declare const preferencesSchema: z.ZodObject<{
|
|
|
1011
905
|
}, "strip", z.ZodTypeAny, {
|
|
1012
906
|
x: number;
|
|
1013
907
|
y: number;
|
|
1014
|
-
r: number;
|
|
1015
908
|
s: number;
|
|
909
|
+
r: number;
|
|
1016
910
|
}, {
|
|
1017
911
|
x: number;
|
|
1018
912
|
y: number;
|
|
1019
|
-
r: number;
|
|
1020
913
|
s: number;
|
|
914
|
+
r: number;
|
|
1021
915
|
}>;
|
|
1022
916
|
positions: z.ZodOptional<z.ZodTuple<[z.ZodObject<{
|
|
1023
917
|
lat: z.ZodNumber;
|
|
@@ -1060,8 +954,8 @@ declare const preferencesSchema: z.ZodObject<{
|
|
|
1060
954
|
params: {
|
|
1061
955
|
x: number;
|
|
1062
956
|
y: number;
|
|
1063
|
-
r: number;
|
|
1064
957
|
s: number;
|
|
958
|
+
r: number;
|
|
1065
959
|
};
|
|
1066
960
|
positions?: [{
|
|
1067
961
|
lat: number;
|
|
@@ -1080,8 +974,8 @@ declare const preferencesSchema: z.ZodObject<{
|
|
|
1080
974
|
params: {
|
|
1081
975
|
x: number;
|
|
1082
976
|
y: number;
|
|
1083
|
-
r: number;
|
|
1084
977
|
s: number;
|
|
978
|
+
r: number;
|
|
1085
979
|
};
|
|
1086
980
|
positions?: [{
|
|
1087
981
|
lat: number;
|
|
@@ -1104,14 +998,14 @@ declare const preferencesSchema: z.ZodObject<{
|
|
|
1104
998
|
utc: boolean;
|
|
1105
999
|
hour12: boolean;
|
|
1106
1000
|
startOfWeek: "monday" | "sunday";
|
|
1107
|
-
defaultVideoResizeMode?:
|
|
1108
|
-
camerasResizeMode?: [number,
|
|
1109
|
-
fisheyeCameras?: [number,
|
|
1001
|
+
defaultVideoResizeMode?: "contain" | "fill" | undefined;
|
|
1002
|
+
camerasResizeMode?: [number, "contain" | "fill"][] | undefined;
|
|
1003
|
+
fisheyeCameras?: [number, {
|
|
1110
1004
|
params: {
|
|
1111
1005
|
x: number;
|
|
1112
1006
|
y: number;
|
|
1113
|
-
r: number;
|
|
1114
1007
|
s: number;
|
|
1008
|
+
r: number;
|
|
1115
1009
|
};
|
|
1116
1010
|
positions?: [{
|
|
1117
1011
|
lat: number;
|
|
@@ -1126,16 +1020,16 @@ declare const preferencesSchema: z.ZodObject<{
|
|
|
1126
1020
|
lon: number;
|
|
1127
1021
|
fov: number;
|
|
1128
1022
|
}] | undefined;
|
|
1129
|
-
} | null][] | undefined;
|
|
1023
|
+
} | [number, number, number] | null][] | undefined;
|
|
1130
1024
|
}, {
|
|
1131
|
-
defaultVideoResizeMode?:
|
|
1132
|
-
camerasResizeMode?: [number,
|
|
1133
|
-
fisheyeCameras?: [number,
|
|
1025
|
+
defaultVideoResizeMode?: "contain" | "fill" | undefined;
|
|
1026
|
+
camerasResizeMode?: [number, "contain" | "fill"][] | undefined;
|
|
1027
|
+
fisheyeCameras?: [number, {
|
|
1134
1028
|
params: {
|
|
1135
1029
|
x: number;
|
|
1136
1030
|
y: number;
|
|
1137
|
-
r: number;
|
|
1138
1031
|
s: number;
|
|
1032
|
+
r: number;
|
|
1139
1033
|
};
|
|
1140
1034
|
positions?: [{
|
|
1141
1035
|
lat: number;
|
|
@@ -1150,7 +1044,7 @@ declare const preferencesSchema: z.ZodObject<{
|
|
|
1150
1044
|
lon: number;
|
|
1151
1045
|
fov: number;
|
|
1152
1046
|
}] | undefined;
|
|
1153
|
-
} | null][] | undefined;
|
|
1047
|
+
} | [number, number, number] | null][] | undefined;
|
|
1154
1048
|
utc?: boolean | undefined;
|
|
1155
1049
|
hour12?: boolean | undefined;
|
|
1156
1050
|
startOfWeek?: "monday" | "sunday" | undefined;
|
|
@@ -1482,13 +1376,8 @@ declare class ThumbnailsStore extends ApiStore {
|
|
|
1482
1376
|
}) => Thumbnail;
|
|
1483
1377
|
}
|
|
1484
1378
|
|
|
1485
|
-
declare type TimelapseParams = ClipParams & {
|
|
1486
|
-
duration: number;
|
|
1487
|
-
};
|
|
1488
|
-
|
|
1489
1379
|
declare class Token {
|
|
1490
1380
|
accessToken: string;
|
|
1491
|
-
accessTokenExpires: Date;
|
|
1492
1381
|
accessTokenIssued: Date;
|
|
1493
1382
|
clientId: string;
|
|
1494
1383
|
expiresIn: number;
|
|
@@ -1502,9 +1391,11 @@ declare class Token {
|
|
|
1502
1391
|
widgetToken?: string;
|
|
1503
1392
|
json: RawToken;
|
|
1504
1393
|
constructor(raw: RawToken);
|
|
1394
|
+
private _exp;
|
|
1395
|
+
get accessTokenExpires(): Date;
|
|
1505
1396
|
}
|
|
1506
1397
|
|
|
1507
|
-
declare class ToolkitApp {
|
|
1398
|
+
declare class ToolkitApp implements App {
|
|
1508
1399
|
readonly name: string;
|
|
1509
1400
|
initialized: boolean;
|
|
1510
1401
|
cameras: CamerasStore;
|
|
@@ -1514,13 +1405,12 @@ declare class ToolkitApp {
|
|
|
1514
1405
|
thumbnails: ThumbnailsStore;
|
|
1515
1406
|
account: AccountStore;
|
|
1516
1407
|
notification: NotificationService;
|
|
1517
|
-
library: LibraryStore;
|
|
1518
1408
|
auth: Auth;
|
|
1519
1409
|
api: Api<IApi> & IApi;
|
|
1520
1410
|
private disposables;
|
|
1521
1411
|
private tokenUpdateReactions;
|
|
1522
1412
|
constructor(name: string);
|
|
1523
|
-
init({ token, tokenStorage: storage, tokenStorageKey, apiUrl, tokenServiceUrl }: InitParams, name?: string): ToolkitApp;
|
|
1413
|
+
init({ clientId, token, tokenStorage: storage, tokenStorageKey, apiUrl, tokenServiceUrl }: InitParams, name?: string): ToolkitApp;
|
|
1524
1414
|
dispose: () => void;
|
|
1525
1415
|
/**
|
|
1526
1416
|
* Adds a reaction to token changes
|
|
@@ -1533,9 +1423,4 @@ declare class ToolkitApp {
|
|
|
1533
1423
|
|
|
1534
1424
|
declare type User = RawUser;
|
|
1535
1425
|
|
|
1536
|
-
declare enum VideoResizeMode {
|
|
1537
|
-
Fit = "contain",
|
|
1538
|
-
Stretch = "fill"
|
|
1539
|
-
}
|
|
1540
|
-
|
|
1541
1426
|
export { }
|