@revideo/2d 0.3.7-beta.987 → 0.3.7-blue.987

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.
@@ -1,113 +1,113 @@
1
- import {highlightTree} from '@lezer/highlight';
2
- import {useLogger} from '@revideo/core';
3
- import {defaultTokenize} from './CodeTokenizer';
1
+ import { highlightTree } from '@lezer/highlight';
2
+ import { useLogger } from '@revideo/core';
3
+ import { defaultTokenize } from './CodeTokenizer';
4
4
  export class LezerHighlighter {
5
- static registerParser(parser, dialect = '') {
6
- this.parserMap.set(dialect, parser);
7
- }
8
- constructor(style) {
9
- this.style = style;
10
- this.classLookup = new Map();
11
- for (const rule of this.style.module?.getRules().split('\n') ?? []) {
12
- const match = rule.match(LezerHighlighter.classRegex);
13
- if (!match) {
14
- continue;
15
- }
16
- const className = match[1];
17
- const color = match[2].trim();
18
- this.classLookup.set(className, color);
5
+ static registerParser(parser, dialect = '') {
6
+ this.parserMap.set(dialect, parser);
19
7
  }
20
- }
21
- initialize() {
22
- return true;
23
- }
24
- prepare(code, dialect) {
25
- const parser = LezerHighlighter.parserMap.get(dialect);
26
- if (!parser) {
27
- if (dialect !== '') {
28
- useLogger().warn(`No parser found for dialect: ${dialect}`);
29
- }
30
- return null;
31
- }
32
- const colorLookup = new Map();
33
- const tree = parser.parse(code);
34
- highlightTree(tree, this.style, (from, to, classes) => {
35
- const color = this.classLookup.get(classes);
36
- if (!color) {
37
- return;
38
- }
39
- const cursor = tree.cursorAt(from, 1);
40
- do {
41
- const id = this.getNodeId(cursor.node);
42
- colorLookup.set(id, color);
43
- } while (cursor.next() && cursor.to <= to);
44
- });
45
- return {
46
- tree,
47
- code,
48
- colorLookup,
49
- };
50
- }
51
- highlight(index, cache) {
52
- if (!cache) {
53
- return {
54
- color: null,
55
- skipAhead: 0,
56
- };
8
+ constructor(style) {
9
+ this.style = style;
10
+ this.classLookup = new Map();
11
+ for (const rule of this.style.module?.getRules().split('\n') ?? []) {
12
+ const match = rule.match(LezerHighlighter.classRegex);
13
+ if (!match) {
14
+ continue;
15
+ }
16
+ const className = match[1];
17
+ const color = match[2].trim();
18
+ this.classLookup.set(className, color);
19
+ }
57
20
  }
58
- const node = cache.tree.resolveInner(index, 1);
59
- const id = this.getNodeId(node);
60
- const color = cache.colorLookup.get(id);
61
- if (color) {
62
- return {
63
- color,
64
- skipAhead: node.to - index,
65
- };
21
+ initialize() {
22
+ return true;
66
23
  }
67
- let skipAhead = 0;
68
- if (!node.firstChild) {
69
- skipAhead = node.to - index;
24
+ prepare(code, dialect) {
25
+ const parser = LezerHighlighter.parserMap.get(dialect);
26
+ if (!parser) {
27
+ if (dialect !== '') {
28
+ useLogger().warn(`No parser found for dialect: ${dialect}`);
29
+ }
30
+ return null;
31
+ }
32
+ const colorLookup = new Map();
33
+ const tree = parser.parse(code);
34
+ highlightTree(tree, this.style, (from, to, classes) => {
35
+ const color = this.classLookup.get(classes);
36
+ if (!color) {
37
+ return;
38
+ }
39
+ const cursor = tree.cursorAt(from, 1);
40
+ do {
41
+ const id = this.getNodeId(cursor.node);
42
+ colorLookup.set(id, color);
43
+ } while (cursor.next() && cursor.to <= to);
44
+ });
45
+ return {
46
+ tree,
47
+ code,
48
+ colorLookup,
49
+ };
70
50
  }
71
- return {
72
- color: null,
73
- skipAhead,
74
- };
75
- }
76
- tokenize(code, dialect) {
77
- const parser = LezerHighlighter.parserMap.get(dialect);
78
- if (!parser) {
79
- if (dialect !== '') {
80
- useLogger().warn(`No parser found for dialect: ${dialect}`);
81
- }
82
- return defaultTokenize(code);
51
+ highlight(index, cache) {
52
+ if (!cache) {
53
+ return {
54
+ color: null,
55
+ skipAhead: 0,
56
+ };
57
+ }
58
+ const node = cache.tree.resolveInner(index, 1);
59
+ const id = this.getNodeId(node);
60
+ const color = cache.colorLookup.get(id);
61
+ if (color) {
62
+ return {
63
+ color,
64
+ skipAhead: node.to - index,
65
+ };
66
+ }
67
+ let skipAhead = 0;
68
+ if (!node.firstChild) {
69
+ skipAhead = node.to - index;
70
+ }
71
+ return {
72
+ color: null,
73
+ skipAhead,
74
+ };
83
75
  }
84
- const tree = parser.parse(code);
85
- const cursor = tree.cursor();
86
- const tokens = [];
87
- let current = 0;
88
- do {
89
- if (!cursor.node.firstChild) {
90
- if (cursor.from > current) {
91
- tokens.push(code.slice(current, cursor.from));
76
+ tokenize(code, dialect) {
77
+ const parser = LezerHighlighter.parserMap.get(dialect);
78
+ if (!parser) {
79
+ if (dialect !== '') {
80
+ useLogger().warn(`No parser found for dialect: ${dialect}`);
81
+ }
82
+ return defaultTokenize(code);
92
83
  }
93
- if (cursor.from < cursor.to) {
94
- tokens.push(code.slice(cursor.from, cursor.to));
84
+ const tree = parser.parse(code);
85
+ const cursor = tree.cursor();
86
+ const tokens = [];
87
+ let current = 0;
88
+ do {
89
+ if (!cursor.node.firstChild) {
90
+ if (cursor.from > current) {
91
+ tokens.push(code.slice(current, cursor.from));
92
+ }
93
+ if (cursor.from < cursor.to) {
94
+ tokens.push(code.slice(cursor.from, cursor.to));
95
+ }
96
+ current = cursor.to;
97
+ }
98
+ } while (cursor.next());
99
+ return tokens;
100
+ }
101
+ getNodeId(node) {
102
+ if (!node.parent) {
103
+ return -1;
95
104
  }
96
- current = cursor.to;
97
- }
98
- } while (cursor.next());
99
- return tokens;
100
- }
101
- getNodeId(node) {
102
- if (!node.parent) {
103
- return -1;
105
+ // NOTE: They don't want us to know about this property.
106
+ // We need a way to persistently identify nodes and this seems to work.
107
+ // Perhaps it could break if the tree is edited? But we don't do that. Yet.
108
+ return node.index;
104
109
  }
105
- // NOTE: They don't want us to know about this property.
106
- // We need a way to persistently identify nodes and this seems to work.
107
- // Perhaps it could break if the tree is edited? But we don't do that. Yet.
108
- return node.index;
109
- }
110
110
  }
111
111
  LezerHighlighter.parserMap = new Map();
112
112
  LezerHighlighter.classRegex = /\.(\S+).*color:([^;]+)/;
113
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGV6ZXJIaWdobGlnaHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvY29kZS9MZXplckhpZ2hsaWdodGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUMvQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXhDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQVFoRCxNQUFNLE9BQU8sZ0JBQWdCO0lBS3BCLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBYyxFQUFFLE9BQU8sR0FBRyxFQUFFO1FBQ3ZELElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsWUFBb0MsS0FBcUI7UUFBckIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFOeEMsZ0JBQVcsR0FBRyxJQUFJLEdBQUcsRUFBa0IsQ0FBQztRQU92RCxLQUFLLE1BQU0sSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUNuRSxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ3RELElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDWCxTQUFTO1lBQ1gsQ0FBQztZQUVELE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMzQixNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDOUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3pDLENBQUM7SUFD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
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGV6ZXJIaWdobGlnaHRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvY29kZS9MZXplckhpZ2hsaWdodGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUMvQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXhDLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQVFoRCxNQUFNLE9BQU8sZ0JBQWdCO0lBS3BCLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBYyxFQUFFLE9BQU8sR0FBRyxFQUFFO1FBQ3ZELElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsWUFBb0MsS0FBcUI7UUFBckIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFOeEMsZ0JBQVcsR0FBRyxJQUFJLEdBQUcsRUFBa0IsQ0FBQztRQU92RCxLQUFLLE1BQU0sSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLFFBQVEsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUNuRSxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ3RELElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDWCxTQUFTO1lBQ1gsQ0FBQztZQUVELE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMzQixNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDOUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3pDLENBQUM7SUFDSCxDQUFDO0lBRU0sVUFBVTtRQUNmLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLE9BQU8sQ0FBQyxJQUFZLEVBQUUsT0FBZTtRQUMxQyxNQUFNLE1BQU0sR0FBRyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNaLElBQUksT0FBTyxLQUFLLEVBQUUsRUFBRSxDQUFDO2dCQUNuQixTQUFTLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0NBQWdDLE9BQU8sRUFBRSxDQUFDLENBQUM7WUFDOUQsQ0FBQztZQUNELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUVELE1BQU0sV0FBVyxHQUFHLElBQUksR0FBRyxFQUFrQixDQUFDO1FBQzlDLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEMsYUFBYSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsRUFBRTtZQUNwRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUM1QyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ1gsT0FBTztZQUNULENBQUM7WUFFRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztZQUN0QyxHQUFHLENBQUM7Z0JBQ0YsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ3ZDLFdBQVcsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzdCLENBQUMsUUFBUSxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUU7UUFDN0MsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPO1lBQ0wsSUFBSTtZQUNKLElBQUk7WUFDSixXQUFXO1NBQ1osQ0FBQztJQUNKLENBQUM7SUFFTSxTQUFTLENBQUMsS0FBYSxFQUFFLEtBQXdCO1FBQ3RELElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNYLE9BQU87Z0JBQ0wsS0FBSyxFQUFFLElBQUk7Z0JBQ1gsU0FBUyxFQUFFLENBQUM7YUFDYixDQUFDO1FBQ0osQ0FBQztRQUVELE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMvQyxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hDLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3hDLElBQUksS0FBSyxFQUFFLENBQUM7WUFDVixPQUFPO2dCQUNMLEtBQUs7Z0JBQ0wsU0FBUyxFQUFFLElBQUksQ0FBQyxFQUFFLEdBQUcsS0FBSzthQUMzQixDQUFDO1FBQ0osQ0FBQztRQUVELElBQUksU0FBUyxHQUFHLENBQUMsQ0FBQztRQUNsQixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3JCLFNBQVMsR0FBRyxJQUFJLENBQUMsRUFBRSxHQUFHLEtBQUssQ0FBQztRQUM5QixDQUFDO1FBRUQsT0FBTztZQUNMLEtBQUssRUFBRSxJQUFJO1lBQ1gsU0FBUztTQUNWLENBQUM7SUFDSixDQUFDO0lBRU0sUUFBUSxDQUFDLElBQVksRUFBRSxPQUFlO1FBQzNDLE1BQU0sTUFBTSxHQUFHLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ1osSUFBSSxPQUFPLEtBQUssRUFBRSxFQUFFLENBQUM7Z0JBQ25CLFNBQVMsRUFBRSxDQUFDLElBQUksQ0FBQyxnQ0FBZ0MsT0FBTyxFQUFFLENBQUMsQ0FBQztZQUM5RCxDQUFDO1lBQ0QsT0FBTyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDL0IsQ0FBQztRQUVELE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzdCLE1BQU0sTUFBTSxHQUFhLEVBQUUsQ0FBQztRQUM1QixJQUFJLE9BQU8sR0FBRyxDQUFDLENBQUM7UUFFaEIsR0FBRyxDQUFDO1lBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQzVCLElBQUksTUFBTSxDQUFDLElBQUksR0FBRyxPQUFPLEVBQUUsQ0FBQztvQkFDMUIsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztnQkFDaEQsQ0FBQztnQkFDRCxJQUFJLE1BQU0sQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLEVBQUUsRUFBRSxDQUFDO29CQUM1QixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDbEQsQ0FBQztnQkFDRCxPQUFPLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUN0QixDQUFDO1FBQ0gsQ0FBQyxRQUFRLE1BQU0sQ0FBQyxJQUFJLEVBQUUsRUFBRTtRQUV4QixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRU8sU0FBUyxDQUFDLElBQWdCO1FBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDakIsT0FBTyxDQUFDLENBQUMsQ0FBQztRQUNaLENBQUM7UUFFRCx3REFBd0Q7UUFDeEQsdUVBQXVFO1FBQ3ZFLDJFQUEyRTtRQUMzRSxPQUFRLElBQVksQ0FBQyxLQUFLLENBQUM7SUFDN0IsQ0FBQzs7QUEzSHVCLDBCQUFTLEdBQUcsSUFBSSxHQUFHLEVBQWtCLEFBQTVCLENBQTZCO0FBQy9DLDJCQUFVLEdBQUcsd0JBQXdCLEFBQTNCLENBQTRCIn0=
@@ -1,131 +1,125 @@
1
- var __decorate =
2
- (this && this.__decorate) ||
3
- function (decorators, target, key, desc) {
4
- var c = arguments.length,
5
- r =
6
- c < 3
7
- ? target
8
- : desc === null
9
- ? (desc = Object.getOwnPropertyDescriptor(target, key))
10
- : desc,
11
- d;
12
- if (typeof Reflect === 'object' && typeof Reflect.decorate === 'function')
13
- r = Reflect.decorate(decorators, target, key, desc);
14
- else
15
- for (var i = decorators.length - 1; i >= 0; i--)
16
- if ((d = decorators[i]))
17
- r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
18
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
19
- };
6
+ };
20
7
  var Audio_1;
21
- import {DependencyContext, PlaybackState, viaProxy} from '@revideo/core';
22
- import {computed, nodeName} from '../decorators';
23
- import {Media} from './Media';
24
- let Audio = (Audio_1 = class Audio extends Media {
25
- constructor(props) {
26
- super(props);
27
- }
28
- mediaElement() {
29
- return this.audio();
30
- }
31
- seekedMedia() {
32
- return this.seekedAudio();
33
- }
34
- fastSeekedMedia() {
35
- return this.fastSeekedAudio();
36
- }
37
- audio() {
38
- const src = viaProxy(this.src());
39
- const key = `${this.key}/${src}`;
40
- let audio = Audio_1.pool[key];
41
- if (!audio) {
42
- audio = document.createElement('audio');
43
- audio.crossOrigin = 'anonymous';
44
- audio.src = src;
45
- Audio_1.pool[key] = audio;
8
+ import { DependencyContext, PlaybackState, viaProxy } from '@revideo/core';
9
+ import { computed, nodeName } from '../decorators';
10
+ import { Media } from './Media';
11
+ let Audio = Audio_1 = class Audio extends Media {
12
+ constructor(props) {
13
+ super(props);
46
14
  }
47
- if (audio.readyState < 2) {
48
- DependencyContext.collectPromise(
49
- new Promise(resolve => {
50
- const onCanPlay = () => {
51
- resolve();
52
- audio.removeEventListener('canplay', onCanPlay);
53
- };
54
- const onError = () => {
55
- const reason = this.getErrorReason(audio.error?.code);
56
- console.log(`ERROR: Error loading audio: ${src}, ${reason}`);
57
- };
58
- audio.addEventListener('canplay', onCanPlay);
59
- audio.addEventListener('error', onError);
60
- }),
61
- );
15
+ mediaElement() {
16
+ return this.audio();
62
17
  }
63
- return audio;
64
- }
65
- seekedAudio() {
66
- const audio = this.audio();
67
- audio.addEventListener('ended', () => {
68
- this.pause();
69
- });
70
- if (!(this.time() < audio.duration)) {
71
- this.pause();
72
- return audio;
18
+ seekedMedia() {
19
+ return this.seekedAudio();
73
20
  }
74
- const time = this.clampTime(this.time());
75
- audio.playbackRate = this.playbackRate();
76
- if (!audio.paused) {
77
- audio.pause();
21
+ fastSeekedMedia() {
22
+ return this.fastSeekedAudio();
78
23
  }
79
- if (this.lastTime === time) {
80
- return audio;
24
+ audio() {
25
+ const src = viaProxy(this.fullSource());
26
+ const key = `${this.key}/${src}`;
27
+ let audio = Audio_1.pool[key];
28
+ if (!audio) {
29
+ audio = document.createElement('audio');
30
+ audio.crossOrigin = 'anonymous';
31
+ audio.src = src;
32
+ Audio_1.pool[key] = audio;
33
+ }
34
+ if (audio.readyState < 2) {
35
+ DependencyContext.collectPromise(new Promise(resolve => {
36
+ const onCanPlay = () => {
37
+ resolve();
38
+ audio.removeEventListener('canplay', onCanPlay);
39
+ };
40
+ const onError = () => {
41
+ const reason = this.getErrorReason(audio.error?.code);
42
+ console.log(`ERROR: Error loading audio: ${src}, ${reason}`);
43
+ };
44
+ audio.addEventListener('canplay', onCanPlay);
45
+ audio.addEventListener('error', onError);
46
+ }));
47
+ }
48
+ return audio;
81
49
  }
82
- this.setCurrentTime(time);
83
- return audio;
84
- }
85
- fastSeekedAudio() {
86
- const audio = this.audio();
87
- if (!(this.time() < audio.duration)) {
88
- this.pause();
89
- return audio;
50
+ seekedAudio() {
51
+ const audio = this.audio();
52
+ audio.addEventListener('ended', () => {
53
+ this.pause();
54
+ });
55
+ if (!(this.time() < audio.duration)) {
56
+ this.pause();
57
+ return audio;
58
+ }
59
+ const time = this.clampTime(this.time());
60
+ audio.playbackRate = this.playbackRate();
61
+ if (!audio.paused) {
62
+ audio.pause();
63
+ }
64
+ if (this.lastTime === time) {
65
+ return audio;
66
+ }
67
+ this.setCurrentTime(time);
68
+ return audio;
90
69
  }
91
- const time = this.clampTime(this.time());
92
- audio.playbackRate = this.playbackRate();
93
- if (this.lastTime === time) {
94
- return audio;
70
+ fastSeekedAudio() {
71
+ const audio = this.audio();
72
+ if (!(this.time() < audio.duration)) {
73
+ this.pause();
74
+ return audio;
75
+ }
76
+ const time = this.clampTime(this.time());
77
+ audio.playbackRate = this.playbackRate();
78
+ if (this.lastTime === time) {
79
+ return audio;
80
+ }
81
+ const playing = this.playing() && time < audio.duration && audio.playbackRate > 0;
82
+ if (playing) {
83
+ if (audio.paused) {
84
+ DependencyContext.collectPromise(audio.play());
85
+ }
86
+ }
87
+ else {
88
+ if (!audio.paused) {
89
+ audio.pause();
90
+ }
91
+ }
92
+ if (Math.abs(audio.currentTime - time) > 0.3) {
93
+ this.setCurrentTime(time);
94
+ }
95
+ else if (!playing) {
96
+ audio.currentTime = time;
97
+ }
98
+ return audio;
95
99
  }
96
- const playing =
97
- this.playing() && time < audio.duration && audio.playbackRate > 0;
98
- if (playing) {
99
- if (audio.paused) {
100
- DependencyContext.collectPromise(audio.play());
101
- }
102
- } else {
103
- if (!audio.paused) {
104
- audio.pause();
105
- }
100
+ async draw(context) {
101
+ const playbackState = this.view().playbackState();
102
+ playbackState === PlaybackState.Playing ||
103
+ playbackState === PlaybackState.Presenting
104
+ ? this.fastSeekedAudio()
105
+ : this.seekedAudio();
106
+ context.save();
107
+ context.restore();
108
+ await this.drawChildren(context);
106
109
  }
107
- if (Math.abs(audio.currentTime - time) > 0.3) {
108
- this.setCurrentTime(time);
109
- } else if (!playing) {
110
- audio.currentTime = time;
111
- }
112
- return audio;
113
- }
114
- async draw(context) {
115
- const playbackState = this.view().playbackState();
116
- playbackState === PlaybackState.Playing ||
117
- playbackState === PlaybackState.Presenting
118
- ? this.fastSeekedAudio()
119
- : this.seekedAudio();
120
- context.save();
121
- context.restore();
122
- await this.drawChildren(context);
123
- }
124
- });
110
+ };
125
111
  Audio.pool = {};
126
- __decorate([computed()], Audio.prototype, 'audio', null);
127
- __decorate([computed()], Audio.prototype, 'seekedAudio', null);
128
- __decorate([computed()], Audio.prototype, 'fastSeekedAudio', null);
129
- Audio = Audio_1 = __decorate([nodeName('Audio')], Audio);
130
- export {Audio};
131
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXVkaW8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvQXVkaW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxRQUFRLEVBQUUsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBQyxLQUFLLEVBQWEsTUFBTSxTQUFTLENBQUM7QUFHbkMsSUFBTSxLQUFLLGFBQVgsTUFBTSxLQUFNLFNBQVEsS0FBSztJQUc5QixZQUFtQixLQUFpQjtRQUNsQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDZixDQUFDO0lBRVMsWUFBWTtRQUNwQixPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRVMsV0FBVztRQUNuQixPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRVMsZUFBZTtRQUN2QixPQUFPLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBR1MsS0FBSztRQUNiLE1BQU0sR0FBRyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUNqQyxNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7UUFDakMsSUFBSSxLQUFLLEdBQUcsT0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDWCxLQUFLLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN4QyxLQUFLLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztZQUNoQyxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztZQUNoQixPQUFL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
112
+ __decorate([
113
+ computed()
114
+ ], Audio.prototype, "audio", null);
115
+ __decorate([
116
+ computed()
117
+ ], Audio.prototype, "seekedAudio", null);
118
+ __decorate([
119
+ computed()
120
+ ], Audio.prototype, "fastSeekedAudio", null);
121
+ Audio = Audio_1 = __decorate([
122
+ nodeName('Audio')
123
+ ], Audio);
124
+ export { Audio };
125
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXVkaW8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvQXVkaW8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxRQUFRLEVBQUUsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBQyxLQUFLLEVBQWEsTUFBTSxTQUFTLENBQUM7QUFHbkMsSUFBTSxLQUFLLGFBQVgsTUFBTSxLQUFNLFNBQVEsS0FBSztJQUc5QixZQUFtQixLQUFpQjtRQUNsQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDZixDQUFDO0lBRVMsWUFBWTtRQUNwQixPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRVMsV0FBVztRQUNuQixPQUFPLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRVMsZUFBZTtRQUN2QixPQUFPLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBR1MsS0FBSztRQUNiLE1BQU0sR0FBRyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUN4QyxNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7UUFDakMsSUFBSSxLQUFLLEdBQUcsT0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDWCxLQUFLLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN4QyxLQUFLLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztZQUNoQyxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztZQUNoQixPQUFL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