{"version":3,"sources":["webpack:///../jarvis/app/assets/javascripts/site/controllers/SearchSwitcher/cssScope.ts","webpack:///../jarvis/app/assets/javascripts/site/controllers/SearchSwitcher/App.tsx"],"names":["createScope","App","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","apply","arguments","state","searchTypes","props","autocompleteRef","handleAutocompleteRef","el","setState","handleTabClick","type","prevState","map","searchType","_objectSpread","isActive","buildInput","name","h","className","ref","CategoriesAutocomplete","rootEl","placeholder","concat","toLowerCase","autocomplete","key","value","_this2","this","_searchTypes$find","find","_ref","actionUrl","action","_ref2","nameWithSuffix","htmlClassNames","onClick","Component"],"mappings":"mLAEeA,cADU,Y,4vDCGlB,IAAMC,EAAG,SAAAC,I,kOAAAC,CAAAF,EAAAC,GAAA,I,MAAAE,EAAAC,EAAAJ,GACZ,SAAAA,IAAc,IAAAK,EAkCR,OAlCQC,EAAA,KAAAN,IACVK,EAAAF,EAAAI,MAAA,KAASC,YACJC,MAAQ,CACTC,YAAaL,EAAKM,MAAMD,YACxBE,gBAAiB,MAErBP,EAAKQ,sBAAwB,SAACC,GAC1BT,EAAKU,SAAS,CAAEH,gBAAiBE,KAErCT,EAAKW,eAAiB,SAACC,GAAI,OAAK,WAC5BZ,EAAKU,UAAS,SAACG,GACX,MAAO,CACHR,YAAaQ,EAAUR,YAAYS,KAAI,SAAAC,GACnC,OAAIH,IAASG,EAAWH,KACpBI,IAAA,GACOD,GAAU,IACbE,UAAU,IAElBD,IAAA,GACOD,GAAU,IACbE,UAAU,aAM9BjB,EAAKkB,WAAa,SAACN,EAAMO,GAAS,IACtBZ,EAAoBP,EAAKI,MAAzBG,gBACR,OAAQK,GACJ,IAAK,WACD,OAAQQ,EAAE,MAAO,CAAEC,UAAW,kCAAmCC,IAAKtB,EAAKQ,uBAAyBD,GAAoBa,EAAEG,IAAwB,CAAEC,OAAQjB,KAChK,QACI,OAAQa,EAAE,QAAS,CAAEC,UAAW,kBAAmBT,KAAM,OAAQa,YAAa,SAAFC,OAAWP,EAAKQ,eAAiBR,KAAM,IAAKS,aAAc,UAEhJ5B,EAcL,O,EAbAL,G,EAAA,EAAAkC,IAAA,SAAAC,MAAA,WACQ,IAAAC,EAAA,KACG1B,EAAgB2B,KAAK5B,MAArBC,YAAW4B,EACe5B,EAAY6B,MAAK,SAAAC,GAAW,OAAoB,IAApBA,EAARlB,YAA9CmB,EAASH,EAATG,UAAWjB,EAAIc,EAAJd,KAAMP,EAAIqB,EAAJrB,KACzB,OAAQQ,EAAE,MAAO,KACbA,EAAE,OAAQ,CAAEC,UAAW,YAAagB,OAAQD,GACxCJ,KAAKd,WAAWN,EAAMO,GACtBC,EAAE,SAAU,CAAEC,UAAW,mBAAoBT,KAAM,SAAU,aAAc,YAC/EQ,EAAE,MAAO,CAAEC,UAAW,sBAClBD,EAAE,OAAQ,CAAEC,UAAW,mBAAqB,aAC5CD,EAAE,KAAM,CAAEC,UAAW,UAAYhB,EAAYS,KAAI,SAAAwB,GAAA,IAAG1B,EAAI0B,EAAJ1B,KAAMK,EAAQqB,EAARrB,SAAUsB,EAAcD,EAAdC,eAAc,OAAQnB,EAAE,KAAM,CAAES,IAAKjB,GACrGQ,EAAE,SAAU,CAAEC,UAAWmB,IAAe,aAAc,CAAE,WAAcvB,IAAaL,KAAM,SAAU6B,QAASV,EAAKpB,eAAeC,IAC5HQ,EAAE,OAAQ,KAAMmB,gB,2BACnC5C,EAjDW,CAAS+C","file":"chunk.107.4918d3bbc1c16d4a93bd.9f3cd891.js","sourcesContent":["import { createScope } from 'core/services/VDOM';\nexport const scopeName = 'HeroHome';\nexport default createScope(scopeName);\n","import { Component } from 'preact';\nimport htmlClassNames from 'classnames';\nimport { App as CategoriesAutocomplete } from 'site/controllers/CategoriesAutocomplete';\nimport h from './cssScope';\nexport class App extends Component {\n    constructor() {\n        super(...arguments);\n        this.state = {\n            searchTypes: this.props.searchTypes,\n            autocompleteRef: null\n        };\n        this.handleAutocompleteRef = (el) => {\n            this.setState({ autocompleteRef: el });\n        };\n        this.handleTabClick = (type) => () => {\n            this.setState((prevState) => {\n                return {\n                    searchTypes: prevState.searchTypes.map(searchType => {\n                        if (type === searchType.type)\n                            return {\n                                ...searchType,\n                                isActive: true\n                            };\n                        return {\n                            ...searchType,\n                            isActive: false\n                        };\n                    })\n                };\n            });\n        };\n        this.buildInput = (type, name) => {\n            const { autocompleteRef } = this.state;\n            switch (type) {\n                case 'products':\n                    return (h(\"div\", { className: 'sb-Search_autocompleteContainer', ref: this.handleAutocompleteRef }, autocompleteRef && (h(CategoriesAutocomplete, { rootEl: autocompleteRef }))));\n                default:\n                    return (h(\"input\", { className: 'sb-Search_input', type: 'text', placeholder: `Найти ${name.toLowerCase()}`, name: 'q', autocomplete: 'off' }));\n            }\n        };\n    }\n    render() {\n        const { searchTypes } = this.state;\n        const { actionUrl, name, type } = searchTypes.find(({ isActive }) => isActive === true);\n        return (h(\"div\", null,\n            h(\"form\", { className: 'sb-Search', action: actionUrl },\n                this.buildInput(type, name),\n                h(\"button\", { className: 'sb-Search_submit', type: 'submit', \"aria-label\": '\\u0418\\u0441\\u043A\\u0430\\u0442\\u044C' })),\n            h(\"div\", { className: 'sb-Search_switcher' },\n                h(\"span\", { className: 'sb-Search_label' }, \"\\u041F\\u043E\\u0438\\u0441\\u043A \\u043F\\u043E:\"),\n                h(\"ul\", { className: 'b-Tabs' }, searchTypes.map(({ type, isActive, nameWithSuffix }) => (h(\"li\", { key: type },\n                    h(\"button\", { className: htmlClassNames('b-Tabs_tab', { '__isActive': isActive }), type: 'button', onClick: this.handleTabClick(type) },\n                        h(\"span\", null, nameWithSuffix)))))))));\n    }\n}\n"],"sourceRoot":""}