@innovastudio/contentbuilder 1.5.76 → 1.5.79

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@innovastudio/contentbuilder",
3
3
  "type": "module",
4
- "version": "1.5.76",
4
+ "version": "1.5.79",
5
5
  "description": "",
6
6
  "main": "public/contentbuilder/contentbuilder.esm.js",
7
7
  "types": "index.d.ts",
@@ -1494,10 +1494,10 @@ const renderQuickAdd = builder => {
1494
1494
  elm = quickadd.querySelector('.add-video');
1495
1495
  dom.addEventListener(elm, 'click', () => {
1496
1496
  const mode = quickadd.getAttribute('data-mode');
1497
- let html = `<video style="width: 100%;" loop="" autoplay="">
1497
+ let html = `<video style="width: 100%;" loop="" playsinline="" muted="" autoplay="">
1498
1498
  <source src="${builder.opts.snippetPath}example.mp4" type="video/mp4"></video>`;
1499
1499
  if (builder.opts.snippetSampleVideo) {
1500
- html = `<video style="width: 100%;" loop="" autoplay="">
1500
+ html = `<video style="width: 100%;" loop="" playsinline="" muted="" autoplay="">
1501
1501
  <source src="${builder.opts.snippetSampleVideo}" type="video/mp4"></video>`;
1502
1502
  }
1503
1503
  util.addContent(html, mode);
@@ -5334,15 +5334,15 @@ class Util {
5334
5334
  } else {
5335
5335
  newelement.click();
5336
5336
  }
5337
- const builderStuff = this.builder.builderStuff;
5338
- let quickadd = builderStuff.querySelector('.quickadd');
5339
- this.hidePop(quickadd);
5340
5337
 
5341
5338
  // LATER: auto scroll
5342
5339
 
5343
5340
  // LATER: If image, then it needs time to load (resulting incorrect position), so hide element tool.
5344
5341
  }
5345
5342
 
5343
+ const builderStuff = this.builder.builderStuff;
5344
+ let quickadd = builderStuff.querySelector('.quickadd');
5345
+ if (quickadd) this.hidePop(quickadd);
5346
5346
  if (this.builder.useCssClasses) {
5347
5347
  let builderActive = this.builder.doc.querySelector('.builder-active');
5348
5348
  if (builderActive) dom.contentReformat(builderActive, this.builder.cssClasses);
@@ -14177,6 +14177,13 @@ class HtmlUtil {
14177
14177
 
14178
14178
  //Trigger Render event
14179
14179
  this.builder.opts.onRender();
14180
+
14181
+ // Re-select
14182
+ if (row.firstChild) row.firstChild.click();
14183
+ //Change to row selection
14184
+ row.classList.remove('row-outline');
14185
+ //Hide Column tool (new!)
14186
+ util.hideColumnTool();
14180
14187
  }
14181
14188
  if (mode === 'full') {
14182
14189
  // freeform
@@ -14630,6 +14637,16 @@ class HtmlUtil {
14630
14637
  imgUrl = convertMediaUrl(imgUrl);
14631
14638
  elm.setAttribute('href', `${imgUrl}`);
14632
14639
  }
14640
+ if (elm.tagName.toLowerCase() === 'a') {
14641
+ //lightbox
14642
+ let s = elm.getAttribute('href');
14643
+ let extension = s.split('.').pop().split('?')[0].split('#')[0]; //
14644
+ extension = extension.toLowerCase();
14645
+ if (extension === 'jpg' || extension === 'jpeg' || extension === 'png' || extension === 'gif' || extension === 'webm' || extension === 'webp' || extension === 'mp4' || extension === 'mp3') {
14646
+ let mediaUrl = convertMediaUrl(s);
14647
+ elm.setAttribute('href', `${mediaUrl}`);
14648
+ }
14649
+ }
14633
14650
  }
14634
14651
  });
14635
14652
  }
@@ -17869,6 +17886,7 @@ const renderSnippetPanel = (builder, snippetOpen) => {
17869
17886
  block.offsetWidth / 2;
17870
17887
  let x = (snippetX - block.offsetWidth / 2 - rectContainer.left) / docContainer.offsetWidth * 100;
17871
17888
  let y = (snippetY - block.offsetHeight / 2 - rectContainer.top) / docContainer.offsetHeight * 100;
17889
+ if (y < 0) y = 15; // if block is not fully loaded, block height may be incorrect (y can be negative). Adjust to 15%.
17872
17890
  block.style.top = y + '%';
17873
17891
  block.style.left = x + '%';
17874
17892
  block.removeAttribute('data-new-dummy');
@@ -46772,7 +46790,7 @@ class ButtonEditor {
46772
46790
  <div class="flex flex-row" style="margin:15px 0 0">
46773
46791
  <div class="flex flex-col" style="margin-right: 40px;">
46774
46792
  <div>
46775
- <span>${util.out('Border Color')}</span>:
46793
+ <span>${util.out('Border Style')}</span>:
46776
46794
  </div>
46777
46795
  <div class="flex flex-row flex-wrap" style="margin-top:5px">
46778
46796
  <button title="${util.out('Transparent')}" data-command="transparent" class="border-color-command" style="margin-right:4px">${util.out('Transparent')}</button>
@@ -46962,7 +46980,7 @@ class ButtonEditor {
46962
46980
 
46963
46981
  <div class="flex flex-col" style="margin:15px 0 0">
46964
46982
  <div>
46965
- <span>${util.out('Border Color')}</span>:
46983
+ <span>${util.out('Border Style')}</span>:
46966
46984
  </div>
46967
46985
  <div class="flex flex-row flex-wrap" style="margin-top:5px">
46968
46986
  <button title="${util.out('Transparent')}" data-command="transparent" class="border-color-hover-command" style="margin-right:4px">${util.out('Transparent')}</button>
@@ -50558,6 +50576,12 @@ class Video {
50558
50576
  } else {
50559
50577
  inpAutoplay.checked = false;
50560
50578
  }
50579
+ const inpMuted = videoModal.querySelector('.input-video-muted');
50580
+ if (video.hasAttribute('muted')) {
50581
+ inpMuted.checked = true;
50582
+ } else {
50583
+ inpMuted.checked = false;
50584
+ }
50561
50585
  util.showModal(videoModal, true, () => {
50562
50586
  btn.removeAttribute('data-focus');
50563
50587
  btn.focus();
@@ -50601,6 +50625,9 @@ class Video {
50601
50625
  <label style="display:block;margin-top:5px;">
50602
50626
  <input class="input-video-autoplay" id="__input_video_autoplay" type="checkbox" /> ${util.out('Autoplay')}&nbsp;
50603
50627
  </label>
50628
+ <label style="display:block;margin-top:5px;">
50629
+ <input class="input-video-muted" id="__input_video_muted" type="checkbox" /> ${util.out('Muted')}&nbsp;
50630
+ </label>
50604
50631
 
50605
50632
  <div style="text-align:right;margin-top:14px;">
50606
50633
  <button title="${util.out('Cancel')}" class="input-cancel classic-secondary">${util.out('Cancel')}</button>
@@ -50679,6 +50706,11 @@ class Video {
50679
50706
  } else {
50680
50707
  video.removeAttribute('autoplay');
50681
50708
  }
50709
+ if (videoModal.querySelector('.input-video-muted').checked) {
50710
+ video.setAttribute('muted', '');
50711
+ } else {
50712
+ video.removeAttribute('muted');
50713
+ }
50682
50714
  if (videoModal.querySelector('.input-url').value !== '') {
50683
50715
  let url = videoModal.querySelector('.input-url').value;
50684
50716
  let source = video.querySelector('source');
@@ -68321,15 +68353,15 @@ class Rte {
68321
68353
  activeCol = this.builder.activeCol;
68322
68354
  spans = activeCol.querySelectorAll('span');
68323
68355
  Array.prototype.forEach.call(spans, span => {
68324
- let attr = span.getAttribute('data-keep');
68356
+ let attr = span.hasAttribute('data-keep');
68325
68357
  if (!attr) {
68326
68358
  span.outerHTML = span.innerHTML;
68327
68359
  }
68328
68360
  });
68329
68361
  Array.prototype.forEach.call(spans, span => {
68330
- let attr = span.getAttribute('data-keep');
68362
+ let attr = span.hasAttribute('data-keep');
68331
68363
  if (attr) {
68332
- dom.removeAttribute(span, 'data-keep');
68364
+ span.removeAttribute('data-keep');
68333
68365
  }
68334
68366
  });
68335
68367
  this.getState();
@@ -97239,18 +97271,21 @@ Add an image for each feature.`, 'Create a new content showcasing a photo galler
97239
97271
  }
97240
97272
 
97241
97273
  if (this.dom.textSelection()) {
97242
- if (e.keyCode === '38') {
97274
+ if (e.keyCode === 38) {
97243
97275
  // Up arrow
97244
97276
  this.util.saveSelection();
97245
- } else if (e.keyCode === '40') {
97277
+ } else if (e.keyCode === 40) {
97246
97278
  // Down arrow
97247
97279
  this.util.saveSelection();
97248
- } else if (e.keyCode === '37') {
97280
+ } else if (e.keyCode === 37) {
97249
97281
  // Left arrow
97250
97282
  this.util.saveSelection();
97251
- } else if (e.keyCode === '39') {
97283
+ } else if (e.keyCode === 39) {
97252
97284
  // Right arrow
97253
97285
  this.util.saveSelection();
97286
+ } else if (e.keyCode === 13) {
97287
+ // Enter
97288
+ this.util.saveSelection();
97254
97289
  }
97255
97290
  }
97256
97291