@innovastudio/contentbuilder 1.5.159 → 1.5.161

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.159",
4
+ "version": "1.5.161",
5
5
  "description": "",
6
6
  "main": "public/contentbuilder/contentbuilder.esm.js",
7
7
  "types": "index.d.ts",
@@ -6159,15 +6159,16 @@ class Util {
6159
6159
  rtepop.style.display = '';
6160
6160
  dom.removeClass(rtepop, 'active');
6161
6161
  dom.removeClass(rtepop, 'deactive');
6162
- // dom.addClass(rtepop, 'deactive');
6163
6162
  });
6164
6163
  }
6165
-
6166
6164
  let pops = builderStuff.querySelectorAll('.is-pop');
6167
6165
  Array.prototype.forEach.call(pops, pop => {
6168
6166
  pop.style.display = '';
6169
6167
  dom.removeClass(pop, 'active');
6170
- pop.setAttribute('aria-hidden', true);
6168
+ this.builder.doc.body.focus();
6169
+ setTimeout(() => {
6170
+ pop.setAttribute('aria-hidden', true);
6171
+ }, 0);
6171
6172
  });
6172
6173
  this.builder.colTool.lockIndicator.style.display = '';
6173
6174
  if (this.builder.resize) {
@@ -15040,7 +15041,6 @@ class HtmlUtil {
15040
15041
 
15041
15042
  // Remove runtime-added attributes
15042
15043
  element.removeAttribute('data-cb-original-content');
15043
- element.removeAttribute('data-cb-loaded');
15044
15044
 
15045
15045
  // element.removeAttribute('data-cb-logo-loop-initialized');
15046
15046
 
@@ -15051,12 +15051,12 @@ class HtmlUtil {
15051
15051
  element.removeAttribute(name);
15052
15052
  }
15053
15053
  });
15054
- element.removeAttribute('data-cb-editmode');
15055
15054
 
15056
15055
  // Remove runtime-added classes
15057
15056
  const type = element.getAttribute('data-cb-type');
15058
15057
  element.classList.remove(`cb-${type}`);
15059
15058
  }
15059
+ element.removeAttribute('data-cb-loaded');
15060
15060
  });
15061
15061
  html = '';
15062
15062
  if (multiple) {
@@ -16398,6 +16398,9 @@ class Grid {
16398
16398
  cell.click(); //refresh active cell/row
16399
16399
  }, 30);
16400
16400
  this.builder.opts.onChange();
16401
+
16402
+ // Re-init plugins
16403
+ if (this.builder.win.builderRuntime) this.builder.win.builderRuntime.reinitialize(cellElement);
16401
16404
  }
16402
16405
  removeColumn() {
16403
16406
  let util = this.util;
@@ -17171,6 +17174,9 @@ class Grid {
17171
17174
  builder.applyBehaviorOn(builderActive);
17172
17175
  this.rowTool.position(rowElement);
17173
17176
  this.builder.opts.onChange();
17177
+
17178
+ // Re-init plugins
17179
+ if (this.builder.win.builderRuntime) this.builder.win.builderRuntime.reinitialize(rowElement);
17174
17180
  }
17175
17181
  }
17176
17182
  class RowTool$1 {
@@ -51513,20 +51519,22 @@ class Plugin {
51513
51519
  const plugin = e.target.closest('[data-cb-type]');
51514
51520
  if (plugin) {
51515
51521
  this.builder.activePlugin = plugin;
51516
- this.renderTool();
51517
- this.pluginTool.style.display = 'flex';
51518
- let _toolwidth = this.pluginTool.offsetWidth; //to get value, element must not hidden (display:none). So set display:flex before this.
51522
+ if (!this.builder.isContentBox) {
51523
+ this.renderTool();
51524
+ this.pluginTool.style.display = 'flex';
51525
+ let _toolwidth = this.pluginTool.offsetWidth; //to get value, element must not hidden (display:none). So set display:flex before this.
51519
51526
 
51520
- let w = plugin.offsetWidth * this.builder.opts.zoom;
51521
- let top = plugin.getBoundingClientRect().top + this.builder.win.pageYOffset;
51522
- let left = plugin.getBoundingClientRect().left - 2;
51523
- left = left + (w - _toolwidth);
51527
+ let w = plugin.offsetWidth * this.builder.opts.zoom;
51528
+ let top = plugin.getBoundingClientRect().top + this.builder.win.pageYOffset;
51529
+ let left = plugin.getBoundingClientRect().left - 2;
51530
+ left = left + (w - _toolwidth);
51524
51531
 
51525
- //Adjust left in case an element is outside the screen
51526
- const _screenwidth = window.innerWidth;
51527
- if (_toolwidth + left > _screenwidth) left = plugin.getBoundingClientRect().left;
51528
- this.pluginTool.style.top = top + 'px';
51529
- this.pluginTool.style.left = left + 'px';
51532
+ //Adjust left in case an element is outside the screen
51533
+ const _screenwidth = window.innerWidth;
51534
+ if (_toolwidth + left > _screenwidth) left = plugin.getBoundingClientRect().left;
51535
+ this.pluginTool.style.top = top + 'px';
51536
+ this.pluginTool.style.left = left + 'px';
51537
+ }
51530
51538
  } else {
51531
51539
  this.builder.activePlugin = null;
51532
51540
  if (this.pluginTool) this.pluginTool.style.display = '';
@@ -62878,6 +62886,9 @@ class ElementTool {
62878
62886
 
62879
62887
  //Trigger Change event
62880
62888
  this.builder.opts.onChange();
62889
+
62890
+ // Re-init plugins
62891
+ if (this.builder.win.builderRuntime) this.builder.win.builderRuntime.reinitialize(newelm.parentNode);
62881
62892
  }, 100); //Timeout needed by Safari
62882
62893
  });
62883
62894
 
@@ -80816,6 +80827,9 @@ class ContentStuff {
80816
80827
  <div class="is-tool is-iframe-tool">
80817
80828
  <button title="${util.out('Settings')}" data-title="${util.out('Settings')}" style="width:40px;height:40px;background:none;"><svg class="is-icon-flex"><use xlink:href="#icon-cog"></use></svg></button>
80818
80829
  </div>
80830
+ <div class="is-tool is-plugin-tool">
80831
+ <button title="${util.out('Settings')}" data-title="${util.out('Settings')}" style="width:40px;height:40px;background:none;"><svg class="is-icon-flex"><use xlink:href="#icon-cog"></use></svg></button>
80832
+ </div>
80819
80833
  <div class="is-tool is-module-tool">
80820
80834
  <button class="btn-module-refresh" title="${util.out('Refresh')}" data-title="${util.out('Refresh')}" style="width:40px;height:40px;"><svg class="is-icon-flex"><use xlink:href="#icon-reload"></use></svg></button>
80821
80835
  <button class="btn-module-settings" title="${util.out('Settings')}" data-title="${util.out('Settings')}" style="width:40px;height:40px;"><svg class="is-icon-flex"><use xlink:href="#icon-cog"></use></svg></button>
@@ -81221,20 +81235,24 @@ class ContentStuff {
81221
81235
  /*
81222
81236
  .is-tool.is-video-tool,
81223
81237
  .is-tool.is-audio-tool,
81238
+ .is-tool.is-plugin-tool,
81224
81239
  .is-tool.is-iframe-tool {
81225
81240
  background: rgba(0, 0, 0, 0.15);
81226
81241
  border: transparent 1px solid;
81227
81242
  }
81228
81243
  .is-tool.is-video-tool > div,
81229
81244
  .is-tool.is-audio-tool > div,
81245
+ .is-tool.is-plugin-tool > div,
81230
81246
  .is-tool.is-iframe-tool > div,
81231
81247
  .is-tool.is-video-tool > button,
81232
81248
  .is-tool.is-audio-tool > button,
81249
+ .is-tool.is-plugin-tool > button,
81233
81250
  .is-tool.is-iframe-tool > button {
81234
81251
  background: transparent;
81235
81252
  }
81236
81253
  .is-tool.is-video-tool svg,
81237
81254
  .is-tool.is-audio-tool svg,
81255
+ .is-tool.is-plugin-tool svg,
81238
81256
  .is-tool.is-iframe-tool svg {
81239
81257
  fill: #fff;
81240
81258
  }
@@ -81244,6 +81262,7 @@ class ContentStuff {
81244
81262
  .is-tool.is-table-tool,
81245
81263
  .is-tool.is-code-tool,
81246
81264
  .is-tool.is-module-tool,
81265
+ .is-tool.is-plugin-tool,
81247
81266
  .is-tool#divLinkTool,
81248
81267
  .is-tool#divButtonTool,
81249
81268
  .is-tool.is-svg-tool {
@@ -81257,6 +81276,7 @@ class ContentStuff {
81257
81276
  .is-tool.is-table-tool > button,
81258
81277
  .is-tool.is-code-tool > button,
81259
81278
  .is-tool.is-module-tool > button,
81279
+ .is-tool.is-plugin-tool > button,
81260
81280
  .is-tool#divLinkTool > button,
81261
81281
  .is-tool#divButtonTool > button,
81262
81282
  .is-tool.is-svg-tool > button {
@@ -81269,6 +81289,7 @@ class ContentStuff {
81269
81289
  .is-tool.is-table-tool > button svg,
81270
81290
  .is-tool.is-code-tool > button svg,
81271
81291
  .is-tool.is-module-tool > button svg,
81292
+ .is-tool.is-plugin-tool > button svg,
81272
81293
  .is-tool#divLinkTool > button svg,
81273
81294
  .is-tool#divButtonTool > button svg,
81274
81295
  .is-tool.is-svg-tool > button svg {
@@ -81283,6 +81304,7 @@ class ContentStuff {
81283
81304
 
81284
81305
  .is-tool.is-video-tool,
81285
81306
  .is-tool.is-audio-tool,
81307
+ .is-tool.is-plugin-tool,
81286
81308
  .is-tool.is-iframe-tool {
81287
81309
  background: rgba(255, 255, 255, 0.97) !important;
81288
81310
  border: transparent 1px solid;
@@ -81294,6 +81316,7 @@ class ContentStuff {
81294
81316
  .is-tool.is-video-tool > button,
81295
81317
  .is-tool.is-audio-tool > div,
81296
81318
  .is-tool.is-audio-tool > button,
81319
+ .is-tool.is-plugin-tool > div,
81297
81320
  .is-tool.is-iframe-tool > div,
81298
81321
  .is-tool.is-iframe-tool > button {
81299
81322
  width: 35px !important;
@@ -81303,6 +81326,7 @@ class ContentStuff {
81303
81326
 
81304
81327
  .is-tool.is-video-tool svg,
81305
81328
  .is-tool.is-audio-tool svg,
81329
+ .is-tool.is-plugin-tool svg,
81306
81330
  .is-tool.is-iframe-tool svg {
81307
81331
  width: 17px;
81308
81332
  height: 17px;
@@ -97924,6 +97948,9 @@ Add an image for each feature.`, 'Create a new content showcasing a photo galler
97924
97948
 
97925
97949
  // Zoom
97926
97950
  this.setZoomOnControl(builder);
97951
+
97952
+ // Re-init plugins
97953
+ if (this.win.builderRuntime) this.win.builderRuntime.reinitialize(builder);
97927
97954
  }
97928
97955
  applySortableGrid() {
97929
97956
  if (this.iframe) {