src/widgets/SpelSyncHtml.js
author ymh <ymh.work@gmail.com>
Wed, 04 Sep 2024 17:32:50 +0200
changeset 1072 ac1eacb3aa33
parent 1013 392ddcd212d7
child 1079 d4f0681c4ff1
permissions -rw-r--r--
Migrate source and build to vite.js
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1072
ac1eacb3aa33 Migrate source and build to vite.js
ymh <ymh.work@gmail.com>
parents: 1013
diff changeset
     1
const SpelSyncHtml = function(ns) {
ac1eacb3aa33 Migrate source and build to vite.js
ymh <ymh.work@gmail.com>
parents: 1013
diff changeset
     2
    return class extends ns.Widgets.Widget {
ac1eacb3aa33 Migrate source and build to vite.js
ymh <ymh.work@gmail.com>
parents: 1013
diff changeset
     3
        constructor(player, config) {
ac1eacb3aa33 Migrate source and build to vite.js
ymh <ymh.work@gmail.com>
parents: 1013
diff changeset
     4
            super(player, config);
1008
81243f1c7cff Added Spel Text Sync Widget
veltr
parents:
diff changeset
     5
    console.log("Calling IriSP.Widget's constructor from IriSP.HelloWorldWidget");
1013
392ddcd212d7 Throwed in a bunch of semicolons
veltr
parents: 1008
diff changeset
     6
};
1008
81243f1c7cff Added Spel Text Sync Widget
veltr
parents:
diff changeset
     7
1072
ac1eacb3aa33 Migrate source and build to vite.js
ymh <ymh.work@gmail.com>
parents: 1013
diff changeset
     8
static defaults = {
1008
81243f1c7cff Added Spel Text Sync Widget
veltr
parents:
diff changeset
     9
    src: "about:blank"
1013
392ddcd212d7 Throwed in a bunch of semicolons
veltr
parents: 1008
diff changeset
    10
};
1008
81243f1c7cff Added Spel Text Sync Widget
veltr
parents:
diff changeset
    11
1072
ac1eacb3aa33 Migrate source and build to vite.js
ymh <ymh.work@gmail.com>
parents: 1013
diff changeset
    12
static template =
1008
81243f1c7cff Added Spel Text Sync Widget
veltr
parents:
diff changeset
    13
    '<div class="Ldt-SpelSyncHtml"><iframe src="{{src}}" {{#width}}width="{{width}}"{{/width}} {{#height}}height="{{height}}"{{/height}}</div>';
81243f1c7cff Added Spel Text Sync Widget
veltr
parents:
diff changeset
    14
1072
ac1eacb3aa33 Migrate source and build to vite.js
ymh <ymh.work@gmail.com>
parents: 1013
diff changeset
    15
draw() {
1008
81243f1c7cff Added Spel Text Sync Widget
veltr
parents:
diff changeset
    16
    this.renderTemplate();
81243f1c7cff Added Spel Text Sync Widget
veltr
parents:
diff changeset
    17
    var frame = this.$.find("iframe")[0],
81243f1c7cff Added Spel Text Sync Widget
veltr
parents:
diff changeset
    18
        basesrc = this.src.replace(/#.*$/,'');
81243f1c7cff Added Spel Text Sync Widget
veltr
parents:
diff changeset
    19
    this.getWidgetAnnotations().forEach(function(a) {
81243f1c7cff Added Spel Text Sync Widget
veltr
parents:
diff changeset
    20
        a.on("enter", function() {
81243f1c7cff Added Spel Text Sync Widget
veltr
parents:
diff changeset
    21
            if (a.content && a.content.data && a.content.data.ref_text) {
81243f1c7cff Added Spel Text Sync Widget
veltr
parents:
diff changeset
    22
                frame.src = basesrc + '#' + a.content.data.ref_text;
81243f1c7cff Added Spel Text Sync Widget
veltr
parents:
diff changeset
    23
            }
1013
392ddcd212d7 Throwed in a bunch of semicolons
veltr
parents: 1008
diff changeset
    24
        });
392ddcd212d7 Throwed in a bunch of semicolons
veltr
parents: 1008
diff changeset
    25
    });
1072
ac1eacb3aa33 Migrate source and build to vite.js
ymh <ymh.work@gmail.com>
parents: 1013
diff changeset
    26
};
ac1eacb3aa33 Migrate source and build to vite.js
ymh <ymh.work@gmail.com>
parents: 1013
diff changeset
    27
    }}
ac1eacb3aa33 Migrate source and build to vite.js
ymh <ymh.work@gmail.com>
parents: 1013
diff changeset
    28
ac1eacb3aa33 Migrate source and build to vite.js
ymh <ymh.work@gmail.com>
parents: 1013
diff changeset
    29
export { SpelSyncHtml };