@bigbinary/neeto-molecules 1.7.0-beta.0 → 1.7.0-beta.1

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.
@@ -3,13 +3,14 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
+ var classnames = require('classnames');
6
7
  var neetoCist = require('@bigbinary/neeto-cist');
7
- var ramda = require('ramda');
8
- var general = require('@bigbinary/neeto-commons-frontend/utils/general');
8
+ var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
9
9
  var neetoIcons = require('@bigbinary/neeto-icons');
10
10
  var neetoui = require('@bigbinary/neetoui');
11
+ var ramda = require('ramda');
12
+ var general = require('@bigbinary/neeto-commons-frontend/utils/general');
11
13
  var reactI18next = require('react-i18next');
12
- var classnames = require('classnames');
13
14
  var dnd = require('@hello-pangea/dnd');
14
15
  var constants = require('@bigbinary/neeto-commons-frontend/constants');
15
16
  var withT = require('@bigbinary/neeto-commons-frontend/react-utils/withT');
@@ -116,18 +117,6 @@ function _defineProperty(obj, key, value) {
116
117
  return obj;
117
118
  }
118
119
 
119
- var e=[],t=[];function n(n,r){if(n&&"undefined"!=typeof document){var a,s=!0===r.prepend?"prepend":"append",d=!0===r.singleTag,i="string"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName("head")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c();}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n));}function c(){var e=document.createElement("style");if(e.setAttribute("type","text/css"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a="prepend"===s?"afterbegin":"beforeend";return i.insertAdjacentElement(a,e),e}}
120
-
121
- var css = ":root{--neeto-molecule-builder-left-sidebar-width:360px;--neeto-molecule-builder-left-sidebar-header-height:70px;--neeto-molecule-builder-left-sidebar-search-height:40px;--neeto-molecule-builder-right-sidebar-width:420px}.neeto-molecules-builder-elements-list-panel{height:100%;min-width:360px;min-width:var(--neeto-molecule-builder-left-sidebar-width);width:360px;width:var(--neeto-molecule-builder-left-sidebar-width)}.neeto-molecules-builder-questions-list-panel__scroll{height:calc(100% - 70px);height:calc(100% - var(--neeto-molecule-builder-left-sidebar-header-height));overflow-y:auto;padding:8px 24px}.neeto-molecules-builder-questions-list-panel__scroll.neeto-molecules-builder-questions-list-panel__scroll--small{height:calc(100% - 110px);height:calc(100% - var(--neeto-molecule-builder-left-sidebar-header-height) - var(--neeto-molecule-builder-left-sidebar-search-height))}.neeto-molecules-builder-elements-list{margin-bottom:24px}.neeto-molecules-builder-elements-list .neeto-ui-accordion__wrapper{border-bottom:none}.neeto-molecules-builder-elements-list .neeto-ui-accordion__wrapper .neeto-ui-accordion__item{padding:12px 0}.neeto-molecules-builder-elements-list .neeto-ui-accordion__wrapper .neeto-ui-accordion__item .neeto-ui-accordion__item-handle{color:rgb(var(--neeto-ui-gray-600));font-size:var(--neeto-ui-text-xs);font-weight:var(--neeto-ui-font-semibold);text-transform:uppercase;transition:var(--neeto-ui-transition)}.neeto-molecules-builder-elements-list .neeto-ui-accordion__wrapper .neeto-ui-accordion__item .neeto-ui-accordion__item-toggle-icon{transform:rotate(90deg)!important}.neeto-molecules-builder-elements-list .neeto-ui-accordion__wrapper .neeto-ui-accordion__item:hover{background-color:transparent}.neeto-molecules-builder-elements-list .neeto-ui-accordion__wrapper .neeto-ui-accordion__item.neeto-ui-accordion__item--open .neeto-ui-accordion__item-handle,.neeto-molecules-builder-elements-list .neeto-ui-accordion__wrapper .neeto-ui-accordion__item:hover .neeto-ui-accordion__item-handle{color:rgb(var(--neeto-ui-gray-800))}.neeto-molecules-builder-elements-list .neeto-ui-accordion__wrapper .neeto-ui-accordion__item.neeto-ui-accordion__item--open .neeto-ui-accordion__item-toggle-icon{transform:rotate(270deg)!important}.neeto-molecules-builder-elements-list .neeto-ui-accordion__wrapper .neeto-ui-accordion__drop{padding:0}.neeto-molecules-builder-element-properties-panel{height:100%;min-width:420px;min-width:var(--neeto-molecule-builder-right-sidebar-width);padding-left:24px;padding-top:24px;width:420px;width:var(--neeto-molecule-builder-right-sidebar-width)}.neeto-molecules-builder-element--active{border-color:rgb(var(--neeto-ui-primary-500))!important;box-shadow:0 0 0 1px rgb(var(--neeto-ui-primary-500))!important}";
122
- n(css,{});
123
-
124
- var Body = function Body(props) {
125
- return /*#__PURE__*/React__default["default"].createElement("div", {
126
- className: "neeto-molecules-builder-questions-list-panel__scroll neeto-molecules-builder-questions-list-panel__scroll--small",
127
- "data-testid": props["data-testid"]
128
- }, props.children);
129
- };
130
-
131
120
  function _extends() {
132
121
  _extends = Object.assign ? Object.assign.bind() : function (target) {
133
122
  for (var i = 1; i < arguments.length; i++) {
@@ -143,6 +132,51 @@ function _extends() {
143
132
  return _extends.apply(this, arguments);
144
133
  }
145
134
 
135
+ function _objectWithoutPropertiesLoose(source, excluded) {
136
+ if (source == null) return {};
137
+ var target = {};
138
+ var sourceKeys = Object.keys(source);
139
+ var key, i;
140
+ for (i = 0; i < sourceKeys.length; i++) {
141
+ key = sourceKeys[i];
142
+ if (excluded.indexOf(key) >= 0) continue;
143
+ target[key] = source[key];
144
+ }
145
+ return target;
146
+ }
147
+
148
+ function _objectWithoutProperties(source, excluded) {
149
+ if (source == null) return {};
150
+ var target = _objectWithoutPropertiesLoose(source, excluded);
151
+ var key, i;
152
+ if (Object.getOwnPropertySymbols) {
153
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
154
+ for (i = 0; i < sourceSymbolKeys.length; i++) {
155
+ key = sourceSymbolKeys[i];
156
+ if (excluded.indexOf(key) >= 0) continue;
157
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
158
+ target[key] = source[key];
159
+ }
160
+ }
161
+ return target;
162
+ }
163
+
164
+ var e=[],t=[];function n(n,r){if(n&&"undefined"!=typeof document){var a,s=!0===r.prepend?"prepend":"append",d=!0===r.singleTag,i="string"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName("head")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c();}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n));}function c(){var e=document.createElement("style");if(e.setAttribute("type","text/css"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a="prepend"===s?"afterbegin":"beforeend";return i.insertAdjacentElement(a,e),e}}
165
+
166
+ var css = ":root{--neeto-molecule-builder-left-sidebar-width:288px;--neeto-molecule-builder-left-sidebar-width-lg:360px;--neeto-molecule-builder-left-sidebar-header-height:70px;--neeto-molecule-builder-left-sidebar-search-height:40px;--neeto-molecule-builder-right-sidebar-width:420px}.neeto-molecules-builder-elements-list-panel__wrapper{height:100%;min-width:360px;min-width:var(--neeto-molecule-builder-left-sidebar-width-lg);position:relative;transition:all .15s;width:360px;width:var(--neeto-molecule-builder-left-sidebar-width-lg);z-index:101}@media screen and (min-width:768px) and (max-width:1279px){.neeto-molecules-builder-elements-list-panel__wrapper{min-width:288px;min-width:var(--neeto-molecule-builder-left-sidebar-width);width:288px;width:var(--neeto-molecule-builder-left-sidebar-width)}}@media screen and (max-width:767px){.neeto-molecules-builder-elements-list-panel__wrapper{left:0;position:fixed;top:0;transition:none}}@media screen and (max-width:576px){.neeto-molecules-builder-elements-list-panel__wrapper{height:100%;max-width:100%;min-width:0;width:100%}}.neeto-molecules-builder-elements-list-panel__wrapper--collapsed{max-width:0;min-width:0;width:0}.neeto-molecules-builder-elements-list-panel__wrapper--collapsed .neeto-molecules-builder-elements-list-panel__toggler{transform:scale(-1)}@media screen and (max-width:767px){.neeto-molecules-builder-elements-list-panel__wrapper--collapsed .neeto-molecules-builder-elements-list-panel__toggler{top:72px}}@media screen and (max-width:576px){.neeto-molecules-builder-elements-list-panel__wrapper--collapsed .neeto-molecules-builder-elements-list-panel__toggler{left:8px;right:auto}}.neeto-molecules-builder-elements-list-panel__container{height:100%;overflow:hidden;width:100%}.neeto-molecules-builder-elements-list-panel{height:100%;min-width:360px;min-width:var(--neeto-molecule-builder-left-sidebar-width-lg);width:360px;width:var(--neeto-molecule-builder-left-sidebar-width-lg)}@media screen and (min-width:768px) and (max-width:1279px){.neeto-molecules-builder-elements-list-panel{min-width:288px;min-width:var(--neeto-molecule-builder-left-sidebar-width);width:288px;width:var(--neeto-molecule-builder-left-sidebar-width)}}@media screen and (max-width:576px){.neeto-molecules-builder-elements-list-panel{padding-top:24px;width:100%}}.neeto-molecules-builder-elements-list-panel__toggler{flex-shrink:0;left:calc(100% + 8px);position:absolute;top:8px;transition:color .3s ease-in-out}@media screen and (min-width:1024px){.neeto-molecules-builder-elements-list-panel__toggler{opacity:0;pointer-events:none}}@media screen and (max-width:576px){.neeto-molecules-builder-elements-list-panel__toggler{left:24px}}.neeto-molecules-builder-questions-list-panel__scroll{height:calc(100% - 70px);height:calc(100% - var(--neeto-molecule-builder-left-sidebar-header-height));overflow-y:auto;padding:8px 24px;width:100%}.neeto-molecules-builder-questions-list-panel__scroll.neeto-molecules-builder-questions-list-panel__scroll--small{height:calc(100% - 110px);height:calc(100% - var(--neeto-molecule-builder-left-sidebar-header-height) - var(--neeto-molecule-builder-left-sidebar-search-height))}.neeto-molecules-builder-element-properties-panel__wrapper{height:100%;min-width:420px;min-width:var(--neeto-molecule-builder-right-sidebar-width);position:relative;transition:all .15s;width:420px;width:var(--neeto-molecule-builder-right-sidebar-width);z-index:101}.neeto-molecules-builder-element-properties-panel__wrapper .neeto-molecules-builder-properties-panel__close{opacity:0;pointer-events:none;position:absolute;right:8px;top:8px}@media screen and (max-width:1279px){.neeto-molecules-builder-element-properties-panel__wrapper .neeto-molecules-builder-properties-panel__close{opacity:1;pointer-events:all}.neeto-molecules-builder-element-properties-panel__wrapper{position:fixed;right:0;top:0;transition:none}}@media screen and (max-width:576px){.neeto-molecules-builder-element-properties-panel__wrapper{height:100%;max-width:100%;min-width:0;width:100%}}.neeto-molecules-builder-element-properties-panel__wrapper--collapsed{max-width:0;min-width:0;width:0}.neeto-molecules-builder-element-properties-panel{display:flex;flex-direction:column;height:100%;min-width:0;overflow-y:auto;padding-left:24px;padding-top:24px;width:100%}.neeto-molecules-builder-element-properties-panel--collapsed{max-width:0;min-width:0;padding:0;width:0}@media screen and (max-width:1279px){.neeto-molecules-builder-element-properties-panel{padding-top:48px}}.neeto-molecules-builder-element--active{border-color:rgb(var(--neeto-ui-primary-500))!important;box-shadow:0 0 0 1px rgb(var(--neeto-ui-primary-500))!important}.neeto-molecules-builder-panel__backdrop{background-color:rgba(var(--neeto-ui-black),.4);display:none;height:100%;left:0;position:fixed;top:0;visibility:hidden;width:100%;z-index:101}@media screen and (max-width:767px){.neeto-molecules-builder-panel__backdrop{display:block;visibility:visible}}@media screen and (max-width:1279px){.neeto-molecules-builder-panel__backdrop--extended{display:block;visibility:visible}}";
167
+ n(css,{});
168
+
169
+ var _excluded$4 = ["size"];
170
+ var Body = function Body(_ref) {
171
+ var size = _ref.size,
172
+ props = _objectWithoutProperties(_ref, _excluded$4);
173
+ return /*#__PURE__*/React__default["default"].createElement("div", _extends({}, props, {
174
+ className: classnames__default["default"]("neeto-molecules-builder-questions-list-panel__scroll", {
175
+ "neeto-molecules-builder-questions-list-panel__scroll--small": size === "small"
176
+ })
177
+ }));
178
+ };
179
+
146
180
  var Element = function Element(_ref) {
147
181
  var label = _ref.label,
148
182
  Icon = _ref.icon,
@@ -251,9 +285,8 @@ var ElementList = function ElementList(_ref) {
251
285
  value: searchString,
252
286
  onChange: general.withEventTargetValue(setSearchString)
253
287
  })), /*#__PURE__*/React__default["default"].createElement(Body, {
254
- "data-testid": "elements-container"
255
- }, /*#__PURE__*/React__default["default"].createElement("div", {
256
- className: "neeto-molecules-builder-questions-list-panel__scroll--small"
288
+ "data-testid": "elements-container",
289
+ size: "small"
257
290
  }, filteredSections.map(function (section) {
258
291
  return /*#__PURE__*/React__default["default"].createElement(Section, {
259
292
  onSelect: onSelect,
@@ -262,38 +295,9 @@ var ElementList = function ElementList(_ref) {
262
295
  key: section.key,
263
296
  title: section.title
264
297
  });
265
- }))));
298
+ })));
266
299
  };
267
300
 
268
- function _objectWithoutPropertiesLoose(source, excluded) {
269
- if (source == null) return {};
270
- var target = {};
271
- var sourceKeys = Object.keys(source);
272
- var key, i;
273
- for (i = 0; i < sourceKeys.length; i++) {
274
- key = sourceKeys[i];
275
- if (excluded.indexOf(key) >= 0) continue;
276
- target[key] = source[key];
277
- }
278
- return target;
279
- }
280
-
281
- function _objectWithoutProperties(source, excluded) {
282
- if (source == null) return {};
283
- var target = _objectWithoutPropertiesLoose(source, excluded);
284
- var key, i;
285
- if (Object.getOwnPropertySymbols) {
286
- var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
287
- for (i = 0; i < sourceSymbolKeys.length; i++) {
288
- key = sourceSymbolKeys[i];
289
- if (excluded.indexOf(key) >= 0) continue;
290
- if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
291
- target[key] = source[key];
292
- }
293
- }
294
- return target;
295
- }
296
-
297
301
  var MENU_ITEM_TYPES = {
298
302
  menuItem: "menuItem",
299
303
  divider: "divider"
@@ -412,13 +416,15 @@ var MoreDropdown = function MoreDropdown(_ref) {
412
416
  }), menuBottomChildren));
413
417
  };
414
418
 
415
- var _excluded = ["element", "isActive", "handleSelectElement", "isSelectable", "errors", "actions"];
419
+ var _excluded = ["element", "isActive", "handleSelectElement", "isSelectable", "index", "returnElementOnSelect", "errors", "actions"];
416
420
  var SelectedElement = function SelectedElement(_ref) {
417
421
  var element = _ref.element,
418
422
  isActive = _ref.isActive,
419
423
  handleSelectElement = _ref.handleSelectElement,
420
424
  _ref$isSelectable = _ref.isSelectable,
421
425
  isSelectable = _ref$isSelectable === void 0 ? true : _ref$isSelectable,
426
+ index = _ref.index,
427
+ returnElementOnSelect = _ref.returnElementOnSelect,
422
428
  _ref$errors = _ref.errors,
423
429
  errors = _ref$errors === void 0 ? [] : _ref$errors,
424
430
  _ref$actions = _ref.actions,
@@ -427,7 +433,7 @@ var SelectedElement = function SelectedElement(_ref) {
427
433
  var Icon = element.icon;
428
434
  var rootElementRef = React.useRef();
429
435
  var onClick = function onClick() {
430
- return handleSelectElement(element);
436
+ return returnElementOnSelect ? handleSelectElement(element) : handleSelectElement(index);
431
437
  };
432
438
  var shouldShowDropdown = neetoCist.isNotEmpty(actions);
433
439
  var menuItems = typeof actions === "function" ? actions(element) : actions.map(function (action) {
@@ -527,16 +533,18 @@ var SelectedElementsList = function SelectedElementsList(_ref) {
527
533
  handleSelectElement = _ref.handleSelectElement,
528
534
  isDragDisabled = _ref.isDragDisabled,
529
535
  isElementVisible = _ref.isElementVisible,
530
- selectedElementId = _ref.selectedElementId,
536
+ selectedElementIndex = _ref.selectedElementIndex,
531
537
  selectedElements = _ref.selectedElements,
532
538
  setIsElementsListVisible = _ref.setIsElementsListVisible,
539
+ fixedLastElementIndex = _ref.fixedLastElementIndex,
533
540
  fixedLastElement = _ref.fixedLastElement,
534
541
  fixedFirstElement = _ref.fixedFirstElement,
535
542
  selectedElementActions = _ref.selectedElementActions,
536
543
  addAllElements = _ref.addAllElements,
537
544
  isAddingAllElements = _ref.isAddingAllElements,
538
545
  showElementsFillButton = _ref.showElementsFillButton,
539
- isAddingNewElement = _ref.isAddingNewElement;
546
+ isAddingNewElement = _ref.isAddingNewElement,
547
+ returnElementOnSelect = _ref.returnElementOnSelect;
540
548
  return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(TitleBar, {
541
549
  addAllElements: addAllElements,
542
550
  isAddingAllElements: isAddingAllElements,
@@ -547,13 +555,14 @@ var SelectedElementsList = function SelectedElementsList(_ref) {
547
555
  "data-testid": "selected-elements-container"
548
556
  }, neetoCist.isPresent(fixedFirstElement) && /*#__PURE__*/React__default["default"].createElement(SelectedElement$1, {
549
557
  handleSelectElement: handleSelectElement,
558
+ returnElementOnSelect: returnElementOnSelect,
550
559
  isSelectable: true,
551
560
  actions: fixedFirstElement.actions,
552
561
  "data-cy": "welcome-element",
553
562
  "data-testid": "welcome-record",
554
563
  element: fixedFirstElement,
555
564
  index: 0,
556
- isActive: selectedElementId === fixedFirstElement.id
565
+ isActive: selectedElementIndex === 0
557
566
  }), /*#__PURE__*/React__default["default"].createElement(dnd.DragDropContext, {
558
567
  onDragEnd: handleDragEnd
559
568
  }, /*#__PURE__*/React__default["default"].createElement(dnd.Droppable, {
@@ -586,21 +595,25 @@ var SelectedElementsList = function SelectedElementsList(_ref) {
586
595
  }, draggableProps, dragHandleProps), /*#__PURE__*/React__default["default"].createElement(SelectedElement$1, {
587
596
  element: element,
588
597
  handleSelectElement: handleSelectElement,
598
+ index: index,
599
+ returnElementOnSelect: returnElementOnSelect,
589
600
  isSelectable: true,
590
601
  actions: selectedElementActions,
591
- isActive: selectedElementId === element.id,
602
+ isActive: index === selectedElementIndex,
592
603
  key: (_element$id3 = element.id) !== null && _element$id3 !== void 0 ? _element$id3 : index
593
604
  }));
594
605
  });
595
606
  }), placeholder);
596
607
  })), neetoCist.isPresent(fixedLastElement) && /*#__PURE__*/React__default["default"].createElement(SelectedElement$1, {
597
608
  handleSelectElement: handleSelectElement,
609
+ returnElementOnSelect: returnElementOnSelect,
598
610
  isSelectable: true,
599
611
  actions: fixedLastElement.actions,
600
612
  "data-cy": "submit-button-element",
601
613
  "data-testid": "submit-button-record",
602
614
  element: fixedLastElement,
603
- isActive: selectedElementId === fixedLastElement.id
615
+ index: fixedLastElementIndex,
616
+ isActive: selectedElementIndex === fixedLastElementIndex
604
617
  })));
605
618
  };
606
619
 
@@ -617,7 +630,8 @@ var ElementsPanel = function ElementsPanel(_ref) {
617
630
  _ref$isDragDisabled = _ref.isDragDisabled,
618
631
  isDragDisabled = _ref$isDragDisabled === void 0 ? true : _ref$isDragDisabled,
619
632
  handleSelectElement = _ref.handleSelectElement,
620
- selectedElementId = _ref.selectedElementId,
633
+ selectedElementIndex = _ref.selectedElementIndex,
634
+ fixedLastElementIndex = _ref.fixedLastElementIndex,
621
635
  selectedElementActions = _ref.selectedElementActions,
622
636
  _ref$addAllElements = _ref.addAllElements,
623
637
  addAllElements = _ref$addAllElements === void 0 ? neetoCist.noop : _ref$addAllElements,
@@ -626,18 +640,41 @@ var ElementsPanel = function ElementsPanel(_ref) {
626
640
  _ref$showElementsFill = _ref.showElementsFillButton,
627
641
  showElementsFillButton = _ref$showElementsFill === void 0 ? false : _ref$showElementsFill,
628
642
  _ref$isAddingNewEleme = _ref.isAddingNewElement,
629
- isAddingNewElement = _ref$isAddingNewEleme === void 0 ? false : _ref$isAddingNewEleme;
643
+ isAddingNewElement = _ref$isAddingNewEleme === void 0 ? false : _ref$isAddingNewEleme,
644
+ _ref$returnElementOnS = _ref.returnElementOnSelect,
645
+ returnElementOnSelect = _ref$returnElementOnS === void 0 ? false : _ref$returnElementOnS;
630
646
  var _useState = React.useState(false),
631
647
  _useState2 = _slicedToArray(_useState, 2),
632
648
  isElementsListVisible = _useState2[0],
633
649
  setIsElementsListVisible = _useState2[1];
650
+ var _useBreakpoints = reactUtils.useBreakpoints(),
651
+ isSize = _useBreakpoints.isSize;
652
+ var isLargerScreen = !isSize("mobile");
653
+ var _useState3 = React.useState(!isLargerScreen),
654
+ _useState4 = _slicedToArray(_useState3, 2),
655
+ isElementsPanelCollapsed = _useState4[0],
656
+ setIsElementsPanelCollapsed = _useState4[1];
634
657
  var isSelectedElementsEmpty = ramda.isEmpty(selectedElements);
635
658
  var shouldShowElementsList = isSelectedElementsEmpty || isElementsListVisible;
636
659
  var handleElementSelect = function handleElementSelect(element) {
637
660
  setIsElementsListVisible(false);
638
661
  handleAddElement(element);
639
662
  };
640
- return /*#__PURE__*/React__default["default"].createElement("div", {
663
+ React.useEffect(function () {
664
+ setIsElementsPanelCollapsed(!isLargerScreen);
665
+ }, [isLargerScreen]);
666
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, !isElementsPanelCollapsed && /*#__PURE__*/React__default["default"].createElement("div", {
667
+ className: "neeto-molecules-builder-panel__backdrop",
668
+ onClick: function onClick() {
669
+ setIsElementsPanelCollapsed(!isElementsPanelCollapsed);
670
+ }
671
+ }), /*#__PURE__*/React__default["default"].createElement("div", {
672
+ className: classnames__default["default"]("neeto-molecules-builder-elements-list-panel__wrapper", {
673
+ "neeto-molecules-builder-elements-list-panel__wrapper--collapsed": isElementsPanelCollapsed
674
+ })
675
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
676
+ className: "neeto-molecules-builder-elements-list-panel__container"
677
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
641
678
  className: "neeto-molecules-builder-elements-list-panel neeto-ui-bg-gray-100",
642
679
  onClick: function onClick(event) {
643
680
  return event.stopPropagation();
@@ -651,24 +688,33 @@ var ElementsPanel = function ElementsPanel(_ref) {
651
688
  addAllElements: addAllElements,
652
689
  fixedFirstElement: fixedFirstElement,
653
690
  fixedLastElement: fixedLastElement,
691
+ fixedLastElementIndex: fixedLastElementIndex,
654
692
  handleDragEnd: handleDragEnd,
655
693
  handleSelectElement: handleSelectElement,
656
694
  isAddingAllElements: isAddingAllElements,
657
695
  isAddingNewElement: isAddingNewElement,
658
696
  isDragDisabled: isDragDisabled,
659
697
  isElementVisible: isElementVisible,
698
+ returnElementOnSelect: returnElementOnSelect,
660
699
  selectedElementActions: selectedElementActions,
661
- selectedElementId: selectedElementId,
700
+ selectedElementIndex: selectedElementIndex,
662
701
  selectedElements: selectedElements,
663
702
  setIsElementsListVisible: setIsElementsListVisible,
664
703
  showElementsFillButton: showElementsFillButton
665
- }));
704
+ }))), /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
705
+ className: "neeto-molecules-builder-elements-list-panel__toggler",
706
+ icon: neetoIcons.Collapse,
707
+ style: "secondary",
708
+ onClick: function onClick() {
709
+ setIsElementsPanelCollapsed(!isElementsPanelCollapsed);
710
+ }
711
+ })));
666
712
  };
667
713
 
668
714
  var EmptyProperty = withT__default["default"](function (_ref) {
669
715
  var t = _ref.t;
670
716
  return /*#__PURE__*/React__default["default"].createElement("div", {
671
- className: "space-y-4 "
717
+ className: "space-y-4 pr-6 pb-6"
672
718
  }, /*#__PURE__*/React__default["default"].createElement("div", {
673
719
  className: "neeto-ui-bg-gray-200 neeto-ui-text-gray-600 neeto-ui-rounded-lg flex w-full flex-col items-center justify-center space-y-2 px-16 py-8"
674
720
  }, /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
@@ -686,7 +732,7 @@ var EmptyProperty = withT__default["default"](function (_ref) {
686
732
  var Skeleton = withT__default["default"](function (_ref) {
687
733
  var t = _ref.t;
688
734
  return /*#__PURE__*/React__default["default"].createElement("div", {
689
- className: "space-y-4 pr-6"
735
+ className: "space-y-4 pr-6 pb-6"
690
736
  }, /*#__PURE__*/React__default["default"].createElement("div", {
691
737
  className: "neeto-ui-bg-gray-200 neeto-ui-rounded-lg h-12 w-full"
692
738
  }), /*#__PURE__*/React__default["default"].createElement("div", {
@@ -704,10 +750,46 @@ var Skeleton = withT__default["default"](function (_ref) {
704
750
  });
705
751
 
706
752
  var PropertiesPanel = function PropertiesPanel(_ref) {
707
- var children = _ref.children;
708
- return /*#__PURE__*/React__default["default"].createElement("div", {
753
+ var id = _ref.id,
754
+ children = _ref.children,
755
+ onClose = _ref.onClose;
756
+ var _useBreakpoints = reactUtils.useBreakpoints(function (window) {
757
+ return {
758
+ largeDesktop: window.innerWidth >= 1280
759
+ };
760
+ }),
761
+ isSize = _useBreakpoints.isSize;
762
+ var isLargerScreen = isSize("largeDesktop");
763
+ var _useState = React.useState(!isLargerScreen),
764
+ _useState2 = _slicedToArray(_useState, 2),
765
+ isPropertiesPanelCollapsed = _useState2[0],
766
+ setIsPropertiesPanelCollapsed = _useState2[1];
767
+ React.useEffect(function () {
768
+ setIsPropertiesPanelCollapsed(!isLargerScreen);
769
+ }, [isLargerScreen]);
770
+ React.useEffect(function () {
771
+ if (!id) return;
772
+ setIsPropertiesPanelCollapsed(false);
773
+ }, [id]);
774
+ var handleCollapsePanel = function handleCollapsePanel() {
775
+ setIsPropertiesPanelCollapsed(!isPropertiesPanelCollapsed);
776
+ onClose === null || onClose === void 0 ? void 0 : onClose(id);
777
+ };
778
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, !isPropertiesPanelCollapsed && /*#__PURE__*/React__default["default"].createElement("div", {
779
+ className: "neeto-molecules-builder-panel__backdrop neeto-molecules-builder-panel__backdrop--extended",
780
+ onClick: handleCollapsePanel
781
+ }), /*#__PURE__*/React__default["default"].createElement("div", {
782
+ className: classnames__default["default"]("neeto-molecules-builder-element-properties-panel__wrapper", {
783
+ "neeto-molecules-builder-element-properties-panel__wrapper--collapsed": isPropertiesPanelCollapsed
784
+ })
785
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
709
786
  className: "neeto-molecules-builder-element-properties-panel neeto-ui-bg-gray-100"
710
- }, children !== null && children !== void 0 ? children : /*#__PURE__*/React__default["default"].createElement(Skeleton, null));
787
+ }, children !== null && children !== void 0 ? children : /*#__PURE__*/React__default["default"].createElement(Skeleton, null)), !isPropertiesPanelCollapsed && /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
788
+ className: "neeto-molecules-builder-properties-panel__close",
789
+ icon: neetoIcons.Close,
790
+ style: "secondary",
791
+ onClick: handleCollapsePanel
792
+ })));
711
793
  };
712
794
  PropertiesPanel.EmptyProperty = EmptyProperty;
713
795