@editframe/elements 0.16.1-beta.0 → 0.16.3-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -19,6 +19,7 @@ export declare class EFTimegroup extends EFTimegroup_base {
19
19
  disconnectedCallback(): void;
20
20
  get storageKey(): string;
21
21
  get intrinsicDurationMs(): number | undefined;
22
+ get hasOwnDuration(): boolean;
22
23
  get durationMs(): number;
23
24
  /**
24
25
  * Wait for all media elements to load their initial segments.
@@ -128,6 +128,9 @@ let EFTimegroup = class extends EFTemporal(LitElement) {
128
128
  }
129
129
  return void 0;
130
130
  }
131
+ get hasOwnDuration() {
132
+ return this.mode === "contain" || this.mode === "sequence" || this.mode === "fixed" && this.hasExplicitDuration;
133
+ }
131
134
  get durationMs() {
132
135
  switch (this.mode) {
133
136
  case "fit": {
@@ -157,6 +160,9 @@ let EFTimegroup = class extends EFTemporal(LitElement) {
157
160
  if (child instanceof EFTimegroup && child.mode === "fit") {
158
161
  continue;
159
162
  }
163
+ if (!child.hasOwnDuration) {
164
+ continue;
165
+ }
160
166
  maxDuration = Math.max(maxDuration, child.durationMs);
161
167
  }
162
168
  return maxDuration;
@@ -103,12 +103,25 @@ let EFVideo = class extends TWMixin(EFMedia) {
103
103
  };
104
104
  _decoderLock = /* @__PURE__ */ new WeakMap();
105
105
  EFVideo.styles = [
106
+ /**
107
+ *
108
+ */
106
109
  css`
107
110
  :host {
108
111
  display: block;
109
112
  }
110
113
  canvas {
111
114
  all: inherit;
115
+ overflow: hidden;
116
+ position: static;
117
+ width: 100%;
118
+ height: 100%;
119
+ margin: 0;
120
+ padding: 0;
121
+ overflow: hidden;
122
+ border: none;
123
+ outline: none;
124
+ box-shadow: none;
112
125
  }
113
126
  `
114
127
  ];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@editframe/elements",
3
- "version": "0.16.1-beta.0",
3
+ "version": "0.16.3-beta.0",
4
4
  "description": "",
5
5
  "exports": {
6
6
  ".": {
@@ -27,7 +27,7 @@
27
27
  "license": "UNLICENSED",
28
28
  "dependencies": {
29
29
  "@bramus/style-observer": "^1.3.0",
30
- "@editframe/assets": "0.16.1-beta.0",
30
+ "@editframe/assets": "0.16.3-beta.0",
31
31
  "@lit/context": "^1.1.2",
32
32
  "@lit/task": "^1.0.1",
33
33
  "d3": "^7.9.0",
@@ -146,6 +146,14 @@ export class EFTimegroup extends EFTemporal(LitElement) {
146
146
  return undefined;
147
147
  }
148
148
 
149
+ get hasOwnDuration() {
150
+ return (
151
+ this.mode === "contain" ||
152
+ this.mode === "sequence" ||
153
+ (this.mode === "fixed" && this.hasExplicitDuration)
154
+ );
155
+ }
156
+
149
157
  get durationMs(): number {
150
158
  switch (this.mode) {
151
159
  case "fit": {
@@ -177,6 +185,9 @@ export class EFTimegroup extends EFTemporal(LitElement) {
177
185
  if (child instanceof EFTimegroup && child.mode === "fit") {
178
186
  continue;
179
187
  }
188
+ if (!child.hasOwnDuration) {
189
+ continue;
190
+ }
180
191
  maxDuration = Math.max(maxDuration, child.durationMs);
181
192
  }
182
193
  return maxDuration;
@@ -9,12 +9,25 @@ import { EFMedia } from "./EFMedia.js";
9
9
  @customElement("ef-video")
10
10
  export class EFVideo extends TWMixin(EFMedia) {
11
11
  static styles = [
12
+ /**
13
+ *
14
+ */
12
15
  css`
13
16
  :host {
14
17
  display: block;
15
18
  }
16
19
  canvas {
17
20
  all: inherit;
21
+ overflow: hidden;
22
+ position: static;
23
+ width: 100%;
24
+ height: 100%;
25
+ margin: 0;
26
+ padding: 0;
27
+ overflow: hidden;
28
+ border: none;
29
+ outline: none;
30
+ box-shadow: none;
18
31
  }
19
32
  `,
20
33
  ];