@flexem/fc-gui 3.0.0-alpha.86 → 3.0.0-alpha.87
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/CHANGELOG.md +6 -1
- package/bundles/@flexem/fc-gui.umd.js +28 -0
- package/bundles/@flexem/fc-gui.umd.js.map +1 -1
- package/bundles/@flexem/fc-gui.umd.min.js +1 -1
- package/bundles/@flexem/fc-gui.umd.min.js.map +1 -1
- package/elements/video/video-element.d.ts +2 -0
- package/elements/video/video-element.js +28 -0
- package/elements/video/video-element.metadata.json +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -39504,6 +39504,7 @@ class video_element_VideoElement extends conditional_display_element_Conditional
|
|
|
39504
39504
|
this.videoService.getVideoUrl(this.model.videoTag).then(result => {
|
|
39505
39505
|
this.isMobileType = result.isMobileType;
|
|
39506
39506
|
const isAndroid = !!navigator.userAgent.match(/(Android)/i);
|
|
39507
|
+
const isIos = !!navigator.userAgent.match(/(Mac)/i);
|
|
39507
39508
|
let videoUrl = result.url;
|
|
39508
39509
|
const patt = /https:.+.m3u8/;
|
|
39509
39510
|
if (videoUrl.indexOf('http:') !== -1) {
|
|
@@ -39517,6 +39518,7 @@ class video_element_VideoElement extends conditional_display_element_Conditional
|
|
|
39517
39518
|
this.addVideoAddressToolTip(videoToolTip);
|
|
39518
39519
|
return;
|
|
39519
39520
|
}
|
|
39521
|
+
this.rootElement.attr('id', this.videoId + '-box');
|
|
39520
39522
|
const video = this.rootElement.append('foreignObject')
|
|
39521
39523
|
.attr('x', 0)
|
|
39522
39524
|
.attr('y', 0)
|
|
@@ -39546,6 +39548,32 @@ class video_element_VideoElement extends conditional_display_element_Conditional
|
|
|
39546
39548
|
if (this.isShow === false) {
|
|
39547
39549
|
$('#' + this.videoId).hide();
|
|
39548
39550
|
}
|
|
39551
|
+
if (isIos) {
|
|
39552
|
+
const gElement = document.getElementById(this.videoId + '-box');
|
|
39553
|
+
this.clientRect = this.clientRect || gElement.getBoundingClientRect();
|
|
39554
|
+
const svgElement = document.querySelector('.svg-content > svg');
|
|
39555
|
+
const svgClientRect = svgElement.getBoundingClientRect();
|
|
39556
|
+
svgElement.style.overflow = 'visible';
|
|
39557
|
+
const x = svgElement.clientWidth / this.clientRect.width;
|
|
39558
|
+
const y = svgElement.clientHeight / this.clientRect.height;
|
|
39559
|
+
this.rootElement.style('transform', `scale(${x}, ${y})`);
|
|
39560
|
+
this.rootElement.style('transform-origin', 'left top');
|
|
39561
|
+
video.style('z-index', 0);
|
|
39562
|
+
setTimeout(() => {
|
|
39563
|
+
this.videoClientRect = document.getElementById(this.videoId).getBoundingClientRect();
|
|
39564
|
+
video.style('position', 'absolute');
|
|
39565
|
+
video.style('left', this.clientRect.left + 'px');
|
|
39566
|
+
video.style('top', this.clientRect.top - svgClientRect.top + 'px');
|
|
39567
|
+
video.style('transform', `scale(${this.clientRect.width / this.videoClientRect.width}, ${this.clientRect.height / this.videoClientRect.height})`);
|
|
39568
|
+
video.style('transform-origin', 'left top');
|
|
39569
|
+
}, 300);
|
|
39570
|
+
$('#' + this.videoId).bind('webkitendfullscreen', () => {
|
|
39571
|
+
setTimeout(() => {
|
|
39572
|
+
video.style('width', this.videoClientRect.width + 'px');
|
|
39573
|
+
video.style('height', this.videoClientRect.height + 'px');
|
|
39574
|
+
}, 1000);
|
|
39575
|
+
});
|
|
39576
|
+
}
|
|
39549
39577
|
this.videoPlayer = new EZUIPlayer(this.videoId);
|
|
39550
39578
|
if (isAndroid) {
|
|
39551
39579
|
setTimeout(() => {
|