@bigbinary/neeto-themes-frontend 4.0.16 → 4.0.17

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.
@@ -9,7 +9,7 @@ var reactI18next = require('react-i18next');
9
9
  var utils = require('../index-BP-ka0mC.js');
10
10
  var reactQuery = require('@tanstack/react-query');
11
11
  var axios = require('axios');
12
- var useThemeUtils = require('../useThemeUtils-Dc_sN2SE.js');
12
+ var useExpandedSection = require('../useExpandedSection-DvbcFXMx.js');
13
13
  var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
14
14
  var classnames = require('classnames');
15
15
  var utils$1 = require('@bigbinary/neeto-commons-frontend/utils');
@@ -33,6 +33,8 @@ var i18n = require('i18next');
33
33
  var Right = require('@bigbinary/neeto-icons/Right');
34
34
  var Left = require('@bigbinary/neeto-icons/Left');
35
35
  var HelpPopover = require('@bigbinary/neeto-molecules/HelpPopover');
36
+ var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
37
+ var reactDom = require('react-dom');
36
38
  var Radio = require('@bigbinary/neetoui/formik/Radio');
37
39
  var CenterAlign = require('@bigbinary/neeto-icons/CenterAlign');
38
40
  var LeftAlign = require('@bigbinary/neeto-icons/LeftAlign');
@@ -46,11 +48,14 @@ var ImageUploader = require('@bigbinary/neeto-image-uploader-frontend/ImageUploa
46
48
  var Toastr = require('@bigbinary/neetoui/Toastr');
47
49
  var Input$1 = require('@bigbinary/neetoui/formik/Input');
48
50
  var Search = require('@bigbinary/neeto-molecules/Search');
49
- var Rating = require('@bigbinary/neeto-icons/Rating');
51
+ var AddImage = require('@bigbinary/neeto-icons/AddImage');
52
+ var CodeBlock = require('@bigbinary/neeto-icons/CodeBlock');
53
+ var ColorPicker$1 = require('@bigbinary/neeto-icons/ColorPicker');
54
+ var Image = require('@bigbinary/neeto-icons/Image');
50
55
  var MoreDropdown = require('@bigbinary/neeto-molecules/MoreDropdown');
51
56
  var LeftArrow = require('@bigbinary/neeto-icons/LeftArrow');
52
- var Plus = require('@bigbinary/neeto-icons/Plus');
53
57
  var RightArrow = require('@bigbinary/neeto-icons/RightArrow');
58
+ var Search$1 = require('@bigbinary/neeto-icons/Search');
54
59
  require('zustand');
55
60
  require('yup');
56
61
 
@@ -63,7 +68,7 @@ var entitiesApi = {
63
68
 
64
69
  var useShowThemeEntity = function useShowThemeEntity(entityId) {
65
70
  return reactQuery.useQuery({
66
- queryKey: [useThemeUtils.QUERY_KEYS.THEME_ENTITY_DETAILS, entityId],
71
+ queryKey: [useExpandedSection.QUERY_KEYS.THEME_ENTITY_DETAILS, entityId],
67
72
  queryFn: function queryFn() {
68
73
  return entitiesApi.show(entityId);
69
74
  },
@@ -73,7 +78,7 @@ var useShowThemeEntity = function useShowThemeEntity(entityId) {
73
78
 
74
79
  var e=[],t=[];function n(n,r){if(n&&"undefined"!=typeof document){var a,s=true===r.prepend?"prepend":"append",d=true===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}}
75
80
 
76
- var css = ":root{--themes-sidebar-expanded:520px;--themes-sidebar-width-xl:340px;--themes-sidebar-width-lg:320px;--themes-sidebar-width-sm:280px;--themes-sidebar-header-height:120px;--builder-header-height:65px}.neeto-themes__wrapper{display:flex;height:calc(100vh - 65px);height:calc(var(--viewport-height, 100vh) - var(--builder-header-height));width:100%}.neeto-themes__wrapper .neeto-themes-sidebar{background-color:rgb(var(--neeto-ui-white));height:100%;inset-inline-start:0;padding-top:1.5rem;position:fixed;top:0;transition:none;width:100%;z-index:102}.neeto-themes__wrapper .neeto-themes-sidebar--expanded{max-width:100%;width:520px!important;width:var(--themes-sidebar-expanded)!important}@media screen and (min-width:576px){.neeto-themes__wrapper .neeto-themes-sidebar{width:280px;width:var(--themes-sidebar-width-sm)}}@media screen and (min-width:768px){.neeto-themes__wrapper .neeto-themes-sidebar{height:calc(100vh - 65px);height:calc(var(--viewport-height, 100vh) - var(--builder-header-height));padding-top:0;position:relative}}@media screen and (min-width:1024px){.neeto-themes__wrapper .neeto-themes-sidebar{width:320px;width:var(--themes-sidebar-width-lg)}}@media screen and (min-width:1280px){.neeto-themes__wrapper .neeto-themes-sidebar{width:340px;width:var(--themes-sidebar-width-xl)}}.neeto-themes__wrapper .neeto-themes-sidebar--collapsed{max-width:0;min-width:0;width:0}.neeto-themes__wrapper .neeto-themes-sidebar--collapsed .neeto-themes-sidebar__toggler{transform:scale(-1)}@media screen and (max-width:767px){.neeto-themes__wrapper .neeto-themes-sidebar--collapsed .neeto-themes-sidebar__toggler{top:6.8125rem}}@media screen and (max-width:576px){.neeto-themes__wrapper .neeto-themes-sidebar--collapsed .neeto-themes-sidebar__toggler{inset-inline-end:auto;inset-inline-start:.5rem}}.neeto-themes__wrapper .neeto-themes-sidebar--collapsed .neeto-themes-sidebar__header{display:none}.neeto-themes__wrapper .neeto-themes-sidebar .neeto-themes-sidebar__header{padding-bottom:.5rem;padding-top:1rem}.neeto-themes__wrapper .neeto-themes-sidebar .neeto-themes-sidebar__scroll{display:flex;flex-direction:column;height:calc(100vh - 120px);height:calc(var(--viewport-height, 100vh) - var(--themes-sidebar-header-height));overflow-y:auto}.neeto-themes__wrapper .neeto-themes-sidebar .neeto-themes-sidebar__scroll .neeto-ui-colorpicker__target .neeto-ui-colorpicker-target__code{display:none}.neeto-themes__wrapper .css-editor-height__expanded{height:calc(100vh - 300px);height:calc(var(--viewport-height, 100vh) - 300px)}.neeto-themes__wrapper .css-editor-height__regular{height:384px}.neeto-themes__wrapper .neeto-themes-preview__wrapper{flex-grow:1;height:calc(100vh - 65px);height:calc(var(--viewport-height, 100vh) - var(--builder-header-height));position:relative}.neeto-themes-theme-thumbnail:hover{box-shadow:0 0 0 2px rgb(var(--neeto-ui-gray-200))}.neeto-themes-theme-thumbnail:hover .neeto-themes-theme-thumbnail__overlay{opacity:.6}.neeto-themes-theme-thumbnail--preview-active{border-color:rgb(var(--neeto-ui-gray-600))!important;box-shadow:none!important;outline:2px solid rgb(var(--neeto-ui-gray-600))!important}.neeto-themes-theme-thumbnail--preview-active .neeto-themes-theme-thumbnail__overlay{opacity:.6}.neeto-themes-theme-thumbnail--active{border-color:rgb(var(--neeto-ui-accent-500))!important;box-shadow:none!important;outline:2px solid rgb(var(--neeto-ui-accent-500))!important}.neeto-themes-theme-thumbnail--active .neeto-themes-theme-thumbnail__overlay{opacity:.6}.neeto-themes-theme-thumbnail--highlight-active{border-color:rgb(var(--neeto-ui-gray-400))!important;box-shadow:none!important;outline:2px solid rgb(var(--neeto-ui-gray-400))!important}.neeto-themes-theme-thumbnail__apply-btn:disabled,.neeto-themes-theme-thumbnail__apply-btn[disabled]{opacity:1!important}.neeto-themes-theme-thumbnail__active-label{--neeto-ui-btn-focus-box-shadow:none}.neeto-themes-theme-thumbnail__active-label,.neeto-themes-theme-thumbnail__apply-btn,.neeto-themes-theme-thumbnail__preview-btn{max-width:100%;width:8.125rem}.neeto-themes-theme-thumbnail__preview-btn--disabled{--neeto-ui-btn-color:rgb(var(--neeto-ui-gray-300));--neeto-ui-btn-box-shadow:inset 0 0 0 1px rgba(var(--neeto-ui-gray-300))}.neeto-themes-sidebar__custom-css-editor-header{background-color:#1e1e1e;border-start-end-radius:var(--neeto-ui-rounded-lg);border-start-start-radius:var(--neeto-ui-rounded-lg);display:flex}@media screen and (max-width:576px){.neeto-themes-sidebar__custom-css-editor-header{display:none}}.neeto-themes-sidebar .monaco-editor,.neeto-themes-sidebar .overflow-guard{border-end-end-radius:var(--neeto-ui-rounded-lg);border-end-start-radius:var(--neeto-ui-rounded-lg)}.neeto-themes-sidebar__custom-css-wrapper .neeto-themes-nano-section{border-bottom:0!important}.neeto-themes-sidebar__backdrop{background-color:rgba(var(--neeto-ui-black),.4);display:none;height:100%;inset-inline-start:0;position:fixed;top:0;visibility:hidden;width:100%;z-index:101}@media screen and (max-width:767px){.neeto-themes-sidebar__backdrop{display:block;visibility:visible}}.neeto-themes-sidebar__toggler{flex-shrink:0;inset-inline-start:calc(100% + .5rem);position:absolute;top:.5rem;transition:color .3s ease-in-out}@media screen and (min-width:1024px){.neeto-themes-sidebar__toggler{opacity:0;pointer-events:none}}@media screen and (max-width:576px){.neeto-themes-sidebar__toggler{inset-inline-end:1.5rem;inset-inline-start:auto}}.neeto-themes-nano-alignment-block{border-radius:.375rem}.neeto-themes-nano-alignment-button{--neeto-ui-btn-padding-x:0.75rem!important}.neeto-themes-nano-alignment-button__alignment-left{border-end-end-radius:0!important;border-start-end-radius:0!important}.neeto-themes-nano-alignment-button__alignment-center{border-end-start-radius:0!important;border-start-start-radius:0!important}.neeto-themes-nano-alignment-button.neeto-ui-btn--style-primary{--neeto-ui-btn-bg-color:rgb(var(--neeto-ui-primary-100))!important;--neeto-ui-btn-hover-bg-color:rgb(var(--neeto-ui-primary-100))!important}.neeto-themes-nano-alignment-divider{background:rgb(var(--neeto-ui-gray-200));height:2rem;width:.0625rem}.neeto-themes-nano-section__content--open{max-height:1500px;opacity:1;padding-top:.25rem;visibility:visible}.neeto-themes-nano-section__content--closed{max-height:0;opacity:0;visibility:hidden}.neeto-themes-nano-section__title:focus-visible{box-shadow:0 0 0 3px rgba(var(--neeto-ui-primary-500),15%)}.neeto-themes-nano-global-theme-icon{fill:rgb(var(--neeto-ui-warning-100));color:rgb(var(--neeto-ui-warning-500))}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC9qYXZhc2NyaXB0L3N0eWxlc2hlZXRzL2Fic3RyYWN0cy92YXJpYWJsZXMuY3NzIiwiYXBwL2phdmFzY3JpcHQvc3R5bGVzaGVldHMvY29tcG9uZW50cy90aGVtZXMuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQ0UsK0JBQWdDLENBQ2hDLCtCQUFnQyxDQUNoQywrQkFBZ0MsQ0FDaEMsK0JBQWdDLENBQ2hDLG9DQUFxQyxDQUNyQyw0QkFDRixDQ1BBLHVCQUVFLFlBQWEsQ0FDYix5QkFBMEUsQ0FBMUUseUVBQTBFLENBRjFFLFVBR0YsQ0FFQSw2Q0FHRSwyQ0FBNEMsQ0FENUMsV0FBWSxDQUlaLG9CQUFxQixDQUdyQixrQkFBbUIsQ0FMbkIsY0FBZSxDQUNmLEtBQU0sQ0FFTixlQUFnQixDQU5oQixVQUFXLENBT1gsV0FFRixDQUVBLHVEQUVFLGNBQWUsQ0FEZixxQkFBZ0QsQ0FBaEQsOENBRUYsQ0FFQSxvQ0FDRSw2Q0FDRSxXQUFxQyxDQUFyQyxvQ0FDRixDQUNGLENBRUEsb0NBQ0UsNkNBR0UseUJBQTBFLENBQTFFLHlFQUEwRSxDQUYxRSxhQUFjLENBQ2QsaUJBRUYsQ0FDRixDQUVBLHFDQUNFLDZDQUNFLFdBQXFDLENBQXJDLG9DQUNGLENBQ0YsQ0FFQSxxQ0FDRSw2Q0FDRSxXQUFxQyxDQUFyQyxvQ0FDRixDQUNGLENBRUEsd0RBRUUsV0FBZSxDQUNmLFdBQWUsQ0FGZixPQUdGLENBRUEsdUZBQ0UsbUJBQ0YsQ0FFQSxvQ0FDRSx1RkFDRSxhQUNGLENBQ0YsQ0FFQSxvQ0FDRSx1RkFDRSxxQkFBc0IsQ0FDdEIsd0JBQ0YsQ0FDRixDQUVBLHNGQUNFLFlBQ0YsQ0FFQSwyRUFFRSxvQkFBc0IsQ0FEdEIsZ0JBRUYsQ0FFQSwyRUFHRSxZQUFhLENBQ2IscUJBQXNCLENBSHRCLDBCQUFpRixDQUFqRixnRkFBaUYsQ0FDakYsZUFHRixDQUVBLDRJQUNFLFlBQ0YsQ0FFQSxvREFDRSwwQkFBbUQsQ0FBbkQsa0RBQ0YsQ0FFQSxtREFDRSxZQUNGLENBRUEsc0RBR0UsV0FBWSxDQURaLHlCQUEwRSxDQUExRSx5RUFBMEUsQ0FEMUUsaUJBR0YsQ0FFQSxvQ0FDRSxrREFDRixDQUVBLDJFQUNFLFVBQ0YsQ0FFQSw4Q0FDRSxvREFBc0QsQ0FFdEQseUJBQTJCLENBRDNCLHlEQUVGLENBRUEscUZBQ0UsVUFDRixDQUVBLHNDQUNFLHNEQUF3RCxDQUV4RCx5QkFBMkIsQ0FEM0IsMkRBRUYsQ0FFQSw2RUFDRSxVQUNGLENBRUEsZ0RBQ0Usb0RBQXNELENBRXRELHlCQUEyQixDQUQzQix5REFFRixDQUVBLHFHQUVFLG1CQUNGLENBRUEsNENBQ0Usb0NBQ0YsQ0FFQSxnSUFJRSxjQUFlLENBRGYsY0FFRixDQUVBLHFEQUNFLGtEQUFtRCxDQUNuRCx3RUFDRixDQUVBLGdEQUVFLHdCQUF5QixDQUV6QixrREFBbUQsQ0FEbkQsb0RBQXFELENBRnJELFlBSUYsQ0FFQSxvQ0FDRSxnREFDRSxZQUNGLENBQ0YsQ0FFQSwyRUFHRSxnREFBaUQsQ0FEakQsa0RBRUYsQ0FFQSxxRUFDRSx5QkFDRixDQUVBLGdDQU1FLCtDQUFrRCxDQUNsRCxZQUFhLENBRmIsV0FBWSxDQUZaLG9CQUFxQixDQUZyQixjQUFlLENBQ2YsS0FBTSxDQU1OLGlCQUFrQixDQUpsQixVQUFXLENBS1gsV0FDRixDQUVBLG9DQUNFLGdDQUNFLGFBQWMsQ0FDZCxrQkFDRixDQUNGLENBRUEsK0JBSUUsYUFBYyxDQURkLHFDQUF1QyxDQUZ2QyxpQkFBa0IsQ0FDbEIsU0FBVyxDQUdYLGdDQUNGLENBRUEscUNBQ0UsK0JBQ0UsU0FBVSxDQUNWLG1CQUNGLENBQ0YsQ0FFQSxvQ0FDRSwrQkFFRSx1QkFBd0IsQ0FEeEIsdUJBRUYsQ0FDRixDQUVBLG1DQUNFLHFCQUNGLENBRUEsb0NBQ0UsMENBQ0YsQ0FFQSxvREFFRSxpQ0FBcUMsQ0FEckMsbUNBRUYsQ0FFQSxzREFFRSxtQ0FBdUMsQ0FEdkMscUNBRUYsQ0FFQSxnRUFDRSxrRUFBb0UsQ0FDcEUsd0VBQ0YsQ0FFQSxxQ0FHRSx3Q0FBeUMsQ0FEekMsV0FBWSxDQURaLGNBR0YsQ0FFQSwwQ0FDRSxpQkFBa0IsQ0FDbEIsU0FBVSxDQUVWLGtCQUFvQixDQURwQixrQkFFRixDQUVBLDRDQUNFLFlBQWUsQ0FDZixTQUFVLENBQ1YsaUJBQ0YsQ0FFQSxnREFDRSwwREFDRixDQUVBLHFDQUVFLHFDQUFzQyxDQUR0QyxzQ0FFRiIsInNvdXJjZXNDb250ZW50IjpbIjpyb290IHtcbiAgLS10aGVtZXMtc2lkZWJhci1leHBhbmRlZDogNTIwcHg7XG4gIC0tdGhlbWVzLXNpZGViYXItd2lkdGgteGw6IDM0MHB4O1xuICAtLXRoZW1lcy1zaWRlYmFyLXdpZHRoLWxnOiAzMjBweDtcbiAgLS10aGVtZXMtc2lkZWJhci13aWR0aC1zbTogMjgwcHg7XG4gIC0tdGhlbWVzLXNpZGViYXItaGVhZGVyLWhlaWdodDogMTIwcHg7XG4gIC0tYnVpbGRlci1oZWFkZXItaGVpZ2h0OiA2NXB4O1xufVxuIiwiLm5lZXRvLXRoZW1lc19fd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IGNhbGModmFyKC0tdmlld3BvcnQtaGVpZ2h0LCAxMDB2aCkgLSB2YXIoLS1idWlsZGVyLWhlYWRlci1oZWlnaHQpKTtcbn1cblxuLm5lZXRvLXRoZW1lc19fd3JhcHBlciAubmVldG8tdGhlbWVzLXNpZGViYXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktd2hpdGUpKTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGluc2V0LWlubGluZS1zdGFydDogMDtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgei1pbmRleDogMTAyO1xuICBwYWRkaW5nLXRvcDogMS41cmVtO1xufVxuXG4ubmVldG8tdGhlbWVzX193cmFwcGVyIC5uZWV0by10aGVtZXMtc2lkZWJhci0tZXhwYW5kZWQge1xuICB3aWR0aDogdmFyKC0tdGhlbWVzLXNpZGViYXItZXhwYW5kZWQpICFpbXBvcnRhbnQ7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLm5lZXRvLXRoZW1lc19fd3JhcHBlciAubmVldG8tdGhlbWVzLXNpZGViYXIge1xuICAgIHdpZHRoOiB2YXIoLS10aGVtZXMtc2lkZWJhci13aWR0aC1zbSk7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5lZXRvLXRoZW1lc19fd3JhcHBlciAubmVldG8tdGhlbWVzLXNpZGViYXIge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IGNhbGModmFyKC0tdmlld3BvcnQtaGVpZ2h0LCAxMDB2aCkgLSB2YXIoLS1idWlsZGVyLWhlYWRlci1oZWlnaHQpKTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLm5lZXRvLXRoZW1lc19fd3JhcHBlciAubmVldG8tdGhlbWVzLXNpZGViYXIge1xuICAgIHdpZHRoOiB2YXIoLS10aGVtZXMtc2lkZWJhci13aWR0aC1sZyk7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gIC5uZWV0by10aGVtZXNfX3dyYXBwZXIgLm5lZXRvLXRoZW1lcy1zaWRlYmFyIHtcbiAgICB3aWR0aDogdmFyKC0tdGhlbWVzLXNpZGViYXItd2lkdGgteGwpO1xuICB9XG59XG5cbi5uZWV0by10aGVtZXNfX3dyYXBwZXIgLm5lZXRvLXRoZW1lcy1zaWRlYmFyLS1jb2xsYXBzZWQge1xuICB3aWR0aDogMHJlbTtcbiAgbWF4LXdpZHRoOiAwcmVtO1xuICBtaW4td2lkdGg6IDByZW07XG59XG5cbi5uZWV0by10aGVtZXNfX3dyYXBwZXIgLm5lZXRvLXRoZW1lcy1zaWRlYmFyLS1jb2xsYXBzZWQgLm5lZXRvLXRoZW1lcy1zaWRlYmFyX190b2dnbGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgtMSk7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5uZWV0by10aGVtZXNfX3dyYXBwZXIgLm5lZXRvLXRoZW1lcy1zaWRlYmFyLS1jb2xsYXBzZWQgLm5lZXRvLXRoZW1lcy1zaWRlYmFyX190b2dnbGVyIHtcbiAgICB0b3A6IDYuODEyNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NzZweCkge1xuICAubmVldG8tdGhlbWVzX193cmFwcGVyIC5uZWV0by10aGVtZXMtc2lkZWJhci0tY29sbGFwc2VkIC5uZWV0by10aGVtZXMtc2lkZWJhcl9fdG9nZ2xlciB7XG4gICAgaW5zZXQtaW5saW5lLWVuZDogYXV0bztcbiAgICBpbnNldC1pbmxpbmUtc3RhcnQ6IDAuNXJlbTtcbiAgfVxufVxuXG4ubmVldG8tdGhlbWVzX193cmFwcGVyIC5uZWV0by10aGVtZXMtc2lkZWJhci0tY29sbGFwc2VkIC5uZWV0by10aGVtZXMtc2lkZWJhcl9faGVhZGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm5lZXRvLXRoZW1lc19fd3JhcHBlciAubmVldG8tdGhlbWVzLXNpZGViYXIgLm5lZXRvLXRoZW1lcy1zaWRlYmFyX19oZWFkZXIge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbn1cblxuLm5lZXRvLXRoZW1lc19fd3JhcHBlciAubmVldG8tdGhlbWVzLXNpZGViYXIgLm5lZXRvLXRoZW1lcy1zaWRlYmFyX19zY3JvbGwge1xuICBoZWlnaHQ6IGNhbGModmFyKC0tdmlld3BvcnQtaGVpZ2h0LCAxMDB2aCkgLSB2YXIoLS10aGVtZXMtc2lkZWJhci1oZWFkZXItaGVpZ2h0KSk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5uZWV0by10aGVtZXNfX3dyYXBwZXIgLm5lZXRvLXRoZW1lcy1zaWRlYmFyIC5uZWV0by10aGVtZXMtc2lkZWJhcl9fc2Nyb2xsIC5uZWV0by11aS1jb2xvcnBpY2tlcl9fdGFyZ2V0IC5uZWV0by11aS1jb2xvcnBpY2tlci10YXJnZXRfX2NvZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubmVldG8tdGhlbWVzX193cmFwcGVyIC5jc3MtZWRpdG9yLWhlaWdodF9fZXhwYW5kZWQge1xuICBoZWlnaHQ6IGNhbGModmFyKC0tdmlld3BvcnQtaGVpZ2h0LCAxMDB2aCkgLSAzMDBweCk7XG59XG5cbi5uZWV0by10aGVtZXNfX3dyYXBwZXIgLmNzcy1lZGl0b3ItaGVpZ2h0X19yZWd1bGFyIHtcbiAgaGVpZ2h0OiAzODRweDtcbn1cblxuLm5lZXRvLXRoZW1lc19fd3JhcHBlciAubmVldG8tdGhlbWVzLXByZXZpZXdfX3dyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogY2FsYyh2YXIoLS12aWV3cG9ydC1oZWlnaHQsIDEwMHZoKSAtIHZhcigtLWJ1aWxkZXItaGVhZGVyLWhlaWdodCkpO1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbi5uZWV0by10aGVtZXMtdGhlbWUtdGh1bWJuYWlsOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xufVxuXG4ubmVldG8tdGhlbWVzLXRoZW1lLXRodW1ibmFpbDpob3ZlciAubmVldG8tdGhlbWVzLXRoZW1lLXRodW1ibmFpbF9fb3ZlcmxheSB7XG4gIG9wYWNpdHk6IDAuNjtcbn1cblxuLm5lZXRvLXRoZW1lcy10aGVtZS10aHVtYm5haWwtLXByZXZpZXctYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS02MDApKSAhaW1wb3J0YW50O1xuICBvdXRsaW5lOiAycHggc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNjAwKSkgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubmVldG8tdGhlbWVzLXRoZW1lLXRodW1ibmFpbC0tcHJldmlldy1hY3RpdmUgLm5lZXRvLXRoZW1lcy10aGVtZS10aHVtYm5haWxfX292ZXJsYXkge1xuICBvcGFjaXR5OiAwLjY7XG59XG5cbi5uZWV0by10aGVtZXMtdGhlbWUtdGh1bWJuYWlsLS1hY3RpdmUge1xuICBib3JkZXItY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1hY2NlbnQtNTAwKSkgIWltcG9ydGFudDtcbiAgb3V0bGluZTogMnB4IHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1hY2NlbnQtNTAwKSkgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubmVldG8tdGhlbWVzLXRoZW1lLXRodW1ibmFpbC0tYWN0aXZlIC5uZWV0by10aGVtZXMtdGhlbWUtdGh1bWJuYWlsX19vdmVybGF5IHtcbiAgb3BhY2l0eTogMC42O1xufVxuXG4ubmVldG8tdGhlbWVzLXRoZW1lLXRodW1ibmFpbC0taGlnaGxpZ2h0LWFjdGl2ZSB7XG4gIGJvcmRlci1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNDAwKSkgIWltcG9ydGFudDtcbiAgb3V0bGluZTogMnB4IHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTQwMCkpICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm5lZXRvLXRoZW1lcy10aGVtZS10aHVtYm5haWxfX2FwcGx5LWJ0bjpkaXNhYmxlZCxcbi5uZWV0by10aGVtZXMtdGhlbWUtdGh1bWJuYWlsX19hcHBseS1idG5bZGlzYWJsZWRdIHtcbiAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xufVxuXG4ubmVldG8tdGhlbWVzLXRoZW1lLXRodW1ibmFpbF9fYWN0aXZlLWxhYmVsIHtcbiAgLS1uZWV0by11aS1idG4tZm9jdXMtYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLm5lZXRvLXRoZW1lcy10aGVtZS10aHVtYm5haWxfX3ByZXZpZXctYnRuLFxuLm5lZXRvLXRoZW1lcy10aGVtZS10aHVtYm5haWxfX2FwcGx5LWJ0bixcbi5uZWV0by10aGVtZXMtdGhlbWUtdGh1bWJuYWlsX19hY3RpdmUtbGFiZWwge1xuICB3aWR0aDogOC4xMjVyZW07XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLm5lZXRvLXRoZW1lcy10aGVtZS10aHVtYm5haWxfX3ByZXZpZXctYnRuLS1kaXNhYmxlZCB7XG4gIC0tbmVldG8tdWktYnRuLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbiAgLS1uZWV0by11aS1idG4tYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHJnYmEodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cblxuLm5lZXRvLXRoZW1lcy1zaWRlYmFyX19jdXN0b20tY3NzLWVkaXRvci1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWUxZTFlO1xuICBib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOiB2YXIoLS1uZWV0by11aS1yb3VuZGVkLWxnKTtcbiAgYm9yZGVyLXN0YXJ0LWVuZC1yYWRpdXM6IHZhcigtLW5lZXRvLXVpLXJvdW5kZWQtbGcpO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NzZweCkge1xuICAubmVldG8tdGhlbWVzLXNpZGViYXJfX2N1c3RvbS1jc3MtZWRpdG9yLWhlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ubmVldG8tdGhlbWVzLXNpZGViYXIgLm92ZXJmbG93LWd1YXJkLFxuLm5lZXRvLXRoZW1lcy1zaWRlYmFyIC5tb25hY28tZWRpdG9yIHtcbiAgYm9yZGVyLWVuZC1zdGFydC1yYWRpdXM6IHZhcigtLW5lZXRvLXVpLXJvdW5kZWQtbGcpO1xuICBib3JkZXItZW5kLWVuZC1yYWRpdXM6IHZhcigtLW5lZXRvLXVpLXJvdW5kZWQtbGcpO1xufVxuXG4ubmVldG8tdGhlbWVzLXNpZGViYXJfX2N1c3RvbS1jc3Mtd3JhcHBlciAubmVldG8tdGhlbWVzLW5hbm8tc2VjdGlvbiB7XG4gIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLm5lZXRvLXRoZW1lcy1zaWRlYmFyX19iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBpbnNldC1pbmxpbmUtc3RhcnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tbmVldG8tdWktYmxhY2spLCAwLjQpO1xuICBkaXNwbGF5OiBub25lO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDEwMTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLm5lZXRvLXRoZW1lcy1zaWRlYmFyX19iYWNrZHJvcCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG4ubmVldG8tdGhlbWVzLXNpZGViYXJfX3RvZ2dsZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMC41cmVtO1xuICBpbnNldC1pbmxpbmUtc3RhcnQ6IGNhbGMoMTAwJSArIDAuNXJlbSk7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLm5lZXRvLXRoZW1lcy1zaWRlYmFyX190b2dnbGVyIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gIC5uZWV0by10aGVtZXMtc2lkZWJhcl9fdG9nZ2xlciB7XG4gICAgaW5zZXQtaW5saW5lLXN0YXJ0OiBhdXRvO1xuICAgIGluc2V0LWlubGluZS1lbmQ6IDEuNXJlbTtcbiAgfVxufVxuXG4ubmVldG8tdGhlbWVzLW5hbm8tYWxpZ25tZW50LWJsb2NrIHtcbiAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XG59XG5cbi5uZWV0by10aGVtZXMtbmFuby1hbGlnbm1lbnQtYnV0dG9uIHtcbiAgLS1uZWV0by11aS1idG4tcGFkZGluZy14OiAwLjc1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5uZWV0by10aGVtZXMtbmFuby1hbGlnbm1lbnQtYnV0dG9uX19hbGlnbm1lbnQtbGVmdCB7XG4gIGJvcmRlci1zdGFydC1lbmQtcmFkaXVzOiAwcHggIWltcG9ydGFudDtcbiAgYm9yZGVyLWVuZC1lbmQtcmFkaXVzOiAwcHggIWltcG9ydGFudDtcbn1cblxuLm5lZXRvLXRoZW1lcy1uYW5vLWFsaWdubWVudC1idXR0b25fX2FsaWdubWVudC1jZW50ZXIge1xuICBib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOiAwcHggIWltcG9ydGFudDtcbiAgYm9yZGVyLWVuZC1zdGFydC1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xufVxuXG4ubmVldG8tdGhlbWVzLW5hbm8tYWxpZ25tZW50LWJ1dHRvbi5uZWV0by11aS1idG4tLXN0eWxlLXByaW1hcnkge1xuICAtLW5lZXRvLXVpLWJ0bi1iZy1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLXByaW1hcnktMTAwKSkgIWltcG9ydGFudDtcbiAgLS1uZWV0by11aS1idG4taG92ZXItYmctY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1wcmltYXJ5LTEwMCkpICFpbXBvcnRhbnQ7XG59XG5cbi5uZWV0by10aGVtZXMtbmFuby1hbGlnbm1lbnQtZGl2aWRlciB7XG4gIHdpZHRoOiAwLjA2MjVyZW07XG4gIGhlaWdodDogMnJlbTtcbiAgYmFja2dyb3VuZDogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSk7XG59XG5cbi5uZWV0by10aGVtZXMtbmFuby1zZWN0aW9uX19jb250ZW50LS1vcGVuIHtcbiAgbWF4LWhlaWdodDogMTUwMHB4O1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBwYWRkaW5nLXRvcDogMC4yNXJlbTtcbn1cblxuLm5lZXRvLXRoZW1lcy1uYW5vLXNlY3Rpb25fX2NvbnRlbnQtLWNsb3NlZCB7XG4gIG1heC1oZWlnaHQ6IDBweDtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubmVldG8tdGhlbWVzLW5hbm8tc2VjdGlvbl9fdGl0bGU6Zm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKHZhcigtLW5lZXRvLXVpLXByaW1hcnktNTAwKSwgMTUlKTtcbn1cblxuLm5lZXRvLXRoZW1lcy1uYW5vLWdsb2JhbC10aGVtZS1pY29uIHtcbiAgY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS13YXJuaW5nLTUwMCkpO1xuICBmaWxsOiByZ2IodmFyKC0tbmVldG8tdWktd2FybmluZy0xMDApKTtcbn1cbiJdfQ== */";
81
+ var css = ":root{--themes-sidebar-expanded:520px;--themes-sidebar-width-xl:340px;--themes-sidebar-width-lg:320px;--themes-sidebar-width-sm:280px;--themes-sidebar-header-height:120px;--builder-header-height:65px}.neeto-themes__wrapper{display:flex;height:calc(100vh - 65px);height:calc(var(--viewport-height, 100vh) - var(--builder-header-height));width:100%}.neeto-themes__wrapper .neeto-themes-sidebar{background-color:rgb(var(--neeto-ui-white));height:100%;inset-inline-start:0;padding-top:1.5rem;position:fixed;top:0;transition:none;width:100%;z-index:102}.neeto-themes__wrapper .neeto-themes-sidebar--expanded{max-width:100%;width:520px!important;width:var(--themes-sidebar-expanded)!important}@media screen and (min-width:576px){.neeto-themes__wrapper .neeto-themes-sidebar{width:280px;width:var(--themes-sidebar-width-sm)}}@media screen and (min-width:768px){.neeto-themes__wrapper .neeto-themes-sidebar{height:calc(100vh - 65px);height:calc(var(--viewport-height, 100vh) - var(--builder-header-height));padding-top:0;position:relative}}@media screen and (min-width:1024px){.neeto-themes__wrapper .neeto-themes-sidebar{width:320px;width:var(--themes-sidebar-width-lg)}}@media screen and (min-width:1280px){.neeto-themes__wrapper .neeto-themes-sidebar{width:340px;width:var(--themes-sidebar-width-xl)}}.neeto-themes__wrapper .neeto-themes-sidebar--collapsed{max-width:0;min-width:0;width:0}.neeto-themes__wrapper .neeto-themes-sidebar--collapsed .neeto-themes-sidebar__toggler{transform:scale(-1)}@media screen and (max-width:767px){.neeto-themes__wrapper .neeto-themes-sidebar--collapsed .neeto-themes-sidebar__toggler{top:6.8125rem}}@media screen and (max-width:576px){.neeto-themes__wrapper .neeto-themes-sidebar--collapsed .neeto-themes-sidebar__toggler{inset-inline-end:auto;inset-inline-start:.5rem}}.neeto-themes__wrapper .neeto-themes-sidebar--collapsed .neeto-themes-sidebar__header{display:none}.neeto-themes__wrapper .neeto-themes-sidebar .neeto-themes-sidebar__header{padding-bottom:.5rem;padding-top:1rem}.neeto-themes__wrapper .neeto-themes-sidebar .neeto-themes-sidebar__scroll{display:flex;flex-direction:column;height:calc(100vh - 120px);height:calc(var(--viewport-height, 100vh) - var(--themes-sidebar-header-height));overflow-y:auto}.neeto-themes__wrapper .neeto-themes-sidebar .neeto-themes-sidebar__scroll .neeto-ui-colorpicker__target .neeto-ui-colorpicker-target__code{display:none}.neeto-themes__wrapper .css-editor-height__expanded{height:calc(100vh - 300px);height:calc(var(--viewport-height, 100vh) - 300px)}.neeto-themes__wrapper .css-editor-height__regular{height:384px}.neeto-themes__wrapper .neeto-themes-preview__wrapper{flex-grow:1;height:calc(100vh - 65px);height:calc(var(--viewport-height, 100vh) - var(--builder-header-height));position:relative}.neeto-themes-theme-thumbnail:hover{box-shadow:0 0 0 2px rgb(var(--neeto-ui-gray-200))}.neeto-themes-theme-thumbnail:hover .neeto-themes-theme-thumbnail__overlay{opacity:.6}.neeto-themes-theme-thumbnail--preview-active{border-color:rgb(var(--neeto-ui-gray-600))!important;box-shadow:none!important;outline:2px solid rgb(var(--neeto-ui-gray-600))!important}.neeto-themes-theme-thumbnail--preview-active .neeto-themes-theme-thumbnail__overlay{opacity:.6}.neeto-themes-theme-thumbnail--active{border-color:rgb(var(--neeto-ui-accent-500))!important;box-shadow:none!important;outline:2px solid rgb(var(--neeto-ui-accent-500))!important}.neeto-themes-theme-thumbnail--active .neeto-themes-theme-thumbnail__overlay{opacity:.6}.neeto-themes-theme-thumbnail--highlight-active{border-color:rgb(var(--neeto-ui-gray-400))!important;box-shadow:none!important;outline:2px solid rgb(var(--neeto-ui-gray-400))!important}.neeto-themes-theme-thumbnail__apply-btn:disabled,.neeto-themes-theme-thumbnail__apply-btn[disabled]{opacity:1!important}.neeto-themes-theme-thumbnail__active-label{--neeto-ui-btn-focus-box-shadow:none}.neeto-themes-theme-thumbnail__active-label,.neeto-themes-theme-thumbnail__apply-btn,.neeto-themes-theme-thumbnail__preview-btn{max-width:100%;width:8.125rem}.neeto-themes-theme-thumbnail__preview-btn--disabled{--neeto-ui-btn-color:rgb(var(--neeto-ui-gray-300));--neeto-ui-btn-box-shadow:inset 0 0 0 1px rgba(var(--neeto-ui-gray-300))}.neeto-themes-sidebar__custom-css-editor-header{background-color:#1e1e1e;border-start-end-radius:var(--neeto-ui-rounded-lg);border-start-start-radius:var(--neeto-ui-rounded-lg);display:flex}@media screen and (max-width:576px){.neeto-themes-sidebar__custom-css-editor-header{display:none}}.neeto-themes-sidebar .monaco-editor,.neeto-themes-sidebar .overflow-guard{border-end-end-radius:var(--neeto-ui-rounded-lg);border-end-start-radius:var(--neeto-ui-rounded-lg)}.neeto-themes-sidebar__custom-css-wrapper .neeto-themes-nano-section{border-bottom:0!important}.neeto-themes-sidebar__backdrop{background-color:rgba(var(--neeto-ui-black),.4);display:none;height:100%;inset-inline-start:0;position:fixed;top:0;visibility:hidden;width:100%;z-index:101}@media screen and (max-width:767px){.neeto-themes-sidebar__backdrop{display:block;visibility:visible}}.neeto-themes-sidebar__toggler{flex-shrink:0;inset-inline-start:calc(100% + .5rem);position:absolute;top:.5rem;transition:color .3s ease-in-out}@media screen and (min-width:1024px){.neeto-themes-sidebar__toggler{opacity:0;pointer-events:none}}@media screen and (max-width:576px){.neeto-themes-sidebar__toggler{inset-inline-end:1.5rem;inset-inline-start:auto}}.neeto-themes-nano-alignment-block{border-radius:.375rem}.neeto-themes-nano-alignment-button{--neeto-ui-btn-padding-x:0.75rem!important}.neeto-themes-nano-alignment-button__alignment-left{border-end-end-radius:0!important;border-start-end-radius:0!important}.neeto-themes-nano-alignment-button__alignment-center{border-end-start-radius:0!important;border-start-start-radius:0!important}.neeto-themes-nano-alignment-button.neeto-ui-btn--style-primary{--neeto-ui-btn-bg-color:rgb(var(--neeto-ui-primary-100))!important;--neeto-ui-btn-hover-bg-color:rgb(var(--neeto-ui-primary-100))!important}.neeto-themes-nano-alignment-divider{background:rgb(var(--neeto-ui-gray-200));height:2rem;width:.0625rem}.neeto-themes-nano-section__content--open{max-height:1500px;opacity:1;padding-top:.25rem;visibility:visible}.neeto-themes-nano-section__content--closed{max-height:0;opacity:0;visibility:hidden}.neeto-themes-nano-section__title:focus-visible{box-shadow:0 0 0 3px rgba(var(--neeto-ui-primary-500),15%)}.neeto-themes-flip-animating{transition:transform .9s cubic-bezier(.22,1,.36,1);will-change:transform}.neeto-themes-theme-thumbnail__active-banner{background-color:rgb(var(--neeto-ui-primary-500));color:rgb(var(--neeto-ui-white))}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC9qYXZhc2NyaXB0L3N0eWxlc2hlZXRzL2Fic3RyYWN0cy92YXJpYWJsZXMuY3NzIiwiYXBwL2phdmFzY3JpcHQvc3R5bGVzaGVldHMvY29tcG9uZW50cy90aGVtZXMuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQ0UsK0JBQWdDLENBQ2hDLCtCQUFnQyxDQUNoQywrQkFBZ0MsQ0FDaEMsK0JBQWdDLENBQ2hDLG9DQUFxQyxDQUNyQyw0QkFDRixDQ1BBLHVCQUVFLFlBQWEsQ0FDYix5QkFBMEUsQ0FBMUUseUVBQTBFLENBRjFFLFVBR0YsQ0FFQSw2Q0FHRSwyQ0FBNEMsQ0FENUMsV0FBWSxDQUlaLG9CQUFxQixDQUdyQixrQkFBbUIsQ0FMbkIsY0FBZSxDQUNmLEtBQU0sQ0FFTixlQUFnQixDQU5oQixVQUFXLENBT1gsV0FFRixDQUVBLHVEQUVFLGNBQWUsQ0FEZixxQkFBZ0QsQ0FBaEQsOENBRUYsQ0FFQSxvQ0FDRSw2Q0FDRSxXQUFxQyxDQUFyQyxvQ0FDRixDQUNGLENBRUEsb0NBQ0UsNkNBR0UseUJBQTBFLENBQTFFLHlFQUEwRSxDQUYxRSxhQUFjLENBQ2QsaUJBRUYsQ0FDRixDQUVBLHFDQUNFLDZDQUNFLFdBQXFDLENBQXJDLG9DQUNGLENBQ0YsQ0FFQSxxQ0FDRSw2Q0FDRSxXQUFxQyxDQUFyQyxvQ0FDRixDQUNGLENBRUEsd0RBRUUsV0FBZSxDQUNmLFdBQWUsQ0FGZixPQUdGLENBRUEsdUZBQ0UsbUJBQ0YsQ0FFQSxvQ0FDRSx1RkFDRSxhQUNGLENBQ0YsQ0FFQSxvQ0FDRSx1RkFDRSxxQkFBc0IsQ0FDdEIsd0JBQ0YsQ0FDRixDQUVBLHNGQUNFLFlBQ0YsQ0FFQSwyRUFFRSxvQkFBc0IsQ0FEdEIsZ0JBRUYsQ0FFQSwyRUFHRSxZQUFhLENBQ2IscUJBQXNCLENBSHRCLDBCQUFpRixDQUFqRixnRkFBaUYsQ0FDakYsZUFHRixDQUVBLDRJQUNFLFlBQ0YsQ0FFQSxvREFDRSwwQkFBbUQsQ0FBbkQsa0RBQ0YsQ0FFQSxtREFDRSxZQUNGLENBRUEsc0RBR0UsV0FBWSxDQURaLHlCQUEwRSxDQUExRSx5RUFBMEUsQ0FEMUUsaUJBR0YsQ0FFQSxvQ0FDRSxrREFDRixDQUVBLDJFQUNFLFVBQ0YsQ0FFQSw4Q0FDRSxvREFBc0QsQ0FFdEQseUJBQTJCLENBRDNCLHlEQUVGLENBRUEscUZBQ0UsVUFDRixDQUVBLHNDQUNFLHNEQUF3RCxDQUV4RCx5QkFBMkIsQ0FEM0IsMkRBRUYsQ0FFQSw2RUFDRSxVQUNGLENBRUEsZ0RBQ0Usb0RBQXNELENBRXRELHlCQUEyQixDQUQzQix5REFFRixDQUVBLHFHQUVFLG1CQUNGLENBRUEsNENBQ0Usb0NBQ0YsQ0FFQSxnSUFJRSxjQUFlLENBRGYsY0FFRixDQUVBLHFEQUNFLGtEQUFtRCxDQUNuRCx3RUFDRixDQUVBLGdEQUVFLHdCQUF5QixDQUV6QixrREFBbUQsQ0FEbkQsb0RBQXFELENBRnJELFlBSUYsQ0FFQSxvQ0FDRSxnREFDRSxZQUNGLENBQ0YsQ0FFQSwyRUFHRSxnREFBaUQsQ0FEakQsa0RBRUYsQ0FFQSxxRUFDRSx5QkFDRixDQUVBLGdDQU1FLCtDQUFrRCxDQUNsRCxZQUFhLENBRmIsV0FBWSxDQUZaLG9CQUFxQixDQUZyQixjQUFlLENBQ2YsS0FBTSxDQU1OLGlCQUFrQixDQUpsQixVQUFXLENBS1gsV0FDRixDQUVBLG9DQUNFLGdDQUNFLGFBQWMsQ0FDZCxrQkFDRixDQUNGLENBRUEsK0JBSUUsYUFBYyxDQURkLHFDQUF1QyxDQUZ2QyxpQkFBa0IsQ0FDbEIsU0FBVyxDQUdYLGdDQUNGLENBRUEscUNBQ0UsK0JBQ0UsU0FBVSxDQUNWLG1CQUNGLENBQ0YsQ0FFQSxvQ0FDRSwrQkFFRSx1QkFBd0IsQ0FEeEIsdUJBRUYsQ0FDRixDQUVBLG1DQUNFLHFCQUNGLENBRUEsb0NBQ0UsMENBQ0YsQ0FFQSxvREFFRSxpQ0FBcUMsQ0FEckMsbUNBRUYsQ0FFQSxzREFFRSxtQ0FBdUMsQ0FEdkMscUNBRUYsQ0FFQSxnRUFDRSxrRUFBb0UsQ0FDcEUsd0VBQ0YsQ0FFQSxxQ0FHRSx3Q0FBeUMsQ0FEekMsV0FBWSxDQURaLGNBR0YsQ0FFQSwwQ0FDRSxpQkFBa0IsQ0FDbEIsU0FBVSxDQUVWLGtCQUFvQixDQURwQixrQkFFRixDQUVBLDRDQUNFLFlBQWUsQ0FDZixTQUFVLENBQ1YsaUJBQ0YsQ0FFQSxnREFDRSwwREFDRixDQUVBLDZCQUNFLGtEQUEwRCxDQUMxRCxxQkFDRixDQUVBLDZDQUNFLGlEQUFrRCxDQUNsRCxnQ0FDRiIsInNvdXJjZXNDb250ZW50IjpbIjpyb290IHtcbiAgLS10aGVtZXMtc2lkZWJhci1leHBhbmRlZDogNTIwcHg7XG4gIC0tdGhlbWVzLXNpZGViYXItd2lkdGgteGw6IDM0MHB4O1xuICAtLXRoZW1lcy1zaWRlYmFyLXdpZHRoLWxnOiAzMjBweDtcbiAgLS10aGVtZXMtc2lkZWJhci13aWR0aC1zbTogMjgwcHg7XG4gIC0tdGhlbWVzLXNpZGViYXItaGVhZGVyLWhlaWdodDogMTIwcHg7XG4gIC0tYnVpbGRlci1oZWFkZXItaGVpZ2h0OiA2NXB4O1xufVxuIiwiLm5lZXRvLXRoZW1lc19fd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IGNhbGModmFyKC0tdmlld3BvcnQtaGVpZ2h0LCAxMDB2aCkgLSB2YXIoLS1idWlsZGVyLWhlYWRlci1oZWlnaHQpKTtcbn1cblxuLm5lZXRvLXRoZW1lc19fd3JhcHBlciAubmVldG8tdGhlbWVzLXNpZGViYXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktd2hpdGUpKTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGluc2V0LWlubGluZS1zdGFydDogMDtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgei1pbmRleDogMTAyO1xuICBwYWRkaW5nLXRvcDogMS41cmVtO1xufVxuXG4ubmVldG8tdGhlbWVzX193cmFwcGVyIC5uZWV0by10aGVtZXMtc2lkZWJhci0tZXhwYW5kZWQge1xuICB3aWR0aDogdmFyKC0tdGhlbWVzLXNpZGViYXItZXhwYW5kZWQpICFpbXBvcnRhbnQ7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLm5lZXRvLXRoZW1lc19fd3JhcHBlciAubmVldG8tdGhlbWVzLXNpZGViYXIge1xuICAgIHdpZHRoOiB2YXIoLS10aGVtZXMtc2lkZWJhci13aWR0aC1zbSk7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLm5lZXRvLXRoZW1lc19fd3JhcHBlciAubmVldG8tdGhlbWVzLXNpZGViYXIge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IGNhbGModmFyKC0tdmlld3BvcnQtaGVpZ2h0LCAxMDB2aCkgLSB2YXIoLS1idWlsZGVyLWhlYWRlci1oZWlnaHQpKTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLm5lZXRvLXRoZW1lc19fd3JhcHBlciAubmVldG8tdGhlbWVzLXNpZGViYXIge1xuICAgIHdpZHRoOiB2YXIoLS10aGVtZXMtc2lkZWJhci13aWR0aC1sZyk7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTI4MHB4KSB7XG4gIC5uZWV0by10aGVtZXNfX3dyYXBwZXIgLm5lZXRvLXRoZW1lcy1zaWRlYmFyIHtcbiAgICB3aWR0aDogdmFyKC0tdGhlbWVzLXNpZGViYXItd2lkdGgteGwpO1xuICB9XG59XG5cbi5uZWV0by10aGVtZXNfX3dyYXBwZXIgLm5lZXRvLXRoZW1lcy1zaWRlYmFyLS1jb2xsYXBzZWQge1xuICB3aWR0aDogMHJlbTtcbiAgbWF4LXdpZHRoOiAwcmVtO1xuICBtaW4td2lkdGg6IDByZW07XG59XG5cbi5uZWV0by10aGVtZXNfX3dyYXBwZXIgLm5lZXRvLXRoZW1lcy1zaWRlYmFyLS1jb2xsYXBzZWQgLm5lZXRvLXRoZW1lcy1zaWRlYmFyX190b2dnbGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgtMSk7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5uZWV0by10aGVtZXNfX3dyYXBwZXIgLm5lZXRvLXRoZW1lcy1zaWRlYmFyLS1jb2xsYXBzZWQgLm5lZXRvLXRoZW1lcy1zaWRlYmFyX190b2dnbGVyIHtcbiAgICB0b3A6IDYuODEyNXJlbTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NzZweCkge1xuICAubmVldG8tdGhlbWVzX193cmFwcGVyIC5uZWV0by10aGVtZXMtc2lkZWJhci0tY29sbGFwc2VkIC5uZWV0by10aGVtZXMtc2lkZWJhcl9fdG9nZ2xlciB7XG4gICAgaW5zZXQtaW5saW5lLWVuZDogYXV0bztcbiAgICBpbnNldC1pbmxpbmUtc3RhcnQ6IDAuNXJlbTtcbiAgfVxufVxuXG4ubmVldG8tdGhlbWVzX193cmFwcGVyIC5uZWV0by10aGVtZXMtc2lkZWJhci0tY29sbGFwc2VkIC5uZWV0by10aGVtZXMtc2lkZWJhcl9faGVhZGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm5lZXRvLXRoZW1lc19fd3JhcHBlciAubmVldG8tdGhlbWVzLXNpZGViYXIgLm5lZXRvLXRoZW1lcy1zaWRlYmFyX19oZWFkZXIge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbn1cblxuLm5lZXRvLXRoZW1lc19fd3JhcHBlciAubmVldG8tdGhlbWVzLXNpZGViYXIgLm5lZXRvLXRoZW1lcy1zaWRlYmFyX19zY3JvbGwge1xuICBoZWlnaHQ6IGNhbGModmFyKC0tdmlld3BvcnQtaGVpZ2h0LCAxMDB2aCkgLSB2YXIoLS10aGVtZXMtc2lkZWJhci1oZWFkZXItaGVpZ2h0KSk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5uZWV0by10aGVtZXNfX3dyYXBwZXIgLm5lZXRvLXRoZW1lcy1zaWRlYmFyIC5uZWV0by10aGVtZXMtc2lkZWJhcl9fc2Nyb2xsIC5uZWV0by11aS1jb2xvcnBpY2tlcl9fdGFyZ2V0IC5uZWV0by11aS1jb2xvcnBpY2tlci10YXJnZXRfX2NvZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubmVldG8tdGhlbWVzX193cmFwcGVyIC5jc3MtZWRpdG9yLWhlaWdodF9fZXhwYW5kZWQge1xuICBoZWlnaHQ6IGNhbGModmFyKC0tdmlld3BvcnQtaGVpZ2h0LCAxMDB2aCkgLSAzMDBweCk7XG59XG5cbi5uZWV0by10aGVtZXNfX3dyYXBwZXIgLmNzcy1lZGl0b3ItaGVpZ2h0X19yZWd1bGFyIHtcbiAgaGVpZ2h0OiAzODRweDtcbn1cblxuLm5lZXRvLXRoZW1lc19fd3JhcHBlciAubmVldG8tdGhlbWVzLXByZXZpZXdfX3dyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogY2FsYyh2YXIoLS12aWV3cG9ydC1oZWlnaHQsIDEwMHZoKSAtIHZhcigtLWJ1aWxkZXItaGVhZGVyLWhlaWdodCkpO1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbi5uZWV0by10aGVtZXMtdGhlbWUtdGh1bWJuYWlsOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTIwMCkpO1xufVxuXG4ubmVldG8tdGhlbWVzLXRoZW1lLXRodW1ibmFpbDpob3ZlciAubmVldG8tdGhlbWVzLXRoZW1lLXRodW1ibmFpbF9fb3ZlcmxheSB7XG4gIG9wYWNpdHk6IDAuNjtcbn1cblxuLm5lZXRvLXRoZW1lcy10aGVtZS10aHVtYm5haWwtLXByZXZpZXctYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS02MDApKSAhaW1wb3J0YW50O1xuICBvdXRsaW5lOiAycHggc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNjAwKSkgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubmVldG8tdGhlbWVzLXRoZW1lLXRodW1ibmFpbC0tcHJldmlldy1hY3RpdmUgLm5lZXRvLXRoZW1lcy10aGVtZS10aHVtYm5haWxfX292ZXJsYXkge1xuICBvcGFjaXR5OiAwLjY7XG59XG5cbi5uZWV0by10aGVtZXMtdGhlbWUtdGh1bWJuYWlsLS1hY3RpdmUge1xuICBib3JkZXItY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1hY2NlbnQtNTAwKSkgIWltcG9ydGFudDtcbiAgb3V0bGluZTogMnB4IHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1hY2NlbnQtNTAwKSkgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ubmVldG8tdGhlbWVzLXRoZW1lLXRodW1ibmFpbC0tYWN0aXZlIC5uZWV0by10aGVtZXMtdGhlbWUtdGh1bWJuYWlsX19vdmVybGF5IHtcbiAgb3BhY2l0eTogMC42O1xufVxuXG4ubmVldG8tdGhlbWVzLXRoZW1lLXRodW1ibmFpbC0taGlnaGxpZ2h0LWFjdGl2ZSB7XG4gIGJvcmRlci1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNDAwKSkgIWltcG9ydGFudDtcbiAgb3V0bGluZTogMnB4IHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTQwMCkpICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm5lZXRvLXRoZW1lcy10aGVtZS10aHVtYm5haWxfX2FwcGx5LWJ0bjpkaXNhYmxlZCxcbi5uZWV0by10aGVtZXMtdGhlbWUtdGh1bWJuYWlsX19hcHBseS1idG5bZGlzYWJsZWRdIHtcbiAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xufVxuXG4ubmVldG8tdGhlbWVzLXRoZW1lLXRodW1ibmFpbF9fYWN0aXZlLWxhYmVsIHtcbiAgLS1uZWV0by11aS1idG4tZm9jdXMtYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLm5lZXRvLXRoZW1lcy10aGVtZS10aHVtYm5haWxfX3ByZXZpZXctYnRuLFxuLm5lZXRvLXRoZW1lcy10aGVtZS10aHVtYm5haWxfX2FwcGx5LWJ0bixcbi5uZWV0by10aGVtZXMtdGhlbWUtdGh1bWJuYWlsX19hY3RpdmUtbGFiZWwge1xuICB3aWR0aDogOC4xMjVyZW07XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLm5lZXRvLXRoZW1lcy10aGVtZS10aHVtYm5haWxfX3ByZXZpZXctYnRuLS1kaXNhYmxlZCB7XG4gIC0tbmVldG8tdWktYnRuLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbiAgLS1uZWV0by11aS1idG4tYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHJnYmEodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cblxuLm5lZXRvLXRoZW1lcy1zaWRlYmFyX19jdXN0b20tY3NzLWVkaXRvci1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWUxZTFlO1xuICBib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOiB2YXIoLS1uZWV0by11aS1yb3VuZGVkLWxnKTtcbiAgYm9yZGVyLXN0YXJ0LWVuZC1yYWRpdXM6IHZhcigtLW5lZXRvLXVpLXJvdW5kZWQtbGcpO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NzZweCkge1xuICAubmVldG8tdGhlbWVzLXNpZGViYXJfX2N1c3RvbS1jc3MtZWRpdG9yLWhlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ubmVldG8tdGhlbWVzLXNpZGViYXIgLm92ZXJmbG93LWd1YXJkLFxuLm5lZXRvLXRoZW1lcy1zaWRlYmFyIC5tb25hY28tZWRpdG9yIHtcbiAgYm9yZGVyLWVuZC1zdGFydC1yYWRpdXM6IHZhcigtLW5lZXRvLXVpLXJvdW5kZWQtbGcpO1xuICBib3JkZXItZW5kLWVuZC1yYWRpdXM6IHZhcigtLW5lZXRvLXVpLXJvdW5kZWQtbGcpO1xufVxuXG4ubmVldG8tdGhlbWVzLXNpZGViYXJfX2N1c3RvbS1jc3Mtd3JhcHBlciAubmVldG8tdGhlbWVzLW5hbm8tc2VjdGlvbiB7XG4gIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLm5lZXRvLXRoZW1lcy1zaWRlYmFyX19iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBpbnNldC1pbmxpbmUtc3RhcnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tbmVldG8tdWktYmxhY2spLCAwLjQpO1xuICBkaXNwbGF5OiBub25lO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHotaW5kZXg6IDEwMTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLm5lZXRvLXRoZW1lcy1zaWRlYmFyX19iYWNrZHJvcCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG4ubmVldG8tdGhlbWVzLXNpZGViYXJfX3RvZ2dsZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMC41cmVtO1xuICBpbnNldC1pbmxpbmUtc3RhcnQ6IGNhbGMoMTAwJSArIDAuNXJlbSk7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLm5lZXRvLXRoZW1lcy1zaWRlYmFyX190b2dnbGVyIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU3NnB4KSB7XG4gIC5uZWV0by10aGVtZXMtc2lkZWJhcl9fdG9nZ2xlciB7XG4gICAgaW5zZXQtaW5saW5lLXN0YXJ0OiBhdXRvO1xuICAgIGluc2V0LWlubGluZS1lbmQ6IDEuNXJlbTtcbiAgfVxufVxuXG4ubmVldG8tdGhlbWVzLW5hbm8tYWxpZ25tZW50LWJsb2NrIHtcbiAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XG59XG5cbi5uZWV0by10aGVtZXMtbmFuby1hbGlnbm1lbnQtYnV0dG9uIHtcbiAgLS1uZWV0by11aS1idG4tcGFkZGluZy14OiAwLjc1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5uZWV0by10aGVtZXMtbmFuby1hbGlnbm1lbnQtYnV0dG9uX19hbGlnbm1lbnQtbGVmdCB7XG4gIGJvcmRlci1zdGFydC1lbmQtcmFkaXVzOiAwcHggIWltcG9ydGFudDtcbiAgYm9yZGVyLWVuZC1lbmQtcmFkaXVzOiAwcHggIWltcG9ydGFudDtcbn1cblxuLm5lZXRvLXRoZW1lcy1uYW5vLWFsaWdubWVudC1idXR0b25fX2FsaWdubWVudC1jZW50ZXIge1xuICBib3JkZXItc3RhcnQtc3RhcnQtcmFkaXVzOiAwcHggIWltcG9ydGFudDtcbiAgYm9yZGVyLWVuZC1zdGFydC1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xufVxuXG4ubmVldG8tdGhlbWVzLW5hbm8tYWxpZ25tZW50LWJ1dHRvbi5uZWV0by11aS1idG4tLXN0eWxlLXByaW1hcnkge1xuICAtLW5lZXRvLXVpLWJ0bi1iZy1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLXByaW1hcnktMTAwKSkgIWltcG9ydGFudDtcbiAgLS1uZWV0by11aS1idG4taG92ZXItYmctY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1wcmltYXJ5LTEwMCkpICFpbXBvcnRhbnQ7XG59XG5cbi5uZWV0by10aGVtZXMtbmFuby1hbGlnbm1lbnQtZGl2aWRlciB7XG4gIHdpZHRoOiAwLjA2MjVyZW07XG4gIGhlaWdodDogMnJlbTtcbiAgYmFja2dyb3VuZDogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSk7XG59XG5cbi5uZWV0by10aGVtZXMtbmFuby1zZWN0aW9uX19jb250ZW50LS1vcGVuIHtcbiAgbWF4LWhlaWdodDogMTUwMHB4O1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBwYWRkaW5nLXRvcDogMC4yNXJlbTtcbn1cblxuLm5lZXRvLXRoZW1lcy1uYW5vLXNlY3Rpb25fX2NvbnRlbnQtLWNsb3NlZCB7XG4gIG1heC1oZWlnaHQ6IDBweDtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ubmVldG8tdGhlbWVzLW5hbm8tc2VjdGlvbl9fdGl0bGU6Zm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKHZhcigtLW5lZXRvLXVpLXByaW1hcnktNTAwKSwgMTUlKTtcbn1cblxuLm5lZXRvLXRoZW1lcy1mbGlwLWFuaW1hdGluZyB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA5MDBtcyBjdWJpYy1iZXppZXIoMC4yMiwgMSwgMC4zNiwgMSk7XG4gIHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm07XG59XG5cbi5uZWV0by10aGVtZXMtdGhlbWUtdGh1bWJuYWlsX19hY3RpdmUtYmFubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLXByaW1hcnktNTAwKSk7XG4gIGNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktd2hpdGUpKTtcbn1cbiJdfQ== */";
77
82
  n(css,{});
78
83
 
79
84
  var _excluded$1 = ["themeId"];
@@ -97,19 +102,27 @@ var update = function update(_ref) {
97
102
  payload = _ref.payload;
98
103
  return axios.put("".concat(utils.BASE_URL, "/api/v1/themes/").concat(id), {
99
104
  theme: payload
105
+ }, {
106
+ showToastr: false
100
107
  });
101
108
  };
102
109
  var destroy = function destroy(id) {
103
- return axios["delete"]("".concat(utils.BASE_URL, "/api/v1/themes/").concat(id));
110
+ return axios["delete"]("".concat(utils.BASE_URL, "/api/v1/themes/").concat(id), {
111
+ showToastr: false
112
+ });
104
113
  };
105
114
  var clone = function clone(id) {
106
- return axios.post("".concat(utils.BASE_URL, "/api/v1/themes/").concat(id, "/clone"));
115
+ return axios.post("".concat(utils.BASE_URL, "/api/v1/themes/").concat(id, "/clone"), {}, {
116
+ showToastr: false
117
+ });
107
118
  };
108
119
  var apply = function apply(_ref2) {
109
120
  var themeId = _ref2.themeId,
110
121
  payload = _objectWithoutProperties(_ref2, _excluded$1);
111
122
  return axios.post("".concat(utils.BASE_URL, "/api/v1/themes/").concat(themeId, "/apply"), {
112
123
  entity: payload
124
+ }, {
125
+ showToastr: false
113
126
  });
114
127
  };
115
128
  var applyGlobalTheme = function applyGlobalTheme(_ref3) {
@@ -133,13 +146,13 @@ var themesApi = {
133
146
  function ownKeys$5(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
134
147
  function _objectSpread$5(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$5(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$5(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
135
148
  var useListThemes = function useListThemes(entityId) {
136
- var _useConfigStore = useThemeUtils.useConfigStore(function (store) {
149
+ var _useConfigStore = useExpandedSection.useConfigStore(function (store) {
137
150
  return {
138
151
  isTemplateThemesEnabled: store["isTemplateThemesEnabled"]
139
152
  };
140
153
  }, shallow.shallow),
141
154
  isTemplateThemesEnabled = _useConfigStore.isTemplateThemesEnabled;
142
- var queryKey = isTemplateThemesEnabled ? [useThemeUtils.QUERY_KEYS.THEMES_LIST, entityId] : [useThemeUtils.QUERY_KEYS.THEMES_LIST];
155
+ var queryKey = isTemplateThemesEnabled ? [useExpandedSection.QUERY_KEYS.THEMES_LIST, entityId] : [useExpandedSection.QUERY_KEYS.THEMES_LIST];
143
156
  return reactQuery.useQuery({
144
157
  queryKey: queryKey,
145
158
  queryFn: function queryFn() {
@@ -149,7 +162,7 @@ var useListThemes = function useListThemes(entityId) {
149
162
  };
150
163
  var useFetchTheme = function useFetchTheme(themeId, options) {
151
164
  return reactQuery.useQuery(_objectSpread$5({
152
- queryKey: [useThemeUtils.QUERY_KEYS.THEME_DETAILS, themeId],
165
+ queryKey: [useExpandedSection.QUERY_KEYS.THEME_DETAILS, themeId],
153
166
  queryFn: function queryFn() {
154
167
  return themesApi.show(themeId);
155
168
  }
@@ -157,7 +170,7 @@ var useFetchTheme = function useFetchTheme(themeId, options) {
157
170
  };
158
171
  var useCreateTheme = function useCreateTheme() {
159
172
  return reactUtils.useMutationWithInvalidation(themesApi.create, {
160
- keysToInvalidate: [[useThemeUtils.QUERY_KEYS.THEMES_LIST], [useThemeUtils.QUERY_KEYS.THEME_ENTITY_DETAILS], [useThemeUtils.QUERY_KEYS.GLOBAL_THEME_DETAILS]]
173
+ keysToInvalidate: [[useExpandedSection.QUERY_KEYS.THEMES_LIST], [useExpandedSection.QUERY_KEYS.THEME_ENTITY_DETAILS], [useExpandedSection.QUERY_KEYS.GLOBAL_THEME_DETAILS]]
161
174
  });
162
175
  };
163
176
  var useUpdateTheme = function useUpdateTheme(themeId) {
@@ -168,35 +181,30 @@ var useUpdateTheme = function useUpdateTheme(themeId) {
168
181
  payload: payload
169
182
  });
170
183
  }, {
171
- keysToInvalidate: [[useThemeUtils.QUERY_KEYS.THEMES_LIST], [useThemeUtils.QUERY_KEYS.THEME_ENTITY_DETAILS], [useThemeUtils.QUERY_KEYS.THEME_DETAILS, themeId], [useThemeUtils.QUERY_KEYS.GLOBAL_THEME_DETAILS]],
184
+ keysToInvalidate: [[useExpandedSection.QUERY_KEYS.THEMES_LIST], [useExpandedSection.QUERY_KEYS.THEME_ENTITY_DETAILS], [useExpandedSection.QUERY_KEYS.THEME_DETAILS, themeId], [useExpandedSection.QUERY_KEYS.GLOBAL_THEME_DETAILS]],
172
185
  onSuccess: function onSuccess(_ref) {
173
186
  var theme = _ref.theme;
174
- queryClient.setQueryData([useThemeUtils.QUERY_KEYS.THEME_DETAILS, themeId], theme);
187
+ queryClient.setQueryData([useExpandedSection.QUERY_KEYS.THEME_DETAILS, themeId], theme);
175
188
  }
176
189
  });
177
190
  };
178
191
  var useDeleteTheme = function useDeleteTheme() {
179
192
  return reactUtils.useMutationWithInvalidation(themesApi.destroy, {
180
- keysToInvalidate: [[useThemeUtils.QUERY_KEYS.THEMES_LIST], [useThemeUtils.QUERY_KEYS.THEME_ENTITY_DETAILS]]
193
+ keysToInvalidate: [[useExpandedSection.QUERY_KEYS.THEMES_LIST], [useExpandedSection.QUERY_KEYS.THEME_ENTITY_DETAILS]]
181
194
  });
182
195
  };
183
196
  var useCloneTheme = function useCloneTheme() {
184
197
  return reactUtils.useMutationWithInvalidation(themesApi.clone, {
185
- keysToInvalidate: [useThemeUtils.QUERY_KEYS.THEMES_LIST]
198
+ keysToInvalidate: [useExpandedSection.QUERY_KEYS.THEMES_LIST]
186
199
  });
187
200
  };
188
201
  var useApplyTheme = function useApplyTheme(_ref2) {
189
202
  var onSuccess = _ref2.onSuccess;
190
203
  return reactUtils.useMutationWithInvalidation(themesApi.apply, {
191
- keysToInvalidate: [[useThemeUtils.QUERY_KEYS.THEMES_LIST], [useThemeUtils.QUERY_KEYS.THEME_ENTITY_DETAILS]],
204
+ keysToInvalidate: [[useExpandedSection.QUERY_KEYS.THEMES_LIST], [useExpandedSection.QUERY_KEYS.THEME_ENTITY_DETAILS]],
192
205
  onSuccess: onSuccess
193
206
  });
194
207
  };
195
- var useApplyGlobalTheme = function useApplyGlobalTheme() {
196
- return reactUtils.useMutationWithInvalidation(themesApi.applyGlobalTheme, {
197
- keysToInvalidate: [[useThemeUtils.QUERY_KEYS.GLOBAL_THEME_DETAILS], [useThemeUtils.QUERY_KEYS.THEMES_LIST], [useThemeUtils.QUERY_KEYS.THEME_ENTITY_DETAILS]]
198
- });
199
- };
200
208
 
201
209
  var routes = {
202
210
  themes: {
@@ -219,7 +227,7 @@ var globalThemesApi = {
219
227
 
220
228
  var useShowGlobalTheme = function useShowGlobalTheme(entityType) {
221
229
  return reactQuery.useQuery({
222
- queryKey: [useThemeUtils.QUERY_KEYS.GLOBAL_THEME_DETAILS, entityType],
230
+ queryKey: [useExpandedSection.QUERY_KEYS.GLOBAL_THEME_DETAILS, entityType],
223
231
  queryFn: function queryFn() {
224
232
  return globalThemesApi.show(entityType);
225
233
  },
@@ -272,33 +280,26 @@ var Card$2 = function Card(_ref) {
272
280
  name = _ref.name,
273
281
  className = _ref.className,
274
282
  helpPopoverProps = _ref.helpPopoverProps,
275
- required = _ref.required,
276
- _ref$isDisabled = _ref.isDisabled,
277
- isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled;
278
- var _useConfigStore = useThemeUtils.useConfigStore(function (store) {
279
- return {
280
- accordionOpenState: store["accordionOpenState"],
281
- setAccordionOpenState: store["setAccordionOpenState"]
282
- };
283
- }, shallow.shallow),
284
- accordionOpenState = _useConfigStore.accordionOpenState,
285
- setAccordionOpenState = _useConfigStore.setAccordionOpenState;
283
+ required = _ref.required;
284
+ var _useExpandedSection = useExpandedSection.useExpandedSection(),
285
+ expandedSection = _useExpandedSection.expandedSection,
286
+ setExpandedSection = _useExpandedSection.setExpandedSection;
287
+ var isOpen = expandedSection === name;
286
288
  var isRTL = i18n.dir() === "rtl";
287
289
  var ToggleIcon = isRTL ? Left : Right;
290
+ var handleToggle = function handleToggle() {
291
+ return setExpandedSection(isOpen ? "" : name);
292
+ };
288
293
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
289
294
  "data-testid": "theme-".concat(neetoCist.hyphenate(title), "-properties"),
290
295
  className: classnames("neeto-themes-nano-section neeto-ui-border-gray-200 border-b pt-2 transition-all duration-300 last:border-none", className, {
291
- "pb-2": !accordionOpenState[name],
292
- "pb-3": accordionOpenState[name],
293
- "opacity-40": isDisabled
296
+ "pb-2": !isOpen,
297
+ "pb-3": isOpen
294
298
  }),
295
299
  children: [title && /*#__PURE__*/jsxRuntime.jsxs("button", {
296
300
  className: "neeto-themes-nano-section__title flex w-full cursor-pointer items-center justify-between px-1 py-2 focus:outline-none",
297
- disabled: isDisabled,
298
301
  type: "button",
299
- onClick: function onClick() {
300
- return setAccordionOpenState(_objectSpread$4(_objectSpread$4({}, accordionOpenState), {}, _defineProperty({}, name, !accordionOpenState[name])));
301
- },
302
+ onClick: handleToggle,
302
303
  children: [/*#__PURE__*/jsxRuntime.jsxs(Typography, {
303
304
  className: "flex min-w-0 grow items-center gap-2 text-start",
304
305
  component: "span",
@@ -314,13 +315,13 @@ var Card$2 = function Card(_ref) {
314
315
  }), /*#__PURE__*/jsxRuntime.jsx(ToggleIcon, {
315
316
  size: 20,
316
317
  className: classnames("transition-all duration-300", {
317
- "rotate-90 rtl:-rotate-90": accordionOpenState[name]
318
+ "rotate-90 rtl:-rotate-90": isOpen
318
319
  })
319
320
  })]
320
321
  }), children && /*#__PURE__*/jsxRuntime.jsx("div", {
321
322
  className: classnames("neeto-themes-nano-section__content w-full space-y-3 overflow-hidden px-1 transition-all duration-300", {
322
- "neeto-themes-nano-section__content--closed": !accordionOpenState[name],
323
- "neeto-themes-nano-section__content--open pb-1": accordionOpenState[name]
323
+ "neeto-themes-nano-section__content--closed": !isOpen,
324
+ "neeto-themes-nano-section__content--open pb-1": isOpen
324
325
  }),
325
326
  children: children
326
327
  })]
@@ -356,6 +357,61 @@ var buildPathname = function buildPathname(route) {
356
357
  return "".concat(pathname).concat(route);
357
358
  };
358
359
 
360
+ // FLIP: measure each theme card's position, apply the React update, then
361
+ // transform every card back to its old spot and let a CSS transition glide
362
+ // it to the new one. The animation itself is CSS (.neeto-themes-flip-animating).
363
+ var animateThemeReorder = function animateThemeReorder(updateFn) {
364
+ var prefersReducedMotion = window.matchMedia("(prefers-reduced-motion: reduce)").matches;
365
+ var cards = _toConsumableArray(document.querySelectorAll("[data-flip-id]"));
366
+ var scrollContainer = document.querySelector(".neeto-themes-sidebar__scroll");
367
+ if (prefersReducedMotion || cards.length === 0) {
368
+ updateFn();
369
+ if (scrollContainer) scrollContainer.scrollTop = 0;
370
+ return;
371
+ }
372
+ var oldRects = new Map(cards.map(function (card) {
373
+ return [card.dataset.flipId, card.getBoundingClientRect()];
374
+ }));
375
+ reactDom.flushSync(updateFn);
376
+
377
+ // Move the viewport to the top — the applied theme is now the first card.
378
+ // The FLIP deltas below are measured after this, so the scroll is folded
379
+ // into the glide instead of showing as an instant jump.
380
+ if (scrollContainer) scrollContainer.scrollTop = 0;
381
+ var flips = _toConsumableArray(document.querySelectorAll("[data-flip-id]")).map(function (card) {
382
+ var oldRect = oldRects.get(card.dataset.flipId);
383
+ if (!oldRect) return null;
384
+ var newRect = card.getBoundingClientRect();
385
+ var dx = oldRect.left - newRect.left;
386
+ var dy = oldRect.top - newRect.top;
387
+ return dx || dy ? {
388
+ card: card,
389
+ dx: dx,
390
+ dy: dy
391
+ } : null;
392
+ }).filter(Boolean);
393
+ if (flips.length === 0) return;
394
+ flips.forEach(function (_ref) {
395
+ var card = _ref.card,
396
+ dx = _ref.dx,
397
+ dy = _ref.dy;
398
+ card.style.transform = "translate(".concat(dx, "px, ").concat(dy, "px)");
399
+ });
400
+
401
+ // Force a reflow so the starting transform is committed before animating.
402
+ document.body.offsetHeight;
403
+ flips.forEach(function (_ref2) {
404
+ var card = _ref2.card;
405
+ card.classList.add("neeto-themes-flip-animating");
406
+ card.style.transform = "";
407
+ card.addEventListener("transitionend", function () {
408
+ card.classList.remove("neeto-themes-flip-animating");
409
+ }, {
410
+ once: true
411
+ });
412
+ });
413
+ };
414
+
359
415
  var CustomCSS = function CustomCSS(_ref) {
360
416
  var onEditCSSClick = _ref.onEditCSSClick,
361
417
  currentScreen = _ref.currentScreen,
@@ -366,18 +422,19 @@ var CustomCSS = function CustomCSS(_ref) {
366
422
  var _useFormikContext = formik.useFormikContext(),
367
423
  values = _useFormikContext.values,
368
424
  setFieldValue = _useFormikContext.setFieldValue;
369
- var _useConfigStore = useThemeUtils.useConfigStore(function (store) {
425
+ var _useConfigStore = useExpandedSection.useConfigStore(function (store) {
370
426
  return {
371
427
  themePropertiesSchema: store["themePropertiesSchema"],
372
- accordionOpenState: store["accordionOpenState"],
373
428
  helpPopoverProps: store["helpPopoverProps"]
374
429
  };
375
430
  }, shallow.shallow),
376
431
  themePropertiesSchema = _useConfigStore.themePropertiesSchema,
377
- accordionOpenState = _useConfigStore.accordionOpenState,
378
432
  helpPopoverProps = _useConfigStore.helpPopoverProps;
379
433
  var _helpPopoverProps$cus = helpPopoverProps.customCss,
380
434
  customCssHelpPopoverProps = _helpPopoverProps$cus === void 0 ? {} : _helpPopoverProps$cus;
435
+ var _useExpandedSection = useExpandedSection.useExpandedSection(),
436
+ expandedSection = _useExpandedSection.expandedSection;
437
+ var isExpanded = expandedSection === "customcss";
381
438
  var customCSS = neetoCist.findBy({
382
439
  kind: "custom_css"
383
440
  }, values.properties);
@@ -410,14 +467,13 @@ var CustomCSS = function CustomCSS(_ref) {
410
467
  className: "neeto-themes-sidebar__custom-css-wrapper",
411
468
  id: "css-editor",
412
469
  children: /*#__PURE__*/jsxRuntime.jsx(Card$2, {
413
- isDisabled: !isEnabled,
414
470
  name: "customcss",
415
471
  helpPopoverProps: isEnabled ? customCssHelpPopoverProps : {
416
- title: t("neetoThemes.common.proFeature.title"),
417
- description: t("neetoThemes.common.proFeature.description")
472
+ title: t("neetoThemes.common.proFeature.customCSS.title"),
473
+ description: t("neetoThemes.common.proFeature.customCSS.description")
418
474
  },
419
475
  title: isCustomCssScreen ? "" : t("neetoThemes.build.leftSideBar.themes.customCSS"),
420
- children: isEnabled && /*#__PURE__*/jsxRuntime.jsxs("div", {
476
+ children: isEnabled ? /*#__PURE__*/jsxRuntime.jsxs("div", {
421
477
  className: "w-full",
422
478
  children: [/*#__PURE__*/jsxRuntime.jsx("div", {
423
479
  className: "neeto-themes-sidebar__custom-css-editor-header w-full justify-end gap-1 rounded-b-none p-2",
@@ -427,11 +483,18 @@ var CustomCSS = function CustomCSS(_ref) {
427
483
  label: isCustomCssScreen ? t("neetoThemes.buttons.minimizeEditor") : t("neetoThemes.buttons.expandEditor"),
428
484
  onClick: handleEditorToggle
429
485
  })
430
- }), accordionOpenState.customcss && /*#__PURE__*/jsxRuntime.jsx(Editor, {
486
+ }), isExpanded && /*#__PURE__*/jsxRuntime.jsx(Editor, {
431
487
  isCustomCssScreen: isCustomCssScreen,
432
488
  value: customCSS.value,
433
489
  onChange: handleChange
434
490
  })]
491
+ }) : /*#__PURE__*/jsxRuntime.jsx("div", {
492
+ className: "px-1 py-2",
493
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography, {
494
+ lineHeight: "normal",
495
+ style: "body2",
496
+ children: t("neetoThemes.common.proFeature.customCSS.description")
497
+ })
435
498
  })
436
499
  })
437
500
  });
@@ -926,13 +989,13 @@ var Properties = function Properties(_ref) {
926
989
  var onPropertiesChange = _ref.onPropertiesChange,
927
990
  condition = _ref.condition,
928
991
  themeId = _ref.themeId;
929
- var _useConfigStore = useThemeUtils.useConfigStore(function (store) {
992
+ var _useConfigStore = useExpandedSection.useConfigStore(function (store) {
930
993
  return {
931
994
  themePropertiesSchema: store["themePropertiesSchema"]
932
995
  };
933
996
  }, shallow.shallow),
934
997
  themePropertiesSchema = _useConfigStore.themePropertiesSchema;
935
- var _useThemeStore = useThemeUtils.useThemeStore(function (store) {
998
+ var _useThemeStore = useExpandedSection.useThemeStore(function (store) {
936
999
  return {
937
1000
  setThemeState: store["setThemeState"]
938
1001
  };
@@ -942,7 +1005,7 @@ var Properties = function Properties(_ref) {
942
1005
  setFieldValue = _useFormikContext.setFieldValue,
943
1006
  values = _useFormikContext.values,
944
1007
  errors = _useFormikContext.errors;
945
- var _useThemeUtils = useThemeUtils.useThemeUtils(),
1008
+ var _useThemeUtils = useExpandedSection.useThemeUtils(),
946
1009
  setVariable = _useThemeUtils.setVariable,
947
1010
  setTheme = _useThemeUtils.setTheme;
948
1011
  var handleColorChange = function handleColorChange(name) {
@@ -1029,10 +1092,10 @@ var Properties = function Properties(_ref) {
1029
1092
  case "font_family":
1030
1093
  return /*#__PURE__*/jsxRuntime.jsx(FontPickerBlock, {
1031
1094
  label: buildLabel(key, kind),
1032
- options: useThemeUtils.FONT_OPTIONS,
1095
+ options: useExpandedSection.FONT_OPTIONS,
1033
1096
  value: neetoCist.findBy({
1034
1097
  value: value || null
1035
- }, useThemeUtils.FONT_OPTIONS),
1098
+ }, useExpandedSection.FONT_OPTIONS),
1036
1099
  onChange: function onChange(_ref4) {
1037
1100
  var value = _ref4.value;
1038
1101
  return handleChange(key, value);
@@ -1060,9 +1123,9 @@ var Properties = function Properties(_ref) {
1060
1123
  case "overlay_opacity":
1061
1124
  return /*#__PURE__*/jsxRuntime.jsx(SliderBlock, {
1062
1125
  label: buildLabel(key, kind),
1063
- marks: useThemeUtils.OVERLAY_OPACITY_SLIDER_MARKS,
1064
- max: useThemeUtils.HUNDRED,
1065
- min: ramda.negate(useThemeUtils.HUNDRED),
1126
+ marks: useExpandedSection.OVERLAY_OPACITY_SLIDER_MARKS,
1127
+ max: useExpandedSection.HUNDRED,
1128
+ min: ramda.negate(useExpandedSection.HUNDRED),
1066
1129
  value: Number(value) || 0,
1067
1130
  onChange: function onChange(opacity) {
1068
1131
  return handleOverlayChange(key, opacity);
@@ -1079,7 +1142,7 @@ var Properties = function Properties(_ref) {
1079
1142
  }, themePropertiesSchema)) === null || _findBy4 === void 0 || (_findBy4 = _findBy4.options) === null || _findBy4 === void 0 ? void 0 : _findBy4.map(neetoCist.toLabelAndValue);
1080
1143
  return /*#__PURE__*/jsxRuntime.jsx(SelectBlock, {
1081
1144
  label: buildLabel(key, kind),
1082
- options: options || useThemeUtils.POSITION_OPTIONS,
1145
+ options: options || useExpandedSection.POSITION_OPTIONS,
1083
1146
  placeholder: "left",
1084
1147
  value: neetoCist.toLabelAndValue(value),
1085
1148
  onChange: function onChange(option) {
@@ -1137,7 +1200,7 @@ var ImageBlock = function ImageBlock(_ref) {
1137
1200
  var _useFormikContext = formik.useFormikContext(),
1138
1201
  setFieldValue = _useFormikContext.setFieldValue,
1139
1202
  values = _useFormikContext.values;
1140
- var _useConfigStore = useThemeUtils.useConfigStore(function (store) {
1203
+ var _useConfigStore = useExpandedSection.useConfigStore(function (store) {
1141
1204
  return {
1142
1205
  themePropertiesSchema: store["themePropertiesSchema"]
1143
1206
  };
@@ -1219,7 +1282,7 @@ var ImageBlock = function ImageBlock(_ref) {
1219
1282
  onUploadComplete: handleImageChange
1220
1283
  }), isPositionChangerVisible && /*#__PURE__*/jsxRuntime.jsx(SelectBlock, {
1221
1284
  label: buildLabel("".concat(name, "Position"), "image"),
1222
- options: options || useThemeUtils.POSITION_OPTIONS,
1285
+ options: options || useExpandedSection.POSITION_OPTIONS,
1223
1286
  placeholder: t("neetoThemes.common.left"),
1224
1287
  value: neetoCist.toLabelAndValue(((_findBy = neetoCist.findBy({
1225
1288
  key: "".concat(name, "_position")
@@ -1242,7 +1305,7 @@ var Images = function Images(_ref) {
1242
1305
  fixedAspectRatio = _ref.fixedAspectRatio;
1243
1306
  var _useFormikContext = formik.useFormikContext(),
1244
1307
  values = _useFormikContext.values;
1245
- var _useConfigStore = useThemeUtils.useConfigStore(function (store) {
1308
+ var _useConfigStore = useExpandedSection.useConfigStore(function (store) {
1246
1309
  return {
1247
1310
  helpPopoverProps: store["helpPopoverProps"]
1248
1311
  };
@@ -1274,7 +1337,7 @@ var ThemeMeta = function ThemeMeta(_ref) {
1274
1337
  var className = _ref.className;
1275
1338
  var _useTranslation = reactI18next.useTranslation(),
1276
1339
  t = _useTranslation.t;
1277
- var _useConfigStore = useThemeUtils.useConfigStore(function (store) {
1340
+ var _useConfigStore = useExpandedSection.useConfigStore(function (store) {
1278
1341
  return {
1279
1342
  helpPopoverProps: store["helpPopoverProps"]
1280
1343
  };
@@ -1316,7 +1379,7 @@ var Customize = function Customize(_ref) {
1316
1379
  _useState2 = _slicedToArray(_useState, 2),
1317
1380
  popoverInstance = _useState2[0],
1318
1381
  setPopoverInstance = _useState2[1];
1319
- var _useConfigStore = useThemeUtils.useConfigStore(function (store) {
1382
+ var _useConfigStore = useExpandedSection.useConfigStore(function (store) {
1320
1383
  return {
1321
1384
  themePropertiesSchema: store["themePropertiesSchema"],
1322
1385
  entityType: store["entityType"],
@@ -1334,7 +1397,7 @@ var Customize = function Customize(_ref) {
1334
1397
  proFeatures = _useConfigStore.proFeatures;
1335
1398
  var _useParams = reactRouterDom.useParams(),
1336
1399
  themeId = _useParams.themeId;
1337
- var _useThemeStore = useThemeUtils.useThemeStore(function (store) {
1400
+ var _useThemeStore = useExpandedSection.useThemeStore(function (store) {
1338
1401
  return {
1339
1402
  currentTheme: store["currentTheme"],
1340
1403
  setThemeState: store["setThemeState"]
@@ -1424,7 +1487,7 @@ var Customize = function Customize(_ref) {
1424
1487
  shouldSetAsGlobalTheme: isThemeGlobalTheme,
1425
1488
  entityType: entityType
1426
1489
  }),
1427
- validationSchema: useThemeUtils.THEME_VALIDATION_SCHEMA,
1490
+ validationSchema: useExpandedSection.THEME_VALIDATION_SCHEMA,
1428
1491
  enableReinitialize: true,
1429
1492
  onSubmit: onSubmit
1430
1493
  },
@@ -1493,7 +1556,9 @@ var Customize = function Customize(_ref) {
1493
1556
  className: "text-sm",
1494
1557
  style: "body2",
1495
1558
  children: t("neetoThemes.build.leftSideBar.themes.themeOptions.setAsGlobalTheme.helpText", {
1496
- entityType: entityType
1559
+ entityType: t("neetoThemes.entityType.".concat(entityType.toLowerCase()), {
1560
+ count: 2
1561
+ })
1497
1562
  })
1498
1563
  })]
1499
1564
  })]
@@ -1541,7 +1606,7 @@ var Customize = function Customize(_ref) {
1541
1606
  },
1542
1607
  i18nKey: "neetoThemes.build.leftSideBar.themes.notAppliedYet",
1543
1608
  values: {
1544
- entityType: entityType
1609
+ entityType: t("neetoThemes.entityType.".concat(entityType.toLowerCase()))
1545
1610
  }
1546
1611
  })
1547
1612
  }), /*#__PURE__*/jsxRuntime.jsx(Button, {
@@ -1561,13 +1626,33 @@ var Customize = function Customize(_ref) {
1561
1626
  });
1562
1627
  };
1563
1628
 
1629
+ var QuickActionRow = function QuickActionRow(_ref) {
1630
+ var Icon = _ref.icon,
1631
+ label = _ref.label,
1632
+ onClick = _ref.onClick,
1633
+ testId = _ref.testId;
1634
+ return /*#__PURE__*/jsxRuntime.jsxs("button", {
1635
+ onClick: onClick,
1636
+ className: "neeto-ui-border-gray-100 hover:neeto-ui-bg-gray-100 flex w-full cursor-pointer items-center gap-3 border-t px-3 py-2 text-start transition-colors",
1637
+ "data-testid": testId,
1638
+ type: "button",
1639
+ children: [/*#__PURE__*/jsxRuntime.jsx(Icon, {
1640
+ size: 16
1641
+ }), /*#__PURE__*/jsxRuntime.jsx(Typography, {
1642
+ lineHeight: "normal",
1643
+ style: "body2",
1644
+ children: label
1645
+ })]
1646
+ });
1647
+ };
1648
+
1564
1649
  var Thumbnail = function Thumbnail(_ref) {
1565
1650
  var _theme$snakeToCamelCa, _findBy, _findBy2;
1566
1651
  var active = _ref.active,
1567
1652
  isPreviewing = _ref.isPreviewing,
1568
1653
  isHighLightedTheme = _ref.isHighLightedTheme,
1569
1654
  theme = _ref.theme;
1570
- var _useConfigStore = useThemeUtils.useConfigStore(function (store) {
1655
+ var _useConfigStore = useExpandedSection.useConfigStore(function (store) {
1571
1656
  return {
1572
1657
  themePropertiesSchema: store["themePropertiesSchema"]
1573
1658
  };
@@ -1641,6 +1726,7 @@ var Thumbnail = function Thumbnail(_ref) {
1641
1726
  };
1642
1727
 
1643
1728
  var Card = function Card(_ref) {
1729
+ var _theme$logo, _theme$coverImage;
1644
1730
  var _ref$active = _ref.active,
1645
1731
  active = _ref$active === void 0 ? false : _ref$active,
1646
1732
  isPreviewing = _ref.isPreviewing,
@@ -1653,31 +1739,29 @@ var Card = function Card(_ref) {
1653
1739
  isHighLightedTheme = _ref.isHighLightedTheme,
1654
1740
  isGlobalTheme = _ref.isGlobalTheme,
1655
1741
  onApplyTheme = _ref.onApplyTheme,
1656
- onApplyGlobalTheme = _ref.onApplyGlobalTheme,
1657
1742
  Thumbnail$1 = _ref.thumbnail;
1658
1743
  var _useTranslation = reactI18next.useTranslation(),
1659
1744
  t = _useTranslation.t;
1660
1745
  var id = theme.id,
1661
1746
  name = theme.name;
1662
- var handleCloneTheme = function handleCloneTheme() {
1663
- return onCloneTheme(theme);
1664
- };
1665
- var handleEditTheme = function handleEditTheme() {
1666
- return onEditTheme(theme);
1667
- };
1668
1747
  var handleDeleteTheme = function handleDeleteTheme() {
1669
1748
  return onDeleteTheme(id, name);
1670
1749
  };
1671
- var handleApplyGlobalTheme = function handleApplyGlobalTheme() {
1672
- return onApplyGlobalTheme(id);
1750
+ var handleQuickEdit = function handleQuickEdit(section) {
1751
+ return function (e) {
1752
+ e.stopPropagation();
1753
+ if (neetoCist.isPresent(onEditTheme)) onEditTheme(theme, section);else onCloneTheme(theme, section);
1754
+ };
1673
1755
  };
1756
+ var showMoreDropdown = utils.isFunction(onDeleteTheme);
1674
1757
  return /*#__PURE__*/jsxRuntime.jsx("div", {
1675
1758
  className: "group space-y-2 pt-0.5",
1759
+ "data-flip-id": theme.id,
1676
1760
  "data-testid": active ? "active-theme-card" : "theme-card",
1677
1761
  id: theme.id,
1678
1762
  children: /*#__PURE__*/jsxRuntime.jsxs("div", {
1679
- className: classnames("neeto-themes-theme-thumbnail neeto-ui-rounded-lg relative cursor-pointer border transition-all duration-300 ease-in-out", {
1680
- "neeto-ui-border-gray-200": !active,
1763
+ className: classnames("neeto-themes-theme-thumbnail neeto-ui-rounded-lg relative cursor-pointer border-2 transition-all duration-300 ease-in-out", {
1764
+ "neeto-ui-border-gray-400": !active,
1681
1765
  "neeto-themes-theme-thumbnail--active": active,
1682
1766
  "neeto-themes-theme-thumbnail--preview-active": isPreviewing,
1683
1767
  "neeto-themes-theme-thumbnail--highlight-active": isHighLightedTheme
@@ -1687,45 +1771,42 @@ var Card = function Card(_ref) {
1687
1771
  },
1688
1772
  children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
1689
1773
  className: "neeto-ui-rounded-lg relative overflow-hidden rounded-bl-none rounded-br-none transition-all duration-300 ease-in-out",
1690
- children: [/*#__PURE__*/jsxRuntime.jsx("div", {
1691
- className: "absolute start-0 top-0 z-10 flex h-full w-full items-center justify-center gap-1 p-3",
1692
- children: active ? /*#__PURE__*/jsxRuntime.jsx("span", {
1693
- className: "neeto-ui-btn neeto-themes-theme-thumbnail__active-label neeto-ui-btn--style-primary neeto-ui-btn--size-medium neeto-ui-rounded-full shrink-0 cursor-auto justify-center",
1694
- "data-testid": "active-theme-label",
1695
- children: t("neetoThemes.common.activeTheme")
1696
- }) : /*#__PURE__*/jsxRuntime.jsx("div", {
1697
- className: classnames({
1774
+ children: [active ? /*#__PURE__*/jsxRuntime.jsx("div", {
1775
+ className: "neeto-themes-theme-thumbnail__active-banner absolute start-0 top-0 z-10 w-full py-1 text-center text-xs font-semibold uppercase tracking-wide",
1776
+ "data-testid": "active-theme-label",
1777
+ children: t("neetoThemes.common.activeTheme")
1778
+ }) : /*#__PURE__*/jsxRuntime.jsx("div", {
1779
+ className: "absolute start-0 top-0 z-10 flex h-full w-full items-center justify-center px-3 pb-3 pt-3",
1780
+ children: /*#__PURE__*/jsxRuntime.jsxs("div", {
1781
+ className: classnames("-translate-y-9 flex w-full items-center justify-between gap-2", {
1698
1782
  hidden: !isPreviewing,
1699
- "group-hover:block": true
1783
+ "group-hover:flex": true
1700
1784
  }),
1701
- children: /*#__PURE__*/jsxRuntime.jsxs("div", {
1702
- className: "relative flex w-full flex-col gap-2",
1703
- children: [/*#__PURE__*/jsxRuntime.jsx(Button, {
1704
- "data-testid": "preview-theme-button",
1705
- disabled: isPreviewing,
1706
- label: t("neetoThemes.common.previewTheme"),
1707
- size: "medium",
1708
- style: "tertiary",
1709
- className: classnames({
1710
- "neeto-themes-theme-thumbnail__preview-btn--disabled opacity-100": isPreviewing,
1711
- "neeto-themes-theme-thumbnail__preview-btn shrink-0 justify-center": true
1712
- }),
1713
- onClick: function onClick() {
1714
- return onSetPreviewTheme(theme);
1715
- }
1716
- }), /*#__PURE__*/jsxRuntime.jsx(Button, {
1717
- className: "neeto-themes-theme-thumbnail__apply-btn shrink-0 justify-center",
1718
- "data-testid": "apply-theme-button",
1719
- disabled: isApplyingTheme,
1720
- label: t("neetoThemes.common.useTheme"),
1721
- loading: isApplyingTheme,
1722
- size: "medium",
1723
- style: "primary",
1724
- onClick: function onClick() {
1725
- return onApplyTheme(theme);
1726
- }
1727
- })]
1728
- })
1785
+ children: [/*#__PURE__*/jsxRuntime.jsx(Button, {
1786
+ "data-testid": "preview-theme-button",
1787
+ disabled: isPreviewing,
1788
+ label: t("neetoThemes.common.previewTheme"),
1789
+ size: "medium",
1790
+ style: "tertiary",
1791
+ className: classnames({
1792
+ "neeto-themes-theme-thumbnail__preview-btn--disabled opacity-100": isPreviewing,
1793
+ "neeto-themes-theme-thumbnail__preview-btn shrink-0 justify-center": true
1794
+ }),
1795
+ onClick: function onClick() {
1796
+ return onSetPreviewTheme(theme);
1797
+ }
1798
+ }), /*#__PURE__*/jsxRuntime.jsx(Button, {
1799
+ className: "neeto-themes-theme-thumbnail__apply-btn shrink-0 justify-center",
1800
+ "data-testid": "apply-theme-button",
1801
+ disabled: isApplyingTheme,
1802
+ label: t("neetoThemes.common.useTheme"),
1803
+ loading: isApplyingTheme,
1804
+ size: "medium",
1805
+ style: "primary",
1806
+ onClick: function onClick() {
1807
+ return onApplyTheme(theme);
1808
+ }
1809
+ })]
1729
1810
  })
1730
1811
  }), /*#__PURE__*/jsxRuntime.jsx("div", {
1731
1812
  className: "neeto-themes-theme-thumbnail__overlay w-full transition-all duration-300 ease-in-out",
@@ -1746,17 +1827,19 @@ var Card = function Card(_ref) {
1746
1827
  children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
1747
1828
  className: "flex items-center space-x-2",
1748
1829
  children: [/*#__PURE__*/jsxRuntime.jsx(Typography, {
1749
- className: "line-clamp-2 min-w-0 grow wrap-anywhere pt-1",
1830
+ className: "neeto-ui-text-gray-500 line-clamp-2 min-w-0 grow wrap-anywhere pt-1 italic",
1750
1831
  "data-testid": "theme-name",
1751
1832
  lineHeight: "snug",
1752
1833
  style: "body2",
1753
1834
  children: name
1754
- }), isGlobalTheme && /*#__PURE__*/jsxRuntime.jsx(Rating, {
1755
- className: "neeto-themes-nano-global-theme-icon",
1756
- "data-testid": "global-theme-icon",
1757
- size: 18
1835
+ }), isGlobalTheme && /*#__PURE__*/jsxRuntime.jsx(Typography, {
1836
+ className: "neeto-ui-text-gray-500 shrink-0 pt-1 italic",
1837
+ "data-testid": "default-theme-label",
1838
+ lineHeight: "snug",
1839
+ style: "body2",
1840
+ children: t("neetoThemes.common.defaultTheme")
1758
1841
  })]
1759
- }), /*#__PURE__*/jsxRuntime.jsx(MoreDropdown, {
1842
+ }), showMoreDropdown && /*#__PURE__*/jsxRuntime.jsx(MoreDropdown, {
1760
1843
  dropdownButtonProps: {
1761
1844
  size: "small"
1762
1845
  },
@@ -1767,38 +1850,39 @@ var Card = function Card(_ref) {
1767
1850
  }
1768
1851
  },
1769
1852
  menuItems: [{
1770
- key: "edit",
1771
- "data-testid": "edit-theme-menu-item",
1772
- label: t("neetoThemes.common.edit"),
1773
- isVisible: neetoCist.isPresent(onEditTheme),
1774
- onClick: handleEditTheme
1775
- }, {
1776
- key: "clone",
1777
- "data-testid": "clone-theme-menu-item",
1778
- label: t("neetoThemes.build.leftSideBar.themes.themeOptions.clone"),
1779
- onClick: handleCloneTheme
1780
- }, {
1781
- key: "set-as-global-theme",
1782
- "data-testid": "set-as-global-theme-menu-item",
1783
- label: t("neetoThemes.build.leftSideBar.themes.themeOptions.setAsGlobalTheme.label"),
1784
- isVisible: !isGlobalTheme,
1785
- onClick: handleApplyGlobalTheme
1786
- }, {
1787
- key: "divider",
1788
- type: "divider",
1789
- isVisible: utils.isFunction(onDeleteTheme)
1790
- }, {
1791
1853
  key: "delete",
1792
1854
  "data-testid": "delete-theme-menu-item",
1793
1855
  label: t("neetoThemes.build.leftSideBar.themes.themeOptions.delete"),
1794
1856
  isDisabled: isApplyingTheme,
1795
- isVisible: utils.isFunction(onDeleteTheme),
1796
1857
  onClick: function onClick(e) {
1797
1858
  e.stopPropagation();
1798
1859
  handleDeleteTheme();
1799
1860
  }
1800
1861
  }]
1801
1862
  })]
1863
+ }), active && /*#__PURE__*/jsxRuntime.jsxs("div", {
1864
+ className: "flex flex-col",
1865
+ children: [/*#__PURE__*/jsxRuntime.jsx(QuickActionRow, {
1866
+ icon: ColorPicker$1,
1867
+ label: t("neetoThemes.common.customizeStyle"),
1868
+ testId: "quick-customize-style",
1869
+ onClick: handleQuickEdit("style")
1870
+ }), /*#__PURE__*/jsxRuntime.jsx(QuickActionRow, {
1871
+ icon: AddImage,
1872
+ testId: "quick-add-logo",
1873
+ label: t((_theme$logo = theme.logo) !== null && _theme$logo !== void 0 && _theme$logo.url ? "neetoThemes.common.changeLogo" : "neetoThemes.common.addLogo"),
1874
+ onClick: handleQuickEdit("logo")
1875
+ }), /*#__PURE__*/jsxRuntime.jsx(QuickActionRow, {
1876
+ icon: Image,
1877
+ testId: "quick-add-cover-image",
1878
+ label: t((_theme$coverImage = theme.coverImage) !== null && _theme$coverImage !== void 0 && _theme$coverImage.url ? "neetoThemes.common.changeCoverImage" : "neetoThemes.common.addCoverImage"),
1879
+ onClick: handleQuickEdit("coverImage")
1880
+ }), /*#__PURE__*/jsxRuntime.jsx(QuickActionRow, {
1881
+ icon: CodeBlock,
1882
+ label: t("neetoThemes.build.leftSideBar.themes.customCSS"),
1883
+ testId: "quick-custom-css",
1884
+ onClick: handleQuickEdit("customcss")
1885
+ })]
1802
1886
  })]
1803
1887
  })
1804
1888
  });
@@ -1820,13 +1904,14 @@ var Themes = function Themes(_ref) {
1820
1904
  thumbnail = _ref.thumbnail,
1821
1905
  themeBeingApplied = _ref.themeBeingApplied,
1822
1906
  onApplyTheme = _ref.onApplyTheme,
1823
- onApplyGlobalThemeSuccess = _ref.onApplyGlobalThemeSuccess,
1824
- isApplyingTheme = _ref.isApplyingTheme;
1907
+ onApplyThemeSuccess = _ref.onApplyThemeSuccess,
1908
+ _ref$isSearchVisible = _ref.isSearchVisible,
1909
+ isSearchVisible = _ref$isSearchVisible === void 0 ? false : _ref$isSearchVisible;
1825
1910
  var _useTranslation = reactI18next.useTranslation(),
1826
1911
  t = _useTranslation.t;
1827
- var _useThemeUtils = useThemeUtils.useThemeUtils(),
1912
+ var _useThemeUtils = useExpandedSection.useThemeUtils(),
1828
1913
  setTheme = _useThemeUtils.setTheme;
1829
- var _useThemeStore = useThemeUtils.useThemeStore(function (store) {
1914
+ var _useThemeStore = useExpandedSection.useThemeStore(function (store) {
1830
1915
  return {
1831
1916
  setThemeState: store["setThemeState"],
1832
1917
  previewingTheme: store["previewingTheme"]
@@ -1834,7 +1919,7 @@ var Themes = function Themes(_ref) {
1834
1919
  }, shallow.shallow),
1835
1920
  setThemeState = _useThemeStore.setThemeState,
1836
1921
  previewingTheme = _useThemeStore.previewingTheme;
1837
- var _useConfigStore = useThemeUtils.useConfigStore(function (store) {
1922
+ var _useConfigStore = useExpandedSection.useConfigStore(function (store) {
1838
1923
  return {
1839
1924
  entityType: store["entityType"],
1840
1925
  entityId: store["entityId"]
@@ -1847,8 +1932,8 @@ var Themes = function Themes(_ref) {
1847
1932
  searchTerm = _useQueryParams$searc === void 0 ? "" : _useQueryParams$searc;
1848
1933
  var _useCloneTheme = useCloneTheme(),
1849
1934
  cloneTheme = _useCloneTheme.mutate;
1850
- var _useApplyGlobalTheme = useApplyGlobalTheme(),
1851
- applyGlobalTheme = _useApplyGlobalTheme.mutate;
1935
+ var _useApplyTheme = useApplyTheme({}),
1936
+ applyClonedTheme = _useApplyTheme.mutate;
1852
1937
  var _useShowGlobalTheme = useShowGlobalTheme(entityType),
1853
1938
  _useShowGlobalTheme$d = _useShowGlobalTheme.data,
1854
1939
  _useShowGlobalTheme$d2 = _useShowGlobalTheme$d === void 0 ? {} : _useShowGlobalTheme$d,
@@ -1868,32 +1953,41 @@ var Themes = function Themes(_ref) {
1868
1953
  });
1869
1954
  setTheme(theme);
1870
1955
  };
1956
+ var activeThemeId = currentTheme === null || currentTheme === void 0 ? void 0 : currentTheme.id;
1957
+ var lowerSearchTerm = searchTerm.toLowerCase();
1958
+ var matchesSearch = function matchesSearch(theme) {
1959
+ return theme.name.toLowerCase().includes(lowerSearchTerm);
1960
+ };
1961
+ var activeTheme = activeThemeId ? [].concat(_toConsumableArray(defaultThemes), _toConsumableArray(themes)).find(function (theme) {
1962
+ return theme.id === activeThemeId;
1963
+ }) : null;
1964
+ var isActiveThemeCustom = themes.some(function (theme) {
1965
+ return theme.id === activeThemeId;
1966
+ });
1871
1967
  var filteredDefaultThemes = defaultThemes.filter(function (theme) {
1872
- return theme.name.toLowerCase().includes(searchTerm.toLowerCase());
1968
+ return theme.id !== activeThemeId && matchesSearch(theme);
1873
1969
  });
1874
1970
  var filteredThemes = themes.filter(function (theme) {
1875
- return theme.name.toLowerCase().includes(searchTerm.toLowerCase());
1971
+ return theme.id !== activeThemeId && matchesSearch(theme);
1876
1972
  });
1877
- var isSearchFieldVisible = (themes === null || themes === void 0 ? void 0 : themes.length) + (defaultThemes === null || defaultThemes === void 0 ? void 0 : defaultThemes.length) > 10;
1878
- var handleCloneTheme = function handleCloneTheme(data) {
1973
+ var showActiveThemeSection = activeTheme && matchesSearch(activeTheme);
1974
+ var handleCloneTheme = function handleCloneTheme(data, section) {
1879
1975
  cloneTheme(data.id, {
1880
1976
  onSuccess: function onSuccess(_ref2) {
1881
1977
  var clonedTheme = _ref2.theme;
1882
- onEditTheme(clonedTheme);
1883
- }
1884
- });
1885
- };
1886
- var handleApplyGlobalTheme = function handleApplyGlobalTheme(themeId) {
1887
- var payload = {
1888
- entityType: entityType,
1889
- entityId: entityId
1890
- };
1891
- applyGlobalTheme({
1892
- themeId: themeId,
1893
- payload: payload
1894
- }, {
1895
- onSuccess: function onSuccess() {
1896
- onApplyGlobalThemeSuccess === null || onApplyGlobalThemeSuccess === void 0 || onApplyGlobalThemeSuccess();
1978
+ // A system theme is cloned when the user customizes it. Apply the
1979
+ // clone right away so it becomes the active theme — the editor then
1980
+ // won't prompt "apply this theme?" on save.
1981
+ applyClonedTheme({
1982
+ themeId: clonedTheme.id,
1983
+ entityId: entityId,
1984
+ entityType: entityType
1985
+ }, {
1986
+ onSuccess: function onSuccess() {
1987
+ onApplyThemeSuccess === null || onApplyThemeSuccess === void 0 || onApplyThemeSuccess(clonedTheme);
1988
+ onEditTheme(clonedTheme, section);
1989
+ }
1990
+ });
1897
1991
  }
1898
1992
  });
1899
1993
  };
@@ -1903,11 +1997,74 @@ var Themes = function Themes(_ref) {
1903
1997
  children: /*#__PURE__*/jsxRuntime.jsx(Spinner, {})
1904
1998
  });
1905
1999
  }
2000
+ var activeThemeSection = showActiveThemeSection && /*#__PURE__*/jsxRuntime.jsx("div", {
2001
+ className: "neeto-ui-border-gray-200 mb-6 border-b px-6 pb-6 lg:px-5 xl:px-6",
2002
+ children: /*#__PURE__*/jsxRuntime.jsx(Card$1, {
2003
+ onApplyTheme: onApplyTheme,
2004
+ thumbnail: thumbnail,
2005
+ active: true,
2006
+ isApplyingTheme: (themeBeingApplied === null || themeBeingApplied === void 0 ? void 0 : themeBeingApplied.id) === activeTheme.id,
2007
+ isGlobalTheme: (globalTheme === null || globalTheme === void 0 ? void 0 : globalTheme.id) === activeTheme.id,
2008
+ isHighLightedTheme: activeTheme.id === themeToHighlight,
2009
+ isPreviewing: (previewingTheme === null || previewingTheme === void 0 ? void 0 : previewingTheme.id) === activeTheme.id,
2010
+ theme: activeTheme,
2011
+ onCloneTheme: handleCloneTheme,
2012
+ onEditTheme: isActiveThemeCustom ? onEditTheme : undefined,
2013
+ onSetPreviewTheme: setPreviewTheme
2014
+ })
2015
+ });
2016
+ var systemThemesSection = neetoCist.isNotEmpty(filteredDefaultThemes) && /*#__PURE__*/jsxRuntime.jsx("div", {
2017
+ className: "mb-6 space-y-3",
2018
+ children: /*#__PURE__*/jsxRuntime.jsx("div", {
2019
+ className: "flex flex-col gap-4 px-6 pb-10 lg:px-5 xl:px-6",
2020
+ "data-testid": "system-themes",
2021
+ children: filteredDefaultThemes.map(function (theme) {
2022
+ return /*#__PURE__*/react.createElement(Card$1, {
2023
+ onApplyTheme: onApplyTheme,
2024
+ theme: theme,
2025
+ thumbnail: thumbnail,
2026
+ active: (currentTheme === null || currentTheme === void 0 ? void 0 : currentTheme.id) === theme.id,
2027
+ isApplyingTheme: (themeBeingApplied === null || themeBeingApplied === void 0 ? void 0 : themeBeingApplied.id) === theme.id,
2028
+ isGlobalTheme: (globalTheme === null || globalTheme === void 0 ? void 0 : globalTheme.id) === theme.id,
2029
+ isPreviewing: (previewingTheme === null || previewingTheme === void 0 ? void 0 : previewingTheme.id) === theme.id,
2030
+ key: theme.id,
2031
+ onCloneTheme: handleCloneTheme,
2032
+ onSetPreviewTheme: setPreviewTheme
2033
+ });
2034
+ })
2035
+ })
2036
+ });
2037
+ var customThemesSection = neetoCist.isNotEmpty(filteredThemes) && /*#__PURE__*/jsxRuntime.jsx("div", {
2038
+ className: "mb-6 space-y-3",
2039
+ children: /*#__PURE__*/jsxRuntime.jsx("div", {
2040
+ className: "flex flex-col gap-4 px-6",
2041
+ "data-testid": "custom-themes",
2042
+ children: filteredThemes.map(function (theme) {
2043
+ var isActive = (currentTheme === null || currentTheme === void 0 ? void 0 : currentTheme.id) === theme.id;
2044
+ var isPreviewing = (previewingTheme === null || previewingTheme === void 0 ? void 0 : previewingTheme.id) === theme.id;
2045
+ return /*#__PURE__*/react.createElement(Card$1, {
2046
+ isPreviewing: isPreviewing,
2047
+ onApplyTheme: onApplyTheme,
2048
+ onEditTheme: onEditTheme,
2049
+ theme: theme,
2050
+ thumbnail: thumbnail,
2051
+ active: isActive,
2052
+ isApplyingTheme: (themeBeingApplied === null || themeBeingApplied === void 0 ? void 0 : themeBeingApplied.id) === theme.id,
2053
+ isGlobalTheme: (globalTheme === null || globalTheme === void 0 ? void 0 : globalTheme.id) === theme.id,
2054
+ isHighLightedTheme: theme.id === themeToHighlight,
2055
+ key: theme.id,
2056
+ onCloneTheme: handleCloneTheme,
2057
+ onDeleteTheme: !isActive && onDeleteTheme,
2058
+ onSetPreviewTheme: setPreviewTheme
2059
+ });
2060
+ })
2061
+ })
2062
+ });
1906
2063
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
1907
2064
  className: "neeto-themes-sidebar__scroll",
1908
2065
  children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
1909
2066
  className: "mb-6 space-y-3",
1910
- children: [isSearchFieldVisible && /*#__PURE__*/jsxRuntime.jsx(Search, {
2067
+ children: [isSearchVisible && /*#__PURE__*/jsxRuntime.jsx(Search, {
1911
2068
  autoFocus: true,
1912
2069
  enableUrlSync: true,
1913
2070
  autoComplete: "off",
@@ -1918,83 +2075,25 @@ var Themes = function Themes(_ref) {
1918
2075
  "data-testid": "no-data-title",
1919
2076
  style: "body2",
1920
2077
  children: t("neetoThemes.common.noResultsFound")
1921
- }), neetoCist.isNotEmpty(filteredDefaultThemes) && /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
1922
- children: [/*#__PURE__*/jsxRuntime.jsx(Typography, {
1923
- className: "my-4 px-6 uppercase lg:px-5 xl:px-6",
1924
- "data-testid": "system-themes-header",
1925
- style: "h6",
1926
- weight: "semibold",
1927
- children: t("neetoThemes.build.leftSideBar.themes.systemThemes")
1928
- }), /*#__PURE__*/jsxRuntime.jsx("div", {
1929
- className: "flex flex-col gap-4 px-6 pb-10 lg:px-5 xl:px-6",
1930
- "data-testid": "system-themes",
1931
- children: filteredDefaultThemes.map(function (theme) {
1932
- return /*#__PURE__*/react.createElement(Card$1, {
1933
- onApplyTheme: onApplyTheme,
1934
- theme: theme,
1935
- thumbnail: thumbnail,
1936
- active: (currentTheme === null || currentTheme === void 0 ? void 0 : currentTheme.id) === theme.id,
1937
- isGlobalTheme: (globalTheme === null || globalTheme === void 0 ? void 0 : globalTheme.id) === theme.id,
1938
- isPreviewing: (previewingTheme === null || previewingTheme === void 0 ? void 0 : previewingTheme.id) === theme.id,
1939
- key: theme.id,
1940
- isApplyingTheme: isApplyingTheme && (themeBeingApplied === null || themeBeingApplied === void 0 ? void 0 : themeBeingApplied.id) === theme.id,
1941
- onApplyGlobalTheme: handleApplyGlobalTheme,
1942
- onCloneTheme: handleCloneTheme,
1943
- onSetPreviewTheme: setPreviewTheme
1944
- });
1945
- })
1946
- })]
1947
- })]
1948
- }), neetoCist.isNotEmpty(filteredThemes) && /*#__PURE__*/jsxRuntime.jsxs("div", {
1949
- className: "mb-6 space-y-3",
1950
- children: [/*#__PURE__*/jsxRuntime.jsx(Typography, {
1951
- className: "my-4 px-6 uppercase",
1952
- "data-testid": "custom-themes-header",
1953
- style: "h6",
1954
- weight: "semibold",
1955
- children: t("neetoThemes.build.leftSideBar.themes.customThemes")
1956
- }), /*#__PURE__*/jsxRuntime.jsx("div", {
1957
- className: "flex flex-col gap-4 px-6",
1958
- "data-testid": "custom-themes",
1959
- children: filteredThemes.map(function (theme) {
1960
- var isActive = (currentTheme === null || currentTheme === void 0 ? void 0 : currentTheme.id) === theme.id;
1961
- var isPreviewing = (previewingTheme === null || previewingTheme === void 0 ? void 0 : previewingTheme.id) === theme.id;
1962
- return /*#__PURE__*/react.createElement(Card$1, {
1963
- isPreviewing: isPreviewing,
1964
- onApplyTheme: onApplyTheme,
1965
- onEditTheme: onEditTheme,
1966
- theme: theme,
1967
- thumbnail: thumbnail,
1968
- active: isActive,
1969
- isGlobalTheme: (globalTheme === null || globalTheme === void 0 ? void 0 : globalTheme.id) === theme.id,
1970
- isHighLightedTheme: theme.id === themeToHighlight,
1971
- key: theme.id,
1972
- isApplyingTheme: isApplyingTheme && (themeBeingApplied === null || themeBeingApplied === void 0 ? void 0 : themeBeingApplied.id) === theme.id,
1973
- onApplyGlobalTheme: handleApplyGlobalTheme,
1974
- onCloneTheme: handleCloneTheme,
1975
- onDeleteTheme: !isActive && onDeleteTheme,
1976
- onSetPreviewTheme: setPreviewTheme
1977
- });
1978
- })
1979
2078
  })]
1980
- })]
2079
+ }), activeThemeSection, systemThemesSection, customThemesSection]
1981
2080
  });
1982
2081
  };
1983
2082
 
1984
2083
  var TitleBar = function TitleBar(_ref) {
1985
2084
  var currentScreen = _ref.currentScreen,
1986
2085
  handleBackPress = _ref.handleBackPress,
1987
- handleCreateNewTheme = _ref.handleCreateNewTheme;
2086
+ handleToggleSearch = _ref.handleToggleSearch;
1988
2087
  var _useTranslation = reactI18next.useTranslation(),
1989
2088
  t = _useTranslation.t;
1990
- var _useThemeStore = useThemeUtils.useThemeStore(function (store) {
2089
+ var _useThemeStore = useExpandedSection.useThemeStore(function (store) {
1991
2090
  return {
1992
2091
  previewingTheme: store["previewingTheme"]
1993
2092
  };
1994
2093
  }, shallow.shallow),
1995
2094
  previewingTheme = _useThemeStore.previewingTheme;
1996
2095
  var themeId = previewingTheme === null || previewingTheme === void 0 ? void 0 : previewingTheme.id;
1997
- var _useConfigStore = useThemeUtils.useConfigStore(function (store) {
2096
+ var _useConfigStore = useExpandedSection.useConfigStore(function (store) {
1998
2097
  return {
1999
2098
  entityType: store["entityType"],
2000
2099
  helpDocUrl: store["helpDocUrl"]
@@ -2051,21 +2150,21 @@ var TitleBar = function TitleBar(_ref) {
2051
2150
  },
2052
2151
  title: t("neetoThemes.build.leftSideBar.helpPopover.title"),
2053
2152
  description: t("neetoThemes.build.leftSideBar.helpPopover.description", {
2054
- entityType: entityType
2153
+ entityType: t("neetoThemes.entityType.".concat(entityType.toLowerCase()))
2055
2154
  })
2056
2155
  })]
2057
2156
  }), /*#__PURE__*/jsxRuntime.jsx("div", {
2058
2157
  className: "self-end",
2059
2158
  children: /*#__PURE__*/jsxRuntime.jsx(Button, {
2060
- "data-testid": "customize-themes-add-theme-button",
2061
- icon: Plus,
2159
+ "data-testid": "themes-search-toggle-button",
2160
+ icon: Search$1,
2062
2161
  iconPosition: "left",
2063
2162
  style: "text",
2064
2163
  tooltipProps: {
2065
- content: t("neetoThemes.buttons.addNewTheme"),
2164
+ content: t("neetoThemes.common.searchThemes"),
2066
2165
  position: "top"
2067
2166
  },
2068
- onClick: handleCreateNewTheme
2167
+ onClick: handleToggleSearch
2069
2168
  })
2070
2169
  })]
2071
2170
  })
@@ -2080,8 +2179,7 @@ var Sidebar = function Sidebar(_ref) {
2080
2179
  defaultImageSize = _ref.defaultImageSize,
2081
2180
  fixedAspectRatio = _ref.fixedAspectRatio,
2082
2181
  onApplyThemeSuccess = _ref.onApplyThemeSuccess,
2083
- onUpdateThemeSuccess = _ref.onUpdateThemeSuccess,
2084
- onApplyGlobalThemeSuccess = _ref.onApplyGlobalThemeSuccess;
2182
+ onUpdateThemeSuccess = _ref.onUpdateThemeSuccess;
2085
2183
  var _useState = react.useState(DESIGN_SCREENS.THEMES),
2086
2184
  _useState2 = _slicedToArray(_useState, 2),
2087
2185
  currentScreen = _useState2[0],
@@ -2109,7 +2207,7 @@ var Sidebar = function Sidebar(_ref) {
2109
2207
  react.useEffect(function () {
2110
2208
  setIsThemesSidebarCollapsed(!isLargerScreen);
2111
2209
  }, [isLargerScreen]);
2112
- var _useConfigStore = useThemeUtils.useConfigStore(function (store) {
2210
+ var _useConfigStore = useExpandedSection.useConfigStore(function (store) {
2113
2211
  return {
2114
2212
  entityType: store["entityType"],
2115
2213
  entityId: store["entityId"],
@@ -2121,7 +2219,7 @@ var Sidebar = function Sidebar(_ref) {
2121
2219
  entityId = _useConfigStore.entityId,
2122
2220
  isFetchingSchema = _useConfigStore.isFetchingSchema,
2123
2221
  defaultThemeName = _useConfigStore.defaultThemeName;
2124
- var _useThemeStore = useThemeUtils.useThemeStore(function (store) {
2222
+ var _useThemeStore = useExpandedSection.useThemeStore(function (store) {
2125
2223
  return {
2126
2224
  setThemeState: store["setThemeState"]
2127
2225
  };
@@ -2130,7 +2228,7 @@ var Sidebar = function Sidebar(_ref) {
2130
2228
  var didScrollActiveThemeIntoView = react.useRef(null);
2131
2229
  var _useTranslation = reactI18next.useTranslation(),
2132
2230
  t = _useTranslation.t;
2133
- var _useThemeUtils = useThemeUtils.useThemeUtils(),
2231
+ var _useThemeUtils = useExpandedSection.useThemeUtils(),
2134
2232
  setTheme = _useThemeUtils.setTheme;
2135
2233
  var _useListThemes = useListThemes(entityId),
2136
2234
  _useListThemes$data = _useListThemes.data,
@@ -2152,14 +2250,22 @@ var Sidebar = function Sidebar(_ref) {
2152
2250
  var _useApplyTheme = useApplyTheme({
2153
2251
  onSuccess: function onSuccess(_ref2) {
2154
2252
  var theme = _ref2.theme;
2155
- setTheme(theme);
2156
- highlightTheme(theme);
2157
- setThemeState({
2158
- previewingTheme: theme
2159
- });
2160
- setThemeBeingApplied({});
2161
- setCurrentScreen(DESIGN_SCREENS.THEMES);
2162
- onApplyThemeSuccess === null || onApplyThemeSuccess === void 0 || onApplyThemeSuccess(theme);
2253
+ var applyUpdates = function applyUpdates() {
2254
+ setTheme(theme);
2255
+ highlightTheme(theme);
2256
+ setThemeState({
2257
+ previewingTheme: theme
2258
+ });
2259
+ setThemeBeingApplied({});
2260
+ setCurrentScreen(DESIGN_SCREENS.THEMES);
2261
+ onApplyThemeSuccess === null || onApplyThemeSuccess === void 0 || onApplyThemeSuccess(theme);
2262
+ };
2263
+
2264
+ // Keep the spinner visible a bit longer so the apply feels deliberate,
2265
+ // then glide the card into the pinned active section.
2266
+ setTimeout(function () {
2267
+ return animateThemeReorder(applyUpdates);
2268
+ }, useExpandedSection.APPLY_SPINNER_DELAY);
2163
2269
  }
2164
2270
  }),
2165
2271
  applyTheme = _useApplyTheme.mutate,
@@ -2167,22 +2273,44 @@ var Sidebar = function Sidebar(_ref) {
2167
2273
  var themeToDelete = react.useRef(null);
2168
2274
  var themeToEdit = react.useRef(null);
2169
2275
  var isCustomCssScreen = isScreenCustomCSS(currentScreen);
2170
- var handleCreateNewTheme = function handleCreateNewTheme() {
2171
- history.push(buildPathname(routes.themes["new"]));
2276
+ var _useState11 = react.useState(false),
2277
+ _useState12 = _slicedToArray(_useState11, 2),
2278
+ isSearchVisible = _useState12[0],
2279
+ setIsSearchVisible = _useState12[1];
2280
+ var handleToggleSearch = function handleToggleSearch() {
2281
+ setIsSearchVisible(function (prev) {
2282
+ var next = !prev;
2283
+ if (!next) {
2284
+ var params = new URLSearchParams(history.location.search);
2285
+ params["delete"]("searchTerm");
2286
+ history.replace({
2287
+ search: params.toString()
2288
+ });
2289
+ }
2290
+ return next;
2291
+ });
2172
2292
  };
2173
- var handleEditTheme = function handleEditTheme(theme) {
2293
+ var handleEditTheme = function handleEditTheme(theme, section) {
2174
2294
  themeToEdit.current = theme;
2175
- history.push(utils$1.buildUrl(buildPathname(routes.themes.edit), {
2295
+ var pathname = utils$1.buildUrl(buildPathname(routes.themes.edit), {
2176
2296
  themeId: theme.id
2177
- }));
2297
+ });
2298
+ history.push({
2299
+ pathname: pathname,
2300
+ search: section ? "?section=".concat(section) : ""
2301
+ });
2178
2302
  };
2179
2303
  var onApplyTheme = function onApplyTheme(theme) {
2180
- if (isApplyingTheme) return;
2304
+ if (themeBeingApplied !== null && themeBeingApplied !== void 0 && themeBeingApplied.id) return;
2181
2305
  setThemeBeingApplied(theme);
2182
2306
  applyTheme({
2183
2307
  themeId: theme.id,
2184
2308
  entityId: entityId,
2185
2309
  entityType: entityType
2310
+ }, {
2311
+ onError: function onError() {
2312
+ return setThemeBeingApplied({});
2313
+ }
2186
2314
  });
2187
2315
  };
2188
2316
  var navigateToThemesScreen = function navigateToThemesScreen(themeId) {
@@ -2252,7 +2380,7 @@ var Sidebar = function Sidebar(_ref) {
2252
2380
  children: [/*#__PURE__*/jsxRuntime.jsx(TitleBar, {
2253
2381
  currentScreen: currentScreen,
2254
2382
  handleBackPress: handleBackPress,
2255
- handleCreateNewTheme: handleCreateNewTheme
2383
+ handleToggleSearch: handleToggleSearch
2256
2384
  }), /*#__PURE__*/jsxRuntime.jsxs(reactRouterDom.Switch, {
2257
2385
  children: [/*#__PURE__*/jsxRuntime.jsx(reactRouterDom.Route, {
2258
2386
  exact: true,
@@ -2263,10 +2391,10 @@ var Sidebar = function Sidebar(_ref) {
2263
2391
  defaultThemes: defaultThemes,
2264
2392
  didScrollActiveThemeIntoView: didScrollActiveThemeIntoView,
2265
2393
  highlightTheme: highlightTheme,
2266
- isApplyingTheme: isApplyingTheme,
2267
2394
  isCurrentThemeLoading: isCurrentThemeLoading,
2268
- onApplyGlobalThemeSuccess: onApplyGlobalThemeSuccess,
2395
+ isSearchVisible: isSearchVisible,
2269
2396
  onApplyTheme: onApplyTheme,
2397
+ onApplyThemeSuccess: onApplyThemeSuccess,
2270
2398
  themeBeingApplied: themeBeingApplied,
2271
2399
  themeToHighlight: themeToHighlight,
2272
2400
  themes: themes,
@@ -2352,8 +2480,6 @@ var NeetoThemesBuilder = function NeetoThemesBuilder(_ref) {
2352
2480
  onApplyThemeSuccess = _ref$onApplyThemeSucc === void 0 ? neetoCist.noop : _ref$onApplyThemeSucc,
2353
2481
  _ref$onUpdateThemeSuc = _ref.onUpdateThemeSuccess,
2354
2482
  onUpdateThemeSuccess = _ref$onUpdateThemeSuc === void 0 ? neetoCist.noop : _ref$onUpdateThemeSuc,
2355
- _ref$onApplyGlobalThe = _ref.onApplyGlobalThemeSuccess,
2356
- onApplyGlobalThemeSuccess = _ref$onApplyGlobalThe === void 0 ? neetoCist.noop : _ref$onApplyGlobalThe,
2357
2483
  _ref$helpPopoverProps = _ref.helpPopoverProps,
2358
2484
  helpPopoverProps = _ref$helpPopoverProps === void 0 ? {} : _ref$helpPopoverProps,
2359
2485
  _ref$enabledFeatures = _ref.enabledFeatures,
@@ -2362,15 +2488,15 @@ var NeetoThemesBuilder = function NeetoThemesBuilder(_ref) {
2362
2488
  } : _ref$enabledFeatures,
2363
2489
  _ref$proFeatures = _ref.proFeatures,
2364
2490
  proFeatures = _ref$proFeatures === void 0 ? {} : _ref$proFeatures;
2365
- var _useThemeStore = useThemeUtils.useThemeStore(function (store) {
2491
+ var _useThemeStore = useExpandedSection.useThemeStore(function (store) {
2366
2492
  return {
2367
2493
  setThemeState: store["setThemeState"]
2368
2494
  };
2369
2495
  }, shallow.shallow),
2370
2496
  setThemeState = _useThemeStore.setThemeState;
2371
- var _useThemeUtils = useThemeUtils.useThemeUtils(),
2497
+ var _useThemeUtils = useExpandedSection.useThemeUtils(),
2372
2498
  setTheme = _useThemeUtils.setTheme;
2373
- var _useConfigStore = useThemeUtils.useConfigStore(function (store) {
2499
+ var _useConfigStore = useExpandedSection.useConfigStore(function (store) {
2374
2500
  return {
2375
2501
  setConfigState: store["setConfigState"]
2376
2502
  };
@@ -2436,7 +2562,6 @@ var NeetoThemesBuilder = function NeetoThemesBuilder(_ref) {
2436
2562
  }), /*#__PURE__*/jsxRuntime.jsx(Sidebar, {
2437
2563
  defaultImageSize: defaultImageSize,
2438
2564
  fixedAspectRatio: fixedAspectRatio,
2439
- onApplyGlobalThemeSuccess: onApplyGlobalThemeSuccess,
2440
2565
  onApplyThemeSuccess: onApplyThemeSuccess,
2441
2566
  onPropertiesChange: onPropertiesChange,
2442
2567
  onUpdateThemeSuccess: onUpdateThemeSuccess,