@commercetools-frontend/application-components 21.12.0 → 21.14.0

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.
Files changed (23) hide show
  1. package/dist/commercetools-frontend-application-components.cjs.dev.js +593 -422
  2. package/dist/commercetools-frontend-application-components.cjs.prod.js +421 -307
  3. package/dist/commercetools-frontend-application-components.esm.js +585 -417
  4. package/dist/declarations/src/components/detail-pages/custom-form-detail-page/custom-form-detail-page.d.ts +4 -0
  5. package/dist/declarations/src/components/detail-pages/form-detail-page/form-detail-page.d.ts +1 -0
  6. package/dist/declarations/src/components/detail-pages/tabular-detail-page/tabular-detail-page.d.ts +4 -0
  7. package/dist/declarations/src/components/dialogs/form-dialog/form-dialog.d.ts +2 -1
  8. package/dist/declarations/src/components/dialogs/internals/dialog-footer.d.ts +2 -1
  9. package/dist/declarations/src/components/internals/default-form-buttons.d.ts +6 -3
  10. package/dist/declarations/src/components/main-pages/custom-form-main-page/custom-form-main-page.d.ts +197 -0
  11. package/dist/declarations/src/components/main-pages/custom-form-main-page/index.d.ts +1 -0
  12. package/dist/declarations/src/components/main-pages/form-main-page/form-main-page.d.ts +124 -0
  13. package/dist/declarations/src/components/main-pages/form-main-page/index.d.ts +1 -0
  14. package/dist/declarations/src/components/main-pages/info-main-page/index.d.ts +1 -0
  15. package/dist/declarations/src/components/main-pages/info-main-page/info-main-page.d.ts +29 -0
  16. package/dist/declarations/src/components/main-pages/internals/main-page.styles.d.ts +13 -0
  17. package/dist/declarations/src/components/{tabular-main-page → main-pages/tabular-main-page}/index.d.ts +0 -0
  18. package/dist/declarations/src/components/{tabular-main-page → main-pages/tabular-main-page}/tabular-main-page.d.ts +4 -0
  19. package/dist/declarations/src/components/modal-pages/custom-form-modal-page/custom-form-modal-page.d.ts +4 -0
  20. package/dist/declarations/src/components/modal-pages/form-modal-page/form-modal-page.d.ts +1 -0
  21. package/dist/declarations/src/components/modal-pages/tabular-modal-page/tabular-modal-page.d.ts +4 -0
  22. package/dist/declarations/src/index.d.ts +4 -1
  23. package/package.json +9 -8
@@ -20,23 +20,23 @@ var Text = require('@commercetools-uikit/text');
20
20
  var react = require('@emotion/react');
21
21
  var designSystem = require('@commercetools-uikit/design-system');
22
22
  var jsxRuntime = require('@emotion/react/jsx-runtime');
23
- var Spacings = require('@commercetools-uikit/spacings');
24
- var i18n = require('@commercetools-frontend/i18n');
25
- var _styled = require('@emotion/styled/base');
26
23
  var react$1 = require('react');
27
- var PrimaryButton = require('@commercetools-uikit/primary-button');
28
- var SecondaryButton = require('@commercetools-uikit/secondary-button');
29
- var IconButton = require('@commercetools-uikit/icon-button');
30
- var icons = require('@commercetools-uikit/icons');
31
- var _startsWithInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/starts-with');
32
- var omitBy = require('lodash/omitBy');
24
+ var _styled = require('@emotion/styled/base');
33
25
  var Modal = require('react-modal');
34
26
  var constants = require('@commercetools-frontend/constants');
35
27
  var Card = require('@commercetools-uikit/card');
28
+ var icons = require('@commercetools-uikit/icons');
36
29
  var SecondaryIconButton = require('@commercetools-uikit/secondary-icon-button');
30
+ var Spacings = require('@commercetools-uikit/spacings');
31
+ var i18n = require('@commercetools-frontend/i18n');
32
+ var SecondaryButton = require('@commercetools-uikit/secondary-button');
33
+ var PrimaryButton = require('@commercetools-uikit/primary-button');
34
+ var _startsWithInstanceProperty = require('@babel/runtime-corejs3/core-js-stable/instance/starts-with');
35
+ var omitBy = require('lodash/omitBy');
37
36
  var _slicedToArray = require('@babel/runtime-corejs3/helpers/slicedToArray');
38
37
  var _setTimeout = require('@babel/runtime-corejs3/core-js-stable/set-timeout');
39
38
  var FlatButton = require('@commercetools-uikit/flat-button');
39
+ var IconButton = require('@commercetools-uikit/icon-button');
40
40
  var CommercetoolsLogoSvg = require('@commercetools-frontend/assets/logos/commercetools_primary-logo_horizontal_white-text_RGB.svg');
41
41
  var Constraints = require('@commercetools-uikit/constraints');
42
42
  var PageNotFoundSVG = require('@commercetools-frontend/assets/images/desert-fox.svg');
@@ -63,18 +63,18 @@ var _Object$defineProperties__default = /*#__PURE__*/_interopDefault(_Object$def
63
63
  var _Object$defineProperty__default = /*#__PURE__*/_interopDefault(_Object$defineProperty);
64
64
  var startCase__default = /*#__PURE__*/_interopDefault(startCase);
65
65
  var Text__default = /*#__PURE__*/_interopDefault(Text);
66
- var Spacings__default = /*#__PURE__*/_interopDefault(Spacings);
67
66
  var _styled__default = /*#__PURE__*/_interopDefault(_styled);
68
- var PrimaryButton__default = /*#__PURE__*/_interopDefault(PrimaryButton);
69
- var SecondaryButton__default = /*#__PURE__*/_interopDefault(SecondaryButton);
70
- var IconButton__default = /*#__PURE__*/_interopDefault(IconButton);
71
- var _startsWithInstanceProperty__default = /*#__PURE__*/_interopDefault(_startsWithInstanceProperty);
72
- var omitBy__default = /*#__PURE__*/_interopDefault(omitBy);
73
67
  var Modal__default = /*#__PURE__*/_interopDefault(Modal);
74
68
  var Card__default = /*#__PURE__*/_interopDefault(Card);
75
69
  var SecondaryIconButton__default = /*#__PURE__*/_interopDefault(SecondaryIconButton);
70
+ var Spacings__default = /*#__PURE__*/_interopDefault(Spacings);
71
+ var SecondaryButton__default = /*#__PURE__*/_interopDefault(SecondaryButton);
72
+ var PrimaryButton__default = /*#__PURE__*/_interopDefault(PrimaryButton);
73
+ var _startsWithInstanceProperty__default = /*#__PURE__*/_interopDefault(_startsWithInstanceProperty);
74
+ var omitBy__default = /*#__PURE__*/_interopDefault(omitBy);
76
75
  var _setTimeout__default = /*#__PURE__*/_interopDefault(_setTimeout);
77
76
  var FlatButton__default = /*#__PURE__*/_interopDefault(FlatButton);
77
+ var IconButton__default = /*#__PURE__*/_interopDefault(IconButton);
78
78
  var CommercetoolsLogoSvg__default = /*#__PURE__*/_interopDefault(CommercetoolsLogoSvg);
79
79
  var Constraints__default = /*#__PURE__*/_interopDefault(Constraints);
80
80
  var PageNotFoundSVG__default = /*#__PURE__*/_interopDefault(PageNotFoundSVG);
@@ -89,7 +89,7 @@ var useLatest__default = /*#__PURE__*/_interopDefault(useLatest);
89
89
  var rafSchd__default = /*#__PURE__*/_interopDefault(rafSchd);
90
90
 
91
91
  // NOTE: This string will be replaced on build time with the package version.
92
- var version = "21.12.0";
92
+ var version = "21.14.0";
93
93
 
94
94
  var getBottomBorderStyles = function getBottomBorderStyles(background) {
95
95
  return /*#__PURE__*/react.css(":after{content:'';position:absolute;bottom:0;left:0;right:0;height:4px;border-radius:", designSystem.customProperties.borderRadius2, ";background-color:", background, ";transition:background-color ", designSystem.customProperties.transitionEaseinout150Ms, ";}" + ("" ), "" );
@@ -161,252 +161,11 @@ var TabHeader = function TabHeader(props) {
161
161
  };
162
162
  TabHeader.propTypes = {};
163
163
  TabHeader.displayName = 'TabHeader';
164
- var defaultProps$f = {
164
+ var defaultProps$h = {
165
165
  isDisabled: false,
166
166
  exactPathMatch: false
167
167
  };
168
- TabHeader.defaultProps = defaultProps$f;
169
-
170
- var defaultProps$e = {
171
- titleSize: 'small',
172
- truncate: false
173
- };
174
-
175
- var SubtitleWrapper = _styled__default["default"]("div", {
176
- target: "epaiodd0"
177
- } )("margin-top:", designSystem.customProperties.spacingM, ";" + ("" ));
178
-
179
- var renderTitle = function renderTitle(props) {
180
- switch (props.titleSize) {
181
- case 'big':
182
- return jsxRuntime.jsx(Text__default["default"].Headline, {
183
- as: "h2",
184
- title: props.title,
185
- truncate: props.truncate,
186
- children: props.title
187
- });
188
-
189
- default:
190
- return jsxRuntime.jsx(Text__default["default"].Subheadline, {
191
- as: "h4",
192
- title: props.title,
193
- truncate: props.truncate,
194
- children: props.title
195
- });
196
- }
197
- };
198
-
199
- var renderSubtitle = function renderSubtitle(subtitle) {
200
- var truncate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
201
-
202
- if (!subtitle) {
203
- return null;
204
- }
205
-
206
- if ( /*#__PURE__*/react$1.isValidElement(subtitle)) {
207
- return jsxRuntime.jsx(SubtitleWrapper, {
208
- children: subtitle
209
- });
210
- }
211
-
212
- return jsxRuntime.jsx(SubtitleWrapper, {
213
- children: jsxRuntime.jsx(Text__default["default"].Body, {
214
- title: subtitle,
215
- truncate: truncate,
216
- children: subtitle
217
- })
218
- });
219
- };
220
-
221
- var _ref$7 = {
222
- name: "d3v9zr",
223
- styles: "overflow:hidden"
224
- } ;
225
-
226
- var PageHeaderTitle = function PageHeaderTitle(props) {
227
- var titleSize = props.titleSize,
228
- title = props.title,
229
- truncate = props.truncate;
230
- var renderedTitle = renderTitle({
231
- titleSize: titleSize,
232
- title: title,
233
- truncate: truncate
234
- });
235
- var renderedSubtitle = renderSubtitle(props.subtitle, truncate);
236
- return jsxRuntime.jsxs("div", {
237
- css: _ref$7,
238
- children: [renderedTitle, renderedSubtitle]
239
- });
240
- };
241
-
242
- PageHeaderTitle.propTypes = {};
243
- PageHeaderTitle.displayName = 'PageHeaderTitle';
244
- PageHeaderTitle.defaultProps = defaultProps$e;
245
-
246
- var TabControls = _styled__default["default"]("div", {
247
- target: "elpldre1"
248
- } )("margin-top:", designSystem.customProperties.spacingS, ";" + ("" ));
249
-
250
- var _ref$6 = {
251
- name: "1nrstx4",
252
- styles: "display:flex;align-items:flex-end;justify-content:space-between"
253
- } ;
254
-
255
- var ControlsContainter = function ControlsContainter(props) {
256
- return jsxRuntime.jsxs("div", {
257
- css: _ref$6,
258
- children: [jsxRuntime.jsx(TabControls, {
259
- role: "tablist",
260
- children: props.tabControls
261
- }), props.formControls]
262
- });
263
- };
264
-
265
- ControlsContainter.propTypes = {};
266
- ControlsContainter.displayName = 'ControlsContainter';
267
-
268
- var TabularPageContainer = function TabularPageContainer(props) {
269
- return jsxRuntime.jsx("div", {
270
- css: /*#__PURE__*/react.css("background-color:", props.color === 'surface' ? designSystem.customProperties.colorSurface : designSystem.customProperties.colorNeutral95, ";padding:", designSystem.customProperties.spacingM, " ", designSystem.customProperties.spacingM, " 0;border-bottom:1px ", designSystem.customProperties.colorNeutral, " solid;" + ("" ), "" ),
271
- children: props.children
272
- });
273
- };
274
-
275
- TabularPageContainer.propTypes = {};
276
- TabularPageContainer.displayName = 'TabularPageContainer';
277
- var defaultProps$d = {
278
- color: 'surface'
279
- };
280
- TabularPageContainer.defaultProps = defaultProps$d;
281
-
282
- var FormControlsContainer = _styled__default["default"]("div", {
283
- target: "elpldre0"
284
- } )("margin-bottom:", designSystem.customProperties.spacingM, ";" + ("" ));
285
-
286
- var ContentWrapper = _styled__default["default"]("div", {
287
- target: "e1b7jwn01"
288
- } )("flex:1;flex-basis:0;padding:", designSystem.customProperties.spacingM, ";overflow:auto;" + ("" ));
289
- var PageWrapper = _styled__default["default"]("div", {
290
- target: "e1b7jwn00"
291
- } )({
292
- name: "kdbhus",
293
- styles: "height:100%;display:flex;flex-direction:column"
294
- } );
295
-
296
- function filterDataAttributes(obj) {
297
- return omitBy__default["default"](obj, function (_value, key) {
298
- return !_startsWithInstanceProperty__default["default"](key).call(key, 'data-');
299
- });
300
- }
301
-
302
- function ownKeys$6(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
303
-
304
- function _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$6(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$6(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
305
- var primaryDefaultProps = {
306
- label: i18n.sharedMessages.confirm,
307
- isDisabled: false,
308
- dataAttributes: {}
309
- };
310
-
311
- var useFormattedLabel = function useFormattedLabel(label) {
312
- var intl = reactIntl.useIntl();
313
- return typeof label === 'string' ? label : intl.formatMessage(label);
314
- };
315
-
316
- var FormPrimaryButton = function FormPrimaryButton(props) {
317
- var label = useFormattedLabel(props.label);
318
- return jsxRuntime.jsx(PrimaryButton__default["default"], _objectSpread$6({
319
- label: label,
320
- onClick: props.onClick,
321
- isDisabled: props.isDisabled
322
- }, filterDataAttributes(props.dataAttributes)));
323
- };
324
-
325
- FormPrimaryButton.propTypes = {};
326
- FormPrimaryButton.displayName = 'FormPrimaryButton';
327
- FormPrimaryButton.defaultProps = primaryDefaultProps;
328
- var secondaryDefaultProps = {
329
- label: i18n.sharedMessages.cancel,
330
- isDisabled: false,
331
- dataAttributes: {}
332
- };
333
-
334
- var FormSecondaryButton = function FormSecondaryButton(props) {
335
- var label = useFormattedLabel(props.label);
336
- return jsxRuntime.jsx(SecondaryButton__default["default"], _objectSpread$6({
337
- label: label,
338
- onClick: props.onClick,
339
- isDisabled: props.isDisabled
340
- }, filterDataAttributes(props.dataAttributes)));
341
- };
342
-
343
- FormSecondaryButton.propTypes = {};
344
- FormSecondaryButton.displayName = 'FormSecondaryButton';
345
- FormSecondaryButton.defaultProps = secondaryDefaultProps;
346
- var deleteDefaultProps = {
347
- label: i18n.sharedMessages.delete,
348
- isDisabled: false,
349
- dataAttributes: {}
350
- };
351
-
352
- var FormDeleteButton = function FormDeleteButton(props) {
353
- var label = useFormattedLabel(props.label);
354
- return jsxRuntime.jsx(IconButton__default["default"], _objectSpread$6({
355
- icon: jsxRuntime.jsx(icons.BinLinearIcon, {}),
356
- label: label,
357
- onClick: props.onClick,
358
- isDisabled: props.isDisabled
359
- }, filterDataAttributes(props.dataAttributes)));
360
- };
361
-
362
- FormDeleteButton.propTypes = {};
363
- FormDeleteButton.displayName = 'FormDeleteButton';
364
- FormDeleteButton.defaultProps = deleteDefaultProps;
365
-
366
- var defaultProps$c = {
367
- hideControls: false
368
- };
369
-
370
- var TabularMainPage = function TabularMainPage(props) {
371
- var _props$title;
372
- return jsxRuntime.jsxs(PageWrapper, {
373
- children: [jsxRuntime.jsx(TabularPageContainer, {
374
- color: "surface",
375
- children: jsxRuntime.jsxs(Spacings__default["default"].Stack, {
376
- children: [props.customTitleRow || jsxRuntime.jsx(PageHeaderTitle, {
377
- title: (_props$title = props.title) !== null && _props$title !== void 0 ? _props$title : '',
378
- subtitle: props.subtitle,
379
- titleSize: "big"
380
- }), jsxRuntime.jsx(ControlsContainter, {
381
- tabControls: props.tabControls,
382
- formControls: jsxRuntime.jsx(FormControlsContainer, {
383
- children: !props.hideControls && props.formControls && jsxRuntime.jsx(Spacings__default["default"].Inline, {
384
- alignItems: "flex-end",
385
- children: props.formControls
386
- })
387
- })
388
- })]
389
- })
390
- }), jsxRuntime.jsx(ContentWrapper, {
391
- css: /*#__PURE__*/react.css("background-color:", designSystem.customProperties.colorNeutral95, ";" + ("" ), "" ),
392
- children: props.children
393
- })]
394
- });
395
- };
396
-
397
- TabularMainPage.propTypes = {};
398
- TabularMainPage.displayName = 'TabularMainPage';
399
- TabularMainPage.defaultProps = defaultProps$c; // Static export of pre-configured form control buttons to easily re-use
400
- // them in the custom controls.
401
-
402
- TabularMainPage.FormPrimaryButton = FormPrimaryButton;
403
- TabularMainPage.FormSecondaryButton = FormSecondaryButton;
404
- TabularMainPage.FormDeleteButton = FormDeleteButton; // Static export of pre-configured page header title component to easily
405
- // use as part of a custom title row
406
-
407
- TabularMainPage.PageHeaderTitle = PageHeaderTitle; // This is a convenience proxy export to expose pre-defined Intl messages defined in the `@commercetools-frontend/i18n` package.
408
-
409
- TabularMainPage.Intl = i18n.sharedMessages;
168
+ TabHeader.defaultProps = defaultProps$h;
410
169
 
411
170
  var getConstraintForGridStyle = function getConstraintForGridStyle(size) {
412
171
  switch (size) {
@@ -445,9 +204,9 @@ var getOverlayStyles$1 = function getOverlayStyles(props) {
445
204
  "".concat(props.zIndex, " !important") : 'auto', ";top:0;width:100%;height:100%;background-color:rgba(32, 62, 72, 0.5);opacity:1;" + ("" ), "" );
446
205
  };
447
206
 
448
- function ownKeys$5(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
207
+ function ownKeys$6(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
449
208
 
450
- function _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$5(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$5(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
209
+ function _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$6(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$6(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
451
210
 
452
211
  var getDefaultParentSelector$1 = function getDefaultParentSelector() {
453
212
  return document.querySelector("#".concat(constants.PORTALS_CONTAINER_ID));
@@ -456,14 +215,14 @@ var getDefaultParentSelector$1 = function getDefaultParentSelector() {
456
215
  var getOverlayElement$1 = function getOverlayElement(props, contentElement) {
457
216
  return (// Assign the `data-role` to the overlay container, which is used as
458
217
  // the CSS selector in the `<PortalsContainer>`.
459
- jsxRuntime.jsx("div", _objectSpread$5(_objectSpread$5({}, props), {}, {
218
+ jsxRuntime.jsx("div", _objectSpread$6(_objectSpread$6({}, props), {}, {
460
219
  "data-role": "dialog-overlay",
461
220
  children: contentElement
462
221
  }))
463
222
  );
464
223
  };
465
224
 
466
- var defaultProps$b = {
225
+ var defaultProps$g = {
467
226
  size: 10,
468
227
  getParentSelector: getDefaultParentSelector$1
469
228
  };
@@ -484,7 +243,7 @@ var sizeStyles = function sizeStyles(props) {
484
243
  return /*#__PURE__*/react.css("" , "" );
485
244
  };
486
245
 
487
- var _ref$5 = {
246
+ var _ref$7 = {
488
247
  name: "1187q51",
489
248
  styles: "display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;overflow:hidden"
490
249
  } ;
@@ -514,7 +273,7 @@ var DialogContainer = function DialogContainer(props) {
514
273
  name: "bottom"
515
274
  }), jsxRuntime.jsx(GridArea, {
516
275
  name: "main",
517
- css: _ref$5,
276
+ css: _ref$7,
518
277
  children: jsxRuntime.jsx(Card__default["default"] // 1. For the min-height: https://stackoverflow.com/questions/28636832/firefox-overflow-y-not-working-with-nested-flexbox/28639686#28639686
519
278
  // 2. For the scale size, we want the card to stretch to 100% height
520
279
  // 3. For the actual "> div" container with the content, we need to use normal pointer events so that clicking on it does not close the dialog.
@@ -533,16 +292,16 @@ var DialogContainer = function DialogContainer(props) {
533
292
 
534
293
  DialogContainer.propTypes = {};
535
294
  DialogContainer.displayName = 'DialogContainer';
536
- DialogContainer.defaultProps = defaultProps$b;
295
+ DialogContainer.defaultProps = defaultProps$g;
537
296
 
538
- var _ref$4 = {
297
+ var _ref$6 = {
539
298
  name: "o5s7gs",
540
299
  styles: "flex:0 1 auto;display:flex;flex-direction:column"
541
300
  } ;
542
301
 
543
302
  var DialogHeader = function DialogHeader(props) {
544
303
  return jsxRuntime.jsx("div", {
545
- css: _ref$4,
304
+ css: _ref$6,
546
305
  children: jsxRuntime.jsxs(Spacings__default["default"].Inline, {
547
306
  scale: "m",
548
307
  alignItems: "center",
@@ -590,10 +349,16 @@ var InfoDialog = function InfoDialog(props) {
590
349
  InfoDialog.propTypes = {};
591
350
  InfoDialog.displayName = 'InfoDialog';
592
351
 
593
- function ownKeys$4(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
352
+ function filterDataAttributes(obj) {
353
+ return omitBy__default["default"](obj, function (_value, key) {
354
+ return !_startsWithInstanceProperty__default["default"](key).call(key, 'data-');
355
+ });
356
+ }
594
357
 
595
- function _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$4(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$4(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
596
- var defaultProps$a = {
358
+ function ownKeys$5(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
359
+
360
+ function _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$5(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$5(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
361
+ var defaultProps$f = {
597
362
  isPrimaryButtonDisabled: false,
598
363
  dataAttributesPrimaryButton: {},
599
364
  dataAttributesSecondaryButton: {}
@@ -609,10 +374,11 @@ var DialogFooter = function DialogFooter(props) {
609
374
  scale: "m",
610
375
  alignItems: "center",
611
376
  justifyContent: "flex-end",
612
- children: [jsxRuntime.jsx(SecondaryButton__default["default"], _objectSpread$4({
377
+ children: [jsxRuntime.jsx(SecondaryButton__default["default"], _objectSpread$5({
613
378
  label: getFormattedLabel(props.labelSecondary, intl),
614
- onClick: props.onCancel
615
- }, filterDataAttributes(props.dataAttributesSecondaryButton))), jsxRuntime.jsx(PrimaryButton__default["default"], _objectSpread$4({
379
+ onClick: props.onCancel,
380
+ iconLeft: props.iconLeftSecondaryButton
381
+ }, filterDataAttributes(props.dataAttributesSecondaryButton))), jsxRuntime.jsx(PrimaryButton__default["default"], _objectSpread$5({
616
382
  label: getFormattedLabel(props.labelPrimary, intl),
617
383
  onClick: props.onConfirm,
618
384
  isDisabled: props.isPrimaryButtonDisabled
@@ -622,9 +388,9 @@ var DialogFooter = function DialogFooter(props) {
622
388
 
623
389
  DialogFooter.propTypes = {};
624
390
  DialogFooter.displayName = 'DialogFooter';
625
- DialogFooter.defaultProps = defaultProps$a;
391
+ DialogFooter.defaultProps = defaultProps$f;
626
392
 
627
- var defaultProps$9 = {
393
+ var defaultProps$e = {
628
394
  labelSecondary: i18n.sharedMessages.cancel,
629
395
  labelPrimary: i18n.sharedMessages.confirm
630
396
  };
@@ -656,12 +422,12 @@ var ConfirmationDialog = function ConfirmationDialog(props) {
656
422
 
657
423
  ConfirmationDialog.propTypes = {};
658
424
  ConfirmationDialog.displayName = 'ConfirmationDialog';
659
- ConfirmationDialog.defaultProps = defaultProps$9; // This is a convenience proxy export to expose pre-defined Intl messages defined in the `@commercetools-frontend/i18n` package.
425
+ ConfirmationDialog.defaultProps = defaultProps$e; // This is a convenience proxy export to expose pre-defined Intl messages defined in the `@commercetools-frontend/i18n` package.
660
426
  // The Intl messages can be used for button labels.
661
427
 
662
428
  ConfirmationDialog.Intl = i18n.sharedMessages;
663
429
 
664
- var defaultProps$8 = {
430
+ var defaultProps$d = {
665
431
  labelSecondary: i18n.sharedMessages.cancel,
666
432
  labelPrimary: i18n.sharedMessages.save
667
433
  };
@@ -686,14 +452,15 @@ var FormDialog = function FormDialog(props) {
686
452
  onCancel: props.onSecondaryButtonClick,
687
453
  onConfirm: props.onPrimaryButtonClick,
688
454
  dataAttributesSecondaryButton: props.dataAttributesSecondaryButton,
689
- dataAttributesPrimaryButton: props.dataAttributesPrimaryButton
455
+ dataAttributesPrimaryButton: props.dataAttributesPrimaryButton,
456
+ iconLeftSecondaryButton: props.iconLeftSecondaryButton
690
457
  })]
691
458
  });
692
459
  };
693
460
 
694
461
  FormDialog.propTypes = {};
695
462
  FormDialog.displayName = 'FormDialog';
696
- FormDialog.defaultProps = defaultProps$8; // This is a convenience proxy export to expose pre-defined Intl messages defined in the `@commercetools-frontend/i18n` package.
463
+ FormDialog.defaultProps = defaultProps$d; // This is a convenience proxy export to expose pre-defined Intl messages defined in the `@commercetools-frontend/i18n` package.
697
464
  // The Intl messages can be used for button labels.
698
465
 
699
466
  FormDialog.Intl = i18n.sharedMessages;
@@ -734,13 +501,13 @@ var getBeforeCloseContainerAnimation = function getBeforeCloseContainerAnimation
734
501
  return _ref2$1;
735
502
  };
736
503
 
737
- var _ref$3 = {
504
+ var _ref$5 = {
738
505
  name: "728dx5",
739
506
  styles: "opacity:0!important"
740
507
  } ;
741
508
 
742
509
  var getBeforeCloseOverlayAnimation = function getBeforeCloseOverlayAnimation() {
743
- return _ref$3;
510
+ return _ref$5;
744
511
  };
745
512
 
746
513
  var messages$2 = reactIntl.defineMessages({
@@ -764,12 +531,12 @@ var LargeIconWrapper = _styled__default["default"]("span", {
764
531
  // does not recognize the object shape.
765
532
 
766
533
 
767
- var defaultProps$7 = {
534
+ var defaultProps$c = {
768
535
  color: 'surface',
769
536
  previousPathLabel: messages$2.back
770
537
  };
771
538
 
772
- var _ref$2 = {
539
+ var _ref$4 = {
773
540
  name: "uvw8rn",
774
541
  styles: "display:flex;overflow:hidden;button:first-of-type svg{height:12px!important;width:12px!important;}"
775
542
  } ;
@@ -779,7 +546,7 @@ var ModalPageTopBar = function ModalPageTopBar(props) {
779
546
  return jsxRuntime.jsxs("div", {
780
547
  css: /*#__PURE__*/react.css("position:relative;display:flex;align-items:center;justify-content:space-between;padding:", designSystem.customProperties.spacingS, " ", designSystem.customProperties.spacingM, ";background-color:", props.color === 'neutral' ? designSystem.customProperties.colorNeutral95 : designSystem.customProperties.colorSurface, ";border-bottom:1px solid ", props.color === 'neutral' ? designSystem.customProperties.colorSurface : designSystem.customProperties.colorNeutral, ";& *+*{margin-left:", designSystem.customProperties.spacingS, ";}p{font-size:12px!important;}" + ("" ), "" ),
781
548
  children: [jsxRuntime.jsxs("div", {
782
- css: _ref$2,
549
+ css: _ref$4,
783
550
  children: [jsxRuntime.jsx(FlatButton__default["default"], {
784
551
  tone: "primary",
785
552
  label: typeof props.previousPathLabel === 'string' ? props.previousPathLabel : intl.formatMessage(props.previousPathLabel),
@@ -813,11 +580,11 @@ var ModalPageTopBar = function ModalPageTopBar(props) {
813
580
 
814
581
  ModalPageTopBar.propTypes = {};
815
582
  ModalPageTopBar.displayName = 'ModalPageTopBar';
816
- ModalPageTopBar.defaultProps = defaultProps$7;
583
+ ModalPageTopBar.defaultProps = defaultProps$c;
817
584
 
818
- function ownKeys$3(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
585
+ function ownKeys$4(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
819
586
 
820
- function _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$3(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$3(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
587
+ function _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$4(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$4(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
821
588
 
822
589
  var getDefaultParentSelector = function getDefaultParentSelector() {
823
590
  return document.querySelector("#".concat(constants.PORTALS_CONTAINER_ID));
@@ -826,7 +593,7 @@ var getDefaultParentSelector = function getDefaultParentSelector() {
826
593
  var getOverlayElement = function getOverlayElement(props, contentElement) {
827
594
  return (// Assign the `data-role` to the overlay container, which is used as
828
595
  // the CSS selector in the `<PortalsContainer>`.
829
- jsxRuntime.jsx("div", _objectSpread$3(_objectSpread$3({}, props), {}, {
596
+ jsxRuntime.jsx("div", _objectSpread$4(_objectSpread$4({}, props), {}, {
830
597
  "data-role": "modal-overlay",
831
598
  children: contentElement
832
599
  }))
@@ -836,7 +603,7 @@ var getOverlayElement = function getOverlayElement(props, contentElement) {
836
603
  // does not recognize the object shape.
837
604
 
838
605
 
839
- var defaultProps$6 = {
606
+ var defaultProps$b = {
840
607
  getParentSelector: getDefaultParentSelector,
841
608
  shouldDelayOnClose: true
842
609
  };
@@ -914,9 +681,85 @@ var ModalPage = function ModalPage(props) {
914
681
  });
915
682
  };
916
683
 
917
- ModalPage.propTypes = {};
918
- ModalPage.displayName = 'ModalPage';
919
- ModalPage.defaultProps = defaultProps$6;
684
+ ModalPage.propTypes = {};
685
+ ModalPage.displayName = 'ModalPage';
686
+ ModalPage.defaultProps = defaultProps$b;
687
+
688
+ var defaultProps$a = {
689
+ titleSize: 'small',
690
+ truncate: false
691
+ };
692
+
693
+ var SubtitleWrapper = _styled__default["default"]("div", {
694
+ target: "epaiodd0"
695
+ } )("margin-top:", designSystem.customProperties.spacingM, ";" + ("" ));
696
+
697
+ var renderTitle = function renderTitle(props) {
698
+ switch (props.titleSize) {
699
+ case 'big':
700
+ return jsxRuntime.jsx(Text__default["default"].Headline, {
701
+ as: "h2",
702
+ title: props.title,
703
+ truncate: props.truncate,
704
+ children: props.title
705
+ });
706
+
707
+ default:
708
+ return jsxRuntime.jsx(Text__default["default"].Subheadline, {
709
+ as: "h4",
710
+ title: props.title,
711
+ truncate: props.truncate,
712
+ children: props.title
713
+ });
714
+ }
715
+ };
716
+
717
+ var renderSubtitle = function renderSubtitle(subtitle) {
718
+ var truncate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
719
+
720
+ if (!subtitle) {
721
+ return null;
722
+ }
723
+
724
+ if ( /*#__PURE__*/react$1.isValidElement(subtitle)) {
725
+ return jsxRuntime.jsx(SubtitleWrapper, {
726
+ children: subtitle
727
+ });
728
+ }
729
+
730
+ return jsxRuntime.jsx(SubtitleWrapper, {
731
+ children: jsxRuntime.jsx(Text__default["default"].Body, {
732
+ title: subtitle,
733
+ truncate: truncate,
734
+ children: subtitle
735
+ })
736
+ });
737
+ };
738
+
739
+ var _ref$3 = {
740
+ name: "d3v9zr",
741
+ styles: "overflow:hidden"
742
+ } ;
743
+
744
+ var PageHeaderTitle = function PageHeaderTitle(props) {
745
+ var titleSize = props.titleSize,
746
+ title = props.title,
747
+ truncate = props.truncate;
748
+ var renderedTitle = renderTitle({
749
+ titleSize: titleSize,
750
+ title: title,
751
+ truncate: truncate
752
+ });
753
+ var renderedSubtitle = renderSubtitle(props.subtitle, truncate);
754
+ return jsxRuntime.jsxs("div", {
755
+ css: _ref$3,
756
+ children: [renderedTitle, renderedSubtitle]
757
+ });
758
+ };
759
+
760
+ PageHeaderTitle.propTypes = {};
761
+ PageHeaderTitle.displayName = 'PageHeaderTitle';
762
+ PageHeaderTitle.defaultProps = defaultProps$a;
920
763
 
921
764
  var PageHeader = function PageHeader(props) {
922
765
  return jsxRuntime.jsxs("div", {
@@ -932,6 +775,16 @@ var PageHeader = function PageHeader(props) {
932
775
  PageHeader.propTypes = {};
933
776
  PageHeader.displayName = 'PageHeader';
934
777
 
778
+ var ContentWrapper = _styled__default["default"]("div", {
779
+ target: "e1b7jwn01"
780
+ } )("flex:1;flex-basis:0;padding:", designSystem.customProperties.spacingM, ";overflow:auto;" + ("" ));
781
+ var PageWrapper = _styled__default["default"]("div", {
782
+ target: "e1b7jwn00"
783
+ } )({
784
+ name: "kdbhus",
785
+ styles: "height:100%;display:flex;flex-direction:column"
786
+ } );
787
+
935
788
  var InfoModalPage = function InfoModalPage(props) {
936
789
  return jsxRuntime.jsxs(ModalPage, {
937
790
  title: props.title,
@@ -955,6 +808,71 @@ var InfoModalPage = function InfoModalPage(props) {
955
808
  InfoModalPage.propTypes = {};
956
809
  InfoModalPage.displayName = 'InfoModalPage';
957
810
 
811
+ function ownKeys$3(object, enumerableOnly) { var keys = _Object$keys__default["default"](object); if (_Object$getOwnPropertySymbols__default["default"]) { var symbols = _Object$getOwnPropertySymbols__default["default"](object); enumerableOnly && (symbols = _filterInstanceProperty__default["default"](symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor__default["default"](object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
812
+
813
+ function _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var _context, _context2; var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys$3(Object(source), !0)).call(_context, function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](target, _Object$getOwnPropertyDescriptors__default["default"](source)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys$3(Object(source))).call(_context2, function (key) { _Object$defineProperty__default["default"](target, key, _Object$getOwnPropertyDescriptor__default["default"](source, key)); }); } return target; }
814
+ var primaryDefaultProps = {
815
+ label: i18n.sharedMessages.confirm,
816
+ isDisabled: false,
817
+ dataAttributes: {}
818
+ };
819
+
820
+ var useFormattedLabel = function useFormattedLabel(label) {
821
+ var intl = reactIntl.useIntl();
822
+ return typeof label === 'string' ? label : intl.formatMessage(label);
823
+ };
824
+
825
+ var FormPrimaryButton = function FormPrimaryButton(props) {
826
+ var label = useFormattedLabel(props.label);
827
+ return jsxRuntime.jsx(PrimaryButton__default["default"], _objectSpread$3({
828
+ label: label,
829
+ onClick: props.onClick,
830
+ isDisabled: props.isDisabled
831
+ }, filterDataAttributes(props.dataAttributes)));
832
+ };
833
+
834
+ FormPrimaryButton.propTypes = {};
835
+ FormPrimaryButton.displayName = 'FormPrimaryButton';
836
+ FormPrimaryButton.defaultProps = primaryDefaultProps;
837
+ var secondaryDefaultProps = {
838
+ label: i18n.sharedMessages.cancel,
839
+ isDisabled: false,
840
+ dataAttributes: {}
841
+ };
842
+
843
+ var FormSecondaryButton = function FormSecondaryButton(props) {
844
+ var label = useFormattedLabel(props.label);
845
+ return jsxRuntime.jsx(SecondaryButton__default["default"], _objectSpread$3({
846
+ label: label,
847
+ onClick: props.onClick,
848
+ isDisabled: props.isDisabled,
849
+ iconLeft: props.iconLeft
850
+ }, filterDataAttributes(props.dataAttributes)));
851
+ };
852
+
853
+ FormSecondaryButton.propTypes = {};
854
+ FormSecondaryButton.displayName = 'FormSecondaryButton';
855
+ FormSecondaryButton.defaultProps = secondaryDefaultProps;
856
+ var deleteDefaultProps = {
857
+ label: i18n.sharedMessages.delete,
858
+ isDisabled: false,
859
+ dataAttributes: {}
860
+ };
861
+
862
+ var FormDeleteButton = function FormDeleteButton(props) {
863
+ var label = useFormattedLabel(props.label);
864
+ return jsxRuntime.jsx(IconButton__default["default"], _objectSpread$3({
865
+ icon: jsxRuntime.jsx(icons.BinLinearIcon, {}),
866
+ label: label,
867
+ onClick: props.onClick,
868
+ isDisabled: props.isDisabled
869
+ }, filterDataAttributes(props.dataAttributes)));
870
+ };
871
+
872
+ FormDeleteButton.propTypes = {};
873
+ FormDeleteButton.displayName = 'FormDeleteButton';
874
+ FormDeleteButton.defaultProps = deleteDefaultProps;
875
+
958
876
  var CustomFormModalPage = function CustomFormModalPage(props) {
959
877
  return jsxRuntime.jsxs(ModalPage, {
960
878
  title: props.title,
@@ -990,7 +908,7 @@ CustomFormModalPage.FormDeleteButton = FormDeleteButton; // This is a convenienc
990
908
 
991
909
  CustomFormModalPage.Intl = i18n.sharedMessages;
992
910
 
993
- var defaultProps$5 = {
911
+ var defaultProps$9 = {
994
912
  hideControls: false
995
913
  };
996
914
 
@@ -1012,7 +930,8 @@ var FormModalPage = function FormModalPage(props) {
1012
930
  label: props.labelSecondaryButton,
1013
931
  onClick: props.onSecondaryButtonClick,
1014
932
  isDisabled: props.isSecondaryButtonDisabled,
1015
- dataAttributes: props.dataAttributesSecondaryButton
933
+ dataAttributes: props.dataAttributesSecondaryButton,
934
+ iconLeft: props.iconLeftSecondaryButton
1016
935
  }), jsxRuntime.jsx(CustomFormModalPage.FormPrimaryButton, {
1017
936
  label: props.labelPrimaryButton,
1018
937
  onClick: props.onPrimaryButtonClick,
@@ -1026,12 +945,52 @@ var FormModalPage = function FormModalPage(props) {
1026
945
 
1027
946
  FormModalPage.propTypes = {};
1028
947
  FormModalPage.displayName = 'FormModalPage';
1029
- FormModalPage.defaultProps = defaultProps$5; // This is a convenience proxy export to expose pre-defined Intl messages defined in the `@commercetools-frontend/i18n` package.
948
+ FormModalPage.defaultProps = defaultProps$9; // This is a convenience proxy export to expose pre-defined Intl messages defined in the `@commercetools-frontend/i18n` package.
1030
949
  // The Intl messages can be used for button labels.
1031
950
 
1032
951
  FormModalPage.Intl = i18n.sharedMessages;
1033
952
 
1034
- var defaultProps$4 = {
953
+ var TabControls = _styled__default["default"]("div", {
954
+ target: "elpldre1"
955
+ } )("margin-top:", designSystem.customProperties.spacingS, ";" + ("" ));
956
+
957
+ var _ref$2 = {
958
+ name: "1nrstx4",
959
+ styles: "display:flex;align-items:flex-end;justify-content:space-between"
960
+ } ;
961
+
962
+ var ControlsContainter = function ControlsContainter(props) {
963
+ return jsxRuntime.jsxs("div", {
964
+ css: _ref$2,
965
+ children: [jsxRuntime.jsx(TabControls, {
966
+ role: "tablist",
967
+ children: props.tabControls
968
+ }), props.formControls]
969
+ });
970
+ };
971
+
972
+ ControlsContainter.propTypes = {};
973
+ ControlsContainter.displayName = 'ControlsContainter';
974
+
975
+ var TabularPageContainer = function TabularPageContainer(props) {
976
+ return jsxRuntime.jsx("div", {
977
+ css: /*#__PURE__*/react.css("background-color:", props.color === 'surface' ? designSystem.customProperties.colorSurface : designSystem.customProperties.colorNeutral95, ";padding:", designSystem.customProperties.spacingM, " ", designSystem.customProperties.spacingM, " 0;border-bottom:1px ", designSystem.customProperties.colorNeutral, " solid;" + ("" ), "" ),
978
+ children: props.children
979
+ });
980
+ };
981
+
982
+ TabularPageContainer.propTypes = {};
983
+ TabularPageContainer.displayName = 'TabularPageContainer';
984
+ var defaultProps$8 = {
985
+ color: 'surface'
986
+ };
987
+ TabularPageContainer.defaultProps = defaultProps$8;
988
+
989
+ var FormControlsContainer = _styled__default["default"]("div", {
990
+ target: "elpldre0"
991
+ } )("margin-bottom:", designSystem.customProperties.spacingM, ";" + ("" ));
992
+
993
+ var defaultProps$7 = {
1035
994
  hideControls: false
1036
995
  };
1037
996
 
@@ -1072,7 +1031,7 @@ var TabularModalPage = function TabularModalPage(props) {
1072
1031
 
1073
1032
  TabularModalPage.propTypes = {};
1074
1033
  TabularModalPage.displayName = 'TabularModalPage';
1075
- TabularModalPage.defaultProps = defaultProps$4; // Static export of pre-configured form control buttons to easily re-use
1034
+ TabularModalPage.defaultProps = defaultProps$7; // Static export of pre-configured form control buttons to easily re-use
1076
1035
  // them in the custom controls.
1077
1036
 
1078
1037
  TabularModalPage.FormPrimaryButton = FormPrimaryButton;
@@ -1082,7 +1041,7 @@ TabularModalPage.FormDeleteButton = FormDeleteButton; // This is a convenience p
1082
1041
 
1083
1042
  TabularModalPage.Intl = i18n.sharedMessages;
1084
1043
 
1085
- var defaultProps$3 = {
1044
+ var defaultProps$6 = {
1086
1045
  color: 'surface',
1087
1046
  previousPathLabel: messages$2.back
1088
1047
  };
@@ -1105,7 +1064,7 @@ var PageTopBar = function PageTopBar(props) {
1105
1064
 
1106
1065
  PageTopBar.propTypes = {};
1107
1066
  PageTopBar.displayName = 'PageTopBar';
1108
- PageTopBar.defaultProps = defaultProps$3;
1067
+ PageTopBar.defaultProps = defaultProps$6;
1109
1068
 
1110
1069
  var DetailPageContainer = _styled__default["default"]("div", {
1111
1070
  target: "etkdonc0"
@@ -1114,7 +1073,7 @@ var DetailPageContainer = _styled__default["default"]("div", {
1114
1073
  // does not recognize the object shape.
1115
1074
 
1116
1075
 
1117
- var defaultProps$2 = {
1076
+ var defaultProps$5 = {
1118
1077
  hideControls: false
1119
1078
  };
1120
1079
 
@@ -1144,7 +1103,7 @@ var CustomFormDetailPage = function CustomFormDetailPage(props) {
1144
1103
 
1145
1104
  CustomFormDetailPage.propTypes = {};
1146
1105
  CustomFormDetailPage.displayName = 'CustomFormDetailPage';
1147
- CustomFormDetailPage.defaultProps = defaultProps$2; // Static export of pre-configured page header title component to easily
1106
+ CustomFormDetailPage.defaultProps = defaultProps$5; // Static export of pre-configured page header title component to easily
1148
1107
  // use as part of a custom title row
1149
1108
 
1150
1109
  CustomFormDetailPage.PageHeaderTitle = PageHeaderTitle; // Static export of pre-configured form control buttons to easily re-use
@@ -1157,7 +1116,7 @@ CustomFormDetailPage.FormDeleteButton = FormDeleteButton; // This is a convenien
1157
1116
 
1158
1117
  CustomFormDetailPage.Intl = i18n.sharedMessages;
1159
1118
 
1160
- var defaultProps$1 = {
1119
+ var defaultProps$4 = {
1161
1120
  hideControls: false
1162
1121
  };
1163
1122
 
@@ -1174,7 +1133,8 @@ var FormDetailPage = function FormDetailPage(props) {
1174
1133
  label: props.labelSecondaryButton,
1175
1134
  onClick: props.onSecondaryButtonClick,
1176
1135
  isDisabled: props.isSecondaryButtonDisabled,
1177
- dataAttributes: props.dataAttributesSecondaryButton
1136
+ dataAttributes: props.dataAttributesSecondaryButton,
1137
+ iconLeft: props.iconLeftSecondaryButton
1178
1138
  }), jsxRuntime.jsx(CustomFormDetailPage.FormPrimaryButton, {
1179
1139
  label: props.labelPrimaryButton,
1180
1140
  onClick: props.onPrimaryButtonClick,
@@ -1188,7 +1148,7 @@ var FormDetailPage = function FormDetailPage(props) {
1188
1148
 
1189
1149
  FormDetailPage.propTypes = {};
1190
1150
  FormDetailPage.displayName = 'FormDetailPage';
1191
- FormDetailPage.defaultProps = defaultProps$1; // This is a convenience proxy export to expose pre-defined Intl messages defined in the `@commercetools-frontend/i18n` package.
1151
+ FormDetailPage.defaultProps = defaultProps$4; // This is a convenience proxy export to expose pre-defined Intl messages defined in the `@commercetools-frontend/i18n` package.
1192
1152
  // The Intl messages can be used for button labels.
1193
1153
  // Static export of pre-configured page header title component to easily
1194
1154
  // use as part of a custom title row
@@ -1215,7 +1175,7 @@ InfoDetailPage.displayName = 'InfoDetailPage'; // Static export of pre-configure
1215
1175
 
1216
1176
  InfoDetailPage.PageHeaderTitle = PageHeaderTitle;
1217
1177
 
1218
- var defaultProps = {
1178
+ var defaultProps$3 = {
1219
1179
  hideControls: false
1220
1180
  };
1221
1181
 
@@ -1251,7 +1211,7 @@ var TabularDetailPage = function TabularDetailPage(props) {
1251
1211
 
1252
1212
  TabularDetailPage.propTypes = {};
1253
1213
  TabularDetailPage.displayName = 'TabularDetailPage';
1254
- TabularDetailPage.defaultProps = defaultProps; // Static export of pre-configured form control buttons to easily re-use
1214
+ TabularDetailPage.defaultProps = defaultProps$3; // Static export of pre-configured form control buttons to easily re-use
1255
1215
  // them in the custom controls.
1256
1216
 
1257
1217
  TabularDetailPage.FormPrimaryButton = FormPrimaryButton;
@@ -1343,6 +1303,157 @@ PublicPageLayout.defaultProps = {
1343
1303
  contentScale: 'normal'
1344
1304
  };
1345
1305
 
1306
+ var MainPageContainer = _styled__default["default"]("div", {
1307
+ target: "ev8m2jf2"
1308
+ } )("padding:", designSystem.customProperties.spacingL, ";" + ("" ));
1309
+ var Divider = _styled__default["default"]("hr", {
1310
+ target: "ev8m2jf1"
1311
+ } )("background-color:", designSystem.customProperties.colorNeutral60, ";height:1px;border:0;" + ("" ));
1312
+ var MainPageContent = _styled__default["default"]("div", {
1313
+ target: "ev8m2jf0"
1314
+ } )({
1315
+ name: "1qmr6ab",
1316
+ styles: "overflow:auto"
1317
+ } );
1318
+
1319
+ var defaultProps$2 = {
1320
+ hideControls: false
1321
+ };
1322
+
1323
+ var CustomFormMainPage = function CustomFormMainPage(props) {
1324
+ var _props$title;
1325
+ return jsxRuntime.jsx(PageWrapper, {
1326
+ children: jsxRuntime.jsx(MainPageContainer, {
1327
+ children: jsxRuntime.jsxs(Spacings__default["default"].Stack, {
1328
+ scale: "l",
1329
+ children: [props.customTitleRow || jsxRuntime.jsx(PageHeaderTitle, {
1330
+ title: (_props$title = props.title) !== null && _props$title !== void 0 ? _props$title : '',
1331
+ subtitle: props.subtitle,
1332
+ titleSize: "big"
1333
+ }), !props.hideControls && props.formControls && jsxRuntime.jsx(Spacings__default["default"].Inline, {
1334
+ justifyContent: "flex-end",
1335
+ children: props.formControls
1336
+ }), jsxRuntime.jsx(Divider, {}), jsxRuntime.jsx(MainPageContent, {
1337
+ children: props.children
1338
+ })]
1339
+ })
1340
+ })
1341
+ });
1342
+ };
1343
+
1344
+ CustomFormMainPage.propTypes = {};
1345
+ CustomFormMainPage.displayName = 'CustomFormMainPage';
1346
+ CustomFormMainPage.defaultProps = defaultProps$2; // Static export of pre-configured page header title component to easily
1347
+ // use as part of a custom title row
1348
+
1349
+ CustomFormMainPage.PageHeaderTitle = PageHeaderTitle; // Static export of pre-configured form control buttons to easily re-use
1350
+ // them in the custom controls.
1351
+
1352
+ CustomFormMainPage.FormPrimaryButton = FormPrimaryButton;
1353
+ CustomFormMainPage.FormSecondaryButton = FormSecondaryButton;
1354
+ CustomFormMainPage.FormDeleteButton = FormDeleteButton; // This is a convenience proxy export to expose pre-defined Intl messages defined in the `@commercetools-frontend/i18n` package.
1355
+ // The Intl messages can be used for button labels.
1356
+
1357
+ CustomFormMainPage.Intl = i18n.sharedMessages;
1358
+
1359
+ var defaultProps$1 = {
1360
+ hideControls: false
1361
+ };
1362
+
1363
+ var FormMainPage = function FormMainPage(props) {
1364
+ return jsxRuntime.jsx(CustomFormMainPage, {
1365
+ title: props.title,
1366
+ subtitle: props.subtitle,
1367
+ customTitleRow: props.customTitleRow,
1368
+ hideControls: props.hideControls,
1369
+ formControls: jsxRuntime.jsxs(jsxRuntime.Fragment, {
1370
+ children: [jsxRuntime.jsx(CustomFormMainPage.FormSecondaryButton, {
1371
+ label: props.labelSecondaryButton,
1372
+ onClick: props.onSecondaryButtonClick,
1373
+ isDisabled: props.isSecondaryButtonDisabled,
1374
+ dataAttributes: props.dataAttributesSecondaryButton,
1375
+ iconLeft: props.iconLeftSecondaryButton
1376
+ }), jsxRuntime.jsx(CustomFormMainPage.FormPrimaryButton, {
1377
+ label: props.labelPrimaryButton,
1378
+ onClick: props.onPrimaryButtonClick,
1379
+ isDisabled: props.isPrimaryButtonDisabled,
1380
+ dataAttributes: props.dataAttributesPrimaryButton
1381
+ })]
1382
+ }),
1383
+ children: props.children
1384
+ });
1385
+ };
1386
+
1387
+ FormMainPage.propTypes = {};
1388
+ FormMainPage.displayName = 'FormMainPage';
1389
+ FormMainPage.defaultProps = defaultProps$1; // Static export of pre-configured page header title component to easily
1390
+ // use as part of a custom title row
1391
+
1392
+ FormMainPage.PageHeaderTitle = PageHeaderTitle; // This is a convenience proxy export to expose pre-defined Intl messages defined in the `@commercetools-frontend/i18n` package.
1393
+ // The Intl messages can be used for button labels.
1394
+
1395
+ FormMainPage.Intl = i18n.sharedMessages;
1396
+
1397
+ var InfoMainPage = function InfoMainPage(props) {
1398
+ return jsxRuntime.jsx(CustomFormMainPage, {
1399
+ title: props.title,
1400
+ subtitle: props.subtitle,
1401
+ customTitleRow: props.customTitleRow,
1402
+ children: props.children
1403
+ });
1404
+ };
1405
+
1406
+ InfoMainPage.propTypes = {};
1407
+ InfoMainPage.displayName = 'InfoMainPage'; // Static export of pre-configured page header title component to easily
1408
+ // use as part of a custom title row
1409
+
1410
+ InfoMainPage.PageHeaderTitle = PageHeaderTitle;
1411
+
1412
+ var defaultProps = {
1413
+ hideControls: false
1414
+ };
1415
+
1416
+ var TabularMainPage = function TabularMainPage(props) {
1417
+ var _props$title;
1418
+ return jsxRuntime.jsxs(PageWrapper, {
1419
+ children: [jsxRuntime.jsx(TabularPageContainer, {
1420
+ color: "surface",
1421
+ children: jsxRuntime.jsxs(Spacings__default["default"].Stack, {
1422
+ children: [props.customTitleRow || jsxRuntime.jsx(PageHeaderTitle, {
1423
+ title: (_props$title = props.title) !== null && _props$title !== void 0 ? _props$title : '',
1424
+ subtitle: props.subtitle,
1425
+ titleSize: "big"
1426
+ }), jsxRuntime.jsx(ControlsContainter, {
1427
+ tabControls: props.tabControls,
1428
+ formControls: jsxRuntime.jsx(FormControlsContainer, {
1429
+ children: !props.hideControls && props.formControls && jsxRuntime.jsx(Spacings__default["default"].Inline, {
1430
+ alignItems: "flex-end",
1431
+ children: props.formControls
1432
+ })
1433
+ })
1434
+ })]
1435
+ })
1436
+ }), jsxRuntime.jsx(ContentWrapper, {
1437
+ css: /*#__PURE__*/react.css("background-color:", designSystem.customProperties.colorNeutral95, ";" + ("" ), "" ),
1438
+ children: props.children
1439
+ })]
1440
+ });
1441
+ };
1442
+
1443
+ TabularMainPage.propTypes = {};
1444
+ TabularMainPage.displayName = 'TabularMainPage';
1445
+ TabularMainPage.defaultProps = defaultProps; // Static export of pre-configured form control buttons to easily re-use
1446
+ // them in the custom controls.
1447
+
1448
+ TabularMainPage.FormPrimaryButton = FormPrimaryButton;
1449
+ TabularMainPage.FormSecondaryButton = FormSecondaryButton;
1450
+ TabularMainPage.FormDeleteButton = FormDeleteButton; // Static export of pre-configured page header title component to easily
1451
+ // use as part of a custom title row
1452
+
1453
+ TabularMainPage.PageHeaderTitle = PageHeaderTitle; // This is a convenience proxy export to expose pre-defined Intl messages defined in the `@commercetools-frontend/i18n` package.
1454
+
1455
+ TabularMainPage.Intl = i18n.sharedMessages;
1456
+
1346
1457
  var _ref$1 = {
1347
1458
  name: "zl1inp",
1348
1459
  styles: "display:flex;justify-content:center"
@@ -1665,12 +1776,15 @@ var useModalState = function useModalState() {
1665
1776
 
1666
1777
  exports.ConfirmationDialog = ConfirmationDialog;
1667
1778
  exports.CustomFormDetailPage = CustomFormDetailPage;
1779
+ exports.CustomFormMainPage = CustomFormMainPage;
1668
1780
  exports.CustomFormModalPage = CustomFormModalPage;
1669
1781
  exports.FormDetailPage = FormDetailPage;
1670
1782
  exports.FormDialog = FormDialog;
1783
+ exports.FormMainPage = FormMainPage;
1671
1784
  exports.FormModalPage = FormModalPage;
1672
1785
  exports.InfoDetailPage = InfoDetailPage;
1673
1786
  exports.InfoDialog = InfoDialog;
1787
+ exports.InfoMainPage = InfoMainPage;
1674
1788
  exports.InfoModalPage = InfoModalPage;
1675
1789
  exports.MaintenancePageLayout = MaintenancePageLayout;
1676
1790
  exports.PageNotFound = PageNotFound;