@innovastudio/contentbuilder 1.5.18 → 1.5.20
Sign up to get free protection for your applications and to get access to all the features.
package/package.json
CHANGED
@@ -52757,26 +52757,37 @@ class RowTool {
|
|
52757
52757
|
if (btnCellAdd) dom.addEventListener(btnCellAdd, 'click', () => {
|
52758
52758
|
let cell = util.cellSelected();
|
52759
52759
|
if (!cell) return;
|
52760
|
+
const viewportHeight = window.innerHeight;
|
52761
|
+
const newPos = util.getElementPosition(btnCellAdd);
|
52762
|
+
let top = newPos.top;
|
52763
|
+
let left = newPos.left;
|
52760
52764
|
renderQuickAdd(this.builder);
|
52761
52765
|
let quickadd = this.builder.builderStuff.querySelector('.is-pop.quickadd');
|
52762
52766
|
let tabs = quickadd.querySelector('.is-pop-tabs');
|
52763
52767
|
tabs.style.display = 'flex';
|
52764
|
-
const newPos = util.getElementPosition(btnCellAdd);
|
52765
|
-
let top = newPos.top + window.pageYOffset;
|
52766
|
-
let left = newPos.left + window.pageXOffset;
|
52767
|
-
if (this.builder.iframe) {
|
52768
|
-
left = left + 3;
|
52769
|
-
}
|
52770
52768
|
util.showPop(quickadd, false, btnCellAdd);
|
52771
|
-
|
52772
|
-
|
52773
|
-
|
52774
|
-
|
52775
|
-
|
52776
|
-
|
52777
|
-
|
52778
|
-
|
52779
|
-
|
52769
|
+
const h = quickadd.offsetHeight;
|
52770
|
+
if (viewportHeight - top > h) {
|
52771
|
+
// pop bottom
|
52772
|
+
quickadd.style.top = top + window.pageYOffset + 35 + 'px';
|
52773
|
+
quickadd.style.left = left + 'px';
|
52774
|
+
dom.removeClass(quickadd, 'arrow-bottom');
|
52775
|
+
dom.removeClass(quickadd, 'arrow-right');
|
52776
|
+
dom.removeClass(quickadd, 'arrow-left');
|
52777
|
+
dom.removeClass(quickadd, 'center');
|
52778
|
+
dom.addClass(quickadd, 'arrow-top');
|
52779
|
+
dom.addClass(quickadd, 'left');
|
52780
|
+
} else {
|
52781
|
+
// pop top
|
52782
|
+
quickadd.style.top = top + window.pageYOffset - h - 8 + 'px';
|
52783
|
+
quickadd.style.left = left + 'px';
|
52784
|
+
dom.removeClass(quickadd, 'arrow-top');
|
52785
|
+
dom.removeClass(quickadd, 'arrow-right');
|
52786
|
+
dom.removeClass(quickadd, 'arrow-left');
|
52787
|
+
dom.removeClass(quickadd, 'center');
|
52788
|
+
dom.addClass(quickadd, 'arrow-bottom');
|
52789
|
+
dom.addClass(quickadd, 'left');
|
52790
|
+
}
|
52780
52791
|
let val = quickadd.querySelector('.active').getAttribute('data-value');
|
52781
52792
|
if (val === 'left') {
|
52782
52793
|
quickadd.setAttribute('data-mode', 'cell-left');
|
@@ -52816,21 +52827,38 @@ class RowTool {
|
|
52816
52827
|
if (btnCellMore) dom.addEventListener(btnCellMore, 'click', () => {
|
52817
52828
|
let cell = util.cellSelected();
|
52818
52829
|
if (!cell) return;
|
52830
|
+
const viewportHeight = window.innerHeight;
|
52819
52831
|
const newPos = util.getElementPosition(btnCellMore);
|
52820
|
-
let top = newPos.top
|
52821
|
-
let left = newPos.left
|
52832
|
+
let top = newPos.top;
|
52833
|
+
let left = newPos.left;
|
52822
52834
|
this.builder.colTool.renderColMore();
|
52823
52835
|
const columnMore = builderStuff.querySelector('.columnmore');
|
52824
|
-
|
52825
|
-
|
52826
|
-
|
52827
|
-
|
52828
|
-
|
52829
|
-
|
52830
|
-
|
52831
|
-
|
52832
|
-
|
52833
|
-
|
52836
|
+
setTimeout(() => {
|
52837
|
+
// give delay after renderColMore()
|
52838
|
+
util.showPop(columnMore, false, btnCellMore);
|
52839
|
+
const h = columnMore.offsetHeight;
|
52840
|
+
if (viewportHeight - top > h) {
|
52841
|
+
columnMore.style.top = top + window.pageYOffset + 35 + 'px';
|
52842
|
+
columnMore.style.left = left - 7 + 'px';
|
52843
|
+
dom.removeClass(columnMore, 'arrow-bottom');
|
52844
|
+
dom.removeClass(columnMore, 'arrow-right');
|
52845
|
+
dom.removeClass(columnMore, 'arrow-left');
|
52846
|
+
dom.removeClass(columnMore, 'center');
|
52847
|
+
dom.removeClass(columnMore, 'right');
|
52848
|
+
dom.addClass(columnMore, 'arrow-top');
|
52849
|
+
dom.addClass(columnMore, 'left');
|
52850
|
+
} else {
|
52851
|
+
columnMore.style.top = top + window.pageYOffset - h - 8 + 'px';
|
52852
|
+
columnMore.style.left = left - 7 + 'px';
|
52853
|
+
dom.removeClass(columnMore, 'arrow-top');
|
52854
|
+
dom.removeClass(columnMore, 'arrow-right');
|
52855
|
+
dom.removeClass(columnMore, 'arrow-left');
|
52856
|
+
dom.removeClass(columnMore, 'center');
|
52857
|
+
dom.removeClass(columnMore, 'right');
|
52858
|
+
dom.addClass(columnMore, 'arrow-bottom');
|
52859
|
+
dom.addClass(columnMore, 'left');
|
52860
|
+
}
|
52861
|
+
}, 0);
|
52834
52862
|
const btnCellLocking = columnMore.querySelector('.cell-locking');
|
52835
52863
|
if (cell.hasAttribute('data-noedit')) {
|
52836
52864
|
dom.addClass(btnCellLocking, 'on');
|
@@ -52984,32 +53012,67 @@ class RowTool {
|
|
52984
53012
|
|
52985
53013
|
//Hide Column tool (new!)
|
52986
53014
|
util.hideColumnTool();
|
53015
|
+
|
53016
|
+
/*
|
52987
53017
|
const newPos = util.getElementPosition(btnMore);
|
52988
53018
|
let top = newPos.top + window.pageYOffset;
|
52989
53019
|
let left = newPos.left + window.pageXOffset;
|
52990
|
-
|
53020
|
+
this.renderRowMore();
|
52991
53021
|
const rowMore = this.rowMore;
|
52992
|
-
|
52993
|
-
// rowMore.style.display = 'flex';
|
53022
|
+
// rowMore.style.display = 'flex';
|
52994
53023
|
util.showPop(rowMore, false, btnMore);
|
52995
53024
|
//const w = rowMore.offsetWidth; //to get value, element must not hidden (display:none). So set display:flex before this.
|
52996
53025
|
//const h = rowMore.offsetHeight;
|
52997
|
-
rowMore.style.top = top - 8 + 'px';
|
52998
|
-
|
52999
|
-
dom.removeClass(rowMore,
|
53000
|
-
dom.removeClass(rowMore,
|
53001
|
-
dom.removeClass(rowMore,
|
53002
|
-
dom.removeClass(rowMore,
|
53003
|
-
dom.removeClass(rowMore,
|
53004
|
-
|
53005
|
-
|
53006
|
-
|
53007
|
-
|
53008
|
-
|
53009
|
-
|
53010
|
-
|
53011
|
-
|
53012
|
-
|
53026
|
+
rowMore.style.top = (top - 8) + 'px';
|
53027
|
+
dom.removeClass(rowMore,'arrow-bottom');
|
53028
|
+
dom.removeClass(rowMore,'arrow-left');
|
53029
|
+
dom.removeClass(rowMore,'arrow-right');
|
53030
|
+
dom.removeClass(rowMore,'center');
|
53031
|
+
dom.removeClass(rowMore,'right');
|
53032
|
+
dom.removeClass(rowMore,'left');
|
53033
|
+
if(this.builder.opts.rowTool === 'right') {
|
53034
|
+
|
53035
|
+
rowMore.style.left = (left - rowMore.offsetWidth - 10) + 'px';
|
53036
|
+
dom.addClass(rowMore,'arrow-right');
|
53037
|
+
dom.addClass(rowMore,'left');
|
53038
|
+
} else {
|
53039
|
+
rowMore.style.left = (left + 35) + 'px';
|
53040
|
+
dom.addClass(rowMore,'arrow-left');
|
53041
|
+
dom.addClass(rowMore,'left');
|
53042
|
+
}
|
53043
|
+
*/
|
53044
|
+
|
53045
|
+
const viewportHeight = window.innerHeight;
|
53046
|
+
const newPos = util.getElementPosition(btnMore);
|
53047
|
+
let top = newPos.top;
|
53048
|
+
let left = newPos.left;
|
53049
|
+
this.renderRowMore();
|
53050
|
+
const rowMore = this.rowMore;
|
53051
|
+
setTimeout(() => {
|
53052
|
+
// give delay after renderRowMore()
|
53053
|
+
util.showPop(rowMore, false, btnMore);
|
53054
|
+
const h = rowMore.offsetHeight;
|
53055
|
+
dom.removeClass(rowMore, 'arrow-bottom');
|
53056
|
+
dom.removeClass(rowMore, 'arrow-left');
|
53057
|
+
dom.removeClass(rowMore, 'arrow-right');
|
53058
|
+
dom.removeClass(rowMore, 'center');
|
53059
|
+
dom.removeClass(rowMore, 'right');
|
53060
|
+
dom.removeClass(rowMore, 'left');
|
53061
|
+
if (this.builder.opts.rowTool === 'right') {
|
53062
|
+
rowMore.style.left = left - rowMore.offsetWidth - 10 + 'px';
|
53063
|
+
dom.addClass(rowMore, 'arrow-right');
|
53064
|
+
dom.addClass(rowMore, 'left');
|
53065
|
+
} else {
|
53066
|
+
rowMore.style.left = left + 35 + 'px';
|
53067
|
+
dom.addClass(rowMore, 'arrow-left');
|
53068
|
+
dom.addClass(rowMore, 'left');
|
53069
|
+
}
|
53070
|
+
if (viewportHeight - top > h) {
|
53071
|
+
rowMore.style.top = top + window.pageYOffset - 8 + 'px';
|
53072
|
+
} else {
|
53073
|
+
rowMore.style.top = top + window.pageYOffset - h + btnMore.offsetHeight + 'px';
|
53074
|
+
}
|
53075
|
+
}, 0);
|
53013
53076
|
let btnRowHtml = rowMore.querySelector('.row-html');
|
53014
53077
|
let btnRowDuplicate = rowMore.querySelector('.row-duplicate');
|
53015
53078
|
if (row.querySelector('[data-html]')) {
|
@@ -65891,6 +65954,21 @@ class Rte {
|
|
65891
65954
|
this.builder.opts.zoom = 1;
|
65892
65955
|
localStorage.setItem('_zoom', 1); // Save
|
65893
65956
|
|
65957
|
+
// setZoomOnControl
|
65958
|
+
if (this.builder.isContentBox) {
|
65959
|
+
const wrapper = this.builder.doc.querySelector(this.builder.opts.page);
|
65960
|
+
this.builder.setZoomOnControl(wrapper);
|
65961
|
+
} else if (this.builder.canvas && !this.builder.isContentBox && this.builder.docContainer) {
|
65962
|
+
// freeform
|
65963
|
+
const docContainer = this.builder.doc.querySelector(this.builder.docContainer);
|
65964
|
+
this.builder.setZoomOnControl(docContainer);
|
65965
|
+
} else {
|
65966
|
+
const builders = this.builder.doc.querySelectorAll(this.builder.opts.container);
|
65967
|
+
builders.forEach(builder => {
|
65968
|
+
this.builder.setZoomOnControl(builder);
|
65969
|
+
});
|
65970
|
+
}
|
65971
|
+
|
65894
65972
|
// setZoomOnArea
|
65895
65973
|
this.builder.setZoomOnArea();
|
65896
65974
|
});
|
@@ -83598,8 +83676,12 @@ class Draggable {
|
|
83598
83676
|
target.setAttribute('data-starty', y);
|
83599
83677
|
|
83600
83678
|
// reset (from applyPercentage bottomTouched)
|
83601
|
-
target.style.
|
83602
|
-
|
83679
|
+
if (target.style.bottom) {
|
83680
|
+
if (!target.classList.contains('height-auto')) {
|
83681
|
+
target.style.height = target.offsetHeight + 'px';
|
83682
|
+
}
|
83683
|
+
target.style.bottom = '';
|
83684
|
+
}
|
83603
83685
|
this.common.applyPixels(target);
|
83604
83686
|
});
|
83605
83687
|
this.clickedBlock = this.common.getSelectedBlock();
|