@editframe/elements 0.20.4-beta.0 → 0.23.6-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.
- package/dist/DelayedLoadingState.js +0 -27
- package/dist/EF_FRAMEGEN.d.ts +5 -3
- package/dist/EF_FRAMEGEN.js +49 -11
- package/dist/_virtual/_@oxc-project_runtime@0.94.0/helpers/decorate.js +7 -0
- package/dist/attachContextRoot.d.ts +1 -0
- package/dist/attachContextRoot.js +9 -0
- package/dist/elements/ContextProxiesController.d.ts +1 -2
- package/dist/elements/EFAudio.js +5 -9
- package/dist/elements/EFCaptions.d.ts +1 -3
- package/dist/elements/EFCaptions.js +112 -129
- package/dist/elements/EFImage.js +6 -7
- package/dist/elements/EFMedia/AssetIdMediaEngine.js +2 -5
- package/dist/elements/EFMedia/AssetMediaEngine.js +36 -33
- package/dist/elements/EFMedia/BaseMediaEngine.js +57 -73
- package/dist/elements/EFMedia/BufferedSeekingInput.d.ts +1 -1
- package/dist/elements/EFMedia/BufferedSeekingInput.js +134 -78
- package/dist/elements/EFMedia/JitMediaEngine.js +9 -19
- package/dist/elements/EFMedia/audioTasks/makeAudioBufferTask.js +7 -13
- package/dist/elements/EFMedia/audioTasks/makeAudioFrequencyAnalysisTask.js +2 -3
- package/dist/elements/EFMedia/audioTasks/makeAudioInitSegmentFetchTask.js +1 -1
- package/dist/elements/EFMedia/audioTasks/makeAudioInputTask.js +6 -5
- package/dist/elements/EFMedia/audioTasks/makeAudioSeekTask.js +1 -3
- package/dist/elements/EFMedia/audioTasks/makeAudioSegmentFetchTask.js +1 -1
- package/dist/elements/EFMedia/audioTasks/makeAudioSegmentIdTask.js +1 -1
- package/dist/elements/EFMedia/audioTasks/makeAudioTimeDomainAnalysisTask.js +1 -1
- package/dist/elements/EFMedia/shared/AudioSpanUtils.js +9 -25
- package/dist/elements/EFMedia/shared/BufferUtils.js +2 -17
- package/dist/elements/EFMedia/shared/GlobalInputCache.js +0 -24
- package/dist/elements/EFMedia/shared/PrecisionUtils.js +0 -21
- package/dist/elements/EFMedia/shared/ThumbnailExtractor.js +0 -17
- package/dist/elements/EFMedia/tasks/makeMediaEngineTask.js +1 -10
- package/dist/elements/EFMedia/videoTasks/MainVideoInputCache.d.ts +29 -0
- package/dist/elements/EFMedia/videoTasks/MainVideoInputCache.js +32 -0
- package/dist/elements/EFMedia/videoTasks/ScrubInputCache.js +1 -15
- package/dist/elements/EFMedia/videoTasks/makeScrubVideoBufferTask.js +1 -7
- package/dist/elements/EFMedia/videoTasks/makeScrubVideoInputTask.js +8 -5
- package/dist/elements/EFMedia/videoTasks/makeScrubVideoSeekTask.js +12 -13
- package/dist/elements/EFMedia/videoTasks/makeScrubVideoSegmentIdTask.js +1 -1
- package/dist/elements/EFMedia/videoTasks/makeUnifiedVideoSeekTask.js +134 -70
- package/dist/elements/EFMedia/videoTasks/makeVideoBufferTask.js +11 -18
- package/dist/elements/EFMedia.d.ts +19 -0
- package/dist/elements/EFMedia.js +44 -25
- package/dist/elements/EFSourceMixin.js +5 -7
- package/dist/elements/EFSurface.js +6 -9
- package/dist/elements/EFTemporal.browsertest.d.ts +11 -0
- package/dist/elements/EFTemporal.d.ts +10 -0
- package/dist/elements/EFTemporal.js +100 -41
- package/dist/elements/EFThumbnailStrip.js +23 -73
- package/dist/elements/EFTimegroup.browsertest.d.ts +3 -3
- package/dist/elements/EFTimegroup.d.ts +35 -14
- package/dist/elements/EFTimegroup.js +138 -181
- package/dist/elements/EFVideo.d.ts +16 -2
- package/dist/elements/EFVideo.js +156 -108
- package/dist/elements/EFWaveform.js +23 -40
- package/dist/elements/SampleBuffer.js +3 -7
- package/dist/elements/TargetController.js +5 -5
- package/dist/elements/durationConverter.js +4 -4
- package/dist/elements/renderTemporalAudio.d.ts +10 -0
- package/dist/elements/renderTemporalAudio.js +35 -0
- package/dist/elements/updateAnimations.js +19 -43
- package/dist/gui/ContextMixin.d.ts +5 -5
- package/dist/gui/ContextMixin.js +167 -162
- package/dist/gui/Controllable.browsertest.d.ts +0 -0
- package/dist/gui/Controllable.d.ts +15 -0
- package/dist/gui/Controllable.js +9 -0
- package/dist/gui/EFConfiguration.js +7 -7
- package/dist/gui/EFControls.browsertest.d.ts +11 -0
- package/dist/gui/EFControls.d.ts +18 -4
- package/dist/gui/EFControls.js +70 -28
- package/dist/gui/EFDial.browsertest.d.ts +0 -0
- package/dist/gui/EFDial.d.ts +18 -0
- package/dist/gui/EFDial.js +141 -0
- package/dist/gui/EFFilmstrip.browsertest.d.ts +11 -0
- package/dist/gui/EFFilmstrip.d.ts +12 -2
- package/dist/gui/EFFilmstrip.js +214 -129
- package/dist/gui/EFFitScale.js +5 -8
- package/dist/gui/EFFocusOverlay.js +4 -4
- package/dist/gui/EFPause.browsertest.d.ts +0 -0
- package/dist/gui/EFPause.d.ts +23 -0
- package/dist/gui/EFPause.js +59 -0
- package/dist/gui/EFPlay.browsertest.d.ts +0 -0
- package/dist/gui/EFPlay.d.ts +23 -0
- package/dist/gui/EFPlay.js +59 -0
- package/dist/gui/EFPreview.d.ts +4 -0
- package/dist/gui/EFPreview.js +18 -9
- package/dist/gui/EFResizableBox.browsertest.d.ts +0 -0
- package/dist/gui/EFResizableBox.d.ts +34 -0
- package/dist/gui/EFResizableBox.js +547 -0
- package/dist/gui/EFScrubber.d.ts +9 -3
- package/dist/gui/EFScrubber.js +13 -13
- package/dist/gui/EFTimeDisplay.d.ts +7 -1
- package/dist/gui/EFTimeDisplay.js +8 -8
- package/dist/gui/EFToggleLoop.d.ts +9 -3
- package/dist/gui/EFToggleLoop.js +7 -5
- package/dist/gui/EFTogglePlay.d.ts +12 -4
- package/dist/gui/EFTogglePlay.js +26 -21
- package/dist/gui/EFWorkbench.js +5 -5
- package/dist/gui/PlaybackController.d.ts +67 -0
- package/dist/gui/PlaybackController.js +310 -0
- package/dist/gui/TWMixin.js +1 -1
- package/dist/gui/TWMixin2.js +1 -1
- package/dist/gui/TargetOrContextMixin.d.ts +10 -0
- package/dist/gui/TargetOrContextMixin.js +98 -0
- package/dist/gui/efContext.d.ts +2 -2
- package/dist/index.d.ts +5 -0
- package/dist/index.js +5 -1
- package/dist/otel/BridgeSpanExporter.d.ts +13 -0
- package/dist/otel/BridgeSpanExporter.js +87 -0
- package/dist/otel/setupBrowserTracing.d.ts +12 -0
- package/dist/otel/setupBrowserTracing.js +32 -0
- package/dist/otel/tracingHelpers.d.ts +34 -0
- package/dist/otel/tracingHelpers.js +112 -0
- package/dist/style.css +1 -1
- package/dist/transcoding/cache/RequestDeduplicator.js +0 -21
- package/dist/transcoding/cache/URLTokenDeduplicator.js +1 -21
- package/dist/transcoding/utils/UrlGenerator.js +2 -19
- package/dist/utils/LRUCache.js +6 -53
- package/package.json +13 -5
- package/src/elements/ContextProxiesController.ts +10 -10
- package/src/elements/EFAudio.ts +1 -0
- package/src/elements/EFCaptions.browsertest.ts +128 -56
- package/src/elements/EFCaptions.ts +60 -34
- package/src/elements/EFImage.browsertest.ts +1 -2
- package/src/elements/EFMedia/AssetMediaEngine.ts +65 -37
- package/src/elements/EFMedia/BaseMediaEngine.ts +110 -52
- package/src/elements/EFMedia/BufferedSeekingInput.ts +218 -101
- package/src/elements/EFMedia/JitMediaEngine.browsertest.ts +3 -0
- package/src/elements/EFMedia/audioTasks/makeAudioInputTask.ts +7 -3
- package/src/elements/EFMedia/audioTasks/makeAudioSeekTask.chunkboundary.regression.browsertest.ts +1 -1
- package/src/elements/EFMedia/videoTasks/MainVideoInputCache.ts +76 -0
- package/src/elements/EFMedia/videoTasks/makeScrubVideoInputTask.ts +16 -10
- package/src/elements/EFMedia/videoTasks/makeScrubVideoSeekTask.ts +7 -1
- package/src/elements/EFMedia/videoTasks/makeUnifiedVideoSeekTask.ts +222 -116
- package/src/elements/EFMedia.browsertest.ts +8 -15
- package/src/elements/EFMedia.ts +54 -8
- package/src/elements/EFSurface.browsertest.ts +2 -6
- package/src/elements/EFSurface.ts +1 -0
- package/src/elements/EFTemporal.browsertest.ts +58 -1
- package/src/elements/EFTemporal.ts +140 -4
- package/src/elements/EFThumbnailStrip.browsertest.ts +2 -8
- package/src/elements/EFThumbnailStrip.ts +1 -0
- package/src/elements/EFTimegroup.browsertest.ts +16 -15
- package/src/elements/EFTimegroup.ts +281 -275
- package/src/elements/EFVideo.browsertest.ts +162 -74
- package/src/elements/EFVideo.ts +229 -101
- package/src/elements/FetchContext.browsertest.ts +7 -2
- package/src/elements/TargetController.browsertest.ts +1 -0
- package/src/elements/TargetController.ts +1 -0
- package/src/elements/renderTemporalAudio.ts +108 -0
- package/src/elements/updateAnimations.browsertest.ts +181 -6
- package/src/elements/updateAnimations.ts +6 -6
- package/src/gui/ContextMixin.browsertest.ts +274 -27
- package/src/gui/ContextMixin.ts +230 -175
- package/src/gui/Controllable.browsertest.ts +258 -0
- package/src/gui/Controllable.ts +41 -0
- package/src/gui/EFControls.browsertest.ts +294 -80
- package/src/gui/EFControls.ts +139 -28
- package/src/gui/EFDial.browsertest.ts +84 -0
- package/src/gui/EFDial.ts +172 -0
- package/src/gui/EFFilmstrip.browsertest.ts +712 -0
- package/src/gui/EFFilmstrip.ts +213 -23
- package/src/gui/EFPause.browsertest.ts +202 -0
- package/src/gui/EFPause.ts +73 -0
- package/src/gui/EFPlay.browsertest.ts +202 -0
- package/src/gui/EFPlay.ts +73 -0
- package/src/gui/EFPreview.ts +20 -5
- package/src/gui/EFResizableBox.browsertest.ts +79 -0
- package/src/gui/EFResizableBox.ts +898 -0
- package/src/gui/EFScrubber.ts +7 -5
- package/src/gui/EFTimeDisplay.browsertest.ts +19 -19
- package/src/gui/EFTimeDisplay.ts +3 -1
- package/src/gui/EFToggleLoop.ts +6 -5
- package/src/gui/EFTogglePlay.ts +30 -23
- package/src/gui/PlaybackController.ts +522 -0
- package/src/gui/TWMixin.css +3 -0
- package/src/gui/TargetOrContextMixin.ts +185 -0
- package/src/gui/efContext.ts +2 -2
- package/src/otel/BridgeSpanExporter.ts +150 -0
- package/src/otel/setupBrowserTracing.ts +73 -0
- package/src/otel/tracingHelpers.ts +251 -0
- package/test/cache-integration-verification.browsertest.ts +1 -1
- package/types.json +1 -1
- package/dist/elements/ContextProxiesController.js +0 -69
package/dist/utils/LRUCache.js
CHANGED
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* A simple LRU (Least Recently Used) cache implementation
|
|
3
|
-
*/
|
|
4
1
|
var LRUCache = class {
|
|
5
2
|
constructor(maxSize) {
|
|
6
3
|
this.cache = /* @__PURE__ */ new Map();
|
|
@@ -35,10 +32,6 @@ var LRUCache = class {
|
|
|
35
32
|
return this.cache.size;
|
|
36
33
|
}
|
|
37
34
|
};
|
|
38
|
-
/**
|
|
39
|
-
* Size-aware LRU cache that tracks memory usage in bytes
|
|
40
|
-
* Evicts entries when total size exceeds the maximum
|
|
41
|
-
*/
|
|
42
35
|
var SizeAwareLRUCache = class {
|
|
43
36
|
constructor(maxSizeBytes) {
|
|
44
37
|
this.cache = /* @__PURE__ */ new Map();
|
|
@@ -112,17 +105,11 @@ var SizeAwareLRUCache = class {
|
|
|
112
105
|
return this.maxSizeBytes;
|
|
113
106
|
}
|
|
114
107
|
};
|
|
115
|
-
/**
|
|
116
|
-
* Red-Black Tree node colors
|
|
117
|
-
*/
|
|
118
108
|
var Color = /* @__PURE__ */ function(Color$1) {
|
|
119
109
|
Color$1["RED"] = "RED";
|
|
120
110
|
Color$1["BLACK"] = "BLACK";
|
|
121
111
|
return Color$1;
|
|
122
112
|
}(Color || {});
|
|
123
|
-
/**
|
|
124
|
-
* Red-Black Tree node for ordered key storage
|
|
125
|
-
*/
|
|
126
113
|
var RBTreeNode = class {
|
|
127
114
|
constructor(key, color = Color.RED, left = null, right = null, parent = null) {
|
|
128
115
|
this.key = key;
|
|
@@ -132,10 +119,6 @@ var RBTreeNode = class {
|
|
|
132
119
|
this.parent = parent;
|
|
133
120
|
}
|
|
134
121
|
};
|
|
135
|
-
/**
|
|
136
|
-
* Red-Black Tree implementation for O(log n) operations
|
|
137
|
-
* Supports insert, delete, search, range queries, and nearest neighbor
|
|
138
|
-
*/
|
|
139
122
|
var RedBlackTree = class {
|
|
140
123
|
constructor(compareFn) {
|
|
141
124
|
this.root = null;
|
|
@@ -198,16 +181,12 @@ var RedBlackTree = class {
|
|
|
198
181
|
let current = this.root;
|
|
199
182
|
while (current) {
|
|
200
183
|
parent = current;
|
|
201
|
-
|
|
202
|
-
current = cmp < 0 ? current.left : current.right;
|
|
184
|
+
current = this.compareFn(node.key, current.key) < 0 ? current.left : current.right;
|
|
203
185
|
}
|
|
204
186
|
node.parent = parent;
|
|
205
187
|
if (!parent) this.root = node;
|
|
206
|
-
else
|
|
207
|
-
|
|
208
|
-
if (cmp < 0) parent.left = node;
|
|
209
|
-
else parent.right = node;
|
|
210
|
-
}
|
|
188
|
+
else if (this.compareFn(node.key, parent.key) < 0) parent.left = node;
|
|
189
|
+
else parent.right = node;
|
|
211
190
|
}
|
|
212
191
|
fixInsert(node) {
|
|
213
192
|
while (node.parent && node.parent.color === Color.RED) if (node.parent === node.parent.parent?.left) {
|
|
@@ -392,10 +371,6 @@ var RedBlackTree = class {
|
|
|
392
371
|
if (endCmp < 0) this.inorderRange(node.right, start, end, result);
|
|
393
372
|
}
|
|
394
373
|
};
|
|
395
|
-
/**
|
|
396
|
-
* LRU cache with binary search capabilities using Red-Black tree
|
|
397
|
-
* All operations are O(log n) for ordered queries and O(1) for LRU operations
|
|
398
|
-
*/
|
|
399
374
|
var OrderedLRUCache = class {
|
|
400
375
|
constructor(maxSize, compareFn) {
|
|
401
376
|
this.cache = /* @__PURE__ */ new Map();
|
|
@@ -403,9 +378,6 @@ var OrderedLRUCache = class {
|
|
|
403
378
|
this.compareFn = compareFn || ((a, b) => a < b ? -1 : a > b ? 1 : 0);
|
|
404
379
|
this.tree = new RedBlackTree(this.compareFn);
|
|
405
380
|
}
|
|
406
|
-
/**
|
|
407
|
-
* Get value by exact key (O(1))
|
|
408
|
-
*/
|
|
409
381
|
get(key) {
|
|
410
382
|
const value = this.cache.get(key);
|
|
411
383
|
if (value) {
|
|
@@ -414,12 +386,8 @@ var OrderedLRUCache = class {
|
|
|
414
386
|
}
|
|
415
387
|
return value;
|
|
416
388
|
}
|
|
417
|
-
/**
|
|
418
|
-
* Set key-value pair (O(log n) for tree operations, O(1) for cache)
|
|
419
|
-
*/
|
|
420
389
|
set(key, value) {
|
|
421
|
-
|
|
422
|
-
if (isUpdate) this.cache.delete(key);
|
|
390
|
+
if (this.cache.has(key)) this.cache.delete(key);
|
|
423
391
|
else {
|
|
424
392
|
if (this.cache.size >= this.maxSize) {
|
|
425
393
|
const firstKey = this.cache.keys().next().value;
|
|
@@ -432,18 +400,9 @@ var OrderedLRUCache = class {
|
|
|
432
400
|
}
|
|
433
401
|
this.cache.set(key, value);
|
|
434
402
|
}
|
|
435
|
-
/**
|
|
436
|
-
* Find exact key using tree search (O(log n))
|
|
437
|
-
*/
|
|
438
403
|
findExact(key) {
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
return void 0;
|
|
442
|
-
}
|
|
443
|
-
/**
|
|
444
|
-
* Find keys within distance of center point (O(log n + k) where k is result count)
|
|
445
|
-
* Returns empty array if no keys found in range
|
|
446
|
-
*/
|
|
404
|
+
if (this.tree.find(key) !== null) return this.get(key);
|
|
405
|
+
}
|
|
447
406
|
findNearestInRange(center, distance) {
|
|
448
407
|
const nearestKeys = this.tree.findNearestInRange(center, distance);
|
|
449
408
|
const result = [];
|
|
@@ -456,9 +415,6 @@ var OrderedLRUCache = class {
|
|
|
456
415
|
}
|
|
457
416
|
return result;
|
|
458
417
|
}
|
|
459
|
-
/**
|
|
460
|
-
* Find all key-value pairs in range [start, end] (O(log n + k) where k is result count)
|
|
461
|
-
*/
|
|
462
418
|
findRange(start, end) {
|
|
463
419
|
const keys = this.tree.findRange(start, end);
|
|
464
420
|
const result = [];
|
|
@@ -471,9 +427,6 @@ var OrderedLRUCache = class {
|
|
|
471
427
|
}
|
|
472
428
|
return result;
|
|
473
429
|
}
|
|
474
|
-
/**
|
|
475
|
-
* Get all keys in sorted order (O(n))
|
|
476
|
-
*/
|
|
477
430
|
getSortedKeys() {
|
|
478
431
|
return this.tree.getAllSorted();
|
|
479
432
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@editframe/elements",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.23.6-beta.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": {
|
|
@@ -27,12 +27,20 @@
|
|
|
27
27
|
"license": "UNLICENSED",
|
|
28
28
|
"dependencies": {
|
|
29
29
|
"@bramus/style-observer": "^1.3.0",
|
|
30
|
-
"@editframe/assets": "0.
|
|
31
|
-
"@lit/context": "^1.1.
|
|
32
|
-
"@lit/task": "^1.0.
|
|
30
|
+
"@editframe/assets": "0.23.6-beta.0",
|
|
31
|
+
"@lit/context": "^1.1.6",
|
|
32
|
+
"@lit/task": "^1.0.3",
|
|
33
|
+
"@opentelemetry/api": "^1.9.0",
|
|
34
|
+
"@opentelemetry/context-zone": "^1.26.0",
|
|
35
|
+
"@opentelemetry/core": "^1.26.0",
|
|
36
|
+
"@opentelemetry/exporter-trace-otlp-http": "^0.53.0",
|
|
37
|
+
"@opentelemetry/resources": "^1.26.0",
|
|
38
|
+
"@opentelemetry/sdk-trace-base": "^1.26.0",
|
|
39
|
+
"@opentelemetry/sdk-trace-web": "^1.26.0",
|
|
40
|
+
"@opentelemetry/semantic-conventions": "^1.37.0",
|
|
33
41
|
"d3": "^7.9.0",
|
|
34
42
|
"debug": "^4.3.5",
|
|
35
|
-
"lit": "^3.1
|
|
43
|
+
"lit": "^3.3.1",
|
|
36
44
|
"mediabunny": "^1.1.1",
|
|
37
45
|
"zod": "^3.24.1"
|
|
38
46
|
},
|
|
@@ -23,7 +23,7 @@ export type ContextProxyConfig = {
|
|
|
23
23
|
* // @ts-expect-error controller is intentionally not referenced directly
|
|
24
24
|
* #contextProxyController = new ContextProxyController(this, {
|
|
25
25
|
* target: () => this.targetElement,
|
|
26
|
-
* contexts: [playingContext, loopContext,
|
|
26
|
+
* contexts: [playingContext, loopContext, targetTemporalContext]
|
|
27
27
|
* });
|
|
28
28
|
* }
|
|
29
29
|
* ```
|
|
@@ -31,16 +31,13 @@ export type ContextProxyConfig = {
|
|
|
31
31
|
export class ContextProxyController implements ReactiveController {
|
|
32
32
|
private host: LitElement;
|
|
33
33
|
private proxyMap = new Map<Context<any, any>, () => HTMLElement | null>();
|
|
34
|
-
private boundHandler: EventListener;
|
|
35
34
|
private pendingRequests: ContextEvent<any>[] = [];
|
|
36
35
|
|
|
37
36
|
constructor(host: LitElement, config: ContextProxyConfig) {
|
|
37
|
+
console.log("targetGetter? constructor");
|
|
38
38
|
this.host = host;
|
|
39
39
|
this.host.addController(this);
|
|
40
40
|
|
|
41
|
-
// Create the bound handler once
|
|
42
|
-
this.boundHandler = this.handleContextRequest.bind(this);
|
|
43
|
-
|
|
44
41
|
// Build the proxy map
|
|
45
42
|
for (const context of config.contexts) {
|
|
46
43
|
this.proxyMap.set(context, config.target);
|
|
@@ -48,11 +45,11 @@ export class ContextProxyController implements ReactiveController {
|
|
|
48
45
|
}
|
|
49
46
|
|
|
50
47
|
hostConnected(): void {
|
|
51
|
-
|
|
48
|
+
console.log("targetGetter? hostConnected");
|
|
52
49
|
}
|
|
53
50
|
|
|
54
51
|
hostDisconnected(): void {
|
|
55
|
-
this.host.removeEventListener("context-request", this.
|
|
52
|
+
this.host.removeEventListener("context-request", this.handleContextRequest);
|
|
56
53
|
}
|
|
57
54
|
|
|
58
55
|
hostUpdate(): void {
|
|
@@ -72,10 +69,11 @@ export class ContextProxyController implements ReactiveController {
|
|
|
72
69
|
}
|
|
73
70
|
}
|
|
74
71
|
|
|
75
|
-
private handleContextRequest(event: Event): void {
|
|
72
|
+
private handleContextRequest = (event: Event): void => {
|
|
76
73
|
const contextEvent = event as ContextEvent<any>;
|
|
77
74
|
|
|
78
75
|
// Check if we should proxy this context
|
|
76
|
+
console.log("targetGetter?", contextEvent.context);
|
|
79
77
|
const targetGetter = this.proxyMap.get(contextEvent.context);
|
|
80
78
|
|
|
81
79
|
if (targetGetter) {
|
|
@@ -89,15 +87,17 @@ export class ContextProxyController implements ReactiveController {
|
|
|
89
87
|
this.pendingRequests.push(contextEvent);
|
|
90
88
|
}
|
|
91
89
|
}
|
|
92
|
-
}
|
|
90
|
+
};
|
|
93
91
|
|
|
94
92
|
private processContextRequest(contextEvent: ContextEvent<any>): boolean {
|
|
95
93
|
const targetGetter = this.proxyMap.get(contextEvent.context);
|
|
94
|
+
console.log("targetGetter?", targetGetter);
|
|
96
95
|
if (!targetGetter) return false;
|
|
97
96
|
|
|
98
97
|
// Get the target element using the getter function
|
|
99
98
|
const targetElement = targetGetter();
|
|
100
99
|
|
|
100
|
+
console.log("targetElement?", targetElement);
|
|
101
101
|
if (!targetElement) {
|
|
102
102
|
return false;
|
|
103
103
|
}
|
|
@@ -110,7 +110,7 @@ export class ContextProxyController implements ReactiveController {
|
|
|
110
110
|
try {
|
|
111
111
|
const newEvent = new ContextEvent(
|
|
112
112
|
contextEvent.context,
|
|
113
|
-
// @ts-
|
|
113
|
+
// @ts-expect-error (this fails a typecheck but works)
|
|
114
114
|
contextEvent.callback,
|
|
115
115
|
contextEvent.subscribe,
|
|
116
116
|
);
|
package/src/elements/EFAudio.ts
CHANGED
|
@@ -13,6 +13,7 @@ export class EFAudio extends TWMixin(EFMedia) {
|
|
|
13
13
|
// TODO: Remove this as soon as we have an audio-specific property that needs @property
|
|
14
14
|
@property({ type: Boolean, attribute: "dummy-property" })
|
|
15
15
|
// @ts-expect-error - This is a hack to activate Lit's property processing system
|
|
16
|
+
// biome-ignore lint/correctness/noUnusedPrivateClassMembers: Used to activate Lit's property processing
|
|
16
17
|
private _propertyHack = false;
|
|
17
18
|
|
|
18
19
|
audioElementRef = createRef<HTMLAudioElement>();
|