@evercam/ui 0.0.63-preview-admin-deployment-c5e8d6e1c → 0.0.63-preview-fix-ios-fullscreen-bug-d8b40df4d

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
@@ -44,5 +44,4 @@ export default {
44
44
  You can preview the components and their stories by running the [Histoire](https://histoire.dev) sever:
45
45
 
46
46
  `yarn story:dev`
47
- .............
48
- //
47
+ ............
@@ -278,6 +278,10 @@
278
278
  "type": "object",
279
279
  "description": ""
280
280
  },
281
+ "ETimeline/x-axes-config": {
282
+ "type": "object",
283
+ "description": ""
284
+ },
281
285
  "ETimeline/dark": {
282
286
  "type": "boolean",
283
287
  "description": "",
@@ -354,6 +358,16 @@
354
358
  "description": "",
355
359
  "default": 18
356
360
  },
361
+ "ETimeline/min-zoom": {
362
+ "type": "number",
363
+ "description": "",
364
+ "default": 0.0001
365
+ },
366
+ "ETimeline/max-zoom": {
367
+ "type": "number",
368
+ "description": "",
369
+ "default": 850000
370
+ },
357
371
  "ETimeline/min-date": {
358
372
  "type": "string",
359
373
  "description": ""
@@ -949,19 +963,5 @@
949
963
  "type": "boolean",
950
964
  "description": "",
951
965
  "default": false
952
- },
953
- "EChat/dark": {
954
- "type": "boolean",
955
- "description": "",
956
- "default": false
957
- },
958
- "EChat/messages": {
959
- "type": "array",
960
- "description": ""
961
- },
962
- "EChat/user": {
963
- "type": "string",
964
- "description": "",
965
- "default": "You"
966
966
  }
967
967
  }
@@ -1,17 +1,21 @@
1
1
  import * as d3 from "d3";
2
+ import { D3ZoomEvent } from "d3";
2
3
  import Vue from "vue";
3
- import { TimelineCountEvent, TimelineEvent, TimelineEventsByType, TimelineEventsGroup, TimelineInterval, TimelineIntervalChangeTrigger, TimelineMarker, TimelinePrecision, Timestamp, TimelineDomain } from '../types';
4
+ import { TimelineAxesConfig, TimelineAxis, TimelineCountEvent, TimelineEvent, TimelineEventsByType, TimelineEventsGroup, TimelineInterval, TimelineIntervalChangeTrigger, TimelineMarker, TimelinePrecision, TimelineTicksConfig, Timestamp } from '../types';
4
5
  declare const _default: import("vue/types/vue").ExtendedVue<Vue<Record<string, any>, Record<string, any>, never, never, (event: string, ...args: any[]) => Vue<Record<string, any>, Record<string, any>, never, never, any>>, {
5
- mainContainer: HTMLElement;
6
6
  tooltip: HTMLElement;
7
7
  cursor: HTMLElement;
8
8
  timeline: HTMLElement;
9
9
  wrapperDiv: HTMLElement;
10
10
  selectedTimestampCursor: HTMLElement;
11
- svgElement: SVGSVGElement;
12
11
  svg: d3.Selection<SVGSVGElement, any, any, any>;
12
+ axesContainer: d3.Selection<SVGGElement, any, any, any>;
13
+ xAxes: Record<TimelineAxis, d3.Axis<Date>>;
13
14
  timeScale: d3.ScaleTime<any, any, unknown>;
15
+ initialTimeScale: d3.ScaleTime<any, any, unknown>;
14
16
  currentTimeScaleDensity: number;
17
+ zoomBehavior: d3.ZoomBehavior<SVGSVGElement, unknown>;
18
+ isMouseDown: boolean;
15
19
  axisHeight: number;
16
20
  isHoveringEvent: boolean;
17
21
  hoveredEvent: TimelineEvent;
@@ -20,6 +24,14 @@ declare const _default: import("vue/types/vue").ExtendedVue<Vue<Record<string, a
20
24
  eventTooltipStyle: {};
21
25
  hoveredEventType: string;
22
26
  utcOffset: number;
27
+ lastTransform: {
28
+ x: number;
29
+ k: number;
30
+ };
31
+ transformDiff: {
32
+ translation: number;
33
+ scale: number;
34
+ };
23
35
  yScale: d3.ScaleLinear<any, any, never>;
24
36
  hoveredCounts: {
25
37
  count: number;
@@ -48,10 +60,8 @@ declare const _default: import("vue/types/vue").ExtendedVue<Vue<Record<string, a
48
60
  initialMarkerDragMouseOffset: number;
49
61
  selectedMilestoneId: any;
50
62
  isInitialized: boolean;
51
- transformDiff: {
52
- translation: number;
53
- scale: number;
54
- };
63
+ lastValidTransform: d3.ZoomTransform;
64
+ lastPanTransform: d3.ZoomTransform;
55
65
  isZoomingInterval: boolean;
56
66
  defs: {
57
67
  transparencyGradient: string;
@@ -60,34 +70,45 @@ declare const _default: import("vue/types/vue").ExtendedVue<Vue<Record<string, a
60
70
  stripedPattern: string;
61
71
  };
62
72
  hoveredMilestone: TimelineEvent;
63
- focusedDomain: TimelineDomain;
64
- transitionDuration: number;
65
- focusedTimestamp: string | Date;
66
73
  }, {
67
74
  updateTimeline(): void;
68
- initTimeline(): void;
75
+ initTimeline(startDate?: string, endDate?: string): void;
69
76
  initRefs(): void;
70
77
  initOrUpdateSvg(): void;
71
78
  initOrUpdateDefs(): void;
72
79
  initUtcOffset(): void;
80
+ initTimeScale(start?: string, end?: string): void;
81
+ initXAxes(): void;
82
+ updateXAxes(): void;
73
83
  initYScale(): void;
74
84
  updateYScale(): void;
85
+ initZoomBehavior(): void;
75
86
  zoomToFitMarkers(): void;
87
+ zoomToTargetInterval(start?: string | number, end?: string | number): void;
88
+ translateIntervalIntoView(minTimestamp: number, maxTimestamp: number, scaleFactor: number): void;
76
89
  initSelectedTimestampCursor(): void;
77
90
  updateMarkers(): void;
78
91
  selectOrAppend({ parent, targetId, targetType, }: {
79
- parent: d3.Selection<any, any, any, any>;
80
- targetId: string;
81
- targetType: string;
82
- }): d3.Selection<d3.BaseType, any, any, any>;
92
+ parent: any;
93
+ selector: string;
94
+ nodeType: string;
95
+ }): any;
96
+ updateAndRedrawTimeline(): void;
83
97
  clearTimeline(): void;
84
98
  repositionSelectedTimestampCursor(): void;
85
99
  updateCurrentTimeScaleDensity(): void;
86
100
  registerEventsListeners(): void;
87
101
  emitVisibleInterval(trigger: TimelineIntervalChangeTrigger): void;
102
+ createAxis(axisName: TimelineAxis): d3.Axis<Date>;
103
+ getAxisTicksConfig(configs: TimelineTicksConfig[]): {
104
+ formatFn: (d: Date) => string;
105
+ interval: any;
106
+ };
88
107
  onResize(resizeObserverEntry: ResizeObserverEntry): void;
89
108
  handleResize({ contentRect }: ResizeObserverEntry): void;
90
109
  handleDarkModeChange(): void;
110
+ handleMouseDown(): void;
111
+ handleDocumentMouseUp(_e: MouseEvent): void;
91
112
  handleMouseLeave(): void;
92
113
  handleMouseMove(event: MouseEvent): void;
93
114
  handleClick(event: MouseEvent): void;
@@ -98,11 +119,9 @@ declare const _default: import("vue/types/vue").ExtendedVue<Vue<Record<string, a
98
119
  handleBarMouseOut(): void;
99
120
  handleLabelMouseOver(groupType: string): void;
100
121
  handleLabelMouseLeave(groupType: string): void;
101
- handleTransformChange(transform: {
102
- translation: number;
103
- scale: number;
104
- }): void;
105
- handleTimeScaleChange(ts: d3.ScaleTime<any, any, unknown>): void;
122
+ isZoomAllowed(event: D3ZoomEvent<SVGSVGElement, any>): boolean;
123
+ handleZoom(event: D3ZoomEvent<SVGSVGElement, any>): void;
124
+ panToTimestamp(targetTimestamp: string | Date): void;
106
125
  emitCurtainChange(): void;
107
126
  calculateDateRangeFromCurtains(): {
108
127
  startDate: Date;
@@ -113,6 +132,8 @@ declare const _default: import("vue/types/vue").ExtendedVue<Vue<Record<string, a
113
132
  handleLeftDrag(event: d3.D3DragEvent<SVGRectElement, any, any>): void;
114
133
  handleRightDrag(event: d3.D3DragEvent<SVGRectElement, any, any>): void;
115
134
  zoomToStartAndEndDates(): void;
135
+ rescaleAxis(axisName: string, newScale: d3.ScaleTime<any, any, unknown>): void;
136
+ translateTicksText(axisName: string): void;
116
137
  updateEventsBars(): void;
117
138
  updateBarChart(): void;
118
139
  updateLineGraphs(): void;
@@ -259,7 +280,6 @@ declare const _default: import("vue/types/vue").ExtendedVue<Vue<Record<string, a
259
280
  hasChart: boolean;
260
281
  labelRectWidth: number;
261
282
  combinedXAxesHeight: number;
262
- timelineWidth: number;
263
283
  timelineHeight: number;
264
284
  filteredEventsGroups: TimelineEventsByType;
265
285
  allEventsSorted: TimelineEvent[];
@@ -274,10 +294,9 @@ declare const _default: import("vue/types/vue").ExtendedVue<Vue<Record<string, a
274
294
  minHoverZone: number;
275
295
  sortedMarkers: TimelineMarker[];
276
296
  maxVisibleCount: number;
277
- defaultMaxDomain: string[];
278
- domain: TimelineDomain;
279
297
  }, {
280
298
  eventsGroups: {};
299
+ xAxesConfig: TimelineAxesConfig;
281
300
  dark: boolean;
282
301
  startDate: string;
283
302
  endDate: string;
@@ -294,6 +313,8 @@ declare const _default: import("vue/types/vue").ExtendedVue<Vue<Record<string, a
294
313
  barXPadding: number;
295
314
  chartMinHeight: number;
296
315
  chartMinLabelHeight: number;
316
+ minZoom: number;
317
+ maxZoom: number;
297
318
  minDate: string;
298
319
  maxDate: string;
299
320
  cursorTimestamp: string | undefined;
package/dist/index.d.ts CHANGED
@@ -220,16 +220,19 @@ export declare const components: {
220
220
  hlsOptions: {};
221
221
  }, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin>;
222
222
  ETimeline: import("vue/types/vue").ExtendedVue<import("vue").default<Record<string, any>, Record<string, any>, never, never, (event: string, ...args: any[]) => import("vue").default<Record<string, any>, Record<string, any>, never, never, any>>, {
223
- mainContainer: HTMLElement;
224
223
  tooltip: HTMLElement;
225
224
  cursor: HTMLElement;
226
225
  timeline: HTMLElement;
227
226
  wrapperDiv: HTMLElement;
228
227
  selectedTimestampCursor: HTMLElement;
229
- svgElement: SVGSVGElement;
230
228
  svg: import("d3-selection").Selection<SVGSVGElement, any, any, any>;
229
+ axesContainer: import("d3-selection").Selection<SVGGElement, any, any, any>;
230
+ xAxes: Record<import('./types').TimelineAxis, import("d3-axis").Axis<Date>>;
231
231
  timeScale: import("d3-scale").ScaleTime<any, any, unknown>;
232
+ initialTimeScale: import("d3-scale").ScaleTime<any, any, unknown>;
232
233
  currentTimeScaleDensity: number;
234
+ zoomBehavior: import("d3-zoom").ZoomBehavior<SVGSVGElement, unknown>;
235
+ isMouseDown: boolean;
233
236
  axisHeight: number;
234
237
  isHoveringEvent: boolean;
235
238
  hoveredEvent: import('./types').TimelineEvent;
@@ -238,6 +241,14 @@ export declare const components: {
238
241
  eventTooltipStyle: {};
239
242
  hoveredEventType: string;
240
243
  utcOffset: number;
244
+ lastTransform: {
245
+ x: number;
246
+ k: number;
247
+ };
248
+ transformDiff: {
249
+ translation: number;
250
+ scale: number;
251
+ };
241
252
  yScale: import("d3-scale").ScaleLinear<any, any, never>;
242
253
  hoveredCounts: {
243
254
  count: number;
@@ -266,10 +277,8 @@ export declare const components: {
266
277
  initialMarkerDragMouseOffset: number;
267
278
  selectedMilestoneId: any;
268
279
  isInitialized: boolean;
269
- transformDiff: {
270
- translation: number;
271
- scale: number;
272
- };
280
+ lastValidTransform: import("d3-zoom").ZoomTransform;
281
+ lastPanTransform: import("d3-zoom").ZoomTransform;
273
282
  isZoomingInterval: boolean;
274
283
  defs: {
275
284
  transparencyGradient: string;
@@ -278,34 +287,45 @@ export declare const components: {
278
287
  stripedPattern: string;
279
288
  };
280
289
  hoveredMilestone: import('./types').TimelineEvent;
281
- focusedDomain: import('./types').TimelineDomain;
282
- transitionDuration: number;
283
- focusedTimestamp: string | Date;
284
290
  }, {
285
291
  updateTimeline(): void;
286
- initTimeline(): void;
292
+ initTimeline(startDate?: string | undefined, endDate?: string | undefined): void;
287
293
  initRefs(): void;
288
294
  initOrUpdateSvg(): void;
289
295
  initOrUpdateDefs(): void;
290
296
  initUtcOffset(): void;
297
+ initTimeScale(start?: string | undefined, end?: string | undefined): void;
298
+ initXAxes(): void;
299
+ updateXAxes(): void;
291
300
  initYScale(): void;
292
301
  updateYScale(): void;
302
+ initZoomBehavior(): void;
293
303
  zoomToFitMarkers(): void;
304
+ zoomToTargetInterval(start?: string | number | undefined, end?: string | number | undefined): void;
305
+ translateIntervalIntoView(minTimestamp: number, maxTimestamp: number, scaleFactor: number): void;
294
306
  initSelectedTimestampCursor(): void;
295
307
  updateMarkers(): void;
296
308
  selectOrAppend({ parent, targetId, targetType, }: {
297
- parent: import("d3-selection").Selection<any, any, any, any>;
298
- targetId: string;
299
- targetType: string;
300
- }): import("d3-selection").Selection<import("d3-selection").BaseType, any, any, any>;
309
+ parent: any;
310
+ selector: string;
311
+ nodeType: string;
312
+ }): any;
313
+ updateAndRedrawTimeline(): void;
301
314
  clearTimeline(): void;
302
315
  repositionSelectedTimestampCursor(): void;
303
316
  updateCurrentTimeScaleDensity(): void;
304
317
  registerEventsListeners(): void;
305
318
  emitVisibleInterval(trigger: import('./types').TimelineIntervalChangeTrigger): void;
319
+ createAxis(axisName: import('./types').TimelineAxis): import("d3-axis").Axis<Date>;
320
+ getAxisTicksConfig(configs: import('./types').TimelineTicksConfig[]): {
321
+ formatFn: (d: Date) => string;
322
+ interval: any;
323
+ };
306
324
  onResize(resizeObserverEntry: ResizeObserverEntry): void;
307
325
  handleResize({ contentRect }: ResizeObserverEntry): void;
308
326
  handleDarkModeChange(): void;
327
+ handleMouseDown(): void;
328
+ handleDocumentMouseUp(_e: MouseEvent): void;
309
329
  handleMouseLeave(): void;
310
330
  handleMouseMove(event: MouseEvent): void;
311
331
  handleClick(event: MouseEvent): void;
@@ -316,11 +336,9 @@ export declare const components: {
316
336
  handleBarMouseOut(): void;
317
337
  handleLabelMouseOver(groupType: string): void;
318
338
  handleLabelMouseLeave(groupType: string): void;
319
- handleTransformChange(transform: {
320
- translation: number;
321
- scale: number;
322
- }): void;
323
- handleTimeScaleChange(ts: import("d3-scale").ScaleTime<any, any, unknown>): void;
339
+ isZoomAllowed(event: import("d3-zoom").D3ZoomEvent<SVGSVGElement, any>): boolean;
340
+ handleZoom(event: import("d3-zoom").D3ZoomEvent<SVGSVGElement, any>): void;
341
+ panToTimestamp(targetTimestamp: string | Date): void;
324
342
  emitCurtainChange(): void;
325
343
  calculateDateRangeFromCurtains(): {
326
344
  startDate: Date;
@@ -331,6 +349,8 @@ export declare const components: {
331
349
  handleLeftDrag(event: import("d3-drag").D3DragEvent<SVGRectElement, any, any>): void;
332
350
  handleRightDrag(event: import("d3-drag").D3DragEvent<SVGRectElement, any, any>): void;
333
351
  zoomToStartAndEndDates(): void;
352
+ rescaleAxis(axisName: string, newScale: import("d3-scale").ScaleTime<any, any, unknown>): void;
353
+ translateTicksText(axisName: string): void;
334
354
  updateEventsBars(): void;
335
355
  updateBarChart(): void;
336
356
  updateLineGraphs(): void;
@@ -477,7 +497,6 @@ export declare const components: {
477
497
  hasChart: boolean;
478
498
  labelRectWidth: number;
479
499
  combinedXAxesHeight: number;
480
- timelineWidth: number;
481
500
  timelineHeight: number;
482
501
  filteredEventsGroups: import('./types').TimelineEventsByType;
483
502
  allEventsSorted: import('./types').TimelineEvent[];
@@ -492,10 +511,9 @@ export declare const components: {
492
511
  minHoverZone: number;
493
512
  sortedMarkers: import('./types').TimelineMarker[];
494
513
  maxVisibleCount: number;
495
- defaultMaxDomain: string[];
496
- domain: import('./types').TimelineDomain;
497
514
  }, {
498
515
  eventsGroups: {};
516
+ xAxesConfig: import('./types').TimelineAxesConfig;
499
517
  dark: boolean;
500
518
  startDate: string;
501
519
  endDate: string;
@@ -512,6 +530,8 @@ export declare const components: {
512
530
  barXPadding: number;
513
531
  chartMinHeight: number;
514
532
  chartMinLabelHeight: number;
533
+ minZoom: number;
534
+ maxZoom: number;
515
535
  minDate: string;
516
536
  maxDate: string;
517
537
  cursorTimestamp: string | undefined;
@@ -1091,27 +1111,6 @@ export declare const components: {
1091
1111
  $setTimeout(cb: Function, timeout?: number): number;
1092
1112
  $clearTimeouts(): void;
1093
1113
  }, unknown, Record<never, any>, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin>, import("vue").ComponentOptionsMixin>;
1094
- EChat: import("vue/types/vue").ExtendedVue<import("vue").default<Record<string, any>, Record<string, any>, never, never, (event: string, ...args: any[]) => import("vue").default<Record<string, any>, Record<string, any>, never, never, any>>, {
1095
- prompt: string;
1096
- containerHeight: number;
1097
- headerHeight: number;
1098
- bodyHeight: number;
1099
- footerHeight: number;
1100
- }, {
1101
- sendMessage(): void;
1102
- isUserMessage(message: import('./types').ChatMessage): boolean;
1103
- getMessageContent(message: import('./types').ChatMessage): string;
1104
- onBodyResized(): void;
1105
- updateChatBodyHeight(): void;
1106
- }, {
1107
- userInitials: string;
1108
- chatBodyStyle: Record<string, unknown>;
1109
- }, {
1110
- dark: boolean;
1111
- messages: import('./types').ChatMessage[];
1112
- user: string;
1113
- }, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin>;
1114
- EContextProvider: any;
1115
1114
  };
1116
1115
  declare const _default: {
1117
1116
  install(Vue: VueConstructor): void;