@evercam/ui 0.0.55-beta.24 → 0.0.55-beta.25

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,80 @@ 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
+ loaderColor: {
192
+ type: StringConstructor;
193
+ default: string;
194
+ };
195
+ loaderSize: {
196
+ type: StringConstructor;
197
+ default: string;
198
+ };
199
+ }, {}, {
124
200
  playing: boolean;
125
201
  percentagePlayed: number;
126
202
  videoLength: string;
@@ -135,10 +211,23 @@ export declare const components: {
135
211
  isLoading: boolean;
136
212
  isError: boolean;
137
213
  player: import("hls.js").default;
214
+ playbackRetries: number;
215
+ preloadedSeconds: number;
216
+ preloadedInterval: {
217
+ start: string;
218
+ end: string;
219
+ };
220
+ }, {
221
+ sourceItems(): import('./components/EVideoPlayer.vue').VideoSource[];
222
+ hasStartedOrFinished(): boolean;
223
+ withControls(): "" | "hide";
138
224
  }, {
139
225
  initHls(): void;
226
+ onContainerClick(): void;
140
227
  handle404Error(): void;
228
+ handleHlsError(_: import("hls.js").Events.ERROR, data: import("hls.js").ErrorData): void;
141
229
  bindEvents(): void;
230
+ onProgress(): void;
142
231
  unbindEvents(): void;
143
232
  bindVideoEvent(which: string): void;
144
233
  initializePlayer(): void;
@@ -150,9 +239,9 @@ export declare const components: {
150
239
  handleScrubbingOnMouseEnd(e: MouseEvent): void;
151
240
  handleEnded(): void;
152
241
  handleLoading(): void;
153
- play(): void;
242
+ play(): Promise<void>;
154
243
  pause(): void;
155
- togglePlay(): void;
244
+ togglePlay(): Promise<void>;
156
245
  setPlaying(state: boolean): void;
157
246
  seekToPercentage(percentage: number): void;
158
247
  convertTimeToDuration(seconds: number): string;
@@ -165,18 +254,98 @@ export declare const components: {
165
254
  skip(duration?: number): void;
166
255
  toggleScrubbing(e: MouseEvent): Promise<void>;
167
256
  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: {};
257
+ }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{
258
+ targetTimestamp: {
259
+ type: (StringConstructor | DateConstructor)[];
260
+ default: undefined;
261
+ };
262
+ sources: {
263
+ type: import("vue").PropType<string | import('./components/EVideoPlayer.vue').VideoSource[]>;
264
+ required: true;
265
+ };
266
+ videoListeners: {
267
+ type: import("vue").PropType<Partial<HTMLVideoElement>>;
268
+ default: () => {};
269
+ };
270
+ videoOptions: {
271
+ type: import("vue").PropType<Partial<HTMLVideoElement>>;
272
+ default: () => {};
273
+ };
274
+ isHls: {
275
+ type: BooleanConstructor;
276
+ default: boolean;
277
+ };
278
+ streamingToken: {
279
+ type: StringConstructor;
280
+ default: string;
281
+ };
282
+ pauseOnClick: {
283
+ type: BooleanConstructor;
284
+ default: boolean;
285
+ };
286
+ isHlsLoading: {
287
+ type: BooleanConstructor;
288
+ default: boolean;
289
+ };
290
+ isPlaying: {
291
+ type: BooleanConstructor;
292
+ default: boolean;
293
+ };
294
+ selectedResolution: {
295
+ type: import("vue").PropType<import('./components/EVideoPlayer.vue').EdgeVideoResolution | undefined>;
296
+ default: undefined;
297
+ };
298
+ isZoomable: {
299
+ type: BooleanConstructor;
300
+ default: boolean;
301
+ };
302
+ zoomableIgnorePointerEvents: {
303
+ type: BooleanConstructor;
304
+ default: boolean;
305
+ };
306
+ timezone: {
307
+ type: StringConstructor;
308
+ default: string;
309
+ };
310
+ playPauseAnimation: {
311
+ type: BooleanConstructor;
312
+ default: boolean;
313
+ };
314
+ disablePlayPauseAnimation: {
315
+ type: BooleanConstructor;
316
+ default: boolean;
317
+ };
318
+ isWebRtc: {
319
+ type: BooleanConstructor;
320
+ default: boolean;
321
+ };
322
+ loaderColor: {
323
+ type: StringConstructor;
324
+ default: string;
325
+ };
326
+ loaderSize: {
327
+ type: StringConstructor;
328
+ default: string;
329
+ };
330
+ }>>, {
331
+ timezone: string;
332
+ isPlaying: boolean;
333
+ targetTimestamp: string | Date;
334
+ videoListeners: Partial<HTMLVideoElement>;
335
+ videoOptions: Partial<HTMLVideoElement>;
176
336
  isHls: boolean;
177
337
  streamingToken: string;
178
- isLiveView: boolean;
179
- }, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin>;
338
+ pauseOnClick: boolean;
339
+ isHlsLoading: boolean;
340
+ selectedResolution: import('./components/EVideoPlayer.vue').EdgeVideoResolution | undefined;
341
+ isZoomable: boolean;
342
+ zoomableIgnorePointerEvents: boolean;
343
+ playPauseAnimation: boolean;
344
+ disablePlayPauseAnimation: boolean;
345
+ isWebRtc: boolean;
346
+ loaderColor: string;
347
+ loaderSize: string;
348
+ }>;
180
349
  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
350
  tooltip: HTMLElement;
182
351
  cursor: HTMLElement;
@@ -563,13 +732,109 @@ export declare const components: {
563
732
  collapseText: string;
564
733
  moreTextWithPlaceholder: string;
565
734
  }, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin>;
566
- ETruncatedDiv: any;
735
+ 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>>, {
736
+ value: any;
737
+ }, {
738
+ getButtonClasses(optionValue: any): {
739
+ "e-bg-inherit": boolean;
740
+ "e-bg-brand-600": boolean;
741
+ "e-bg-gray-600": boolean;
742
+ "e-bg-[#629efc] e-text-gray-900 e-font-normal": boolean;
743
+ };
744
+ handleClick(value: any): void;
745
+ }, {
746
+ sizeClasses: {
747
+ container: import('./components/EToggleSwitch.vue').CssClassMap;
748
+ button: import('./components/EToggleSwitch.vue').CssClassMap;
749
+ text: import('./components/EToggleSwitch.vue').CssClassMap;
750
+ };
751
+ containerClasses: import('./components/EToggleSwitch.vue').CssClassMap;
752
+ textClasses: import('./components/EToggleSwitch.vue').CssClassMap;
753
+ buttonBaseClasses: import('./components/EToggleSwitch.vue').CssClassMap;
754
+ }, {
755
+ options: import('./components/EToggleSwitch.vue').EToggleSwitchOption[];
756
+ color: string;
757
+ size: import('./types').Size;
758
+ defaultValue: string | number | boolean;
759
+ }, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin>;
760
+ EZoomable: import("vue").DefineComponent<{
761
+ ignorePointerEvents: {
762
+ type: BooleanConstructor;
763
+ default: boolean;
764
+ };
765
+ withOverlay: {
766
+ type: BooleanConstructor;
767
+ default: boolean;
768
+ };
769
+ disabled: {
770
+ type: BooleanConstructor;
771
+ default: boolean;
772
+ };
773
+ }, {}, {
774
+ scale: number;
775
+ minScale: number;
776
+ maxScale: number;
777
+ top: number;
778
+ left: number;
779
+ isPanning: boolean;
780
+ panStart: {
781
+ x: number;
782
+ y: number;
783
+ };
784
+ isPinching: boolean;
785
+ previousPinchDistance: number;
786
+ pinchDistance: number;
787
+ pointers: {};
788
+ transform: string;
789
+ }, {
790
+ contentStyle(): {
791
+ transform: string;
792
+ };
793
+ isZoomed(): boolean;
794
+ }, {
795
+ updateZoomScale(): void;
796
+ handleZoom(e: any): void;
797
+ handleMouseDown(e: any): void;
798
+ handleMouseUp(): void;
799
+ handleMouseLeave(): void;
800
+ handleMouseMove(e: any): void;
801
+ applyBoundsCorrection(): void;
802
+ updateTransform(): void;
803
+ getPointersDistance(a: any, b: any): number;
804
+ getPointersMidPoint(a: any, b: any): {
805
+ x: any;
806
+ y: any;
807
+ };
808
+ updatePointerEvent(e: any): void;
809
+ clearPointerEvent(e: any): void;
810
+ updatePinchDistance(): void;
811
+ handlePointerDown(e: any): void;
812
+ handlePointerMove(e: any): void;
813
+ handlePointerUp(e: any): void;
814
+ }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{
815
+ ignorePointerEvents: {
816
+ type: BooleanConstructor;
817
+ default: boolean;
818
+ };
819
+ withOverlay: {
820
+ type: BooleanConstructor;
821
+ default: boolean;
822
+ };
823
+ disabled: {
824
+ type: BooleanConstructor;
825
+ default: boolean;
826
+ };
827
+ }>>, {
828
+ ignorePointerEvents: boolean;
829
+ withOverlay: boolean;
830
+ disabled: boolean;
831
+ }>;
567
832
  };
568
833
  declare const _default: {
569
834
  install(Vue: VueConstructor): void;
570
835
  };
571
836
  export default _default;
572
- export { EAvatar, EBadge, EIcon, ESpinner, ERow, ECol, EVideoPlayer, ETimeline, EVideoEmbed, EReadMore, ETruncatedDiv, };
837
+ export { EAvatar, EBadge, EIcon, ESpinner, ERow, ECol, EVideoPlayer, ETimeline, EVideoEmbed, EHeatmapBar, EHoursHeatmap, EReadMore, EToggleSwitch, EZoomable, };
573
838
  export * from './constants';
574
839
  export * from './types';
575
840
  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-948b8067]{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-9e9ffca8]{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-9e9ffca8]{position:relative;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;margin:0 auto}.video-container.full-screen[data-v-9e9ffca8]{max-width:initial;width:100%;max-height:100vh}video[data-v-9e9ffca8]{width:100%;height:inherit}.video-controls-container[data-v-9e9ffca8]{position:absolute;bottom:0;left:0;right:0;color:#fff;z-index:100;opacity:0;transition:opacity .15s ease-in-out}.hide[data-v-9e9ffca8]{display:none}.video-controls-container[data-v-9e9ffca8]: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-9e9ffca8],.video-container:focus-within .video-controls-container[data-v-9e9ffca8],.video-container.paused .video-controls-container[data-v-9e9ffca8]{opacity:1}.video-controls-container .controls[data-v-9e9ffca8]{display:flex;gap:.5rem;padding:.75rem 1rem;align-items:center;width:100%}.video-controls-container .controls button[data-v-9e9ffca8]{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-9e9ffca8]:hover{opacity:1}.duration-container[data-v-9e9ffca8]{display:flex;align-items:center;gap:.25rem;flex-grow:1}.video-container.captions .captions-btn[data-v-9e9ffca8]{border-bottom:3px solid red}.video-controls-container .controls button.wide-btn[data-v-9e9ffca8]{width:50px}.timeline-container[data-v-9e9ffca8]{width:100%;height:7px;margin-inline:.5rem;cursor:pointer;display:flex;align-items:center}.timeline[data-v-9e9ffca8]{background-color:#64646480;height:3px;width:100%;position:relative}.timeline[data-v-9e9ffca8]: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-9e9ffca8]: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-9e9ffca8]{--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-9e9ffca8]{display:block}.video-container.scrubbing .timeline[data-v-9e9ffca8]:before,.timeline-container:hover .timeline[data-v-9e9ffca8]:before{display:block}.video-container.scrubbing .thumb-indicator[data-v-9e9ffca8],.timeline-container:hover .thumb-indicator[data-v-9e9ffca8]{--scale: 1}.video-container.scrubbing .timeline[data-v-9e9ffca8],.timeline-container:hover .timeline[data-v-9e9ffca8]{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,15 @@
224
233
  .e-z-50{
225
234
  z-index: 50;
226
235
  }
236
+ .e-z-\[-1\]{
237
+ z-index: -1;
238
+ }
227
239
  .e-m-2{
228
240
  margin: 0.5rem;
229
241
  }
242
+ .e-m-auto{
243
+ margin: auto;
244
+ }
230
245
  .e-mx-auto{
231
246
  margin-left: auto;
232
247
  margin-right: auto;
@@ -252,6 +267,12 @@
252
267
  .e-inline-flex{
253
268
  display: inline-flex;
254
269
  }
270
+ .e-hidden{
271
+ display: none;
272
+ }
273
+ .e-aspect-auto{
274
+ aspect-ratio: auto;
275
+ }
255
276
  .e-h-10{
256
277
  height: 2.5rem;
257
278
  }
@@ -288,9 +309,15 @@
288
309
  .e-h-8{
289
310
  height: 2rem;
290
311
  }
312
+ .e-h-auto{
313
+ height: auto;
314
+ }
291
315
  .e-h-full{
292
316
  height: 100%;
293
317
  }
318
+ .e-h-min{
319
+ height: min-content;
320
+ }
294
321
  .\!e-w-auto{
295
322
  width: auto !important;
296
323
  }
@@ -333,6 +360,9 @@
333
360
  .e-w-auto{
334
361
  width: auto;
335
362
  }
363
+ .e-w-fit{
364
+ width: fit-content;
365
+ }
336
366
  .e-w-full{
337
367
  width: 100%;
338
368
  }
@@ -615,9 +645,23 @@
615
645
  .e-basis-full{
616
646
  flex-basis: 100%;
617
647
  }
648
+ .e-scale-150{
649
+ --tw-scale-x: 1.5;
650
+ --tw-scale-y: 1.5;
651
+ 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));
652
+ }
653
+ .e-cursor-grab{
654
+ cursor: grab;
655
+ }
656
+ .e-cursor-grabbing{
657
+ cursor: grabbing;
658
+ }
618
659
  .e-cursor-pointer{
619
660
  cursor: pointer;
620
661
  }
662
+ .e-touch-none{
663
+ touch-action: none;
664
+ }
621
665
  .e-select-none{
622
666
  user-select: none;
623
667
  }
@@ -741,6 +785,9 @@
741
785
  .e-gap-3{
742
786
  gap: 0.75rem;
743
787
  }
788
+ .e-gap-6{
789
+ gap: 1.5rem;
790
+ }
744
791
  .e-space-x-2 > :not([hidden]) ~ :not([hidden]){
745
792
  --tw-space-x-reverse: 0;
746
793
  margin-right: calc(0.5rem * var(--tw-space-x-reverse));
@@ -776,6 +823,9 @@
776
823
  .e-overflow-auto{
777
824
  overflow: auto;
778
825
  }
826
+ .e-overflow-hidden{
827
+ overflow: hidden;
828
+ }
779
829
  .e-overflow-x-hidden{
780
830
  overflow-x: hidden;
781
831
  }
@@ -813,6 +863,10 @@
813
863
  --tw-border-opacity: 1;
814
864
  border-color: rgb(55 65 81 / var(--tw-border-opacity));
815
865
  }
866
+ .e-bg-\[\#629efc\]{
867
+ --tw-bg-opacity: 1;
868
+ background-color: rgb(98 158 252 / var(--tw-bg-opacity));
869
+ }
816
870
  .e-bg-amber-500{
817
871
  --tw-bg-opacity: 1;
818
872
  background-color: rgb(245 158 11 / var(--tw-bg-opacity));
@@ -821,6 +875,10 @@
821
875
  --tw-bg-opacity: 1;
822
876
  background-color: rgb(237 99 104 / var(--tw-bg-opacity));
823
877
  }
878
+ .e-bg-brand-600{
879
+ --tw-bg-opacity: 1;
880
+ background-color: rgb(156 18 22 / var(--tw-bg-opacity));
881
+ }
824
882
  .e-bg-cyan-500{
825
883
  --tw-bg-opacity: 1;
826
884
  background-color: rgb(6 182 212 / var(--tw-bg-opacity));
@@ -833,6 +891,10 @@
833
891
  --tw-bg-opacity: 1;
834
892
  background-color: rgb(249 250 251 / var(--tw-bg-opacity));
835
893
  }
894
+ .e-bg-gray-600{
895
+ --tw-bg-opacity: 1;
896
+ background-color: rgb(75 85 99 / var(--tw-bg-opacity));
897
+ }
836
898
  .e-bg-gray-800{
837
899
  --tw-bg-opacity: 1;
838
900
  background-color: rgb(31 41 55 / var(--tw-bg-opacity));
@@ -845,6 +907,9 @@
845
907
  --tw-bg-opacity: 1;
846
908
  background-color: rgb(22 163 74 / var(--tw-bg-opacity));
847
909
  }
910
+ .e-bg-inherit{
911
+ background-color: inherit;
912
+ }
848
913
  .e-bg-lime-500{
849
914
  --tw-bg-opacity: 1;
850
915
  background-color: rgb(132 204 22 / var(--tw-bg-opacity));
@@ -857,10 +922,6 @@
857
922
  --tw-bg-opacity: 1;
858
923
  background-color: rgb(38 38 38 / var(--tw-bg-opacity));
859
924
  }
860
- .e-bg-primary{
861
- --tw-bg-opacity: 1;
862
- background-color: rgb(14 165 233 / var(--tw-bg-opacity));
863
- }
864
925
  .e-bg-purple-500{
865
926
  --tw-bg-opacity: 1;
866
927
  background-color: rgb(168 85 247 / var(--tw-bg-opacity));
@@ -883,6 +944,9 @@
883
944
  .e-p-1{
884
945
  padding: 0.25rem;
885
946
  }
947
+ .e-p-1\.5{
948
+ padding: 0.375rem;
949
+ }
886
950
  .e-p-2{
887
951
  padding: 0.5rem;
888
952
  }
@@ -907,6 +971,10 @@
907
971
  padding-left: 1rem;
908
972
  padding-right: 1rem;
909
973
  }
974
+ .e-py-\[\.2rem\]{
975
+ padding-top: .2rem;
976
+ padding-bottom: .2rem;
977
+ }
910
978
  .e-pb-2{
911
979
  padding-bottom: 0.5rem;
912
980
  }
@@ -973,6 +1041,9 @@
973
1041
  .e-font-semibold{
974
1042
  font-weight: 600;
975
1043
  }
1044
+ .e-leading-3{
1045
+ line-height: .75rem;
1046
+ }
976
1047
  .e-leading-6{
977
1048
  line-height: 1.5rem;
978
1049
  }
@@ -988,10 +1059,18 @@
988
1059
  --tw-text-opacity: 1;
989
1060
  color: rgb(96 165 250 / var(--tw-text-opacity));
990
1061
  }
1062
+ .e-text-gray-100{
1063
+ --tw-text-opacity: 1;
1064
+ color: rgb(243 244 246 / var(--tw-text-opacity));
1065
+ }
991
1066
  .e-text-gray-700{
992
1067
  --tw-text-opacity: 1;
993
1068
  color: rgb(55 65 81 / var(--tw-text-opacity));
994
1069
  }
1070
+ .e-text-gray-900{
1071
+ --tw-text-opacity: 1;
1072
+ color: rgb(17 24 39 / var(--tw-text-opacity));
1073
+ }
995
1074
  .e-text-green-500{
996
1075
  --tw-text-opacity: 1;
997
1076
  color: rgb(34 197 94 / var(--tw-text-opacity));
@@ -1040,6 +1119,11 @@
1040
1119
  .e-underline-offset-8{
1041
1120
  text-underline-offset: 8px;
1042
1121
  }
1122
+ .e-shadow{
1123
+ --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
1124
+ --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
1125
+ box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
1126
+ }
1043
1127
  .e-shadow-lg{
1044
1128
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
1045
1129
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
@@ -1117,6 +1201,26 @@
1117
1201
  .e-outline-offset-8{
1118
1202
  outline-offset: 8px;
1119
1203
  }
1204
+ .e-blur-video-poster{
1205
+ --tw-blur: blur(32px);
1206
+ 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);
1207
+ }
1208
+ .e-transition{
1209
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
1210
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
1211
+ transition-duration: 150ms;
1212
+ }
1213
+ .e-transition-colors{
1214
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
1215
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
1216
+ transition-duration: 150ms;
1217
+ }
1218
+ .e-duration-200{
1219
+ transition-duration: 200ms;
1220
+ }
1221
+ .e-ease-in-out{
1222
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
1223
+ }
1120
1224
  @media (min-width: 640px){
1121
1225
 
1122
1226
  .sm\:\!e-w-auto{