{"version":3,"sources":["src/components/search/atomic-sort-dropdown/atomic-sort-dropdown.pcss?tag=atomic-sort-dropdown&encapsulation=shadow","src/components/search/atomic-sort-dropdown/atomic-sort-dropdown.tsx"],"names":["atomicSortDropdownCss","AtomicSortDropdown","[object Object]","hostRef","this","id","randomID","buildOptions","searchStatus","buildSearchStatus","bindings","engine","sort","buildSort","initialState","criterion","_a","store","state","sortOptions","criteria","sortExpressionElements","Array","from","host","querySelectorAll","length","error","Error","set","map","expression","label","Schema","StringValue","emptyAllowed","required","validate","parseCriterionExpression","options","e","select","composedPath","option","find","value","sortBy","h","selected","isSortedBy","i18n","t","class","part","htmlFor","text","aria-label","onChange","buildOption","icon","ArrowBottomIcon","searchStatusState","hasError","firstSearchExecuted","aria-hidden","hasResults","renderLabel","renderSelect","__decorate","InitializeBindings","BindStateToController"],"mappings":"wSAAA,MAAMA,EAAwB,kq+BCmCjBC,EAAkB,MAL/BC,YAAAC,aASUC,KAAAC,GAAKC,EAAS,yBAUfJ,mBACLE,KAAKG,eACLH,KAAKI,aAAeC,EAAkBL,KAAKM,SAASC,QACpDP,KAAKQ,KAAOC,EAAUT,KAAKM,SAASC,OAAQ,CAC1CG,aAAc,CACZC,WAAWC,EAAAZ,KAAKM,SAASO,MAAMC,MAAMC,YAAY,MAAE,MAAAH,SAAA,OAAA,EAAAA,EAAEI,YAKnDlB,eACN,MAAMmB,EAAyBC,MAAMC,KACnCnB,KAAKoB,KAAKC,iBAAiB,2BAG7B,IAAKJ,EAAuBK,OAAQ,CAClCtB,KAAKuB,MAAQ,IAAIC,MACf,4FAEF,OAGFxB,KAAKM,SAASO,MAAMY,IAClB,cACAR,EAAuBS,KAAI,EAAEC,WAAAA,EAAYC,MAAAA,MACvC,IAAIC,EAAO,CACTD,MAAO,IAAIE,EAAY,CAACC,aAAc,MAAOC,SAAU,SACtDC,SAAS,CAACL,MAAAA,IAEb,MAAO,CACLZ,SAAUkB,EAAyBP,GACnCA,WAAAA,EACAC,MAAAA,OAMRO,cACE,OAAOnC,KAAKM,SAASO,MAAMC,MAAMC,YAG3BjB,OAAOsC,GACb,MAAMC,EAASD,EAAEE,eAAe,GAChC,MAAMC,EAASvC,KAAKmC,QAAQK,MACzBD,GAAWA,EAAOZ,aAAeU,EAAOI,QAE3CF,GAAUvC,KAAKQ,KAAKkC,OAAOH,EAAOvB,UAG5BlB,aAAY6B,WAACA,EAAUX,SAAEA,EAAQY,MAAEA,IACzC,OACEe,EAAA,SAAA,CAAQF,MAAOd,EAAYiB,SAAU5C,KAAKQ,KAAKqC,WAAW7B,IACvDhB,KAAKM,SAASwC,KAAKC,EAAEnB,IAKpB9B,cACN,OACE6C,EAAA,QAAA,CACEK,MAAM,uCACNC,KAAK,QACLC,QAASlD,KAAKC,IAEbD,KAAKM,SAASwC,KAAKC,EAAE,aAAc,CAClCI,KAAMnD,KAAKM,SAASwC,KAAKC,EAAE,cAM3BjD,eACN,OACE6C,EAAA,MAAA,CAAKK,MAAM,WAAWC,KAAK,iBACzBN,EAAA,SAAA,CACE1C,GAAID,KAAKC,GACT+C,MAAM,+EACNC,KAAK,SAAQG,aACDpD,KAAKM,SAASwC,KAAKC,EAAE,WACjCM,SAAWd,GAAWvC,KAAKqC,OAAOE,IAEjCvC,KAAKmC,QAAQT,KAAKa,GAAWvC,KAAKsD,YAAYf,MAEjDI,EAAA,MAAA,CACEM,KAAK,mBACLD,MAAM,uHAENL,EAAA,cAAA,CAAaK,MAAM,QAAQO,KAAMC,MAMlC1D,SACL,GAAIE,KAAKyD,kBAAkBC,SAAU,CACnC,OAGF,IAAK1D,KAAKyD,kBAAkBE,oBAAqB,CAC/C,OACEhB,EAAA,MAAA,CACEM,KAAK,cAAaW,cAAA,KAElBZ,MAAM,mDAKZ,IAAKhD,KAAKyD,kBAAkBI,WAAY,CACtC,OAGF,MAAO,CACLlB,EAAA,MAAA,CAAKK,MAAM,kDACRhD,KAAK8D,cACL9D,KAAK+D,gBAERpB,EAAA,OAAA,mCAnIkBqB,EAAA,CAArBC,uCAOSC,EAAsB,4CAC/BA,EAAsB","sourcesContent":["@import '../../../global/global.pcss';\n\nselect:hover + div,\nselect:focus-visible + div {\n @apply border-primary-light text-primary-light;\n}\n","import {Schema, StringValue} from '@coveo/bueno';\nimport {\n Sort,\n buildSort,\n SortState,\n parseCriterionExpression,\n buildSearchStatus,\n SearchStatus,\n SearchStatusState,\n} from '@coveo/headless';\nimport {Component, h, State, Element} from '@stencil/core';\nimport ArrowBottomIcon from '../../../images/arrow-bottom-rounded.svg';\nimport {\n BindStateToController,\n InitializableComponent,\n InitializeBindings,\n} from '../../../utils/initialization-utils';\nimport {randomID} from '../../../utils/utils';\nimport {Bindings} from '../atomic-search-interface/atomic-search-interface';\nimport {SortDropdownOption} from '../atomic-search-interface/store';\n\n/**\n * The `atomic-sort-dropdown` component renders a dropdown that the end user can interact with to select the criteria to use when sorting query results.\n *\n * @part label - The \"Sort by\" label of the `` element parent.\n * @part select - The `\n \n \n \n \n );\n }\n\n public render() {\n if (this.searchStatusState.hasError) {\n return;\n }\n\n if (!this.searchStatusState.firstSearchExecuted) {\n return (\n \n );\n }\n\n if (!this.searchStatusState.hasResults) {\n return;\n }\n\n return [\n
\n {this.renderLabel()}\n {this.renderSelect()}\n
,\n ,\n ];\n }\n}\n"]}