{"version":3,"file":"help-articles-bundle.js","mappings":"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","sources":["webpack://flippingbooksite/webpack/runtime/chunk loaded","webpack://flippingbooksite/webpack/runtime/create fake namespace object","webpack://flippingbooksite/webpack/runtime/load script","webpack://flippingbooksite/./node_modules/@flippingbook/web.utils/src/service.ts","webpack://flippingbooksite/./node_modules/@flippingbook/web.utils/src/storage/StorageProvider.ts","webpack://flippingbooksite/./node_modules/@flippingbook/web.utils/src/storage/index.ts","webpack://flippingbooksite/./sources/src/components/button/index.ts","webpack://flippingbooksite/./sources/src/pages/help-articles/article-list.ts","webpack://flippingbooksite/./sources/src/pages/help-articles/expandable-lists.ts","webpack://flippingbooksite/./sources/src/components/switch/index.ts","webpack://flippingbooksite/./sources/src/pages/help-articles/product-categories.ts","webpack://flippingbooksite/./sources/src/pages/help-articles/index.ts","webpack://flippingbooksite/./sources/src/util/image.ts","webpack://flippingbooksite/external var \"{\\\"locatorUrl\\\":\\\"https://registry-tc.dev.flippingbook.com/api\\\",\\\"featureFlags\\\":{},\\\"sentryDsn\\\":\\\"https://8fa71d45f6aa4a06be961166e0ee495b@sentry.io/1359544\\\",\\\"sentryEnable\\\":false}\"","webpack://flippingbooksite/webpack/bootstrap","webpack://flippingbooksite/webpack/runtime/amd options","webpack://flippingbooksite/webpack/runtime/compat get default export","webpack://flippingbooksite/webpack/runtime/define property getters","webpack://flippingbooksite/webpack/runtime/ensure chunk","webpack://flippingbooksite/webpack/runtime/get javascript chunk filename","webpack://flippingbooksite/webpack/runtime/get mini-css chunk filename","webpack://flippingbooksite/webpack/runtime/global","webpack://flippingbooksite/webpack/runtime/hasOwnProperty shorthand","webpack://flippingbooksite/webpack/runtime/make namespace object","webpack://flippingbooksite/webpack/runtime/node module decorator","webpack://flippingbooksite/webpack/runtime/runtimeId","webpack://flippingbooksite/webpack/runtime/publicPath","webpack://flippingbooksite/webpack/runtime/css loading","webpack://flippingbooksite/webpack/runtime/jsonp chunk loading","webpack://flippingbooksite/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","var getProto = Object.getPrototypeOf ? (obj) => (Object.getPrototypeOf(obj)) : (obj) => (obj.__proto__);\nvar leafPrototypes;\n// create a fake namespace object\n// mode & 1: value is a module id, require it\n// mode & 2: merge all properties of value into the ns\n// mode & 4: return value when already ns object\n// mode & 16: return value when it's Promise-like\n// mode & 8|1: behave like require\n__webpack_require__.t = function(value, mode) {\n\tif(mode & 1) value = this(value);\n\tif(mode & 8) return value;\n\tif(typeof value === 'object' && value) {\n\t\tif((mode & 4) && value.__esModule) return value;\n\t\tif((mode & 16) && typeof value.then === 'function') return value;\n\t}\n\tvar ns = Object.create(null);\n\t__webpack_require__.r(ns);\n\tvar def = {};\n\tleafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];\n\tfor(var current = mode & 2 && value; typeof current == 'object' && !~leafPrototypes.indexOf(current); current = getProto(current)) {\n\t\tObject.getOwnPropertyNames(current).forEach((key) => (def[key] = () => (value[key])));\n\t}\n\tdef['default'] = () => (value);\n\t__webpack_require__.d(ns, def);\n\treturn ns;\n};","var inProgress = {};\nvar dataWebpackPrefix = \"flippingbooksite:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = (url, done, key, chunkId) => {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = (prev, event) => {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach((fn) => (fn(event)));\n\t\tif(prev) return prev(event);\n\t}\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","import { readonly } from './types';\n\nexport interface IService {\n    listen(cb: () => void): void;\n    unlisten(cb: () => void): void;\n}\n\nexport abstract class Listenable {\n    private readonly listeners = new Set<() => void>();\n\n    listen(cb: () => void) {\n        this.listeners.add(cb);\n    }\n\n    unlisten(cb: () => void) {\n        this.listeners.delete(cb);\n    }\n\n    protected notify() {\n        this.listeners.forEach((l) => l());\n    }\n}\n\nexport abstract class Parametrized<P> {\n    protected params: P;\n\n    constructor(params: P) {\n        this.params = params;\n    }\n}\n\nexport abstract class ListenableParametrized<P> extends Listenable {\n    protected params: P;\n\n    constructor(params: P) {\n        super();\n        this.params = params;\n    }\n}\n\nexport interface IServiceDataStorage<T> extends IService {\n    getData(): Readonly<T> | null;\n    updateData(update: T): Readonly<T>;\n    overwriteData(newData: T | null): Readonly<T> | null;\n}\n\nexport class ServiceDataStorage<T> extends Listenable implements IServiceDataStorage<T> {\n    private data: Readonly<T> | null = null;\n\n    getData(): Readonly<T> | null {\n        return this.data === null ? null : readonly(this.data);\n    }\n\n    updateData(update: T): Readonly<T> {\n        this.data = {\n            ...(this.data || {}),\n            ...update,\n        };\n        this.notify();\n        return readonly(this.data);\n    }\n\n    overwriteData(newData: T | null): Readonly<T> | null {\n        this.data = newData;\n        this.notify();\n        return this.data === null ? null : readonly(this.data);\n    }\n}\n\nexport abstract class AbstractService<T extends object, P = Record<string, unknown>>\n    extends ListenableParametrized<P & { serviceStorage?: IServiceDataStorage<T> }>\n    implements IService\n{\n    protected storage: IServiceDataStorage<T>;\n\n    constructor(params: P & { serviceStorage?: IServiceDataStorage<T> }) {\n        super(params);\n\n        this.storage = params.serviceStorage ?? new ServiceDataStorage<T>();\n        this.storage.listen(() => this.notify());\n    }\n\n    protected get data(): Readonly<T> | null {\n        return this.storage.getData();\n    }\n\n    protected updateData(update: T): Readonly<T> {\n        return this.storage.updateData(update);\n    }\n\n    protected overwriteData(newData: T | null): Readonly<T> | null {\n        return this.storage.overwriteData(newData);\n    }\n}\n","import type { IStorageProvider } from './IStorageProvider';\n\ntype StorageType = 'sessionStorage' | 'localStorage';\n\nclass RealStorage implements IStorageProvider {\n    private baseObj: Storage;\n\n    constructor(baseObj: Storage) {\n        this.baseObj = baseObj;\n    }\n\n    get(key: string) {\n        return this.baseObj.getItem(key);\n    }\n\n    set(key: string, value: string) {\n        return this.baseObj.setItem(key, value);\n    }\n\n    remove(key: string) {\n        return this.baseObj.removeItem(key);\n    }\n\n    clear() {\n        return this.baseObj.clear();\n    }\n\n    getJSON<T>(key: string): T | null {\n        const val = this.get(key);\n        if (val) {\n            return JSON.parse(val) as T;\n        }\n        return null;\n    }\n\n    setJSON(key: string, value: unknown) {\n        return this.set(key, JSON.stringify(value));\n    }\n}\n\nclass ObjectStorage implements IStorageProvider {\n    private data: { [id: string]: string } = {};\n\n    get(key: string) {\n        return this.data[key];\n    }\n\n    set(key: string, value: string) {\n        this.data[key] = value;\n    }\n\n    remove(key: string) {\n        delete this.data[key];\n    }\n\n    clear() {\n        this.data = {};\n    }\n\n    getJSON<T>(key: string): T | null {\n        const val = this.get(key);\n        if (val) {\n            return JSON.parse(val) as T;\n        }\n        return null;\n    }\n\n    setJSON(key: string, value: unknown) {\n        return this.set(key, JSON.stringify(value));\n    }\n}\n\nconst isStorageSupported = (storage: StorageType) => {\n    try {\n        window[storage].setItem('test-storage-supported', '1');\n        window[storage].removeItem('test-storage-supported');\n        return true;\n    } catch {\n        return false;\n    }\n};\n\nconst getStorage = (storage: StorageType) => {\n    return isStorageSupported(storage) ? new RealStorage(window[storage]) : new ObjectStorage();\n};\n\nexport const localStorage: IStorageProvider = getStorage('localStorage');\nexport const sessionStorage: IStorageProvider = getStorage('sessionStorage');\nexport const objectStorage: IStorageProvider = new ObjectStorage();\n","export { IStorageProvider } from './IStorageProvider';\nexport { localStorage, sessionStorage, objectStorage } from './StorageProvider';\n","import { BemElement } from '../../pages/bem';\r\n\r\nexport abstract class Clickable<P extends Clickable.Params, E extends HTMLElement = HTMLElement> extends BemElement<\r\n    P,\r\n    E\r\n> {\r\n    onDescribe() {\r\n        super.onDescribe();\r\n        if (this.params.onClick) {\r\n            this.el.addEventListener('click', this.params.onClick);\r\n        }\r\n    }\r\n}\r\n\r\nexport namespace Clickable {\r\n    export interface Params {\r\n        onClick: ((ev: MouseEvent) => void) | (() => void);\r\n    }\r\n}\r\n\r\nexport class Button extends Clickable<Button.Params, HTMLButtonElement> {}\r\n\r\nexport namespace Button {\r\n    export interface Params extends Clickable.Params {}\r\n}\r\n\r\nexport class LinkButton extends Clickable<LinkButton.Params, HTMLAnchorElement> {}\r\n\r\nexport namespace LinkButton {\r\n    export interface Params extends Clickable.Params {}\r\n}\r\n","import { Button } from '../../components/button';\r\nimport { BemBlock } from '../bem';\r\n\r\nimport type { ExpandableLists } from './expandable-lists';\r\n\r\nexport class ArticleList extends BemBlock<ArticleList.Params> {\r\n    protected blockName() {\r\n        return 'S-Help-Article-List';\r\n    }\r\n\r\n    private expanded = false;\r\n\r\n    isExpanded() {\r\n        return this.expanded;\r\n    }\r\n\r\n    private hiddenList: HTMLElement | null = null;\r\n    private expandRequestId = 0;\r\n\r\n    private handelHiddenListExpended = () => {\r\n        if (this.hiddenList === null) {\r\n            return;\r\n        }\r\n\r\n        const hiddenList = this.hiddenList;\r\n\r\n        hiddenList.removeEventListener('transitionend', this.handelHiddenListExpended);\r\n        hiddenList.style.maxHeight = 'none';\r\n    };\r\n\r\n    expand() {\r\n        if (this.expanded || this.hiddenList === null) {\r\n            return;\r\n        }\r\n\r\n        this.expanded = true;\r\n\r\n        const hiddenList = this.hiddenList;\r\n\r\n        hiddenList.removeEventListener('transitionend', this.handelHiddenListExpended);\r\n        cancelAnimationFrame(this.expandRequestId);\r\n\r\n        hiddenList.addEventListener('transitionend', this.handelHiddenListExpended);\r\n\r\n        this.expandRequestId = requestAnimationFrame(() => {\r\n            hiddenList.style.maxHeight = `${hiddenList.scrollHeight}px`;\r\n            this.applyModifiers({ expanded: true });\r\n        });\r\n    }\r\n\r\n    collapse() {\r\n        if (!this.expanded || this.hiddenList === null) {\r\n            return;\r\n        }\r\n\r\n        this.expanded = false;\r\n\r\n        const hiddenList = this.hiddenList;\r\n\r\n        hiddenList.removeEventListener('transitionend', this.handelHiddenListExpended);\r\n        cancelAnimationFrame(this.expandRequestId);\r\n\r\n        this.expandRequestId = requestAnimationFrame(() => {\r\n            hiddenList.style.maxHeight = '';\r\n            this.applyModifiers({ expanded: false });\r\n        });\r\n    }\r\n\r\n    onDescribe() {\r\n        const expandButtonName = 'expand';\r\n\r\n        if (!this.element(expandButtonName)) {\r\n            return;\r\n        }\r\n\r\n        this.hiddenList = this.element('hidden-list');\r\n\r\n        const expandButtonParams: Button.Params = {\r\n            onClick: () => {\r\n                this.expand();\r\n                this.params.expandableLists.checkAllExpandedStatus();\r\n            },\r\n        };\r\n\r\n        this.describeElement(expandButtonName, Button, expandButtonParams);\r\n\r\n        this.params.expandableLists.addExpandableList(this);\r\n    }\r\n}\r\n\r\nnamespace ArticleList {\r\n    export interface Params {\r\n        expandableLists: ExpandableLists;\r\n    }\r\n}\r\n","import { Listenable } from '@flippingbook/web.utils/dist/service';\r\n\r\nimport type { ArticleList } from './article-list';\r\n\r\nexport class ExpandableLists extends Listenable {\r\n    private articleLists: ArticleList[] = [];\r\n\r\n    addExpandableList(articleLists: ArticleList) {\r\n        this.articleLists.push(articleLists);\r\n    }\r\n\r\n    expandLists() {\r\n        for (const list of this.articleLists) {\r\n            list.expand();\r\n        }\r\n    }\r\n\r\n    collapseLists() {\r\n        for (const list of this.articleLists) {\r\n            list.collapse();\r\n        }\r\n    }\r\n\r\n    checkAllExpandedStatus() {\r\n        const isAllExpanded = this.articleLists.every((list) => list.isExpanded());\r\n\r\n        if (isAllExpanded) {\r\n            this.notify();\r\n        }\r\n    }\r\n}\r\n","import { BemBlock, BemElement } from '../../pages/bem';\r\n\r\nimport './styles/index.css';\r\n\r\nexport class Switch extends BemBlock<Switch.Params> {\r\n    protected blockName() {\r\n        return 'S-Switch';\r\n    }\r\n\r\n    private checkboxInput = this.describeElement('input', Switch.Input, this.params);\r\n\r\n    setChecked(value: boolean) {\r\n        this.checkboxInput.setChecked(value);\r\n    }\r\n}\r\n\r\nexport namespace Switch {\r\n    export interface Params {\r\n        onInit?: (checked: boolean) => void;\r\n        onChange: (checked: boolean) => void;\r\n    }\r\n\r\n    export class Input extends BemElement<Params, HTMLInputElement> {\r\n        setChecked(value: boolean) {\r\n            this.el.checked = value;\r\n        }\r\n\r\n        onDescribe() {\r\n            this.el.addEventListener('change', () => this.params.onChange(this.el.checked));\r\n\r\n            if (this.params.onInit) {\r\n                this.params.onInit(this.el.checked);\r\n            }\r\n        }\r\n    }\r\n}\r\n","import { Switch } from '../../components/switch';\r\nimport { runWithNewTask } from '../../util/run-with-new-task';\r\nimport { BemBlock } from '../bem';\r\n\r\nimport type { ExpandableLists } from './expandable-lists';\r\n\r\nexport class ProductCategories extends BemBlock<ProductCategories.Params> {\r\n    protected blockName() {\r\n        return 'S-Help-Product-Categories';\r\n    }\r\n\r\n    onDescribe() {\r\n        void runWithNewTask(() => {\r\n            const switchParams: Switch.Params = {\r\n                onChange: (checked: boolean) => {\r\n                    if (checked) {\r\n                        this.params.expandableLists.expandLists();\r\n                        return;\r\n                    }\r\n\r\n                    this.params.expandableLists.collapseLists();\r\n                },\r\n            };\r\n\r\n            const showAllSwitch = this.describeBlock('show-all-switch', Switch, switchParams);\r\n\r\n            this.params.expandableLists.listen(() => showAllSwitch.setChecked(true));\r\n        });\r\n    }\r\n}\r\n\r\nnamespace ProductCategories {\r\n    export interface Params {\r\n        expandableLists: ExpandableLists;\r\n    }\r\n}\r\n","import { BasePage } from '../../components/base-page';\r\nimport { runWithNewTask } from '../../util/run-with-new-task';\r\n\r\nimport { ArticleList } from './article-list';\r\nimport { ExpandableLists } from './expandable-lists';\r\nimport { ProductCategories } from './product-categories';\r\n\r\nimport './styles/index.css';\r\n\r\nclass HelpArticlesPage extends BasePage<HelpArticlesPage.Params> {\r\n    protected blockName() {\r\n        return 'S-Help';\r\n    }\r\n\r\n    onDescribe() {\r\n        super.onDescribe();\r\n\r\n        const { commonSection } = this.params;\r\n\r\n        if (commonSection) {\r\n            return;\r\n        }\r\n\r\n        const expandableLists = new ExpandableLists();\r\n\r\n        void runWithNewTask(() => {\r\n            this.describeAllBlocks('section', ProductCategories, { expandableLists });\r\n        });\r\n\r\n        void runWithNewTask(() => {\r\n            this.describeAllBlocks('article-list', ArticleList, { expandableLists });\r\n        });\r\n    }\r\n}\r\n\r\nnamespace HelpArticlesPage {\r\n    export interface Params {\r\n        commonSection: boolean;\r\n    }\r\n}\r\n\r\nexport { HelpArticlesPage as page };\r\n","function waitForImageLoad(image: HTMLImageElement) {\r\n    return new Promise<void>((resolve) => {\r\n        if (image.complete) {\r\n            resolve();\r\n            return;\r\n        }\r\n\r\n        const handleImageLoad = () => {\r\n            image.removeEventListener('load', handleImageLoad);\r\n            resolve();\r\n        };\r\n\r\n        image.addEventListener('load', handleImageLoad);\r\n    });\r\n}\r\n\r\nfunction getImageLoadList(params: { container?: HTMLElement; classNames: string[] }) {\r\n    const selector = params.classNames.map((c) => `.${c}`).join(', ');\r\n    const container = params.container || document;\r\n    const imgElements = Array.from(container.querySelectorAll<HTMLImageElement>(selector));\r\n\r\n    return imgElements.map((imgElement) => waitForImageLoad(imgElement));\r\n}\r\n\r\nexport function waitForAllImagesLoad(params: { container?: HTMLElement; classNames: string[] }) {\r\n    const loadList = getImageLoadList(params);\r\n    return Promise.all(loadList);\r\n}\r\n\r\nexport function waitForAnyImagesLoad(params: { container?: HTMLElement; classNames: string[] }) {\r\n    const loadList = getImageLoadList(params);\r\n    return Promise.race(loadList);\r\n}\r\n\r\nexport function setLoadedClassForImage() {\r\n    const imgElements = Array.from(document.querySelectorAll<HTMLImageElement>('img'));\r\n    const loadedClassName = 'loaded';\r\n\r\n    imgElements.forEach((imgElement) => {\r\n        if (imgElement.complete) {\r\n            imgElement.classList.add(loadedClassName);\r\n            return;\r\n        }\r\n\r\n        const handleImageLoad = () => {\r\n            imgElement.removeEventListener('load', handleImageLoad);\r\n            imgElement.classList.add(loadedClassName);\r\n        };\r\n\r\n        imgElement.addEventListener('load', handleImageLoad);\r\n    });\r\n}\r\n","module.exports = {\"locatorUrl\":\"https://registry-tc.dev.flippingbook.com/api\",\"featureFlags\":{},\"sentryDsn\":\"https://8fa71d45f6aa4a06be961166e0ee495b@sentry.io/1359544\",\"sentryEnable\":false};","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdO = {};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = (chunkId) => {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-bundle.js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = (chunkId) => {\n\t// return url for filenames based on template\n\treturn \"\" + chunkId + \"-bundle.css\";\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 4730;","__webpack_require__.p = \"/content/\";","if (typeof document === \"undefined\") return;\nvar createStylesheet = (chunkId, fullhref, oldTag, resolve, reject) => {\n\tvar linkTag = document.createElement(\"link\");\n\n\tlinkTag.rel = \"stylesheet\";\n\tlinkTag.type = \"text/css\";\n\tif (__webpack_require__.nc) {\n\t\tlinkTag.nonce = __webpack_require__.nc;\n\t}\n\tvar onLinkComplete = (event) => {\n\t\t// avoid mem leaks.\n\t\tlinkTag.onerror = linkTag.onload = null;\n\t\tif (event.type === 'load') {\n\t\t\tresolve();\n\t\t} else {\n\t\t\tvar errorType = event && event.type;\n\t\t\tvar realHref = event && event.target && event.target.href || fullhref;\n\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + errorType + \": \" + realHref + \")\");\n\t\t\terr.name = \"ChunkLoadError\";\n\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n\t\t\terr.type = errorType;\n\t\t\terr.request = realHref;\n\t\t\tif (linkTag.parentNode) linkTag.parentNode.removeChild(linkTag)\n\t\t\treject(err);\n\t\t}\n\t}\n\tlinkTag.onerror = linkTag.onload = onLinkComplete;\n\tlinkTag.href = fullhref;\n\n\n\tif (oldTag) {\n\t\toldTag.parentNode.insertBefore(linkTag, oldTag.nextSibling);\n\t} else {\n\t\tdocument.head.appendChild(linkTag);\n\t}\n\treturn linkTag;\n};\nvar findStylesheet = (href, fullhref) => {\n\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n\tfor(var i = 0; i < existingLinkTags.length; i++) {\n\t\tvar tag = existingLinkTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return tag;\n\t}\n\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n\tfor(var i = 0; i < existingStyleTags.length; i++) {\n\t\tvar tag = existingStyleTags[i];\n\t\tvar dataHref = tag.getAttribute(\"data-href\");\n\t\tif(dataHref === href || dataHref === fullhref) return tag;\n\t}\n};\nvar loadStylesheet = (chunkId) => {\n\treturn new Promise((resolve, reject) => {\n\t\tvar href = __webpack_require__.miniCssF(chunkId);\n\t\tvar fullhref = __webpack_require__.p + href;\n\t\tif(findStylesheet(href, fullhref)) return resolve();\n\t\tcreateStylesheet(chunkId, fullhref, null, resolve, reject);\n\t});\n}\n// object to store loaded CSS chunks\nvar installedCssChunks = {\n\t1392: 0,\n\t4730: 0\n};\n\n__webpack_require__.f.miniCss = (chunkId, promises) => {\n\tvar cssChunks = {\"957\":1,\"1597\":1,\"2989\":1,\"5515\":1,\"6783\":1,\"9974\":1};\n\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n\t\tpromises.push(installedCssChunks[chunkId] = loadStylesheet(chunkId).then(() => {\n\t\t\tinstalledCssChunks[chunkId] = 0;\n\t\t}, (e) => {\n\t\t\tdelete installedCssChunks[chunkId];\n\t\t\tthrow e;\n\t\t}));\n\t}\n};\n\n// no hmr\n\n// no prefetching\n\n// no preloaded","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t1392: 0,\n\t4730: 0,\n\t4514: 0,\n\t5949: 0,\n\t5908: 0,\n\t9876: 0,\n\t5177: 0\n};\n\n__webpack_require__.f.j = (chunkId, promises) => {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(!/^(5(177|908|949)|1597|4514|9876|9974)$/.test(chunkId)) {\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise((resolve, reject) => (installedChunkData = installedChunks[chunkId] = [resolve, reject]));\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = (event) => {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = globalThis[\"webpackChunkflippingbooksite\"] = globalThis[\"webpackChunkflippingbooksite\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [4514,5949,5908,9876,5177,8351,4829], () => (__webpack_require__(51539)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","leafPrototypes","getProto","inProgress","dataWebpackPrefix","Listenable","listeners","Set","listen","cb","this","add","unlisten","delete","notify","forEach","l","constructor","params","ListenableParametrized","super","ServiceDataStorage","data","getData","readonly","updateData","update","overwriteData","newData","storage","serviceStorage","RealStorage","baseObj","get","key","getItem","set","value","setItem","remove","removeItem","clear","getJSON","val","JSON","parse","setJSON","stringify","ObjectStorage","getStorage","window","isStorageSupported","localStorage","sessionStorage","objectStorage","Clickable","B","onDescribe","onClick","el","addEventListener","Button","ArticleList","expanded","hiddenList","expandRequestId","handelHiddenListExpended","removeEventListener","style","maxHeight","blockName","isExpanded","expand","cancelAnimationFrame","requestAnimationFrame","scrollHeight","applyModifiers","collapse","expandButtonName","element","expandButtonParams","expandableLists","checkAllExpandedStatus","describeElement","addExpandableList","ExpandableLists","articleLists","push","expandLists","list","collapseLists","every","Switch","checkboxInput","Input","setChecked","checked","onChange","onInit","ProductCategories","switchParams","showAllSwitch","describeBlock","HelpArticlesPage","commonSection","describeAllBlocks","setLoadedClassForImage","imgElements","Array","from","document","querySelectorAll","loadedClassName","imgElement","complete","classList","handleImageLoad","module","exports","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","id","loaded","__webpack_modules__","call","m","amdO","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","length","fulfilled","j","Object","keys","splice","r","n","getter","__esModule","d","a","getPrototypeOf","obj","t","mode","then","ns","create","def","current","indexOf","getOwnPropertyNames","definition","o","defineProperty","enumerable","f","e","chunkId","Promise","all","reduce","promises","u","miniCssF","g","globalThis","Function","prop","prototype","hasOwnProperty","url","done","script","needAttach","scripts","getElementsByTagName","s","getAttribute","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","event","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","setTimeout","bind","type","target","head","appendChild","Symbol","toStringTag","nmd","paths","children","p","loadStylesheet","resolve","reject","href","fullhref","existingLinkTags","dataHref","tag","rel","existingStyleTags","findStylesheet","oldTag","linkTag","nonce","errorType","realHref","err","Error","name","code","request","insertBefore","nextSibling","createStylesheet","installedCssChunks","miniCss","installedChunks","installedChunkData","test","promise","error","realSrc","message","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}