@micromag/core 0.3.181 → 0.3.186

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/components.js CHANGED
@@ -13,12 +13,11 @@ var reactIntl = require('react-intl');
13
13
  var utils = require('@micromag/core/utils');
14
14
  var reactFontawesome = require('@fortawesome/react-fontawesome');
15
15
  var faAngleLeft = require('@fortawesome/free-solid-svg-icons/faAngleLeft');
16
- var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
17
- require('snake-case');
18
16
  var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
19
17
  var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
20
18
  var contexts = require('@micromag/core/contexts');
21
19
  var hooks = require('@micromag/core/hooks');
20
+ var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
22
21
  var get = require('lodash/get');
23
22
  var ReactDOM = require('react-dom');
24
23
  var isArray = require('lodash/isArray');
@@ -29,6 +28,7 @@ var throttle = require('lodash/throttle');
29
28
  var isObject = require('lodash/isObject');
30
29
  var reactHelmet = require('react-helmet');
31
30
  var isString = require('lodash/isString');
31
+ require('snake-case');
32
32
  var faAd = require('@fortawesome/free-solid-svg-icons/faAd');
33
33
  var faImage = require('@fortawesome/free-solid-svg-icons/faImage');
34
34
  var faMusic = require('@fortawesome/free-solid-svg-icons/faMusic');
@@ -72,9 +72,9 @@ var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_obje
72
72
  var classNames__default = /*#__PURE__*/_interopDefaultLegacy(classNames);
73
73
  var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
74
74
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
75
- var _objectSpread__default = /*#__PURE__*/_interopDefaultLegacy(_objectSpread);
76
75
  var _toConsumableArray__default = /*#__PURE__*/_interopDefaultLegacy(_toConsumableArray);
77
76
  var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
77
+ var _objectSpread__default = /*#__PURE__*/_interopDefaultLegacy(_objectSpread);
78
78
  var get__default = /*#__PURE__*/_interopDefaultLegacy(get);
79
79
  var ReactDOM__default = /*#__PURE__*/_interopDefaultLegacy(ReactDOM);
80
80
  var isArray__default = /*#__PURE__*/_interopDefaultLegacy(isArray);
@@ -85,13 +85,13 @@ var isString__default = /*#__PURE__*/_interopDefaultLegacy(isString);
85
85
  var isNumber__default = /*#__PURE__*/_interopDefaultLegacy(isNumber);
86
86
 
87
87
  /* eslint-disable react/jsx-props-no-spreading */
88
- var propTypes$O = {
88
+ var propTypes$L = {
89
89
  children: core.PropTypes.label.isRequired,
90
90
  isHtml: PropTypes__default["default"].bool,
91
91
  values: PropTypes__default["default"].object // eslint-disable-line react/forbid-prop-types
92
92
 
93
93
  };
94
- var defaultProps$O = {
94
+ var defaultProps$L = {
95
95
  isHtml: false,
96
96
  values: {}
97
97
  };
@@ -106,13 +106,13 @@ var Label = function Label(_ref) {
106
106
  }, children)) : children;
107
107
  };
108
108
 
109
- Label.propTypes = propTypes$O;
110
- Label.defaultProps = defaultProps$O;
109
+ Label.propTypes = propTypes$L;
110
+ Label.defaultProps = defaultProps$L;
111
111
 
112
- var styles$y = {"container":"micromag-core-buttons-button-container","asLink":"micromag-core-buttons-button-asLink","withoutStyle":"micromag-core-buttons-button-withoutStyle","icon":"micromag-core-buttons-button-icon","label":"micromag-core-buttons-button-label","withIcon":"micromag-core-buttons-button-withIcon","right":"micromag-core-buttons-button-right","withAnimations":"micromag-core-buttons-button-withAnimations","icon-right":"micromag-core-buttons-button-icon-right","withIconColumns":"micromag-core-buttons-button-withIconColumns","linkDisabled":"micromag-core-buttons-button-linkDisabled"};
112
+ var styles$w = {"container":"micromag-core-buttons-button-container","asLink":"micromag-core-buttons-button-asLink","withoutStyle":"micromag-core-buttons-button-withoutStyle","icon":"micromag-core-buttons-button-icon","label":"micromag-core-buttons-button-label","withIcon":"micromag-core-buttons-button-withIcon","right":"micromag-core-buttons-button-right","withAnimations":"micromag-core-buttons-button-withAnimations","icon-right":"micromag-core-buttons-button-icon-right","withIconColumns":"micromag-core-buttons-button-withIconColumns","linkDisabled":"micromag-core-buttons-button-linkDisabled"};
113
113
 
114
- var _excluded$c = ["type", "theme", "size", "href", "external", "direct", "target", "label", "children", "focusable", "active", "icon", "iconPosition", "disabled", "loading", "disableOnLoading", "small", "big", "withShadow", "withoutStyle", "withoutBootstrapStyles", "withoutTheme", "withAnimations", "asLink", "outline", "onClick", "className", "iconClassName", "labelClassName", "refButton"];
115
- var propTypes$N = {
114
+ var _excluded$a = ["type", "theme", "size", "href", "external", "direct", "target", "label", "children", "focusable", "active", "icon", "iconPosition", "disabled", "loading", "disableOnLoading", "small", "big", "withShadow", "withoutStyle", "withoutBootstrapStyles", "withoutTheme", "asLink", "outline", "onClick", "className", "iconClassName", "labelClassName", "refButton"];
115
+ var propTypes$K = {
116
116
  type: PropTypes__default["default"].string,
117
117
  theme: core.PropTypes.buttonTheme,
118
118
  size: core.PropTypes.buttonSize,
@@ -135,7 +135,6 @@ var propTypes$N = {
135
135
  withoutStyle: PropTypes__default["default"].bool,
136
136
  withoutBootstrapStyles: PropTypes__default["default"].bool,
137
137
  withoutTheme: PropTypes__default["default"].bool,
138
- withAnimations: PropTypes__default["default"].bool,
139
138
  outline: PropTypes__default["default"].bool,
140
139
  asLink: PropTypes__default["default"].bool,
141
140
  className: PropTypes__default["default"].string,
@@ -147,7 +146,7 @@ var propTypes$N = {
147
146
 
148
147
  })])
149
148
  };
150
- var defaultProps$N = {
149
+ var defaultProps$K = {
151
150
  type: 'button',
152
151
  theme: null,
153
152
  size: null,
@@ -170,8 +169,6 @@ var defaultProps$N = {
170
169
  withoutStyle: false,
171
170
  withoutBootstrapStyles: false,
172
171
  withoutTheme: false,
173
- withAnimations: true,
174
- // @todo should be false by default, probably
175
172
  outline: false,
176
173
  asLink: false,
177
174
  className: null,
@@ -206,7 +203,6 @@ var Button$1 = function Button(_ref) {
206
203
  withoutStyle = _ref.withoutStyle,
207
204
  withoutBootstrapStyles = _ref.withoutBootstrapStyles,
208
205
  withoutTheme = _ref.withoutTheme,
209
- withAnimations = _ref.withAnimations,
210
206
  asLink = _ref.asLink,
211
207
  outline = _ref.outline,
212
208
  onClick = _ref.onClick,
@@ -214,7 +210,7 @@ var Button$1 = function Button(_ref) {
214
210
  iconClassName = _ref.iconClassName,
215
211
  labelClassName = _ref.labelClassName,
216
212
  refButton = _ref.refButton,
217
- props = _objectWithoutProperties__default["default"](_ref, _excluded$c);
213
+ props = _objectWithoutProperties__default["default"](_ref, _excluded$a);
218
214
 
219
215
  var finalLabel = label || children;
220
216
  var text = finalLabel !== null ? /*#__PURE__*/React__default["default"].createElement(Label, null, finalLabel) : null;
@@ -223,25 +219,25 @@ var Button$1 = function Button(_ref) {
223
219
  var hasInlineIcon = hasIcon && (iconPosition === 'inline' || text === null);
224
220
  var hasIconColumns = hasIcon && !hasInlineIcon;
225
221
  var content = /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, hasInlineIcon ? /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("span", {
226
- className: classNames__default["default"]([styles$y.icon, _defineProperty__default["default"]({}, iconClassName, iconClassName !== null)])
222
+ className: classNames__default["default"]([styles$w.icon, _defineProperty__default["default"]({}, iconClassName, iconClassName !== null)])
227
223
  }, icon), text !== null ? /*#__PURE__*/React__default["default"].createElement("span", {
228
- className: classNames__default["default"]([styles$y.label, _defineProperty__default["default"]({}, labelClassName, labelClassName !== null)])
224
+ className: classNames__default["default"]([styles$w.label, _defineProperty__default["default"]({}, labelClassName, labelClassName !== null)])
229
225
  }, text) : null) : null, hasIconColumns ? /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("span", {
230
- className: classNames__default["default"]([styles$y.icon, styles$y.left, _defineProperty__default["default"]({}, iconClassName, iconClassName !== null && iconPosition === 'left')])
226
+ className: classNames__default["default"]([styles$w.left, _defineProperty__default["default"]({}, iconClassName, iconClassName !== null && iconPosition === 'left')])
231
227
  }, iconPosition === 'left' ? icon : null), /*#__PURE__*/React__default["default"].createElement("span", {
232
- className: classNames__default["default"]([styles$y.center, styles$y.label, _defineProperty__default["default"]({}, labelClassName, labelClassName !== null)])
228
+ className: classNames__default["default"]([styles$w.center, _defineProperty__default["default"]({}, labelClassName, labelClassName !== null)])
233
229
  }, text), /*#__PURE__*/React__default["default"].createElement("span", {
234
- className: classNames__default["default"]([styles$y.icon, styles$y.right, _defineProperty__default["default"]({}, iconClassName, iconClassName !== null && iconPosition === 'right')])
230
+ className: classNames__default["default"]([styles$w.right, _defineProperty__default["default"]({}, iconClassName, iconClassName !== null && iconPosition === 'right')])
235
231
  }, iconPosition === 'right' ? icon : null), hasChildren ? children : null) : null, !hasIcon ? text : null, hasChildren ? children : null);
236
232
  var withStyle = !withoutTheme && !withoutStyle && !asLink;
237
233
  var buttonClassNames = classNames__default["default"]([!withoutBootstrapStyles ? (_ref7 = {
238
234
  btn: withStyle
239
- }, _defineProperty__default["default"](_ref7, "btn-".concat(outline ? 'outline-' : '').concat(theme), withStyle && theme !== null), _defineProperty__default["default"](_ref7, "btn-".concat(size), withStyle && size !== null), _defineProperty__default["default"](_ref7, "active", !withoutStyle && active), _ref7) : null, styles$y.container, styles$y["icon-".concat(iconPosition)], (_ref8 = {}, _defineProperty__default["default"](_ref8, styles$y.withoutStyle, withoutStyle), _defineProperty__default["default"](_ref8, styles$y.withIcon, hasIcon), _defineProperty__default["default"](_ref8, styles$y.withIconColumns, hasIconColumns), _defineProperty__default["default"](_ref8, styles$y.withText, text !== null), _defineProperty__default["default"](_ref8, styles$y.withShadow, withShadow), _defineProperty__default["default"](_ref8, styles$y.withAnimations, withAnimations), _defineProperty__default["default"](_ref8, styles$y.isSmall, small), _defineProperty__default["default"](_ref8, styles$y.isBig, big), _defineProperty__default["default"](_ref8, styles$y.isLink, href !== null), _defineProperty__default["default"](_ref8, styles$y.asLink, asLink), _defineProperty__default["default"](_ref8, styles$y.isDisabled, disabled), _defineProperty__default["default"](_ref8, styles$y.isLoading, loading), _defineProperty__default["default"](_ref8, className, className !== null), _ref8)]);
235
+ }, _defineProperty__default["default"](_ref7, "btn-".concat(outline ? 'outline-' : '').concat(theme), withStyle && theme !== null), _defineProperty__default["default"](_ref7, "btn-".concat(size), withStyle && size !== null), _defineProperty__default["default"](_ref7, "active", !withoutStyle && active), _ref7) : null, styles$w.container, (_ref8 = {}, _defineProperty__default["default"](_ref8, styles$w.withoutStyle, withoutStyle), _defineProperty__default["default"](_ref8, styles$w.withIcon, hasIcon), _defineProperty__default["default"](_ref8, styles$w.withIconColumns, hasIconColumns), _defineProperty__default["default"](_ref8, styles$w.withText, text !== null), _defineProperty__default["default"](_ref8, styles$w.withShadow, withShadow), _defineProperty__default["default"](_ref8, styles$w.isSmall, small), _defineProperty__default["default"](_ref8, styles$w.isBig, big), _defineProperty__default["default"](_ref8, styles$w.isLink, href !== null), _defineProperty__default["default"](_ref8, styles$w.asLink, asLink), _defineProperty__default["default"](_ref8, styles$w.isDisabled, disabled), _defineProperty__default["default"](_ref8, styles$w.isLoading, loading), _defineProperty__default["default"](_ref8, className, className !== null), _ref8)]);
240
236
 
241
237
  if (href !== null) {
242
238
  var linkClassNames = classNames__default["default"]([buttonClassNames, _defineProperty__default["default"]({
243
239
  disabled: disabled
244
- }, styles$y.linkDisabled, disabled)]);
240
+ }, styles$w.linkDisabled, disabled)]);
245
241
  return external || direct ? /*#__PURE__*/React__default["default"].createElement("a", Object.assign({}, props, {
246
242
  href: disabled ? null : href,
247
243
  className: linkClassNames,
@@ -249,13 +245,13 @@ var Button$1 = function Button(_ref) {
249
245
  target: external ? target : null,
250
246
  ref: refButton,
251
247
  tabIndex: focusable ? '' : '-1'
252
- }), content) : /*#__PURE__*/React__default["default"].createElement(reactRouterDom.Link, Object.assign({}, props, {
248
+ }), content) : /*#__PURE__*/React__default["default"].createElement(reactRouterDom.Link, {
253
249
  to: href,
254
250
  className: linkClassNames,
255
251
  onClick: onClick,
256
252
  ref: refButton,
257
253
  tabIndex: focusable ? '' : '-1'
258
- }), content);
254
+ }, content);
259
255
  }
260
256
 
261
257
  return /*#__PURE__*/React__default["default"].createElement("button", Object.assign({}, props, {
@@ -268,13 +264,13 @@ var Button$1 = function Button(_ref) {
268
264
  }), content);
269
265
  };
270
266
 
271
- Button$1.propTypes = propTypes$N;
272
- Button$1.defaultProps = defaultProps$N;
267
+ Button$1.propTypes = propTypes$K;
268
+ Button$1.defaultProps = defaultProps$K;
273
269
 
274
- var styles$x = {};
270
+ var styles$v = {};
275
271
 
276
- var _excluded$b = ["className", "onClick", "theme"];
277
- var propTypes$M = {
272
+ var _excluded$9 = ["className", "onClick", "theme"];
273
+ var propTypes$J = {
278
274
  buttons: core.PropTypes.buttons,
279
275
  size: core.PropTypes.buttonSize,
280
276
  theme: core.PropTypes.buttonTheme,
@@ -283,7 +279,7 @@ var propTypes$M = {
283
279
  className: PropTypes__default["default"].string,
284
280
  buttonClassName: PropTypes__default["default"].string
285
281
  };
286
- var defaultProps$M = {
282
+ var defaultProps$J = {
287
283
  buttons: [],
288
284
  size: null,
289
285
  theme: undefined,
@@ -302,7 +298,7 @@ var Buttons = function Buttons(_ref) {
302
298
  buttonClassName = _ref.buttonClassName,
303
299
  className = _ref.className;
304
300
  return /*#__PURE__*/React__default["default"].createElement("div", {
305
- className: classNames__default["default"](['btn-group', _defineProperty__default["default"]({}, "btn-group-".concat(size), size !== null), styles$x.container, _defineProperty__default["default"]({}, className, className !== null)]),
301
+ className: classNames__default["default"](['btn-group', _defineProperty__default["default"]({}, "btn-group-".concat(size), size !== null), styles$v.container, _defineProperty__default["default"]({}, className, className !== null)]),
306
302
  role: "group"
307
303
  }, buttons.map(function (button, index) {
308
304
  var _ref4;
@@ -313,11 +309,11 @@ var Buttons = function Buttons(_ref) {
313
309
  _onClick = _button$onClick === void 0 ? null : _button$onClick,
314
310
  _button$theme = button.theme,
315
311
  buttonTheme = _button$theme === void 0 ? null : _button$theme,
316
- buttonProps = _objectWithoutProperties__default["default"](button, _excluded$b);
312
+ buttonProps = _objectWithoutProperties__default["default"](button, _excluded$9);
317
313
 
318
314
  var fixedProps = {
319
315
  key: "button-".concat(index),
320
- className: classNames__default["default"]([styles$x.button, (_ref4 = {}, _defineProperty__default["default"](_ref4, buttonClassName, buttonClassName !== null), _defineProperty__default["default"](_ref4, customClassName, customClassName !== null), _ref4)]),
316
+ className: classNames__default["default"]([styles$v.button, (_ref4 = {}, _defineProperty__default["default"](_ref4, buttonClassName, buttonClassName !== null), _defineProperty__default["default"](_ref4, customClassName, customClassName !== null), _ref4)]),
321
317
  onClick: function onClick(e) {
322
318
  if (_onClick !== null) {
323
319
  _onClick(e, button, index);
@@ -333,20 +329,20 @@ var Buttons = function Buttons(_ref) {
333
329
  }));
334
330
  };
335
331
 
336
- Buttons.propTypes = propTypes$M;
337
- Buttons.defaultProps = defaultProps$M;
332
+ Buttons.propTypes = propTypes$J;
333
+ Buttons.defaultProps = defaultProps$J;
338
334
 
339
- var _excluded$a = ["className"];
340
- var propTypes$L = {
335
+ var _excluded$8 = ["className"];
336
+ var propTypes$I = {
341
337
  className: PropTypes__default["default"].string
342
338
  };
343
- var defaultProps$L = {
339
+ var defaultProps$I = {
344
340
  className: null
345
341
  };
346
342
 
347
343
  var BackButton = function BackButton(_ref) {
348
344
  var className = _ref.className,
349
- props = _objectWithoutProperties__default["default"](_ref, _excluded$a);
345
+ props = _objectWithoutProperties__default["default"](_ref, _excluded$8);
350
346
 
351
347
  return /*#__PURE__*/React__default["default"].createElement(Button$1, Object.assign({
352
348
  className: classNames__default["default"](['px-2', _defineProperty__default["default"]({}, className, className)]),
@@ -358,799 +354,112 @@ var BackButton = function BackButton(_ref) {
358
354
  }, props));
359
355
  };
360
356
 
361
- BackButton.propTypes = propTypes$L;
362
- BackButton.defaultProps = defaultProps$L;
357
+ BackButton.propTypes = propTypes$I;
358
+ BackButton.defaultProps = defaultProps$I;
363
359
 
364
- var styles$w = {"container":"micromag-core-buttons-icon-button-container","icon":"micromag-core-buttons-icon-button-icon","label":"micromag-core-buttons-icon-button-label"};
360
+ var styles$u = {"actions":"micromag-core-forms-form-actions","left":"micromag-core-forms-form-left","right":"micromag-core-forms-form-right"};
365
361
 
366
- var _excluded$9 = ["className", "onClick", "label", "icon", "theme"];
367
- var propTypes$K = {
362
+ var _excluded$7 = ["type"],
363
+ _excluded2 = ["component", "id", "settings"];
364
+ var propTypes$H = {
365
+ name: PropTypes__default["default"].string,
366
+ // .isRequired,
367
+ value: core.PropTypes.component,
368
+ form: PropTypes__default["default"].string,
369
+ formComponents: core.PropTypes.components,
370
+ fields: core.PropTypes.fields,
368
371
  className: PropTypes__default["default"].string,
369
- onClick: null,
370
- label: PropTypes__default["default"].node,
371
- icon: PropTypes__default["default"].node,
372
- theme: core.PropTypes.viewerTheme
372
+ onChange: PropTypes__default["default"].func,
373
+ gotoFieldForm: PropTypes__default["default"].func.isRequired,
374
+ closeFieldForm: PropTypes__default["default"].func.isRequired,
375
+ fieldContext: PropTypes__default["default"].any // eslint-disable-line react/forbid-prop-types
376
+
373
377
  };
374
- var defaultProps$K = {
378
+ var defaultProps$H = {
379
+ name: null,
380
+ form: null,
381
+ formComponents: {},
382
+ fields: [],
383
+ value: null,
375
384
  className: null,
376
- onClick: null,
377
- label: null,
378
- icon: null,
379
- theme: null
385
+ onChange: null,
386
+ fieldContext: null
380
387
  };
381
388
 
382
- var IconButton = function IconButton(_ref) {
383
- var className = _ref.className,
384
- onClick = _ref.onClick,
385
- label = _ref.label,
386
- icon = _ref.icon;
387
- _ref.theme;
388
- var props = _objectWithoutProperties__default["default"](_ref, _excluded$9);
389
+ var FieldForm = function FieldForm(_ref) {
390
+ var name = _ref.name,
391
+ value = _ref.value,
392
+ form = _ref.form,
393
+ formComponents = _ref.formComponents,
394
+ fields = _ref.fields,
395
+ className = _ref.className,
396
+ onChange = _ref.onChange,
397
+ gotoFieldForm = _ref.gotoFieldForm,
398
+ closeFieldForm = _ref.closeFieldForm,
399
+ fieldContext = _ref.fieldContext;
400
+ var fieldsManager = contexts.useFieldsManager();
401
+ var field = utils.getFieldFromPath(name.split('.'), fields, fieldsManager);
389
402
 
390
- return /*#__PURE__*/React__default["default"].createElement(Button$1, Object.assign({
391
- className: classNames__default["default"]([styles$w.container, _defineProperty__default["default"]({}, className, className !== null)]),
392
- labelClassName: styles$w.label,
393
- iconClassName: styles$w.icon,
394
- label: label,
395
- icon: icon,
396
- onClick: onClick,
397
- withoutBootstrapStyles: true
398
- }, props));
399
- };
403
+ var _ref2 = field || {},
404
+ _ref2$type = _ref2.type,
405
+ type = _ref2$type === void 0 ? null : _ref2$type,
406
+ fieldProps = _objectWithoutProperties__default["default"](_ref2, _excluded$7);
400
407
 
401
- IconButton.propTypes = propTypes$K;
402
- IconButton.defaultProps = defaultProps$K;
408
+ var fieldDefinition = fieldsManager.getDefinition(type) || null;
403
409
 
404
- /**
405
- * Core
406
- */
410
+ var fieldData = fieldDefinition || _objectSpread__default["default"]({}, field);
407
411
 
408
- PropTypes__default["default"].shape({
409
- listen: PropTypes__default["default"].func.isRequired,
410
- push: PropTypes__default["default"].func.isRequired
411
- });
412
- PropTypes__default["default"].shape({
413
- pathname: PropTypes__default["default"].string,
414
- search: PropTypes__default["default"].string
415
- });
416
- PropTypes__default["default"].shape({
417
- locale: PropTypes__default["default"].string.isRequired,
418
- formatMessage: PropTypes__default["default"].func.isRequired
419
- });
420
- var defaultMessageContent = PropTypes__default["default"].shape({
421
- type: PropTypes__default["default"].number,
422
- value: PropTypes__default["default"].string
423
- });
424
- var defaultMessage = PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].arrayOf(defaultMessageContent)]);
425
- var message = PropTypes__default["default"].shape({
426
- id: PropTypes__default["default"].string,
427
- defaultMessage: defaultMessage.isRequired,
428
- description: PropTypes__default["default"].string
429
- });
430
- var text = PropTypes__default["default"].oneOfType([message, PropTypes__default["default"].string]);
431
- var label = PropTypes__default["default"].oneOfType([message, PropTypes__default["default"].node]);
432
- PropTypes__default["default"].oneOf([401, 403, 404, 500]);
433
- PropTypes__default["default"].oneOfType([PropTypes__default["default"].shape({
434
- current: PropTypes__default["default"].any // eslint-disable-line react/forbid-prop-types
412
+ var _ref3 = fieldData || {},
413
+ _ref3$component = _ref3.component,
414
+ fieldComponent = _ref3$component === void 0 ? null : _ref3$component;
415
+ _ref3.id;
416
+ _ref3.settings;
417
+ var definitionProps = _objectWithoutProperties__default["default"](_ref3, _excluded2);
435
418
 
436
- }), PropTypes__default["default"].func]);
437
- var target = PropTypes__default["default"].oneOf(['_blank', '_self', '_parent']);
438
- var interaction = PropTypes__default["default"].oneOf(['tap', 'swipe']);
439
- PropTypes__default["default"].arrayOf(interaction);
440
- PropTypes__default["default"].objectOf(PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].number, PropTypes__default["default"].array]));
441
- PropTypes__default["default"].shape({
442
- currentTime: PropTypes__default["default"].number,
443
- duration: PropTypes__default["default"].number
444
- });
445
- /**
446
- * Site
447
- */
419
+ var FieldComponent = contexts.useFieldComponent(fieldComponent);
420
+ var FormComponent = utils.getComponentFromName(form, formComponents);
421
+ var fieldValue = get__default["default"](value, name, null);
448
422
 
449
- PropTypes__default["default"].shape({
450
- id: PropTypes__default["default"].number,
451
- firstname: PropTypes__default["default"].string,
452
- lastname: PropTypes__default["default"].string,
453
- email: PropTypes__default["default"].string,
454
- gender: PropTypes__default["default"].string,
455
- birthdate: PropTypes__default["default"].string
456
- });
457
- var menuItem = PropTypes__default["default"].shape({
458
- id: PropTypes__default["default"].oneOfType([PropTypes__default["default"].number, PropTypes__default["default"].string]),
459
- label: label,
460
- url: PropTypes__default["default"].string,
461
- external: PropTypes__default["default"].bool,
462
- active: PropTypes__default["default"].bool
463
- });
464
- PropTypes__default["default"].arrayOf(menuItem);
465
- var breadcrumb = PropTypes__default["default"].shape({
466
- label: label,
467
- url: PropTypes__default["default"].string
468
- });
469
- PropTypes__default["default"].arrayOf(breadcrumb);
470
- var device = PropTypes__default["default"].shape({
471
- id: PropTypes__default["default"].string.isRequired
472
- });
473
- PropTypes__default["default"].arrayOf(device);
474
- var modal = PropTypes__default["default"].shape({
475
- id: PropTypes__default["default"].string.isRequired
476
- });
477
- PropTypes__default["default"].arrayOf(modal);
478
- var panel = PropTypes__default["default"].shape({
479
- id: PropTypes__default["default"].string.isRequired
480
- });
481
- PropTypes__default["default"].arrayOf(panel);
482
- var button = PropTypes__default["default"].shape({
483
- label: label,
484
- onClick: PropTypes__default["default"].func
485
- });
486
- PropTypes__default["default"].arrayOf(button);
487
- var bootstrapThemeStrings = ['primary', 'secondary', 'success', 'danger', 'warning', 'info', 'light', 'dark'];
488
- PropTypes__default["default"].oneOf(bootstrapThemeStrings);
489
- PropTypes__default["default"].oneOf([].concat(bootstrapThemeStrings, ['outline-primary', 'outline-secondary', 'outline-success', 'outline-danger', 'outline-warning', 'outline-info', 'outline-light', 'outline-dark', 'outline-link', null]));
490
- PropTypes__default["default"].oneOf(['lg', 'sm', null]);
491
- PropTypes__default["default"].oneOf(['lg', 'sm', null]);
492
- PropTypes__default["default"].oneOf(['start', 'end']);
493
- var component = PropTypes__default["default"].oneOfType([PropTypes__default["default"].object, PropTypes__default["default"].func]);
494
- PropTypes__default["default"].objectOf(component);
495
- /**
496
- * Forms
497
- */
423
+ var onFieldChange = function onFieldChange(newFieldValue) {
424
+ // const { name, fields: subFields = null } = field || {};
425
+ var newValue = utils.setFieldValue(value, name.split('.'), newFieldValue // field === null || subFields !== null ? newFieldValue : newFieldValue[name],
426
+ );
498
427
 
499
- var errors = PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].arrayOf(PropTypes__default["default"].string)]);
500
- PropTypes__default["default"].objectOf(errors);
501
- var selectOption = PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].shape({
502
- value: PropTypes__default["default"].any,
503
- // eslint-disable-line
504
- label: label
505
- })]);
506
- PropTypes__default["default"].arrayOf(selectOption);
507
- var formField = PropTypes__default["default"].shape({
508
- name: PropTypes__default["default"].string,
509
- component: component
510
- });
511
- PropTypes__default["default"].arrayOf(formField);
512
- /**
513
- * Medias
514
- */
428
+ if (onChange !== null) {
429
+ onChange(newValue);
430
+ }
431
+ };
515
432
 
516
- var mediaMetadataShape = {
517
- filename: PropTypes__default["default"].string,
518
- size: PropTypes__default["default"].number,
519
- mime: PropTypes__default["default"].string
520
- };
521
- var mediaFile = PropTypes__default["default"].shape({
522
- id: PropTypes__default["default"].string,
523
- handle: PropTypes__default["default"].string,
524
- type: PropTypes__default["default"].string,
525
- mime: PropTypes__default["default"].string,
526
- url: PropTypes__default["default"].string
527
- });
528
- var mediaShape = {
529
- id: PropTypes__default["default"].string,
530
- type: PropTypes__default["default"].string.isRequired,
531
- url: PropTypes__default["default"].string,
532
- // .isRequired,
533
- thumbnail_url: PropTypes__default["default"].string,
534
- name: PropTypes__default["default"].string,
535
- metadata: PropTypes__default["default"].shape(_objectSpread__default["default"]({}, mediaMetadataShape)),
536
- files: PropTypes__default["default"].objectOf(mediaFile)
537
- };
538
- var media = PropTypes__default["default"].shape(mediaShape);
539
- PropTypes__default["default"].arrayOf(media);
540
- PropTypes__default["default"].oneOf(['image', 'video', 'audio', 'closed-captions', 'font']);
541
- var imageMedia = PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, mediaShape), {}, {
542
- type: PropTypes__default["default"].oneOf(['image', 'video']),
543
- metadata: PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, mediaMetadataShape), {}, {
544
- width: PropTypes__default["default"].number,
545
- height: PropTypes__default["default"].number
546
- }))
547
- }));
548
- PropTypes__default["default"].arrayOf(imageMedia);
549
- var fontMedia = PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, mediaShape), {}, {
550
- type: PropTypes__default["default"].oneOf(['font']),
551
- metadata: PropTypes__default["default"].shape(_objectSpread__default["default"]({}, mediaMetadataShape))
552
- }));
553
- PropTypes__default["default"].arrayOf(fontMedia);
554
- var videoMedia = PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, mediaShape), {}, {
555
- type: PropTypes__default["default"].oneOf(['video']),
556
- metadata: PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, mediaMetadataShape), {}, {
557
- width: PropTypes__default["default"].number,
558
- height: PropTypes__default["default"].number,
559
- duration: PropTypes__default["default"].number
560
- }))
561
- }));
562
- PropTypes__default["default"].arrayOf(videoMedia);
563
- var audioMedia = PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, mediaShape), {}, {
564
- type: PropTypes__default["default"].oneOf(['audio']),
565
- metadata: PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, mediaMetadataShape), {}, {
566
- duration: PropTypes__default["default"].number
567
- }))
568
- }));
569
- PropTypes__default["default"].arrayOf(audioMedia);
570
- var closedCaptionsMedia = PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, mediaShape), {}, {
571
- type: PropTypes__default["default"].oneOf(['closed-captions'])
572
- }));
573
- /**
574
- * Style
575
- */
576
-
577
- var font = PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].shape({
578
- type: PropTypes__default["default"].oneOf(['system', 'google', 'custom']),
579
- name: PropTypes__default["default"].string,
580
- media: fontMedia
581
- })]);
582
- PropTypes__default["default"].arrayOf(font);
583
- var textAlign = PropTypes__default["default"].oneOf(['left', 'right', 'center']);
584
- var color = PropTypes__default["default"].shape({
585
- color: PropTypes__default["default"].string,
586
- alpha: PropTypes__default["default"].number
587
- });
588
- var textStyle = PropTypes__default["default"].shape({
589
- fontFamily: font,
590
- fontSize: PropTypes__default["default"].number,
591
- fontStyle: PropTypes__default["default"].shape({
592
- bold: PropTypes__default["default"].bool,
593
- italic: PropTypes__default["default"].bool,
594
- underline: PropTypes__default["default"].bool,
595
- upperCase: PropTypes__default["default"].bool
596
- }),
597
- align: textAlign,
598
- color: color,
599
- letterSpacing: PropTypes__default["default"].number,
600
- lineHeight: PropTypes__default["default"].number
601
- });
602
- var borderTypes = PropTypes__default["default"].oneOf(['dotted', 'dashed', 'solid', 'double', 'groove', 'ridge', 'inset', 'outset', 'hidden']);
603
- var shadowType = PropTypes__default["default"].shape({
604
- shadowDistance: PropTypes__default["default"].number,
605
- shadowBlur: PropTypes__default["default"].number,
606
- shadowColor: color
607
- });
608
- PropTypes__default["default"].shape({
609
- width: PropTypes__default["default"].number,
610
- style: borderTypes,
611
- radius: PropTypes__default["default"].number,
612
- color: color
613
- });
614
- var boxStyle = PropTypes__default["default"].shape({
615
- backgroundColor: color,
616
- borderRadius: PropTypes__default["default"].number,
617
- borderWidth: PropTypes__default["default"].number,
618
- borderColor: color,
619
- borderStyle: borderTypes,
620
- shadow: shadowType
621
- });
622
- PropTypes__default["default"].shape({
623
- top: PropTypes__default["default"].number,
624
- bottom: PropTypes__default["default"].number
625
- });
626
- PropTypes__default["default"].arrayOf(PropTypes__default["default"].shape({
627
- rows: PropTypes__default["default"].oneOfType([PropTypes__default["default"].number, PropTypes__default["default"].arrayOf(PropTypes__default["default"].number)]),
628
- columns: PropTypes__default["default"].oneOfType([PropTypes__default["default"].number, PropTypes__default["default"].arrayOf(PropTypes__default["default"].number)])
629
- }));
630
- var objectFitSize = PropTypes__default["default"].oneOf(['cover', 'contain', null]);
631
- PropTypes__default["default"].shape({
632
- fit: objectFitSize,
633
- horizontalPosition: PropTypes__default["default"].oneOf(['left', 'center', 'right']),
634
- verticalPosition: PropTypes__default["default"].oneOf(['top', 'center', 'bottom'])
635
- });
636
- /**
637
- * Elements
638
- */
639
-
640
- var textElement = PropTypes__default["default"].shape({
641
- body: PropTypes__default["default"].string,
642
- textStyle: textStyle
643
- });
644
- var headingElement = textElement;
645
- PropTypes__default["default"].shape({
646
- label: PropTypes__default["default"].string,
647
- textStyle: textStyle
648
- });
649
- var imageElement = PropTypes__default["default"].shape({
650
- media: imageMedia
651
- });
652
- PropTypes__default["default"].arrayOf(imageElement);
653
- PropTypes__default["default"].shape({
654
- media: videoMedia,
655
- autoPlay: PropTypes__default["default"].bool,
656
- loop: PropTypes__default["default"].bool,
657
- closedCaptions: closedCaptionsMedia,
658
- withSeekBar: PropTypes__default["default"].bool,
659
- withControls: PropTypes__default["default"].bool
660
- });
661
- var visualElement = PropTypes__default["default"].shape({
662
- media: imageMedia
663
- });
664
- PropTypes__default["default"].arrayOf(visualElement);
665
- PropTypes__default["default"].shape({
666
- media: audioMedia,
667
- autoPlay: PropTypes__default["default"].bool,
668
- loop: PropTypes__default["default"].bool,
669
- closedCaptions: closedCaptionsMedia,
670
- withPlayPause: PropTypes__default["default"].bool
671
- });
672
- PropTypes__default["default"].shape({
673
- media: closedCaptionsMedia
674
- });
675
- var backgroundElement = PropTypes__default["default"].shape({
676
- color: color,
677
- image: imageMedia,
678
- video: videoMedia
679
- });
680
- var imageElementWithCaption = PropTypes__default["default"].shape({
681
- image: imageMedia,
682
- caption: textElement
683
- });
684
- PropTypes__default["default"].arrayOf(imageElementWithCaption);
685
- var stackDirection = PropTypes__default["default"].oneOf(['horizontal', 'vertical']);
686
- var stackAlign = PropTypes__default["default"].oneOf(['start', 'center', 'end']);
687
- var stackSpacing = PropTypes__default["default"].oneOfType([PropTypes__default["default"].number, PropTypes__default["default"].oneOf(['between', 'evenly', 'around'])]);
688
- PropTypes__default["default"].shape({
689
- direction: stackDirection,
690
- align: stackAlign,
691
- width: PropTypes__default["default"].number,
692
- height: PropTypes__default["default"].number,
693
- spacing: stackSpacing,
694
- reverse: PropTypes__default["default"].bool
695
- });
696
- PropTypes__default["default"].shape({
697
- layout: PropTypes__default["default"].arrayOf(PropTypes__default["default"].string),
698
- spacing: PropTypes__default["default"].number
699
- });
700
- var geoPosition = PropTypes__default["default"].shape({
701
- lat: PropTypes__default["default"].number,
702
- lng: PropTypes__default["default"].number
703
- });
704
- var markerShape = {
705
- id: PropTypes__default["default"].number,
706
- geoPosition: geoPosition,
707
- title: headingElement,
708
- subtitle: headingElement,
709
- description: textElement
710
- };
711
- var marker = PropTypes__default["default"].shape(_objectSpread__default["default"]({}, markerShape));
712
- PropTypes__default["default"].arrayOf(marker);
713
- var markerWithImage = PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, markerShape), {}, {
714
- image: imageMedia
715
- }));
716
- PropTypes__default["default"].arrayOf(markerWithImage);
717
- var answerShape = {
718
- id: PropTypes__default["default"].string,
719
- label: textElement
720
- };
721
- var answer = PropTypes__default["default"].shape(_objectSpread__default["default"]({}, answerShape));
722
- var quizAnswer = PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, answerShape), {}, {
723
- good: PropTypes__default["default"].bool
724
- }));
725
- PropTypes__default["default"].arrayOf(answer);
726
- PropTypes__default["default"].arrayOf(quizAnswer);
727
- var callToActionTypes = PropTypes__default["default"].oneOf(['swipe-up', 'button']);
728
- PropTypes__default["default"].shape({
729
- active: PropTypes__default["default"].bool,
730
- type: callToActionTypes,
731
- url: PropTypes__default["default"].string,
732
- label: textElement,
733
- buttonStyle: boxStyle
734
- });
735
- var speaker = PropTypes__default["default"].shape({
736
- id: PropTypes__default["default"].string,
737
- name: PropTypes__default["default"].string,
738
- avatar: imageMedia,
739
- side: PropTypes__default["default"].oneOf(['left', 'right']),
740
- color: color
741
- });
742
- var speakers = PropTypes__default["default"].arrayOf(speaker);
743
- var conversationMessage = PropTypes__default["default"].shape({
744
- speaker: PropTypes__default["default"].string,
745
- message: PropTypes__default["default"].string,
746
- image: imageMedia
747
- });
748
- var conversationMessages = PropTypes__default["default"].arrayOf(conversationMessage);
749
- PropTypes__default["default"].shape({
750
- speakers: speakers,
751
- textStyle: textStyle,
752
- messages: conversationMessages
753
- });
754
- /**
755
- * Definitions
756
- */
757
-
758
- var fieldShape = {
759
- name: PropTypes__default["default"].string,
760
- type: PropTypes__default["default"].string.isRequired,
761
- label: text
762
- };
763
- var field = PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, fieldShape), {}, {
764
- isSection: PropTypes__default["default"].bool,
765
- fields: PropTypes__default["default"].arrayOf(PropTypes__default["default"].shape(fieldShape))
766
- }));
767
- var fields = PropTypes__default["default"].arrayOf(field);
768
- var screenDefinition = PropTypes__default["default"].shape({
769
- id: PropTypes__default["default"].string.isRequired,
770
- type: PropTypes__default["default"].oneOf(['screen']).isRequired,
771
- title: text.isRequired,
772
- layouts: PropTypes__default["default"].arrayOf(PropTypes__default["default"].string),
773
- fields: fields
774
- });
775
- PropTypes__default["default"].arrayOf(screenDefinition);
776
- var fieldDefinition = PropTypes__default["default"].shape({
777
- id: PropTypes__default["default"].string.isRequired,
778
- type: PropTypes__default["default"].oneOf(['field']).isRequired,
779
- title: text.isRequired,
780
- fields: fields
781
- });
782
- PropTypes__default["default"].arrayOf(fieldDefinition);
783
- /**
784
- * Components
785
- */
786
-
787
- var storyComponentShape = {
788
- type: PropTypes__default["default"].string.isRequired
789
- };
790
- var storyComponent = PropTypes__default["default"].shape(_objectSpread__default["default"]({}, storyComponentShape));
791
- PropTypes__default["default"].arrayOf(storyComponent);
792
- var screenComponent = PropTypes__default["default"].shape(_objectSpread__default["default"]({}, storyComponentShape));
793
- var screenComponents = PropTypes__default["default"].arrayOf(screenComponent);
794
-
795
- /**
796
- * Theme
797
- */
798
-
799
- var theme = PropTypes__default["default"].shape({
800
- id: PropTypes__default["default"].string,
801
- textStyles: PropTypes__default["default"].objectOf(textStyle),
802
- // renamed to textstyles
803
- background: backgroundElement,
804
- colors: PropTypes__default["default"].objectOf(color),
805
- components: screenComponents
806
- });
807
- var viewerTheme = PropTypes__default["default"].shape(_objectSpread__default["default"]({
808
- logo: imageMedia
809
- }, theme));
810
- /**
811
- * Branding
812
- */
813
- // export const branding = PropTypes.shape({
814
- // logo: imageMedia,
815
- // primaryColor: color,
816
- // secondaryColor: color,
817
- // backgroundColor: color,
818
- // textStyle,
819
- // });
820
-
821
- /**
822
- * Metadata
823
- */
824
-
825
- var metadata = PropTypes__default["default"].shape({
826
- description: PropTypes__default["default"].string,
827
- shareUrl: PropTypes__default["default"].string,
828
- shareImage: imageMedia,
829
- favIcon: imageMedia
830
- });
831
- /**
832
- * Story
833
- */
834
-
835
- PropTypes__default["default"].shape({
836
- id: PropTypes__default["default"].string,
837
- theme: theme,
838
- components: screenComponents,
839
- metadata: metadata
840
- });
841
- /**
842
- * Render
843
- */
844
-
845
- var deviceScreen = PropTypes__default["default"].shape({
846
- name: PropTypes__default["default"].string.isRequired,
847
- mediaQuery: PropTypes__default["default"].string
848
- });
849
- PropTypes__default["default"].arrayOf(deviceScreen);
850
- PropTypes__default["default"].shape({
851
- screen: PropTypes__default["default"].string,
852
- screens: PropTypes__default["default"].arrayOf(PropTypes__default["default"].string),
853
- width: PropTypes__default["default"].number,
854
- height: PropTypes__default["default"].number,
855
- landscape: PropTypes__default["default"].bool
856
- });
857
- PropTypes__default["default"].oneOf(['view', 'placeholder', 'edit', 'preview', 'static', 'capture']);
858
- /**
859
- * Screens
860
- */
861
-
862
- PropTypes__default["default"].shape({
863
- width: PropTypes__default["default"].number,
864
- height: PropTypes__default["default"].number
865
- });
866
- PropTypes__default["default"].shape({
867
- width: PropTypes__default["default"].number,
868
- height: PropTypes__default["default"].number,
869
- url: PropTypes__default["default"].string,
870
- target: target,
871
- iframe: PropTypes__default["default"].string,
872
- image: imageMedia
873
- });
874
- PropTypes__default["default"].shape({
875
- src: PropTypes__default["default"].string,
876
- track: PropTypes__default["default"].string,
877
- trackLng: PropTypes__default["default"].number,
878
- controls: PropTypes__default["default"].bool
879
- });
880
- var slide = PropTypes__default["default"].shape({
881
- image: imageMedia,
882
- text: PropTypes__default["default"].string
883
- });
884
- PropTypes__default["default"].arrayOf(slide); // export const imageStyle = PropTypes.shape({
885
- // alt: PropTypes.string,
886
- // fit: PropTypes.object,
887
- // });
888
-
889
- PropTypes__default["default"].shape({});
890
- /**
891
- * Transitions
892
- */
893
-
894
- var transitionName = PropTypes__default["default"].oneOf(['fade', 'scale', 'slide']);
895
- var transitionParams = {
896
- duration: PropTypes__default["default"].number,
897
- easing: PropTypes__default["default"].oneOf(['ease', 'ease-in', 'ease-out', 'ease-in-out', 'linear'])
898
- };
899
- var transition = PropTypes__default["default"].oneOfType([transitionName.isRequired, PropTypes__default["default"].shape(_objectSpread__default["default"]({
900
- name: transitionName.isRequired
901
- }, transitionParams))]);
902
- PropTypes__default["default"].shape({
903
- "in": transition,
904
- out: transition
905
- });
906
- /**
907
- * Search
908
- */
909
-
910
- var searchFilter = PropTypes__default["default"].shape({
911
- type: PropTypes__default["default"].string,
912
- value: PropTypes__default["default"].oneOf([PropTypes__default["default"].string, PropTypes__default["default"].number])
913
- });
914
- PropTypes__default["default"].arrayOf(searchFilter);
915
- /**
916
- * Payments
917
- */
918
-
919
- var paymentItem = PropTypes__default["default"].shape({
920
- id: PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].number]),
921
- date: PropTypes__default["default"].string,
922
- type: PropTypes__default["default"].string,
923
- invoice_link: PropTypes__default["default"].string,
924
- amount: PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].number])
925
- });
926
- PropTypes__default["default"].arrayOf(paymentItem);
927
- /**
928
- * Page Metadada
929
- */
930
-
931
- var pageMetadata = PropTypes__default["default"].shape({
932
- canonical: PropTypes__default["default"].string,
933
- description: PropTypes__default["default"].string,
934
- keywords: PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].array]),
935
- image: PropTypes__default["default"].shape({
936
- url: PropTypes__default["default"].string
937
- }),
938
- favicon: PropTypes__default["default"].shape({
939
- url: PropTypes__default["default"].string
940
- }),
941
- rssUrl: PropTypes__default["default"].string,
942
- atomUrl: PropTypes__default["default"].string,
943
- microformats: PropTypes__default["default"].arrayOf(PropTypes__default["default"].shape({}))
944
- });
945
- PropTypes__default["default"].shape({
946
- name: textElement,
947
- avatar: PropTypes__default["default"].shape({
948
- url: PropTypes__default["default"].string
949
- })
950
- });
951
- PropTypes__default["default"].shape({
952
- id: PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].number]),
953
- name: PropTypes__default["default"].string
954
- });
955
-
956
- var _excluded$8 = ["className", "onClick", "theme"];
957
- var propTypes$J = {
958
- className: PropTypes__default["default"].string,
959
- onClick: PropTypes__default["default"].func,
960
- theme: viewerTheme
961
- };
962
- var defaultProps$J = {
963
- className: null,
964
- onClick: null,
965
- theme: null
966
- };
967
-
968
- var CloseButton = function CloseButton(_ref) {
969
- var className = _ref.className,
970
- onClick = _ref.onClick;
971
- _ref.theme;
972
- var props = _objectWithoutProperties__default["default"](_ref, _excluded$8);
973
-
974
- var intl = reactIntl.useIntl();
975
- return /*#__PURE__*/React__default["default"].createElement(IconButton, Object.assign({
976
- className: classNames__default["default"]([_defineProperty__default["default"]({}, className, className !== null)]),
977
- label: intl.formatMessage({
978
- id: "dj/p/q",
979
- defaultMessage: [{
980
- "type": 0,
981
- "value": "Close"
982
- }]
983
- }),
984
- icon: /*#__PURE__*/React__default["default"].createElement("svg", {
985
- xmlns: "http://www.w3.org/2000/svg",
986
- width: "10",
987
- height: "16",
988
- viewBox: "0 0 10 16",
989
- fill: "currentColor"
990
- }, /*#__PURE__*/React__default["default"].createElement("polygon", {
991
- points: "9.95 4.11 8.89 3.05 5 6.94 1.11 3.05 0.05 4.11 3.94 8 0.05 11.89 1.11 12.95 5 9.06 8.89 12.95 9.95 11.89 6.06 8 9.95 4.11"
992
- })),
993
- onClick: onClick
994
- }, props));
995
- };
996
-
997
- CloseButton.propTypes = propTypes$J;
998
- CloseButton.defaultProps = defaultProps$J;
999
-
1000
- var styles$v = {"container":"micromag-core-buttons-sliding-buttons-container","additional":"micromag-core-buttons-sliding-buttons-additional"};
1001
-
1002
- var propTypes$I = {
1003
- className: PropTypes__default["default"].string,
1004
- current: PropTypes__default["default"].number,
1005
- buttons: PropTypes__default["default"].arrayOf(PropTypes__default["default"].node),
1006
- buttonsProps: PropTypes__default["default"].arrayOf(PropTypes__default["default"].objectOf(PropTypes__default["default"].any)) // eslint-disable-line
1007
-
1008
- };
1009
- var defaultProps$I = {
1010
- className: null,
1011
- current: 0,
1012
- buttons: null,
1013
- buttonsProps: null
1014
- };
1015
-
1016
- var SlidingButtons = function SlidingButtons(_ref) {
1017
- var className = _ref.className,
1018
- current = _ref.current,
1019
- buttons = _ref.buttons,
1020
- buttonsProps = _ref.buttonsProps;
1021
- if (buttons === null) return false;
1022
-
1023
- var getSlidingButtonStyles = function getSlidingButtonStyles(p, i) {
1024
- var t = i - p;
1025
- return {
1026
- transform: "translateY(".concat(t * -100, "%)")
1027
- };
1028
- };
1029
-
1030
- return /*#__PURE__*/React__default["default"].createElement("div", {
1031
- className: classNames__default["default"]([styles$v.container, _defineProperty__default["default"]({}, className, className !== null)])
1032
- }, buttons.map(function (b, i) {
1033
- var SlidingButton = b;
1034
- var buttonProps = buttonsProps[i] || {};
1035
- var extraProps = buttonsProps !== null ? buttonProps : null;
1036
-
1037
- var _ref3 = extraProps || {},
1038
- _ref3$className = _ref3.className,
1039
- extraClassNames = _ref3$className === void 0 ? null : _ref3$className;
1040
-
1041
- return /*#__PURE__*/React__default["default"].createElement(SlidingButton, Object.assign({}, extraProps, {
1042
- className: classNames__default["default"]([styles$v.icon, extraClassNames, _defineProperty__default["default"]({}, styles$v.additional, i > 0)]),
1043
- style: getSlidingButtonStyles(current, i)
1044
- }));
1045
- }));
1046
- };
1047
-
1048
- SlidingButtons.propTypes = propTypes$I;
1049
- SlidingButtons.defaultProps = defaultProps$I;
1050
-
1051
- var styles$u = {"actions":"micromag-core-forms-form-actions","left":"micromag-core-forms-form-left","right":"micromag-core-forms-form-right"};
1052
-
1053
- var _excluded$7 = ["type"],
1054
- _excluded2 = ["component", "id", "settings"];
1055
- var propTypes$H = {
1056
- name: PropTypes__default["default"].string,
1057
- // .isRequired,
1058
- value: core.PropTypes.component,
1059
- form: PropTypes__default["default"].string,
1060
- formComponents: core.PropTypes.components,
1061
- fields: core.PropTypes.fields,
1062
- className: PropTypes__default["default"].string,
1063
- onChange: PropTypes__default["default"].func,
1064
- gotoFieldForm: PropTypes__default["default"].func.isRequired,
1065
- closeFieldForm: PropTypes__default["default"].func.isRequired,
1066
- fieldContext: PropTypes__default["default"].any // eslint-disable-line react/forbid-prop-types
1067
-
1068
- };
1069
- var defaultProps$H = {
1070
- name: null,
1071
- form: null,
1072
- formComponents: {},
1073
- fields: [],
1074
- value: null,
1075
- className: null,
1076
- onChange: null,
1077
- fieldContext: null
1078
- };
1079
-
1080
- var FieldForm = function FieldForm(_ref) {
1081
- var name = _ref.name,
1082
- value = _ref.value,
1083
- form = _ref.form,
1084
- formComponents = _ref.formComponents,
1085
- fields = _ref.fields,
1086
- className = _ref.className,
1087
- onChange = _ref.onChange,
1088
- gotoFieldForm = _ref.gotoFieldForm,
1089
- closeFieldForm = _ref.closeFieldForm,
1090
- fieldContext = _ref.fieldContext;
1091
- var fieldsManager = contexts.useFieldsManager();
1092
- var field = utils.getFieldFromPath(name.split('.'), fields, fieldsManager);
1093
-
1094
- var _ref2 = field || {},
1095
- _ref2$type = _ref2.type,
1096
- type = _ref2$type === void 0 ? null : _ref2$type,
1097
- fieldProps = _objectWithoutProperties__default["default"](_ref2, _excluded$7);
1098
-
1099
- var fieldDefinition = fieldsManager.getDefinition(type) || null;
1100
-
1101
- var fieldData = fieldDefinition || _objectSpread__default["default"]({}, field);
1102
-
1103
- var _ref3 = fieldData || {},
1104
- _ref3$component = _ref3.component,
1105
- fieldComponent = _ref3$component === void 0 ? null : _ref3$component;
1106
- _ref3.id;
1107
- _ref3.settings;
1108
- var definitionProps = _objectWithoutProperties__default["default"](_ref3, _excluded2);
1109
-
1110
- var FieldComponent = contexts.useFieldComponent(fieldComponent);
1111
- var FormComponent = utils.getComponentFromName(form, formComponents);
1112
- var fieldValue = get__default["default"](value, name, null);
1113
-
1114
- var onFieldChange = function onFieldChange(newFieldValue) {
1115
- // const { name, fields: subFields = null } = field || {};
1116
- var newValue = utils.setFieldValue(value, name.split('.'), newFieldValue // field === null || subFields !== null ? newFieldValue : newFieldValue[name],
1117
- );
1118
-
1119
- if (onChange !== null) {
1120
- onChange(newValue);
1121
- }
1122
- };
1123
-
1124
- var closeForm = React.useCallback(function () {
1125
- return closeFieldForm(name, form);
1126
- }, [name, form, closeFieldForm]);
1127
- var formProps = {
1128
- name: name,
1129
- value: fieldValue,
1130
- onChange: onFieldChange,
1131
- gotoFieldForm: gotoFieldForm,
1132
- closeFieldForm: closeFieldForm,
1133
- closeForm: closeForm
1134
- };
1135
-
1136
- if (form !== null) {
1137
- return FormComponent !== null ? /*#__PURE__*/React__default["default"].createElement(contexts.FieldContextProvider, {
1138
- context: fieldContext
1139
- }, /*#__PURE__*/React__default["default"].createElement(FormComponent, Object.assign({
1140
- field: field
1141
- }, formProps, {
1142
- className: className
1143
- }))) : null;
1144
- } // Use field component with isForm props
1145
-
1146
-
1147
- return FieldComponent !== null ? /*#__PURE__*/React__default["default"].createElement(contexts.FieldContextProvider, {
1148
- context: fieldContext
1149
- }, /*#__PURE__*/React__default["default"].createElement(FieldComponent, Object.assign({
1150
- className: className
1151
- }, definitionProps, fieldProps, {
1152
- isForm: true
1153
- }, formProps))) : null;
433
+ var closeForm = React.useCallback(function () {
434
+ return closeFieldForm(name, form);
435
+ }, [name, form, closeFieldForm]);
436
+ var formProps = {
437
+ name: name,
438
+ value: fieldValue,
439
+ onChange: onFieldChange,
440
+ gotoFieldForm: gotoFieldForm,
441
+ closeFieldForm: closeFieldForm,
442
+ closeForm: closeForm
443
+ };
444
+
445
+ if (form !== null) {
446
+ return FormComponent !== null ? /*#__PURE__*/React__default["default"].createElement(contexts.FieldContextProvider, {
447
+ context: fieldContext
448
+ }, /*#__PURE__*/React__default["default"].createElement(FormComponent, Object.assign({
449
+ field: field
450
+ }, formProps, {
451
+ className: className
452
+ }))) : null;
453
+ } // Use field component with isForm props
454
+
455
+
456
+ return FieldComponent !== null ? /*#__PURE__*/React__default["default"].createElement(contexts.FieldContextProvider, {
457
+ context: fieldContext
458
+ }, /*#__PURE__*/React__default["default"].createElement(FieldComponent, Object.assign({
459
+ className: className
460
+ }, definitionProps, fieldProps, {
461
+ isForm: true
462
+ }, formProps))) : null;
1154
463
  };
1155
464
 
1156
465
  FieldForm.propTypes = propTypes$H;
@@ -2955,237 +2264,789 @@ var PlaceholderBlock = function PlaceholderBlock(_ref) {
2955
2264
  PlaceholderBlock.propTypes = propTypes$i;
2956
2265
  PlaceholderBlock.defaultProps = defaultProps$i;
2957
2266
 
2958
- /* eslint-disable react/jsx-props-no-spreading */
2267
+ /* eslint-disable react/jsx-props-no-spreading */
2268
+
2269
+ var propTypes$h = {
2270
+ name: PropTypes__default["default"].string.isRequired,
2271
+ components: PropTypes__default["default"].object.isRequired,
2272
+ // eslint-disable-line
2273
+ props: PropTypes__default["default"].object,
2274
+ // eslint-disable-line
2275
+ isPlaceholder: PropTypes__default["default"].bool,
2276
+ className: PropTypes__default["default"].string,
2277
+ placeholderProps: PropTypes__default["default"].object // eslint-disable-line
2278
+
2279
+ };
2280
+ var defaultProps$h = {
2281
+ props: {},
2282
+ isPlaceholder: false,
2283
+ className: null,
2284
+ placeholderProps: null
2285
+ };
2286
+
2287
+ var ElementComponent = function ElementComponent(_ref) {
2288
+ var name = _ref.name,
2289
+ components = _ref.components,
2290
+ props = _ref.props,
2291
+ isPlaceholder = _ref.isPlaceholder,
2292
+ className = _ref.className,
2293
+ placeholderProps = _ref.placeholderProps;
2294
+
2295
+ if (!name) {
2296
+ return 'Bad component name';
2297
+ }
2298
+
2299
+ if (isPlaceholder) {
2300
+ // TODO: figure out what this did
2301
+ // const PlaceholderComponent = Placeholders[pascalCase(name)];
2302
+ return /*#__PURE__*/React__default["default"].createElement(PlaceholderBlock, placeholderProps);
2303
+ }
2304
+
2305
+ var RealComponent = components[utils.pascalCase(name)];
2306
+
2307
+ if (!RealComponent) {
2308
+ return 'Bad component';
2309
+ }
2310
+
2311
+ return /*#__PURE__*/React__default["default"].createElement(RealComponent, Object.assign({}, props, {
2312
+ className: className
2313
+ }));
2314
+ };
2315
+
2316
+ ElementComponent.propTypes = propTypes$h;
2317
+ ElementComponent.defaultProps = defaultProps$h;
2318
+
2319
+ var styles$g = {"container":"micromag-core-partials-empty-container","middle":"micromag-core-partials-empty-middle","withoutBorder":"micromag-core-partials-empty-withoutBorder","invertColor":"micromag-core-partials-empty-invertColor"};
2320
+
2321
+ var propTypes$g = {
2322
+ children: PropTypes__default["default"].node,
2323
+ withoutBorder: PropTypes__default["default"].bool,
2324
+ light: PropTypes__default["default"].bool,
2325
+ className: PropTypes__default["default"].string
2326
+ };
2327
+ var defaultProps$g = {
2328
+ children: null,
2329
+ withoutBorder: false,
2330
+ light: false,
2331
+ className: null
2332
+ };
2333
+
2334
+ var Empty = function Empty(_ref) {
2335
+ var _ref2;
2336
+
2337
+ var children = _ref.children,
2338
+ withoutBorder = _ref.withoutBorder,
2339
+ light = _ref.light,
2340
+ className = _ref.className;
2341
+ return /*#__PURE__*/React__default["default"].createElement("div", {
2342
+ className: classNames__default["default"]([styles$g.container, (_ref2 = {}, _defineProperty__default["default"](_ref2, styles$g.withoutBorder, withoutBorder), _defineProperty__default["default"](_ref2, styles$g.light, light), _defineProperty__default["default"](_ref2, className, className), _ref2)])
2343
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
2344
+ className: styles$g.middle
2345
+ }, /*#__PURE__*/React__default["default"].createElement(Label, null, children)));
2346
+ };
2347
+
2348
+ Empty.propTypes = propTypes$g;
2349
+ Empty.defaultProps = defaultProps$g;
2350
+
2351
+ var getUrlsFromMedia = function getUrlsFromMedia(media, formats) {
2352
+ var _ref = media || {},
2353
+ _ref$files = _ref.files,
2354
+ files = _ref$files === void 0 ? {} : _ref$files;
2355
+
2356
+ var _ref2 = files || {},
2357
+ _ref2$original = _ref2.original,
2358
+ originalFile = _ref2$original === void 0 ? null : _ref2$original;
2359
+
2360
+ var _ref3 = originalFile || {},
2361
+ _ref3$name = _ref3.name,
2362
+ originalName = _ref3$name === void 0 ? null : _ref3$name,
2363
+ _ref3$mime = _ref3.mime,
2364
+ originalMime = _ref3$mime === void 0 ? null : _ref3$mime;
2365
+
2366
+ var urls = formats.reduce(function (currentUrls, format) {
2367
+ var finalFormat = isObject__default["default"](format) ? format.format : format;
2368
+ var formatExtension = isObject__default["default"](format) ? format.name : format;
2369
+ var file = files["webfonts.".concat(formatExtension)] || files[formatExtension] || null;
2370
+
2371
+ if (file !== null) {
2372
+ return [].concat(_toConsumableArray__default["default"](currentUrls), ["url(\"".concat(file.url, "?\") format(\"").concat(finalFormat, "\")")]);
2373
+ }
2374
+
2375
+ var extensionRegExp = new RegExp(".".concat(formatExtension, "$"), 'i');
2376
+ var mimeRegExp = new RegExp("".concat(finalFormat), 'i');
2377
+
2378
+ if (originalName !== null && originalName.match(extensionRegExp) !== null || originalMime !== null && originalMime.match(mimeRegExp) !== null) {
2379
+ return [].concat(_toConsumableArray__default["default"](currentUrls), ["url(\"".concat(originalFile.url, "?\") format(\"").concat(finalFormat, "\")")]);
2380
+ }
2381
+
2382
+ return currentUrls;
2383
+ }, []);
2384
+ return urls;
2385
+ };
2386
+
2387
+ var propTypes$f = {
2388
+ fonts: core.PropTypes.fonts,
2389
+ formats: PropTypes__default["default"].arrayOf(PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].shape({
2390
+ name: PropTypes__default["default"].string,
2391
+ format: PropTypes__default["default"].string
2392
+ })]))
2393
+ };
2394
+ var defaultProps$f = {
2395
+ fonts: [],
2396
+ formats: ['eot', 'woff2', 'woff', {
2397
+ name: 'otf',
2398
+ format: 'opentype'
2399
+ }, {
2400
+ name: 'ttf',
2401
+ format: 'truetype'
2402
+ }, 'svg']
2403
+ };
2404
+
2405
+ var FontFaces = function FontFaces(_ref4) {
2406
+ var fonts = _ref4.fonts,
2407
+ formats = _ref4.formats;
2408
+ var fontFaces = (fonts || []).filter(function (it) {
2409
+ return isObject__default["default"](it) && it.type === 'custom' && (it.media || null) !== null;
2410
+ }).reduce(function (fontFontFaces, _ref5) {
2411
+ var _ref5$name = _ref5.name,
2412
+ name = _ref5$name === void 0 ? null : _ref5$name,
2413
+ _ref5$media = _ref5.media,
2414
+ media = _ref5$media === void 0 ? null : _ref5$media,
2415
+ _ref5$variants = _ref5.variants,
2416
+ variants = _ref5$variants === void 0 ? [] : _ref5$variants;
2417
+
2418
+ if (name === null) {
2419
+ return fontFontFaces;
2420
+ }
2421
+
2422
+ var urls = media !== null ? getUrlsFromMedia(media, formats) : null;
2423
+ return [].concat(_toConsumableArray__default["default"](fontFontFaces), [urls !== null && urls.length > 0 ? "\n @font-face {\n font-family: \"".concat(name, "\";\n src: ").concat(urls.join(','), ";\n }\n ") : null], _toConsumableArray__default["default"]((variants || []).map(function (_ref6) {
2424
+ var weight = _ref6.weight,
2425
+ style = _ref6.style,
2426
+ _ref6$media = _ref6.media,
2427
+ variantMedia = _ref6$media === void 0 ? null : _ref6$media;
2428
+
2429
+ if (variantMedia == null) {
2430
+ return null;
2431
+ }
2432
+
2433
+ var variantUrls = getUrlsFromMedia(variantMedia, formats);
2434
+ return variantUrls !== null && variantUrls.length > 0 ? "\n @font-face {\n font-family: \"".concat(name, "\";\n ").concat(weight !== null ? "font-weight: ".concat(weight, ";") : '', "\n ").concat(style !== null ? "font-style: ".concat(style, ";") : '', "\n src: ").concat(variantUrls.join(','), ";\n }\n ") : null;
2435
+ })));
2436
+ }, []).filter(function (it) {
2437
+ return it !== null;
2438
+ });
2439
+ return fontFaces.length > 0 ? /*#__PURE__*/React__default["default"].createElement("style", {
2440
+ type: "text/css"
2441
+ }, fontFaces.join('\n')) : null;
2442
+ };
2443
+
2444
+ FontFaces.propTypes = propTypes$f;
2445
+ FontFaces.defaultProps = defaultProps$f;
2959
2446
 
2960
- var propTypes$h = {
2961
- name: PropTypes__default["default"].string.isRequired,
2962
- components: PropTypes__default["default"].object.isRequired,
2963
- // eslint-disable-line
2964
- props: PropTypes__default["default"].object,
2965
- // eslint-disable-line
2966
- isPlaceholder: PropTypes__default["default"].bool,
2967
- className: PropTypes__default["default"].string,
2968
- placeholderProps: PropTypes__default["default"].object // eslint-disable-line
2447
+ var styles$f = {};
2969
2448
 
2449
+ var propTypes$e = {
2450
+ thumbnail: PropTypes__default["default"].node,
2451
+ thumbnailAlign: PropTypes__default["default"].oneOf(['top', 'center', 'bottom']),
2452
+ children: PropTypes__default["default"].node,
2453
+ title: core.PropTypes.label,
2454
+ className: PropTypes__default["default"].string,
2455
+ thumbnailClassName: PropTypes__default["default"].string,
2456
+ bodyClassName: PropTypes__default["default"].string,
2457
+ titleClassName: PropTypes__default["default"].string
2970
2458
  };
2971
- var defaultProps$h = {
2972
- props: {},
2973
- isPlaceholder: false,
2459
+ var defaultProps$e = {
2460
+ thumbnail: null,
2461
+ thumbnailAlign: 'top',
2462
+ children: null,
2463
+ title: null,
2974
2464
  className: null,
2975
- placeholderProps: null
2465
+ thumbnailClassName: null,
2466
+ bodyClassName: null,
2467
+ titleClassName: null
2976
2468
  };
2977
2469
 
2978
- var ElementComponent = function ElementComponent(_ref) {
2979
- var name = _ref.name,
2980
- components = _ref.components,
2981
- props = _ref.props,
2982
- isPlaceholder = _ref.isPlaceholder,
2470
+ var Media = function Media(_ref) {
2471
+ var thumbnail = _ref.thumbnail,
2472
+ thumbnailAlign = _ref.thumbnailAlign,
2473
+ children = _ref.children,
2474
+ title = _ref.title,
2983
2475
  className = _ref.className,
2984
- placeholderProps = _ref.placeholderProps;
2985
-
2986
- if (!name) {
2987
- return 'Bad component name';
2988
- }
2476
+ thumbnailClassName = _ref.thumbnailClassName,
2477
+ bodyClassName = _ref.bodyClassName,
2478
+ titleClassName = _ref.titleClassName;
2479
+ return /*#__PURE__*/React__default["default"].createElement("div", {
2480
+ className: classNames__default["default"](['card', styles$f.container, _defineProperty__default["default"]({}, className, className !== null)])
2481
+ }, typeof thumbnail === 'string' ? /*#__PURE__*/React__default["default"].createElement("img", {
2482
+ src: thumbnail,
2483
+ alt: title,
2484
+ className: classNames__default["default"](['me-3', styles$f.thumbnail, _defineProperty__default["default"]({
2485
+ 'align-self-start': thumbnailAlign === 'top',
2486
+ 'align-self-center': thumbnailAlign === 'center',
2487
+ 'align-self-end': thumbnailAlign === 'bottom'
2488
+ }, thumbnailClassName, thumbnailClassName !== null)])
2489
+ }) : thumbnail, title !== null || children !== null ? /*#__PURE__*/React__default["default"].createElement("div", {
2490
+ className: classNames__default["default"](['card-body', styles$f.body, _defineProperty__default["default"]({}, bodyClassName, bodyClassName !== null)])
2491
+ }, title !== null ? /*#__PURE__*/React__default["default"].createElement("h5", {
2492
+ className: classNames__default["default"](['mt-0', 'text-truncate', styles$f.title, _defineProperty__default["default"]({}, titleClassName, titleClassName !== null)])
2493
+ }, /*#__PURE__*/React__default["default"].createElement(Label, null, title)) : null, children) : null);
2494
+ };
2989
2495
 
2990
- if (isPlaceholder) {
2991
- // TODO: figure out what this did
2992
- // const PlaceholderComponent = Placeholders[pascalCase(name)];
2993
- return /*#__PURE__*/React__default["default"].createElement(PlaceholderBlock, placeholderProps);
2994
- }
2496
+ Media.propTypes = propTypes$e;
2497
+ Media.defaultProps = defaultProps$e;
2995
2498
 
2996
- var RealComponent = components[utils.pascalCase(name)];
2499
+ /**
2500
+ * Core
2501
+ */
2997
2502
 
2998
- if (!RealComponent) {
2999
- return 'Bad component';
3000
- }
2503
+ PropTypes__default["default"].shape({
2504
+ listen: PropTypes__default["default"].func.isRequired,
2505
+ push: PropTypes__default["default"].func.isRequired
2506
+ });
2507
+ PropTypes__default["default"].shape({
2508
+ pathname: PropTypes__default["default"].string,
2509
+ search: PropTypes__default["default"].string
2510
+ });
2511
+ PropTypes__default["default"].shape({
2512
+ locale: PropTypes__default["default"].string.isRequired,
2513
+ formatMessage: PropTypes__default["default"].func.isRequired
2514
+ });
2515
+ var defaultMessageContent = PropTypes__default["default"].shape({
2516
+ type: PropTypes__default["default"].number,
2517
+ value: PropTypes__default["default"].string
2518
+ });
2519
+ var defaultMessage = PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].arrayOf(defaultMessageContent)]);
2520
+ var message = PropTypes__default["default"].shape({
2521
+ id: PropTypes__default["default"].string,
2522
+ defaultMessage: defaultMessage.isRequired,
2523
+ description: PropTypes__default["default"].string
2524
+ });
2525
+ var text = PropTypes__default["default"].oneOfType([message, PropTypes__default["default"].string]);
2526
+ var label = PropTypes__default["default"].oneOfType([message, PropTypes__default["default"].node]);
2527
+ PropTypes__default["default"].oneOf([401, 403, 404, 500]);
2528
+ PropTypes__default["default"].oneOfType([PropTypes__default["default"].shape({
2529
+ current: PropTypes__default["default"].any // eslint-disable-line react/forbid-prop-types
3001
2530
 
3002
- return /*#__PURE__*/React__default["default"].createElement(RealComponent, Object.assign({}, props, {
3003
- className: className
3004
- }));
3005
- };
2531
+ }), PropTypes__default["default"].func]);
2532
+ var target = PropTypes__default["default"].oneOf(['_blank', '_self', '_parent']);
2533
+ var interaction = PropTypes__default["default"].oneOf(['tap', 'swipe']);
2534
+ PropTypes__default["default"].arrayOf(interaction);
2535
+ PropTypes__default["default"].objectOf(PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].number, PropTypes__default["default"].array]));
2536
+ PropTypes__default["default"].shape({
2537
+ currentTime: PropTypes__default["default"].number,
2538
+ duration: PropTypes__default["default"].number
2539
+ });
2540
+ /**
2541
+ * Site
2542
+ */
3006
2543
 
3007
- ElementComponent.propTypes = propTypes$h;
3008
- ElementComponent.defaultProps = defaultProps$h;
2544
+ PropTypes__default["default"].shape({
2545
+ id: PropTypes__default["default"].number,
2546
+ firstname: PropTypes__default["default"].string,
2547
+ lastname: PropTypes__default["default"].string,
2548
+ email: PropTypes__default["default"].string,
2549
+ gender: PropTypes__default["default"].string,
2550
+ birthdate: PropTypes__default["default"].string
2551
+ });
2552
+ var menuItem = PropTypes__default["default"].shape({
2553
+ id: PropTypes__default["default"].oneOfType([PropTypes__default["default"].number, PropTypes__default["default"].string]),
2554
+ label: label,
2555
+ url: PropTypes__default["default"].string,
2556
+ external: PropTypes__default["default"].bool,
2557
+ active: PropTypes__default["default"].bool
2558
+ });
2559
+ PropTypes__default["default"].arrayOf(menuItem);
2560
+ var breadcrumb = PropTypes__default["default"].shape({
2561
+ label: label,
2562
+ url: PropTypes__default["default"].string
2563
+ });
2564
+ PropTypes__default["default"].arrayOf(breadcrumb);
2565
+ var device = PropTypes__default["default"].shape({
2566
+ id: PropTypes__default["default"].string.isRequired
2567
+ });
2568
+ PropTypes__default["default"].arrayOf(device);
2569
+ var modal = PropTypes__default["default"].shape({
2570
+ id: PropTypes__default["default"].string.isRequired
2571
+ });
2572
+ PropTypes__default["default"].arrayOf(modal);
2573
+ var panel = PropTypes__default["default"].shape({
2574
+ id: PropTypes__default["default"].string.isRequired
2575
+ });
2576
+ PropTypes__default["default"].arrayOf(panel);
2577
+ var button = PropTypes__default["default"].shape({
2578
+ label: label,
2579
+ onClick: PropTypes__default["default"].func
2580
+ });
2581
+ PropTypes__default["default"].arrayOf(button);
2582
+ var bootstrapThemeStrings = ['primary', 'secondary', 'success', 'danger', 'warning', 'info', 'light', 'dark'];
2583
+ PropTypes__default["default"].oneOf(bootstrapThemeStrings);
2584
+ PropTypes__default["default"].oneOf([].concat(bootstrapThemeStrings, ['outline-primary', 'outline-secondary', 'outline-success', 'outline-danger', 'outline-warning', 'outline-info', 'outline-light', 'outline-dark', 'outline-link', null]));
2585
+ PropTypes__default["default"].oneOf(['lg', 'sm', null]);
2586
+ PropTypes__default["default"].oneOf(['lg', 'sm', null]);
2587
+ PropTypes__default["default"].oneOf(['start', 'end']);
2588
+ var component = PropTypes__default["default"].oneOfType([PropTypes__default["default"].object, PropTypes__default["default"].func]);
2589
+ PropTypes__default["default"].objectOf(component);
2590
+ /**
2591
+ * Forms
2592
+ */
3009
2593
 
3010
- var styles$g = {"container":"micromag-core-partials-empty-container","middle":"micromag-core-partials-empty-middle","withoutBorder":"micromag-core-partials-empty-withoutBorder","invertColor":"micromag-core-partials-empty-invertColor"};
2594
+ var errors = PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].arrayOf(PropTypes__default["default"].string)]);
2595
+ PropTypes__default["default"].objectOf(errors);
2596
+ var selectOption = PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].shape({
2597
+ value: PropTypes__default["default"].any,
2598
+ // eslint-disable-line
2599
+ label: label
2600
+ })]);
2601
+ PropTypes__default["default"].arrayOf(selectOption);
2602
+ var formField = PropTypes__default["default"].shape({
2603
+ name: PropTypes__default["default"].string,
2604
+ component: component
2605
+ });
2606
+ PropTypes__default["default"].arrayOf(formField);
2607
+ /**
2608
+ * Medias
2609
+ */
3011
2610
 
3012
- var propTypes$g = {
3013
- children: PropTypes__default["default"].node,
3014
- withoutBorder: PropTypes__default["default"].bool,
3015
- light: PropTypes__default["default"].bool,
3016
- className: PropTypes__default["default"].string
2611
+ var mediaMetadataShape = {
2612
+ filename: PropTypes__default["default"].string,
2613
+ size: PropTypes__default["default"].number,
2614
+ mime: PropTypes__default["default"].string
3017
2615
  };
3018
- var defaultProps$g = {
3019
- children: null,
3020
- withoutBorder: false,
3021
- light: false,
3022
- className: null
2616
+ var mediaFile = PropTypes__default["default"].shape({
2617
+ id: PropTypes__default["default"].string,
2618
+ handle: PropTypes__default["default"].string,
2619
+ type: PropTypes__default["default"].string,
2620
+ mime: PropTypes__default["default"].string,
2621
+ url: PropTypes__default["default"].string
2622
+ });
2623
+ var mediaShape = {
2624
+ id: PropTypes__default["default"].string,
2625
+ type: PropTypes__default["default"].string.isRequired,
2626
+ url: PropTypes__default["default"].string,
2627
+ // .isRequired,
2628
+ thumbnail_url: PropTypes__default["default"].string,
2629
+ name: PropTypes__default["default"].string,
2630
+ metadata: PropTypes__default["default"].shape(_objectSpread__default["default"]({}, mediaMetadataShape)),
2631
+ files: PropTypes__default["default"].objectOf(mediaFile)
3023
2632
  };
2633
+ var media = PropTypes__default["default"].shape(mediaShape);
2634
+ PropTypes__default["default"].arrayOf(media);
2635
+ PropTypes__default["default"].oneOf(['image', 'video', 'audio', 'closed-captions', 'font']);
2636
+ var imageMedia = PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, mediaShape), {}, {
2637
+ type: PropTypes__default["default"].oneOf(['image', 'video']),
2638
+ metadata: PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, mediaMetadataShape), {}, {
2639
+ width: PropTypes__default["default"].number,
2640
+ height: PropTypes__default["default"].number
2641
+ }))
2642
+ }));
2643
+ PropTypes__default["default"].arrayOf(imageMedia);
2644
+ var fontMedia = PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, mediaShape), {}, {
2645
+ type: PropTypes__default["default"].oneOf(['font']),
2646
+ metadata: PropTypes__default["default"].shape(_objectSpread__default["default"]({}, mediaMetadataShape))
2647
+ }));
2648
+ PropTypes__default["default"].arrayOf(fontMedia);
2649
+ var videoMedia = PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, mediaShape), {}, {
2650
+ type: PropTypes__default["default"].oneOf(['video']),
2651
+ metadata: PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, mediaMetadataShape), {}, {
2652
+ width: PropTypes__default["default"].number,
2653
+ height: PropTypes__default["default"].number,
2654
+ duration: PropTypes__default["default"].number
2655
+ }))
2656
+ }));
2657
+ PropTypes__default["default"].arrayOf(videoMedia);
2658
+ var audioMedia = PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, mediaShape), {}, {
2659
+ type: PropTypes__default["default"].oneOf(['audio']),
2660
+ metadata: PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, mediaMetadataShape), {}, {
2661
+ duration: PropTypes__default["default"].number
2662
+ }))
2663
+ }));
2664
+ PropTypes__default["default"].arrayOf(audioMedia);
2665
+ var closedCaptionsMedia = PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, mediaShape), {}, {
2666
+ type: PropTypes__default["default"].oneOf(['closed-captions'])
2667
+ }));
2668
+ /**
2669
+ * Style
2670
+ */
3024
2671
 
3025
- var Empty = function Empty(_ref) {
3026
- var _ref2;
2672
+ var font = PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].shape({
2673
+ type: PropTypes__default["default"].oneOf(['system', 'google', 'custom']),
2674
+ name: PropTypes__default["default"].string,
2675
+ media: fontMedia
2676
+ })]);
2677
+ PropTypes__default["default"].arrayOf(font);
2678
+ var textAlign = PropTypes__default["default"].oneOf(['left', 'right', 'center']);
2679
+ var color = PropTypes__default["default"].shape({
2680
+ color: PropTypes__default["default"].string,
2681
+ alpha: PropTypes__default["default"].number
2682
+ });
2683
+ var textStyle = PropTypes__default["default"].shape({
2684
+ fontFamily: font,
2685
+ fontSize: PropTypes__default["default"].number,
2686
+ fontStyle: PropTypes__default["default"].shape({
2687
+ bold: PropTypes__default["default"].bool,
2688
+ italic: PropTypes__default["default"].bool,
2689
+ underline: PropTypes__default["default"].bool,
2690
+ upperCase: PropTypes__default["default"].bool
2691
+ }),
2692
+ align: textAlign,
2693
+ color: color,
2694
+ letterSpacing: PropTypes__default["default"].number,
2695
+ lineHeight: PropTypes__default["default"].number
2696
+ });
2697
+ var borderTypes = PropTypes__default["default"].oneOf(['dotted', 'dashed', 'solid', 'double', 'groove', 'ridge', 'inset', 'outset', 'hidden']);
2698
+ var shadowType = PropTypes__default["default"].shape({
2699
+ shadowDistance: PropTypes__default["default"].number,
2700
+ shadowBlur: PropTypes__default["default"].number,
2701
+ shadowColor: color
2702
+ });
2703
+ PropTypes__default["default"].shape({
2704
+ width: PropTypes__default["default"].number,
2705
+ style: borderTypes,
2706
+ radius: PropTypes__default["default"].number,
2707
+ color: color
2708
+ });
2709
+ var boxStyle = PropTypes__default["default"].shape({
2710
+ backgroundColor: color,
2711
+ borderRadius: PropTypes__default["default"].number,
2712
+ borderWidth: PropTypes__default["default"].number,
2713
+ borderColor: color,
2714
+ borderStyle: borderTypes,
2715
+ shadow: shadowType
2716
+ });
2717
+ PropTypes__default["default"].shape({
2718
+ top: PropTypes__default["default"].number,
2719
+ bottom: PropTypes__default["default"].number
2720
+ });
2721
+ PropTypes__default["default"].arrayOf(PropTypes__default["default"].shape({
2722
+ rows: PropTypes__default["default"].oneOfType([PropTypes__default["default"].number, PropTypes__default["default"].arrayOf(PropTypes__default["default"].number)]),
2723
+ columns: PropTypes__default["default"].oneOfType([PropTypes__default["default"].number, PropTypes__default["default"].arrayOf(PropTypes__default["default"].number)])
2724
+ }));
2725
+ var objectFitSize = PropTypes__default["default"].oneOf(['cover', 'contain', null]);
2726
+ PropTypes__default["default"].shape({
2727
+ fit: objectFitSize,
2728
+ horizontalPosition: PropTypes__default["default"].oneOf(['left', 'center', 'right']),
2729
+ verticalPosition: PropTypes__default["default"].oneOf(['top', 'center', 'bottom'])
2730
+ });
2731
+ /**
2732
+ * Elements
2733
+ */
3027
2734
 
3028
- var children = _ref.children,
3029
- withoutBorder = _ref.withoutBorder,
3030
- light = _ref.light,
3031
- className = _ref.className;
3032
- return /*#__PURE__*/React__default["default"].createElement("div", {
3033
- className: classNames__default["default"]([styles$g.container, (_ref2 = {}, _defineProperty__default["default"](_ref2, styles$g.withoutBorder, withoutBorder), _defineProperty__default["default"](_ref2, styles$g.light, light), _defineProperty__default["default"](_ref2, className, className), _ref2)])
3034
- }, /*#__PURE__*/React__default["default"].createElement("div", {
3035
- className: styles$g.middle
3036
- }, /*#__PURE__*/React__default["default"].createElement(Label, null, children)));
2735
+ var textElement = PropTypes__default["default"].shape({
2736
+ body: PropTypes__default["default"].string,
2737
+ textStyle: textStyle
2738
+ });
2739
+ var headingElement = textElement;
2740
+ PropTypes__default["default"].shape({
2741
+ label: PropTypes__default["default"].string,
2742
+ textStyle: textStyle
2743
+ });
2744
+ var imageElement = PropTypes__default["default"].shape({
2745
+ media: imageMedia
2746
+ });
2747
+ PropTypes__default["default"].arrayOf(imageElement);
2748
+ PropTypes__default["default"].shape({
2749
+ media: videoMedia,
2750
+ autoPlay: PropTypes__default["default"].bool,
2751
+ loop: PropTypes__default["default"].bool,
2752
+ closedCaptions: closedCaptionsMedia,
2753
+ withSeekBar: PropTypes__default["default"].bool,
2754
+ withControls: PropTypes__default["default"].bool
2755
+ });
2756
+ var visualElement = PropTypes__default["default"].shape({
2757
+ media: imageMedia
2758
+ });
2759
+ PropTypes__default["default"].arrayOf(visualElement);
2760
+ PropTypes__default["default"].shape({
2761
+ media: audioMedia,
2762
+ autoPlay: PropTypes__default["default"].bool,
2763
+ loop: PropTypes__default["default"].bool,
2764
+ closedCaptions: closedCaptionsMedia,
2765
+ withPlayPause: PropTypes__default["default"].bool
2766
+ });
2767
+ PropTypes__default["default"].shape({
2768
+ media: closedCaptionsMedia
2769
+ });
2770
+ var backgroundElement = PropTypes__default["default"].shape({
2771
+ color: color,
2772
+ image: imageMedia,
2773
+ video: videoMedia
2774
+ });
2775
+ var imageElementWithCaption = PropTypes__default["default"].shape({
2776
+ image: imageMedia,
2777
+ caption: textElement
2778
+ });
2779
+ PropTypes__default["default"].arrayOf(imageElementWithCaption);
2780
+ var stackDirection = PropTypes__default["default"].oneOf(['horizontal', 'vertical']);
2781
+ var stackAlign = PropTypes__default["default"].oneOf(['start', 'center', 'end']);
2782
+ var stackSpacing = PropTypes__default["default"].oneOfType([PropTypes__default["default"].number, PropTypes__default["default"].oneOf(['between', 'evenly', 'around'])]);
2783
+ PropTypes__default["default"].shape({
2784
+ direction: stackDirection,
2785
+ align: stackAlign,
2786
+ width: PropTypes__default["default"].number,
2787
+ height: PropTypes__default["default"].number,
2788
+ spacing: stackSpacing,
2789
+ reverse: PropTypes__default["default"].bool
2790
+ });
2791
+ PropTypes__default["default"].shape({
2792
+ layout: PropTypes__default["default"].arrayOf(PropTypes__default["default"].string),
2793
+ spacing: PropTypes__default["default"].number
2794
+ });
2795
+ var geoPosition = PropTypes__default["default"].shape({
2796
+ lat: PropTypes__default["default"].number,
2797
+ lng: PropTypes__default["default"].number
2798
+ });
2799
+ var markerShape = {
2800
+ id: PropTypes__default["default"].number,
2801
+ geoPosition: geoPosition,
2802
+ title: headingElement,
2803
+ subtitle: headingElement,
2804
+ description: textElement
3037
2805
  };
2806
+ var marker = PropTypes__default["default"].shape(_objectSpread__default["default"]({}, markerShape));
2807
+ PropTypes__default["default"].arrayOf(marker);
2808
+ var markerWithImage = PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, markerShape), {}, {
2809
+ image: imageMedia
2810
+ }));
2811
+ PropTypes__default["default"].arrayOf(markerWithImage);
2812
+ var answerShape = {
2813
+ id: PropTypes__default["default"].string,
2814
+ label: textElement
2815
+ };
2816
+ var answer = PropTypes__default["default"].shape(_objectSpread__default["default"]({}, answerShape));
2817
+ var quizAnswer = PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, answerShape), {}, {
2818
+ good: PropTypes__default["default"].bool
2819
+ }));
2820
+ PropTypes__default["default"].arrayOf(answer);
2821
+ PropTypes__default["default"].arrayOf(quizAnswer);
2822
+ var callToActionTypes = PropTypes__default["default"].oneOf(['swipe-up', 'button']);
2823
+ PropTypes__default["default"].shape({
2824
+ active: PropTypes__default["default"].bool,
2825
+ type: callToActionTypes,
2826
+ url: PropTypes__default["default"].string,
2827
+ label: textElement,
2828
+ buttonStyle: boxStyle
2829
+ });
2830
+ var speaker = PropTypes__default["default"].shape({
2831
+ id: PropTypes__default["default"].string,
2832
+ name: PropTypes__default["default"].string,
2833
+ avatar: imageMedia,
2834
+ side: PropTypes__default["default"].oneOf(['left', 'right']),
2835
+ color: color
2836
+ });
2837
+ var speakers = PropTypes__default["default"].arrayOf(speaker);
2838
+ var conversationMessage = PropTypes__default["default"].shape({
2839
+ speaker: PropTypes__default["default"].string,
2840
+ message: PropTypes__default["default"].string,
2841
+ image: imageMedia
2842
+ });
2843
+ var conversationMessages = PropTypes__default["default"].arrayOf(conversationMessage);
2844
+ PropTypes__default["default"].shape({
2845
+ speakers: speakers,
2846
+ textStyle: textStyle,
2847
+ messages: conversationMessages
2848
+ });
2849
+ /**
2850
+ * Definitions
2851
+ */
3038
2852
 
3039
- Empty.propTypes = propTypes$g;
3040
- Empty.defaultProps = defaultProps$g;
3041
-
3042
- var getUrlsFromMedia = function getUrlsFromMedia(media, formats) {
3043
- var _ref = media || {},
3044
- _ref$files = _ref.files,
3045
- files = _ref$files === void 0 ? {} : _ref$files;
3046
-
3047
- var _ref2 = files || {},
3048
- _ref2$original = _ref2.original,
3049
- originalFile = _ref2$original === void 0 ? null : _ref2$original;
3050
-
3051
- var _ref3 = originalFile || {},
3052
- _ref3$name = _ref3.name,
3053
- originalName = _ref3$name === void 0 ? null : _ref3$name,
3054
- _ref3$mime = _ref3.mime,
3055
- originalMime = _ref3$mime === void 0 ? null : _ref3$mime;
3056
-
3057
- var urls = formats.reduce(function (currentUrls, format) {
3058
- var finalFormat = isObject__default["default"](format) ? format.format : format;
3059
- var formatExtension = isObject__default["default"](format) ? format.name : format;
3060
- var file = files["webfonts.".concat(formatExtension)] || files[formatExtension] || null;
3061
-
3062
- if (file !== null) {
3063
- return [].concat(_toConsumableArray__default["default"](currentUrls), ["url(\"".concat(file.url, "?\") format(\"").concat(finalFormat, "\")")]);
3064
- }
3065
-
3066
- var extensionRegExp = new RegExp(".".concat(formatExtension, "$"), 'i');
3067
- var mimeRegExp = new RegExp("".concat(finalFormat), 'i');
3068
-
3069
- if (originalName !== null && originalName.match(extensionRegExp) !== null || originalMime !== null && originalMime.match(mimeRegExp) !== null) {
3070
- return [].concat(_toConsumableArray__default["default"](currentUrls), ["url(\"".concat(originalFile.url, "?\") format(\"").concat(finalFormat, "\")")]);
3071
- }
3072
-
3073
- return currentUrls;
3074
- }, []);
3075
- return urls;
2853
+ var fieldShape = {
2854
+ name: PropTypes__default["default"].string,
2855
+ type: PropTypes__default["default"].string.isRequired,
2856
+ label: text
3076
2857
  };
2858
+ var field = PropTypes__default["default"].shape(_objectSpread__default["default"](_objectSpread__default["default"]({}, fieldShape), {}, {
2859
+ isSection: PropTypes__default["default"].bool,
2860
+ fields: PropTypes__default["default"].arrayOf(PropTypes__default["default"].shape(fieldShape))
2861
+ }));
2862
+ var fields = PropTypes__default["default"].arrayOf(field);
2863
+ var screenDefinition = PropTypes__default["default"].shape({
2864
+ id: PropTypes__default["default"].string.isRequired,
2865
+ type: PropTypes__default["default"].oneOf(['screen']).isRequired,
2866
+ title: text.isRequired,
2867
+ layouts: PropTypes__default["default"].arrayOf(PropTypes__default["default"].string),
2868
+ fields: fields
2869
+ });
2870
+ PropTypes__default["default"].arrayOf(screenDefinition);
2871
+ var fieldDefinition = PropTypes__default["default"].shape({
2872
+ id: PropTypes__default["default"].string.isRequired,
2873
+ type: PropTypes__default["default"].oneOf(['field']).isRequired,
2874
+ title: text.isRequired,
2875
+ fields: fields
2876
+ });
2877
+ PropTypes__default["default"].arrayOf(fieldDefinition);
2878
+ /**
2879
+ * Components
2880
+ */
3077
2881
 
3078
- var propTypes$f = {
3079
- fonts: core.PropTypes.fonts,
3080
- formats: PropTypes__default["default"].arrayOf(PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].shape({
3081
- name: PropTypes__default["default"].string,
3082
- format: PropTypes__default["default"].string
3083
- })]))
3084
- };
3085
- var defaultProps$f = {
3086
- fonts: [],
3087
- formats: ['eot', 'woff2', 'woff', {
3088
- name: 'otf',
3089
- format: 'opentype'
3090
- }, {
3091
- name: 'ttf',
3092
- format: 'truetype'
3093
- }, 'svg']
2882
+ var storyComponentShape = {
2883
+ type: PropTypes__default["default"].string.isRequired
3094
2884
  };
2885
+ var storyComponent = PropTypes__default["default"].shape(_objectSpread__default["default"]({}, storyComponentShape));
2886
+ PropTypes__default["default"].arrayOf(storyComponent);
2887
+ var screenComponent = PropTypes__default["default"].shape(_objectSpread__default["default"]({}, storyComponentShape));
2888
+ var screenComponents = PropTypes__default["default"].arrayOf(screenComponent);
3095
2889
 
3096
- var FontFaces = function FontFaces(_ref4) {
3097
- var fonts = _ref4.fonts,
3098
- formats = _ref4.formats;
3099
- var fontFaces = (fonts || []).filter(function (it) {
3100
- return isObject__default["default"](it) && it.type === 'custom' && (it.media || null) !== null;
3101
- }).reduce(function (fontFontFaces, _ref5) {
3102
- var _ref5$name = _ref5.name,
3103
- name = _ref5$name === void 0 ? null : _ref5$name,
3104
- _ref5$media = _ref5.media,
3105
- media = _ref5$media === void 0 ? null : _ref5$media,
3106
- _ref5$variants = _ref5.variants,
3107
- variants = _ref5$variants === void 0 ? [] : _ref5$variants;
2890
+ /**
2891
+ * Theme
2892
+ */
3108
2893
 
3109
- if (name === null) {
3110
- return fontFontFaces;
3111
- }
2894
+ var theme = PropTypes__default["default"].shape({
2895
+ id: PropTypes__default["default"].string,
2896
+ textStyles: PropTypes__default["default"].objectOf(textStyle),
2897
+ // renamed to textstyles
2898
+ background: backgroundElement,
2899
+ colors: PropTypes__default["default"].objectOf(color),
2900
+ components: screenComponents
2901
+ });
2902
+ PropTypes__default["default"].shape(_objectSpread__default["default"]({
2903
+ logo: imageMedia
2904
+ }, theme));
2905
+ /**
2906
+ * Branding
2907
+ */
2908
+ // export const branding = PropTypes.shape({
2909
+ // logo: imageMedia,
2910
+ // primaryColor: color,
2911
+ // secondaryColor: color,
2912
+ // backgroundColor: color,
2913
+ // textStyle,
2914
+ // });
3112
2915
 
3113
- var urls = media !== null ? getUrlsFromMedia(media, formats) : null;
3114
- return [].concat(_toConsumableArray__default["default"](fontFontFaces), [urls !== null && urls.length > 0 ? "\n @font-face {\n font-family: \"".concat(name, "\";\n src: ").concat(urls.join(','), ";\n }\n ") : null], _toConsumableArray__default["default"]((variants || []).map(function (_ref6) {
3115
- var weight = _ref6.weight,
3116
- style = _ref6.style,
3117
- _ref6$media = _ref6.media,
3118
- variantMedia = _ref6$media === void 0 ? null : _ref6$media;
2916
+ /**
2917
+ * Metadata
2918
+ */
3119
2919
 
3120
- if (variantMedia == null) {
3121
- return null;
3122
- }
2920
+ var metadata = PropTypes__default["default"].shape({
2921
+ description: PropTypes__default["default"].string,
2922
+ shareUrl: PropTypes__default["default"].string,
2923
+ shareImage: imageMedia,
2924
+ favIcon: imageMedia
2925
+ });
2926
+ /**
2927
+ * Story
2928
+ */
3123
2929
 
3124
- var variantUrls = getUrlsFromMedia(variantMedia, formats);
3125
- return variantUrls !== null && variantUrls.length > 0 ? "\n @font-face {\n font-family: \"".concat(name, "\";\n ").concat(weight !== null ? "font-weight: ".concat(weight, ";") : '', "\n ").concat(style !== null ? "font-style: ".concat(style, ";") : '', "\n src: ").concat(variantUrls.join(','), ";\n }\n ") : null;
3126
- })));
3127
- }, []).filter(function (it) {
3128
- return it !== null;
3129
- });
3130
- return fontFaces.length > 0 ? /*#__PURE__*/React__default["default"].createElement("style", {
3131
- type: "text/css"
3132
- }, fontFaces.join('\n')) : null;
3133
- };
2930
+ PropTypes__default["default"].shape({
2931
+ id: PropTypes__default["default"].string,
2932
+ theme: theme,
2933
+ components: screenComponents,
2934
+ metadata: metadata
2935
+ });
2936
+ /**
2937
+ * Render
2938
+ */
3134
2939
 
3135
- FontFaces.propTypes = propTypes$f;
3136
- FontFaces.defaultProps = defaultProps$f;
2940
+ var deviceScreen = PropTypes__default["default"].shape({
2941
+ name: PropTypes__default["default"].string.isRequired,
2942
+ mediaQuery: PropTypes__default["default"].string
2943
+ });
2944
+ PropTypes__default["default"].arrayOf(deviceScreen);
2945
+ PropTypes__default["default"].shape({
2946
+ screen: PropTypes__default["default"].string,
2947
+ screens: PropTypes__default["default"].arrayOf(PropTypes__default["default"].string),
2948
+ width: PropTypes__default["default"].number,
2949
+ height: PropTypes__default["default"].number,
2950
+ landscape: PropTypes__default["default"].bool
2951
+ });
2952
+ PropTypes__default["default"].oneOf(['view', 'placeholder', 'edit', 'preview', 'static', 'capture']);
2953
+ /**
2954
+ * Screens
2955
+ */
3137
2956
 
3138
- var styles$f = {};
2957
+ PropTypes__default["default"].shape({
2958
+ width: PropTypes__default["default"].number,
2959
+ height: PropTypes__default["default"].number
2960
+ });
2961
+ PropTypes__default["default"].shape({
2962
+ width: PropTypes__default["default"].number,
2963
+ height: PropTypes__default["default"].number,
2964
+ url: PropTypes__default["default"].string,
2965
+ target: target,
2966
+ iframe: PropTypes__default["default"].string,
2967
+ image: imageMedia
2968
+ });
2969
+ PropTypes__default["default"].shape({
2970
+ src: PropTypes__default["default"].string,
2971
+ track: PropTypes__default["default"].string,
2972
+ trackLng: PropTypes__default["default"].number,
2973
+ controls: PropTypes__default["default"].bool
2974
+ });
2975
+ var slide = PropTypes__default["default"].shape({
2976
+ image: imageMedia,
2977
+ text: PropTypes__default["default"].string
2978
+ });
2979
+ PropTypes__default["default"].arrayOf(slide); // export const imageStyle = PropTypes.shape({
2980
+ // alt: PropTypes.string,
2981
+ // fit: PropTypes.object,
2982
+ // });
3139
2983
 
3140
- var propTypes$e = {
3141
- thumbnail: PropTypes__default["default"].node,
3142
- thumbnailAlign: PropTypes__default["default"].oneOf(['top', 'center', 'bottom']),
3143
- children: PropTypes__default["default"].node,
3144
- title: core.PropTypes.label,
3145
- className: PropTypes__default["default"].string,
3146
- thumbnailClassName: PropTypes__default["default"].string,
3147
- bodyClassName: PropTypes__default["default"].string,
3148
- titleClassName: PropTypes__default["default"].string
3149
- };
3150
- var defaultProps$e = {
3151
- thumbnail: null,
3152
- thumbnailAlign: 'top',
3153
- children: null,
3154
- title: null,
3155
- className: null,
3156
- thumbnailClassName: null,
3157
- bodyClassName: null,
3158
- titleClassName: null
3159
- };
2984
+ PropTypes__default["default"].shape({});
2985
+ /**
2986
+ * Transitions
2987
+ */
3160
2988
 
3161
- var Media = function Media(_ref) {
3162
- var thumbnail = _ref.thumbnail,
3163
- thumbnailAlign = _ref.thumbnailAlign,
3164
- children = _ref.children,
3165
- title = _ref.title,
3166
- className = _ref.className,
3167
- thumbnailClassName = _ref.thumbnailClassName,
3168
- bodyClassName = _ref.bodyClassName,
3169
- titleClassName = _ref.titleClassName;
3170
- return /*#__PURE__*/React__default["default"].createElement("div", {
3171
- className: classNames__default["default"](['card', styles$f.container, _defineProperty__default["default"]({}, className, className !== null)])
3172
- }, typeof thumbnail === 'string' ? /*#__PURE__*/React__default["default"].createElement("img", {
3173
- src: thumbnail,
3174
- alt: title,
3175
- className: classNames__default["default"](['me-3', styles$f.thumbnail, _defineProperty__default["default"]({
3176
- 'align-self-start': thumbnailAlign === 'top',
3177
- 'align-self-center': thumbnailAlign === 'center',
3178
- 'align-self-end': thumbnailAlign === 'bottom'
3179
- }, thumbnailClassName, thumbnailClassName !== null)])
3180
- }) : thumbnail, title !== null || children !== null ? /*#__PURE__*/React__default["default"].createElement("div", {
3181
- className: classNames__default["default"](['card-body', styles$f.body, _defineProperty__default["default"]({}, bodyClassName, bodyClassName !== null)])
3182
- }, title !== null ? /*#__PURE__*/React__default["default"].createElement("h5", {
3183
- className: classNames__default["default"](['mt-0', 'text-truncate', styles$f.title, _defineProperty__default["default"]({}, titleClassName, titleClassName !== null)])
3184
- }, /*#__PURE__*/React__default["default"].createElement(Label, null, title)) : null, children) : null);
2989
+ var transitionName = PropTypes__default["default"].oneOf(['fade', 'scale', 'slide']);
2990
+ var transitionParams = {
2991
+ duration: PropTypes__default["default"].number,
2992
+ easing: PropTypes__default["default"].oneOf(['ease', 'ease-in', 'ease-out', 'ease-in-out', 'linear'])
3185
2993
  };
2994
+ var transition = PropTypes__default["default"].oneOfType([transitionName.isRequired, PropTypes__default["default"].shape(_objectSpread__default["default"]({
2995
+ name: transitionName.isRequired
2996
+ }, transitionParams))]);
2997
+ PropTypes__default["default"].shape({
2998
+ "in": transition,
2999
+ out: transition
3000
+ });
3001
+ /**
3002
+ * Search
3003
+ */
3186
3004
 
3187
- Media.propTypes = propTypes$e;
3188
- Media.defaultProps = defaultProps$e;
3005
+ var searchFilter = PropTypes__default["default"].shape({
3006
+ type: PropTypes__default["default"].string,
3007
+ value: PropTypes__default["default"].oneOf([PropTypes__default["default"].string, PropTypes__default["default"].number])
3008
+ });
3009
+ PropTypes__default["default"].arrayOf(searchFilter);
3010
+ /**
3011
+ * Payments
3012
+ */
3013
+
3014
+ var paymentItem = PropTypes__default["default"].shape({
3015
+ id: PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].number]),
3016
+ date: PropTypes__default["default"].string,
3017
+ type: PropTypes__default["default"].string,
3018
+ invoice_link: PropTypes__default["default"].string,
3019
+ amount: PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].number])
3020
+ });
3021
+ PropTypes__default["default"].arrayOf(paymentItem);
3022
+ /**
3023
+ * Page Metadada
3024
+ */
3025
+
3026
+ var pageMetadata = PropTypes__default["default"].shape({
3027
+ canonical: PropTypes__default["default"].string,
3028
+ description: PropTypes__default["default"].string,
3029
+ keywords: PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].array]),
3030
+ image: PropTypes__default["default"].shape({
3031
+ url: PropTypes__default["default"].string
3032
+ }),
3033
+ favicon: PropTypes__default["default"].shape({
3034
+ url: PropTypes__default["default"].string
3035
+ }),
3036
+ rssUrl: PropTypes__default["default"].string,
3037
+ atomUrl: PropTypes__default["default"].string,
3038
+ microformats: PropTypes__default["default"].arrayOf(PropTypes__default["default"].shape({}))
3039
+ });
3040
+ PropTypes__default["default"].shape({
3041
+ name: textElement,
3042
+ avatar: PropTypes__default["default"].shape({
3043
+ url: PropTypes__default["default"].string
3044
+ })
3045
+ });
3046
+ PropTypes__default["default"].shape({
3047
+ id: PropTypes__default["default"].oneOfType([PropTypes__default["default"].string, PropTypes__default["default"].number]),
3048
+ name: PropTypes__default["default"].string
3049
+ });
3189
3050
 
3190
3051
  /* eslint-disable react/no-array-index-key */
3191
3052
  var propTypes$d = {
@@ -4035,7 +3896,7 @@ var Answer$1 = function Answer(_ref) {
4035
3896
  })));
4036
3897
  };
4037
3898
 
4038
- var styles$3 = {"container":"micromag-core-placeholders-share-options-container","box":"micromag-core-placeholders-share-options-box","icon":"micromag-core-placeholders-share-options-icon","item":"micromag-core-placeholders-share-options-item"};
3899
+ var styles$3 = {"container":"micromag-core-placeholders-share-options-container","box":"micromag-core-placeholders-share-options-box","icon":"micromag-core-placeholders-share-options-icon","item":"micromag-core-placeholders-share-options-item","button":"micromag-core-placeholders-share-options-button"};
4039
3900
 
4040
3901
  var Title = function Title(props) {
4041
3902
  return /*#__PURE__*/React__default["default"].createElement(PlaceholderBlock, Object.assign({}, props, {
@@ -4546,7 +4407,6 @@ exports.Button = Button$1;
4546
4407
  exports.Buttons = Buttons;
4547
4408
  exports.Card = Card;
4548
4409
  exports.Close = Close;
4549
- exports.CloseButton = CloseButton;
4550
4410
  exports.CollapsablePanel = CollapsablePanel;
4551
4411
  exports.Date = Date$1;
4552
4412
  exports.Detector = Detector;
@@ -4558,7 +4418,6 @@ exports.FontFaces = FontFaces;
4558
4418
  exports.Form = Form;
4559
4419
  exports.FormPanel = FormPanel;
4560
4420
  exports.HighlightStyle = HighlightStyle;
4561
- exports.IconButton = IconButton;
4562
4421
  exports.Label = Label;
4563
4422
  exports.Link = Link;
4564
4423
  exports.LinkStyle = LinkStyle;
@@ -4598,7 +4457,6 @@ exports.ScreenPreview = Preview;
4598
4457
  exports.ScreenSizer = ScreenSizer;
4599
4458
  exports.Screens = Screens;
4600
4459
  exports.Slideshow = Slideshow;
4601
- exports.SlidingButtons = SlidingButtons;
4602
4460
  exports.Spinner = Spinner;
4603
4461
  exports.Tabs = TabsMenu;
4604
4462
  exports.Transitions = Transitions;