(()=>{"use strict";var e={721:(e,t,i)=>{i.d(t,{Z:()=>a});var n=i(81),o=i.n(n),r=i(645),s=i.n(r)()(o());s.push([e.id,"#jml-autosuggest-container {\n border-left: 2px solid black;\n padding: 0;\n padding-left: 16px;\n}\n\nul.jml-suggestion-list {\n list-style-type: none;\n}\n\n.jml-suggestions-title {\n font-size: 14px;\n font-weight: 600;\n text-transform: capitalize;\n}\n\nli.jml-suggestion-item {\n line-height: 24px;\n display: flex;\n align-items: center;\n}\n\nli.jml-suggestion-item:hover {\n text-decoration: underline;\n}\n\n.jml-suggestion-icon {\n margin-right: 12px;\n}\n\n.jml-suggestion-icon svg {\n width: 26px;\n height: 26px;\n}\n\nul.jml-suggestion-list {\n margin: 10px 0;\n padding: 0;\n padding-left: 1.4rem;\n}\n\n.jml-suggestions-container:nth-child(1) {\n margin-bottom: 3.4rem;\n}",""]);const a=s},930:(e,t,i)=>{i.d(t,{Z:()=>a});var n=i(81),o=i.n(n),r=i(645),s=i.n(r)()(o());s.push([e.id,'input.color-swatch-input {\n position: absolute;\n opacity: 0;\n width: 100%;\n height: 20px;\n}\n\n.color-filter-content {\n position: relative;\n margin: 4px 0;\n}\n\n#jml-filters-section .filter-content label.color-swatch-label {\n margin-left: 0px;\n display: flex;\n flex-direction: row-reverse;\n align-items: center;\n}\n\n#jml-filters-section .color-swatch-box {\n border-radius: 50%;\n display: block;\n margin: 0 10px 0 2px;\n position: relative;\n height: 1.35rem;\n width: 1.35rem;\n background-position: 50%;\n background-size: cover;\n}\n\n#jml-filters-section .color-swatch-box:after {\n border: .0625rem solid rgba(49,47,43,0.25);\n height: 100%;\n width: 100%;\n}\n\n#jml-filters-section .color-swatch-box:before {\n border: .0625rem solid transparent;\n height: 120%;\n width: 120%;\n}\n\n#jml-filters-section .color-swatch-box:after, #jml-filters-section .color-swatch-box:before {\n border-radius: 50%;\n content: "";\n display: block;\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%);\n}\n\n#jml-filters-section .color-filter-content input.color-swatch-input:checked~label .color-swatch-box:before {\n border-color: #1e1e1e;\n}',""]);const a=s},818:(e,t,i)=>{i.d(t,{Z:()=>a});var n=i(81),o=i.n(n),r=i(645),s=i.n(r)()(o());s.push([e.id,"#jarvis-search-modal .jml-quick-preview-container {\n display: flex;\n max-height: 360px;\n overflow: hidden;\n overflow-y: auto;\n}\n\n#jml-autosuggest-container {\n flex: 1;\n margin-top: 16px;\n}\n\n#jarvis-search-modal .jml-product-list-container {\n flex: 1\n}",""]);const a=s},334:(e,t,i)=>{i.d(t,{Z:()=>a});var n=i(81),o=i.n(n),r=i(645),s=i.n(r)()(o());s.push([e.id,"\njarvisml-product-rec .product_rating, .jml-product-items-parent .product_rating {\n display: flex;\n justify-content: var(--details-alignment);\n}\n\njarvisml-product-rec span.product_stars, .jml-product-items-parent span.product_stars {\n margin-right: 6px;\n}\n\njarvisml-product-rec .rating_star, .jml-product-items-parent .rating_star {\n fill: lightgrey;\n margin-right: 4px;\n}\n\njarvisml-product-rec .rating_star.active, .jml-product-items-parent .rating_star.active{\n fill: #fed94b;\n}\n\njarvisml-product-rec .rating_count, .jml-product-items-parent .rating_count {\n font-size: 1em;\n}\n\n#jarvis-personalized-recommendations .jarvis-ratings-container > div,\n#jarvis-personalized-recommendations .jarvis-ratings-container .product_stars {\n display: flex;\n align-items: center;\n}\n#jarvis-personalized-recommendations .product_stars {\n margin-right: 6px;\n}\n\n#jarvis-personalized-recommendations .rating_star {\n fill: lightgrey;\n margin-right: 4px;\n}\n\n#jarvis-personalized-recommendations .rating_star.active {\n fill: #fed94b;\n}\n\n#jarvis-personalized-recommendations .rating_count {\n font-size: 1em;\n}\n",""]);const a=s},144:(e,t,i)=>{i.d(t,{Z:()=>a});var n=i(81),o=i.n(n),r=i(645),s=i.n(r)()(o());s.push([e.id,'/* Default reco style for all clients */\n\njarvisml-product-rec .carousel_box {\n position: relative;\n margin: 0 0 20px;\n}\njarvisml-product-rec .carousel_box.with_buttons {\n /* padding: 0 35px; define this if you need */\n --buttonWidth: 32px;\n --buttonHeight: 32px;\n --buttonRoundness: 50%;\n}\n\njarvisml-product-rec .carousel_hitbox {\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n width: 50px;\n height: 100px;\n border: none;\n background: transparent;\n cursor: pointer;\n z-index: 1;\n}\njarvisml-product-rec .carousel_btn {\n border: 1px solid #000;\n background-color: #fff;\n border-radius: var(--buttonRoundness);\n width: var(--buttonWidth);\n height: var(--buttonHeight);\n opacity: 0.6;\n}\njarvisml-product-rec .carousel_btn span {\n line-height: 70px;\n font-size: 25px;\n}\njarvisml-product-rec .carousel_btn svg {\n position: relative;\n top: 50%;\n transform: translateY(-50%);\n}\n\njarvisml-product-rec .carousel_hitbox.leftSide {\n left: -4px;\n}\njarvisml-product-rec .carousel_hitbox.rightSide {\n right: -11px;\n}\n\njarvisml-product-rec .carousel_hitbox:hover:enabled .carousel_btn {\n opacity: 1;\n}\njarvisml-product-rec .carousel_hitbox:active .carousel_btn {\n transform: scale(0.95);\n}\n\njarvisml-product-rec .carousel_hitbox:disabled .carousel_btn {\n opacity: 0.4;\n}\njarvisml-product-rec .carousel_hitbox:hover:disabled:active .carousel_btn {\n opacity: 0.7;\n}\n\njarvisml-product-rec .product_list {\n display: flex;\n padding: 0 0 15px 0;\n margin: 0;\n list-style-type: none;\n overflow-x: auto;\n overflow-y: hidden;\n gap: var(--product-spacing);\n}\n\njarvisml-product-rec .product_item {\n position: relative;\n flex: 1;\n height: fit-content;\n min-width: calc(100% / var(--desktop-col-count) - ((var(--product-spacing) * (var(--desktop-col-count) - 1)) / var(--desktop-col-count)));\n}\n\njarvisml-product-rec .imgBox {\n overflow: hidden;\n position: relative;\n}\n\njarvisml-product-rec .product_img {\n position: absolute;\n left: 0;\n top: 0;\n padding: 0;\n margin: 0;\n width: 100%;\n object-fit: contain;\n aspect-ratio: 1;\n cursor: pointer;\n opacity: 0;\n transition: opacity 0.4s ease;\n user-select: none;\n}\n\njarvisml-product-rec .product_details-container {\n text-align: var(--details-alignment);\n}\n\njarvisml-product-rec .product_link {\n display: block;\n text-decoration: none;\n color: inherit; \n}\n\njarvisml-product-rec .product_label {\n text-decoration: none;\n color: currentColor;\n line-height: 24px;\n max-height: 72px;\n -webkit-line-clamp: 3;\n -webkit-box-orient: vertical;\n display: -webkit-box;\n overflow: hidden;\n overflow-wrap: break-word;\n cursor: pointer;\n margin: 0;\n text-align: var(--details-alignment);\n}\n\njarvisml-product-rec .product_price {\n font-size: 100%;\n font-weight: bold;\n cursor: pointer;\n}\n\njarvisml-product-rec .pixel {\n opacity: 0.001;\n pointer-events: none;\n display: block;\n float: right;\n position: relative;\n right: 30%;\n margin: -1px 0 0 0;\n}\n\njarvisml-product-rec .swatch_area {\n display: inline-block;\n max-width: 100%;\n overflow-x: auto;\n padding: 4px 0;\n --swatchSize: 19px;\n}\n@media only screen and (max-width: 768px) {\n /* Small screens ~= "mobile" */\n\n jarvisml-product-rec .product_item {\n min-width: calc(100% / var(--mobile-col-count) - ((var(--product-spacing) * (var(--mobile-col-count) - 1)) / var(--mobile-col-count)));\n } \n\n jarvisml-product-rec .swatch_area {\n --swatchSize: 34px;\n --swatchRoundness: 50%;\n }\n}\n\njarvisml-product-rec .swatch_box {\n display: flex;\n width: fit-content;\n}\njarvisml-product-rec .swatch_box_2rows {\n line-height: 0;\n overflow-y: hidden;\n height: calc(2 * (var(--swatchSize) + 12px));\n}\njarvisml-product-rec .swatch_box_all_rows {\n line-height: 0;\n height: fit-content;\n}\n\njarvisml-product-rec .swatch_button {\n position: relative;\n display: inline-block;\n box-sizing: content-box;\n height: var(--swatchSize);\n width: var(--swatchSize);\n line-height: 0;\n margin: 2.5px; /* > .selected box-shadow */\n border-radius: var(--swatchRoundness);\n border: 3.5px solid transparent;\n cursor: pointer;\n}\njarvisml-product-rec .swatch_button.selected {\n box-shadow: 0 0 0 2px;\n}\njarvisml-product-rec .swatch_button_img {\n height: 100%;\n width: 100%;\n background-position: 50%;\n background-size: cover;\n background-repeat: no-repeat;\n border-radius: var(--swatchRoundness);\n box-shadow: 0 0 1px 1px;\n color: #777;\n}\njarvisml-product-rec .swatch_button_img.small_image {\n object-fit: contain;\n}\njarvisml-product-rec .swatch_button_img.image_spot {\n object-position: 60% 50%;\n object-fit: none;\n}\njarvisml-product-rec .swatch_button_unavailable {\n display: block;\n position: absolute;\n left: 0.5px;\n top: calc(50% - 0.5px);\n height: 1px;\n width: calc(100% - 1px);\n color: black;\n background: white;\n box-shadow: 0px 0px 1px 0px;\n transform: rotate(-45deg);\n}\njarvisml-product-rec .swatch_button_unavailable_ext {\n display: none;\n}\n\njarvisml-product-rec .tag_box {\n z-index: 1;\n position: absolute;\n top: 0;\n height: 100%;\n width: 100%;\n cursor: pointer;\n}\njarvisml-product-rec .jml-tag {\n display: none;\n position: absolute;\n}\n.jml-tags_label {\n display: block;\n position: absolute;\n background: black;\n padding: 6px 8px;\n color: white;\n top: 0;\n right: 0;\n font-size: 14px;\n}\n\njarvisml-product-rec span.price-strikethrough {\n text-decoration: line-through;\n}\njarvisml-product-rec span.price-sale {\n display: inline-block;\n margin-left: 1ex;\n}\n\n/* For Accessibility */\njarvisml-product-rec .jml-visually-hidden {\n position:absolute;\n width: 1px;\n height: 1px;\n border: 0;\n padding: 0;\n margin: 0;\n white-space: nowrap;\n overflow: hidden;\n clip: rect(0 0 0 0);\n}',""]);const a=s},586:(e,t,i)=>{i.d(t,{Z:()=>a});var n=i(81),o=i.n(n),r=i(645),s=i.n(r)()(o());s.push([e.id,".search-query-section {\n display: flex;\n justify-content: center;\n align-items: center;\n margin: 2px 0;\n}\n\n.search-query-text {\n margin-right: 8px;\n}\n\n.jml-searchpage-searchbar {\n height: 40px;\n max-width: 280px;\n display: flex;\n}\n\n.jml-searchpage-searchbar input {\n padding: 10px;\n font-size: 17px;\n border: 1px solid grey;\n float: left;\n width: 80%;\n background: #f1f1f1;\n height: 100%;\n margin: 0;\n}\n\n.jml-searchpage-searchbar .jml-searchbar-button {\n float: left;\n background: #000;\n color: white;\n font-size: 17px;\n border: 1px solid grey;\n border-left: none; /* Prevent double borders */\n cursor: pointer;\n height: 100%;\n width: 44px;\n padding: 0;\n margin: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n\n.jml-searchpage-searchbar .jml-searchbar-button svg {\n stroke: white;\n stroke-width: 6px;\n fill: transparent;\n}\n\n.jml-searchpage-searchbar input:focus {\n outline: none !important;\n box-shadow: none !important;\n}\n",""]);const a=s},484:(e,t,i)=>{i.d(t,{Z:()=>a});var n=i(81),o=i.n(n),r=i(645),s=i.n(r)()(o());s.push([e.id,"ul.jml-search-document-container {\n display: flex;\n list-style-type: none;\n margin: 1rem 0;\n gap: 1.2rem;\n flex-wrap: wrap;\n max-height: 120px;\n padding: 1rem 0;\n overflow: hidden;\n border-bottom: 1px solid #a1a1a1;\n}\n\nli.jml-document {\n padding: 1rem 2rem;\n background: #F0F0F0;\n height: 40px;\n margin: 0;\n display: flex;\n justify-content: left;\n align-items: center;\n}\n\nli.jml-document a {\n display: inline-block;\n max-width: 260px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}",""]);const a=s},447:(e,t,i)=>{i.d(t,{Z:()=>a});var n=i(81),o=i.n(n),r=i(645),s=i.n(r)()(o());s.push([e.id,'/*css for Filters*/\n.jml-filters-section .filter-groups .filter-list.collapsible-content {\n max-height: 160px;\n visibility: hidden;\n opacity: 0;\n overflow: hidden;\n height: 0;\n margin: 0;\n transition: opacity .3s cubic-bezier(.25,.46,.45,.94),height .3s cubic-bezier(.25,.46,.45,.94);\n}\n\n.jml-filters-section .filter-groups .filter-list.collapsible-content.is-open {\n visibility: visible;\n opacity: 1;\n overflow-y: auto;\n height: auto;\n margin-bottom: 4px;\n font-size: 12px;\n transition: opacity 1s cubic-bezier(.25,.46,.45,.94),height .35s cubic-bezier(.25,.46,.45,.94);\n}\n\n.jml-filters-section .filter-groups .filter-groups-label .collapsible-trigger {\n border: none;\n width: 100%;\n padding: 12px 10px 12px 0;\n text-align: left;\n background: none;\n font-size: 14px;\n font-weight: bold;\n display: flex;\n align-items: center;\n justify-content: space-between;\n}\n\n.jml-filters-section .filter-groups .filter-groups-label .collapsible-trigger .icon {\n transition: all .1s ease-in;\n}\n\n.jml-filters-section .filter-groups .filter-groups-label .collapsible-trigger.is-open .icon {\n transition: all .1s ease-in;\n transform: scaleY(-1);\n}\n\n.jml-filters-section .filter-groups * {\n cursor: pointer;\n}\n\n.jml-filters-section .filter-groups .filter-content input {\n margin: 0px;\n}\n\n#jarvis-search-results .mobile-filter-button {\n background-color: #fff;\n border: 1px solid;\n display: none;\n align-items: center;\n justify-content: space-evenly;\n min-width: 140px;\n padding: 8px;\n height: 40px;\n font-size: 16px;\n}\n\n#jarvis-search-results .mobile-filter-button svg {\n width: 15%;\n}\n\n.relevant-filters-added .jml-search-block .jml-filters-section {\n flex-basis: 20%;\n margin: 0 6px;\n max-width: 220px;\n position: relative;\n top: 10px;\n overflow-y: auto;\n}\n\n.relevant-filters-added .jml-search-block .jml-search-results {\n flex-basis: 80%;\n flex-grow: 1;\n margin: 0 1em;\n}\n\n.jml-search-block .jml-search-results {\n width: 100%;\n}\n\n.jml-filters-section .filter-groups {\n margin: 2px;\n overflow: hidden;\n border-top: 1px solid #e8e8e1;\n}\n\n.jml-filters-section .filters .heading-section {\n font-weight: 700;\n}\n\n.jml-filters-section .filter-groups:first-of-type {\n border-top: 0;\n}\n\n.jml-filters-section .mobile-filter-cross {\n display: none;\n}\n\n.jml-filters-section .filter-list .view-more-filter-list {\n display: none;\n}\n\n.jml-filters-section .filter-list a.view-more-options, .jml-filters-section .filter-list a.view-less-options {\n text-decoration: none;\n color: #000;\n font-weight: 600;\n}\n\n.jml-filters-section .filter-list a.view-more-options:hover, .jml-filters-section .filter-list a.view-less-options:hover {\n text-decoration: underline;\n}\n\n.jml-filters-section .filter-content {\n display: flex;\n align-items: center;\n justify-content: flex-start;\n padding: 4px 0;\n}\n\n.jml-filters-section .filter-content label {\n margin: 0;\n padding: 0;\n margin-left: 8px;\n font-size: 12px;\n font-weight: 200;\n}\n\n\n.jml-filters-section .price-parent-container {\n padding: 13px 8px;\n}\n\n.jml-filters-section .price-parent-container .price-input {\n width: 100%;\n display: flex;\n margin: 0 0 20px;\n}\n.jml-filters-section .price-parent-container .price-input .input-field {\n display: flex;\n width: 100%;\n align-items: center;\n}\n.jml-filters-section .price-parent-container .input-field input {\n width: 100%;\n height: 100%;\n outline: none;\n font-size: 14px;\n margin-right: 10px;\n border-radius: 5px;\n text-align: center;\n border: 1px solid #999;\n -moz-appearance: textfield;\n}\n.jml-filters-section .price-parent-container .input-field input[type="number"]::-webkit-outer-spin-button,\n.jml-filters-section .price-parent-container .input-field input[type="number"]::-webkit-inner-spin-button {\n -webkit-appearance: none;\n}\n.jml-filters-section .price-parent-container .price-input .price-separator {\n display: flex;\n font-size: 19px;\n align-items: center;\n justify-content: center;\n margin: 0 14px;\n}\n.jml-filters-section .price-parent-container .price-slider {\n height: 2px;\n position: relative;\n background: #ddd;\n border-radius: 2px;\n}\n.jml-filters-section .price-parent-container .price-slider .price-progress {\n height: 2px;\n left: 0%;\n right: 0%;\n position: absolute;\n border-radius: 2px;\n background-color: #000;\n display: block;\n z-index: 1;\n}\n.jml-filters-section .price-parent-container .price-range-input {\n position: relative;\n width: 100%;\n margin-bottom: 1em;\n}\n.jml-filters-section .price-parent-container .price-range-input input {\n position: absolute;\n width: 100%;\n height: 2px;\n top: -2px;\n margin: 0;\n padding: 0;\n z-index: 1;\n background: none;\n pointer-events: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n}\n.jml-filters-section .price-parent-container input[type="range"]::-webkit-slider-thumb {\n height: 12px;\n width: 12px;\n border-radius: 50%;\n background: #000;\n pointer-events: auto;\n -webkit-appearance: none;\n cursor: pointer;\n z-index: 2;\n}\n.jml-filters-section .price-parent-container input[type="range"]::-moz-range-thumb {\n height: 12px;\n width: 12px;\n border: none;\n border-radius: 50%;\n background: #000;\n pointer-events: auto;\n -moz-appearance: none;\n cursor: pointer;\n z-index: 2;\n}\n\n.jml-filters-section .price-parent-container .price-search {\n padding: 6px 14px;\n float: right;\n background: #fff;\n border: 1px solid;\n color: #000;\n border-radius: 5px;\n}\n\n.jml-filters-section .price-parent-container .price-search:hover {\n background: #000;\n color: #fff;\n}\n\n.jml-filters-section span.collapsible-trigger-icon {\n width: auto;\n}\n\n#jarvis-search-results .jml-action-button-container {\n display: none;\n}\n\n@media only screen and (max-width: 435px) {\n .jml-search-results .action-buttons-container {\n align-items: center;\n justify-content: space-between;\n width: 100%;\n margin-bottom: 1em;\n display: flex;\n }\n\n .jml-filters-section {\n position: fixed;\n z-index: 99;\n top: 0;\n bottom: 0;\n background: white;\n width: 95%;\n max-width: 340px;\n display: flex;\n left: 0;\n align-items: flex-start;\n transition: all .1s ease-in;\n padding: 2em 1em;\n margin: 0;\n visibility: hidden;\n opacity: 1;\n height: 0;\n }\n\n .jml-filters-section .heading-section {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 15px 10px 15px 0;\n }\n\n .jml-filters-section .filters {\n width: 100%;\n overflow-y: auto;\n height: 100%;\n }\n\n .jml-filters-section.mobile-open {\n visibility: visible;\n opacity: 1;\n height: auto;\n min-height: 100%;\n }\n\n .jml-filters-section .mobile-filter-cross {\n display: flex;\n background: none;\n border: none;\n font-size: 24px;\n }\n\n #jarvis-search-results .mobile-filter-button {\n display: flex;\n width: 46%;\n min-width: inherit;\n }\n #jarvis-search-results .jml-action-button-container {\n align-items: center;\n justify-content: space-between;\n width: 100%;\n margin-bottom: 1em;\n display: flex;\n }\n #jarvis-default-sort-box {\n display: none;\n }\n}',""]);const a=s},731:(e,t,i)=>{i.d(t,{Z:()=>a});var n=i(81),o=i.n(n),r=i(645),s=i.n(r)()(o());s.push([e.id,"\n/* css for infinite scroll loader */\n#jarvis-loader-parent {\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n#jarvis-loader-container {\n display: inline-block;\n position: relative;\n width: 80px;\n height: 80px;\n visibility: hidden;\n }\n \n #jarvis-loader-container span {\n position: absolute;\n top: 33px;\n width: 13px;\n height: 13px;\n border-radius: 50%;\n background: #000;\n animation-timing-function: cubic-bezier(0, 1, 1, 0);\n }\n \n #jarvis-loader-container span:nth-child(1) {\n left: 8px;\n animation: lds-ellipsis1 0.6s infinite;\n }\n \n #jarvis-loader-container span:nth-child(2) {\n left: 8px;\n animation: lds-ellipsis2 0.6s infinite;\n }\n \n #jarvis-loader-container span:nth-child(3) {\n left: 32px;\n animation: lds-ellipsis2 0.6s infinite;\n }\n \n #jarvis-loader-container span:nth-child(4) {\n left: 56px;\n animation: lds-ellipsis3 0.6s infinite;\n }\n \n @keyframes lds-ellipsis1 {\n 0% {\n transform: scale(0);\n }\n \n 100% {\n transform: scale(1);\n }\n }\n \n @keyframes lds-ellipsis3 {\n 0% {\n transform: scale(1);\n }\n \n 100% {\n transform: scale(0);\n }\n }\n \n @keyframes lds-ellipsis2 {\n 0% {\n transform: translate(0, 0);\n }\n \n 100% {\n transform: translate(24px, 0);\n }\n }\n\n #jml-loadmore-button {\n display: flex;\n width: 100%;\n align-items: center;\n justify-content: center;\n margin: 1rem 2rem;\n }\n\n #jml-loadmore-button button {\n width: 140px;\n height: 40px;\n background-color: transparent;\n border: 2px solid #000;\n cursor: pointer;\n }",""]);const a=s},812:(e,t,i)=>{i.d(t,{Z:()=>a});var n=i(81),o=i.n(n),r=i(645),s=i.n(r)()(o());s.push([e.id,"div.jml-unavailable-overlay-label {\n position: absolute;\n top: 15px;\n left: 15px;\n z-index: 100;\n padding: 3px 6px 3px 6px;\n background: #D3D3D3;\n color: white;\n font-size: 1.4rem;\n}",""]);const a=s},645:e=>{e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var i="",n=void 0!==t[5];return t[4]&&(i+="@supports (".concat(t[4],") {")),t[2]&&(i+="@media ".concat(t[2]," {")),n&&(i+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),i+=e(t),n&&(i+="}"),t[2]&&(i+="}"),t[4]&&(i+="}"),i})).join("")},t.i=function(e,i,n,o,r){"string"==typeof e&&(e=[[null,e,void 0]]);var s={};if(n)for(var a=0;a0?" ".concat(d[5]):""," {").concat(d[1],"}")),d[5]=r),i&&(d[2]?(d[1]="@media ".concat(d[2]," {").concat(d[1],"}"),d[2]=i):d[2]=i),o&&(d[4]?(d[1]="@supports (".concat(d[4],") {").concat(d[1],"}"),d[4]=o):d[4]="".concat(o)),t.push(d))}},t}},81:e=>{e.exports=function(e){return e[1]}},379:e=>{var t=[];function i(e){for(var i=-1,n=0;n{var t={};e.exports=function(e,i){var n=function(e){if(void 0===t[e]){var i=document.querySelector(e);if(window.HTMLIFrameElement&&i instanceof window.HTMLIFrameElement)try{i=i.contentDocument.head}catch(e){i=null}t[e]=i}return t[e]}(e);if(!n)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");n.appendChild(i)}},216:e=>{e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},565:(e,t,i)=>{e.exports=function(e){var t=i.nc;t&&e.setAttribute("nonce",t)}},37:e=>{var t,i=(t=[],function(e,i){return t[e]=i,t.filter(Boolean).join("\n")});function n(e,t,n,o){var r;if(n)r="";else{r="",o.supports&&(r+="@supports (".concat(o.supports,") {")),o.media&&(r+="@media ".concat(o.media," {"));var s=void 0!==o.layer;s&&(r+="@layer".concat(o.layer.length>0?" ".concat(o.layer):""," {")),r+=o.css,s&&(r+="}"),o.media&&(r+="}"),o.supports&&(r+="}")}if(e.styleSheet)e.styleSheet.cssText=i(t,r);else{var a=document.createTextNode(r),l=e.childNodes;l[t]&&e.removeChild(l[t]),l.length?e.insertBefore(a,l[t]):e.appendChild(a)}}var o={singleton:null,singletonCounter:0};e.exports=function(e){var t=o.singletonCounter++,i=o.singleton||(o.singleton=e.insertStyleElement(e));return{update:function(e){n(i,t,!1,e)},remove:function(e){n(i,t,!0,e)}}}},593:(e,t,i)=>{i.d(t,{j:()=>r,pv:()=>n,t8:()=>o});const n={shopify:"shopify_json",wc:"wc",hospitality:"hospitality_json",marine:"marine",ecommerce:"ecommerce"};function o(e){const t=new Date,i=new Date(t.getTime()+6048e5);document.cookie=`_jarvis_cid=${e}; expires=${i}`}function r(){var e,t;return`${e=1e15,t=Number.MAX_SAFE_INTEGER,Math.floor(Math.random()*(t-(e+1))+e)}.${function(){const e=new Date,t=e.getTime()+60*e.getTimezoneOffset()*1e3;return Math.round(t/1e3)}()}.1`}},234:(e,t,i)=>{function n(e){return"object"==typeof e&&null!==e?parseFloat(e.value)||0:Number(e)||0}i.d(t,{R:()=>n})},12:(e,t,i)=>{i.d(t,{U:()=>G});var n=i(155),o=i(106),r=i(636),s=i(63),a=i(625),l=i(748),c=i(504),d=i(379),u=i.n(d),p=i(37),h=i.n(p),m=i(569),g=i.n(m),f=i(565),v=i.n(f),y=i(216),_=i.n(y),b=i(144),w={};b.Z&&b.Z.locals&&(w.locals=b.Z.locals);var S,I=0,x={};x.setAttributes=v(),x.insert=g().bind(null,"head"),x.domAPI=h(),x.insertStyleElement=_(),w.use=function(e){return x.options=e||{},I++||(S=u()(b.Z,x)),w},w.unuse=function(){I>0&&!--I&&(S(),S=null)};const j=w,C="*main*",A="*alt*";let k,R,L=0,M="RESET";function P(e,t){k&&e===R&&clearTimeout(k),R=e,k=setTimeout(t,50)}function T(e){e.removeEventListener("click",D),e.removeEventListener("mouseenter",F),e.removeEventListener("mouseleave",O)}function E(e){const t=e.currentTarget._product;clearTimeout(k),t.gotoVariant()}function $(e){const t=e.currentTarget._product;"STAY"!==M&&P(t,(()=>t.showImage(A)))}function B(e){const t=e.currentTarget._product;"STAY"!==M&&P(t,(()=>t.showImage(C)))}function D(e){const t=e.currentTarget,i=t._product,n=Date.now()-L;i.currentVariantId=t._variantId,n>100&&i.gotoVariant()}function F(e){const t=e.currentTarget,i=t._product;L=Date.now(),i.currentVariantId=t._variantId;const n=t._swatchName;P(i,(()=>i.showSwatch(n)))}function O(e){const t=e.currentTarget._product;"STAY"!==M&&P(t,(()=>t.showImage(C)))}var U=function(e,t,i,n){return new(i||(i=Promise))((function(o,r){function s(e){try{l(n.next(e))}catch(e){r(e)}}function a(e){try{l(n.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(s,a)}l((n=n.apply(e,t||[])).next())}))};const q={brackets:"M15 4.5l-7.5 7.5l7.5 7.5",arrows:"M11 4.5l-7.5 7.5l7.5 7.5m-7.5-7.5l16 0"},z={brackets:"M9 4.5l7.5 7.5-7.5 7.5",arrows:"M13 4.5l7.5 7.5-7.5 7.5m7.5-7.5l-16 0"},N="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",J=100,H=Date.now();class V{constructor(e){this.topElement=e,this.products=[],this.productButtonAction=null,this.getSettings(),this.hideAll(!0),console.info("ProductRec constructor",Date.now()-H)}getSettings(){this.maxProductCount=this.getIntSetting("data-product_count",4),this.showCarouselButtons=this.getBoolSetting("data-show_carousel_buttons",!0),this.carouselButtonSize=this.getStrSetting("carouselButtonSize","32px"),this.carouselButtonIcon="arrows"===this.getStrSetting("carouselButtonIcon","")?"arrows":"brackets",this.carouselButtonRoundness=this.getStrSetting("carouselButtonRoundness","100"),this.carouselButtonSvg=this.getStrSetting("carouselButtonSvg",""),this.carouselButtonSvgPathLeft=this.getStrSetting("carouselButtonSvgPathLeft",""),this.carouselButtonSvgPathRight=this.getStrSetting("carouselButtonSvgPathRight",""),this.carouselButtonLabelLeft=this.getStrSetting("carouselButtonLabelLeft",""),this.carouselButtonLabelRight=this.getStrSetting("carouselButtonLabelRight",""),this.hoverBehavior=this.getStrSetting("data-hover_behavior","RESET"),this.showAltImage=this.getBoolSetting("data-show_alt_image",!1),this.productItemClasses=this.getStrSetting("data-product_item_classes","product_item"),this.labelClasses=this.getStrSetting("data-label_classes","product_label"),this.priceClasses=this.getStrSetting("data-price_classes","product_price"),this.forceZeroCents=this.getBoolSetting("data-price_show_zero_cents",!1),this.showCustomLabel=this.getBoolSetting("data-show_custom_label",!1),this.tagFilters=this.getStrSetting("data-tag_filter",""),this.swatchBoxClasses=this.getStrSetting("data-swatch_box_classes","swatch_box"),this.swatchRoundness=this.getStrSetting("data-swatch_roundness","100"),this.swatchImageType=this.getStrSetting("data-swatch_image_type","option-icon"),this.hideUnavailableSwatches=this.getBoolSetting("data-hide_unavailable_swatches",!1),this.swatchSize=this.getIntSetting("data-swatch_size",0),this.swatchSizeMobile=this.getIntSetting("data-swatch_size_mobile",0),this.headingLabel=this.getStrSetting("data-heading",""),this.headingTag=this.getStrSetting("data-heading_tag","h2"),this.headingClasses=this.getStrSetting("data-heading_classes","jarvis-recommendations-header"),this.buttonBoxClasses=this.getStrSetting("data-button_box_classes","disabled"),this.productButtonClasses=this.getStrSetting("data-product_button_classes","product_button"),this.productButtonLabel=this.getStrSetting("data-product_button_label",""),this.showVendor=this.getBoolSetting("data-product_vendor",!1),this.showRatings=this.getBoolSetting("data-product_rating",!1),this.productDetailsAlignment=this.getStrSetting("data-product_details_alignment","start"),this.showCurrencyCodeAndSymbol=this.getBoolSetting("data-show_currency_code",!1),this.columnsDesktop=this.getIntSetting("data-columns_desktop",4),this.columnsMobile=this.getStrSetting("data-columns_mobile","2"),this.productSpacing=this.getIntSetting("data-product_spacing",10)}getIntSetting(e,t){return(0,l.jK)(this.topElement,e,t)}getBoolSetting(e,t){return(0,l.L)(this.topElement,e,t)}getStrSetting(e,t){return(0,l.cE)(this.topElement,e,t)}setOptions(e){const t=this;for(const i in e)void 0!==t[i]?t[i]=e[i]:console.warn(`Not an option: ${i} (value ignored: ${e[i]})`)}createDom(){j.use(),function(e){switch(e){case"STAY":case"RESET":M=e;break;default:M="RESET"}}(this.hoverBehavior),this.swatchRoundness=(0,l.U7)(this.swatchRoundness,(e=>e/2+"%")),this.carouselButtonRoundness=(0,l.U7)(this.carouselButtonRoundness,(e=>e/2+"%")),this.headingLabel&&((0,a.Fz)(this.topElement,this.headingTag||"h2",this.headingClasses).innerText=this.headingLabel);const e=!a.tq&&this.showCarouselButtons;if(this.carouselBox=(0,a.Mq)(this.topElement,"div","carousel_box"+(e?" with_buttons":"")),e){this.carouselBox.style.setProperty("--buttonRoundness",this.carouselButtonRoundness);const[e,t]=(0,l.oO)(this.carouselButtonSize);this.carouselBox.style.setProperty("--buttonWidth",e),this.carouselBox.style.setProperty("--buttonHeight",t),this.leftBtn=this.createCarouselButton("leftSide","<",-1),this.rightBtn=this.createCarouselButton("rightSide",">",1)}this.productListElement=(0,a.Mq)(this.carouselBox,"ol","product_list"),e&&(this.productListElement.onscroll=()=>this.enableCarouselButtons()),this.productListElement.style.cssText=`\n --product-spacing: ${this.productSpacing}px;\n --details-alignment: ${this.productDetailsAlignment};\n --desktop-col-count: ${this.columnsDesktop};\n --mobile-col-count: ${this.columnsMobile};\n `;for(let e=0;ethis.onResize()),300),window.addEventListener("resize",this.resizeHandler)}onResize(){this.enableCarouselButtons()}createCarouselButton(e,t,i){const n=(0,a.Mq)(this.carouselBox,"button","carousel_hitbox "+e);(0,a.Vc)(n,"",(()=>this.onCarouselButtonClick(i)));const o=(0,a.Mq)(n,"div","carousel_btn");if(this.carouselButtonLabelLeft&&this.carouselButtonLabelRight){const e="<"===t?this.carouselButtonLabelLeft:this.carouselButtonLabelRight;o.innerHTML=`${e}`}else{const e="<"===t?this.carouselButtonSvgPathLeft||q[this.carouselButtonIcon]:this.carouselButtonSvgPathRight||z[this.carouselButtonIcon];o.innerHTML=(this.carouselButtonSvg||'').replace("%PATH%",e)}const r="<"===t?"Previous Arrow":"Next Arrow";return(0,a.Mq)(o,"span","jml-visually-hidden").innerText=r,n.hidden=!0,n}onCarouselButtonClick(e){const t=this.getVisibleProducts(),i=this.productListElement.scrollWidth,n=i/t.length,o=this.productListElement.clientWidth;let r=this.productListElement.scrollLeft;if(oe.clientWidth?(this.leftBtn.hidden=this.rightBtn.hidden=!1,this.leftBtn.disabled=0===e.scrollLeft,this.rightBtn.disabled=e.scrollLeft>=e.scrollWidth-e.clientWidth-1):this.leftBtn.hidden=this.rightBtn.hidden=!0}getVisibleProducts(){return this.products.filter((e=>!e.element.hidden))}hideAll(e){this.topElement.hidden=e}initRecos(){return U(this,void 0,void 0,(function*(){var e,t,i;this.jarvisRecoApi=yield(0,s.Gu)(),console.info("waitForSdk",Date.now()-H),this.jarvisRecoApi.jmlUtilities.setCurrency(null===(t=null===(e=window.Shopify)||void 0===e?void 0:e.currency)||void 0===t?void 0:t.active);const n=this.jarvisRecoApi.jmlUtilities.currencySettings;this.forceZeroCents&&(n.showZeroCents=!0),this.showCurrencyCodeAndSymbol&&(n.showCodeAndSymbol=!0,n.symbolPosition="before",n.codePosition="after"),(null===(i=window.JarvisMLOptions)||void 0===i?void 0:i.currencySettings)&&Object.assign(n,window.JarvisMLOptions.currencySettings),yield this.fetchData(),this.enableCarouselButtons()}))}destroy(){this.products.forEach((e=>{e.destroy()})),this.products=[],window.removeEventListener("resize",this.resizeHandler),j.unuse()}fetchData(){return U(this,void 0,void 0,(function*(){if(0===this.products.length)return null;const e=Math.max(this.products.length,10);console.info("fetchData",Date.now()-H,e),"jarvis-ml-dev.myshopify.com"===this.jarvisRecoApi.apiRoot.collectedIds.source||this.jarvisRecoApi.apiRoot.collectedIds.shopifyDomain;const t=this.jarvisRecoApi.buildRecommendationUrl("",null,e),i=this.jarvisRecoApi.apiRoot.getTrackingBaseUrl();try{const e=yield(0,a.rd)(t,(e=>{throw e}));if(!e)return null;const n=(0,a.q2)(e.recommendations);e.recommendations=n.slice(0,this.products.length),this.jarvisRecoApi.apiRoot.idCollection.processVisitIdResponse(e);const o=e.recommendations;if(console.info(`received ${null==o?void 0:o.length} recs`,Date.now()-H),!o||0===o.length)return null;this.hideAll(!1),this.jarvisRecoApi.apiRoot.recommendations=o,e&&e.aidaptive_cohort&&(0,a.Yj)(e.aidaptive_cohort);const r=Math.min(o.length,this.products.length),s=[];for(let e=0;e{t.productButtonAction&&t.productButtonAction(this,e)}))}var r;this.label.onclick=this.price.onclick=()=>this.gotoVariant(),(r=this.imageBox)._product=this,r.addEventListener("click",E),r.addEventListener("mouseenter",$),r.addEventListener("mouseleave",B)}destroy(){var e;this.label.onclick=this.price.onclick=null,(e=this.imageBox).removeEventListener("click",E),e.removeEventListener("mouseenter",$),e.removeEventListener("mouseleave",B);for(const e in this.swatches)T(this.swatches[e])}setFromReco(e,t){return U(this,void 0,void 0,(function*(){this.recoData=e;const i=(0,l.cC)(e,t),n=`${e.landing_page_url}.js`;this.mainImage.src=this.makeSizedImageUrl(e.product_image_url),this.mainImage.onerror=()=>this.onImageError(),this.mainImage.onload=()=>{this.mainImage.onload=this.mainImage.onerror=null},this.mainImage.style.position="relative",this.mainImage.style.opacity="1",this.label.innerText=e.title,this.label.ariaHidden="true",(0,c.Y)(this.productRec.showRatings,e,this.rating),this.pixel.src=t+e.impression_tracker_url,yield this.setFromShopifyAPI(n,i)}))}setTags(){this.recoData.label&&this.productRec.showCustomLabel&&this.createTag(this.recoData.label,"jml-tags_label");for(const e of this.productData.tags)this.createTag(e)}createTag(e,t=""){const i=e.replace(/[^0-9a-zA-Z]/g,"-");if(!t&&!(0,a.BL)(i,this.productRec.tagFilters))return;this.tagBox||(this.tagBox=(0,a.Mq)(this.imageBox,"div","tag_box"));const n=t?`${t} tag-${i}`:`jml-tag tag-${i}`;(0,a.Mq)(this.tagBox,"div",n).innerText=e}setPrice(e,t,i){this.price.innerHTML=(0,l.wv)(e,t,i,this.recoData.bulk_quantity||1,this.productRec.jarvisRecoApi.jmlUtilities)}showPrice(e){const t=this.currentVariantId?this.productData.variants.filter((e=>e.id===this.currentVariantId))[0]:null;if(e&&t){const e=this.groupedVariants[t.selected_option];this.setPrice(e.priceMin/J,e.compareAtPrice/J,e.priceVaries)}else if(t)if(t.compare_at_price)this.setPrice(t.price/J,t.compare_at_price/J,!1);else{const e=this.productData;this.setPrice(e.price/J,0,e.price_varies)}else{const e=this.productData;this.setPrice(e.price/J,e.compare_at_price/J,e.price_varies)}}onImageError(){this.mainImage.onload=this.mainImage.onerror=null,this.mainImage.src=N}gotoVariant(){location.href=(0,l.Nh)(this.recoData,this.currentVariantId)}setImage(e,t){if(t){if(this.images[e])this.images[e].src=this.makeSizedImageUrl(t),this.images[e].srcset=(0,l.fN)(t),this.images[e].sizes="(min-width: 769px) 25vw, 39vw";else{const i=(0,a.Mq)(this.imageBox,"img","product_img",{loading:"lazy"});i.src=this.makeSizedImageUrl(t),i.srcset=(0,l.fN)(t),i.sizes="(min-width: 769px) 25vw, 39vw",i.draggable=!1,this.images[e]=i}this.images[e].alt=`${this.productData.title} ${e}`}}makeSizedImageUrl(e){return(0,l.Kn)(e,400)}setSwatch(e,t,i,n){if(!this.swatchBox)return;const o=(0,a.Mq)(this.swatchBox,"div","swatch_button");n&&(o.setAttribute("isunavailable","true"),(0,a.Mq)(o,"div","swatch_button_unavailable_ext"),(0,a.Mq)(o,"div","swatch_button_unavailable")),this.swatches[e]=o,function(e,t,i,n){const o=e;o._product=t,o._swatchName=i,o._variantId=n,e.addEventListener("click",D),e.addEventListener("mouseenter",F),e.addEventListener("mouseleave",O)}(o,this,e,i);let r="swatch_button_img";"small-image"===this.productRec.swatchImageType||e===A?r+=" small_image":"image-spot"===this.productRec.swatchImageType&&(r+=" image_spot");const s=(0,a.Mq)(o,"img",r,{loading:"lazy"});s.src=t,s.draggable=!1,s.alt=e,s.ariaLabel=e,s.role="option",s.onerror=()=>this.handleMissingColor(s,e),s.onload=()=>{s.onload=s.onerror=null}}handleMissingColor(e,t){e.onerror=e.onload=null,e.classList.add("color_only"),e.src=N;for(const i of t.split("-"))if(CSS.supports("color",i)){e.style.backgroundColor=i;break}}setFromShopifyAPI(e,t){return U(this,void 0,void 0,(function*(){try{const i=yield(0,a.rd)(e,(e=>{throw e}));if(!i)return;this.productData=i,this.groupedVariants=(0,l.TK)(i,this.productRec.hideUnavailableSwatches);const n=(0,l.tc)(i,this.groupedVariants,t);this.setMainAndAltImage(n),this.showPrice(!1),this.swatchBox&&this.setSwatchesFromVariants(),this.setTags(),i.vendor&&this.productRec.showVendor&&(this.vendor.innerText=i.vendor)}catch(e){console.error(e),this.productRec.hideBrokenProduct(this)}}))}setMainAndAltImage(e){var t;const i=this.productData.images[0];this.setImage(C,(null===(t=null==e?void 0:e.featured_image)||void 0===t?void 0:t.src)||i),this.mainImgVariantId=(null==e?void 0:e.id)||0,this.currentVariantId=this.mainImgVariantId,this.productLink.setAttribute("href",(0,l.Nh)(this.recoData,this.currentVariantId)),this.productLink.setAttribute("aria-labelledby",`${this.productData.handle}_selected`),this.productLink.title=this.productData.title,this.productRec.showAltImage&&this.productData.images[1]&&(this.setImage(A,this.productData.images[1]),this.setSwatch(A,this.productData.images[1],this.mainImgVariantId,!1)),this.mainImage.alt=`${this.productData.title} ${(null==e?void 0:e.selected_option)||""}`,this.mainImage.id=`${this.productData.handle}_selected`}setSwatchesFromVariants(){for(const e of(0,l.zV)(this.groupedVariants,this.productRec.swatchImageType,this.productRec.hideUnavailableSwatches))this.setImage(e.imageName,e.imageUrl),this.setSwatch(e.imageName,e.iconUrl,e.variant.id,!e.available)}showSwatch(e){e!==this.currentSwatch&&this.swatches[e]&&this.showImage(e,!0)}showImage(e,t=!1){e!==this.currentImage&&this.images[e]&&(this.images[this.currentImage].style.opacity="0",this.images[this.currentImage].removeAttribute("id"),this.images[e].style.opacity="1",this.currentImage=e,this.currentSwatch&&(this.swatches[this.currentSwatch].classList.remove("selected"),this.currentSwatch=""),t?(this.swatches[e].classList.add("selected"),this.currentSwatch=e,this.images[this.currentSwatch].id=`${this.productData.handle}_selected`,this.productLink.setAttribute("href",(0,l.Nh)(this.recoData,this.currentVariantId))):(this.currentVariantId=this.mainImgVariantId,this.mainImage.id=`${this.productData.handle}_selected`,this.productLink.setAttribute("href",(0,l.Nh)(this.recoData,this.currentVariantId))),this.showPrice(t))}}var Q=i(942);class G{constructor(e){this.scriptParams=e,this.initialized=!1,this.waitRecoCallbacks=[],this.waitSearchCallbacks=[]}getRecoBaseUrl(){return(0,Q.xZ)(this)}getSearchBaseUrl(){return(0,Q._k)(this)}getTrackingBaseUrl(){return(0,Q.Xi)(this)}waitForSdkRecos(){return this.ProductRec=V,new Promise((e=>{this.personalizedRecos?e(this.personalizedRecos):this.waitRecoCallbacks.push(e)}))}waitForSdkSearch(){return new Promise((e=>{this.personalizedSearch?e(this.personalizedSearch):this.waitSearchCallbacks.push(e)}))}initPersonalizedReco(e,t,i){const o=new n.tF(this,e);if(this.personalizedRecos=o,t)this.initPersonalizedRecommendations=()=>{this.recommendations||o.loadRecommendations(this.collectedIds)};else if(this.waitRecoCallbacks.length)for(;;){const e=this.waitRecoCallbacks.pop();if(!e)break;e(o)}else i&&o.loadRecommendations(this.collectedIds)}initPersonalizedSearch(e){this.searchFilters={soft_filters:[],hard_filters:[],filter_dict:{}},this.filtering=new r.h;const t=new o.S(this,e);for(this.personalizedSearch=t,this.triggerFilteredResults=t.triggerFilteredResults,t.initPersonalizedSearch();;){const e=this.waitSearchCallbacks.pop();if(!e)break;e(t)}}getCollectedIds(e){this.collectedIds?e(this.filterCollectedIds(this.collectedIds)):this.collectedIdsCallback=e}_sendDelayedCollectedIds(){this.collectedIdsCallback&&this.collectedIdsCallback(this.filterCollectedIds(this.collectedIds))}registerForEvents(e){this.eventListener=e}filterCollectedIds(e){const t={};return e.googleAnalyticsId&&(t.ga_id=e.googleAnalyticsId),e.jarvisPixelId&&(t.visit_id=e.jarvisPixelId),t}}},942:(e,t,i)=>{function n(e){return"https://dynamic-experience-dot-jarvis-ml-prod.wn.r.appspot.com/"}function o(e){return"https://search.aidaptive.com/"}function r(e){return"https://tr.aidaptive.com/"}function s(e){return"https://api.aidaptive.com/"}i.d(t,{Ri:()=>s,Xi:()=>r,_k:()=>o,xZ:()=>n})},426:(e,t,i)=>{i.d(t,{r:()=>o});var n=function(e,t,i,n){return new(i||(i=Promise))((function(o,r){function s(e){try{l(n.next(e))}catch(e){r(e)}}function a(e){try{l(n.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(s,a)}l((n=n.apply(e,t||[])).next())}))};function o(e,t,i){return n(this,void 0,void 0,(function*(){const n=void 0!==(null==i?void 0:i.maxRetries)?i.maxRetries:1,o={};(null==i?void 0:i.signal)&&(o.signal=i.signal);let r=0,s="";for(;;)try{s="network";const t=yield fetch(e,o);if(!t.ok)throw s=`${t.status} from ${e}`,new Error(s);return s="json",yield t.json()}catch(i){if(!(r{i.d(t,{Gu:()=>f,RL:()=>g});var n=i(12),o=i(625),r=i(259),s=i(155),a=function(e,t,i,n){return new(i||(i=Promise))((function(o,r){function s(e){try{l(n.next(e))}catch(e){r(e)}}function a(e){try{l(n.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(s,a)}l((n=n.apply(e,t||[])).next())}))};let l,c,d=r.R;function u(){const e=document.getElementsByClassName("jarvis-info-form");if(e&&e.length){const t=(e,t)=>a(this,void 0,void 0,(function*(){var i;const n=t.querySelector("input[type='email']");n&&n.value&&(e.preventDefault(),yield c.idCollection.sendUserEnquiryFormData({email:n.value,formType:(null===(i=t.dataset)||void 0===i?void 0:i.formType)||"user-enquiry-form"}).finally((()=>{var e;"FORM"===t.tagName&&(null===(e=t.dataset)||void 0===e?void 0:e.redirectAfterSubmit)&&t.submit()})))}));for(const i of e)if("FORM"===i.tagName)i.addEventListener("submit",(e=>a(this,void 0,void 0,(function*(){t(e,i)}))));else{const e=i.querySelector("input[type='submit']");e&&e.addEventListener("click",(e=>a(this,void 0,void 0,(function*(){t(e,i)}))))}}}function p(e,t){return a(this,void 0,void 0,(function*(){if(e.initialized)return;if(e.initialized=!0,window.JarvisMlSdk){const i=window.JarvisMlSdk;return void(i.delayedInitCalls?i.delayedInitCalls.push((()=>{h(e,t)})):h(e,t))}window.JarvisMlSdk=e,window.JarvisML=e,e.delayedInitCalls=[];const i=new d(e),n=yield i.collectIds();for(e.idCollection=i,e.collectedIds=n,e.sendCustomData=e=>i.sendCustomData(e),e.sendShopifyAddToCartEvent=()=>i.sendShopifyAddToCartEvent();;){const t=e.delayedInitCalls.pop();if(!t)break;t()}e.delayedInitCalls=null,h(e,t),i.sendIdData(),function(e){new MutationObserver((function(){const t=`${window.location.hostname}${window.location.pathname}`;if(l){if(t!==l&&(l=t,e.idCollection.readIdData(),e.idCollection.sendIdData(),!(0,s.Ky)(e.collectedIds))){const t=new o.PW(e);e.initPersonalizedReco(t,!1,!0)}}else l=t})).observe(document,{subtree:!0,childList:!0})}(e),u()}))}function h(e,t){const i=window.JarvisMlSdk,n=e===i;n||(e.idCollection=i.idCollection,e.collectedIds=i.collectedIds,e.sendCustomData=i.sendCustomData,e.sendShopifyAddToCartEvent=i.sendShopifyAddToCartEvent),e.useBaseCss=Boolean(e.scriptParams.useBaseCss);const r=new o.PW(e);e.initPersonalizedReco(r,t,n),e.initPersonalizedSearch(r),e._sendDelayedCollectedIds()}function m(e,t){return e.searchParams.get(t)||""}function g(){const e={},t=document.currentScript;if(null==t?void 0:t.src){const i=new URL(t.src);e.initManually=m(i,"init_manually"),e.onLoad=m(i,"onload"),e.useBaseCss=m(i,"use_base_css"),e.customerId=m(i,"customer_id"),e.vertical=m(i,"vertical"),e.debugSource=m(i,"debug_source"),e.debugShopifyDomain=m(i,"debug_shopify_domain"),e.debugExperimentId=m(i,"debug_experiment_id")}return c=new n.U(e),e.initManually?window.initializeJarvisMLSdk=e=>{p(c,e)}:e.onLoad||["complete","loaded","interactive"].indexOf(document.readyState)>=0?p(c,!1):document.addEventListener("DOMContentLoaded",(()=>{p(c,!1)})),c}function f(){return c.waitForSdkRecos()}},128:(e,t,i)=>{i.d(t,{U:()=>l,w:()=>a});var n=i(625),o=i(660),r=i(25),s=function(e,t,i,n){return new(i||(i=Promise))((function(o,r){function s(e){try{l(n.next(e))}catch(e){r(e)}}function a(e){try{l(n.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(s,a)}l((n=n.apply(e,t||[])).next())}))};function a(e){const t=e.baseUrl,i=e.collectedIds,n=i.shopifyPageType?null:e.pageType||i.pageType||"search",r=e.searchQuery||"";if("ecommerce"===i.vertical||"shopify"===i.vertical)return`${t}dynamic_search/ecommerce/display_json`;let s=`${t}dynamic_search/display_json?source=${encodeURIComponent(i.source)}`;return s=(0,o.a3)(s,"ga_id",i.googleAnalyticsId),s=(0,o.a3)(s,"shopify_cid",i.shopifyId),s=(0,o.a3)(s,"shopify_domain",i.shopifyDomain),s=(0,o.a3)(s,"shopify_page_type",i.shopifyPageType),s=(0,o.a3)(s,"shopify_product_id",i.shopifyProductId),s=(0,o.a3)(s,"page_type",n),s=(0,o.a3)(s,"customer_id",i.customerId),s=(0,o.a3)(s,"jarvis_cid",i.jarvisClientId),s=(0,o.a3)(s,"visit_id",i.jarvisPixelId),s=(0,o.a3)(s,"consent",i.jarvisConsentOpt),s=(0,o.a3)(s,"query",r),s=(0,o.a3)(s,"search_params",encodeURIComponent(JSON.stringify({filter_dict:{Aidaptive_Availability:"In-Stock"}}))),s}class l{constructor(e,t){this.apiRoot=e,this.searchFilterSection=t}initializeDefaultFilters(){this.renderDefaultFilterSection(),this.fetchFiltersData()}addEventsInFilters(e){const{filtering:t}=this.apiRoot,i=e.querySelectorAll(".decrement-icon"),n=e.querySelectorAll(".increment-icon");i.forEach((e=>{e.onclick=()=>{var i;const n=null===(i=e.parentNode)||void 0===i?void 0:i.querySelector("input[type='number']");n&&(n.value=String(t.updateCount(parseInt(n.value),!1)))}})),n.forEach((e=>{e.onclick=()=>{var i;const n=null===(i=e.parentNode)||void 0===i?void 0:i.querySelector("input[type='number']");n&&(n.value=String(t.updateCount(parseInt(n.value),!0)))}})),this.handleAdditionalFiltersEvents()}handleAdditionalFiltersEvents(){const e=document.querySelector(".jml-modal"),t=document.querySelector(".jml-overlay"),i=document.querySelector(".jml-filter-btn"),n=document.querySelector(".jml-modal-close");i&&i.addEventListener("click",(()=>{null==e||e.classList.remove("jml-hidden"),null==t||t.classList.remove("jml-hidden")})),n&&n.addEventListener("click",(()=>{null==e||e.classList.add("jml-hidden"),null==t||t.classList.add("jml-hidden")}))}renderDefaultFilterSection(){return s(this,void 0,void 0,(function*(){const e=this.searchFilterSection,t=`${e.calendarSection} ${e.filterAndModalSection} ${e.searchBtn} ${e.sortField} `,i=yield(0,r.X)("default-filters",(()=>document.getElementById("jarvis-default-filters")),5e3);if(!i)return;i.innerHTML=t,this.addEventsInFilters(i);const n=document.getElementById("jarvis-default-search-filters-form");n&&n.addEventListener("submit",(e=>this.onJarvisDefaultFormSubmit(e)))}))}fetchFiltersData(){return s(this,void 0,void 0,(function*(){const e=a({baseUrl:this.apiRoot.getSearchBaseUrl(),collectedIds:this.apiRoot.collectedIds}),t=yield(0,n.rd)(e,(e=>{(0,n.Qm)(`fetchSearchFilters error: ${e.message}`,"personalized_search")}));this.renderSortSelector(t),this.renderAdditionalFilters(t)}))}renderSortSelector(e){const t=document.querySelector(".jml-search-options.jml-default-sort-container");if(!t)return;if(!(null==e?void 0:e.sort_options))return void(t.style.display="none");const i=document.createElement("select");i.id="jml-sort-select-box",i.name="sort",i.onchange=e=>this.onJarvisDefaultFormSubmit(e),this.renderSortOptions(i,e),t.appendChild(i)}renderSortOptions(e,t){var i;null===(i=t.sort_options)||void 0===i||i.forEach((i=>{var n;const o=document.createElement("option");o.value=i.sort_field,o.text=i.sort_label,o.selected=i.sort_field===(null===(n=t.default_sort_option)||void 0===n?void 0:n.sort_field),e.appendChild(o)}))}renderAdditionalFilters(e){var t;const i=document.querySelector(".jml-search-options .jml-default-filter-modal"),n=document.querySelector(".jml-filter-btn"),o=null==i?void 0:i.querySelector(".jml-modal-options");if(!n||!i)return;if(!(null==e?void 0:e.filter_display))return void(n.style.display="none");const r=null===(t=e.filter_display)||void 0===t?void 0:t.filter_options;null==r||r.forEach((e=>{switch(e.filter_type){case"range":{const t=this.createRangeFilters(e);t&&(null==o||o.insertAdjacentHTML("beforeend",t)),this.addEventsInFilters(i);break}case"checkbox":{const t=this.createSelectOptionsFilters(e);t&&(null==o||o.insertAdjacentHTML("beforeend",t)),o&&this.addUncheckEventOnFilters(o);break}default:console.log("Unknown input field type:",e.filter_type)}}))}addUncheckEventOnFilters(e){e.querySelectorAll('input[type="checkbox"]').forEach((e=>{e.addEventListener("change",(e=>this.removeFiltersOnUncheck(e)))}))}removeFiltersOnUncheck(e){const t=e.target,i=t.name,n=t.value,o=window.JarvisML.filtering;t.checked||("(Various)"===i?o.removeFilter(n):o.removeFilter(i,n))}createSelectOptionsFilters(e){if(!e.options||e.options.length<1)return null;let t=this.searchFilterSection.selectFilterOuterSection||"";t=t.replaceAll("%label%",e.label);let i="";return e.options.forEach((t=>{let n=this.searchFilterSection.selectFilterSection||"";n=n.replaceAll("%filter_field%","(Various)"===e.filter_field?e.filter_field:t.filter_name),n=n.replaceAll("%filter_value%","(Various)"===e.filter_field?t.filter_name:t.filter_value),n=n.replaceAll("%filter_label%",t.filter_label),i+=n})),t=t.replaceAll("%select_options%",i),t}createRangeFilters(e){let t=this.searchFilterSection.rangeFilterSection||"";return t=t.replaceAll("%label%",e.label),t=t.replaceAll("%filter_field%",e.filter_field),t=t.replaceAll("%min_value%",e.min_value||""),t=t.replaceAll("%max_value%",e.max_value||""),t}onJarvisDefaultFormSubmit(e){e.preventDefault();const t=document.getElementById("jarvis-default-search-filters-form"),i=new FormData(t),n=window.JarvisML.filtering;let o,r,s,a;for(const[e,t]of i.entries()){const l=t;"sort"===e?n.setSortBy(l,!0):"bedrooms"===e?n.setBedrooms(l):"sleeps"===e?n.setSleeps(l):"bathrooms"===e?n.setBathrooms(l):"arrival"===e?o=l:"departure"===e?r=l:"arrival-mobile"===e?s=l:"departure-mobile"===e?a=l:"(Various)"===e?n.setFilter(l,!0):n.setFilter(e,i.getAll(e))}o=o||s,r=r||a,o&&r&&n.setDate(o,r),this.apiRoot.triggerFilteredResults(),document.querySelectorAll(".jml-modal.jml-default-filter-modal, .jml-overlay").forEach((e=>{e.classList.contains("jml-hidden")||e.classList.add("jml-hidden")}))}}},259:(e,t,i)=>{i.d(t,{R:()=>u});var n=i(625),o=i(25),r=i(593),s=i(942),a=function(e,t,i,n){return new(i||(i=Promise))((function(o,r){function s(e){try{l(n.next(e))}catch(e){r(e)}}function a(e){try{l(n.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(s,a)}l((n=n.apply(e,t||[])).next())}))};const l=/[^a-zA-Z]shopify[^a-zA-Z]/,c="jml-cart-products",d="jml-cart-variants";class u{constructor(e){this.cartItems=[],this.apiRoot=e,e.collectedIds?(console.error("Unexpected error"),this.collectedIds=e.collectedIds,this.googleAnalyticsId=e.collectedIds.googleAnalyticsId,this.jarvisPixelId=e.collectedIds.jarvisPixelId):this.collectedIds={}}fetchGoogleAnalyticsId(e,t=0){var i;if(null===(i=window.gaGlobal)||void 0===i?void 0:i.vid)e(window.gaGlobal.vid);else if("function"==typeof window.ga)this.callGoogleAnalyticsGetClientId(e);else{const i=[0,5,20,60][t];void 0!==i?setTimeout((()=>this.fetchGoogleAnalyticsId(e,t+1)),i):e("")}}callGoogleAnalyticsGetClientId(e){let t=!0;window.ga((()=>{var i;if(!t)return;t=!1;const n=window.ga.getAll();e(null===(i=null==n?void 0:n[0])||void 0===i?void 0:i.get("clientId"))})),t&&setTimeout((()=>{t&&(t=!1,e(""))}),100)}readIdData(){var e,t,i,n,o,s,a,l,u,p,h,m,g,f,v,y,_;const b=this.apiRoot.scriptParams;this.entryPoint=r.pv[this.vertical],this.sdkVersion="2024.8.24.23",this.sdkPlatform="web",window.location&&window.location.hostname&&(this.hostname=window.location.hostname.replace("www.","")),window.location&&window.location.pathname&&(this.source=`${this.hostname}${window.location.pathname}`),window.location.search&&(this.source=`${this.source}${window.location.search}`),window.location&&window.location.origin&&(this.origin=`${window.location.origin}`),window.location&&window.location.search?this.fullUrl=`${this.source}${window.location.search}`:window.location&&window.location.href&&!window.location.search&&(this.fullUrl=window.location.href);const w=document.cookie.split(";");for(const e of w)if(e.indexOf(" _ga=")>-1&&!this.googleAnalyticsId){const t=e.split(".");t.shift(),t.shift(),this.googleAnalyticsId=t.join(".")}else if(e.indexOf("_jarvis_cid=")>-1){const t=e.split("_jarvis_cid=");t.shift(),t.length>0&&(this.jarvisClientId=t[0],(0,r.t8)(this.jarvisClientId))}else if(e.indexOf("__kla_id=")>-1){const t=e.split("__kla_id=");if(t.shift(),t.length>0){const e=atob(t[0]),i=JSON.parse(e);i&&i.$exchange_id&&(this.klaviyoExchangeId=i.$exchange_id)}}else if(e.indexOf("hubspotutk=")>-1){const t=e.split("hubspotutk=");t.shift(),t.length>0&&(this.hubspotUserToken=t[0])}else if(e.indexOf("s_ecid=")>-1){const t=e.split("s_ecid=");if(t.shift(),t.length>0){const e=decodeURI(t[0]).split("MCMID|");e.length>1&&(this.adobeVisitorId=e[1])}}if(this.jarvisClientId||(this.jarvisClientId=(0,r.j)(),(0,r.t8)(this.jarvisClientId)),"hospitality"!==this.vertical&&"marine"!==this.vertical||!b.customerId||(this.customerId=b.customerId),"wc"===this.vertical||"ecommerce"===this.vertical&&window.wpmDataLayer){this.pageType=null===(t=null===(e=window.wpmDataLayer)||void 0===e?void 0:e.shop)||void 0===t?void 0:t.page_type,this.productId=Object.keys((null===(i=window.wpmDataLayer)||void 0===i?void 0:i.products)||{})[0]||"";const r=null===(s=null===(o=null===(n=window.wpmDataLayer)||void 0===n?void 0:n.user)||void 0===o?void 0:o.id)||void 0===s?void 0:s.raw;this.personId=r?String(r):""}else if("ecommerce"===this.vertical&&window.woocommerce_params&&!window.wpmDataLayer){const e=document.querySelector("link[rel='alternate'][type='application/json']");if(e){const t=e.href;if(t.indexOf("/product/")>-1){this.pageType="product";const e=t.split("/product/");e&&2==e.length&&(this.productId=e[1])}}}if("ecommerce"===this.vertical&&(window.bcContext||window.BCData)){if(window.bcContext)this.productId=null===(l=null===(a=window.bcContext)||void 0===a?void 0:a.product)||void 0===l?void 0:l.id,this.customerId=null===(p=null===(u=window.bcContext)||void 0===u?void 0:u.customer)||void 0===p?void 0:p.id;else if(!window.bcContext&&window.BCData){const e=document.querySelector('input[name="product_id"]');if(e){this.productId=e.getAttribute("value")||"";const t=document.getElementById("form-action-addToCart");t&&t.addEventListener("click",(()=>{this.sendBigCommerceAddToCartEvent(this.productId)}))}}if(window.aidaptiveOrderId)this.orderId=window.aidaptiveOrderId;else{const e=document.querySelector(".orderConfirmation-section strong");e&&e.innerHTML&&(this.orderId=e.innerHTML)}if(!this.pageType){const e=document.querySelector("[data-page-type]"),t=null==e?void 0:e.getAttribute("data-page-type");t&&(this.pageType=t)}}if("hospitality"===this.vertical&&!this.pageType){const e=[],t=document.getElementsByClassName("jarvis-personalized-recommendations");for(const i of t)e.push(i);if(0===t.length){const t=document.getElementById("jarvis-personalized-recommendations");e.push(t)}for(const t of e){this.pageType=(null===(h=null==t?void 0:t.dataset)||void 0===h?void 0:h.pageType)||"home";break}}if(this.source.indexOf("denisonyachtsales.com")>-1){const e=this.source.split("/");for(let t=e.length-1;t>=0;t--)if(!isNaN(Number(e[t]))){this.productId=e[t];break}if(!this.productId){const e=document.querySelector('input[id="api-id"]');e&&(this.productId=e.getAttribute("value")||"")}}this.os=this.fetchOs(),window.__st&&window.__st.cid&&(this.shopifyId=window.__st.cid),window.Shopify&&window.Shopify.shop&&(this.shopifyDomain=window.Shopify.shop),window.Shopify&&window.Shopify.Checkout&&window.Shopify.Checkout.apiHost&&!window.Shopify.shop&&(this.shopifyDomain=window.Shopify.Checkout.apiHost);let S=null===(g=null===(m=window.ShopifyAnalytics)||void 0===m?void 0:m.meta)||void 0===g?void 0:g.page;if(S&&!S.pageType){const e=null===(f=document.getElementById("shop-js-analytics"))||void 0===f?void 0:f.innerHTML;e&&(S=JSON.parse(e))}if(S&&(S.pageType?this.shopifyPageType=S.pageType:"cart_page"===(null===(v=window.Shopify)||void 0===v?void 0:v.CartType)?this.shopifyPageType="cart":"thank_you"===(null===(_=null===(y=window.Shopify)||void 0===y?void 0:y.Checkout)||void 0===_?void 0:_.page)&&(this.shopifyPageType="thankyou")),window.Shopify&&window.Shopify.checkout&&window.Shopify.checkout.order_id&&(this.shopifyOrderId=window.Shopify.checkout.order_id),window.wpmDataLayer){const e=document.querySelector(".woocommerce-order-overview__order order strong");e&&e.innerHTML&&(this.orderId=e.innerHTML)}if(this.source.indexOf("microminimus.com/checkout/order-received")>-1){const e=this.source.split("/");e.pop();const t=e.pop();t&&!isNaN(parseInt(t))&&(this.orderId=t)}if(window.ShopifyAnalytics&&window.ShopifyAnalytics.meta&&window.ShopifyAnalytics.meta.product){this.shopifyProductId=window.ShopifyAnalytics.meta.product.id,window.ShopifyAnalytics.meta.selectedVariantId&&(this.shopifyVariantId=window.ShopifyAnalytics.meta.selectedVariantId);const e=document.querySelectorAll("button[type=submit]");for(const t of e){const e=t.getAttribute("class")||"";(e.indexOf("add-to-cart")>-1||e.indexOf("addtocart")>-1||e.indexOf("product-form__cart-submit")>-1||e.indexOf("atc-button")>-1)&&t.addEventListener("click",(()=>{this.sendShopifyAddToCartEvent()}))}}const I=b.debugSource||"",x=b.debugShopifyDomain||"",j=b.debugExperimentId||"";I&&(this.source=I,this.hostname=I,this.fullUrl=I),x&&(this.shopifyDomain=x),j&&(this.experimentId=j),this.collectedIds.googleAnalyticsId=this.googleAnalyticsId,this.collectedIds.personId=this.personId,this.collectedIds.shopifyId=this.shopifyId,this.collectedIds.jarvisClientId=this.jarvisClientId,this.collectedIds.hubspotUserToken=this.hubspotUserToken,this.collectedIds.klaviyoExchangeId=this.klaviyoExchangeId,this.collectedIds.customerId=this.customerId,this.collectedIds.adobeVisitorId=this.adobeVisitorId,this.collectedIds.entryPoint=this.entryPoint,this.collectedIds.vertical=this.vertical,this.collectedIds.source=this.source,this.collectedIds.origin=this.origin,this.collectedIds.hostname=this.hostname,this.collectedIds.fullUrl=this.fullUrl,this.collectedIds.pageType=this.pageType,this.collectedIds.productId=this.productId,this.collectedIds.shopifyDomain=this.shopifyDomain,this.collectedIds.shopifyPageType=this.shopifyPageType,this.collectedIds.shopifyProductId=this.shopifyProductId,this.collectedIds.shopifyOrderId=this.shopifyOrderId,this.collectedIds.orderId=this.orderId,this.collectedIds.shopifyVariantId=this.shopifyVariantId,this.collectedIds.sdkVersion=this.sdkVersion,this.collectedIds.sdkPlatform=this.sdkPlatform,this.collectedIds.jarvisConsentOpt=this.jarvisConsentOpt,this.collectedIds.cartProductsAsUrl=localStorage.getItem(c)||"",this.collectedIds.cartVariantsAsUrl=localStorage.getItem(d)||"",this.collectedIds.experimentId=this.experimentId,this.collectedIds.os=this.os}sendIdData(){const e=this.collectedIds;let t=`&source=${e.source}`;const i={source:e.source,type:"jarvis_id_collection"};return e.sdkVersion&&(i.sdk_version=e.sdkVersion),e.sdkPlatform&&(i.sdk_platform=e.sdkPlatform),e.hostname&&(i.hostname=e.hostname),e.fullUrl&&(i.full_url=e.fullUrl),e.pageType&&(i.page_type=e.pageType),e.jarvisPixelId&&(t=`${t}&visit_id=${e.jarvisPixelId}`,i.visit_id=e.jarvisPixelId),e.googleAnalyticsId&&(t=`${t}&ga_id=${e.googleAnalyticsId}`,i.ga_id=e.googleAnalyticsId),e.adobeVisitorId&&(t=`${t}&adobe_mid=${e.adobeVisitorId}`,i.adobe_mid=e.adobeVisitorId),e.jarvisClientId&&(i.jarvis_cid=e.jarvisClientId),e.shopifyId&&(t=`${t}&shopify_cid=${e.shopifyId}`,i.shopify_cid=e.shopifyId),e.shopifyDomain&&(t=`${t}&shopify_domain=${e.shopifyDomain}`,i.shopify_domain=e.shopifyDomain),e.shopifyPageType&&(t=`${t}&shopify_page_type=${encodeURIComponent(e.shopifyPageType)}`,i.shopify_page_type=e.shopifyPageType),e.shopifyProductId&&(t=`${t}&shopify_product_id=${e.shopifyProductId}`,i.shopify_product_id=e.shopifyProductId),e.productId&&(t=`${t}&product_id=${e.productId}`,i.product_id=e.productId),e.shopifyOrderId&&(t=`${t}&shopify_order_id=${e.shopifyOrderId}`,i.shopify_order_id=e.shopifyOrderId),e.orderId&&(t=`${t}&order_id=${e.orderId}`,i.order_id=e.orderId),e.shopifyVariantId&&(t=`${t}&shopify_variant_id=${e.shopifyVariantId}`,i.shopify_variant_id=e.shopifyVariantId),e.customerId&&(t=`${t}&customer_id=${e.customerId}`,i.customer_id=e.customerId),e.hubspotUserToken&&(i.hubspot_user_token=e.hubspotUserToken),e.klaviyoExchangeId&&(i.klaviyo_exchange_id=e.klaviyoExchangeId),e.experimentId&&(i.experiment_id=e.experimentId),e.os&&(i.os=e.os),this.sendDataToBackend("jarvis_id_collection",t,i)}sendCustomData(e){if(!e||!this.apiRoot.collectedIds)return;let t="";const i=this.apiRoot.collectedIds,n={type:"custom_data_collection"};i&&i.jarvisPixelId&&(t=`${t}&visit_id=${i.jarvisPixelId}`,n.visit_id=i.jarvisPixelId),i&&i.shopifyDomain&&(t=`${t}&shopify_domain=${i.shopifyDomain}`,n.shopify_domain=i.shopifyDomain);for(const[i,o]of Object.entries(e))t=`${t}&${i}=${o}`,n[i]=o;return this.sendDataToBackend("custom_data_collection",t,n)}sendShopifyAddToCartEvent(){var e;if(!window.Shopify||!this.apiRoot.collectedIds)return;let t="";const i=this.apiRoot.collectedIds,n={type:"add_to_cart_event"};i.jarvisPixelId&&(t=`${t}&visit_id=${i.jarvisPixelId}`,n.visit_id=i.jarvisPixelId),i.shopifyDomain&&(t=`${t}&shopify_domain=${i.shopifyDomain}`,n.shopify_domain=i.shopifyDomain);const o=null===(e=window.ShopifyAnalytics)||void 0===e?void 0:e.meta;if(null==o?void 0:o.product){const e=o.product.id;if(t=`${t}&shopify_product_id=${e}`,n.shopify_product_id=e,o.selectedVariantId){const e=o.selectedVariantId;t=`${t}&shopify_variant_id=${e}`,n.shopify_variant_id=e}this.addItemToCart(o.product.id,o.selectedVariantId)}return this.sendDataToBackend("add_to_cart_event",t,n)}sendBigCommerceAddToCartEvent(e){if(!window.BCData||!this.apiRoot.collectedIds||!e)return;const t=this.apiRoot.collectedIds,i=`&source=${t.source}&cart_item=${e}`,n=Object.assign({type:"add_to_cart_event",cart_item:e},t);return this.sendDataToBackend("add_to_cart_event",i,n)}sendUserEnquiryFormData(e){return a(this,void 0,void 0,(function*(){const t=this.apiRoot.collectedIds,i=`&source=${t.source}`,n=Object.assign(Object.assign({},t),{type:"user_enquiry_event",email:e.email,form_type:e.formType});return yield this.sendDataToBackend("user_enquiry_event",i,n)}))}sendDataToBackend(e,t,i){return a(this,void 0,void 0,(function*(){try{const n=`${(0,s.Xi)(this.apiRoot)}pixel/record?type=${e}${t}`,o=yield fetch(n,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(i)}),r=yield o.json();this.processVisitIdResponse(r)}catch(t){(0,n.Qm)(`${e} error: ${t.message}`,e)}}))}processVisitIdResponse(e){(null==e?void 0:e.visit_id)?(this.jarvisPixelId!==e.visit_id&&(console.info("visit_id:",e.visit_id," previous:",this.jarvisPixelId),this.jarvisPixelId=e.visit_id),this.apiRoot.collectedIds&&this.jarvisPixelId!==this.apiRoot.collectedIds.jarvisPixelId&&(console.info("collected visit_id:",this.jarvisPixelId," previous:",this.apiRoot.collectedIds.jarvisPixelId),this.apiRoot.collectedIds.jarvisPixelId=this.jarvisPixelId)):console.error(`pixel/record: ${JSON.stringify(e)}`)}isShopify(){const e=this.apiRoot.scriptParams.vertical;if("shopify"===e)return!0;if(e&&"shopify"!==e)return!1;if(window.Shopify)return!0;for(let e=0;ei.product_id===e&&i.variant_id===t)).length>0||(this.cartItems.push({product_id:e,variant_id:t,quantity:1,price:0}),this.cacheCartItems(this.cartItems))}cacheCartItems(e){var t;this.cartItems=e;const i=(null===(t=this.cartItems)||void 0===t?void 0:t.slice(0,5))||[];this.collectedIds.cartProductsAsUrl=this.idListAsUrl("cart_products",i.map((e=>e.product_id))),this.collectedIds.cartVariantsAsUrl=this.idListAsUrl("cart_variants",i.map((e=>e.variant_id))),localStorage.setItem(c,this.collectedIds.cartProductsAsUrl),localStorage.setItem(d,this.collectedIds.cartVariantsAsUrl)}idListAsUrl(e,t){return 0===t.length?"":t.map((e=>encodeURIComponent(e))).join(`&${e}=`)}fetchOs(){const e=window.navigator.userAgent;let t="Unknown OS";return-1!==e.indexOf("Win")?t="Windows":-1!==e.indexOf("Mac")?t="MacOS":-1!==e.indexOf("X11")?t="UNIX":-1!==e.indexOf("Linux")?t="Linux":/Android/.test(e)?t="Android":/iPhone|iPad|iPod/.test(e)&&(t="iOS"),t}fetchCartItems(){return a(this,void 0,void 0,(function*(){let e=[];switch(this.vertical){case"shopify":e=yield this.fetchShopifyCart();break;case"ecommerce":window.BCData?e=yield this.fetchBigCommerceCart():window.wpmDataLayer&&(e=yield this.fetchWooCommerceCart())}this.cacheCartItems(e)}))}fetchShopifyCart(){return a(this,void 0,void 0,(function*(){if(!this.origin)return[];const e=yield(0,n.rd)(`${this.origin}/cart.js`,(e=>{(0,n.Qm)(`getShopifyCart: ${e.message}`,"id_collection")}));if(!(null==e?void 0:e.items))return[];const t=[];for(const i of e.items)i.product_id&&i.variant_id&&i.quantity&&i.final_price&&t.push({product_id:i.product_id,variant_id:i.variant_id,quantity:i.quantity,price:i.final_price});return t}))}fetchBigCommerceCart(){return a(this,void 0,void 0,(function*(){if(!this.origin)return[];const e=yield(0,n.rd)(`${this.origin}/api/storefront/carts`,(e=>{(0,n.Qm)(`getBigCommerceCart: ${e.message}`,"id_collection")}));if(!(null==e?void 0:e.length))return[];const t=[];for(const i of e){if(!i.lineItems||!i.lineItems.physicalItems)continue;const e=i.lineItems.physicalItems;for(const i of e)i.productId&&i.variantId&&i.quantity&&i.listPrice&&t.push({product_id:i.productId,variant_id:i.variantId,quantity:i.quantity,price:i.listPrice})}return t}))}fetchWooCommerceCart(){return a(this,void 0,void 0,(function*(){if(!window.wpmDataLayer.cart)return[];try{const e=[];for(const t in window.wpmDataLayer.cart){const i=window.wpmDataLayer.cart[t];i.id&&i.quantity&&i.price&&e.push({product_id:i.id,variant_id:i.variantId||"",quantity:i.quantity,price:i.price})}return e}catch(e){return(0,n.Qm)(`getWooCommerceCart: ${e.message}`,"id_collection"),[]}}))}collectIds(){return a(this,void 0,void 0,(function*(){const e=[];if(e.push(new Promise((e=>{this.fetchGoogleAnalyticsId((t=>{this.googleAnalyticsId=t,e()}))}))),this.isShopify()){if(this.vertical="shopify",!window.Shopify||!window.ShopifyAnalytics){const t=2e3;e.push((0,o.X)("Shopify",(()=>window.Shopify&&window.ShopifyAnalytics),t))}}else if(this.isWooCommerce())this.vertical="wc",window.wpmDataLayer||e.push((0,o.X)("WooCommerce",(()=>window.wpmDataLayer),1e4));else if(this.isMarine())this.vertical="marine";else if(this.isECommerce()){this.vertical="ecommerce";const t=window.location&&window.location.hostname&&window.location.hostname.indexOf("dell.com")>-1;window.wpmDataLayer&&window.bcContext&&window.BCData||t||e.push((0,o.X)("WooCommerce or Big Commerce",(()=>window.wpmDataLayer||window.bcContext||window.BCData),2e3))}else this.vertical="hospitality";return yield Promise.all(e),this.readIdData(),this.fetchCartItems(),this.collectedIds}))}}},625:(e,t,i)=>{i.d(t,{BL:()=>g,Ds:()=>b,Ev:()=>E,Fz:()=>y,I_:()=>w,JE:()=>j,LF:()=>P,Mq:()=>f,PW:()=>h,Qm:()=>S,UJ:()=>R,Vc:()=>_,Y_:()=>I,Yj:()=>L,em:()=>T,mR:()=>M,q2:()=>x,rd:()=>a.r,tq:()=>c,w3:()=>A,y:()=>k});var n=i(234),o=i(25),r=i(504),s=i(942),a=i(426),l=function(e,t,i,n){return new(i||(i=Promise))((function(o,r){function s(e){try{l(n.next(e))}catch(e){r(e)}}function a(e){try{l(n.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(s,a)}l((n=n.apply(e,t||[])).next())}))},c=c=window.screen.width<=768;const d={AED:{symbol:"AED"},AFN:{symbol:"؋"},ALL:{symbol:"L",decimalSeparator:",",groupSeparator:" "},AMD:{symbol:"֏",codePosition:"after"},ANG:{symbol:"ƒ",decimalSeparator:",",groupSeparator:" "},AOA:{symbol:"Kz",symbolPosition:"after",decimalSeparator:","},ARG:{symbol:"$",decimalSeparator:","},AUD:{symbol:"$",groupSeparator:" "},AWG:{symbol:"ƒ"},AZN:{symbol:"₼",decimalSeparator:","},BAN:{symbol:"KM",decimalSeparator:",",groupSeparator:" "},BBD:{symbol:"$"},BDT:{symbol:"৳"},BGN:{symbol:"лв",decimalSeparator:","},BHD:{symbol:"د.ب",decimalCount:3},BIF:{symbol:"FBu"},BMD:{symbol:"$"},BND:{symbol:"B$"},BOB:{symbol:"Bs",decimalSeparator:","},BRL:{symbol:"R$",decimalSeparator:","},BSD:{symbol:"B$"},BTN:{symbol:"Nu"},BWP:{symbol:"P"},BYN:{symbol:"Br",decimalSeparator:","},BZD:{symbol:"BZ$"},CAD:{symbol:"CA$",groupSeparator:","},CDF:{symbol:"FC"},CHF:{symbol:"CHF",groupSeparator:"'"},CLP:{symbol:"$",decimalSeparator:","},CNY:{symbol:"¥",groupSeparator:","},COP:{symbol:"$",decimalSeparator:","},CRC:{symbol:"₡",decimalSeparator:","},CUP:{symbol:"CUC$",decimalSeparator:","},CVE:{symbol:"CVE",decimalCount:0},CZK:{symbol:"Kč",groupSeparator:" "},DKK:{symbol:"kr",decimalSeparator:",",groupSeparator:" "},DJF:{symbol:"Fdj",decimalCount:0},DOP:{symbol:"RD$"},DZD:{symbol:"دج",decimalSeparator:","},EGP:{symbol:"E£"},ERN:{symbol:"Nkf"},ETB:{symbol:"Br"},EUR:{symbol:"€",decimalSeparator:",",groupSeparator:"."},FKP:{symbol:"FK£"},GBP:{symbol:"£"},GEL:{symbol:"₾",decimalSeparator:","},GHS:{symbol:"GH₵"},GMD:{symbol:"D"},GNF:{symbol:"FG",decimalCount:0},GTQ:{symbol:"Q"},GYD:{symbol:"G$"},HKD:{symbol:"HK$"},HNL:{symbol:"L"},HRK:{symbol:"kn",decimalSeparator:",",groupSeparator:" "},HTG:{symbol:"G"},HUF:{symbol:"ft",decimalSeparator:",",groupSeparator:" "},IDR:{symbol:"Rp",decimalCount:0,decimalSeparator:","},ILS:{symbol:"₪",groupSeparator:","},INR:{symbol:"₹",groupSeparator:","},IRR:{symbol:"﷼"},ISK:{symbol:"Íkr",decimalSeparator:","},IQD:{symbol:"ع.د",decimalCount:3},JMD:{symbol:"J$"},JOD:{symbol:"ينار",decimalCount:3},JPY:{symbol:"¥",decimalCount:0,groupSeparator:","},KES:{symbol:"KSh"},KGS:{symbol:"som",decimalSeparator:","},KHR:{symbol:"៛"},KMF:{symbol:"CF",decimalCount:0},KPW:{symbol:"₩"},KRW:{symbol:"₩",decimalCount:0,groupSeparator:","},KWD:{symbol:"ك",decimalCount:3},KYD:{symbol:"CI$"},KZT:{symbol:"₸",decimalSeparator:","},LAK:{symbol:"₭"},LBP:{symbol:"ل.ل",decimalSeparator:","},LKR:{symbol:"Rs"},LRD:{symbol:"LD$"},LSL:{symbol:"L"},LYD:{symbol:"LD",decimalCount:3},MAD:{symbol:"DH",decimalSeparator:","},MDL:{symbol:"L",decimalSeparator:","},MGA:{symbol:"AR"},MKD:{symbol:"ден"},MMK:{symbol:"K"},MNT:{symbol:"₮",decimalSeparator:","},MOP:{symbol:"MOP$"},MRU:{symbol:"UM"},MUR:{symbol:"₨"},MVR:{symbol:"MRf"},MWK:{symbol:"K"},MXN:{symbol:"$"},MYR:{symbol:"RM",groupSeparator:","},MZN:{symbol:"MT",decimalSeparator:","},NAD:{symbol:"N$",decimalSeparator:","},NIO:{symbol:"C$"},NOK:{symbol:"kr",decimalSeparator:",",groupSeparator:" "},NPR:{symbol:"Rs"},NZD:{symbol:"$",groupSeparator:","},OMR:{symbol:"ر.ع",decimalCount:3},PAB:{symbol:"B/."},PEN:{symbol:"S/.",decimalSeparator:","},PHP:{symbol:"₱",groupSeparator:","},PKR:{symbol:"Rs"},PLN:{symbol:"zł",groupSeparator:" "},PYG:{symbol:"₲",decimalCount:0,decimalSeparator:","},QAR:{symbol:"ر.ق"},RON:{symbol:"lei",groupSeparator:" "},RSD:{symbol:"RSD",decimalSeparator:",",groupSeparator:" "},RUB:{symbol:"₽"},RWF:{symbol:"R₣",decimalCount:0},SAR:{symbol:"SR"},SCR:{symbol:"SR"},SDG:{symbol:"SDG"},SEK:{symbol:"kr",decimalSeparator:",",groupSeparator:" "},SGD:{symbol:"S$",groupSeparator:","},SLL:{symbol:"Le"},SOS:{symbol:"Sh.So.",decimalSeparator:","},SSP:{symbol:"SS£"},SRD:{symbol:"Sr$",decimalSeparator:","},STN:{symbol:"Db"},SYP:{symbol:"£S"},SZL:{symbol:"L"},TJS:{symbol:"TJS"},THB:{symbol:"฿",groupSeparator:","},TMT:{symbol:"m",decimalSeparator:","},TND:{symbol:"د.ت",decimalCount:3,decimalSeparator:","},TRY:{symbol:"₺"},TTD:{symbol:"TT$"},TWD:{symbol:"NT$"},TZS:{symbol:"TSh"},UAH:{symbol:"₴",decimalSeparator:","},UGX:{symbol:"USh",decimalCount:0},USD:{symbol:"$"},UYU:{symbol:"$U",decimalSeparator:","},UZS:{symbol:"som",decimalSeparator:","},VED:{symbol:"Bs.",decimalSeparator:","},VND:{symbol:"₫",decimalCount:0,decimalSeparator:","},XAF:{symbol:"FCFA",decimalCount:0},XCD:{symbol:"$"},XOF:{symbol:"CFA",decimalCount:0},YER:{symbol:"﷼"},ZAR:{symbol:"R",decimalSeparator:","}},u={".":",",",":"."},p={"6 mo":1,"6-12 mo":2,"12 mo":3,"12-18 mo":4,"18 mo":5,"18-24 mo":6,"2t":7,"3t":8,"4t":9,10:10,"one size":11,xxs:12,xs:13,s:14,m:15,l:16,xl:17,xxl:18,xxxl:19};class h{constructor(e){var t,i,n,o,r,s;if(this.currencySettings={},this.apiRoot=e,null===(t=window.JarvisMLOptions)||void 0===t?void 0:t.currencies)for(const[e,t]of Object.entries(window.JarvisMLOptions.currencies)){const i=d[e]||{symbol:e};Object.assign(i,t),d[e]=i}this.setCurrency((null===(n=null===(i=window.Shopify)||void 0===i?void 0:i.currency)||void 0===n?void 0:n.active)||(null===(s=null===(r=null===(o=window.Tapcart)||void 0===o?void 0:o.variables)||void 0===r?void 0:r.cart)||void 0===s?void 0:s.currency)||"USD")}processEcommerceVariants(e){var t;if("ecommerce"!==this.apiRoot.collectedIds.vertical)return null;const i={};for(const n of e){if(!n||!n.options||(null===(t=n.options)||void 0===t?void 0:t.length)<=0)return null;const e=Object.assign({},{availability:n.availability,variant_id:n.id,product_id:n.product_id,sku:n.sku},...n.options),o=e.key.toLowerCase();i[o]?i[o].push(e):i[o]=[e]}for(const e in i)i[e].length>1&&i[e].sort(((e,t)=>p[e.value.toLowerCase()]&&p[t.value.toLowerCase()]?p[e.value.toLowerCase()]-p[t.value.toLowerCase()]:"number"==typeof e.value&&"number"==typeof t.value?e.value-t.value:String(e.value).localeCompare(t.value)));return i}setEcommerceRatings(){return l(this,void 0,void 0,(function*(){"ecommerce"===this.apiRoot.collectedIds.vertical&&(yield(0,o.X)("yotpoWidgetsContainer object availability",(()=>void 0!==window.yotpoWidgetsContainer),5e3))&&window.yotpoWidgetsContainer.initWidgets()}))}handleMinimumStay(e,t){var i;const n=this.apiRoot.searchFilters;if((null===(i=this.apiRoot.collectedIds.source)||void 0===i?void 0:i.indexOf("summitcove.com/rentals"))<0||!(null==n?void 0:n.arrival_date)||!(null==n?void 0:n.departure_date))return e;const o=null==n?void 0:n.arrival_date,r=null==n?void 0:n.departure_date;if(!o||!r)return e;const s=new Date(o),a=new Date(r);if(isNaN(s.getTime())||isNaN(a.getTime()))return e;const l=(a.getTime()-s.getTime())/864e5,c=t.additional_fields.find((e=>"min_los"===e.key));if(!c)return e;const d=c.value.replace(/'/g,'"'),u=JSON.parse(d).find((e=>e.date===o));return u?(u.min_los>l&&(e=(e=e.replaceAll("%min_los_message%",`Minimum length of stay: ${u.min_los}`)).replaceAll("%price_display%","none")),e):e}processTemplateVariables(e){try{if("###test-exception###"===e.values.price_text_strong)throw new Error("test-exception");return this.processTemplating(e)}catch(t){return console.error(`Issue templating ${e.values.title}: ${t.message}`),""}}processTemplating(e){var t,i,n,o,s,a;const l=e.hasLocalHTMLTemplate;let c=e.listItemSection;const d=e.htmlTemplate,u=e.values,p=e.favBtnContent,h=e.currentIndex||0,m=this.apiRoot.getTrackingBaseUrl();let g=l?c:d.itemLinkSection;g=g.replaceAll("%landing_page_click_tracker_url%",`${m}${u.landing_page_click_tracker_url}`),g=g.replaceAll("%product_title%",u.title),g=g.replaceAll("%landing_page_url%",`${u.landing_page_url}`),g=g.replaceAll("%city%",u.city||""),g=g.replaceAll("%arrival_date%",u.arrival_date||""),g=g.replaceAll("%departure_date%",u.departure_date||""),p&&(g=g.replaceAll("%fav_btn_content%",p)),u.property_id&&(g=g.replaceAll("%property_id%",u.property_id)),u.unit_id&&(g=g.replaceAll("%unit_id%",u.unit_id)),l?g=g.replaceAll("%product_image_url%",`src="${encodeURI(u.product_image_url)}"`):(g=g.replaceAll("%product_image_url%",encodeURI(u.product_image_url)),c=c.replaceAll("%product_image_url%",encodeURI(u.product_image_url))),u.main_image&&u.main_image.url&&(g=g.replaceAll("%main_image_url%",encodeURI(u.main_image.url))),g=g.replaceAll("%secondary_image_url%",encodeURI(u.secondary_image_url)||""),g=g.replaceAll("%desc%",u.desc||""),g=g.replaceAll("%long_name%",u.long_name||""),g=u.availability?g.replaceAll("%hideUnavailableOverlay%","hidden"):g.replaceAll("%hideUnavailableOverlay%","");let f=l?g:d.productInfoSection;if(f=f.replaceAll("%landing_page_click_tracker_url%",`${m}${u.landing_page_click_tracker_url}`),f=f.replaceAll("%price_text_strong%",u.price_text_strong?u.price_text_strong:""),f=f.replaceAll("%price_text_small%",u.price_text_small?u.price_text_small:""),f=f.replaceAll("%product_title%",u.title),f=f.replaceAll("%product_description%",u.description||""),f=f.replaceAll("%desc%",u.desc||""),f=f.replaceAll("%compare_at_price%",u.compare_at_price?"$"+u.compare_at_price:""),f=f.replaceAll("%arrival_date%",u.arrival_date||""),f=f.replaceAll("%departure_date%",u.departure_date||""),u.property_id&&(f=f.replaceAll("%property_id%",u.property_id)),u.review_data){if(d&&d.ratingsSection){let e=d.ratingsSection;const t=(0,r.Y)(!0,u);e=e.replaceAll("%ratings%",t||""),f=f.replaceAll("%ratings_section%",e||"")}const e=5,t=u.review_data.average_rating||0,i=u.review_data.number_of_votes||0,n=t/e*100||0;f=f.replaceAll("%num_votes%",String(i)),f=f.replaceAll("%ratings_percentage%",String(n))}else f=f.replaceAll("%ratings_section%",""),f=f.replaceAll("%num_votes%",""),f=f.replaceAll("%ratings_percentage%","");if(f=f.replaceAll("%ameneties_1%",u.ameneties_1),f=f.replaceAll("%ameneties_2%",u.ameneties_2),f=f.replaceAll("%ameneties_3%",u.ameneties_3),f=f.replaceAll("%city%",u.city||""),f=f.replaceAll("%state%",u.state||""),u.location){const e=u.location;let t="";e.city&&(t=`${e.city}`),e.state&&(t=`${t}, ${e.state}`),e.country&&(t=`${t}, ${e.country}`),f=f.replaceAll("%city_state_country%",t)}f=f.replaceAll("%address%",u.address||""),u.bedrooms?f=f.replaceAll("%bedrooms%",String(u.bedrooms)):u.hospitality_listing_detail&&u.hospitality_listing_detail.bedrooms?f=f.replaceAll("%bedrooms%",String(u.hospitality_listing_detail.bedrooms)):(f=f.replaceAll("%bedrooms%","-"),f=f.replaceAll("bedrooms","studio")),f=u.bathrooms?f.replaceAll("%bathrooms%",String(u.bathrooms)):u.hospitality_listing_detail&&u.hospitality_listing_detail.bathrooms?f.replaceAll("%bathrooms%",String(u.hospitality_listing_detail.bathrooms)):f.replaceAll("%bathrooms%","-");const v=u.currency||u.currency_code;if(v?(this.setCurrency(v),f=f.replaceAll("%currency%",this.getCurrencySymbol(v))):f=f.replaceAll("%currency%",""),f=(null===(t=u.variants)||void 0===t?void 0:t.length)>1?this.addPriceRange(f,u):this.addPrice(f,u),f=this.handleMinimumStay(f,u),f=f.replaceAll("%price_display%","block"),f=f.replaceAll("%min_los_message%",""),f=f.replaceAll("%master_bedroom%",(null===(i=u.available_amenities)||void 0===i?void 0:i.masterBedrooms)||""),f=f.replaceAll("%distance_to_beach%",(null===(n=u.available_amenities)||void 0===n?void 0:n.distanceToBeach)||""),f=f.replaceAll("%dog_friendly%","true"==(null===(o=u.available_amenities)||void 0===o?void 0:o["Dog Friendly"])?"inline-block":"none"),u.hospitality_listing_detail&&u.hospitality_listing_detail.amenities&&u.hospitality_listing_detail.amenities.length){const e=e=>Number(null==e?void 0:e.int_value)>0?"":"hidden";for(const t of u.hospitality_listing_detail.amenities)"Hot Tub"===t.key&&(f=f.replaceAll("%hot_tub_icon%",e(t.value))),"Pets Allowed"===t.key&&(f=f.replaceAll("%pet_friendly_icon%",e(t.value))),"Any Pool Type"===t.key&&(f=f.replaceAll("%pool_icon%",e(t.value))),"Elevator"===t.key&&(f=f.replaceAll("%elevator_icon%",e(t.value)))}if(u.hospitality_listing_detail&&u.hospitality_listing_detail.additional_fields&&u.hospitality_listing_detail.additional_fields.length){let e="hidden",t="";for(const i of u.hospitality_listing_detail.additional_fields)"checkin"===i.key&&i.value&&(f=f.replaceAll("%checkin_day%",i.value),e=""),"location"===i.key&&i.value&&(t=i.value);f=f.replaceAll("%location%",t),f=f.replaceAll("%checkin_visibility%",e)}let y,_,b,w="";!l&&d&&d.carouselItemSection&&d.carouselItemFallbackImage&&(y=d.carouselBodySection,_=d.carouselItemSection,b=d.carouselItemFallbackImage,b=b.replaceAll("%product_title%",u.title));let S,I,x,j,C,A,k="",R=0,L="hidden";if(u.additional_fields&&u.additional_fields.length||u.metafields&&u.metafields.length){const e=u.additional_fields||u.metafields;for(const t of e){if("deal_listing_url"===t.key&&t.value){const e=new URL(u.landing_page_click_tracker_url,m),i=this.convertTrackingUrl(t.value,e);g=g.replaceAll("%deal_listing_url%",i),f=f.replaceAll("%deal_listing_url%",i)}if("date_ranges"===t.key&&t.value){const e=this.setDateRange(t.value);e?(k="hidden",j=e.date_range,C=e.total_nights,f=f.replaceAll("%date_range_visibility%","")):f=f.replaceAll("%date_range_visibility%","hidden")}if(g=g.replaceAll(`%${t.key}%`,t.value||""),"price"!==t.key||t.value&&"0"!==t.value||(f=f.replaceAll("From $%price% / Night","Inquire Now")),"price"===t.key&&parseInt(t.value)>0&&(S=parseInt(t.value)),"sleeps"===t.key&&parseInt(t.value)>0&&(I=parseInt(t.value)),"price_currency_code"!==t.key&&"currency_code"!==t.key||!t.value||(f=f.replaceAll(`%${t.key}%`,`${this.getCurrencySymbol(t.value)}`)),"square_feet"!==t.key||t.value&&"0"!==t.value||(f=f.replaceAll("%square_feet%","N/A")),"hide_price_from_ui"===t.key&&"true"===t.value&&(k="hidden"),"half_baths"===t.key&&parseInt(t.value)>0&&(R+=parseInt(t.value),L=""),"full_baths"===t.key&&parseInt(t.value)>0&&(R+=parseInt(t.value)),"extra_amenities"===t.key&&t.value&&t.value.length){let e;e=Array.isArray(t.value)?t.value:JSON.parse(t.value);const i=e.indexOf("Corner Unit")>-1?"Corner Unit":"";g=g.replaceAll("%corner_unit%",i),f=f.replaceAll("%corner_unit%",i);const n=e.indexOf("Premium Rating")>-1?"High Demand Premium Unit":"",o=n?"":"hidden";g=g.replaceAll("%premium_rating%",n),f=f.replaceAll("%premium_rating%",n),f=f.replaceAll("%premium_rating_visibility%",o);const r=e.indexOf("Hot Deal")>-1?"Hot Deal":"",s=r?"":"hidden";f=f.replaceAll("%hot_deal%",r),f=f.replaceAll("%hot_deal_visibility%",s)}if(f=f.replaceAll(`%${t.key}%`,t.value||""),g=g.replaceAll(`%${t.key}%`,t.value||""),b&&(b=b.replaceAll(`%${t.key}%`,t.value)),("slider_imgs_urls"===t.key||"resized_images"===t.key||"additional_images"===t.key)&&_&&t.value&&t.value.length){let e;"resized_images"===t.key&&t.value.length>=5&&(t.value=t.value.slice(0,5)),e=Array.isArray(t.value)?t.value:JSON.parse(t.value);const i=e.length;e.forEach(((e,t)=>{let n=(null==_?void 0:_.replaceAll("%item_index%",String(t)))||"";n=n.replaceAll("%aria_index%",String(t+1)),n=n.replaceAll("%aria_total%",String(i)),n=`${n.replaceAll("'",'"')}`;const o=("string"==typeof e?e:e.url)||"";n=n.replaceAll("%slider_img_url%",o),n=n.replaceAll("%product_title%",u.title),w+=n}))}if("resized_images"===t.key&&t.value&&t.value.length){let e;e=Array.isArray(t.value)?t.value:JSON.parse(t.value),e&&e.length&&(g=g.replaceAll("%resized_image_url%",e[0]),f=f.replaceAll("%resized_image_url%",e[0]))}if("custom_fields"===t.key)if(t.value&&t.value.length){let e;e=Array.isArray(t.value)?t.value:JSON.parse(t.value),e&&e.length&&(g=g.replaceAll("%custom_field%",e[0]),f=f.replaceAll("%custom_field%",e[0]),f=f.replaceAll("%custom_field_visibility%","visible"))}else g=g.replaceAll("%custom_field%",""),f=f.replaceAll("%custom_field%",""),f=f.replaceAll("%custom_field_visibility%","hidden")}""===w&&b?(b=b.replaceAll("%product_image_url%",encodeURI(u.product_image_url)),g=g.replaceAll("%carousel_content%",b)):""!==w&&y&&(y=y.replaceAll("%carousel_items%",w),y=y.replaceAll("%carousel_previous_btn%",d.carouselItemPrevButton),y=y.replaceAll("%carousel_next_btn%",d.carouselItemNextButton),g=g.replaceAll("%carousel_content%",y))}f=f.replaceAll("%custom_field_visibility%","hidden"),A=S&&C?String(S*C):"",f=f.replaceAll("%date_range%",j||""),f=f.replaceAll("%total_price%",A),S&&I&&(x=Math.round(S/I)),f=f.replaceAll("%price_per_person%",String(x)||""),f=f.replaceAll("%price_visibility%",k),f=f.replaceAll("%half_bath_visibility%",L),f=f.replaceAll("%total_bathrooms%",String(R));let M="",P="hidden",T="",E="";if(!l&&d&&d.productVariantItems&&d.productVariantSection||d.addToCartBtn){if(u.variants&&u.variants.length){T=d.productVariantSection;const e=this.processEcommerceVariants(u.variants);if(e&&(null===(s=e.size)||void 0===s?void 0:s.length)>0)e.size.forEach((e=>{const t=e.availability?"":"unavailable";M+=d.productVariantItems.replaceAll("%variant_value%",e.value||"").replaceAll("%product_id%",e.product_id||"").replaceAll("%variant_id%",e.variant_id||"").replaceAll("%variant_sku%",e.sku||"").replaceAll("%variant_availability%",t||"")})),P="";else{const e=null===(a=u.variants)||void 0===a?void 0:a[0],t=(null==e?void 0:e.sku)||u.sku||"",i=(null==e?void 0:e.product_id)||u.product_id||"";E=d.addToCartBtn||"",E=E.replaceAll("%variant_sku%",t).replaceAll("%product_id%",i)}}const e=M||E;T=T.replaceAll("%product_btns%",e||""),T=T.replaceAll("%variant_visibility%",P||""),f=f.replaceAll("%product_variant_section%",T||"")}let $="";if(u.impression_tracker_url&&($=`Jarvis ML pixel recommendations`),c=l?f+$:c.replace("%product_article_content%",g+f+$),c=c.replaceAll("%latitude%",u.latitude||""),c=c.replaceAll("%longitude%",u.longitude||""),c=c.replaceAll("%product_title%",u.title||""),c=c.replaceAll("%property_id%",u.property_id||"0"),c=c.replaceAll("%serial_no%",String(h)),c=c.replaceAll("%landing_page_click_tracker_url%",`${m}${u.landing_page_click_tracker_url}`),c=c.replaceAll("%arrival_date%",u.arrival_date||""),c=c.replaceAll("%departure_date%",u.departure_date||""),u.entity_id){const e=u.entity_id.split(":").pop();c=c.replaceAll("%product_id%",e||"")}if(u.product_id){const e=null==u?void 0:u.product_id.split("/").pop();c=c.replaceAll("%shopify_product_id%",e||"")}return c}setDateRange(e){if(!e||"nan"===e)return null;const t=e.split(/,(?=\[)/)[0].replace(/-/g,"/").replace(/[[\]\s']+/g,"").split(","),i=new Date(t[0]),n=i.toLocaleString("en-us",{day:"numeric"}),o=i.toLocaleString("en-us",{month:"short"}),r=new Date(t[1]);return{date_range:`${n} ${o} - ${r.toLocaleString("en-us",{day:"numeric"})} ${r.toLocaleString("en-us",{month:"short"})}`,total_nights:r.getDate()-i.getDate()}}addPrice(e,t){const i=(0,n.R)(t.price),o=(0,n.R)(t.sale_price);let r="",s="";return i&&o&&i>o?(e=(e=e.replaceAll("%formatted_price%",this.formatPrice(i))).replaceAll("%sale_price%",this.formatPrice(o)),r="hidden"):i&&!o?(e=(e=e.replaceAll("%formatted_price%",this.formatPrice(i))).replaceAll("%sale_price%",""),s="hidden"):(r="hidden",s="hidden",e=e.replaceAll("%formatted_price%","")),(e=e.replaceAll("%original_price_visibility%",r)).replaceAll("%sale_price_visibility%",s)}calculateMinMaxPriceFromVariants(e){const t=[],i=[];return e.forEach((e=>{e.price&&t.push((0,n.R)(e.price)),e.sale_price&&i.push((0,n.R)(e.sale_price))})),{minOriginalPrice:t.length>1?Math.min(...t):null,maxOriginalPrice:t.length>1?Math.max(...t):null,minSalePrice:i.length>1?Math.min(...i):null,maxSalePrice:i.length>1?Math.max(...i):null}}addPriceRange(e,t){const i=this.calculateMinMaxPriceFromVariants(t.variants);if(!i.maxOriginalPrice||!i.minOriginalPrice||i.maxOriginalPrice===i.minOriginalPrice)return this.addPrice(e,t);const n=`${this.formatPrice(i.minOriginalPrice)} - ${this.formatPrice(i.maxOriginalPrice)}`;let o;i.minSalePrice&&i.maxSalePrice&&(o=`${this.formatPrice(i.minSalePrice)} - ${this.formatPrice(i.maxSalePrice)}`);let r="",s="";return n&&o?(e=(e=e.replaceAll("%formatted_price%",n)).replaceAll("%sale_price%",o),r="hidden"):n&&!o?(e=(e=e.replaceAll("%formatted_price%",n)).replaceAll("%sale_price%",""),s="hidden"):(r="hidden",s="hidden",e=e.replaceAll("%formatted_price%","")),(e=e.replaceAll("%original_price_visibility%",r)).replaceAll("%sale_price_visibility%",s)}populateGrandTotals(e){for(const t in e){const i=e[t];if(i){const e=i.total,n=i.discount,o=Boolean(parseInt(n));if(e&&o){const i=document.getElementById(`jml-original-price-${t}`);if(i){const t=i.innerHTML,o=parseInt(e)+parseInt(n);i.innerHTML=t.replaceAll("%original_price%",String(o)),i.style.visibility="visible"}}const r=o?document.getElementById(`jml-discounted-price-${t}`):document.getElementById(`jml-grand-total-${t}`);if(r){const t=r.innerHTML;r.innerHTML=t.replaceAll(o?"%discounted_price%":"%grand_total%",e),r.style.visibility="visible"}if(!o){const e=document.getElementById(`jml-discounted-price-${t}`);e&&(e.style.display="none")}}}}convertTrackingUrl(e,t){const i=t.searchParams;return i.set("destination_url",e),t.search=i.toString(),t.toString()}setCurrency(e){e=e||"USD",this.currencySettings.code=e;const t=d[e]||{symbol:e};this.currencySettings.decimalCount=void 0!==t.decimalCount?t.decimalCount:2,this.currencySettings.decimalSeparator=t.decimalSeparator||".",this.currencySettings.groupSeparator=void 0!==t.groupSeparator?t.groupSeparator:u[this.currencySettings.decimalSeparator]||",",this.currencySettings.groupSize=void 0!==t.groupSize?t.groupSize:3,this.currencySettings.codePosition=t.codePosition||"before",this.currencySettings.symbolPosition=t.symbolPosition||"before",this.currencySettings.showZeroCents=void 0!==t.showZeroCents&&t.showZeroCents}formatPrice(e){return function(e,t){var i;if("number"!=typeof e||isNaN(e))return"";let n=e.toFixed(t.decimalCount);if(!t.showZeroCents&&t.decimalCount>0){const e=t.decimalCount+1;n.slice(-e)===m.slice(0,e)&&(n=n.slice(0,-e))}const o=n.lastIndexOf(".");if(o>-1&&"."!==t.decimalSeparator&&(n=n.replace(".",t.decimalSeparator)),t.groupSize&&t.groupSeparator){const e=o>-1?o:n.length,i=e%t.groupSize||t.groupSize;let r=n.substring(0,i);for(let o=i;o{i&&clearTimeout(i),i=setTimeout(e,t,n)}}function w(e){let t="";for(const i in e){t+=i+" {\n";for(const n in e[i])if("object"==typeof e[i][n]){t+="\t"+n+" {\n";for(const o in e[i][n])t+="\t\t"+o+": "+e[i][n][o]+";\n";t+=" \t}\n"}else t+="\t"+n+": "+e[i][n]+";\n";t+="}\n"}const i=document.createElement("style");return i.innerHTML=t,i}function S(e,t="personalized_recommendations"){console.error(e);const i=`${(0,s.Xi)()}status_check`,n={domain_name:window.location&&window.location.href||"jarvisml.com",feature_type:t,message:e};fetch(i,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)})}function I(){var e;const t=document.getElementsByTagName("head"),i=t[0].getElementsByTagName("link");let n=!1;for(let t=0;t')}function x(e){const t=e;for(let e=t.length-1;e>0;e--){const i=Math.floor(Math.random()*(e+1));[t[e],t[i]]=[t[i],t[e]]}return t}function j(e,t){var i;if("ecommerce"===t||"shopify"===t)for(const t of e)t.entity_id=t.id||"",t.title=t.name||"",t.landing_page_url=t.url,t.product_image_url=(null===(i=t.featured_image)||void 0===i?void 0:i.url)||"",t.secondary_image_url=C(t.images)}function C(e){if(!e||e.length<=1)return"";for(let t=0;t "),o=parseInt(i.doc_count,10);t.push({filter_name:e,filter_value:n,product_count:o})}return t}function L(e){e&&"function"==typeof window.gtag&&window.gtag("set","user_properties",{aidaptive_cohort:e})}function M(e){e&&"function"==typeof window.gtag&&window.gtag("set","user_properties",{aidaptive_payload:e})}function P(e){const t=[];for(const i in e)e[i].forEach((e=>{t.push(`${i} -> ${e}`)}));return t}function T(){window&&window.amplify&&(window.amplify.subscribe("upsellClickSuccess",(function(e){var t;const i=document.querySelector("item-stack"),n=i&&i.shadowRoot&&i.shadowRoot.querySelectorAll("item-detail");if(n)for(const i of n){const n=i&&i.shadowRoot&&i.shadowRoot.querySelector("item-component"),o=null===(t=null==n?void 0:n.shadowRoot)||void 0===t?void 0:t.querySelector(".jarvis-personalized-recommendations"),r=null==o?void 0:o.querySelector(`#jarvis-atc-${e.itemId}`);r&&(r.style.visibility="hidden")}})),window.amplify.subscribe("upsellClickRemoveSuccess",(function(e){var t;const i=document.querySelector("item-stack"),n=i&&i.shadowRoot&&i.shadowRoot.querySelectorAll("item-detail");if(n)for(const i of n){const n=i&&i.shadowRoot&&i.shadowRoot.querySelector("item-component"),o=null===(t=null==n?void 0:n.shadowRoot)||void 0===t?void 0:t.querySelector(".jarvis-personalized-recommendations"),r=null==o?void 0:o.querySelector(`#jarvis-atc-${e.itemId}`),s=null==o?void 0:o.querySelector(`#jarvis-rfc-${e.itemId}`);s&&(s.style.visibility="hidden"),r&&(r.style.visibility="visible")}})))}function E(){return l(this,void 0,void 0,(function*(){var e,t,i;const n=document.querySelector("item-stack"),o=n&&n.shadowRoot&&n.shadowRoot.querySelectorAll("item-detail");if(o)for(const n of o){const o=n&&n.shadowRoot&&n.shadowRoot.querySelector("item-component"),r=null===(e=null==o?void 0:o.shadowRoot)||void 0===e?void 0:e.querySelector(".jarvis-personalized-recommendations"),s=null==r?void 0:r.querySelector(".jarvis-cart-btn");let a,l;s.dataset.itemId=n.id.replaceAll("-itemDetail",""),s.dataset.orderCode=r.dataset.product,s.id=`jarvis-atc-${s.dataset.itemId}`;try{const e=yield fetch("https://www.dell.com/purchase/api/cart-bridge-context/v1/activecart/en-us/work"),n=yield e.json();if(n.items&&n.items.length){const e=null===(i=null===(t=n.items.find((function(e){return e.id===s.dataset.itemId})).warrantyAndSupport)||void 0===t?void 0:t.modules)||void 0===i?void 0:i.find((e=>"30"===e.moduleId));a=e.duration,l=e.optionId}s.onclick=()=>{const e={duration:a,itemId:s.dataset.itemId,orderCode:s.dataset.orderCode,optionId:s.dataset.optionId,metrics:{btnname:"addtocartupsell",productid:s.dataset.orderCode},moduleId:s.dataset.moduleId};window.amplify.publish("upsellClickAdd",e)};const o=encodeURIComponent(`{"${s.dataset.itemId}":{"modulesInfo":[{"moduleId":30,"optionId":"${l}","duration":"${a}"}],"aiAdaptiveModulesInfo":[{"moduleId":30,"optionId":"${s.dataset.optionId}","duration":"${a}"}],"orderCode":"${s.dataset.orderCode}"},"selector":{}}`),c=yield fetch(`https://www.dell.com/csbapi/configurator/configupsell/US/en/bsd/04/?shadowDom=true&isAiAdaptive=true&item=${o}`),d=yield c.json();if(d.configUpsellModels&&d.configUpsellModels.length){const e=null==r?void 0:r.querySelector("#jarvis-price"),t=e.innerHTML;e.innerHTML=t.replaceAll("%price%",d.configUpsellModels[0].deltaSalePrice),e.style.visibility="visible"}}catch(e){console.error("Error loading recommendations")}}}))}},629:(e,t,i)=>{i.d(t,{Z:()=>o});var n=function(e,t,i,n){return new(i||(i=Promise))((function(o,r){function s(e){try{l(n.next(e))}catch(e){r(e)}}function a(e){try{l(n.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(s,a)}l((n=n.apply(e,t||[])).next())}))};class o{constructor(e,t){this.apiKey=e,this.properties=t}loadMapsApi(){return n(this,void 0,void 0,(function*(){return new Promise(((e,t)=>{const i=document.createElement("script");i.src=`https://maps.googleapis.com/maps/api/js?key=${this.apiKey}&callback=initMap`,i.async=!0,i.defer=!0,i.onerror=t,window.initMap=e,document.head.appendChild(i)}))}))}initMap(){return n(this,arguments,void 0,(function*(e=!1){const t=document.getElementById("jarvis-default-map");if(!t)return;if(!e&&"object"==typeof google&&"object"==typeof google.maps)return;"undefined"==typeof google&&(yield this.loadMapsApi());const{Map:i}=yield google.maps.importLibrary("maps"),{AdvancedMarkerElement:n}=yield google.maps.importLibrary("marker"),{LatLng:o}=yield google.maps.importLibrary("core"),r={zoom:11,mapId:"4504f8b37365c3d0"},s=this.calculateCenter(this.properties);s&&(r.center=new o(s.lat,s.long));const a=new i(t,r);this.handleMapHeightDynamically();for(const e of this.properties){const t=new n({map:a,content:this.buildContent(e),position:new o(e.latitude,e.longitude),title:e.title});t.addListener("click",(()=>{this.toggleHighlight(t)}))}}))}calculateCenter(e){if(0===e.length)return null;let t=0,i=0;for(let n=0;n{const e=document.querySelector("#jarvis-default-map"),t=e.getBoundingClientRect().top;e.style.height=`calc(100vh - ${t}px)`})).observe(e)}toggleHighlight(e){const t=e.content;t.classList.contains("highlight")?(t.classList.remove("highlight"),e.zIndex=null):(t.classList.add("highlight"),e.zIndex=1)}buildContent(e){const t=document.createElement("div");return t.classList.add("jml-map-property"),t.innerHTML=`\n
\n \n \n \n
\n
\n
${e.title}
\n
${e.price} ${e.currency}
\n
${e.city}
\n
\n
\n \n bedroom\n ${e.bedrooms}\n
\n
\n \n bathroom\n ${e.bathrooms}\n
\n
\n
\n `,t}}},155:(e,t,i)=>{i.d(t,{tF:()=>p,Ky:()=>u});var n=i(625);function o(e){if("function"==typeof window.gtag){const t={"midgettrealty.com":"G-89FKF67FJL","exceptionalstays.com":"G-EBTPV04E8K","elliottbeachrentals.com":"G-10K69309GH"};window.gtag("config",t[e.collectedIds.hostname]),window.gtag("event","aidaptive_event",{product_id:e.productId,service:e.service,event_type:e.eventType})}}var r=i(25);function s(e,t){if(e&&t){if(t.targetClass&&t.settings||console.error("Target class not specified in the template"),e.url){const t=document.createElement("script");t.setAttribute("src",e.url),document.body.appendChild(t)}"slick"===e.name&&e.initializePerBlock?function(e){if(!window.jQuery)return;const t=()=>{setTimeout((function(){window.jQuery(e.targetClass).not(".slick-initialized").slick(e.settings)}),e.waitTime||2e3)};window.jQuery.isReady?t():window.jQuery((function(){t()}))}(t):"swiper"===e.name&&e.initializePerBlock?function(e){window.Swiper&&new window.Swiper(e.targetClass,e.settings)}(t):"owl"===e.name&&e.initializePerBlock?function(e){var t,i,n,o;t=this,i=void 0,o=function*(){if(!window.jQuery)return;if(!(yield(0,r.X)("owl-carousel",(()=>window.jQuery&&window.jQuery(e.targetClass)&&window.jQuery(e.targetClass).owlCarousel),e.waitTime||2e3)))return;const t=()=>{window.jQuery(e.targetClass).owlCarousel(e.settings)};window.jQuery.isReady?t():window.jQuery((function(){t()}))},new((n=void 0)||(n=Promise))((function(e,r){function s(e){try{l(o.next(e))}catch(e){r(e)}}function a(e){try{l(o.throw(e))}catch(e){r(e)}}function l(t){var i;t.done?e(t.value):(i=t.value,i instanceof n?i:new n((function(e){e(i)}))).then(s,a)}l((o=o.apply(t,i||[])).next())}))}(t):"flexslider"===e.name&&e.initializePerBlock&&function(e){if(!window.jQuery)return;const t=()=>{setTimeout((function(){window.jQuery(e.targetClass).flexslider(e.settings)}),e.waitTime||2e3)};window.jQuery.isReady?t():window.jQuery((function(){t()}))}(t)}}var a=i(660);function l(e){const t=e.baseUrl,i=e.collectedIds,n=e.pageType||i.pageType,o=e.locationFilter,r=e.recommendationsCount,s=e.product;let l;return"marine"===i.vertical||"ecommerce"===i.vertical||i.source.indexOf("siebert-realty.com")>-1?(l=`https://miner.aidaptive.com/api/v2/aidaptive_serving/recommend?host_name=${i.hostname}`,l=(0,a.a3)(l,"full_url",i.fullUrl)):l=`${t}dynamic_experience/${i.entryPoint}?source=${encodeURIComponent(i.source)}`,l=(0,a.a3)(l,"recos_count",r),l=(0,a.a3)(l,"ga_id",i.googleAnalyticsId),"dell.com"!==i.hostname&&(l=(0,a.a3)(l,"product_id",i.productId||s)),l=(0,a.a3)(l,"person_id",i.personId),l=(0,a.a3)(l,"customer_id",i.customerId),l=(0,a.a3)(l,"shopify_cid",i.shopifyId),l=(0,a.a3)(l,"shopify_domain",i.shopifyDomain),l=(0,a.a3)(l,"shopify_page_type",i.shopifyPageType),l=(0,a.a3)(l,"shopify_product_id",i.shopifyProductId),l=(0,a.a3)(l,"jarvis_cid",i.jarvisClientId),l=(0,a.a3)(l,"visit_id",i.jarvisPixelId),l="dell.com"===i.hostname?(0,a.a3)(l,"page_type","product"):(0,a.a3)(l,"page_type",n),o&&(l=(0,a.a3)(l,"location",encodeURIComponent(o))),l=(0,a.a3)(l,"cart_products",i.cartProductsAsUrl),l=(0,a.a3)(l,"cart_variants",i.cartVariantsAsUrl),l=(0,a.a3)(l,"consent",i.jarvisConsentOpt),l=(0,a.a3)(l,"experiment_id",i.experimentId),l}i(593),i(426);const c=["jarvis-personalized-recommendations","aidaptive-recommendations"];function d(e){var t;const i=[];for(const e of c){const t=document.getElementsByClassName(e);for(const e of t)i.push(e);if(0===t.length){const t=document.getElementById(e);t&&i.push(t)}}if(e.source&&e.source.indexOf("dell.com")>-1){const e=document.querySelector("item-stack"),n=e&&e.shadowRoot&&e.shadowRoot.querySelectorAll("item-detail");if(n)for(const e of n){const n=e&&e.shadowRoot&&e.shadowRoot.querySelector("item-component"),o=null===(t=null==n?void 0:n.shadowRoot)||void 0===t?void 0:t.querySelector(".jarvis-personalized-recommendations");o&&i.push(o)}}return i}function u(e){for(const t of d(e))if(t.firstChild)return!0;return!1}class p{constructor(e,t){this.mutationObserversMap=new WeakMap,this.apiRoot=e,this.jmlUtilities=t}buildRecommendationUrl(e,t,i,n,o){return l({baseUrl:e||this.apiRoot.getRecoBaseUrl(),collectedIds:t||this.apiRoot.collectedIds,recommendationsCount:i,pageType:n||"",locationFilter:o||"",product:""})}populateRecommendationItem(e,t,i){var n;let o,r;if(o=i?(null===(n=document.getElementsByClassName("jarvis-list-item")[0])||void 0===n?void 0:n.outerHTML)||"":t.listItemSection,e.isFavorited)if(i){const e=document.getElementsByClassName("jarvis-remove-fav-btn");e&&e.length&&(r=e[0].outerHTML)}else r=t.removeFavoriteBtn;else if(i){const e=document.getElementsByClassName("jarvis-add-fav-btn");e&&e.length&&(r=e[0].outerHTML)}else r=t.addFavoriteBtn;const s={hasLocalHTMLTemplate:i,listItemSection:o,htmlTemplate:t,values:e,favBtnContent:r||""};return this.jmlUtilities.processTemplateVariables(s)}populateTemplate(e,t,i,r){var a,l,c,d,u,p;let h,m,g,f,v=this.apiRoot.useBaseCss;const y=t.dataset.localTemplate&&document.getElementById(t.dataset.localTemplate);if(!y){const e=t.dataset.template||"home";m=null===(l=null===(a=i[0])||void 0===a?void 0:a.recommendations)||void 0===l?void 0:l[e],m||(m=null===(d=null===(c=i[1])||void 0===c?void 0:c.recommendations)||void 0===d?void 0:d[e],v=!0),g=null===(u=i[0])||void 0===u?void 0:u.carouselLibraryConfig,f=null===(p=i[0])||void 0===p?void 0:p.customCss}if(y){h={},t.innerHTML+=y.outerHTML;for(const e of t.children)e.style.visibility=""}else{if(!m)return void(t.style.visibility="hidden");h=m,t.innerHTML+=h.outerSection}if(v&&(0,n.Y_)(),null==m?void 0:m.cssUrls)for(const e of m.cssUrls){if(document.querySelector(`link[href='${e}']`))continue;const t=document.createElement("link");t.href=e,t.type="text/css",t.rel="stylesheet",document.body.append(t)}let _=null;if(!y){_=t.querySelector("#jarvis-outer-section"),_&&(_.id=`${_.id}-${r}`);let i=e.recommendationsTitle?e.recommendationsTitle:"Recommended for you";h.primaryTitle&&h.alternateTitle&&e.aidaptive_cohort&&(i="test"===e.aidaptive_cohort?h.primaryTitle:h.alternateTitle),h.titleSection=h.titleSection.replace("%recommendationsTitle%",i)}let b="";const w=e.recommendations;for(let e=0;e-1||e.source.indexOf("lazyone.com")>-1);if(!s){const t=e.hostname.replaceAll(".","-");r.push((0,n.rd)(`https://cdn.jarvisml.com/templates/${t}-templates.json`,(()=>{}))),r.push((0,n.rd)("https://cdn.jarvisml.com/templates/jarvis-base-templates.json",(()=>{})))}for(const i of o){const n=i.dataset.pageType||"home",o=i.dataset.locationFilter||"",r=(null===(t=i.dataset.product)||void 0===t?void 0:t.toUpperCase())||"",s=n+(o?`_${o}`:"")+(r?`_${r}`:"");let l=a[s];l||(a[s]=l={baseUrl:this.apiRoot.getRecoBaseUrl(),collectedIds:e,recommendationsCount:0,pageType:"home"===n?"":n,locationFilter:o,product:r},c[s]=0);const u=parseInt(i.dataset.recs||"")||3;d.push(u),l.recommendationsCount+=u,this.locationFilterChangeListener(i)}const p=[];for(const e in a){const t=a[e];u&&t.recommendationsCount<10&&(c[e]+=10-t.recommendationsCount,t.recommendationsCount=10);const i=l(t);p.push(t.pageType),r.push((0,n.rd)(i,(e=>{(0,n.Qm)(`Jarvis Error: ${e.message}`,"personalized_recommendations")})))}const h=yield Promise.all(r);let m,g=[];const f="marine"===e.vertical||"ecommerce"===e.vertical||e.source.indexOf("siebert-realty.com")>-1,v=h.slice(0,2);let y=2;for(const e in a){const t=a[e],r=h[y++];let s;if(f){const e=r;s={recommendations:e.entities,aidaptive_cohort:e.aidaptive_cohort,visit_id:e.visit_id}}else s=r;if(!((null===(i=null==s?void 0:s.recommendations)||void 0===i?void 0:i.length)>=1)){for(const e of o)e.style.visibility="hidden";return}m||(m=s);let l=s.recommendations;u&&(l=(0,n.q2)([...s.recommendations]));const d=t.recommendationsCount-c[e];g=g.concat(l.slice(0,d))}if(!m)throw new Error("unexpected: !responseData");f||this.apiRoot.idCollection.processVisitIdResponse(m),m.recommendations=g;const _=window.getJarvisMLFavorites?yield window.getJarvisMLFavorites():[];for(const e of g)for(const t of _)if(t&&t.id.includes(e.property_id))e.isFavorited=!0;else if(t&&e.additional_fields&&e.additional_fields.length)for(const i of e.additional_fields)"api_id"!==i.key||i.value!==t.id||(e.isFavorited=!0);this.apiRoot.recommendations=[...g];let b=0;for(let t=0;t-1||e.source.indexOf("midgettrealty.com")>-1||e.source.indexOf("elliottbeachrentals.com")>-1)for(const e of p)(0,n.mR)(`page_type=${e||"home"}&aidaptive_product=recommendations`)}catch(e){(0,n.Qm)(`Error loading Jarvis ML recommendations: ${e.message}`,"personalized_recommendations")}},new((o=void 0)||(o=Promise))((function(e,n){function s(e){try{l(r.next(e))}catch(e){n(e)}}function a(e){try{l(r.throw(e))}catch(e){n(e)}}function l(t){var i;t.done?e(t.value):(i=t.value,i instanceof o?i:new o((function(e){e(i)}))).then(s,a)}l((r=r.apply(t,i||[])).next())}));var t,i,o,r}addEvents(e,t,i){const n=e.getElementsByClassName("jarvis-item-link");if(n&&n.length){let e=0,r=0;const s=n.length/t.length;for(const a of n)a.setAttribute("recommendationslot",String(e)),a.addEventListener("click",(e=>{const n=e.target,r="A"===n.tagName?e.target:n.closest("a"),s=parseInt(r.getAttribute("recommendationslot")||"");if(this.apiRoot.eventListener&&r.href){const n=r.href.split("&destination_url=")[1];this.apiRoot.eventListener(e,{slot:String(s+i),destinationUrl:decodeURIComponent(n),recommendation:t[s]})}if((this.apiRoot.collectedIds.source.includes("exceptionalstays.com")||this.apiRoot.collectedIds.source.includes("midgettrealty.com")||this.apiRoot.collectedIds.source.includes("elliottbeachrentals.com"))&&r.href&&t.length&&s>=0){const e=t[s];o({productId:e.product_id||e.entity_id||e.property_id,service:"recommendations",collectedIds:this.apiRoot.collectedIds,eventType:"click"})}})),r++,r===s&&(r=0,e++)}}locationFilterChangeListener(e){const t=this.mutationObserversMap.get(e);if(e.innerHTML="",t&&t["data-location-filter"])return;const i=new MutationObserver((function(e){e.forEach((function(e){"data-location-filter"===e.attributeName&&window.JarvisML.personalizedRecos.loadRecommendations(window.JarvisML.collectedIds)}))}));i.observe(e,{attributes:!0,subtree:!0});const n=this.mutationObserversMap.get(e)||{};n["data-location-filter"]=i,this.mutationObserversMap.set(e,n)}}},106:(e,t,i)=>{i.d(t,{S:()=>Ie});var n=i(625),o=i(660),r=(i(426),i(25));function s(e){const t=e.baseUrl,i=e.collectedIds,n=e.searchQuery,r=e.pageSize,s=e.pageToken,l=e.totalRecords||0,c=e.searchParams||null,d=e.additionalParams,u=e.sortOption?e.sortOption:"";let p,h=e.pageType||i.pageType||"search";if("shopify"===i.vertical&&i.shopifyPageType&&(h=i.shopifyPageType),p="ecommerce"===i.vertical||"shopify"===i.vertical?`${t}dynamic_search/ecommerce/search?source=${encodeURIComponent(i.source)}`:`${t}dynamic_search/${i.entryPoint}?source=${encodeURIComponent(i.source)}`,p=(0,o.a3)(p,"ga_id",i.googleAnalyticsId),p=(0,o.a3)(p,"shopify_cid",i.shopifyId),p=(0,o.a3)(p,"shopify_domain",i.shopifyDomain),p=(0,o.a3)(p,"page_type",h),p=(0,o.a3)(p,"shopify_product_id",i.shopifyProductId),p=(0,o.a3)(p,"customer_id",i.customerId),p=(0,o.a3)(p,"jarvis_cid",i.jarvisClientId),p=(0,o.a3)(p,"visit_id",i.jarvisPixelId),p=(0,o.a3)(p,"query",n),p=(0,o.a3)(p,"result_count",r),"ecommerce"===e.collectedIds.vertical||"shopify"===e.collectedIds.vertical?(p=(0,o.a3)(p,"offset",s),p=(0,o.a3)(p,"limit",r),p=a(p,c,"filter_params")):(p=(0,o.a3)(p,"pagination_token",s),p=(0,o.a3)(p,"recos_count",l)),p=(0,o.a3)(p,"sort",u),p=(0,o.a3)(p,"consent",i.jarvisConsentOpt),p=(0,o.a3)(p,"service",e.service),d){const e=encodeURIComponent(JSON.stringify(d));p=(0,o.a3)(p,"ap",e)}return"ecommerce"!==e.collectedIds.vertical&&"shopify"!==e.collectedIds.vertical&&(p=a(p,c,"search_params")),p}function a(e,t,i){if(!t||Object.keys(t).length<1)return e;const n={};for(const[i,o]of Object.entries(t))if("sort"===i)e=`${e}&sort=${o}`;else if(o||!1===o){if(Array.isArray(o)&&o.length<1||"object"==typeof o&&Object.keys(o).length<1)continue;n[i]=o}return Object.keys(n).length<1?e:`${e}&${i}=${encodeURIComponent(JSON.stringify(n))}`}function l(e,t=!1){const i=e.baseUrl,n=e.collectedIds,r=e.searchQuery,s=e.totalRecords;let a=`${i}dynamic_search/ecommerce/pages?source=${encodeURIComponent(n.source)}`;return a=(0,o.a3)(a,"ga_id",n.googleAnalyticsId),a=(0,o.a3)(a,"shopify_cid",n.shopifyId),a=(0,o.a3)(a,"shopify_domain",n.shopifyDomain),a=(0,o.a3)(a,"customer_id",n.customerId),a=(0,o.a3)(a,"shopify_page_type",n.shopifyPageType),a=(0,o.a3)(a,"shopify_product_id",n.shopifyProductId),a=(0,o.a3)(a,"jarvis_cid",n.jarvisClientId),a=(0,o.a3)(a,"visit_id",n.jarvisPixelId),a=(0,o.a3)(a,"query",r),a=(0,o.a3)(a,"limit",s),a=(0,o.a3)(a,"include_categories",t),a}var c=i(234),d=i(629),u=i(128),p=i(357),h=i(379),m=i.n(h),g=i(37),f=i.n(g),v=i(569),y=i.n(v),_=i(565),b=i.n(_),w=i(216),S=i.n(w),I=i(930),x={};I.Z&&I.Z.locals&&(x.locals=I.Z.locals);var j,C=0,A={};A.setAttributes=b(),A.insert=y().bind(null,"head"),A.domAPI=f(),A.insertStyleElement=S(),x.use=function(e){return A.options=e||{},C++||(j=m()(I.Z,A)),x},x.unuse=function(){C>0&&!--C&&(j(),j=null)};const k=x;class R{constructor(e,t,i,n,o,r,s){this.filters=e,this.filterSearchResults=n,this.showPreRenderLoader=o,this.priceRange=t||{min_price:0,max_price:0},this.containerId=i,this.container=document.getElementById(i),this.svgIcon=r?p.H.arrowDownFilled:p.H.arrowDown,this.filterColorSchema=s,this.render()}render(){!this.filters||this.filters.length<1||(this.container.classList.add("jml-filters-section"),this.createFilterContainer())}toTitleCase(e){return e.replace(/\b\w/g,(e=>e.toUpperCase()))}createFilterBtnMobile(){const e=document.querySelector(".jml-searchpage-action-container .action-buttons-container")||document.querySelector("#jarvis-search-results .jml-action-button-container");if(!e||e.querySelector(".mobile-filter-button"))return;const t=(0,n.Mq)(e,"button","mobile-filter-button");t.innerHTML=`${p.H.mobileFilterIcon} Filters`,t.addEventListener("click",(e=>{this.toggleMobileFilter()}))}createFilterGroup(e){const t=document.createElement("div");t.classList.add("filter-groups");const i=document.createElement("div");i.classList.add("filter-groups-label");const n=document.createElement("button");n.classList.add("collapsible-trigger","is-open"),n.innerText=e.replaceAll("_"," "),n.addEventListener("click",(e=>{this.toggleCollapsibleFilter(e)}));const o=document.createElement("span");return o.classList.add("collapsible-trigger-icon"),o.innerHTML=this.svgIcon,n.appendChild(o),i.appendChild(n),t.appendChild(i),t}renderPriceFilter(){if(!this.priceRange)return null;const e=this.priceRange.min_price;if(!this.priceRange.max_price&&!e)return null;const t=this.createFilterGroup("Price"),i=document.createElement("div");i.classList.add("filter-list","collapsible-content","is-open");const n=this.createPriceRangeSlider();return i.appendChild(n),t.appendChild(i),t}createPriceRangeSlider(){const e=JSON.parse(window.sessionStorage.getItem("jarvisPriceRangeFilter")||"{}"),t=document.createElement("div");t.className="price-parent-container";const i=document.createElement("div");i.className="price-input";const n=document.createElement("div");n.className="input-field";const o=document.createElement("input");o.type="number",o.className="input-min",o.placeholder="Min",e.min_price&&(o.value=e.min_price),o.oninput=e=>this.onPriceInputChange(e),n.appendChild(o);const r=document.createElement("div");r.className="input-field";const s=document.createElement("input");s.type="number",s.className="input-max",s.placeholder="Max",e.max_price&&(s.value=e.max_price),s.oninput=e=>this.onPriceInputChange(e),r.appendChild(s);const a=document.createElement("button");return a.type="button",a.className="price-search",a.innerText="Go",a.onclick=e=>this.onPriceRangeSearch(e),i.appendChild(n),i.appendChild(r),i.appendChild(a),t.appendChild(i),t}onPriceRangeSearch(e){var t,i,n;const o=e.target,r=null===(t=null==o?void 0:o.parentElement)||void 0===t?void 0:t.closest(".price-parent-container"),s={max_price:(null===(i=null==r?void 0:r.querySelector(".input-max"))||void 0===i?void 0:i.value)||"",min_price:(null===(n=null==r?void 0:r.querySelector(".input-min"))||void 0===n?void 0:n.value)||""};window.sessionStorage.setItem("jarvisPriceRangeFilter",JSON.stringify(s)),this.showPreRenderLoader(),this.filterSearchResults()}onPriceInputChange(e){var t,i,n,o;const r=e.target,s=null===(t=null==r?void 0:r.parentElement)||void 0===t?void 0:t.closest(".price-input"),a=(null===(i=null==s?void 0:s.querySelector(".input-max"))||void 0===i?void 0:i.value)||"",l=(null===(n=null==s?void 0:s.querySelector(".input-min"))||void 0===n?void 0:n.value)||"",c=parseInt((null===(o=document.querySelector(`#${this.containerId} .price-range-max`))||void 0===o?void 0:o.getAttribute("max"))||"0"),d=parseInt(a),u=parseInt(l),p=document.querySelector(`#${this.containerId} .price-slider .price-progress`),h=document.querySelector(`#${this.containerId} .price-range-min`),m=document.querySelector(`#${this.containerId} .price-range-max`);d-u>=10&&d<=c&&("input-min"===r.className?(h.value=u.toString(),p.style.left=this.rangeMarginLeft(u,c)):(m.value=d.toString(),p.style.right=this.rangeMarginRight(d,c)))}onPriceRangeChange(e){var t,i;const n=e.target,o=n.parentElement,r=o.querySelector(".price-range-max"),s=o.querySelector(".price-range-min"),a=parseInt((null===(t=o.querySelector(".price-range-max"))||void 0===t?void 0:t.getAttribute("max"))||""),l=parseInt((null===(i=o.querySelector(".price-range-max"))||void 0===i?void 0:i.getAttribute("min"))||""),c=parseInt((null==r?void 0:r.value)||""),d=parseInt((null==s?void 0:s.value)||"");if(c-d<10)"price-range-min"===n.className?s&&(s.value=(c-10).toString()):r&&(r.value=(d+10).toString());else{const e=document.querySelector(`#${this.containerId} .input-min`),t=document.querySelector(`#${this.containerId} .input-max`);d===l?(e.placeholder="Min",e.value=""):e.value=d.toString(),c===a?(t.placeholder="Max",t.value=""):t.value=c.toString();const i=document.querySelector(`#${this.containerId} .price-slider .price-progress`);i.style.left=this.rangeMarginLeft(d,a),i.style.right=this.rangeMarginRight(c,a)}}rangeMarginLeft(e,t){return e/t*100+"%"}rangeMarginRight(e,t){return 100-e/t*100+"%"}createFilterContainer(){this.createFilterBtnMobile();const e=document.createElement("section");e.classList.add("filters");const t=document.createElement("div");t.classList.add("heading-section");const i=document.createElement("button");i.classList.add("mobile-filter-cross"),i.innerHTML=p.H.closeIcon,i.addEventListener("click",(e=>{this.toggleMobileFilter()})),t.appendChild(i),e.appendChild(t);const n={};for(const{filter_name:e,filter_value:t,product_count:i}of this.filters)n[e]||(n[e]=[]),n[e].push({filter_value:t,product_count:i});const o=this.renderPriceFilter();o&&e.appendChild(o),this.createFilterSections(n,e);const r=document.querySelector(`#${this.containerId} section.filters`);r?this.container.replaceChild(e,r):this.container.appendChild(e)}createFilterSections(e,t){for(const[i,n]of Object.entries(e)){if(i.includes("aidaptive"))continue;const e=document.createElement("div");e.classList.add("filter-groups");const o=document.createElement("div");o.classList.add("filter-groups-label");const r=document.createElement("button");r.classList.add("collapsible-trigger","is-open"),r.innerText=i.replaceAll("_"," "),r.addEventListener("click",(e=>{this.toggleCollapsibleFilter(e)}));const s=document.createElement("span");s.classList.add("collapsible-trigger-icon"),s.innerHTML=this.svgIcon,r.appendChild(s),o.appendChild(r),e.appendChild(o);const a=n.length>5;this.createFilterValues(n,i,e,t,a)}}createFilterValues(e,t,i,n,o){var r,s;const a=JSON.parse(window.sessionStorage.getItem("jarvisSelectedFilters")||"{}"),l=document.createElement("div");l.classList.add("filter-list","collapsible-content","is-open");const c=document.createElement("div");c.classList.add("view-more-filter-list");let d=0;for(const[n,{filter_value:u,product_count:p}]of e.entries()){const e=document.createElement("div");e.classList.add("filter-content");const h=document.createElement("input");h.type="Availability"===t?"radio":"checkbox","color"===t&&(e.classList.add("color-filter-content"),h.className="color-swatch-input"),h.name=t,h.value=u,h.id=`${t}-${u}`,h.addEventListener("change",(e=>{const t=e.target;this.updateFilterEvent(t.name,t.value)})),(null===(r=a[t])||void 0===r?void 0:r.length)>0&&(null===(s=a[t])||void 0===s?void 0:s.includes(u))&&(h.checked=!0);const m=document.createElement("label");if(m.htmlFor=h.id,m.innerText=`${u} (${p})`,"color"===t&&this.filterColorSchema&&"gentlemansgazette.myshopify.com"===window.JarvisML.collectedIds.shopifyDomain){m.className="color-swatch-label";const e=document.createElement("div");e.className="color-swatch-box",this.setColorSwatchBackground(e,u,this.filterColorSchema),m.appendChild(e),k.use()}if(e.appendChild(h),e.appendChild(m),o){if(n<4)l.appendChild(e);else if(c.appendChild(e),l.appendChild(c),0===d){const e=document.createElement("a");e.href="javascript:void(0);",e.innerText="View more options",e.className="view-more-options",e.addEventListener("click",(e=>{this.onViewMoreButtonClick(e)})),l.appendChild(e),d++}}else l.appendChild(e);i.appendChild(l)}n.appendChild(i)}setColorSwatchBackground(e,t,i){const n=i.find((e=>e.colorName===t));n&&(n.colorImage?e.style.backgroundImage=`url(${n.colorImage})`:n.colorCode?e.style.backgroundColor=`${n.colorCode}`:e.style.backgroundColor=`${n.colorName.toLowerCase()}`)}onViewMoreButtonClick(e){var t;const i=e.target,n=null===(t=null==i?void 0:i.closest(".filter-groups"))||void 0===t?void 0:t.querySelector(".filter-list.collapsible-content");if(!n)return;const o=n.querySelector(".view-more-filter-list"),r=n.querySelector(".view-more-options");o&&(o.style.display="block"),r&&(r.style.display="none");const s=n.querySelector(".view-less-options");if(s)return void(s.style.display="block");const a=document.createElement("a");a.href="javascript:void(0);",a.innerText="View less options",a.className="view-less-options",a.addEventListener("click",(e=>{this.onViewLessButtonClick(e)})),n.appendChild(a)}onViewLessButtonClick(e){var t;const i=null===(t=e.target.closest(".filter-groups"))||void 0===t?void 0:t.querySelector(".filter-list.collapsible-content"),n=null==i?void 0:i.querySelector(".view-more-filter-list"),o=null==i?void 0:i.querySelector(".view-more-options"),r=null==i?void 0:i.querySelector(".view-less-options");n&&(n.style.display="none"),o&&(o.style.display="block"),r&&(r.style.display="none")}toggleCollapsibleFilter(e){var t,i;const n=e.target,o=null===(t=n.closest(".filter-groups"))||void 0===t?void 0:t.querySelector(".filter-list.collapsible-content"),r=null===(i=n.closest(".filter-groups"))||void 0===i?void 0:i.querySelector(".collapsible-trigger");null==o||o.classList.toggle("is-open"),null==r||r.classList.toggle("is-open")}toggleMobileFilter(){const e=document.querySelector("#jml-filters-section")||document.querySelector("#jarvis-search-filters");e&&(e.classList.contains("mobile-open")?e.classList.remove("mobile-open"):e.classList.add("mobile-open"))}updateFilterEvent(e,t){const i=JSON.parse(window.sessionStorage.getItem("jarvisSelectedFilters")||"{}");Object.prototype.hasOwnProperty.call(i,e)?("Availability"===e&&document.querySelectorAll('input[name="Availability"]').forEach((t=>{i[e].pop()})),i[e].includes(t)?i[e]=i[e].filter((e=>e!==t)):i[e].push(t),Object.keys(i).forEach((e=>{Array.isArray(i[e])&&0===i[e].length&&delete i[e]}))):i[e]=[t],this.renderFilteredResults(i)}renderSelectedFiltersPill(){const e=document.querySelector("#jml-selected-filters-pill-container"),t=JSON.parse(window.sessionStorage.getItem("jarvisSelectedFilters")||"{}");if(!e)return;if(Object.keys(t).length<1)return void(e.style.display="none");e.style.display="block";const i=document.querySelector("#jml-selected-filters-pill-container .selected-filters-pills");i.innerHTML="",Object.entries(t).forEach((([e,t])=>{t.forEach((t=>{const o=(0,n.Mq)(i,"div","pill-container");(0,n.Mq)(o,"span","pill-label").innerText=t;const r=(0,n.Mq)(o,"span","pill-remove");r.innerHTML=p.H.closeIcon,r.addEventListener("click",(()=>{this.updateFilterEvent(e,t)}))}))})),document.querySelector("#jml-selected-filters-pill-container .filter-clearall").addEventListener("click",(e=>{e.preventDefault(),this.renderFilteredResults({})}))}renderFilteredResults(e){window.sessionStorage.setItem("jarvisSelectedFilters",JSON.stringify(e)),this.toggleMobileFilter(),this.renderSelectedFiltersPill(),this.showPreRenderLoader(),this.filterSearchResults()}getContainer(){return this.container}}var L=i(447),M={};L.Z&&L.Z.locals&&(M.locals=L.Z.locals);var P,T=0,E={};E.setAttributes=b(),E.insert=y().bind(null,"head"),E.domAPI=f(),E.insertStyleElement=S(),M.use=function(e){return E.options=e||{},T++||(P=m()(L.Z,E)),M},M.unuse=function(){T>0&&!--T&&(P(),P=null)};const $=M;var B=i(731),D={};B.Z&&B.Z.locals&&(D.locals=B.Z.locals);var F,O=0,U={};U.setAttributes=b(),U.insert=y().bind(null,"head"),U.domAPI=f(),U.insertStyleElement=S(),D.use=function(e){return U.options=e||{},O++||(F=m()(B.Z,U)),D},D.unuse=function(){O>0&&!--O&&(F(),F=null)};const q=D;var z=i(484),N={};z.Z&&z.Z.locals&&(N.locals=z.Z.locals);var J,H=0,V={};V.setAttributes=b(),V.insert=y().bind(null,"head"),V.domAPI=f(),V.insertStyleElement=S(),N.use=function(e){return V.options=e||{},H++||(J=m()(z.Z,V)),N},N.unuse=function(){H>0&&!--H&&(J(),J=null)};const Z=N;var Q=i(812),G={};Q.Z&&Q.Z.locals&&(G.locals=Q.Z.locals);var K,W=0,Y={};Y.setAttributes=b(),Y.insert=y().bind(null,"head"),Y.domAPI=f(),Y.insertStyleElement=S(),G.use=function(e){return Y.options=e||{},W++||(K=m()(Q.Z,Y)),G},G.unuse=function(){W>0&&!--W&&(K(),K=null)};const X=G;var ee=i(721),te={};ee.Z&&ee.Z.locals&&(te.locals=ee.Z.locals);var ie,ne=0,oe={};oe.setAttributes=b(),oe.insert=y().bind(null,"head"),oe.domAPI=f(),oe.insertStyleElement=S(),te.use=function(e){return oe.options=e||{},ne++||(ie=m()(ee.Z,oe)),te},te.unuse=function(){ne>0&&!--ne&&(ie(),ie=null)};const re=te;var se=i(818),ae={};se.Z&&se.Z.locals&&(ae.locals=se.Z.locals);var le,ce=0,de={};de.setAttributes=b(),de.insert=y().bind(null,"head"),de.domAPI=f(),de.insertStyleElement=S(),ae.use=function(e){return de.options=e||{},ce++||(le=m()(se.Z,de)),ae},ae.unuse=function(){ce>0&&!--ce&&(le(),le=null)};const ue=ae;var pe=i(748),he=i(942),me=i(586),ge={};me.Z&&me.Z.locals&&(ge.locals=me.Z.locals);var fe,ve=0,ye={};ye.setAttributes=b(),ye.insert=y().bind(null,"head"),ye.domAPI=f(),ye.insertStyleElement=S(),ge.use=function(e){return ye.options=e||{},ve++||(fe=m()(me.Z,ye)),ge},ge.unuse=function(){ve>0&&!--ve&&(fe(),fe=null)};const _e=ge;var be=function(e,t,i,n){return new(i||(i=Promise))((function(o,r){function s(e){try{l(n.next(e))}catch(e){r(e)}}function a(e){try{l(n.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(s,a)}l((n=n.apply(e,t||[])).next())}))};const we=["query","s","q","search_query"],Se={page_suggestions:'',category_suggestions:''};class Ie{constructor(e,t){this.recordCount=0,this.isScrollChange=!1,this.currentScrolls=1,this.registerInfiniteScroll=()=>{const e=document.getElementsByTagName("footer")[0];let t=0;e&&(t=e.offsetHeight),q.use(),window.addEventListener("scroll",(()=>{var e,i;this.isScrollChange||(null===(e=this.searchPageTemplate)||void 0===e?void 0:e.loaderSection)&&!(null===(i=this.searchPageTemplate)||void 0===i?void 0:i.loadMoreButton)&&window.scrollY+window.innerHeight+80+t>=document.documentElement.scrollHeight&&this.loadMoreResults()}))},this.searchEventaction=e=>{const t=e.target;if(!t)return;const i=t.value;this.searchQuery=i,window.sessionStorage.setItem("searchQuery",i),i.length?i.length<3||this.showSearchModal(i):this.hideSearchModal()},this.showSearchModal=e=>be(this,void 0,void 0,(function*(){const t=document.getElementById("jarvis-search-modal"),i=(0,pe.jK)(t,"data-suggestions-limit",3);if(!t)return;const n={baseUrl:this.apiRoot.getSearchBaseUrl(),collectedIds:this.apiRoot.collectedIds,searchQuery:e,totalRecords:this.recordCount||12,pageSize:this.recordCount||12},o=yield this.fetchSearchResults(n);let r={category_suggestions:[],page_suggestions:[]};"ecommerce"===this.apiRoot.collectedIds.vertical&&(n.totalRecords=i||3,r=yield this.fetchAutoSuggestData(n)),t.style.display="flex",this.populateSearchModal(o,r)})),this.switchPage=e=>{var t;e.preventDefault();const i=e.currentTarget;if(!i)return;let n=i.getAttribute("data-page-token")||"";const o=parseInt(i.getAttribute("data-page-no")||"");isNaN(o)&&!n||o===this.currentPage||(isNaN(o)||(n=o>0&&(null===(t=this.apiMetaData)||void 0===t?void 0:t.tokens)&&this.apiMetaData.tokens[o-1]||""),this.populateSearchResults({searchQuery:this.searchQuery,pageToken:n}))},this.triggerFilteredResults=()=>{this.populateSearchResults()},this.populateSearchResults=e=>be(this,void 0,void 0,(function*(){const t=this.apiRoot.useBaseCss;let i=(null==e?void 0:e.searchQuery)||"";const o=(null==e?void 0:e.pageToken)?String(null==e?void 0:e.pageToken):"",r=null==e?void 0:e.scrollPage,s=null==e?void 0:e.filterResults,a=null==e?void 0:e.sortResults,l=(null==e?void 0:e.service)||"search";t&&(0,n.Y_)(),i||(i=this.readSearchQueryFromUrl()||this.searchQuery||window.sessionStorage.getItem("searchQuery")||""),i!==window.sessionStorage.getItem("lastSearchQuery")&&(window.sessionStorage.setItem("jarvisSelectedFilters","{}"),window.sessionStorage.setItem("jarvisPriceRangeFilter","{}")),window.sessionStorage.setItem("lastSearchQuery",i);const c=document.getElementById("jarvis-search-results"),u=document.getElementById("jarvis-personalized-search"),p=u||c,h=parseInt((null==p?void 0:p.getAttribute("data-record-count"))||""),m=parseInt((null==p?void 0:p.getAttribute("data-maximum-records"))||""),g=h||this.recordCount||6,f=m||400,v=[],y=new URLSearchParams(window.location.search);if(!r||s||a?this.currentScrolls=1:this.currentScrolls++,(this.totalResults=1))return void this.hideLoaderContainer();if((null==b?void 0:b.length)>0){const e={hasLocalHTMLTemplate:!1,listItemSection:this.searchPageTemplate.listItemSection,htmlTemplate:this.searchPageTemplate,favBtnContent:"",values:null},t=this.apiRoot.searchFilters;b.forEach(((i,n)=>{if(t.arrival_date&&t.departure_date){i.arrival_date=t.arrival_date,i.departure_date=t.departure_date;for(const e of i.additional_fields)"api_id"===e.key&&v.push(e.value)}e.values=i,e.favBtnContent=i.isFavorited?this.searchPageTemplate.removeFavoriteBtn:this.searchPageTemplate.addFavoriteBtn,e.currentIndex=w+n,S+=this.jmlUtilities.processTemplateVariables(e)}));const i=!!u;if(new d.Z("AIzaSyDq4TgFAkRbCyyBRneMzKDnfCFK9YoxOyY",window.JarvisML.searchResults).initMap(i),document.getElementsByClassName("jml-search-item-container")[0]&&r)return this.hideLoaderContainer(),document.getElementsByClassName("jml-search-item-container")[0].innerHTML+=S,this.fetchGrandTotals(v),this.switchSecondaryProductImage(),void this.callExternalIntegrations()}else S=this.searchPageTemplate.noResults;const I=this.searchPageTemplate.listSection.replaceAll("%list_content%",S);let x=this.searchPageTemplate.outerSection;x=x.replace("%document_result_component%",this.documentListContainer||""),x=x.replace("%outer_section_content%",I),this.setTotalRecordCount(),"ecommerce"===this.apiRoot.collectedIds.vertical&&"search"===l&&this.addSearchBarOnEcommerce(),x="search"===l?this.addPagination(x):x.replace("%pagination_component%",""),c&&(c.innerHTML=x),this.searchPageTemplate.loadMoreButton&&this.handleLoadMoreButton(),this.filtersSection&&(this.filtersSection.createFilterBtnMobile(),this.renderCustomMobileSortBox()),this.callExternalIntegrations(),this.fetchGrandTotals(v),this.switchSecondaryProductImage();const j=document.getElementById("jarvis-personalized-search"),C=null==j?void 0:j.dataset.tintColor;C&&(document.querySelectorAll("#jarvis-personalized-search .tint-color").forEach((e=>{e.style.color=C})),document.querySelectorAll("#jarvis-personalized-search .tint-bg-color").forEach((e=>{e.style.backgroundColor=C})))})),this.apiRoot=e,this.jmlUtilities=t}getApiUrl(e,t,i,n,o=0,r=""){return s({baseUrl:this.apiRoot.getSearchBaseUrl(),collectedIds:this.apiRoot.collectedIds,searchQuery:e,pageSize:t,pageToken:i,searchParams:n,totalRecords:o,sortOption:r})}showLoaderContainer(){this.isScrollChange=!0;const e=document.getElementById("jarvis-loader-container");e&&(e.style.visibility="visible");const t=document.querySelector("#jml-loadmore-button");t&&(t.style.visibility="hidden")}hideLoaderContainer(e){this.isScrollChange=!1;const t=document.getElementById("jarvis-loader-container");t&&(t.style.visibility="hidden");const i=document.querySelector("#jml-loadmore-button");i&&(i.style.visibility=e?"hidden":"visible")}onJarvisFormSubmit(e){e.preventDefault();const t=document.getElementById("jarvis-search-filters-form"),i=new FormData(t),n=this.searchSchema,o=n&&n.sortSchema||null,r=n&&n.filtersSchema||null,s=window.JarvisML.filtering;let a,l;for(const[e,t]of i.entries())if(e&&r&&r[e]){const n=r[e];if(!n)continue;if("sort"===n.keyName&&o){const e=o[t];e&&e.keyName&&s.setSortBy(e.keyName,!e.descending)}else if("bedrooms"===n.keyName)s.setBedrooms(t);else if("sleeps"===n.keyName)s.setSleeps(t);else if("bathrooms"===n.keyName)s.setBathrooms(t);else if("arrival"===n.keyName)a=t;else if("departure"===n.keyName)l=t;else if("array"===n.valueType)s.setFilter(n.keyName,i.getAll(e));else if(!n.keyName&&n.setSeparately&&n.repeats){const e=Array.isArray(t)?t:[t];for(const t of e)s.setFilter(t,!0)}else n.keyName&&s.setFilter(n.keyName,t)}a&&l&&s.setDate(a,l),this.triggerFilteredResults()}renderDefaultSearchUI(e,t){return be(this,void 0,void 0,(function*(){var i;if(!t)return!1;yield this.fetchJsonTemplates(e,t);const n=this.searchPageTemplate.defaultSearchSection||"";t.innerHTML=n;const o=null===(i=this.templateData.search)||void 0===i?void 0:i["search-filter-items"];return o?(this.defaultSearchFilters=new u.U(this.apiRoot,o),this.defaultSearchFilters.initializeDefaultFilters()):document.querySelector("#jarvis-personalized-search .jml-navbar").style.display="none",!0}))}renderSearchModal(e,t){return be(this,void 0,void 0,(function*(){const i=document.getElementById("jarvis-search-input");if(!i)return;yield this.fetchJsonTemplates(e,null);const o=parseInt(i.getAttribute("data-record-count")||"");isNaN(o)||(this.recordCount=o);const r=this.readSearchQueryFromUrl()||this.searchQuery||window.sessionStorage.getItem("searchQuery");i.value=r||"",i.addEventListener("input",(0,n.Ds)((e=>this.searchEventaction(e)),400)),i.addEventListener("click",(0,n.Ds)((e=>this.searchEventaction(e)),250)),document.body.addEventListener("click",(e=>{i.contains(e.target)||this.hideSearchModal()}));let s=document.getElementById("jarvis-search-modal");if(!s&&!t){const e=i.parentElement;e&&e.insertAdjacentHTML("beforeend",this.searchModalTemplate.outerSection),s=document.getElementById("jarvis-search-modal"),s&&(s.style.display="none")}}))}loadSearchUI(e,t){return be(this,void 0,void 0,(function*(){const i=document.getElementById("jarvis-search-results");let o;if(this.renderSearchModal(e,i),!i)return;i.dataset&&i.dataset.searchQuery&&(o=i.dataset.searchQuery,this.searchQuery=o),yield this.fetchJsonTemplates(e,t);const r=this.readSearchQueryFromUrl()||this.searchQuery,s=(0,u.w)({baseUrl:this.apiRoot.getSearchBaseUrl(),collectedIds:this.apiRoot.collectedIds,searchQuery:r}),a=yield(0,n.rd)(s,(e=>{(0,n.Qm)(`fetchSearchFilters error: ${e.message}`,"personalized_search")}));this.apiFiltersData=a||{},this.processSortOptionsForEcommerce(),this.renderCustomSortBox(),o?this.populateSearchResults({service:"merchandising"}):(this.populateSearchResults(),this.registerInfiniteScroll(),this.takeOverFiltersForm(),X.use())}))}populateSearchDocumentResults(e,t){return be(this,void 0,void 0,(function*(){const i=e.search["search-page-documents"];if(!i||!t)return"";const o=l({baseUrl:this.apiRoot.getSearchBaseUrl(),collectedIds:this.apiRoot.collectedIds,searchQuery:t,totalRecords:parseInt(i.documentCount)||6}),r=yield(0,n.rd)(o,(e=>{(0,n.Qm)(`fetchSearchDocuments error: ${e.message}`,"personalized_search")})),s=null==r?void 0:r.pages;if(!s||s.length<1)return"";let a="";return s.forEach((e=>{const t=this.buildTrackingUrl(e.landing_page_click_tracker_url);a+=i.listItemSection.replaceAll("%document_title%",e.name).replaceAll("%document_link%",t)})),Z.use(),i.listSection.replaceAll("%list_document_content%",a)}))}buildTrackingUrl(e){return e.startsWith("http")?e:`${this.apiRoot.getTrackingBaseUrl()}${e}`}renderCustomSortBox(){var e,t;const i=document.getElementById("jarvis-default-sort-box");if(!i||!this.apiFiltersData.sort_options)return;i.innerHTML=(null===(t=null===(e=this.templateData.search)||void 0===e?void 0:e["search-filter-items"])||void 0===t?void 0:t.sortFieldInnerContent)||"";const n=document.querySelector("#jarvis-default-sort-box .jml-sort-select-box");n&&(this.renderSortOptions(n),n.onchange=e=>this.onJarvisSortChange(e))}renderCustomMobileSortBox(){var e,t;const i=document.querySelector("#jarvis-search-results .jml-action-button-container");if(!i||!this.apiFiltersData.sort_options)return;let o=document.querySelector("#jarvis-search-results .jarvis-default-mobile-sort-box");if(o)return;o=(0,n.Mq)(i,"div","jarvis-default-mobile-sort-box"),o.innerHTML=(null===(t=null===(e=this.templateData.search)||void 0===e?void 0:e["search-filter-items"])||void 0===t?void 0:t.sortFieldInnerContent)||"";const r=document.querySelector(".jarvis-default-mobile-sort-box .jml-sort-select-box");r&&(this.renderSortOptions(r),r.onchange=e=>this.onJarvisSortChange(e))}onJarvisSortChange(e){const t=e.target;t&&(window.JarvisML.filtering.setSortBy(t.value,!0),this.populateSearchResults({sortResults:!0}))}processSortOptionsForEcommerce(){var e;if("ecommerce"!==this.apiRoot.collectedIds.vertical)return;const t=this.apiFiltersData,i=JSON.parse(JSON.stringify(this.apiFiltersData));i.sort_options=(null===(e=t.sort_options)||void 0===e?void 0:e.map((e=>({sort_label:e,sort_field:e}))))||[],i.default_sort_option={sort_field:t.default_sort_option||"",sort_label:t.default_sort_option||""},this.apiFiltersData=i}renderSortOptions(e){var t;null===(t=this.apiFiltersData.sort_options)||void 0===t||t.forEach((t=>{var i;const n=document.createElement("option");n.value=t.sort_field,n.text=t.sort_label,n.selected=t.sort_field===(null===(i=this.apiFiltersData.default_sort_option)||void 0===i?void 0:i.sort_field),e.appendChild(n)}))}renderCustomFilterSection(e){if(!document.getElementById("jarvis-search-filters"))return;const t={min_price:null==e?void 0:e.min_price_value,max_price:null==e?void 0:e.max_price_value};this.filtersSection=new R((0,n.UJ)(null==e?void 0:e.edges),t,"jarvis-search-filters",(()=>this.populateSearchResults({filterResults:!0})),xe,this.isControlGroup),$.use()}takeOverFiltersForm(){const e=document.getElementById("jarvis-search-filters-form");e&&(e.setAttribute("action","null"),e.setAttribute("method","null"),e.addEventListener("submit",(e=>window.JarvisML.onJarvisFormSubmit(e))),this.apiRoot.onJarvisFormSubmit=e=>this.onJarvisFormSubmit(e))}hideSearchModal(){const e=document.getElementById("jarvis-search-modal");e&&(e.style.display="none",e.innerHTML="")}fetchAutoSuggestData(e){return be(this,void 0,void 0,(function*(){const t=l(e,!0),i=yield(0,n.rd)(t,(e=>{(0,n.Qm)(`fetchSearchDocuments quickpreview error: ${e.message}`,"personalized_search")}));return this.processAutosuggestData(i)}))}processAutosuggestData(e){const t={category_suggestions:[],page_suggestions:[]};return t.page_suggestions=(null==e?void 0:e.pages)||[],t.category_suggestions=(null==e?void 0:e.categories)||[],t}renderPaginationElem(){var e;if(!this.paginationTemplate||!(null===(e=this.apiMetaData)||void 0===e?void 0:e.tokens))return"";const t=this.apiMetaData.tokens,i=Math.ceil(this.apiMetaData.total_result_count/this.apiMetaData.result_count);this.currentPage=Number(this.apiMetaData.at),this.apiMetaData.prev_token||(this.currentPage=1),this.apiMetaData.next_token||(this.currentPage=i);let n=this.paginationTemplate.listItemPrevButton.replaceAll("%page_token%",this.apiMetaData.prev_token||"");for(let e=0;e{for(let t=0;tthis.switchPage(e)),!1)})),this.paginationTemplate.outerSection.replaceAll("%page_items%",n)}handleUserFavourites(e){return be(this,void 0,void 0,(function*(){if(!window.getJarvisMLFavorites)return;const t=yield window.getJarvisMLFavorites();for(const i of e)for(const e of t)if(e&&e.id.includes(i.property_id))i.isFavorited=!0;else if(e&&i.additional_fields&&i.additional_fields.length)for(const t of i.additional_fields)"api_id"!==t.key||t.value!==e.id||(i.isFavorited=!0)}))}setSearchedResults(e,t){if(!e)return this.apiRoot.searchResults=t||[],0;const i=[...this.apiRoot.searchResults,...t],n=this.apiRoot.searchResults.length;return this.apiRoot.searchResults=i,n}populateSearchModal(e,t){const i=document.getElementById("jarvis-search-modal");if(!i)return void console.error("Search Modal not found");const n=(0,pe.L)(i,"data-autosuggest-enable",!1);let o="";(null==e?void 0:e.length)>0?e.forEach((e=>{const t=e.price_text_small||String((0,c.R)(e.price)),i=this.buildTrackingUrl(e.landing_page_click_tracker_url);o+=this.searchModalTemplate.itemLinkSection.replaceAll("%product_image_url%",e.product_image_url).replaceAll("%price_text_small%",t).replaceAll("%product_title%",e.title).replaceAll("%landing_page_click_tracker_url%",i)})):o=this.searchModalTemplate.noResults;const r=this.searchModalTemplate.listSection.replace("%list_content%",o);i.innerHTML=r,n&&this.populateAutosuggest(t),ue.use()}createSuggestionContainer(e,t,i){const o=document.createElement("div");o.className="jml-suggestions-container",(0,n.Mq)(o,"div","jml-suggestions-title").textContent=e;const r=(0,n.Mq)(o,"ul","jml-suggestion-list");return t.forEach((e=>{const t=(0,n.Mq)(r,"li","jml-suggestion-item");(0,n.Mq)(t,"span","jml-suggestion-icon").innerHTML=Se[i];const o=(0,n.Mq)(t,"a","jml-suggestion-item-link");o.textContent=e.name;const s=this.buildTrackingUrl(e.landing_page_click_tracker_url);o.href=s})),o}populateAutosuggest(e){const t=document.getElementById("jml-autosuggest-container");if(!t)return;if(!e)return void(t.style.display="none");let i=0;for(const n in e){const o=e[n];o.length>0&&(t.appendChild(this.createSuggestionContainer(n.replace("_"," "),o,n)),i++)}t.style.display=i>0?"block":"none",re.use()}getSearchFilterObject(){if(document.getElementById("jarvis-search-filters")){const e=JSON.parse(window.sessionStorage.getItem("jarvisSelectedFilters")||"{}"),t=JSON.parse(window.sessionStorage.getItem("jarvisPriceRangeFilter")||"{}"),i=window.JarvisML.searchFilters.sort;let o={};return Object.keys(e).length>0&&(o="ecommerce"===this.apiRoot.collectedIds.vertical?{taxonomies:(0,n.LF)(e)}:{filter_dict:e}),t.max_price&&(o.max_price=parseInt(t.max_price)),t.min_price&&(o.min_price=parseInt(t.min_price)),i&&(o.sort=i),o}return window.JarvisML.searchFilters}fetchSearchResults(e){return be(this,void 0,void 0,(function*(){var t;const i=s(e),o=yield(0,n.rd)(i,(e=>{this.hideLoaderContainer(),(0,n.Qm)(`fetchSearchResults error: ${e.message}`,"personalized_search")}));if(!o)return[];const r=o,a=o,l=o;let c;if(this.apiMetaData=void 0,this.ecommerceFiltersAggregation=void 0,this.paginationOffset="",l.recommendations)c=l.recommendations.data,this.apiMetaData=l.recommendations.metadata,this.totalResults=this.apiMetaData.total_result_count;else if(a.products)c=a.products,this.totalResults=a.total_results,this.paginationOffset=a.next_offset?String(a.next_offset):"",this.ecommerceFiltersAggregation=a.aggregation;else{if(!r.ranked_products)return(0,n.Qm)(`fetchSearchResults error: ${JSON.stringify(Object.keys(o))}`,"personalized_search"),[];c=r.ranked_products.data,this.apiMetaData=r.ranked_products.metadata,this.totalResults=null===(t=this.apiMetaData)||void 0===t?void 0:t.total_result_count}return!c||(null==c?void 0:c.length)<1?[]:(this.totalPages=Math.ceil(this.totalResults/((null==e?void 0:e.pageSize)||6)),(0,n.JE)(c,this.apiRoot.collectedIds.vertical),yield this.handleUserFavourites(c),o.aidaptive_cohort&&(this.isControlGroup=Boolean("control"===o.aidaptive_cohort),(0,n.Yj)(o.aidaptive_cohort)),(this.apiRoot.collectedIds.source.indexOf("brondell.com")>-1||this.apiRoot.collectedIds.source.indexOf("midgettrealty.com")>-1||this.apiRoot.collectedIds.source.indexOf("elliottbeachrentals.com")>-1)&&(0,n.mR)("page_type=search&aidaptive_product=search"),c)}))}readSearchQueryFromUrl(){const e=window.location.href,t=new URL(e),i=we.find((e=>t.searchParams.has(e)));return i&&t.searchParams.get(i)||""}addSearchBarOnEcommerce(){const e=document.getElementById("jarvis-searchpage-searchbar");if(!e)return;const t=this.readSearchQueryFromUrl()||this.searchQuery||window.sessionStorage.getItem("searchQuery");t&&(e.innerHTML="",function(e,t,i){if(!window.location.href.match(/\/search/))return;const o=(0,n.Mq)(e,"div","jml-searchpage-searchbar"),r=(0,n.Mq)(o,"input","jml-searchbar");r.type="text",r.placeholder="Search...",r.value=t;const s=(0,n.w3)(o,"jml-searchbar-button",p.H.SEARCH);s.type="submit",s.addEventListener("click",(()=>{i(r.value)})),r.addEventListener("keydown",(e=>{"Enter"===e.key&&i(r.value)})),_e.use()}(e,t,(e=>this.triggerNewSearch(e))))}triggerNewSearch(e){return be(this,void 0,void 0,(function*(){const t=new URL(window.location.href).searchParams,i=we.find((e=>t.has(e)));i&&((0,n.y)(i,e),location.reload())}))}callExternalIntegrations(){this.apiRoot.collectedIds.source.includes("brondell.com")&&this.jmlUtilities.setEcommerceRatings()}switchSecondaryProductImage(){document.querySelectorAll("#jarvis-search-results .jml-search-item-container .jml-main-image").forEach((e=>{const t=e.getAttribute("data-secondaryimage-src"),i=e.getAttribute("src");t&&i&&(e.addEventListener("mouseenter",(()=>{e.setAttribute("srcset",t)})),e.addEventListener("mouseleave",(()=>{e.setAttribute("srcset",i)})))}))}fetchGrandTotals(e){return be(this,void 0,void 0,(function*(){var t;const i=this.apiRoot.searchFilters;if((null===(t=this.apiRoot.collectedIds.source)||void 0===t?void 0:t.indexOf("summitcove.com/rentals"))>-1&&i.arrival_date&&i.departure_date){const t=new URLSearchParams(window.location.search),r=function(e){const t=e.collectedIds;let i=(0,he.Ri)(t);i=`${i}hospitality_pricing/prices?source=${encodeURIComponent(t.source)}`,i=(0,o.a3)(i,"arrival_date",e.arrivalDate),i=(0,o.a3)(i,"departure_date",e.departureDate);for(const t of e.ids)i=(0,o.a3)(i,"ids",t);return e.promoCode&&(i=(0,o.a3)(i,"promo_code",e.promoCode)),i}({ids:e,collectedIds:this.apiRoot.collectedIds,promoCode:t.get("promocode")||"",arrivalDate:i.arrival_date,departureDate:i.departure_date}),s=yield(0,n.rd)(r,(e=>{(0,n.Qm)(`fetchGrandTotals error: ${e.message}`,"grand_totals")}));(null==s?void 0:s.prices)&&this.jmlUtilities.populateGrandTotals(s.prices)}}))}addPagination(e){const{loaderSection:t,loadMoreButton:i}=this.searchPageTemplate;return t?this.addLoaderPagination(e,i,t):this.addStandardPagination(e)}addLoaderPagination(e,t,i){const n=t?t+i:i;return e.replaceAll("%pagination_component%",n)}addStandardPagination(e){return e.replaceAll("%pagination_component%",this.renderPaginationElem())}handleLoadMoreButton(){return be(this,void 0,void 0,(function*(){const e=yield(0,r.X)("Load More Button",(()=>document.querySelector("#jml-loadmore-button button")),2e3);e&&e.addEventListener("click",(()=>{this.loadMoreResults()}))}))}loadMoreResults(){var e;"ecommerce"===this.apiRoot.collectedIds.vertical&&this.paginationOffset?(this.showLoaderContainer(),this.populateSearchResults({searchQuery:this.searchQuery,pageToken:this.paginationOffset,scrollPage:!0})):(null===(e=this.apiMetaData)||void 0===e?void 0:e.next_token)&&(this.showLoaderContainer(),this.populateSearchResults({searchQuery:this.searchQuery,pageToken:this.apiMetaData.next_token,scrollPage:!0}))}setTotalRecordCount(){const e=document.getElementById("jarvis-search-count");if(!e)return;const t=this.readSearchQueryFromUrl()||this.searchQuery||window.sessionStorage.getItem("searchQuery")||"";(this.totalResults||0===this.totalResults)&&this.searchPageTemplate.recordsCountSection?(e.hidden=!1,e.innerHTML=this.searchPageTemplate.recordsCountSection.replaceAll("%total_records%",String(this.totalResults)).replaceAll("%search_query%",t)):e.hidden=!0}waitForPageSwitch(){return new Promise((e=>{const t=document.getElementsByClassName("jarvis-page-switch");if(t&&t.length>0)return void e(t);const i=setInterval((()=>{const t=document.getElementsByClassName("jarvis-page-switch");t&&t.length>0&&(clearInterval(i),e(t))}),100)}))}fetchJsonTemplates(e,t){return be(this,void 0,void 0,(function*(){if(this.searchPageTemplate)return;const i=`https://cdn.jarvisml.com/templates/${e.hostname.replaceAll(".","-")}-templates.json`,[o,r]=yield Promise.all([(0,n.rd)(i,(()=>{})),(0,n.rd)("https://cdn.jarvisml.com/templates/jarvis-base-templates.json",(()=>{}))]);let s;if(!t&&(null==o?void 0:o.search))s=o;else{if(!(null==r?void 0:r.search))return void console.error("Template not found");s=r,(0,n.Y_)()}this.searchModalTemplate=s.search["search-modal"],this.searchPageTemplate=s.search["search-page-items"],this.paginationTemplate=s.pagination,this.searchSchema=s.searchSchema,this.templateData=s}))}waitForSearchFilters(){return be(this,void 0,void 0,(function*(){var e;if((null===(e=this.apiRoot.collectedIds.source)||void 0===e?void 0:e.indexOf("summitcove.com/rentals"))<0)return;const t=new URLSearchParams(window.location.search);if(t.has("checkin")&&t.get("checkin")&&t.has("checkout")&&t.get("checkout")){const e=5e3;yield(0,r.X)("search filters",(()=>window.JarvisML.searchFilters.arrival_date&&window.JarvisML.searchFilters.departure_date),e)}}))}initPersonalizedSearch(){return be(this,void 0,void 0,(function*(){const e=this.apiRoot.collectedIds;if(!e)return;this.hideSearchModal(),yield this.waitForSearchFilters();const t=document.getElementById("jarvis-personalized-search");yield this.renderDefaultSearchUI(e,t),yield this.loadSearchUI(e,t)}))}}function xe(){}},636:(e,t,i)=>{i.d(t,{h:()=>n});class n{setDate(e,t){e&&t?window.JarvisML&&window.JarvisML.searchFilters&&(window.JarvisML.searchFilters.arrival_date=e,window.JarvisML.searchFilters.departure_date=t):console.log("Error configuring Jarvis ML date filters: Missing arrival or departure date")}setSleeps(e,t=!1){e?t?(window.JarvisML.searchFilters.min_sleeps=e,window.JarvisML.searchFilters.max_sleeps=e,window.JarvisML.searchFilters.sleeps&&delete window.JarvisML.searchFilters.sleeps):(window.JarvisML.searchFilters.sleeps=e,window.JarvisML.searchFilters.min_sleeps&&(delete window.JarvisML.searchFilters.min_sleeps,delete window.JarvisML.searchFilters.max_sleeps)):console.log("Error configuring Jarvis ML filter: Sleeps value is missing")}setBedrooms(e,t=!1){e?(window.JarvisML.searchFilters.min_bedrooms=e,t?window.JarvisML.searchFilters.max_bedrooms=e:window.JarvisML.searchFilters.max_bedrooms&&delete window.JarvisML.searchFilters.max_bedrooms):console.log("Error configuring Jarvis ML filter: Bedrooms value is missing")}setBathrooms(e,t=!1){e?(window.JarvisML.searchFilters.min_bathrooms=e,t?window.JarvisML.searchFilters.max_bathrooms=e:window.JarvisML.searchFilters.max_bathrooms&&delete window.JarvisML.searchFilters.max_bathrooms):console.log("Error configuring Jarvis ML filter: Bathrooms value is missing")}setSortBy(e,t=!0){e?window.JarvisML.searchFilters.sort=t?e:`${e}_desc`:console.log("Error configuring Jarvis ML filter: Sort value is missing")}setFilter(e,t,i=!0){if(!e)return void console.log("Error configuring Jarvis ML filter: No key specified. Examples: location, property_type etc.");if(!t||"object"==typeof t&&!Array.isArray(t))return void console.log(`Error configuring Jarvis ML filter ${e} \n\n Try setting a boolean, string, int or an array like the following examples: \n\n setFilter(key, value, anyOf): anyOf is required if search result must have that filter for sure. \n\n \n setFilter("Heated Pool", true) for setting an amenity or feature that matches \n\n setFilter("city", ["San Francisco", "Tokyo", "Mumbai"]) for setting multiple values \n\n setFilter("lodging", ["Condo", "Townhome"]) - this returns any property that is a condo or townhome \n\n\n `);Array.isArray(t)&&!i&&console.log(`Error configuring Jarvis ML filter ${e}: \n\n Search doesn't return results unless it's any of ${t}. \n\n Setting anyOf as false is not supported if value is an array.`);const n=window.JarvisML.searchFilters,o=i?"soft_filters":"hard_filters";n.filter_dict[e]=t,e&&n[o].indexOf(e)<0&&n[o].push(e)}removeFilter(e,t=""){if(!e)return void console.log("Error removing Jarvis ML filter: Please provide a key");const i=window.JarvisML.searchFilters,n=i.filter_dict[e];if(Array.isArray(n)&&t){const o=n.filter((e=>e!==t));if(i.filter_dict[e]=o,o.length>0)return}else i.filter_dict[e]&&delete i.filter_dict[e];const o=i.soft_filters.indexOf(e),r=i.hard_filters.indexOf(e);o>=0&&i.soft_filters.splice(o,1),r>=0&&i.hard_filters.splice(r,1)}updateCount(e,t){return t?e+1:e>0?e-1:0}reset(){const e=window.JarvisML.searchFilters;e.soft_filters=[],e.hard_filters=[],e.filter_dict={}}}},504:(e,t,i)=>{i.d(t,{Y:()=>I});var n=i(625),o=i(748),r=i(357),s=i(379),a=i.n(s),l=i(37),c=i.n(l),d=i(569),u=i.n(d),p=i(565),h=i.n(p),m=i(216),g=i.n(m),f=i(334),v={};f.Z&&f.Z.locals&&(v.locals=f.Z.locals);var y,_=0,b={};b.setAttributes=h(),b.insert=u().bind(null,"head"),b.domAPI=c(),b.insertStyleElement=g(),v.use=function(e){return b.options=e||{},_++||(y=a()(f.Z,b)),v},v.unuse=function(){_>0&&!--_&&(y(),y=null)};const w=v,S="http://www.w3.org/2000/svg";function I(e,t,i){if(!e||!t.review&&!t.review_data)return"";const s=t.review_data||t.review,a=i||document.createElement("div");if((null==s?void 0:s.average_rating)&&(null==s?void 0:s.number_of_votes)){a.innerHTML=r.H.RATINGS;const e=Number(s.average_rating),t=Number(s.number_of_votes),i=(0,n.Mq)(a,"span","product_stars");i.role="img",i.ariaLabel=`Rating is ${parseFloat(e.toFixed(1))} out of 5`;const l=Math.floor(e),c=.5*Math.round((e-l)/.5),d="12",u="12";for(let e=1;e<=5;e++){const t=document.createElementNS(S,"svg");(0,o.KT)(t,{class:"rating_star",width:d,height:u,viewBox:`0 0 ${d} ${u}`});const n=document.createElementNS(S,"use");n.setAttributeNS("http://www.w3.org/1999/xlink","href","#star"),e<=l&&t.classList.add("active"),e===l+1&&1===c?t.classList.add("active"):e===l+1&&.5===c&&n.setAttribute("fill","url(#half)"),t.appendChild(n),i.appendChild(t)}a.innerHTML+=` ${t} Reviews`,w.use()}return a.outerHTML.toString()}},120:(e,t,i)=>{(0,i(63).RL)()},748:(e,t,i)=>{i.d(t,{KT:()=>b,Kn:()=>r,L:()=>h,Nh:()=>_,TK:()=>g,U7:()=>d,cC:()=>y,cE:()=>m,fN:()=>s,jK:()=>p,oO:()=>u,tc:()=>v,wv:()=>w,zV:()=>f});var n=i(660);const o="~VARIANT_ID~";function r(e,t){const i=e.lastIndexOf(".");if(i<0)return e;const n=e.substring(i+1);if(!/^[a-zA-Z]{3,4}(\?v=[0-9]+)?$/.exec(n))return e;let o=e.substring(0,i);const r=o.lastIndexOf("_");return r>=0&&/^[0-9]*x[0-9]*$/.exec(o.substring(r+1))&&(o=o.substring(0,r)),`${o}_${t}x${t}.${n}`}function s(e){const t=[],i=[360,540,720,900,1080];for(const n in i)t.push(`${e}&width=${i[n]} ${i[n]}w`);return t.toString()}function a(e,t){let i=e.indexOf("/products/");return i<0&&(i=e.lastIndexOf("/files/")),`${e.substring(0,i)}/files/${t}_50x50.png`}function l(e,t,i){const n=e.lastIndexOf(".");return n<0?e:`${e.substring(0,n)}_${t}x${i}${e.substring(n)}`}function c(e){return e?e.startsWith("https:")?e.substring(6):e:""}function d(e,t){const i=Number(e);return isNaN(i)?e:t(i)}function u(e){const t=e=>`${e}px`,i=e.split(",");if(1===i.length){const i=d(e,t);return[i,i]}return[d(i[0],t),d(i[1],t)]}function p(e,t,i){const n=m(e,t,"");if(""===n)return i;const o=parseInt(n);return isNaN(o)?i:o}function h(e,t,i){const n=m(e,t,"");return""===n?i:Boolean(n)&&"false"!==n}function m(e,t,i){var n;const o=e.getAttribute(t);if(null===o||""===o){if(!(null===(n=window.JarvisMLOptions)||void 0===n?void 0:n.extensionSettings))return i;const e=function(e){if(!e.startsWith("data-"))return e;const t=e.substring(5).split(/-|_/);return t[0]+t.slice(1).map((e=>e[0].toUpperCase()+e.substring(1))).join("")}(t),o=window.JarvisMLOptions.extensionSettings[e];return void 0!==o?String(o):i}return o}function g(e,t){var i;const n=null===(i=e.options.find((e=>"color"===e.name.toLowerCase())))||void 0===i?void 0:i.position,o=n&&n>=1&&n<=3?`option${n}`:"",r={};for(const i of e.variants){if(i.selected_option=o&&i[o]||"",!i.available&&t)continue;i.featured_image||(i.featured_image={src:e.images[0]});const n=i.selected_option;r[n]?r[n].variants.push(i):r[n]={variants:[i]}}return function(e){const t=Number.MAX_SAFE_INTEGER,i=e=>e===t?0:e;for(const n of Object.values(e)){let e=null,o=t,r=0,s=t,a=t,l=0,c=t;for(const i of n.variants)i.available?(e=e||i,o=Math.min(o,i.price),r=Math.max(r,i.price),s=Math.min(s,i.compare_at_price||t)):(a=Math.min(a,i.price),l=Math.max(l,i.price),c=Math.min(c,i.compare_at_price||t));e?(n.available=!0,n.featuredVariant=e):(n.available=!1,n.featuredVariant=n.variants[0]),o=i(Math.min(o,a)),r=Math.max(r,l),n.priceMin=o,n.priceVaries=0!==o&&oe.id===i))[0]),!n){const t=e.images[0];n=e.variants.filter((e=>{var i,n,o;return n=(null===(i=e.featured_image)||void 0===i?void 0:i.src)||"",o=t,c(n)===c(o)}))[0]}if(!n)return null;if(!n.available){const e=t[n.selected_option];(null==e?void 0:e.available)&&(n=e.featuredVariant)}return n}function y(e,t){let i=0;const r=e.landing_page_click_tracker_url,s="&destination_url=",a=r.indexOf(s);if(a>=0){let l=r.indexOf("&",a+1);-1===l&&(l=r.length);let c=decodeURIComponent(r.substring(a+s.length,l)),d=(0,n.eY)(c,"variant");d&&(c=(0,n.ch)(c,`variant=${d}`),d=d.split("?")[0],i=parseInt(d)),e.landing_page_click_tracker_url=t+r.substring(0,a)+`${s}${encodeURIComponent(c)}${o}`+r.substring(l)}else console.error(`missing destination_url: ${r}`),e.landing_page_click_tracker_url=`${t}${r}${o}`;i||(i=function(e){let t=(0,n.eY)(e.landing_page_url,"variant");if(t=t&&t.split("?")[0],t)return parseInt(t);if(e.variant_id){const t=e.variant_id.split("/");return parseInt(t[t.length-1])}return 0}(e));const l=e.landing_page_url.indexOf("?");return l>=0&&(e.landing_page_url=e.landing_page_url.substring(0,l)),i}function _(e,t){const i=t?encodeURIComponent(`&variant=${t}`):"";return e.landing_page_click_tracker_url.replace(o,i)}function b(e,t){Object.keys(t).forEach((i=>{e.setAttribute(i,t[i])}))}function w(e,t,i,n,o){const r=S(e,n,o),s=i?" from ":" ";return t>e?` Regular Price ${S(t,n,o)} Sale Price ${s}${r}`:i?` Sale Price ${s}${r}`:` Regular Price ${r}`}function S(e,t,i){if(t>1){const n=i.computeUnitPrice(e,t);return`${i.formatPrice(e)} / ${i.formatPrice(n)} ea`}return i.formatPrice(e)}},357:(e,t,i)=>{i.d(t,{H:()=>n});const n={arrowDown:' ',arrowDownFilled:'',closeIcon:'',mobileFilterIcon:' ',SEARCH:'',CROSS:'',RATINGS:' '}},660:(e,t,i)=>{function n(e,t,i){return null!=i&&""!==i?`${e}&${t}=${i}`:e}function o(e,t){const i=e.indexOf(t);if(i<0)return console.error(`removeUrlParam: ${t}?`),e;const n=e.substring(0,i),o=n[i-1];if("&"!==o&&"?"!==o)return console.error(`removeUrlParam: ${e} / ${t}`),e;const r=e.substring(i+t.length);return r?"&"!==r[0]?(console.error(`removeUrlParam: ${e} / ${t}`),e):n+r.substring(1):n.substring(0,i-1)}function r(e,t){const i=new URL(e);return new URLSearchParams(i.search).get(t)}i.d(t,{a3:()=>n,ch:()=>o,eY:()=>r})},25:(e,t,i)=>{i.d(t,{X:()=>o});var n=function(e,t,i,n){return new(i||(i=Promise))((function(o,r){function s(e){try{l(n.next(e))}catch(e){r(e)}}function a(e){try{l(n.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof i?t:new i((function(e){e(t)}))).then(s,a)}l((n=n.apply(e,t||[])).next())}))};function o(e,t,i){return n(this,arguments,void 0,(function*(e,t,i,n=50){const o=t();if(o)return o;const r=Date.now();return new Promise((o=>{const s=setInterval((()=>{const n=t(),a=Boolean(n);!a&&Date.now()-r{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{for(var n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),i.nc=void 0,i(120),i(63),i(259),i(12),i(155),i(106),i(636),i(128),i(629)})();