{"version":3,"sources":["webpack://LefCoveoExtension/webpack/bootstrap","webpack://LefCoveoExtension/./src/LazyIndex.ts","webpack://LefCoveoExtension/./src/ui/CollapsibleFacet/lazyCollapseCategoryFacet.ts","webpack://LefCoveoExtension/./src/ui/CollapsibleFacet/lazyCollapseFacet.ts","webpack://LefCoveoExtension/external \"Coveo\""],"names":[],"mappings":"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","file":"lef.coveo.extension.lazy.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"./src/LazyIndex.ts\");\n","// This entry point defines all the component that should be included in your extension.\r\n\r\nexport { lazyCollapseCategoryFacet } from \"./ui/CollapsibleFacet/lazyCollapseCategoryFacet\";\r\nexport { lazyCollapseFacet } from \"./ui/CollapsibleFacet/lazyCollapseFacet\";\r\n","import {\r\n $$,\r\n AccessibleButton,\r\n CategoryFacet,\r\n CategoryFacetHeader,\r\n ComponentOptions,\r\n FacetHeader,\r\n ICategoryFacetHeaderOptions,\r\n ICategoryFacetOptions,\r\n IComponentBindings,\r\n IComponentDefinition,\r\n l,\r\n SVGDom,\r\n SVGIcons\r\n} from \"coveo-search-ui\";\r\n\r\nexport interface ICollapsibleCategoryFacetHeaderOptions extends ICategoryFacetHeaderOptions {\r\n useOuterCollapse?: boolean;\r\n isCollapsed?: boolean;\r\n}\r\n\r\nexport interface ICollapsibleCategoryFacetOptions extends ICategoryFacetOptions {\r\n useOuterCollapse?: boolean;\r\n isCollapsed?: boolean;\r\n}\r\n\r\nexport function lazyCollapseCategoryFacet() {\r\n // Wait for the 'Facet' promise to resolve, then return the 'CollapseFacet' implementation.\r\n return Coveo.load<IComponentDefinition>(\"CategoryFacet\").then((categoryFacet) => {\r\n // class CollapsibleCategoryFacetHeader extends CategoryFacetHeader {\r\n // public element: HTMLElement;\r\n\r\n // private toggleSection: HTMLElement;\r\n // private toggleIcon: HTMLElement;\r\n\r\n // constructor(public options: ICollapsibleCategoryFacetHeaderOptions) {\r\n // super(options);\r\n\r\n // // this.element = document.createElement(\"div\");\r\n // // $$(this.element).addClass(\"coveo-facet-header\");\r\n\r\n // if (this.options.isCollapsed) {\r\n // $$(this.element).addClass(\"coveo-facet-collapsed\");\r\n // }\r\n // }\r\n\r\n // public build(): HTMLElement {\r\n // // const waitElement = this.buildWaitAnimation();\r\n\r\n // // const titleSection = $$(\r\n // // \"div\",\r\n // // {\r\n // // \"className\": \"coveo-category-facet-title\",\r\n // // \"role\": \"heading\",\r\n // // \"aria-level\": \"2\",\r\n // // \"aria-label\": `${l(\"FacetTitle\", this.options.title)}.`,\r\n // // },\r\n // // this.options.title\r\n // // );\r\n // // this.element = $$(\"div\", { className: \"coveo-category-facet-header\" }, titleSection).el;\r\n // // $$(this.element).append(waitElement);\r\n\r\n // // const eraserElement = this.buildEraser();\r\n // // $$(this.element).append(eraserElement);\r\n\r\n // this.element = super.build();\r\n\r\n // const collapseSection = $$(\"div\", {\r\n // className: \"coveo-facet-header-collapse-section\",\r\n // });\r\n\r\n // if (this.options.useOuterCollapse) {\r\n // this.toggleSection = this.buildToggleSection();\r\n\r\n // collapseSection.append(this.toggleSection);\r\n // }\r\n // $$(collapseSection.el).insertAfter($$(this.element).find(\".coveo-facet-header-title-section\"));\r\n\r\n // return this.element;\r\n // }\r\n\r\n // // private buildWaitAnimation(): HTMLElement {\r\n // // const waitElement = $$(\"div\", { className: CategoryFacet.WAIT_ELEMENT_CLASS }, SVGIcons.icons.loading).el;\r\n // // SVGDom.addClassToSVGInContainer(waitElement, \"coveo-category-facet-header-wait-animation-svg\");\r\n // // waitElement.style.visibility = \"hidden\";\r\n // // return waitElement;\r\n // // }\r\n\r\n // // private buildEraser() {\r\n // // const eraserElement = $$(\"div\", {\r\n // // className: \"coveo-category-facet-header-eraser coveo-facet-header-eraser\",\r\n // // }, SVGIcons.icons.mainClear).el;\r\n\r\n // // SVGDom.addClassToSVGInContainer(eraserElement, \"coveo-facet-header-eraser-svg\");\r\n\r\n // // const onClearClick = () => {\r\n // // this.options.categoryFacet.reset();\r\n // // };\r\n\r\n // // new AccessibleButton()\r\n // // .withElement(eraserElement)\r\n // // .withLabel(l(\"Clear\", this.options.title))\r\n // // .withClickAction(onClearClick)\r\n // // .withEnterKeyboardAction(onClearClick)\r\n // // .build();\r\n\r\n // // return eraserElement;\r\n // // }\r\n\r\n // private buildToggleSection() {\r\n // const self = this;\r\n // const toggleSection = this.buildSection(\"coveo-facet-collapse-section-toggle\");\r\n // const iconClass = this.options.isCollapsed ? \"lef-chevron-down\" : \"lef-chevron-up\";\r\n // this.toggleIcon = this.buildIcon(iconClass);\r\n // toggleSection.append(this.toggleIcon);\r\n // const titleElem = $$(this.element).find(\".coveo-facet-header-title-section\");\r\n // if (titleElem) {\r\n // $$(titleElem).on(\"click\", function () { self.toggleFacet(); });\r\n // }\r\n // toggleSection.on(\"click\", function () { self.toggleFacet(); });\r\n // return toggleSection.el;\r\n // }\r\n\r\n // private buildSection(className: string) {\r\n // const section = $$(\"div\");\r\n // section.addClass([\"coveo-facet-collapse-section\", className]);\r\n // return section;\r\n // }\r\n\r\n // private buildIcon(iconClass?: string) {\r\n // if (iconClass) {\r\n // const icon = $$(\"div\", { className: iconClass });\r\n // return icon.el;\r\n // }\r\n // }\r\n\r\n // private toggleFacet() {\r\n // $$(this.element).toggleClass(\"coveo-facet-collapsed\");\r\n // $$(this.toggleIcon).toggleClass(\"lef-chevron-up\");\r\n // $$(this.toggleIcon).toggleClass(\"lef-chevron-down\");\r\n // }\r\n // }\r\n\r\n class CollapsibleCategoryFacet extends CategoryFacet {\r\n static ID = \"CollapsibleCategoryFacet\";\r\n static parent = CategoryFacet;\r\n\r\n static options: ICollapsibleCategoryFacetOptions = {\r\n field: ComponentOptions.buildFieldOption({ required: true }),\r\n isCollapsed: ComponentOptions.buildBooleanOption({ defaultValue: false }),\r\n useOuterCollapse: ComponentOptions.buildBooleanOption({ defaultValue: true }),\r\n };\r\n\r\n public options: ICollapsibleCategoryFacetOptions;\r\n \r\n private facetHeader: CategoryFacetHeader;\r\n private headerElement: HTMLElement;\r\n private toggleSection: HTMLElement;\r\n private toggleIcon: HTMLElement;\r\n\r\n\r\n constructor(public element: HTMLElement,\r\n options: ICollapsibleCategoryFacetOptions,\r\n bindings?: IComponentBindings) {\r\n super(element, ComponentOptions.initComponentOptions(element, CollapsibleCategoryFacet, options), bindings);\r\n // , CollapsibleCategoryFacet.ID);\r\n\r\n // this.options.enableCollapse = options.enableCollapse && !options.useOuterCollapse;\r\n this.options.isCollapsed = options.isCollapsed && options.useOuterCollapse;\r\n }\r\n\r\n public buildFacetHeader() {\r\n // const facetHeader = new CategoryFacetHeader({ categoryFacet: this, title: this.options.title });\r\n // this.headerElement = facetHeader.build();\r\n // $$(this.element).prepend(this.headerElement);\r\n\r\n const facetHeader = new CategoryFacetHeader({ // CollapsibleCategoryFacetHeader\r\n categoryFacet: this,\r\n title: this.options.title,\r\n // useOuterCollapse: true,\r\n // isCollapsed: this.options.isCollapsed\r\n });\r\n this.facetHeader = facetHeader;\r\n this.headerElement = facetHeader.build();\r\n\r\n const collapseSection = $$(\"div\", {\r\n className: \"coveo-facet-header-collapse-section\",\r\n });\r\n\r\n if (this.options.useOuterCollapse) {\r\n this.toggleSection = this.buildToggleSection();\r\n\r\n collapseSection.append(this.toggleSection);\r\n }\r\n $$(collapseSection.el).insertAfter($$(this.headerElement).find(\".coveo-facet-header-title-section\"));\r\n\r\n $$(this.element).prepend(this.headerElement);\r\n }\r\n\r\n private buildToggleSection() {\r\n const self = this;\r\n const toggleSection = this.buildSection(\"coveo-facet-collapse-section-toggle\");\r\n const iconClass = this.options.isCollapsed ? \"lef-chevron-down\" : \"lef-chevron-up\";\r\n this.toggleIcon = this.buildIcon(iconClass);\r\n toggleSection.append(this.toggleIcon);\r\n const titleElem = $$(this.element).find(\".coveo-facet-header-title-section\");\r\n if (titleElem) {\r\n $$(titleElem).on(\"click\", function () { self.toggleFacet(); });\r\n }\r\n toggleSection.on(\"click\", function () { self.toggleFacet(); });\r\n return toggleSection.el;\r\n }\r\n\r\n private buildSection(className: string) {\r\n const section = $$(\"div\");\r\n section.addClass([\"coveo-facet-collapse-section\", className]);\r\n return section;\r\n }\r\n\r\n private buildIcon(iconClass?: string) {\r\n if (iconClass) {\r\n const icon = $$(\"div\", { className: iconClass });\r\n return icon.el;\r\n }\r\n }\r\n\r\n private toggleFacet() {\r\n $$(this.headerElement).toggleClass(\"coveo-facet-collapsed\");\r\n $$(this.toggleIcon).toggleClass(\"lef-chevron-up\");\r\n $$(this.toggleIcon).toggleClass(\"lef-chevron-down\");\r\n }\r\n }\r\n\r\n Coveo.Initialization.registerAutoCreateComponent(CollapsibleCategoryFacet);\r\n return CollapsibleCategoryFacet;\r\n });\r\n}\r\n// Register the 'CollapseFacet' lazy component using the previously defined function.\r\nCoveo.LazyInitialization.registerLazyComponent(\"CollapsibleCategoryFacet\", lazyCollapseCategoryFacet);\r\n","import {\r\n $$,\r\n ComponentOptions,\r\n Facet,\r\n FacetHeader,\r\n FacetSettings,\r\n FacetSort,\r\n IComponentBindings,\r\n IComponentDefinition,\r\n IFacetHeaderOptions,\r\n IFacetOptions\r\n} from \"coveo-search-ui\";\r\n\r\nexport interface ICollapsibleFacetHeaderOptions extends IFacetHeaderOptions {\r\n useOuterCollapse?: boolean;\r\n isCollapsed?: boolean;\r\n}\r\n\r\nexport interface ICollapsibleFacetOptions extends IFacetOptions {\r\n useOuterCollapse?: boolean;\r\n isCollapsed?: boolean;\r\n}\r\n\r\nexport function lazyCollapseFacet() {\r\n // Wait for the 'Facet' promise to resolve, then return the 'CollapseFacet' implementation.\r\n return Coveo.load<IComponentDefinition>(\"Facet\").then((facet) => {\r\n class CollapsibleFacetHeader extends FacetHeader {\r\n private toggleSection: HTMLElement;\r\n private toggleIcon: HTMLElement;\r\n\r\n constructor(public options: ICollapsibleFacetHeaderOptions) {\r\n super(options);\r\n\r\n if (this.options.isCollapsed) {\r\n $$(this.options.facetElement).addClass(\"coveo-facet-collapsed\");\r\n }\r\n }\r\n\r\n public build(): HTMLElement {\r\n this.element = super.build();\r\n\r\n const collapseSection = $$(\"div\", {\r\n className: \"coveo-facet-header-collapse-section\"\r\n });\r\n\r\n if (this.options.useOuterCollapse) {\r\n this.toggleSection = this.buildToggleSection();\r\n\r\n collapseSection.append(this.toggleSection);\r\n }\r\n $$(collapseSection.el).insertAfter($$(this.element).find(\".coveo-facet-header-title-section\"));\r\n\r\n return this.element;\r\n }\r\n\r\n private buildToggleSection() {\r\n const self = this;\r\n const toggleSection = this.buildSection(\"coveo-facet-collapse-section-toggle\");\r\n const iconClass = this.options.isCollapsed ? \"lef-chevron-down\" : \"lef-chevron-up\";\r\n this.toggleIcon = this.buildIcon(iconClass);\r\n toggleSection.append(this.toggleIcon);\r\n const titleElem = $$(this.element).find(\".coveo-facet-header-title-section\");\r\n if (titleElem) {\r\n $$(titleElem).on(\"click\", function () { self.toggleFacet(); });\r\n }\r\n toggleSection.on(\"click\", function () { self.toggleFacet(); });\r\n return toggleSection.el;\r\n }\r\n\r\n private buildSection(className: string) {\r\n const section = $$(\"div\");\r\n section.addClass([\"coveo-facet-collapse-section\", className]);\r\n return section;\r\n }\r\n\r\n private buildIcon(iconClass?: string) {\r\n if (iconClass) {\r\n const icon = $$(\"div\", { className: iconClass });\r\n return icon.el;\r\n }\r\n }\r\n\r\n private toggleFacet() {\r\n $$(this.options.facetElement).toggleClass(\"coveo-facet-collapsed\");\r\n $$(this.toggleIcon).toggleClass(\"lef-chevron-up\");\r\n $$(this.toggleIcon).toggleClass(\"lef-chevron-down\");\r\n }\r\n }\r\n\r\n class CollapsibleFacet extends Facet {\r\n static ID = \"CollapsibleFacet\";\r\n static parent = Facet;\r\n\r\n static options: ICollapsibleFacetOptions = {\r\n useOuterCollapse: ComponentOptions.buildBooleanOption({ defaultValue: true }),\r\n isCollapsed: ComponentOptions.buildBooleanOption({ defaultValue: false })\r\n };\r\n\r\n public options: ICollapsibleFacetOptions;\r\n\r\n constructor(public element: HTMLElement,\r\n options: ICollapsibleFacetOptions,\r\n bindings?: IComponentBindings) {\r\n super(element, ComponentOptions.initComponentOptions(element, CollapsibleFacet, options), bindings, CollapsibleFacet.ID);\r\n\r\n this.options.enableCollapse = options.enableCollapse && !options.useOuterCollapse;\r\n this.options.isCollapsed = options.isCollapsed && options.useOuterCollapse;\r\n }\r\n\r\n public facetHeader: CollapsibleFacetHeader;\r\n\r\n private buildHeader() {\r\n let icon = this.options.headerIcon;\r\n if (this.options.headerIcon == this.options.field) {\r\n icon = undefined;\r\n }\r\n this.facetHeader = new CollapsibleFacetHeader({\r\n facetElement: this.element,\r\n title: this.options.title,\r\n icon: icon,\r\n field: <string>this.options.field,\r\n enableClearElement: true,\r\n enableCollapseElement: this.options.enableCollapse,\r\n facet: this,\r\n settingsKlass: this.options.enableSettings ? FacetSettings : undefined,\r\n sortKlass: FacetSort,\r\n availableSorts: this.options.availableSorts,\r\n useOuterCollapse: true,\r\n isCollapsed: this.options.isCollapsed\r\n });\r\n const built = this.facetHeader.build();\r\n this.facetSettings = this.facetHeader.settings;\r\n this.facetSort = this.facetHeader.sort;\r\n return built;\r\n }\r\n }\r\n\r\n Coveo.Initialization.registerAutoCreateComponent(CollapsibleFacet);\r\n return CollapsibleFacet;\r\n });\r\n}\r\n// Register the 'CollapseFacet' lazy component using the previously defined function.\r\nCoveo.LazyInitialization.registerLazyComponent(\"CollapsibleFacet\", lazyCollapseFacet);\r\n","module.exports = Coveo;"],"sourceRoot":""}