@micromag/core 0.3.311 → 0.3.322

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/lib/utils.js CHANGED
@@ -42,134 +42,116 @@ var convertStyleToString = function convertStyleToString(style) {
42
42
  };
43
43
 
44
44
  /*! clipboard-copy. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */
45
+
45
46
  // @note vendoring this: https://github.com/feross/clipboard-copy/blob/master/index.js
46
47
  // we might want to add that to the npm deps and just use it
48
+
47
49
  function makeError() {
48
50
  return new DOMException('The request is not allowed', 'NotAllowedError');
49
51
  }
50
-
51
52
  function copyClipboardApi(_x) {
52
53
  return _copyClipboardApi.apply(this, arguments);
53
54
  }
54
-
55
55
  function _copyClipboardApi() {
56
56
  _copyClipboardApi = _asyncToGenerator__default["default"]( /*#__PURE__*/_regeneratorRuntime__default["default"]().mark(function _callee(text) {
57
57
  return _regeneratorRuntime__default["default"]().wrap(function _callee$(_context) {
58
- while (1) {
59
- switch (_context.prev = _context.next) {
60
- case 0:
61
- if (navigator.clipboard) {
62
- _context.next = 2;
63
- break;
64
- }
65
-
66
- throw makeError();
67
-
68
- case 2:
69
- return _context.abrupt("return", navigator.clipboard.writeText(text));
70
-
71
- case 3:
72
- case "end":
73
- return _context.stop();
74
- }
58
+ while (1) switch (_context.prev = _context.next) {
59
+ case 0:
60
+ if (navigator.clipboard) {
61
+ _context.next = 2;
62
+ break;
63
+ }
64
+ throw makeError();
65
+ case 2:
66
+ return _context.abrupt("return", navigator.clipboard.writeText(text));
67
+ case 3:
68
+ case "end":
69
+ return _context.stop();
75
70
  }
76
71
  }, _callee);
77
72
  }));
78
73
  return _copyClipboardApi.apply(this, arguments);
79
74
  }
80
-
81
75
  function copyExecCommand(_x2) {
82
76
  return _copyExecCommand.apply(this, arguments);
83
77
  }
84
-
85
78
  function _copyExecCommand() {
86
79
  _copyExecCommand = _asyncToGenerator__default["default"]( /*#__PURE__*/_regeneratorRuntime__default["default"]().mark(function _callee2(text) {
87
80
  var span, selection, range, success;
88
81
  return _regeneratorRuntime__default["default"]().wrap(function _callee2$(_context2) {
89
- while (1) {
90
- switch (_context2.prev = _context2.next) {
91
- case 0:
92
- // Put the text to copy into a <span>
93
- span = document.createElement('span');
94
- span.textContent = text; // Preserve consecutive spaces and newlines
95
-
96
- span.style.whiteSpace = 'pre';
97
- span.style.webkitUserSelect = 'auto';
98
- span.style.userSelect = 'all'; // Add the <span> to the page
99
-
100
- document.body.appendChild(span); // Make a selection object representing the range of text selected by the user
101
-
102
- selection = window.getSelection();
103
- range = window.document.createRange();
82
+ while (1) switch (_context2.prev = _context2.next) {
83
+ case 0:
84
+ // Put the text to copy into a <span>
85
+ span = document.createElement('span');
86
+ span.textContent = text;
87
+
88
+ // Preserve consecutive spaces and newlines
89
+ span.style.whiteSpace = 'pre';
90
+ span.style.webkitUserSelect = 'auto';
91
+ span.style.userSelect = 'all';
92
+
93
+ // Add the <span> to the page
94
+ document.body.appendChild(span);
95
+
96
+ // Make a selection object representing the range of text selected by the user
97
+ selection = window.getSelection();
98
+ range = window.document.createRange();
99
+ selection.removeAllRanges();
100
+ range.selectNode(span);
101
+ selection.addRange(range);
102
+
103
+ // Copy text to the clipboard
104
+ success = false;
105
+ try {
106
+ success = window.document.execCommand('copy');
107
+ } finally {
108
+ // Cleanup
104
109
  selection.removeAllRanges();
105
- range.selectNode(span);
106
- selection.addRange(range); // Copy text to the clipboard
107
-
108
- success = false;
109
-
110
- try {
111
- success = window.document.execCommand('copy');
112
- } finally {
113
- // Cleanup
114
- selection.removeAllRanges();
115
- window.document.body.removeChild(span);
116
- }
117
-
118
- if (success) {
119
- _context2.next = 15;
120
- break;
121
- }
122
-
123
- throw makeError();
124
-
125
- case 15:
126
- case "end":
127
- return _context2.stop();
128
- }
110
+ window.document.body.removeChild(span);
111
+ }
112
+ if (success) {
113
+ _context2.next = 15;
114
+ break;
115
+ }
116
+ throw makeError();
117
+ case 15:
118
+ case "end":
119
+ return _context2.stop();
129
120
  }
130
121
  }, _callee2);
131
122
  }));
132
123
  return _copyExecCommand.apply(this, arguments);
133
124
  }
134
-
135
125
  function copyToClipboard(_x3) {
136
126
  return _copyToClipboard.apply(this, arguments);
137
127
  }
138
-
139
128
  function _copyToClipboard() {
140
129
  _copyToClipboard = _asyncToGenerator__default["default"]( /*#__PURE__*/_regeneratorRuntime__default["default"]().mark(function _callee3(text) {
141
130
  return _regeneratorRuntime__default["default"]().wrap(function _callee3$(_context3) {
142
- while (1) {
143
- switch (_context3.prev = _context3.next) {
144
- case 0:
145
- _context3.prev = 0;
146
- _context3.next = 3;
147
- return copyClipboardApi(text);
148
-
149
- case 3:
150
- _context3.next = 15;
151
- break;
152
-
153
- case 5:
154
- _context3.prev = 5;
155
- _context3.t0 = _context3["catch"](0);
156
- _context3.prev = 7;
157
- _context3.next = 10;
158
- return copyExecCommand(text);
159
-
160
- case 10:
161
- _context3.next = 15;
162
- break;
163
-
164
- case 12:
165
- _context3.prev = 12;
166
- _context3.t1 = _context3["catch"](7);
167
- throw _context3.t1 || _context3.t0 || makeError();
168
-
169
- case 15:
170
- case "end":
171
- return _context3.stop();
172
- }
131
+ while (1) switch (_context3.prev = _context3.next) {
132
+ case 0:
133
+ _context3.prev = 0;
134
+ _context3.next = 3;
135
+ return copyClipboardApi(text);
136
+ case 3:
137
+ _context3.next = 15;
138
+ break;
139
+ case 5:
140
+ _context3.prev = 5;
141
+ _context3.t0 = _context3["catch"](0);
142
+ _context3.prev = 7;
143
+ _context3.next = 10;
144
+ return copyExecCommand(text);
145
+ case 10:
146
+ _context3.next = 15;
147
+ break;
148
+ case 12:
149
+ _context3.prev = 12;
150
+ _context3.t1 = _context3["catch"](7);
151
+ throw _context3.t1 || _context3.t0 || makeError();
152
+ case 15:
153
+ case "end":
154
+ return _context3.stop();
173
155
  }
174
156
  }, _callee3, null, [[0, 5], [7, 12]]);
175
157
  }));
@@ -180,17 +162,14 @@ var createNullableOnChange = function createNullableOnChange() {
180
162
  var onChange = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
181
163
  return function (newValue) {
182
164
  var nullableValue = newValue;
183
-
184
165
  if (isObject__default["default"](newValue)) {
185
166
  var allNull = Object.keys(newValue).reduce(function (acc, key) {
186
167
  return acc && newValue[key] === null;
187
168
  }, true);
188
-
189
169
  if (allNull) {
190
170
  nullableValue = null;
191
171
  }
192
172
  }
193
-
194
173
  if (onChange !== null) {
195
174
  onChange(nullableValue);
196
175
  }
@@ -204,7 +183,6 @@ var createUseEvent = function createUseEvent(eventsManager) {
204
183
  if (enabled && eventsManager !== null) {
205
184
  eventsManager.subscribe(event, callback);
206
185
  }
207
-
208
186
  return function () {
209
187
  if (enabled && eventsManager !== null) {
210
188
  eventsManager.unsubscribe(event, callback);
@@ -305,19 +283,16 @@ var easings = {
305
283
  var getColorAsString = function getColorAsString() {
306
284
  var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
307
285
  var overideAlpha = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
308
-
309
286
  if (value === null) {
310
287
  return null;
311
288
  }
312
-
313
289
  var _ref = isString__default["default"](value) ? {
314
- color: value
315
- } : value,
316
- _ref$color = _ref.color,
317
- color = _ref$color === void 0 ? null : _ref$color,
318
- _ref$alpha = _ref.alpha,
319
- alpha = _ref$alpha === void 0 ? null : _ref$alpha;
320
-
290
+ color: value
291
+ } : value,
292
+ _ref$color = _ref.color,
293
+ color = _ref$color === void 0 ? null : _ref$color,
294
+ _ref$alpha = _ref.alpha,
295
+ alpha = _ref$alpha === void 0 ? null : _ref$alpha;
321
296
  return alpha !== null || overideAlpha !== null ? tinycolor__default["default"](color).setAlpha(overideAlpha !== null ? overideAlpha : alpha).toRgbString() : color;
322
297
  };
323
298
 
@@ -325,11 +300,9 @@ var getComponentFromName = function getComponentFromName() {
325
300
  var name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
326
301
  var components = arguments.length > 1 ? arguments[1] : undefined;
327
302
  var defaultComponent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
328
-
329
303
  if (components === null || name === null) {
330
304
  return defaultComponent;
331
305
  }
332
-
333
306
  var pascalName = changeCase.pascalCase(name);
334
307
  return components[pascalName] || components[name] || defaultComponent;
335
308
  };
@@ -348,17 +321,18 @@ var deviceScreens = [{
348
321
  }, {
349
322
  name: 'very-large',
350
323
  mediaQuery: 'only screen and (min-width: 1600px)'
351
- }]; // eslint-disable-next-line import/prefer-default-export
324
+ }];
352
325
 
326
+ // eslint-disable-next-line import/prefer-default-export
353
327
  var getDeviceScreens = function getDeviceScreens() {
354
328
  return deviceScreens;
355
329
  };
356
330
 
357
331
  var getDisplayName = function getDisplayName(_ref) {
358
332
  var _ref$displayName = _ref.displayName,
359
- displayName = _ref$displayName === void 0 ? null : _ref$displayName,
360
- _ref$name = _ref.name,
361
- name = _ref$name === void 0 ? null : _ref$name;
333
+ displayName = _ref$displayName === void 0 ? null : _ref$displayName,
334
+ _ref$name = _ref.name,
335
+ name = _ref$name === void 0 ? null : _ref$name;
362
336
  return displayName || name || 'Component';
363
337
  };
364
338
 
@@ -367,16 +341,13 @@ var getFieldByName = function getFieldByName(fields, name) {
367
341
  if (foundField !== null) {
368
342
  return foundField;
369
343
  }
370
-
371
344
  var _it$name = it.name,
372
- fieldName = _it$name === void 0 ? null : _it$name,
373
- _it$fields = it.fields,
374
- subFields = _it$fields === void 0 ? [] : _it$fields;
375
-
345
+ fieldName = _it$name === void 0 ? null : _it$name,
346
+ _it$fields = it.fields,
347
+ subFields = _it$fields === void 0 ? [] : _it$fields;
376
348
  if (name !== null && fieldName === name) {
377
349
  return it;
378
350
  }
379
-
380
351
  return getFieldByName(subFields, name);
381
352
  }, null);
382
353
  };
@@ -386,35 +357,30 @@ var getFieldFromPath = function getFieldFromPath(path, fields, fieldManager) {
386
357
  if (foundField === null) {
387
358
  return null;
388
359
  }
389
-
390
360
  var _foundField$type = foundField.type,
391
- type = _foundField$type === void 0 ? null : _foundField$type,
392
- _foundField$fields = foundField.fields,
393
- fieldFields = _foundField$fields === void 0 ? null : _foundField$fields,
394
- _foundField$field = foundField.field,
395
- field = _foundField$field === void 0 ? null : _foundField$field,
396
- _foundField$itemsFiel = foundField.itemsField,
397
- itemsField = _foundField$itemsFiel === void 0 ? null : _foundField$itemsFiel;
361
+ type = _foundField$type === void 0 ? null : _foundField$type,
362
+ _foundField$fields = foundField.fields,
363
+ fieldFields = _foundField$fields === void 0 ? null : _foundField$fields,
364
+ _foundField$field = foundField.field,
365
+ field = _foundField$field === void 0 ? null : _foundField$field,
366
+ _foundField$itemsFiel = foundField.itemsField,
367
+ itemsField = _foundField$itemsFiel === void 0 ? null : _foundField$itemsFiel;
398
368
  var finalType = field !== null ? field.type || type : type;
399
369
  var definition = fieldManager.getDefinition(finalType);
400
-
401
370
  var _ref = finalType !== null ? definition : foundField,
402
- _ref$fields = _ref.fields,
403
- subFields = _ref$fields === void 0 ? null : _ref$fields,
404
- _ref$settings = _ref.settings,
405
- settings = _ref$settings === void 0 ? null : _ref$settings,
406
- _ref$itemsField = _ref.itemsField,
407
- defItemsField = _ref$itemsField === void 0 ? null : _ref$itemsField;
408
-
371
+ _ref$fields = _ref.fields,
372
+ subFields = _ref$fields === void 0 ? null : _ref$fields,
373
+ _ref$settings = _ref.settings,
374
+ settings = _ref$settings === void 0 ? null : _ref$settings,
375
+ _ref$itemsField = _ref.itemsField,
376
+ defItemsField = _ref$itemsField === void 0 ? null : _ref$itemsField;
409
377
  var finalItemsField = itemsField || defItemsField;
410
-
411
378
  if (finalItemsField !== null && key.match(/^[0-9]+$/)) {
412
379
  return _objectSpread__default["default"](_objectSpread__default["default"]({}, finalItemsField), {}, {
413
380
  name: path.join('/'),
414
381
  listItems: true
415
382
  });
416
383
  }
417
-
418
384
  return getFieldByName([].concat(_toConsumableArray__default["default"](fieldFields || []), _toConsumableArray__default["default"](subFields || []), _toConsumableArray__default["default"](settings || [])), key);
419
385
  }, {
420
386
  fields: fields
@@ -423,11 +389,9 @@ var getFieldFromPath = function getFieldFromPath(path, fields, fieldManager) {
423
389
 
424
390
  var getFileName = function getFileName() {
425
391
  var url = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
426
-
427
392
  if (url === null || typeof url.match === 'undefined') {
428
393
  return null;
429
394
  }
430
-
431
395
  return url.match(/([^/]+)(\?.*)?$/)[1] || url;
432
396
  };
433
397
 
@@ -435,14 +399,12 @@ var getFontFamily = function getFontFamily(value) {
435
399
  if (value == null) {
436
400
  return null;
437
401
  }
438
-
439
402
  var _ref = isObject__default["default"](value) ? value : {
440
- name: value
441
- },
442
- name = _ref.name,
443
- _ref$fallback = _ref.fallback,
444
- fallback = _ref$fallback === void 0 ? null : _ref$fallback;
445
-
403
+ name: value
404
+ },
405
+ name = _ref.name,
406
+ _ref$fallback = _ref.fallback,
407
+ fallback = _ref$fallback === void 0 ? null : _ref$fallback;
446
408
  return [name, fallback].filter(function (it) {
447
409
  return it !== null;
448
410
  }).map(function (it) {
@@ -460,7 +422,6 @@ var getRemainder = function getRemainder(number) {
460
422
  var remainder = number - Math.floor(number);
461
423
  return remainder.toFixed(4);
462
424
  };
463
-
464
425
  var largestRemainderRound = function largestRemainderRound(numbers, desiredTotal) {
465
426
  if (!isArray__default["default"](numbers) || numbers.length < 1) return numbers;
466
427
  var result = numbers.map(function (number, index) {
@@ -476,13 +437,11 @@ var largestRemainderRound = function largestRemainderRound(numbers, desiredTotal
476
437
  return sum + current.floor;
477
438
  }, 0);
478
439
  var delta = desiredTotal - lowerSum;
479
-
480
440
  for (var i = 0; i < delta; i += 1) {
481
441
  if (result[i]) {
482
442
  result[i].floor += 1;
483
443
  }
484
444
  }
485
-
486
445
  return result.sort(function (a, b) {
487
446
  return a.index - b.index;
488
447
  }).map(function (res) {
@@ -491,23 +450,19 @@ var largestRemainderRound = function largestRemainderRound(numbers, desiredTotal
491
450
  };
492
451
 
493
452
  var _excluded = ["image", "video", "media"];
494
-
495
453
  var getLayersFromBackground = function getLayersFromBackground() {
496
454
  var background = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
497
-
498
455
  if (background === null) {
499
456
  return [];
500
457
  }
501
-
502
458
  return (isArray__default["default"](background) ? background : [background]).reduce(function (layers, _ref) {
503
459
  var _ref$image = _ref.image,
504
- image = _ref$image === void 0 ? null : _ref$image,
505
- _ref$video = _ref.video,
506
- video = _ref$video === void 0 ? null : _ref$video,
507
- _ref$media = _ref.media,
508
- media = _ref$media === void 0 ? null : _ref$media,
509
- data = _objectWithoutProperties__default["default"](_ref, _excluded);
510
-
460
+ image = _ref$image === void 0 ? null : _ref$image,
461
+ _ref$video = _ref.video,
462
+ video = _ref$video === void 0 ? null : _ref$video,
463
+ _ref$media = _ref.media,
464
+ media = _ref$media === void 0 ? null : _ref$media,
465
+ data = _objectWithoutProperties__default["default"](_ref, _excluded);
511
466
  if (image !== null && video !== null) {
512
467
  return [].concat(_toConsumableArray__default["default"](layers), [_objectSpread__default["default"]({
513
468
  media: image
@@ -515,7 +470,6 @@ var getLayersFromBackground = function getLayersFromBackground() {
515
470
  media: video
516
471
  }, data)]);
517
472
  }
518
-
519
473
  return [].concat(_toConsumableArray__default["default"](layers), [_objectSpread__default["default"]({
520
474
  media: media || image || video
521
475
  }, data)]);
@@ -535,28 +489,23 @@ var getOptimalImageUrl = function getOptimalImageUrl() {
535
489
  var media = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
536
490
  var containerWidth = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
537
491
  var containerHeight = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
538
-
539
492
  var _ref = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {},
540
- _ref$resolution = _ref.resolution,
541
- resolution = _ref$resolution === void 0 ? 1 : _ref$resolution,
542
- _ref$maxDiff = _ref.maxDiff,
543
- maxDiff = _ref$maxDiff === void 0 ? 800 : _ref$maxDiff;
544
-
493
+ _ref$resolution = _ref.resolution,
494
+ resolution = _ref$resolution === void 0 ? 1 : _ref$resolution,
495
+ _ref$maxDiff = _ref.maxDiff,
496
+ maxDiff = _ref$maxDiff === void 0 ? 800 : _ref$maxDiff;
545
497
  var _ref2 = media || {},
546
- _ref2$sizes = _ref2.sizes,
547
- sizes = _ref2$sizes === void 0 ? null : _ref2$sizes,
548
- _ref2$url = _ref2.url,
549
- defaultUrl = _ref2$url === void 0 ? null : _ref2$url,
550
- _ref2$metadata = _ref2.metadata;
551
-
552
- _ref2$metadata = _ref2$metadata === void 0 ? {} : _ref2$metadata;
553
- var imgWidth = _ref2$metadata.width,
554
- imgHeight = _ref2$metadata.height;
555
-
498
+ _ref2$sizes = _ref2.sizes,
499
+ sizes = _ref2$sizes === void 0 ? null : _ref2$sizes,
500
+ _ref2$url = _ref2.url,
501
+ defaultUrl = _ref2$url === void 0 ? null : _ref2$url,
502
+ _ref2$metadata = _ref2.metadata,
503
+ _ref2$metadata2 = _ref2$metadata === void 0 ? {} : _ref2$metadata,
504
+ imgWidth = _ref2$metadata2.width,
505
+ imgHeight = _ref2$metadata2.height;
556
506
  if (sizes === null || containerWidth === null && containerHeight === null) {
557
507
  return defaultUrl;
558
508
  }
559
-
560
509
  var finalSizes = _objectSpread__default["default"]({
561
510
  original: {
562
511
  url: defaultUrl,
@@ -564,70 +513,64 @@ var getOptimalImageUrl = function getOptimalImageUrl() {
564
513
  height: imgHeight
565
514
  }
566
515
  }, sizes);
567
-
568
516
  var finalContainerWidth = containerWidth !== null && resolution !== null ? containerWidth * resolution : containerWidth;
569
517
  var finalContainerHeight = containerHeight !== null && resolution !== null ? containerHeight * resolution : containerHeight;
570
-
571
518
  var _Object$keys$reduce = Object.keys(finalSizes).reduce(function (acc, key) {
572
- var currentDiff = acc.diff,
519
+ var currentDiff = acc.diff,
573
520
  currentIsLarger = acc.isLarger,
574
521
  currentSize = acc.size;
575
- var _finalSizes$key = finalSizes[key],
522
+ var _finalSizes$key = finalSizes[key],
576
523
  url = _finalSizes$key.url,
577
524
  _finalSizes$key$width = _finalSizes$key.width,
578
525
  width = _finalSizes$key$width === void 0 ? null : _finalSizes$key$width,
579
526
  _finalSizes$key$heigh = _finalSizes$key.height,
580
527
  height = _finalSizes$key$heigh === void 0 ? null : _finalSizes$key$heigh;
581
- var diffWidth = width !== null && finalContainerWidth !== null ? width - finalContainerWidth : null;
582
- var diffHeight = height !== null && finalContainerHeight !== null ? height - finalContainerHeight : null;
583
- var isLarger = (diffWidth === null || diffWidth >= 0) && (diffHeight === null || diffHeight >= 0);
584
- var diff = [diffWidth, diffHeight].reduce(function (total, value) {
585
- return value !== null ? (total || 0) + Math.abs(value) : total;
586
- }, null);
587
-
588
- if (diff === null) {
589
- diff = Infinity;
590
- }
591
-
592
- var size = (width || 0) + (height || 0);
593
- var sizeIsLarger = size > currentSize;
594
-
595
- if ( // Difference is lower and image is larger
596
- diff < currentDiff && isLarger || // Difference is lower and current is not larger or diff is greater than max
597
- diff < currentDiff && (!currentIsLarger && sizeIsLarger || currentDiff > maxDiff) || // Image is larger and diff is smaller than max
598
- diff <= maxDiff && !currentIsLarger && isLarger || // Image is larger than previous
599
- diff <= maxDiff && !currentIsLarger && !isLarger && sizeIsLarger) {
600
- return {
601
- key: key,
602
- url: url,
603
- diff: diff,
604
- isLarger: isLarger
605
- };
606
- }
607
-
608
- return acc;
609
- }, {
610
- key: null,
611
- url: defaultUrl,
612
- diff: Infinity,
613
- isLarger: false,
614
- size: 0
615
- }),
616
- finalUrl = _Object$keys$reduce.url;
617
-
528
+ var diffWidth = width !== null && finalContainerWidth !== null ? width - finalContainerWidth : null;
529
+ var diffHeight = height !== null && finalContainerHeight !== null ? height - finalContainerHeight : null;
530
+ var isLarger = (diffWidth === null || diffWidth >= 0) && (diffHeight === null || diffHeight >= 0);
531
+ var diff = [diffWidth, diffHeight].reduce(function (total, value) {
532
+ return value !== null ? (total || 0) + Math.abs(value) : total;
533
+ }, null);
534
+ if (diff === null) {
535
+ diff = Infinity;
536
+ }
537
+ var size = (width || 0) + (height || 0);
538
+ var sizeIsLarger = size > currentSize;
539
+ if (
540
+ // Difference is lower and image is larger
541
+ diff < currentDiff && isLarger ||
542
+ // Difference is lower and current is not larger or diff is greater than max
543
+ diff < currentDiff && (!currentIsLarger && sizeIsLarger || currentDiff > maxDiff) ||
544
+ // Image is larger and diff is smaller than max
545
+ diff <= maxDiff && !currentIsLarger && isLarger ||
546
+ // Image is larger than previous
547
+ diff <= maxDiff && !currentIsLarger && !isLarger && sizeIsLarger) {
548
+ return {
549
+ key: key,
550
+ url: url,
551
+ diff: diff,
552
+ isLarger: isLarger
553
+ };
554
+ }
555
+ return acc;
556
+ }, {
557
+ key: null,
558
+ url: defaultUrl,
559
+ diff: Infinity,
560
+ isLarger: false,
561
+ size: 0
562
+ }),
563
+ finalUrl = _Object$keys$reduce.url;
618
564
  return finalUrl;
619
565
  };
620
566
 
621
567
  var getSecondsFromTime = function getSecondsFromTime(time) {
622
568
  var t = time.split(':');
623
-
624
569
  try {
625
570
  var s = t[2].split(',');
626
-
627
571
  if (s.length === 1) {
628
572
  s = t[2].split('.');
629
573
  }
630
-
631
574
  return parseFloat(t[0], 10) * 3600 + parseFloat(t[1], 10) * 60 + parseFloat(s[0], 10) + parseFloat(s[1], 10) / 1000;
632
575
  } catch (e) {
633
576
  return 0;
@@ -663,23 +606,20 @@ function getJustifyContent(horizontal) {
663
606
  if (horizontal === 'right') return 'flex-end';
664
607
  return null;
665
608
  }
666
-
667
609
  function getAlignItems(vertical) {
668
610
  if (vertical === 'top') return 'flex-start';
669
611
  if (vertical === 'middle') return 'center';
670
612
  if (vertical === 'bottom') return 'flex-end';
671
613
  return null;
672
614
  }
673
-
674
615
  var getStyleFromAlignment = function getStyleFromAlignment(value) {
675
616
  if (value === null) {
676
617
  return null;
677
618
  }
678
-
679
619
  var _value$horizontal = value.horizontal,
680
- horizontal = _value$horizontal === void 0 ? null : _value$horizontal,
681
- _value$vertical = value.vertical,
682
- vertical = _value$vertical === void 0 ? null : _value$vertical;
620
+ horizontal = _value$horizontal === void 0 ? null : _value$horizontal,
621
+ _value$vertical = value.vertical,
622
+ vertical = _value$vertical === void 0 ? null : _value$vertical;
683
623
  var justifyContent = getJustifyContent(horizontal);
684
624
  var alignItems = getAlignItems(vertical);
685
625
  return {
@@ -700,13 +640,12 @@ var getStyleFromBorder = function getStyleFromBorder(value) {
700
640
  if (value == null) {
701
641
  return null;
702
642
  }
703
-
704
643
  var _value$width = value.width,
705
- width = _value$width === void 0 ? null : _value$width,
706
- _value$style = value.style,
707
- borderStyle = _value$style === void 0 ? null : _value$style,
708
- _value$color = value.color,
709
- color = _value$color === void 0 ? null : _value$color;
644
+ width = _value$width === void 0 ? null : _value$width,
645
+ _value$style = value.style,
646
+ borderStyle = _value$style === void 0 ? null : _value$style,
647
+ _value$color = value.color,
648
+ color = _value$color === void 0 ? null : _value$color;
710
649
  return _objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"]({}, width !== null ? {
711
650
  borderWidth: width
712
651
  } : null), borderStyle !== null ? {
@@ -718,64 +657,60 @@ var getStyleFromShadow = function getStyleFromShadow(value) {
718
657
  if (value == null) {
719
658
  return null;
720
659
  }
721
-
722
660
  var _ref = value || {},
723
- _ref$shadowAngle = _ref.shadowAngle,
724
- shadowAngle = _ref$shadowAngle === void 0 ? null : _ref$shadowAngle,
725
- _ref$shadowDistance = _ref.shadowDistance,
726
- shadowDistance = _ref$shadowDistance === void 0 ? null : _ref$shadowDistance,
727
- _ref$shadowBlur = _ref.shadowBlur,
728
- shadowBlur = _ref$shadowBlur === void 0 ? null : _ref$shadowBlur,
729
- _ref$shadowColor = _ref.shadowColor,
730
- shadowColor = _ref$shadowColor === void 0 ? null : _ref$shadowColor;
731
-
661
+ _ref$shadowAngle = _ref.shadowAngle,
662
+ shadowAngle = _ref$shadowAngle === void 0 ? null : _ref$shadowAngle,
663
+ _ref$shadowDistance = _ref.shadowDistance,
664
+ shadowDistance = _ref$shadowDistance === void 0 ? null : _ref$shadowDistance,
665
+ _ref$shadowBlur = _ref.shadowBlur,
666
+ shadowBlur = _ref$shadowBlur === void 0 ? null : _ref$shadowBlur,
667
+ _ref$shadowColor = _ref.shadowColor,
668
+ shadowColor = _ref$shadowColor === void 0 ? null : _ref$shadowColor;
732
669
  if (!shadowAngle) return null;
733
670
  var blur = shadowBlur || '0';
734
671
  var color = getColorAsString(shadowColor) || '#000000';
735
-
736
672
  var _getShadowCoords = getShadowCoords(shadowAngle, shadowDistance),
737
- x = _getShadowCoords.x,
738
- y = _getShadowCoords.y;
739
-
673
+ x = _getShadowCoords.x,
674
+ y = _getShadowCoords.y;
740
675
  var boxShadow = "".concat(x, "px ").concat(y, "px ").concat(blur, "px 0 ").concat(color);
741
676
  return {
742
677
  boxShadow: boxShadow
743
678
  };
744
679
  };
745
680
 
681
+ // @todo hmm, gotta find a better way to handle this
746
682
  var getStyleFromBox = function getStyleFromBox(value) {
747
683
  if (value === null) {
748
684
  return null;
749
685
  }
750
-
751
686
  var _value$backgroundColo = value.backgroundColor,
752
- backgroundColor = _value$backgroundColo === void 0 ? null : _value$backgroundColo,
753
- _value$borderRadius = value.borderRadius,
754
- borderRadius = _value$borderRadius === void 0 ? null : _value$borderRadius,
755
- _value$padding = value.padding,
756
- padding = _value$padding === void 0 ? null : _value$padding,
757
- _value$paddingTop = value.paddingTop,
758
- paddingTop = _value$paddingTop === void 0 ? null : _value$paddingTop,
759
- _value$paddingRight = value.paddingRight,
760
- paddingRight = _value$paddingRight === void 0 ? null : _value$paddingRight,
761
- _value$paddingBottom = value.paddingBottom,
762
- paddingBottom = _value$paddingBottom === void 0 ? null : _value$paddingBottom,
763
- _value$paddingLeft = value.paddingLeft,
764
- paddingLeft = _value$paddingLeft === void 0 ? null : _value$paddingLeft,
765
- _value$borderWidth = value.borderWidth,
766
- borderWidth = _value$borderWidth === void 0 ? null : _value$borderWidth,
767
- _value$borderStyle = value.borderStyle,
768
- borderStyle = _value$borderStyle === void 0 ? null : _value$borderStyle,
769
- _value$borderColor = value.borderColor,
770
- borderColor = _value$borderColor === void 0 ? null : _value$borderColor,
771
- _value$shadowAngle = value.shadowAngle,
772
- shadowAngle = _value$shadowAngle === void 0 ? null : _value$shadowAngle,
773
- _value$shadowDistance = value.shadowDistance,
774
- shadowDistance = _value$shadowDistance === void 0 ? null : _value$shadowDistance,
775
- _value$shadowBlur = value.shadowBlur,
776
- shadowBlur = _value$shadowBlur === void 0 ? null : _value$shadowBlur,
777
- _value$shadowColor = value.shadowColor,
778
- shadowColor = _value$shadowColor === void 0 ? null : _value$shadowColor;
687
+ backgroundColor = _value$backgroundColo === void 0 ? null : _value$backgroundColo,
688
+ _value$borderRadius = value.borderRadius,
689
+ borderRadius = _value$borderRadius === void 0 ? null : _value$borderRadius,
690
+ _value$padding = value.padding,
691
+ padding = _value$padding === void 0 ? null : _value$padding,
692
+ _value$paddingTop = value.paddingTop,
693
+ paddingTop = _value$paddingTop === void 0 ? null : _value$paddingTop,
694
+ _value$paddingRight = value.paddingRight,
695
+ paddingRight = _value$paddingRight === void 0 ? null : _value$paddingRight,
696
+ _value$paddingBottom = value.paddingBottom,
697
+ paddingBottom = _value$paddingBottom === void 0 ? null : _value$paddingBottom,
698
+ _value$paddingLeft = value.paddingLeft,
699
+ paddingLeft = _value$paddingLeft === void 0 ? null : _value$paddingLeft,
700
+ _value$borderWidth = value.borderWidth,
701
+ borderWidth = _value$borderWidth === void 0 ? null : _value$borderWidth,
702
+ _value$borderStyle = value.borderStyle,
703
+ borderStyle = _value$borderStyle === void 0 ? null : _value$borderStyle,
704
+ _value$borderColor = value.borderColor,
705
+ borderColor = _value$borderColor === void 0 ? null : _value$borderColor,
706
+ _value$shadowAngle = value.shadowAngle,
707
+ shadowAngle = _value$shadowAngle === void 0 ? null : _value$shadowAngle,
708
+ _value$shadowDistance = value.shadowDistance,
709
+ shadowDistance = _value$shadowDistance === void 0 ? null : _value$shadowDistance,
710
+ _value$shadowBlur = value.shadowBlur,
711
+ shadowBlur = _value$shadowBlur === void 0 ? null : _value$shadowBlur,
712
+ _value$shadowColor = value.shadowColor,
713
+ shadowColor = _value$shadowColor === void 0 ? null : _value$shadowColor;
779
714
  var border = {
780
715
  width: borderWidth,
781
716
  style: borderStyle,
@@ -787,21 +722,19 @@ var getStyleFromBox = function getStyleFromBox(value) {
787
722
  shadowBlur: shadowBlur,
788
723
  shadowColor: shadowColor
789
724
  };
790
-
791
725
  var _ref = isObject__default["default"](padding) ? padding : {
792
- padding: padding
793
- },
794
- _ref$top = _ref.top,
795
- paddingValueTop = _ref$top === void 0 ? null : _ref$top,
796
- _ref$right = _ref.right,
797
- paddingValueRight = _ref$right === void 0 ? null : _ref$right,
798
- _ref$bottom = _ref.bottom,
799
- paddingValueBottom = _ref$bottom === void 0 ? null : _ref$bottom,
800
- _ref$left = _ref.left,
801
- paddingValueLeft = _ref$left === void 0 ? null : _ref$left,
802
- _ref$padding = _ref.padding,
803
- paddingValue = _ref$padding === void 0 ? null : _ref$padding;
804
-
726
+ padding: padding
727
+ },
728
+ _ref$top = _ref.top,
729
+ paddingValueTop = _ref$top === void 0 ? null : _ref$top,
730
+ _ref$right = _ref.right,
731
+ paddingValueRight = _ref$right === void 0 ? null : _ref$right,
732
+ _ref$bottom = _ref.bottom,
733
+ paddingValueBottom = _ref$bottom === void 0 ? null : _ref$bottom,
734
+ _ref$left = _ref.left,
735
+ paddingValueLeft = _ref$left === void 0 ? null : _ref$left,
736
+ _ref$padding = _ref.padding,
737
+ paddingValue = _ref$padding === void 0 ? null : _ref$padding;
805
738
  return _objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"]({}, getStyleFromColor(backgroundColor, 'backgroundColor')), borderRadius !== null ? {
806
739
  borderRadius: borderRadius
807
740
  } : null), getStyleFromBorder(border)), getStyleFromShadow(shadow)), padding !== null || paddingValue !== null ? {
@@ -821,15 +754,14 @@ var getStyleFromContainer = function getStyleFromContainer(value) {
821
754
  if (value == null) {
822
755
  return null;
823
756
  }
824
-
825
757
  var _value$size = value.size,
826
- size = _value$size === void 0 ? {} : _value$size,
827
- _value$backgroundColo = value.backgroundColor,
828
- backgroundColor = _value$backgroundColo === void 0 ? null : _value$backgroundColo;
758
+ size = _value$size === void 0 ? {} : _value$size,
759
+ _value$backgroundColo = value.backgroundColor,
760
+ backgroundColor = _value$backgroundColo === void 0 ? null : _value$backgroundColo;
829
761
  var _size$width = size.width,
830
- width = _size$width === void 0 ? null : _size$width,
831
- _size$height = size.height,
832
- height = _size$height === void 0 ? null : _size$height;
762
+ width = _size$width === void 0 ? null : _size$width,
763
+ _size$height = size.height,
764
+ height = _size$height === void 0 ? null : _size$height;
833
765
  return _objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"]({}, width ? {
834
766
  width: "".concat(width, "%")
835
767
  } : null), height ? {
@@ -841,11 +773,10 @@ var getStyleFromHighlight = function getStyleFromHighlight(value) {
841
773
  if (value == null) {
842
774
  return null;
843
775
  }
844
-
845
776
  var _value$textColor = value.textColor,
846
- textColor = _value$textColor === void 0 ? null : _value$textColor,
847
- _value$color = value.color,
848
- color = _value$color === void 0 ? null : _value$color;
777
+ textColor = _value$textColor === void 0 ? null : _value$textColor,
778
+ _value$color = value.color,
779
+ color = _value$color === void 0 ? null : _value$color;
849
780
  var colorString = color !== null ? getColorAsString(color) : null;
850
781
  var boxShadow = colorString !== null ? "0.05em 0px 0px ".concat(colorString, ", -0.05em 0px 0px ").concat(colorString) : null;
851
782
  return color !== null || textColor !== null ? _objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"]({}, color !== null ? getStyleFromColor(color, 'backgroundColor') : null), textColor !== null ? getStyleFromColor(textColor, 'color') : null), color !== null ? {
@@ -860,19 +791,18 @@ var getStyleFromImage = function getStyleFromImage(value) {
860
791
  if (value == null) {
861
792
  return null;
862
793
  }
863
-
864
794
  var _value$fit = value.fit,
865
- fit = _value$fit === void 0 ? {} : _value$fit,
866
- _value$backgroundColo = value.backgroundColor,
867
- backgroundColor = _value$backgroundColo === void 0 ? null : _value$backgroundColo;
795
+ fit = _value$fit === void 0 ? {} : _value$fit,
796
+ _value$backgroundColo = value.backgroundColor,
797
+ backgroundColor = _value$backgroundColo === void 0 ? null : _value$backgroundColo;
868
798
  var _fit$size = fit.size,
869
- size = _fit$size === void 0 ? null : _fit$size,
870
- _fit$position = fit.position,
871
- position = _fit$position === void 0 ? {} : _fit$position;
799
+ size = _fit$size === void 0 ? null : _fit$size,
800
+ _fit$position = fit.position,
801
+ position = _fit$position === void 0 ? {} : _fit$position;
872
802
  var _position$axisAlign = position.axisAlign,
873
- axisAlign = _position$axisAlign === void 0 ? null : _position$axisAlign,
874
- _position$crossAlign = position.crossAlign,
875
- crossAlign = _position$crossAlign === void 0 ? null : _position$crossAlign;
803
+ axisAlign = _position$axisAlign === void 0 ? null : _position$axisAlign,
804
+ _position$crossAlign = position.crossAlign,
805
+ crossAlign = _position$crossAlign === void 0 ? null : _position$crossAlign;
876
806
  return _objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"]({}, size !== null ? {
877
807
  objectFit: size
878
808
  } : null), axisAlign !== null && crossAlign !== null ? {
@@ -884,19 +814,16 @@ var getStyleFromLink = function getStyleFromLink(value) {
884
814
  if (value == null) {
885
815
  return null;
886
816
  }
887
-
888
817
  var _value$color = value.color,
889
- color = _value$color === void 0 ? null : _value$color,
890
- fontStyle = value.fontStyle;
891
-
818
+ color = _value$color === void 0 ? null : _value$color,
819
+ fontStyle = value.fontStyle;
892
820
  var _ref = fontStyle || {},
893
- _ref$italic = _ref.italic,
894
- italic = _ref$italic === void 0 ? false : _ref$italic,
895
- _ref$bold = _ref.bold,
896
- bold = _ref$bold === void 0 ? false : _ref$bold,
897
- _ref$underline = _ref.underline,
898
- underline = _ref$underline === void 0 ? false : _ref$underline;
899
-
821
+ _ref$italic = _ref.italic,
822
+ italic = _ref$italic === void 0 ? false : _ref$italic,
823
+ _ref$bold = _ref.bold,
824
+ bold = _ref$bold === void 0 ? false : _ref$bold,
825
+ _ref$underline = _ref.underline,
826
+ underline = _ref$underline === void 0 ? false : _ref$underline;
900
827
  return _objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"]({}, color !== null ? getStyleFromColor(color, 'color') : null), italic ? {
901
828
  fontStyle: 'italic'
902
829
  } : null), bold ? {
@@ -910,35 +837,32 @@ var getStyleFromText = function getStyleFromText(value) {
910
837
  if (value == null) {
911
838
  return null;
912
839
  }
913
-
914
840
  var _value$fontFamily = value.fontFamily,
915
- fontFamily = _value$fontFamily === void 0 ? null : _value$fontFamily,
916
- _value$fontSize = value.fontSize,
917
- fontSize = _value$fontSize === void 0 ? null : _value$fontSize,
918
- _value$fontStyle = value.fontStyle,
919
- fontStyle = _value$fontStyle === void 0 ? null : _value$fontStyle,
920
- _value$fontWeight = value.fontWeight,
921
- fontWeight = _value$fontWeight === void 0 ? null : _value$fontWeight,
922
- _value$lineHeight = value.lineHeight,
923
- lineHeight = _value$lineHeight === void 0 ? null : _value$lineHeight,
924
- _value$letterSpacing = value.letterSpacing,
925
- letterSpacing = _value$letterSpacing === void 0 ? null : _value$letterSpacing,
926
- _value$align = value.align,
927
- textAlign = _value$align === void 0 ? null : _value$align,
928
- _value$color = value.color,
929
- color = _value$color === void 0 ? null : _value$color;
930
-
841
+ fontFamily = _value$fontFamily === void 0 ? null : _value$fontFamily,
842
+ _value$fontSize = value.fontSize,
843
+ fontSize = _value$fontSize === void 0 ? null : _value$fontSize,
844
+ _value$fontStyle = value.fontStyle,
845
+ fontStyle = _value$fontStyle === void 0 ? null : _value$fontStyle,
846
+ _value$fontWeight = value.fontWeight,
847
+ fontWeight = _value$fontWeight === void 0 ? null : _value$fontWeight,
848
+ _value$lineHeight = value.lineHeight,
849
+ lineHeight = _value$lineHeight === void 0 ? null : _value$lineHeight,
850
+ _value$letterSpacing = value.letterSpacing,
851
+ letterSpacing = _value$letterSpacing === void 0 ? null : _value$letterSpacing,
852
+ _value$align = value.align,
853
+ textAlign = _value$align === void 0 ? null : _value$align,
854
+ _value$color = value.color,
855
+ color = _value$color === void 0 ? null : _value$color;
931
856
  var _ref = fontStyle || {},
932
- _ref$italic = _ref.italic,
933
- italic = _ref$italic === void 0 ? false : _ref$italic,
934
- _ref$bold = _ref.bold,
935
- bold = _ref$bold === void 0 ? false : _ref$bold,
936
- _ref$underline = _ref.underline,
937
- underline = _ref$underline === void 0 ? false : _ref$underline,
938
- textTransform = _ref.transform,
939
- _ref$outline = _ref.outline,
940
- outline = _ref$outline === void 0 ? false : _ref$outline;
941
-
857
+ _ref$italic = _ref.italic,
858
+ italic = _ref$italic === void 0 ? false : _ref$italic,
859
+ _ref$bold = _ref.bold,
860
+ bold = _ref$bold === void 0 ? false : _ref$bold,
861
+ _ref$underline = _ref.underline,
862
+ underline = _ref$underline === void 0 ? false : _ref$underline,
863
+ textTransform = _ref.transform,
864
+ _ref$outline = _ref.outline,
865
+ outline = _ref$outline === void 0 ? false : _ref$outline;
942
866
  return _objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"](_objectSpread__default["default"]({
943
867
  fontFamily: getFontFamily(fontFamily)
944
868
  }, fontSize !== null ? {
@@ -969,11 +893,10 @@ var getStyleFromMargin = function getStyleFromMargin(value) {
969
893
  if (value == null) {
970
894
  return null;
971
895
  }
972
-
973
896
  var _value$top = value.top,
974
- marginTop = _value$top === void 0 ? null : _value$top,
975
- _value$bottom = value.bottom,
976
- marginBottom = _value$bottom === void 0 ? null : _value$bottom;
897
+ marginTop = _value$top === void 0 ? null : _value$top,
898
+ _value$bottom = value.bottom,
899
+ marginBottom = _value$bottom === void 0 ? null : _value$bottom;
977
900
  return _objectSpread__default["default"](_objectSpread__default["default"]({}, marginTop !== null ? {
978
901
  marginTop: marginTop
979
902
  } : null), marginBottom !== null ? {
@@ -983,29 +906,24 @@ var getStyleFromMargin = function getStyleFromMargin(value) {
983
906
 
984
907
  var possibleMimes = ['video/webm', 'video/mp4', 'video/ogg'];
985
908
  var supportedMimes = null;
986
-
987
909
  function getVideoSupportedMimes() {
988
910
  var mimes = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : possibleMimes;
989
-
990
911
  if (supportedMimes === null) {
991
912
  var video = document.createElement('video');
992
913
  supportedMimes = mimes.filter(function (mime) {
993
914
  return video.canPlayType(mime) !== '';
994
915
  });
995
916
  }
996
-
997
917
  return supportedMimes;
998
918
  }
999
919
 
1000
920
  var getLayoutParts = function getLayoutParts() {
1001
921
  var layout = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
1002
-
1003
922
  var _ref = layout !== null && layout.indexOf('-') !== false ? layout.split('-') : [layout, null, null],
1004
- _ref2 = _slicedToArray__default["default"](_ref, 3),
1005
- horizontal = _ref2[0],
1006
- vertical = _ref2[1],
1007
- suffix = _ref2[2];
1008
-
923
+ _ref2 = _slicedToArray__default["default"](_ref, 3),
924
+ horizontal = _ref2[0],
925
+ vertical = _ref2[1],
926
+ suffix = _ref2[2];
1009
927
  return {
1010
928
  horizontal: horizontal,
1011
929
  vertical: vertical,
@@ -1018,51 +936,45 @@ var isMessage = function isMessage(message) {
1018
936
  };
1019
937
 
1020
938
  var isIos = function isIos() {
1021
- return ['iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod'].includes(navigator.platform) || // iPad on iOS 13 detection
939
+ return ['iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod'].includes(navigator.platform) ||
940
+ // iPad on iOS 13 detection
1022
941
  navigator.userAgent.includes('Mac') && 'ontouchend' in document;
1023
942
  };
1024
943
 
1025
944
  var isImageFilled = function isImageFilled(image) {
1026
945
  var _ref = image || {},
1027
- _ref$media = _ref.media,
1028
- media = _ref$media === void 0 ? null : _ref$media;
1029
-
946
+ _ref$media = _ref.media,
947
+ media = _ref$media === void 0 ? null : _ref$media;
1030
948
  return media !== null;
1031
949
  };
1032
950
 
1033
951
  var isTextFilled$1 = function isTextFilled(text) {
1034
952
  var _ref = text || {},
1035
- _ref$label = _ref.label,
1036
- label = _ref$label === void 0 ? null : _ref$label;
1037
-
953
+ _ref$label = _ref.label,
954
+ label = _ref$label === void 0 ? null : _ref$label;
1038
955
  var _ref2 = label || {},
1039
- _ref2$length = _ref2.length,
1040
- length = _ref2$length === void 0 ? 0 : _ref2$length;
1041
-
956
+ _ref2$length = _ref2.length,
957
+ length = _ref2$length === void 0 ? 0 : _ref2$length;
1042
958
  return typeof length === 'number' && length > 0;
1043
959
  };
1044
960
 
1045
961
  var isTextFilled = function isTextFilled(text) {
1046
962
  var _ref = text || {},
1047
- _ref$body = _ref.body,
1048
- body = _ref$body === void 0 ? null : _ref$body;
1049
-
963
+ _ref$body = _ref.body,
964
+ body = _ref$body === void 0 ? null : _ref$body;
1050
965
  var _ref2 = body || {},
1051
- _ref2$length = _ref2.length,
1052
- length = _ref2$length === void 0 ? 0 : _ref2$length;
1053
-
966
+ _ref2$length = _ref2.length,
967
+ length = _ref2$length === void 0 ? 0 : _ref2$length;
1054
968
  return typeof length === 'number' && length > 0;
1055
969
  };
1056
970
 
1057
971
  var isValidUrl = function isValidUrl(string) {
1058
972
  var url;
1059
-
1060
973
  try {
1061
974
  url = new URL(string);
1062
975
  } catch (_) {
1063
976
  return false;
1064
977
  }
1065
-
1066
978
  return url.protocol === 'http:' || url.protocol === 'https:';
1067
979
  };
1068
980
 
@@ -1077,10 +989,10 @@ var schemaId = function schemaId(str) {
1077
989
  var setValue = function setValue(value, keyParts, fieldValue) {
1078
990
  var key = keyParts.shift();
1079
991
  var isArray = key.match(/^[0-9]+$/) !== null;
1080
-
1081
992
  if (value !== null || fieldValue !== null) {
1082
993
  if (isArray) {
1083
- var index = parseInt(key, 10); // TODO: fix this with an explicit delete
994
+ var index = parseInt(key, 10);
995
+ // TODO: fix this with an explicit delete
1084
996
  // instead on splicing out the element on null fieldValue
1085
997
  // const newArrayValue =
1086
998
  // fieldValue !== null
@@ -1100,23 +1012,19 @@ var setValue = function setValue(value, keyParts, fieldValue) {
1100
1012
  var newArrayValue = [].concat(_toConsumableArray__default["default"](value.slice(0, index)), [keyParts.length > 0 ? setValue(value !== null ? value[index] || null : null, keyParts, fieldValue) : fieldValue], _toConsumableArray__default["default"](value.slice(index + 1)));
1101
1013
  return newArrayValue.length > 0 ? newArrayValue : null;
1102
1014
  }
1103
-
1104
1015
  return _objectSpread__default["default"](_objectSpread__default["default"]({}, value), {}, _defineProperty__default["default"]({}, key, keyParts.length > 0 ? setValue(value !== null ? value[key] || null : null, keyParts, fieldValue) : fieldValue));
1105
1016
  }
1106
-
1107
1017
  return null;
1108
1018
  };
1109
1019
 
1110
1020
  var slug = function slug(str) {
1111
1021
  var separator = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
1112
1022
  var toSlug;
1113
-
1114
1023
  if (separator === '-') {
1115
1024
  toSlug = changeCase.paramCase(str);
1116
1025
  } else {
1117
1026
  toSlug = changeCase.snakeCase(str);
1118
1027
  }
1119
-
1120
1028
  return slugify__default["default"](toSlug, {
1121
1029
  lower: true
1122
1030
  });
@@ -1134,28 +1042,23 @@ var validateFields = function validateFields(fields, value) {
1134
1042
  if (field.type === 'fields' && field.fields) {
1135
1043
  return validateFields(field.fields, value);
1136
1044
  }
1137
-
1138
1045
  var val = value && value[field.name] ? value[field.name] : false;
1139
1046
  return !(field.required && !val);
1140
1047
  }
1141
-
1142
1048
  return acc;
1143
1049
  }, true);
1144
1050
  };
1145
1051
 
1146
1052
  var getContrastingColor = function getContrastingColor(backgroundColor) {
1147
1053
  var _ref = backgroundColor || {},
1148
- _ref$color = _ref.color,
1149
- color = _ref$color === void 0 ? 'white' : _ref$color;
1150
-
1054
+ _ref$color = _ref.color,
1055
+ color = _ref$color === void 0 ? 'white' : _ref$color;
1151
1056
  if (tinycolor__default["default"].equals(color, tinycolor__default["default"]('white'))) {
1152
1057
  return '#A13DFF';
1153
1058
  }
1154
-
1155
1059
  if (tinycolor__default["default"].equals(color, tinycolor__default["default"]('black'))) {
1156
1060
  return 'white';
1157
1061
  }
1158
-
1159
1062
  return tinycolor__default["default"](color).spin(30).toString();
1160
1063
  };
1161
1064