@evercam/ui 0.0.55-beta.31 → 0.0.55-beta.33

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.
@@ -7,8 +7,11 @@ import ECol from './components/ECol.vue';
7
7
  import EVideoPlayer from './components/EVideoPlayer.vue';
8
8
  import ETimeline from './components/ETimeline.vue';
9
9
  import EVideoEmbed from './components/EVideoEmbed.vue';
10
+ import EHeatmapBar from './components/EHeatmapBar.vue';
11
+ import EHoursHeatmap from './components/EHoursHeatmap.vue';
10
12
  import EReadMore from './components/EReadMore.vue';
11
- import ETruncatedDiv from './components/ETruncatedDiv.vue';
13
+ import EToggleSwitch from './components/EToggleSwitch.vue';
14
+ import EZoomable from './components/EZoomable.vue';
12
15
  import { VueConstructor } from "vue";
13
16
  export declare const components: {
14
17
  EAvatar: 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>>, {
@@ -120,7 +123,84 @@ export declare const components: {
120
123
  xs: string | number | boolean;
121
124
  xl: string | number | boolean;
122
125
  }, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin>;
123
- EVideoPlayer: 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>>, {
126
+ EVideoPlayer: import("vue").DefineComponent<{
127
+ targetTimestamp: {
128
+ type: (StringConstructor | DateConstructor)[];
129
+ default: undefined;
130
+ };
131
+ sources: {
132
+ type: import("vue").PropType<string | import('./components/EVideoPlayer.vue').VideoSource[]>;
133
+ required: true;
134
+ };
135
+ videoListeners: {
136
+ type: import("vue").PropType<Partial<HTMLVideoElement>>;
137
+ default: () => {};
138
+ };
139
+ videoOptions: {
140
+ type: import("vue").PropType<Partial<HTMLVideoElement>>;
141
+ default: () => {};
142
+ };
143
+ isHls: {
144
+ type: BooleanConstructor;
145
+ default: boolean;
146
+ };
147
+ streamingToken: {
148
+ type: StringConstructor;
149
+ default: string;
150
+ };
151
+ pauseOnClick: {
152
+ type: BooleanConstructor;
153
+ default: boolean;
154
+ };
155
+ isHlsLoading: {
156
+ type: BooleanConstructor;
157
+ default: boolean;
158
+ };
159
+ isPlaying: {
160
+ type: BooleanConstructor;
161
+ default: boolean;
162
+ };
163
+ selectedResolution: {
164
+ type: import("vue").PropType<import('./components/EVideoPlayer.vue').EdgeVideoResolution | undefined>;
165
+ default: undefined;
166
+ };
167
+ isZoomable: {
168
+ type: BooleanConstructor;
169
+ default: boolean;
170
+ };
171
+ zoomableIgnorePointerEvents: {
172
+ type: BooleanConstructor;
173
+ default: boolean;
174
+ };
175
+ timezone: {
176
+ type: StringConstructor;
177
+ default: string;
178
+ };
179
+ playPauseAnimation: {
180
+ type: BooleanConstructor;
181
+ default: boolean;
182
+ };
183
+ disablePlayPauseAnimation: {
184
+ type: BooleanConstructor;
185
+ default: boolean;
186
+ };
187
+ isWebRtc: {
188
+ type: BooleanConstructor;
189
+ default: boolean;
190
+ };
191
+ withColoredLoader: {
192
+ type: BooleanConstructor;
193
+ default: boolean;
194
+ };
195
+ loaderSize: {
196
+ type: StringConstructor;
197
+ default: string;
198
+ };
199
+ withOverlayOnBackground: {
200
+ type: BooleanConstructor;
201
+ default: boolean;
202
+ };
203
+ }, {}, {
124
204
  playing: boolean;
125
205
  percentagePlayed: number;
126
206
  videoLength: string;
@@ -135,10 +215,23 @@ export declare const components: {
135
215
  isLoading: boolean;
136
216
  isError: boolean;
137
217
  player: import("hls.js").default;
218
+ playbackRetries: number;
219
+ preloadedSeconds: number;
220
+ preloadedInterval: {
221
+ start: string;
222
+ end: string;
223
+ };
224
+ }, {
225
+ sourceItems(): import('./components/EVideoPlayer.vue').VideoSource[];
226
+ hasStartedOrFinished(): boolean;
227
+ withControls(): "" | "hide";
138
228
  }, {
139
229
  initHls(): void;
230
+ onContainerClick(): void;
140
231
  handle404Error(): void;
232
+ handleHlsError(_: import("hls.js").Events.ERROR, data: import("hls.js").ErrorData): void;
141
233
  bindEvents(): void;
234
+ onProgress(): void;
142
235
  unbindEvents(): void;
143
236
  bindVideoEvent(which: string): void;
144
237
  initializePlayer(): void;
@@ -150,9 +243,9 @@ export declare const components: {
150
243
  handleScrubbingOnMouseEnd(e: MouseEvent): void;
151
244
  handleEnded(): void;
152
245
  handleLoading(): void;
153
- play(): void;
246
+ play(): Promise<void>;
154
247
  pause(): void;
155
- togglePlay(): void;
248
+ togglePlay(): Promise<void>;
156
249
  setPlaying(state: boolean): void;
157
250
  seekToPercentage(percentage: number): void;
158
251
  convertTimeToDuration(seconds: number): string;
@@ -165,18 +258,103 @@ export declare const components: {
165
258
  skip(duration?: number): void;
166
259
  toggleScrubbing(e: MouseEvent): Promise<void>;
167
260
  handleKeyDown(e: KeyboardEvent): void;
168
- }, {
169
- sourceItems: import('./components/EVideoPlayer.vue').VideoSource[];
170
- hasStartedOrFinished: boolean;
171
- withControls: "" | "hide";
172
- }, {
173
- sources: string | import('./components/EVideoPlayer.vue').VideoSource[];
174
- videoListeners: {};
175
- videoOptions: {};
261
+ }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{
262
+ targetTimestamp: {
263
+ type: (StringConstructor | DateConstructor)[];
264
+ default: undefined;
265
+ };
266
+ sources: {
267
+ type: import("vue").PropType<string | import('./components/EVideoPlayer.vue').VideoSource[]>;
268
+ required: true;
269
+ };
270
+ videoListeners: {
271
+ type: import("vue").PropType<Partial<HTMLVideoElement>>;
272
+ default: () => {};
273
+ };
274
+ videoOptions: {
275
+ type: import("vue").PropType<Partial<HTMLVideoElement>>;
276
+ default: () => {};
277
+ };
278
+ isHls: {
279
+ type: BooleanConstructor;
280
+ default: boolean;
281
+ };
282
+ streamingToken: {
283
+ type: StringConstructor;
284
+ default: string;
285
+ };
286
+ pauseOnClick: {
287
+ type: BooleanConstructor;
288
+ default: boolean;
289
+ };
290
+ isHlsLoading: {
291
+ type: BooleanConstructor;
292
+ default: boolean;
293
+ };
294
+ isPlaying: {
295
+ type: BooleanConstructor;
296
+ default: boolean;
297
+ };
298
+ selectedResolution: {
299
+ type: import("vue").PropType<import('./components/EVideoPlayer.vue').EdgeVideoResolution | undefined>;
300
+ default: undefined;
301
+ };
302
+ isZoomable: {
303
+ type: BooleanConstructor;
304
+ default: boolean;
305
+ };
306
+ zoomableIgnorePointerEvents: {
307
+ type: BooleanConstructor;
308
+ default: boolean;
309
+ };
310
+ timezone: {
311
+ type: StringConstructor;
312
+ default: string;
313
+ };
314
+ playPauseAnimation: {
315
+ type: BooleanConstructor;
316
+ default: boolean;
317
+ };
318
+ disablePlayPauseAnimation: {
319
+ type: BooleanConstructor;
320
+ default: boolean;
321
+ };
322
+ isWebRtc: {
323
+ type: BooleanConstructor;
324
+ default: boolean;
325
+ };
326
+ withColoredLoader: {
327
+ type: BooleanConstructor;
328
+ default: boolean;
329
+ };
330
+ loaderSize: {
331
+ type: StringConstructor;
332
+ default: string;
333
+ };
334
+ withOverlayOnBackground: {
335
+ type: BooleanConstructor;
336
+ default: boolean;
337
+ };
338
+ }>>, {
339
+ timezone: string;
340
+ isPlaying: boolean;
341
+ targetTimestamp: string | Date;
342
+ videoListeners: Partial<HTMLVideoElement>;
343
+ videoOptions: Partial<HTMLVideoElement>;
176
344
  isHls: boolean;
177
345
  streamingToken: string;
178
- isLiveView: boolean;
179
- }, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin>;
346
+ pauseOnClick: boolean;
347
+ isHlsLoading: boolean;
348
+ selectedResolution: import('./components/EVideoPlayer.vue').EdgeVideoResolution | undefined;
349
+ isZoomable: boolean;
350
+ zoomableIgnorePointerEvents: boolean;
351
+ playPauseAnimation: boolean;
352
+ disablePlayPauseAnimation: boolean;
353
+ isWebRtc: boolean;
354
+ withColoredLoader: boolean;
355
+ loaderSize: string;
356
+ withOverlayOnBackground: boolean;
357
+ }>;
180
358
  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>>, {
181
359
  tooltip: HTMLElement;
182
360
  cursor: HTMLElement;
@@ -563,18 +741,109 @@ export declare const components: {
563
741
  collapseText: string;
564
742
  moreTextWithPlaceholder: string;
565
743
  }, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin>;
566
- ETruncatedDiv: 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>>, unknown, unknown, {
567
- containerStyle: Record<string, any>;
744
+ EToggleSwitch: 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>>, {
745
+ value: any;
568
746
  }, {
569
- width: string | number;
570
- fixedWidth: boolean;
747
+ getButtonClasses(optionValue: any): {
748
+ "e-bg-inherit": boolean;
749
+ "e-bg-brand-600": boolean;
750
+ "e-bg-gray-600": boolean;
751
+ "e-bg-[#629efc] e-text-gray-900 e-font-normal": boolean;
752
+ };
753
+ handleClick(value: any): void;
754
+ }, {
755
+ sizeClasses: {
756
+ container: import('./components/EToggleSwitch.vue').CssClassMap;
757
+ button: import('./components/EToggleSwitch.vue').CssClassMap;
758
+ text: import('./components/EToggleSwitch.vue').CssClassMap;
759
+ };
760
+ containerClasses: import('./components/EToggleSwitch.vue').CssClassMap;
761
+ textClasses: import('./components/EToggleSwitch.vue').CssClassMap;
762
+ buttonBaseClasses: import('./components/EToggleSwitch.vue').CssClassMap;
763
+ }, {
764
+ options: import('./components/EToggleSwitch.vue').EToggleSwitchOption[];
765
+ color: string;
766
+ size: import('./types').Size;
767
+ defaultValue: string | number | boolean;
571
768
  }, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin>;
769
+ EZoomable: import("vue").DefineComponent<{
770
+ ignorePointerEvents: {
771
+ type: BooleanConstructor;
772
+ default: boolean;
773
+ };
774
+ withOverlay: {
775
+ type: BooleanConstructor;
776
+ default: boolean;
777
+ };
778
+ disabled: {
779
+ type: BooleanConstructor;
780
+ default: boolean;
781
+ };
782
+ }, {}, {
783
+ scale: number;
784
+ minScale: number;
785
+ maxScale: number;
786
+ top: number;
787
+ left: number;
788
+ isPanning: boolean;
789
+ panStart: {
790
+ x: number;
791
+ y: number;
792
+ };
793
+ isPinching: boolean;
794
+ previousPinchDistance: number;
795
+ pinchDistance: number;
796
+ pointers: {};
797
+ transform: string;
798
+ }, {
799
+ contentStyle(): {
800
+ transform: string;
801
+ };
802
+ isZoomed(): boolean;
803
+ }, {
804
+ updateZoomScale(): void;
805
+ handleZoom(e: any): void;
806
+ handleMouseDown(e: any): void;
807
+ handleMouseUp(): void;
808
+ handleMouseLeave(): void;
809
+ handleMouseMove(e: any): void;
810
+ applyBoundsCorrection(): void;
811
+ updateTransform(): void;
812
+ getPointersDistance(a: any, b: any): number;
813
+ getPointersMidPoint(a: any, b: any): {
814
+ x: any;
815
+ y: any;
816
+ };
817
+ updatePointerEvent(e: any): void;
818
+ clearPointerEvent(e: any): void;
819
+ updatePinchDistance(): void;
820
+ handlePointerDown(e: any): void;
821
+ handlePointerMove(e: any): void;
822
+ handlePointerUp(e: any): void;
823
+ }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{
824
+ ignorePointerEvents: {
825
+ type: BooleanConstructor;
826
+ default: boolean;
827
+ };
828
+ withOverlay: {
829
+ type: BooleanConstructor;
830
+ default: boolean;
831
+ };
832
+ disabled: {
833
+ type: BooleanConstructor;
834
+ default: boolean;
835
+ };
836
+ }>>, {
837
+ ignorePointerEvents: boolean;
838
+ withOverlay: boolean;
839
+ disabled: boolean;
840
+ }>;
572
841
  };
573
842
  declare const _default: {
574
843
  install(Vue: VueConstructor): void;
575
844
  };
576
845
  export default _default;
577
- export { EAvatar, EBadge, EIcon, ESpinner, ERow, ECol, EVideoPlayer, ETimeline, EVideoEmbed, EReadMore, ETruncatedDiv, };
846
+ export { EAvatar, EBadge, EIcon, ESpinner, ERow, ECol, EVideoPlayer, ETimeline, EVideoEmbed, EHeatmapBar, EHoursHeatmap, EReadMore, EToggleSwitch, EZoomable, };
578
847
  export * from './constants';
579
848
  export * from './types';
580
849
  export * from './utils';
@@ -1,4 +1,4 @@
1
- import { BadgeSizes, AvatarSizes, IconSizes, BadgeColors } from './constants';
1
+ import { BadgeSizes, AvatarSizes, IconSizes, BadgeColors, ToggleSwitchSizes } from './constants';
2
2
  export declare enum Size {
3
3
  dot = "dot",
4
4
  xs = "xs",
@@ -25,9 +25,17 @@ export declare enum BaseColor {
25
25
  brand = "brand",
26
26
  default = "default"
27
27
  }
28
+ export declare enum ImageQuality {
29
+ _360 = "360",
30
+ _480 = "480",
31
+ _720 = "720",
32
+ _1080 = "1080",
33
+ auto = "auto"
34
+ }
28
35
  export type TBadgeSize = (typeof BadgeSizes)[number];
29
36
  export type TAvatarSize = (typeof AvatarSizes)[number];
30
37
  export type TIconSize = (typeof IconSizes)[number];
38
+ export type TToggleSwitchSize = (typeof ToggleSwitchSizes)[number];
31
39
  export type TBadgeColor = (typeof BadgeColors)[number];
32
40
  export type TailwindColorClass = string;
33
41
  export type FlexJustifyContent = "around" | "between" | "center" | "end" | "evenly" | "normal" | "start" | "stretch";
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .e-spinner[data-v-29711f67]{vertical-align:center}.e-spinner__primary[data-v-29711f67],.e-spinner__secondary[data-v-29711f67]{stroke-width:0;animation:fade-29711f67;animation-iteration-count:infinite}@keyframes fade-29711f67{0%{fill-opacity:0}50%{fill-opacity:1}to{fill-opacity:0}}.e-row.e-row--no-gutters{margin:0}.e-row.e-row--no-gutters>.e-col{padding:0}.e-col{padding:.75rem}.spinner-container[data-v-9071f674]{position:absolute;background:linear-gradient(to top,rgba(0,0,0,.65),transparent);inset:0;display:flex;justify-content:center;align-items:center;vertical-align:middle}.video-container[data-v-9071f674]{position:relative;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;margin:0 auto}.video-container.full-screen[data-v-9071f674]{max-width:initial;width:100%;max-height:100vh}video[data-v-9071f674]{width:100%;height:inherit}.video-controls-container[data-v-9071f674]{position:absolute;bottom:0;left:0;right:0;color:#fff;z-index:100;opacity:0;transition:opacity .15s ease-in-out}.hide[data-v-9071f674]{display:none}.video-controls-container[data-v-9071f674]:before{content:"";position:absolute;bottom:0;background:linear-gradient(to top,rgba(0,0,0,.75),transparent);width:100%;aspect-ratio:6 / 1;z-index:-1;pointer-events:none}.video-container:hover .video-controls-container[data-v-9071f674],.video-container:focus-within .video-controls-container[data-v-9071f674],.video-container.paused .video-controls-container[data-v-9071f674]{opacity:1}.video-controls-container .controls[data-v-9071f674]{display:flex;gap:.5rem;padding:.75rem 1rem;align-items:center;width:100%}.video-controls-container .controls button[data-v-9071f674]{background:none;border:none;color:inherit;padding:0;height:32px;width:32px;font-size:1.35rem;cursor:pointer;opacity:.85;transition:opacity .15s ease-in-out}.video-controls-container .controls button[data-v-9071f674]:hover{opacity:1}.duration-container[data-v-9071f674]{display:flex;align-items:center;gap:.25rem;flex-grow:1}.video-container.captions .captions-btn[data-v-9071f674]{border-bottom:3px solid red}.video-controls-container .controls button.wide-btn[data-v-9071f674]{width:50px}.timeline-container[data-v-9071f674]{width:100%;height:7px;margin-inline:.5rem;cursor:pointer;display:flex;align-items:center}.timeline[data-v-9071f674]{background-color:#64646480;height:3px;width:100%;position:relative}.timeline[data-v-9071f674]:before{content:"";position:absolute;left:0;top:0;bottom:0;right:calc(100% - var(--preview-position) * 100%);background-color:#969696;display:none}.timeline[data-v-9071f674]:after{content:"";position:absolute;left:0;top:0;bottom:0;right:calc(100% - var(--progress-position) * 100%);background-color:red}.timeline .thumb-indicator[data-v-9071f674]{--scale: 0;position:absolute;transform:translate(-50%) scale(var(--scale));height:200%;top:-50%;left:calc(var(--progress-position) * 100%);background-color:red;border-radius:50%;transition:transform .15s ease-in-out;aspect-ratio:1 / 1}.video-container.scrubbing .thumbnail-img[data-v-9071f674]{display:block}.video-container.scrubbing .timeline[data-v-9071f674]:before,.timeline-container:hover .timeline[data-v-9071f674]:before{display:block}.video-container.scrubbing .thumb-indicator[data-v-9071f674],.timeline-container:hover .thumb-indicator[data-v-9071f674]{--scale: 1}.video-container.scrubbing .timeline[data-v-9071f674],.timeline-container:hover .timeline[data-v-9071f674]{height:100%}.e-tl-milestone{position:absolute;border-radius:10em;box-sizing:border-box}.e-tl-milestone-content{cursor:pointer}.e-tl-milestone--bullet{transform:translate(-50%,-50%)}.e-tl-milestone--bullet .e-tl-milestone-content{opacity:0;width:0;height:0;white-space:nowrap;pointer-events:none;cursor:pointer}.e-tl-milestone--bullet.e-tl-milestone--hovered{cursor:pointer;min-height:26px;padding:0 8px;border-radius:.5em}.e-tl-milestone--bullet.e-tl-milestone--hovered .e-tl-milestone-content{opacity:1;font-size:small;font-weight:500;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.e-tl-milestone--bullet .e-tl-milestone-label{position:absolute;top:0;left:0;opacity:1;pointer-events:none;height:100%;width:100%}.e-tl-milestone--bullet.e-tl-milestone--hovered .e-tl-milestone-label{opacity:0}.e-tl-milestone--dot{transform:translateY(-50%)}.e-tl-milestone-dot--hovered .e-tl-milestone-dot-container{padding:0 3em;transform:translate(-50%);opacity:1}.e-tl-milestone-dot-line{position:absolute}.e-tl-milestone-dot-dot{position:absolute;border-radius:50%}.e-tl-milestone-dot-container{opacity:0;position:absolute;padding:0 .3em;transform:translate(-50%,-100%);cursor:pointer}.e-timeline svg{display:block}.e-timeline .x-axis-overview .domain,.e-timeline .x-axis-detailed .domain,.e-timeline .x-axis-overviewBackground .domain,.e-timeline .x-axis-detailedBackground .domain{display:none}.e-timeline .x-axis-detailedBackground .domain,.e-timeline .x-axis-detailedBackground text{display:none}.e-timeline .x-axis-overview>g.tick>line{opacity:.1;stroke-width:3;stroke-linecap:round}.e-timeline .x-axis-detailed>g.tick>line{opacity:.1;stroke-linecap:round}.e-timeline .x-axis-detailedBackground>g.tick>line{opacity:.075;stroke-linecap:round}.e-timeline--dark .tick line{stroke:#fff}.e-timeline--dark .tick text{fill:#fff}@keyframes moveGradient{0%{transform:translate(-50%)}to{transform:translate(100%)}}@keyframes pulse-rect{0%{filter:saturate(3.5) drop-shadow(0 0 1px #0008)}50%{filter:saturate(.5) drop-shadow(0 0 0 #0000)}to{filter:saturate(3.5) drop-shadow(0 0 1px #0008)}}@keyframes pulse-circle{0%{r:4px}50%{r:1px}to{r:4px}}.loading-indicator{animation:moveGradient 1.5s ease-in infinite}.line-graph-dot--active{animation:pulse-circle 1s ease-in-out infinite}.event-rect--hovered{animation:pulse-rect 1s ease-in-out infinite}@keyframes dash{0%{filter:saturate(1) drop-shadow(0 0 0 #0000)}50%{stroke-width:2px;filter:saturate(2.5) drop-shadow(0 0 0 #0006)}to{filter:saturate(1) drop-shadow(0 0 0 #0000)}}.line-graph-group--highlighted path{animation:dash 1s ease-in-out infinite}.e-timeline--dragging{cursor:ew-resize}.curtain{cursor:ew-resize;fill:#3332;stroke-width:1px;stroke:#3338;transition:stroke-width .2s}.e-timeline--dragging .curtain{stroke-width:3px}.e-timeline--dark .curtain{fill:#fff3;stroke:#fff7}.event-bar-hover-zone{cursor:pointer}.external-labels-container{position:absolute;top:-1.5em;left:0}.external-label{margin-right:.35em;border-width:.5px;border-radius:.2em}.external-label__content{cursor:pointer;font-size:.8em;font-weight:500;padding:0 .6em;line-height:1.4em}.marker-label{transition:transform .2s;transform:translateY(-32px);position:absolute;width:max-content}.marker-label-text{position:absolute;width:max-content;font-size:.8em;font-weight:500;padding:0 .75em;border-radius:.4em .4em .4em 0;box-shadow:0 0 5px -1px #000000f5}.marker-label-text:after{content:"";background:inherit;width:5px;height:5px;bottom:-5px;position:absolute;left:2px;clip-path:path("M 0,5 L 0,0 L 5,0 A 5,5 0 0 0 0,5")}.marker-label-text:before{content:"";background:inherit;height:20px;top:18px;position:absolute;width:2px;left:0}.marker{top:0;filter:saturate(.9)}.marker-line{position:absolute;width:2px;top:-24px;transition:top .2s,height .2s}.marker:hover{cursor:pointer;opacity:1;filter:saturate(1.1)}.marker:hover .marker-label{transform:translateY(-38px);height:61px;width:255px;padding-bottom:42px}.marker:hover .marker-label-text{box-shadow:2px 2px 11px -4px #000}.marker--hidden:hover .marker-label{transform:translateY(-54px)}.marker--draggable,.marker--draggable:hover{user-select:none;cursor:grab}.marker--dragged:hover{cursor:grabbing}.forbidden-interval{opacity:.2}.e-timeline-milestones{height:0}.video-embed[data-v-0ecf4a71]{position:relative;width:100%!important;padding-bottom:56.25%}.video-embed iframe[data-v-0ecf4a71]{position:absolute;top:0;left:0;width:100%;height:100%}.e-heatmap-bar__label{white-space:nowrap;width:6rem;min-width:6rem}.e-heatmap-bar__item{height:16px;margin:2px;position:relative;cursor:pointer;border-radius:2px;min-width:0}.e-heatmap-bar__item:hover{box-shadow:0 0 0 1.5px #5c6d97}.e-heatmap-bar__item--selected{box-shadow:0 0 0 2px #151e3a}.e-heatmap-bar__item__count{font-size:12px;color:#fff;font-weight:500}.e-heatmap-bar__item__count--light{color:#0a214bbd}.e-heatmap-bar__item__name{position:absolute;top:-25px}.e-heatmap-bar:not(.e-heatmap-bar--dense) .e-heatmap-bar__item{min-width:35px}
1
+ .e-spinner[data-v-29711f67]{vertical-align:center}.e-spinner__primary[data-v-29711f67],.e-spinner__secondary[data-v-29711f67]{stroke-width:0;animation:fade-29711f67;animation-iteration-count:infinite}@keyframes fade-29711f67{0%{fill-opacity:0}50%{fill-opacity:1}to{fill-opacity:0}}.e-row.e-row--no-gutters{margin:0}.e-row.e-row--no-gutters>.e-col{padding:0}.e-col{padding:.75rem}.e-transform-0[data-v-d483be50]{transform-origin:0 0}.image-player-overlay{position:absolute;left:50%;top:50%;width:52px;height:52px;z-index:19;margin-left:-26px;margin-top:-26px;background:rgba(0,0,0,.5);border-radius:26px;-webkit-animation:overlay-fadeout .5s linear 1 normal forwards;animation:overlay-fadeout .5s linear 1 normal forwards;pointer-events:none}.image-player-overlay__wrapper{height:40px;width:40px}.image-player-overlay__wrapper>path{fill:#fff}@-webkit-keyframes overlay-fadeout{0%{opacity:1}to{opacity:0;-webkit-transform:scale(2);transform:scale(2)}}@keyframes overlay-fadeout{0%{opacity:1}to{opacity:0;-webkit-transform:scale(2);transform:scale(2)}}.spinner-container[data-v-eb980c65]{position:absolute;background:linear-gradient(to top,rgba(0,0,0,.65),transparent);inset:0;display:flex;justify-content:center;align-items:center;vertical-align:middle}.video-container[data-v-eb980c65]{position:relative;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;margin:0 auto}.video-container.full-screen[data-v-eb980c65]{max-width:initial;width:100%;max-height:100vh}video[data-v-eb980c65]{width:100%;height:inherit}.video-controls-container[data-v-eb980c65]{position:absolute;bottom:0;left:0;right:0;color:#fff;z-index:100;opacity:0;transition:opacity .15s ease-in-out}.hide[data-v-eb980c65]{display:none}.video-controls-container[data-v-eb980c65]:before{content:"";position:absolute;bottom:0;background:linear-gradient(to top,rgba(0,0,0,.75),transparent);width:100%;aspect-ratio:6 / 1;z-index:-1;pointer-events:none}.video-container:hover .video-controls-container[data-v-eb980c65],.video-container:focus-within .video-controls-container[data-v-eb980c65],.video-container.paused .video-controls-container[data-v-eb980c65]{opacity:1}.video-controls-container .controls[data-v-eb980c65]{display:flex;gap:.5rem;padding:.75rem 1rem;align-items:center;width:100%}.video-controls-container .controls button[data-v-eb980c65]{background:none;border:none;color:inherit;padding:0;height:32px;width:32px;font-size:1.35rem;cursor:pointer;opacity:.85;transition:opacity .15s ease-in-out}.video-controls-container .controls button[data-v-eb980c65]:hover{opacity:1}.duration-container[data-v-eb980c65]{display:flex;align-items:center;gap:.25rem;flex-grow:1}.video-container.captions .captions-btn[data-v-eb980c65]{border-bottom:3px solid #0090ff}.video-controls-container .controls button.wide-btn[data-v-eb980c65]{width:50px}.timeline-container[data-v-eb980c65]{width:100%;height:7px;margin-inline:.5rem;cursor:pointer;display:flex;align-items:center}.timeline[data-v-eb980c65]{background-color:#64646480;height:3px;width:100%;position:relative}.timeline[data-v-eb980c65]:before{content:"";position:absolute;left:0;top:0;bottom:0;right:calc(100% - var(--preview-position) * 100%);background-color:#969696;display:none}.timeline[data-v-eb980c65]:after{content:"";position:absolute;left:0;top:0;bottom:0;right:calc(100% - var(--progress-position) * 100%);background-color:#0090ff}.timeline .thumb-indicator[data-v-eb980c65]{--scale: 0;position:absolute;transform:translate(-50%) scale(var(--scale));height:200%;top:-50%;left:calc(var(--progress-position) * 100%);background-color:#0090ff;border-radius:50%;transition:transform .15s ease-in-out;aspect-ratio:1 / 1}.video-container.scrubbing .thumbnail-img[data-v-eb980c65]{display:block}.video-container.scrubbing .timeline[data-v-eb980c65]:before,.timeline-container:hover .timeline[data-v-eb980c65]:before{display:block}.video-container.scrubbing .thumb-indicator[data-v-eb980c65],.timeline-container:hover .thumb-indicator[data-v-eb980c65]{--scale: 1}.video-container.scrubbing .timeline[data-v-eb980c65],.timeline-container:hover .timeline[data-v-eb980c65]{height:100%}.e-tl-milestone{position:absolute;border-radius:10em;box-sizing:border-box}.e-tl-milestone-content{cursor:pointer}.e-tl-milestone--bullet{transform:translate(-50%,-50%)}.e-tl-milestone--bullet .e-tl-milestone-content{opacity:0;width:0;height:0;white-space:nowrap;pointer-events:none;cursor:pointer}.e-tl-milestone--bullet.e-tl-milestone--hovered{cursor:pointer;min-height:26px;padding:0 8px;border-radius:.5em}.e-tl-milestone--bullet.e-tl-milestone--hovered .e-tl-milestone-content{opacity:1;font-size:small;font-weight:500;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.e-tl-milestone--bullet .e-tl-milestone-label{position:absolute;top:0;left:0;opacity:1;pointer-events:none;height:100%;width:100%}.e-tl-milestone--bullet.e-tl-milestone--hovered .e-tl-milestone-label{opacity:0}.e-tl-milestone--dot{transform:translateY(-50%)}.e-tl-milestone-dot--hovered .e-tl-milestone-dot-container{padding:0 3em;transform:translate(-50%);opacity:1}.e-tl-milestone-dot-line{position:absolute}.e-tl-milestone-dot-dot{position:absolute;border-radius:50%}.e-tl-milestone-dot-container{opacity:0;position:absolute;padding:0 .3em;transform:translate(-50%,-100%);cursor:pointer}.e-timeline svg{display:block}.e-timeline .x-axis-overview .domain,.e-timeline .x-axis-detailed .domain,.e-timeline .x-axis-overviewBackground .domain,.e-timeline .x-axis-detailedBackground .domain{display:none}.e-timeline .x-axis-detailedBackground .domain,.e-timeline .x-axis-detailedBackground text{display:none}.e-timeline .x-axis-overview>g.tick>line{opacity:.1;stroke-width:3;stroke-linecap:round}.e-timeline .x-axis-detailed>g.tick>line{opacity:.1;stroke-linecap:round}.e-timeline .x-axis-detailedBackground>g.tick>line{opacity:.075;stroke-linecap:round}.e-timeline--dark .tick line{stroke:#fff}.e-timeline--dark .tick text{fill:#fff}@keyframes moveGradient{0%{transform:translate(-50%)}to{transform:translate(100%)}}@keyframes pulse-rect{0%{filter:saturate(3.5) drop-shadow(0 0 1px #0008)}50%{filter:saturate(.5) drop-shadow(0 0 0 #0000)}to{filter:saturate(3.5) drop-shadow(0 0 1px #0008)}}@keyframes pulse-circle{0%{r:4px}50%{r:1px}to{r:4px}}.loading-indicator{animation:moveGradient 1.5s ease-in infinite}.line-graph-dot--active{animation:pulse-circle 1s ease-in-out infinite}.event-rect--hovered{animation:pulse-rect 1s ease-in-out infinite}@keyframes dash{0%{filter:saturate(1) drop-shadow(0 0 0 #0000)}50%{stroke-width:2px;filter:saturate(2.5) drop-shadow(0 0 0 #0006)}to{filter:saturate(1) drop-shadow(0 0 0 #0000)}}.line-graph-group--highlighted path{animation:dash 1s ease-in-out infinite}.e-timeline--dragging{cursor:ew-resize}.curtain{cursor:ew-resize;fill:#3332;stroke-width:1px;stroke:#3338;transition:stroke-width .2s}.e-timeline--dragging .curtain{stroke-width:3px}.e-timeline--dark .curtain{fill:#fff3;stroke:#fff7}.event-bar-hover-zone{cursor:pointer}.external-labels-container{position:absolute;top:-1.5em;left:0}.external-label{margin-right:.35em;border-width:.5px;border-radius:.2em}.external-label__content{cursor:pointer;font-size:.8em;font-weight:500;padding:0 .6em;line-height:1.4em}.marker-label{transition:transform .2s;transform:translateY(-32px);position:absolute;width:max-content}.marker-label-text{position:absolute;width:max-content;font-size:.8em;font-weight:500;padding:0 .75em;border-radius:.4em .4em .4em 0;box-shadow:0 0 5px -1px #000000f5}.marker-label-text:after{content:"";background:inherit;width:5px;height:5px;bottom:-5px;position:absolute;left:2px;clip-path:path("M 0,5 L 0,0 L 5,0 A 5,5 0 0 0 0,5")}.marker-label-text:before{content:"";background:inherit;height:20px;top:18px;position:absolute;width:2px;left:0}.marker{top:0;filter:saturate(.9)}.marker-line{position:absolute;width:2px;top:-24px;transition:top .2s,height .2s}.marker:hover{cursor:pointer;opacity:1;filter:saturate(1.1)}.marker:hover .marker-label{transform:translateY(-38px);height:61px;width:255px;padding-bottom:42px}.marker:hover .marker-label-text{box-shadow:2px 2px 11px -4px #000}.marker--hidden:hover .marker-label{transform:translateY(-54px)}.marker--draggable,.marker--draggable:hover{user-select:none;cursor:grab}.marker--dragged:hover{cursor:grabbing}.forbidden-interval{opacity:.2}.e-timeline-milestones{height:0}.video-embed[data-v-0ecf4a71]{position:relative;width:100%!important;padding-bottom:56.25%}.video-embed iframe[data-v-0ecf4a71]{position:absolute;top:0;left:0;width:100%;height:100%}.e-heatmap-bar__label{white-space:nowrap;width:6rem;min-width:6rem}.e-heatmap-bar__item{height:16px;margin:2px;position:relative;cursor:pointer;border-radius:2px;min-width:0}.e-heatmap-bar__item:hover{box-shadow:0 0 0 1.5px #5c6d97}.e-heatmap-bar__item--selected{box-shadow:0 0 0 2px #151e3a}.e-heatmap-bar__item__count{font-size:12px;color:#fff;font-weight:500}.e-heatmap-bar__item__count--light{color:#0a214bbd}.e-heatmap-bar__item__name{position:absolute;top:-25px}.e-heatmap-bar:not(.e-heatmap-bar--dense) .e-heatmap-bar__item{min-width:35px}
package/dist/styles.css CHANGED
@@ -212,9 +212,18 @@
212
212
  .e-relative{
213
213
  position: relative;
214
214
  }
215
+ .e-inset-0{
216
+ inset: 0px;
217
+ }
215
218
  .-e-left-2\/4{
216
219
  left: -50%;
217
220
  }
221
+ .e-bottom-0{
222
+ bottom: 0px;
223
+ }
224
+ .e-left-0{
225
+ left: 0px;
226
+ }
218
227
  .e-right-0{
219
228
  right: 0px;
220
229
  }
@@ -224,9 +233,18 @@
224
233
  .e-z-50{
225
234
  z-index: 50;
226
235
  }
236
+ .e-z-\[-1\]{
237
+ z-index: -1;
238
+ }
239
+ .e-z-\[5\]{
240
+ z-index: 5;
241
+ }
227
242
  .e-m-2{
228
243
  margin: 0.5rem;
229
244
  }
245
+ .e-m-auto{
246
+ margin: auto;
247
+ }
230
248
  .e-mx-auto{
231
249
  margin-left: auto;
232
250
  margin-right: auto;
@@ -252,6 +270,12 @@
252
270
  .e-inline-flex{
253
271
  display: inline-flex;
254
272
  }
273
+ .e-hidden{
274
+ display: none;
275
+ }
276
+ .e-aspect-auto{
277
+ aspect-ratio: auto;
278
+ }
255
279
  .e-h-10{
256
280
  height: 2.5rem;
257
281
  }
@@ -288,9 +312,15 @@
288
312
  .e-h-8{
289
313
  height: 2rem;
290
314
  }
315
+ .e-h-auto{
316
+ height: auto;
317
+ }
291
318
  .e-h-full{
292
319
  height: 100%;
293
320
  }
321
+ .e-h-min{
322
+ height: min-content;
323
+ }
294
324
  .\!e-w-auto{
295
325
  width: auto !important;
296
326
  }
@@ -333,6 +363,9 @@
333
363
  .e-w-auto{
334
364
  width: auto;
335
365
  }
366
+ .e-w-fit{
367
+ width: fit-content;
368
+ }
336
369
  .e-w-full{
337
370
  width: 100%;
338
371
  }
@@ -615,9 +648,23 @@
615
648
  .e-basis-full{
616
649
  flex-basis: 100%;
617
650
  }
651
+ .e-scale-150{
652
+ --tw-scale-x: 1.5;
653
+ --tw-scale-y: 1.5;
654
+ transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
655
+ }
656
+ .e-cursor-grab{
657
+ cursor: grab;
658
+ }
659
+ .e-cursor-grabbing{
660
+ cursor: grabbing;
661
+ }
618
662
  .e-cursor-pointer{
619
663
  cursor: pointer;
620
664
  }
665
+ .e-touch-none{
666
+ touch-action: none;
667
+ }
621
668
  .e-select-none{
622
669
  user-select: none;
623
670
  }
@@ -741,6 +788,9 @@
741
788
  .e-gap-3{
742
789
  gap: 0.75rem;
743
790
  }
791
+ .e-gap-6{
792
+ gap: 1.5rem;
793
+ }
744
794
  .e-space-x-2 > :not([hidden]) ~ :not([hidden]){
745
795
  --tw-space-x-reverse: 0;
746
796
  margin-right: calc(0.5rem * var(--tw-space-x-reverse));
@@ -776,6 +826,9 @@
776
826
  .e-overflow-auto{
777
827
  overflow: auto;
778
828
  }
829
+ .e-overflow-hidden{
830
+ overflow: hidden;
831
+ }
779
832
  .e-overflow-x-hidden{
780
833
  overflow-x: hidden;
781
834
  }
@@ -813,6 +866,10 @@
813
866
  --tw-border-opacity: 1;
814
867
  border-color: rgb(55 65 81 / var(--tw-border-opacity));
815
868
  }
869
+ .e-bg-\[\#629efc\]{
870
+ --tw-bg-opacity: 1;
871
+ background-color: rgb(98 158 252 / var(--tw-bg-opacity));
872
+ }
816
873
  .e-bg-amber-500{
817
874
  --tw-bg-opacity: 1;
818
875
  background-color: rgb(245 158 11 / var(--tw-bg-opacity));
@@ -821,6 +878,10 @@
821
878
  --tw-bg-opacity: 1;
822
879
  background-color: rgb(237 99 104 / var(--tw-bg-opacity));
823
880
  }
881
+ .e-bg-brand-600{
882
+ --tw-bg-opacity: 1;
883
+ background-color: rgb(156 18 22 / var(--tw-bg-opacity));
884
+ }
824
885
  .e-bg-cyan-500{
825
886
  --tw-bg-opacity: 1;
826
887
  background-color: rgb(6 182 212 / var(--tw-bg-opacity));
@@ -833,6 +894,10 @@
833
894
  --tw-bg-opacity: 1;
834
895
  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
835
896
  }
897
+ .e-bg-gray-600{
898
+ --tw-bg-opacity: 1;
899
+ background-color: rgb(75 85 99 / var(--tw-bg-opacity));
900
+ }
836
901
  .e-bg-gray-800{
837
902
  --tw-bg-opacity: 1;
838
903
  background-color: rgb(31 41 55 / var(--tw-bg-opacity));
@@ -845,6 +910,9 @@
845
910
  --tw-bg-opacity: 1;
846
911
  background-color: rgb(22 163 74 / var(--tw-bg-opacity));
847
912
  }
913
+ .e-bg-inherit{
914
+ background-color: inherit;
915
+ }
848
916
  .e-bg-lime-500{
849
917
  --tw-bg-opacity: 1;
850
918
  background-color: rgb(132 204 22 / var(--tw-bg-opacity));
@@ -857,10 +925,6 @@
857
925
  --tw-bg-opacity: 1;
858
926
  background-color: rgb(38 38 38 / var(--tw-bg-opacity));
859
927
  }
860
- .e-bg-primary{
861
- --tw-bg-opacity: 1;
862
- background-color: rgb(14 165 233 / var(--tw-bg-opacity));
863
- }
864
928
  .e-bg-purple-500{
865
929
  --tw-bg-opacity: 1;
866
930
  background-color: rgb(168 85 247 / var(--tw-bg-opacity));
@@ -883,6 +947,9 @@
883
947
  .e-p-1{
884
948
  padding: 0.25rem;
885
949
  }
950
+ .e-p-1\.5{
951
+ padding: 0.375rem;
952
+ }
886
953
  .e-p-2{
887
954
  padding: 0.5rem;
888
955
  }
@@ -907,6 +974,10 @@
907
974
  padding-left: 1rem;
908
975
  padding-right: 1rem;
909
976
  }
977
+ .e-py-\[\.2rem\]{
978
+ padding-top: .2rem;
979
+ padding-bottom: .2rem;
980
+ }
910
981
  .e-pb-2{
911
982
  padding-bottom: 0.5rem;
912
983
  }
@@ -973,6 +1044,9 @@
973
1044
  .e-font-semibold{
974
1045
  font-weight: 600;
975
1046
  }
1047
+ .e-leading-3{
1048
+ line-height: .75rem;
1049
+ }
976
1050
  .e-leading-6{
977
1051
  line-height: 1.5rem;
978
1052
  }
@@ -988,10 +1062,18 @@
988
1062
  --tw-text-opacity: 1;
989
1063
  color: rgb(96 165 250 / var(--tw-text-opacity));
990
1064
  }
1065
+ .e-text-gray-100{
1066
+ --tw-text-opacity: 1;
1067
+ color: rgb(243 244 246 / var(--tw-text-opacity));
1068
+ }
991
1069
  .e-text-gray-700{
992
1070
  --tw-text-opacity: 1;
993
1071
  color: rgb(55 65 81 / var(--tw-text-opacity));
994
1072
  }
1073
+ .e-text-gray-900{
1074
+ --tw-text-opacity: 1;
1075
+ color: rgb(17 24 39 / var(--tw-text-opacity));
1076
+ }
995
1077
  .e-text-green-500{
996
1078
  --tw-text-opacity: 1;
997
1079
  color: rgb(34 197 94 / var(--tw-text-opacity));
@@ -1040,6 +1122,11 @@
1040
1122
  .e-underline-offset-8{
1041
1123
  text-underline-offset: 8px;
1042
1124
  }
1125
+ .e-shadow{
1126
+ --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
1127
+ --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
1128
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
1129
+ }
1043
1130
  .e-shadow-lg{
1044
1131
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
1045
1132
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
@@ -1117,6 +1204,26 @@
1117
1204
  .e-outline-offset-8{
1118
1205
  outline-offset: 8px;
1119
1206
  }
1207
+ .e-blur-video-poster{
1208
+ --tw-blur: blur(32px);
1209
+ filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
1210
+ }
1211
+ .e-transition{
1212
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
1213
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
1214
+ transition-duration: 150ms;
1215
+ }
1216
+ .e-transition-colors{
1217
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
1218
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
1219
+ transition-duration: 150ms;
1220
+ }
1221
+ .e-duration-200{
1222
+ transition-duration: 200ms;
1223
+ }
1224
+ .e-ease-in-out{
1225
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
1226
+ }
1120
1227
  @media (min-width: 640px){
1121
1228
 
1122
1229
  .sm\:\!e-w-auto{