{"version":3,"sources":["node_modules/ngx-color-picker/fesm2022/ngx-color-picker.mjs","src/app/_services/localization.service.ts","src/app/user-settings/user-preferences/user-preferences.component.ts","src/app/user-settings/user-preferences/user-preferences.component.html","src/app/_routes/user-settings-routing.module.ts"],"sourcesContent":["import * as i0 from '@angular/core';\nimport { EventEmitter, Directive, Input, Output, HostListener, Injectable, PLATFORM_ID, Component, ViewEncapsulation, Inject, ViewChild, Injector, NgModule } from '@angular/core';\nimport * as i2 from '@angular/common';\nimport { isPlatformBrowser, DOCUMENT, CommonModule } from '@angular/common';\nconst _c0 = [\"dialogPopup\"];\nconst _c1 = [\"hueSlider\"];\nconst _c2 = [\"alphaSlider\"];\nfunction ColorPickerComponent_div_2_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelement(0, \"div\");\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵclassMapInterpolate1(\"arrow arrow-\", ctx_r1.cpUsePosition, \"\");\n i0.ɵɵstyleProp(\"left\", ctx_r1.cpArrowPosition)(\"top\", ctx_r1.arrowTop, \"px\");\n }\n}\nfunction ColorPickerComponent_div_3_Template(rf, ctx) {\n if (rf & 1) {\n const _r3 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"div\", 28);\n i0.ɵɵlistener(\"newValue\", function ColorPickerComponent_div_3_Template_div_newValue_0_listener($event) {\n i0.ɵɵrestoreView(_r3);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onColorChange($event));\n })(\"dragStart\", function ColorPickerComponent_div_3_Template_div_dragStart_0_listener() {\n i0.ɵɵrestoreView(_r3);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onDragStart(\"saturation-lightness\"));\n })(\"dragEnd\", function ColorPickerComponent_div_3_Template_div_dragEnd_0_listener() {\n i0.ɵɵrestoreView(_r3);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onDragEnd(\"saturation-lightness\"));\n });\n i0.ɵɵelement(1, \"div\", 16);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵstyleProp(\"background-color\", ctx_r1.hueSliderColor);\n i0.ɵɵproperty(\"rgX\", 1)(\"rgY\", 1);\n i0.ɵɵadvance();\n i0.ɵɵstyleProp(\"top\", ctx_r1.slider == null ? null : ctx_r1.slider.v, \"px\")(\"left\", ctx_r1.slider == null ? null : ctx_r1.slider.s, \"px\");\n }\n}\nfunction ColorPickerComponent__svg_svg_8_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵnamespaceSVG();\n i0.ɵɵelementStart(0, \"svg\", 29);\n i0.ɵɵelement(1, \"path\", 30)(2, \"path\", 31);\n i0.ɵɵelementEnd();\n }\n}\nfunction ColorPickerComponent_button_9_Template(rf, ctx) {\n if (rf & 1) {\n const _r4 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"button\", 32);\n i0.ɵɵlistener(\"click\", function ColorPickerComponent_button_9_Template_button_click_0_listener($event) {\n i0.ɵɵrestoreView(_r4);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onAddPresetColor($event, ctx_r1.selectedColor));\n });\n i0.ɵɵtext(1);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵclassMap(ctx_r1.cpAddColorButtonClass);\n i0.ɵɵproperty(\"disabled\", ctx_r1.cpPresetColors && ctx_r1.cpPresetColors.length >= ctx_r1.cpMaxPresetColorsLength);\n i0.ɵɵadvance();\n i0.ɵɵtextInterpolate1(\" \", ctx_r1.cpAddColorButtonText, \" \");\n }\n}\nfunction ColorPickerComponent_div_11_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelement(0, \"div\", 33);\n }\n}\nfunction ColorPickerComponent_div_21_input_6_Template(rf, ctx) {\n if (rf & 1) {\n const _r6 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"input\", 39);\n i0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_21_input_6_Template_input_keyup_enter_0_listener($event) {\n i0.ɵɵrestoreView(_r6);\n const ctx_r1 = i0.ɵɵnextContext(2);\n return i0.ɵɵresetView(ctx_r1.onAcceptColor($event));\n })(\"newValue\", function ColorPickerComponent_div_21_input_6_Template_input_newValue_0_listener($event) {\n i0.ɵɵrestoreView(_r6);\n const ctx_r1 = i0.ɵɵnextContext(2);\n return i0.ɵɵresetView(ctx_r1.onAlphaInput($event));\n });\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext(2);\n i0.ɵɵproperty(\"rg\", 1)(\"value\", ctx_r1.cmykText == null ? null : ctx_r1.cmykText.a);\n }\n}\nfunction ColorPickerComponent_div_21_div_16_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\");\n i0.ɵɵtext(1, \"A\");\n i0.ɵɵelementEnd();\n }\n}\nfunction ColorPickerComponent_div_21_Template(rf, ctx) {\n if (rf & 1) {\n const _r5 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"div\", 34)(1, \"div\", 35)(2, \"input\", 36);\n i0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_21_Template_input_keyup_enter_2_listener($event) {\n i0.ɵɵrestoreView(_r5);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onAcceptColor($event));\n })(\"newValue\", function ColorPickerComponent_div_21_Template_input_newValue_2_listener($event) {\n i0.ɵɵrestoreView(_r5);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onCyanInput($event));\n });\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(3, \"input\", 36);\n i0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_21_Template_input_keyup_enter_3_listener($event) {\n i0.ɵɵrestoreView(_r5);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onAcceptColor($event));\n })(\"newValue\", function ColorPickerComponent_div_21_Template_input_newValue_3_listener($event) {\n i0.ɵɵrestoreView(_r5);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onMagentaInput($event));\n });\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(4, \"input\", 36);\n i0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_21_Template_input_keyup_enter_4_listener($event) {\n i0.ɵɵrestoreView(_r5);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onAcceptColor($event));\n })(\"newValue\", function ColorPickerComponent_div_21_Template_input_newValue_4_listener($event) {\n i0.ɵɵrestoreView(_r5);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onYellowInput($event));\n });\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(5, \"input\", 36);\n i0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_21_Template_input_keyup_enter_5_listener($event) {\n i0.ɵɵrestoreView(_r5);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onAcceptColor($event));\n })(\"newValue\", function ColorPickerComponent_div_21_Template_input_newValue_5_listener($event) {\n i0.ɵɵrestoreView(_r5);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onBlackInput($event));\n });\n i0.ɵɵelementEnd();\n i0.ɵɵtemplate(6, ColorPickerComponent_div_21_input_6_Template, 1, 2, \"input\", 37);\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(7, \"div\", 35)(8, \"div\");\n i0.ɵɵtext(9, \"C\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(10, \"div\");\n i0.ɵɵtext(11, \"M\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(12, \"div\");\n i0.ɵɵtext(13, \"Y\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(14, \"div\");\n i0.ɵɵtext(15, \"K\");\n i0.ɵɵelementEnd();\n i0.ɵɵtemplate(16, ColorPickerComponent_div_21_div_16_Template, 2, 0, \"div\", 38);\n i0.ɵɵelementEnd()();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵstyleProp(\"display\", ctx_r1.format !== 3 ? \"none\" : \"block\");\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"rg\", 100)(\"value\", ctx_r1.cmykText == null ? null : ctx_r1.cmykText.c);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"rg\", 100)(\"value\", ctx_r1.cmykText == null ? null : ctx_r1.cmykText.m);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"rg\", 100)(\"value\", ctx_r1.cmykText == null ? null : ctx_r1.cmykText.y);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"rg\", 100)(\"value\", ctx_r1.cmykText == null ? null : ctx_r1.cmykText.k);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", ctx_r1.cpAlphaChannel !== \"disabled\");\n i0.ɵɵadvance(10);\n i0.ɵɵproperty(\"ngIf\", ctx_r1.cpAlphaChannel !== \"disabled\");\n }\n}\nfunction ColorPickerComponent_div_22_input_5_Template(rf, ctx) {\n if (rf & 1) {\n const _r8 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"input\", 39);\n i0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_22_input_5_Template_input_keyup_enter_0_listener($event) {\n i0.ɵɵrestoreView(_r8);\n const ctx_r1 = i0.ɵɵnextContext(2);\n return i0.ɵɵresetView(ctx_r1.onAcceptColor($event));\n })(\"newValue\", function ColorPickerComponent_div_22_input_5_Template_input_newValue_0_listener($event) {\n i0.ɵɵrestoreView(_r8);\n const ctx_r1 = i0.ɵɵnextContext(2);\n return i0.ɵɵresetView(ctx_r1.onAlphaInput($event));\n });\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext(2);\n i0.ɵɵproperty(\"rg\", 1)(\"value\", ctx_r1.hslaText == null ? null : ctx_r1.hslaText.a);\n }\n}\nfunction ColorPickerComponent_div_22_div_13_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\");\n i0.ɵɵtext(1, \"A\");\n i0.ɵɵelementEnd();\n }\n}\nfunction ColorPickerComponent_div_22_Template(rf, ctx) {\n if (rf & 1) {\n const _r7 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"div\", 40)(1, \"div\", 35)(2, \"input\", 41);\n i0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_22_Template_input_keyup_enter_2_listener($event) {\n i0.ɵɵrestoreView(_r7);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onAcceptColor($event));\n })(\"newValue\", function ColorPickerComponent_div_22_Template_input_newValue_2_listener($event) {\n i0.ɵɵrestoreView(_r7);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onHueInput($event));\n });\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(3, \"input\", 36);\n i0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_22_Template_input_keyup_enter_3_listener($event) {\n i0.ɵɵrestoreView(_r7);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onAcceptColor($event));\n })(\"newValue\", function ColorPickerComponent_div_22_Template_input_newValue_3_listener($event) {\n i0.ɵɵrestoreView(_r7);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onSaturationInput($event));\n });\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(4, \"input\", 36);\n i0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_22_Template_input_keyup_enter_4_listener($event) {\n i0.ɵɵrestoreView(_r7);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onAcceptColor($event));\n })(\"newValue\", function ColorPickerComponent_div_22_Template_input_newValue_4_listener($event) {\n i0.ɵɵrestoreView(_r7);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onLightnessInput($event));\n });\n i0.ɵɵelementEnd();\n i0.ɵɵtemplate(5, ColorPickerComponent_div_22_input_5_Template, 1, 2, \"input\", 37);\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(6, \"div\", 35)(7, \"div\");\n i0.ɵɵtext(8, \"H\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(9, \"div\");\n i0.ɵɵtext(10, \"S\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(11, \"div\");\n i0.ɵɵtext(12, \"L\");\n i0.ɵɵelementEnd();\n i0.ɵɵtemplate(13, ColorPickerComponent_div_22_div_13_Template, 2, 0, \"div\", 38);\n i0.ɵɵelementEnd()();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵstyleProp(\"display\", ctx_r1.format !== 2 ? \"none\" : \"block\");\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"rg\", 360)(\"value\", ctx_r1.hslaText == null ? null : ctx_r1.hslaText.h);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"rg\", 100)(\"value\", ctx_r1.hslaText == null ? null : ctx_r1.hslaText.s);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"rg\", 100)(\"value\", ctx_r1.hslaText == null ? null : ctx_r1.hslaText.l);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", ctx_r1.cpAlphaChannel !== \"disabled\");\n i0.ɵɵadvance(8);\n i0.ɵɵproperty(\"ngIf\", ctx_r1.cpAlphaChannel !== \"disabled\");\n }\n}\nfunction ColorPickerComponent_div_23_input_5_Template(rf, ctx) {\n if (rf & 1) {\n const _r10 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"input\", 39);\n i0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_23_input_5_Template_input_keyup_enter_0_listener($event) {\n i0.ɵɵrestoreView(_r10);\n const ctx_r1 = i0.ɵɵnextContext(2);\n return i0.ɵɵresetView(ctx_r1.onAcceptColor($event));\n })(\"newValue\", function ColorPickerComponent_div_23_input_5_Template_input_newValue_0_listener($event) {\n i0.ɵɵrestoreView(_r10);\n const ctx_r1 = i0.ɵɵnextContext(2);\n return i0.ɵɵresetView(ctx_r1.onAlphaInput($event));\n });\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext(2);\n i0.ɵɵproperty(\"rg\", 1)(\"value\", ctx_r1.rgbaText == null ? null : ctx_r1.rgbaText.a);\n }\n}\nfunction ColorPickerComponent_div_23_div_13_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\");\n i0.ɵɵtext(1, \"A\");\n i0.ɵɵelementEnd();\n }\n}\nfunction ColorPickerComponent_div_23_Template(rf, ctx) {\n if (rf & 1) {\n const _r9 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"div\", 42)(1, \"div\", 35)(2, \"input\", 43);\n i0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_23_Template_input_keyup_enter_2_listener($event) {\n i0.ɵɵrestoreView(_r9);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onAcceptColor($event));\n })(\"newValue\", function ColorPickerComponent_div_23_Template_input_newValue_2_listener($event) {\n i0.ɵɵrestoreView(_r9);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onRedInput($event));\n });\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(3, \"input\", 43);\n i0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_23_Template_input_keyup_enter_3_listener($event) {\n i0.ɵɵrestoreView(_r9);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onAcceptColor($event));\n })(\"newValue\", function ColorPickerComponent_div_23_Template_input_newValue_3_listener($event) {\n i0.ɵɵrestoreView(_r9);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onGreenInput($event));\n });\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(4, \"input\", 43);\n i0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_23_Template_input_keyup_enter_4_listener($event) {\n i0.ɵɵrestoreView(_r9);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onAcceptColor($event));\n })(\"newValue\", function ColorPickerComponent_div_23_Template_input_newValue_4_listener($event) {\n i0.ɵɵrestoreView(_r9);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onBlueInput($event));\n });\n i0.ɵɵelementEnd();\n i0.ɵɵtemplate(5, ColorPickerComponent_div_23_input_5_Template, 1, 2, \"input\", 37);\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(6, \"div\", 35)(7, \"div\");\n i0.ɵɵtext(8, \"R\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(9, \"div\");\n i0.ɵɵtext(10, \"G\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(11, \"div\");\n i0.ɵɵtext(12, \"B\");\n i0.ɵɵelementEnd();\n i0.ɵɵtemplate(13, ColorPickerComponent_div_23_div_13_Template, 2, 0, \"div\", 38);\n i0.ɵɵelementEnd()();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵstyleProp(\"display\", ctx_r1.format !== 1 ? \"none\" : \"block\");\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"rg\", 255)(\"value\", ctx_r1.rgbaText == null ? null : ctx_r1.rgbaText.r);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"rg\", 255)(\"value\", ctx_r1.rgbaText == null ? null : ctx_r1.rgbaText.g);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"rg\", 255)(\"value\", ctx_r1.rgbaText == null ? null : ctx_r1.rgbaText.b);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", ctx_r1.cpAlphaChannel !== \"disabled\");\n i0.ɵɵadvance(8);\n i0.ɵɵproperty(\"ngIf\", ctx_r1.cpAlphaChannel !== \"disabled\");\n }\n}\nfunction ColorPickerComponent_div_24_input_3_Template(rf, ctx) {\n if (rf & 1) {\n const _r12 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"input\", 39);\n i0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_24_input_3_Template_input_keyup_enter_0_listener($event) {\n i0.ɵɵrestoreView(_r12);\n const ctx_r1 = i0.ɵɵnextContext(2);\n return i0.ɵɵresetView(ctx_r1.onAcceptColor($event));\n })(\"newValue\", function ColorPickerComponent_div_24_input_3_Template_input_newValue_0_listener($event) {\n i0.ɵɵrestoreView(_r12);\n const ctx_r1 = i0.ɵɵnextContext(2);\n return i0.ɵɵresetView(ctx_r1.onAlphaInput($event));\n });\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext(2);\n i0.ɵɵproperty(\"rg\", 1)(\"value\", ctx_r1.hexAlpha);\n }\n}\nfunction ColorPickerComponent_div_24_div_7_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\");\n i0.ɵɵtext(1, \"A\");\n i0.ɵɵelementEnd();\n }\n}\nfunction ColorPickerComponent_div_24_Template(rf, ctx) {\n if (rf & 1) {\n const _r11 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"div\", 44)(1, \"div\", 35)(2, \"input\", 45);\n i0.ɵɵlistener(\"blur\", function ColorPickerComponent_div_24_Template_input_blur_2_listener() {\n i0.ɵɵrestoreView(_r11);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onHexInput(null));\n })(\"keyup.enter\", function ColorPickerComponent_div_24_Template_input_keyup_enter_2_listener($event) {\n i0.ɵɵrestoreView(_r11);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onAcceptColor($event));\n })(\"newValue\", function ColorPickerComponent_div_24_Template_input_newValue_2_listener($event) {\n i0.ɵɵrestoreView(_r11);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onHexInput($event));\n });\n i0.ɵɵelementEnd();\n i0.ɵɵtemplate(3, ColorPickerComponent_div_24_input_3_Template, 1, 2, \"input\", 37);\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(4, \"div\", 35)(5, \"div\");\n i0.ɵɵtext(6, \"Hex\");\n i0.ɵɵelementEnd();\n i0.ɵɵtemplate(7, ColorPickerComponent_div_24_div_7_Template, 2, 0, \"div\", 38);\n i0.ɵɵelementEnd()();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵstyleProp(\"display\", ctx_r1.format !== 0 ? \"none\" : \"block\");\n i0.ɵɵclassProp(\"hex-alpha\", ctx_r1.cpAlphaChannel === \"forced\");\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"value\", ctx_r1.hexText);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", ctx_r1.cpAlphaChannel === \"forced\");\n i0.ɵɵadvance(4);\n i0.ɵɵproperty(\"ngIf\", ctx_r1.cpAlphaChannel === \"forced\");\n }\n}\nfunction ColorPickerComponent_div_25_input_3_Template(rf, ctx) {\n if (rf & 1) {\n const _r14 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"input\", 39);\n i0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_25_input_3_Template_input_keyup_enter_0_listener($event) {\n i0.ɵɵrestoreView(_r14);\n const ctx_r1 = i0.ɵɵnextContext(2);\n return i0.ɵɵresetView(ctx_r1.onAcceptColor($event));\n })(\"newValue\", function ColorPickerComponent_div_25_input_3_Template_input_newValue_0_listener($event) {\n i0.ɵɵrestoreView(_r14);\n const ctx_r1 = i0.ɵɵnextContext(2);\n return i0.ɵɵresetView(ctx_r1.onAlphaInput($event));\n });\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext(2);\n i0.ɵɵproperty(\"rg\", 1)(\"value\", ctx_r1.hslaText == null ? null : ctx_r1.hslaText.a);\n }\n}\nfunction ColorPickerComponent_div_25_Template(rf, ctx) {\n if (rf & 1) {\n const _r13 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"div\", 46)(1, \"div\", 35)(2, \"input\", 36);\n i0.ɵɵlistener(\"keyup.enter\", function ColorPickerComponent_div_25_Template_input_keyup_enter_2_listener($event) {\n i0.ɵɵrestoreView(_r13);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onAcceptColor($event));\n })(\"newValue\", function ColorPickerComponent_div_25_Template_input_newValue_2_listener($event) {\n i0.ɵɵrestoreView(_r13);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onValueInput($event));\n });\n i0.ɵɵelementEnd();\n i0.ɵɵtemplate(3, ColorPickerComponent_div_25_input_3_Template, 1, 2, \"input\", 37);\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(4, \"div\", 35)(5, \"div\");\n i0.ɵɵtext(6, \"V\");\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(7, \"div\");\n i0.ɵɵtext(8, \"A\");\n i0.ɵɵelementEnd()()();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"rg\", 100)(\"value\", ctx_r1.hslaText == null ? null : ctx_r1.hslaText.l);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", ctx_r1.cpAlphaChannel !== \"disabled\");\n }\n}\nfunction ColorPickerComponent_div_26_Template(rf, ctx) {\n if (rf & 1) {\n const _r15 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"div\", 47)(1, \"span\", 48);\n i0.ɵɵlistener(\"click\", function ColorPickerComponent_div_26_Template_span_click_1_listener() {\n i0.ɵɵrestoreView(_r15);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onFormatToggle(-1));\n });\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(2, \"span\", 48);\n i0.ɵɵlistener(\"click\", function ColorPickerComponent_div_26_Template_span_click_2_listener() {\n i0.ɵɵrestoreView(_r15);\n const ctx_r1 = i0.ɵɵnextContext();\n return i0.ɵɵresetView(ctx_r1.onFormatToggle(1));\n });\n i0.ɵɵelementEnd()();\n }\n}\nfunction ColorPickerComponent_div_27_div_4_div_1_span_1_Template(rf, ctx) {\n if (rf & 1) {\n const _r18 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"span\", 55);\n i0.ɵɵlistener(\"click\", function ColorPickerComponent_div_27_div_4_div_1_span_1_Template_span_click_0_listener($event) {\n i0.ɵɵrestoreView(_r18);\n const color_r17 = i0.ɵɵnextContext().$implicit;\n const ctx_r1 = i0.ɵɵnextContext(3);\n return i0.ɵɵresetView(ctx_r1.onRemovePresetColor($event, color_r17));\n });\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext(4);\n i0.ɵɵclassMap(ctx_r1.cpRemoveColorButtonClass);\n }\n}\nfunction ColorPickerComponent_div_27_div_4_div_1_Template(rf, ctx) {\n if (rf & 1) {\n const _r16 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"div\", 53);\n i0.ɵɵlistener(\"click\", function ColorPickerComponent_div_27_div_4_div_1_Template_div_click_0_listener() {\n const color_r17 = i0.ɵɵrestoreView(_r16).$implicit;\n const ctx_r1 = i0.ɵɵnextContext(3);\n return i0.ɵɵresetView(ctx_r1.setColorFromString(color_r17));\n });\n i0.ɵɵtemplate(1, ColorPickerComponent_div_27_div_4_div_1_span_1_Template, 1, 3, \"span\", 54);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const color_r17 = ctx.$implicit;\n const ctx_r1 = i0.ɵɵnextContext(3);\n i0.ɵɵstyleProp(\"background-color\", color_r17);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", ctx_r1.cpAddColorButton);\n }\n}\nfunction ColorPickerComponent_div_27_div_4_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\");\n i0.ɵɵtemplate(1, ColorPickerComponent_div_27_div_4_div_1_Template, 2, 3, \"div\", 52);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext(2);\n i0.ɵɵclassMap(ctx_r1.cpPresetColorsClass);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngForOf\", ctx_r1.cpPresetColors);\n }\n}\nfunction ColorPickerComponent_div_27_div_5_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\");\n i0.ɵɵtext(1);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext(2);\n i0.ɵɵclassMap(ctx_r1.cpPresetEmptyMessageClass);\n i0.ɵɵadvance();\n i0.ɵɵtextInterpolate(ctx_r1.cpPresetEmptyMessage);\n }\n}\nfunction ColorPickerComponent_div_27_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 49);\n i0.ɵɵelement(1, \"hr\");\n i0.ɵɵelementStart(2, \"div\", 50);\n i0.ɵɵtext(3);\n i0.ɵɵelementEnd();\n i0.ɵɵtemplate(4, ColorPickerComponent_div_27_div_4_Template, 2, 4, \"div\", 51)(5, ColorPickerComponent_div_27_div_5_Template, 2, 4, \"div\", 51);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵadvance(3);\n i0.ɵɵtextInterpolate(ctx_r1.cpPresetLabel);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", ctx_r1.cpPresetColors == null ? null : ctx_r1.cpPresetColors.length);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", !(ctx_r1.cpPresetColors == null ? null : ctx_r1.cpPresetColors.length) && ctx_r1.cpAddColorButton);\n }\n}\nfunction ColorPickerComponent_div_28_button_1_Template(rf, ctx) {\n if (rf & 1) {\n const _r19 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"button\", 58);\n i0.ɵɵlistener(\"click\", function ColorPickerComponent_div_28_button_1_Template_button_click_0_listener($event) {\n i0.ɵɵrestoreView(_r19);\n const ctx_r1 = i0.ɵɵnextContext(2);\n return i0.ɵɵresetView(ctx_r1.onCancelColor($event));\n });\n i0.ɵɵtext(1);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext(2);\n i0.ɵɵclassMap(ctx_r1.cpCancelButtonClass);\n i0.ɵɵadvance();\n i0.ɵɵtextInterpolate(ctx_r1.cpCancelButtonText);\n }\n}\nfunction ColorPickerComponent_div_28_button_2_Template(rf, ctx) {\n if (rf & 1) {\n const _r20 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"button\", 58);\n i0.ɵɵlistener(\"click\", function ColorPickerComponent_div_28_button_2_Template_button_click_0_listener($event) {\n i0.ɵɵrestoreView(_r20);\n const ctx_r1 = i0.ɵɵnextContext(2);\n return i0.ɵɵresetView(ctx_r1.onAcceptColor($event));\n });\n i0.ɵɵtext(1);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext(2);\n i0.ɵɵclassMap(ctx_r1.cpOKButtonClass);\n i0.ɵɵadvance();\n i0.ɵɵtextInterpolate(ctx_r1.cpOKButtonText);\n }\n}\nfunction ColorPickerComponent_div_28_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 56);\n i0.ɵɵtemplate(1, ColorPickerComponent_div_28_button_1_Template, 2, 4, \"button\", 57)(2, ColorPickerComponent_div_28_button_2_Template, 2, 4, \"button\", 57);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", ctx_r1.cpCancelButton);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", ctx_r1.cpOKButton);\n }\n}\nfunction ColorPickerComponent_div_29_ng_container_1_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementContainer(0);\n }\n}\nfunction ColorPickerComponent_div_29_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"div\", 59);\n i0.ɵɵtemplate(1, ColorPickerComponent_div_29_ng_container_1_Template, 1, 0, \"ng-container\", 60);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngTemplateOutlet\", ctx_r1.cpExtraTemplate);\n }\n}\nvar ColorFormats = /*#__PURE__*/function (ColorFormats) {\n ColorFormats[ColorFormats[\"HEX\"] = 0] = \"HEX\";\n ColorFormats[ColorFormats[\"RGBA\"] = 1] = \"RGBA\";\n ColorFormats[ColorFormats[\"HSLA\"] = 2] = \"HSLA\";\n ColorFormats[ColorFormats[\"CMYK\"] = 3] = \"CMYK\";\n return ColorFormats;\n}(ColorFormats || {});\nclass Rgba {\n r;\n g;\n b;\n a;\n constructor(r, g, b, a) {\n this.r = r;\n this.g = g;\n this.b = b;\n this.a = a;\n }\n}\nclass Hsva {\n h;\n s;\n v;\n a;\n constructor(h, s, v, a) {\n this.h = h;\n this.s = s;\n this.v = v;\n this.a = a;\n }\n}\nclass Hsla {\n h;\n s;\n l;\n a;\n constructor(h, s, l, a) {\n this.h = h;\n this.s = s;\n this.l = l;\n this.a = a;\n }\n}\nclass Cmyk {\n c;\n m;\n y;\n k;\n a;\n constructor(c, m, y, k, a = 1) {\n this.c = c;\n this.m = m;\n this.y = y;\n this.k = k;\n this.a = a;\n }\n}\nfunction calculateAutoPositioning(elBounds, triggerElBounds) {\n // Defaults\n let usePositionX = 'right';\n let usePositionY = 'bottom';\n // Calculate collisions\n const {\n height,\n width\n } = elBounds;\n const {\n top,\n left\n } = triggerElBounds;\n const bottom = top + triggerElBounds.height;\n const right = left + triggerElBounds.width;\n const collisionTop = top - height < 0;\n const collisionBottom = bottom + height > (window.innerHeight || document.documentElement.clientHeight);\n const collisionLeft = left - width < 0;\n const collisionRight = right + width > (window.innerWidth || document.documentElement.clientWidth);\n const collisionAll = collisionTop && collisionBottom && collisionLeft && collisionRight;\n // Generate X & Y position values\n if (collisionBottom) {\n usePositionY = 'top';\n }\n if (collisionTop) {\n usePositionY = 'bottom';\n }\n if (collisionLeft) {\n usePositionX = 'right';\n }\n if (collisionRight) {\n usePositionX = 'left';\n }\n // Choose the largest gap available\n if (collisionAll) {\n const postions = ['left', 'right', 'top', 'bottom'];\n return postions.reduce((prev, next) => elBounds[prev] > elBounds[next] ? prev : next);\n }\n if (collisionLeft && collisionRight) {\n if (collisionTop) {\n return 'bottom';\n }\n if (collisionBottom) {\n return 'top';\n }\n return top > bottom ? 'top' : 'bottom';\n }\n if (collisionTop && collisionBottom) {\n if (collisionLeft) {\n return 'right';\n }\n if (collisionRight) {\n return 'left';\n }\n return left > right ? 'left' : 'right';\n }\n return `${usePositionY}-${usePositionX}`;\n}\nfunction detectIE() {\n let ua = '';\n if (typeof navigator !== 'undefined') {\n ua = navigator.userAgent.toLowerCase();\n }\n const msie = ua.indexOf('msie ');\n if (msie > 0) {\n // IE 10 or older => return version number\n return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);\n }\n // Other browser\n return false;\n}\nlet TextDirective = /*#__PURE__*/(() => {\n class TextDirective {\n rg;\n text;\n newValue = new EventEmitter();\n inputChange(event) {\n const value = event.target.value;\n if (this.rg === undefined) {\n this.newValue.emit(value);\n } else {\n const numeric = parseFloat(value);\n this.newValue.emit({\n v: numeric,\n rg: this.rg\n });\n }\n }\n static ɵfac = function TextDirective_Factory(t) {\n return new (t || TextDirective)();\n };\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: TextDirective,\n selectors: [[\"\", \"text\", \"\"]],\n hostBindings: function TextDirective_HostBindings(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵlistener(\"input\", function TextDirective_input_HostBindingHandler($event) {\n return ctx.inputChange($event);\n });\n }\n },\n inputs: {\n rg: \"rg\",\n text: \"text\"\n },\n outputs: {\n newValue: \"newValue\"\n }\n });\n }\n return TextDirective;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet SliderDirective = /*#__PURE__*/(() => {\n class SliderDirective {\n elRef;\n listenerMove;\n listenerStop;\n rgX;\n rgY;\n slider;\n dragEnd = new EventEmitter();\n dragStart = new EventEmitter();\n newValue = new EventEmitter();\n mouseDown(event) {\n this.start(event);\n }\n touchStart(event) {\n this.start(event);\n }\n constructor(elRef) {\n this.elRef = elRef;\n this.listenerMove = event => this.move(event);\n this.listenerStop = () => this.stop();\n }\n move(event) {\n event.preventDefault();\n this.setCursor(event);\n }\n start(event) {\n this.setCursor(event);\n event.stopPropagation();\n document.addEventListener('mouseup', this.listenerStop);\n document.addEventListener('touchend', this.listenerStop);\n document.addEventListener('mousemove', this.listenerMove);\n document.addEventListener('touchmove', this.listenerMove);\n this.dragStart.emit();\n }\n stop() {\n document.removeEventListener('mouseup', this.listenerStop);\n document.removeEventListener('touchend', this.listenerStop);\n document.removeEventListener('mousemove', this.listenerMove);\n document.removeEventListener('touchmove', this.listenerMove);\n this.dragEnd.emit();\n }\n getX(event) {\n const position = this.elRef.nativeElement.getBoundingClientRect();\n const pageX = event.pageX !== undefined ? event.pageX : event.touches[0].pageX;\n return pageX - position.left - window.pageXOffset;\n }\n getY(event) {\n const position = this.elRef.nativeElement.getBoundingClientRect();\n const pageY = event.pageY !== undefined ? event.pageY : event.touches[0].pageY;\n return pageY - position.top - window.pageYOffset;\n }\n setCursor(event) {\n const width = this.elRef.nativeElement.offsetWidth;\n const height = this.elRef.nativeElement.offsetHeight;\n const x = Math.max(0, Math.min(this.getX(event), width));\n const y = Math.max(0, Math.min(this.getY(event), height));\n if (this.rgX !== undefined && this.rgY !== undefined) {\n this.newValue.emit({\n s: x / width,\n v: 1 - y / height,\n rgX: this.rgX,\n rgY: this.rgY\n });\n } else if (this.rgX === undefined && this.rgY !== undefined) {\n this.newValue.emit({\n v: y / height,\n rgY: this.rgY\n });\n } else if (this.rgX !== undefined && this.rgY === undefined) {\n this.newValue.emit({\n v: x / width,\n rgX: this.rgX\n });\n }\n }\n static ɵfac = function SliderDirective_Factory(t) {\n return new (t || SliderDirective)(i0.ɵɵdirectiveInject(i0.ElementRef));\n };\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: SliderDirective,\n selectors: [[\"\", \"slider\", \"\"]],\n hostBindings: function SliderDirective_HostBindings(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵlistener(\"mousedown\", function SliderDirective_mousedown_HostBindingHandler($event) {\n return ctx.mouseDown($event);\n })(\"touchstart\", function SliderDirective_touchstart_HostBindingHandler($event) {\n return ctx.touchStart($event);\n });\n }\n },\n inputs: {\n rgX: \"rgX\",\n rgY: \"rgY\",\n slider: \"slider\"\n },\n outputs: {\n dragEnd: \"dragEnd\",\n dragStart: \"dragStart\",\n newValue: \"newValue\"\n }\n });\n }\n return SliderDirective;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nclass SliderPosition {\n h;\n s;\n v;\n a;\n constructor(h, s, v, a) {\n this.h = h;\n this.s = s;\n this.v = v;\n this.a = a;\n }\n}\nclass SliderDimension {\n h;\n s;\n v;\n a;\n constructor(h, s, v, a) {\n this.h = h;\n this.s = s;\n this.v = v;\n this.a = a;\n }\n}\nlet ColorPickerService = /*#__PURE__*/(() => {\n class ColorPickerService {\n active = null;\n setActive(active) {\n if (this.active && this.active !== active && this.active.cpDialogDisplay !== 'inline') {\n this.active.closeDialog();\n }\n this.active = active;\n }\n hsva2hsla(hsva) {\n const h = hsva.h,\n s = hsva.s,\n v = hsva.v,\n a = hsva.a;\n if (v === 0) {\n return new Hsla(h, 0, 0, a);\n } else if (s === 0 && v === 1) {\n return new Hsla(h, 1, 1, a);\n } else {\n const l = v * (2 - s) / 2;\n return new Hsla(h, v * s / (1 - Math.abs(2 * l - 1)), l, a);\n }\n }\n hsla2hsva(hsla) {\n const h = Math.min(hsla.h, 1),\n s = Math.min(hsla.s, 1);\n const l = Math.min(hsla.l, 1),\n a = Math.min(hsla.a, 1);\n if (l === 0) {\n return new Hsva(h, 0, 0, a);\n } else {\n const v = l + s * (1 - Math.abs(2 * l - 1)) / 2;\n return new Hsva(h, 2 * (v - l) / v, v, a);\n }\n }\n hsvaToRgba(hsva) {\n let r, g, b;\n const h = hsva.h,\n s = hsva.s,\n v = hsva.v,\n a = hsva.a;\n const i = Math.floor(h * 6);\n const f = h * 6 - i;\n const p = v * (1 - s);\n const q = v * (1 - f * s);\n const t = v * (1 - (1 - f) * s);\n switch (i % 6) {\n case 0:\n r = v, g = t, b = p;\n break;\n case 1:\n r = q, g = v, b = p;\n break;\n case 2:\n r = p, g = v, b = t;\n break;\n case 3:\n r = p, g = q, b = v;\n break;\n case 4:\n r = t, g = p, b = v;\n break;\n case 5:\n r = v, g = p, b = q;\n break;\n default:\n r = 0, g = 0, b = 0;\n }\n return new Rgba(r, g, b, a);\n }\n cmykToRgb(cmyk) {\n const r = (1 - cmyk.c) * (1 - cmyk.k);\n const g = (1 - cmyk.m) * (1 - cmyk.k);\n const b = (1 - cmyk.y) * (1 - cmyk.k);\n return new Rgba(r, g, b, cmyk.a);\n }\n rgbaToCmyk(rgba) {\n const k = 1 - Math.max(rgba.r, rgba.g, rgba.b);\n if (k === 1) {\n return new Cmyk(0, 0, 0, 1, rgba.a);\n } else {\n const c = (1 - rgba.r - k) / (1 - k);\n const m = (1 - rgba.g - k) / (1 - k);\n const y = (1 - rgba.b - k) / (1 - k);\n return new Cmyk(c, m, y, k, rgba.a);\n }\n }\n rgbaToHsva(rgba) {\n let h, s;\n const r = Math.min(rgba.r, 1),\n g = Math.min(rgba.g, 1);\n const b = Math.min(rgba.b, 1),\n a = Math.min(rgba.a, 1);\n const max = Math.max(r, g, b),\n min = Math.min(r, g, b);\n const v = max,\n d = max - min;\n s = max === 0 ? 0 : d / max;\n if (max === min) {\n h = 0;\n } else {\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n default:\n h = 0;\n }\n h /= 6;\n }\n return new Hsva(h, s, v, a);\n }\n rgbaToHex(rgba, allowHex8) {\n /* eslint-disable no-bitwise */\n let hex = '#' + (1 << 24 | rgba.r << 16 | rgba.g << 8 | rgba.b).toString(16).substr(1);\n if (allowHex8) {\n hex += (1 << 8 | Math.round(rgba.a * 255)).toString(16).substr(1);\n }\n /* eslint-enable no-bitwise */\n return hex;\n }\n normalizeCMYK(cmyk) {\n return new Cmyk(cmyk.c / 100, cmyk.m / 100, cmyk.y / 100, cmyk.k / 100, cmyk.a);\n }\n denormalizeCMYK(cmyk) {\n return new Cmyk(Math.floor(cmyk.c * 100), Math.floor(cmyk.m * 100), Math.floor(cmyk.y * 100), Math.floor(cmyk.k * 100), cmyk.a);\n }\n denormalizeRGBA(rgba) {\n return new Rgba(Math.round(rgba.r * 255), Math.round(rgba.g * 255), Math.round(rgba.b * 255), rgba.a);\n }\n stringToHsva(colorString = '', allowHex8 = false) {\n let hsva = null;\n colorString = (colorString || '').toLowerCase();\n const stringParsers = [{\n re: /(rgb)a?\\(\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})\\s*%?,\\s*(\\d{1,3})\\s*%?(?:,\\s*(\\d+(?:\\.\\d+)?)\\s*)?\\)/,\n parse: function (execResult) {\n return new Rgba(parseInt(execResult[2], 10) / 255, parseInt(execResult[3], 10) / 255, parseInt(execResult[4], 10) / 255, isNaN(parseFloat(execResult[5])) ? 1 : parseFloat(execResult[5]));\n }\n }, {\n re: /(hsl)a?\\(\\s*(\\d{1,3})\\s*,\\s*(\\d{1,3})%\\s*,\\s*(\\d{1,3})%\\s*(?:,\\s*(\\d+(?:\\.\\d+)?)\\s*)?\\)/,\n parse: function (execResult) {\n return new Hsla(parseInt(execResult[2], 10) / 360, parseInt(execResult[3], 10) / 100, parseInt(execResult[4], 10) / 100, isNaN(parseFloat(execResult[5])) ? 1 : parseFloat(execResult[5]));\n }\n }];\n if (allowHex8) {\n stringParsers.push({\n re: /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})?$/,\n parse: function (execResult) {\n return new Rgba(parseInt(execResult[1], 16) / 255, parseInt(execResult[2], 16) / 255, parseInt(execResult[3], 16) / 255, parseInt(execResult[4] || 'FF', 16) / 255);\n }\n });\n } else {\n stringParsers.push({\n re: /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})$/,\n parse: function (execResult) {\n return new Rgba(parseInt(execResult[1], 16) / 255, parseInt(execResult[2], 16) / 255, parseInt(execResult[3], 16) / 255, 1);\n }\n });\n }\n stringParsers.push({\n re: /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])$/,\n parse: function (execResult) {\n return new Rgba(parseInt(execResult[1] + execResult[1], 16) / 255, parseInt(execResult[2] + execResult[2], 16) / 255, parseInt(execResult[3] + execResult[3], 16) / 255, 1);\n }\n });\n for (const key in stringParsers) {\n if (stringParsers.hasOwnProperty(key)) {\n const parser = stringParsers[key];\n const match = parser.re.exec(colorString),\n color = match && parser.parse(match);\n if (color) {\n if (color instanceof Rgba) {\n hsva = this.rgbaToHsva(color);\n } else if (color instanceof Hsla) {\n hsva = this.hsla2hsva(color);\n }\n return hsva;\n }\n }\n }\n return hsva;\n }\n outputFormat(hsva, outputFormat, alphaChannel) {\n if (outputFormat === 'auto') {\n outputFormat = hsva.a < 1 ? 'rgba' : 'hex';\n }\n switch (outputFormat) {\n case 'hsla':\n const hsla = this.hsva2hsla(hsva);\n const hslaText = new Hsla(Math.round(hsla.h * 360), Math.round(hsla.s * 100), Math.round(hsla.l * 100), Math.round(hsla.a * 100) / 100);\n if (hsva.a < 1 || alphaChannel === 'always') {\n return 'hsla(' + hslaText.h + ',' + hslaText.s + '%,' + hslaText.l + '%,' + hslaText.a + ')';\n } else {\n return 'hsl(' + hslaText.h + ',' + hslaText.s + '%,' + hslaText.l + '%)';\n }\n case 'rgba':\n const rgba = this.denormalizeRGBA(this.hsvaToRgba(hsva));\n if (hsva.a < 1 || alphaChannel === 'always') {\n return 'rgba(' + rgba.r + ',' + rgba.g + ',' + rgba.b + ',' + Math.round(rgba.a * 100) / 100 + ')';\n } else {\n return 'rgb(' + rgba.r + ',' + rgba.g + ',' + rgba.b + ')';\n }\n default:\n const allowHex8 = alphaChannel === 'always' || alphaChannel === 'forced';\n return this.rgbaToHex(this.denormalizeRGBA(this.hsvaToRgba(hsva)), allowHex8);\n }\n }\n static ɵfac = function ColorPickerService_Factory(t) {\n return new (t || ColorPickerService)();\n };\n static ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: ColorPickerService,\n factory: ColorPickerService.ɵfac\n });\n }\n return ColorPickerService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// Do not store that on the class instance since the condition will be run\n// every time the class is created.\nconst SUPPORTS_TOUCH = typeof window !== 'undefined' && 'ontouchstart' in window;\nlet ColorPickerComponent = /*#__PURE__*/(() => {\n class ColorPickerComponent {\n ngZone;\n elRef;\n cdRef;\n document;\n platformId;\n service;\n isIE10 = false;\n cmyk;\n hsva;\n width;\n height;\n cmykColor;\n outputColor;\n initialColor;\n fallbackColor;\n listenerResize;\n listenerMouseDown;\n directiveInstance;\n sliderH;\n sliderDimMax;\n directiveElementRef;\n dialogArrowSize = 10;\n dialogArrowOffset = 15;\n dialogInputFields = [ColorFormats.HEX, ColorFormats.RGBA, ColorFormats.HSLA, ColorFormats.CMYK];\n useRootViewContainer = false;\n show;\n hidden;\n top;\n left;\n position;\n format;\n slider;\n hexText;\n hexAlpha;\n cmykText;\n hslaText;\n rgbaText;\n arrowTop;\n selectedColor;\n hueSliderColor;\n alphaSliderColor;\n cpWidth;\n cpHeight;\n cpColorMode;\n cpCmykEnabled;\n cpAlphaChannel;\n cpOutputFormat;\n cpDisableInput;\n cpDialogDisplay;\n cpIgnoredElements;\n cpSaveClickOutside;\n cpCloseClickOutside;\n cpPosition;\n cpUsePosition;\n cpPositionOffset;\n cpOKButton;\n cpOKButtonText;\n cpOKButtonClass;\n cpCancelButton;\n cpCancelButtonText;\n cpCancelButtonClass;\n cpEyeDropper;\n eyeDropperSupported;\n cpPresetLabel;\n cpPresetColors;\n cpPresetColorsClass;\n cpMaxPresetColorsLength;\n cpPresetEmptyMessage;\n cpPresetEmptyMessageClass;\n cpAddColorButton;\n cpAddColorButtonText;\n cpAddColorButtonClass;\n cpRemoveColorButtonClass;\n cpArrowPosition;\n cpTriggerElement;\n cpExtraTemplate;\n dialogElement;\n hueSlider;\n alphaSlider;\n handleEsc(event) {\n if (this.show && this.cpDialogDisplay === 'popup') {\n this.onCancelColor(event);\n }\n }\n handleEnter(event) {\n if (this.show && this.cpDialogDisplay === 'popup') {\n this.onAcceptColor(event);\n }\n }\n constructor(ngZone, elRef, cdRef, document, platformId, service) {\n this.ngZone = ngZone;\n this.elRef = elRef;\n this.cdRef = cdRef;\n this.document = document;\n this.platformId = platformId;\n this.service = service;\n this.eyeDropperSupported = isPlatformBrowser(this.platformId) && 'EyeDropper' in this.document.defaultView;\n }\n ngOnInit() {\n this.slider = new SliderPosition(0, 0, 0, 0);\n const hueWidth = this.hueSlider.nativeElement.offsetWidth || 140;\n const alphaWidth = this.alphaSlider.nativeElement.offsetWidth || 140;\n this.sliderDimMax = new SliderDimension(hueWidth, this.cpWidth, 130, alphaWidth);\n if (this.cpCmykEnabled) {\n this.format = ColorFormats.CMYK;\n } else if (this.cpOutputFormat === 'rgba') {\n this.format = ColorFormats.RGBA;\n } else if (this.cpOutputFormat === 'hsla') {\n this.format = ColorFormats.HSLA;\n } else {\n this.format = ColorFormats.HEX;\n }\n this.listenerMouseDown = event => {\n this.onMouseDown(event);\n };\n this.listenerResize = () => {\n this.onResize();\n };\n this.openDialog(this.initialColor, false);\n }\n ngOnDestroy() {\n this.closeDialog();\n }\n ngAfterViewInit() {\n if (this.cpWidth !== 230 || this.cpDialogDisplay === 'inline') {\n const hueWidth = this.hueSlider.nativeElement.offsetWidth || 140;\n const alphaWidth = this.alphaSlider.nativeElement.offsetWidth || 140;\n this.sliderDimMax = new SliderDimension(hueWidth, this.cpWidth, 130, alphaWidth);\n this.updateColorPicker(false);\n this.cdRef.detectChanges();\n }\n }\n openDialog(color, emit = true) {\n this.service.setActive(this);\n if (!this.width) {\n this.cpWidth = this.directiveElementRef.nativeElement.offsetWidth;\n }\n if (!this.height) {\n this.height = 320;\n }\n this.setInitialColor(color);\n this.setColorFromString(color, emit);\n this.openColorPicker();\n }\n closeDialog() {\n this.closeColorPicker();\n }\n setupDialog(instance, elementRef, color, cpWidth, cpHeight, cpDialogDisplay, cpFallbackColor, cpColorMode, cpCmykEnabled, cpAlphaChannel, cpOutputFormat, cpDisableInput, cpIgnoredElements, cpSaveClickOutside, cpCloseClickOutside, cpUseRootViewContainer, cpPosition, cpPositionOffset, cpPositionRelativeToArrow, cpPresetLabel, cpPresetColors, cpPresetColorsClass, cpMaxPresetColorsLength, cpPresetEmptyMessage, cpPresetEmptyMessageClass, cpOKButton, cpOKButtonClass, cpOKButtonText, cpCancelButton, cpCancelButtonClass, cpCancelButtonText, cpAddColorButton, cpAddColorButtonClass, cpAddColorButtonText, cpRemoveColorButtonClass, cpEyeDropper, cpTriggerElement, cpExtraTemplate) {\n this.setInitialColor(color);\n this.setColorMode(cpColorMode);\n this.isIE10 = detectIE() === 10;\n this.directiveInstance = instance;\n this.directiveElementRef = elementRef;\n this.cpDisableInput = cpDisableInput;\n this.cpCmykEnabled = cpCmykEnabled;\n this.cpAlphaChannel = cpAlphaChannel;\n this.cpOutputFormat = cpOutputFormat;\n this.cpDialogDisplay = cpDialogDisplay;\n this.cpIgnoredElements = cpIgnoredElements;\n this.cpSaveClickOutside = cpSaveClickOutside;\n this.cpCloseClickOutside = cpCloseClickOutside;\n this.useRootViewContainer = cpUseRootViewContainer;\n this.width = this.cpWidth = parseInt(cpWidth, 10);\n this.height = this.cpHeight = parseInt(cpHeight, 10);\n this.cpPosition = cpPosition;\n this.cpPositionOffset = parseInt(cpPositionOffset, 10);\n this.cpOKButton = cpOKButton;\n this.cpOKButtonText = cpOKButtonText;\n this.cpOKButtonClass = cpOKButtonClass;\n this.cpCancelButton = cpCancelButton;\n this.cpCancelButtonText = cpCancelButtonText;\n this.cpCancelButtonClass = cpCancelButtonClass;\n this.cpEyeDropper = cpEyeDropper;\n this.fallbackColor = cpFallbackColor || '#fff';\n this.setPresetConfig(cpPresetLabel, cpPresetColors);\n this.cpPresetColorsClass = cpPresetColorsClass;\n this.cpMaxPresetColorsLength = cpMaxPresetColorsLength;\n this.cpPresetEmptyMessage = cpPresetEmptyMessage;\n this.cpPresetEmptyMessageClass = cpPresetEmptyMessageClass;\n this.cpAddColorButton = cpAddColorButton;\n this.cpAddColorButtonText = cpAddColorButtonText;\n this.cpAddColorButtonClass = cpAddColorButtonClass;\n this.cpRemoveColorButtonClass = cpRemoveColorButtonClass;\n this.cpTriggerElement = cpTriggerElement;\n this.cpExtraTemplate = cpExtraTemplate;\n if (!cpPositionRelativeToArrow) {\n this.dialogArrowOffset = 0;\n }\n if (cpDialogDisplay === 'inline') {\n this.dialogArrowSize = 0;\n this.dialogArrowOffset = 0;\n }\n if (cpOutputFormat === 'hex' && cpAlphaChannel !== 'always' && cpAlphaChannel !== 'forced') {\n this.cpAlphaChannel = 'disabled';\n }\n }\n setColorMode(mode) {\n switch (mode.toString().toUpperCase()) {\n case '1':\n case 'C':\n case 'COLOR':\n this.cpColorMode = 1;\n break;\n case '2':\n case 'G':\n case 'GRAYSCALE':\n this.cpColorMode = 2;\n break;\n case '3':\n case 'P':\n case 'PRESETS':\n this.cpColorMode = 3;\n break;\n default:\n this.cpColorMode = 1;\n }\n }\n setInitialColor(color) {\n this.initialColor = color;\n }\n setPresetConfig(cpPresetLabel, cpPresetColors) {\n this.cpPresetLabel = cpPresetLabel;\n this.cpPresetColors = cpPresetColors;\n }\n setColorFromString(value, emit = true, update = true) {\n let hsva;\n if (this.cpAlphaChannel === 'always' || this.cpAlphaChannel === 'forced') {\n hsva = this.service.stringToHsva(value, true);\n if (!hsva && !this.hsva) {\n hsva = this.service.stringToHsva(value, false);\n }\n } else {\n hsva = this.service.stringToHsva(value, false);\n }\n if (!hsva && !this.hsva) {\n hsva = this.service.stringToHsva(this.fallbackColor, false);\n }\n if (hsva) {\n this.hsva = hsva;\n this.sliderH = this.hsva.h;\n if (this.cpOutputFormat === 'hex' && this.cpAlphaChannel === 'disabled') {\n this.hsva.a = 1;\n }\n this.updateColorPicker(emit, update);\n }\n }\n onResize() {\n if (this.position === 'fixed') {\n this.setDialogPosition();\n } else if (this.cpDialogDisplay !== 'inline') {\n this.closeColorPicker();\n }\n }\n onDragEnd(slider) {\n this.directiveInstance.sliderDragEnd({\n slider: slider,\n color: this.outputColor\n });\n }\n onDragStart(slider) {\n this.directiveInstance.sliderDragStart({\n slider: slider,\n color: this.outputColor\n });\n }\n onMouseDown(event) {\n if (this.show && !this.isIE10 && this.cpDialogDisplay === 'popup' && event.target !== this.directiveElementRef.nativeElement && !this.isDescendant(this.elRef.nativeElement, event.target) && !this.isDescendant(this.directiveElementRef.nativeElement, event.target) && this.cpIgnoredElements.filter(item => item === event.target).length === 0) {\n this.ngZone.run(() => {\n if (this.cpSaveClickOutside) {\n this.directiveInstance.colorSelected(this.outputColor);\n } else {\n this.hsva = null;\n this.setColorFromString(this.initialColor, false);\n if (this.cpCmykEnabled) {\n this.directiveInstance.cmykChanged(this.cmykColor);\n }\n this.directiveInstance.colorChanged(this.initialColor);\n this.directiveInstance.colorCanceled();\n }\n if (this.cpCloseClickOutside) {\n this.closeColorPicker();\n }\n });\n }\n }\n onAcceptColor(event) {\n event.stopPropagation();\n if (this.outputColor) {\n this.directiveInstance.colorSelected(this.outputColor);\n }\n if (this.cpDialogDisplay === 'popup') {\n this.closeColorPicker();\n }\n }\n onCancelColor(event) {\n this.hsva = null;\n event.stopPropagation();\n this.directiveInstance.colorCanceled();\n this.setColorFromString(this.initialColor, true);\n if (this.cpDialogDisplay === 'popup') {\n if (this.cpCmykEnabled) {\n this.directiveInstance.cmykChanged(this.cmykColor);\n }\n this.directiveInstance.colorChanged(this.initialColor, true);\n this.closeColorPicker();\n }\n }\n onEyeDropper() {\n if (!this.eyeDropperSupported) return;\n const eyeDropper = new window.EyeDropper();\n eyeDropper.open().then(eyeDropperResult => {\n this.setColorFromString(eyeDropperResult.sRGBHex, true);\n });\n }\n onFormatToggle(change) {\n const availableFormats = this.dialogInputFields.length - (this.cpCmykEnabled ? 0 : 1);\n const nextFormat = ((this.dialogInputFields.indexOf(this.format) + change) % availableFormats + availableFormats) % availableFormats;\n this.format = this.dialogInputFields[nextFormat];\n }\n onColorChange(value) {\n this.hsva.s = value.s / value.rgX;\n this.hsva.v = value.v / value.rgY;\n this.updateColorPicker();\n this.directiveInstance.sliderChanged({\n slider: 'lightness',\n value: this.hsva.v,\n color: this.outputColor\n });\n this.directiveInstance.sliderChanged({\n slider: 'saturation',\n value: this.hsva.s,\n color: this.outputColor\n });\n }\n onHueChange(value) {\n this.hsva.h = value.v / value.rgX;\n this.sliderH = this.hsva.h;\n this.updateColorPicker();\n this.directiveInstance.sliderChanged({\n slider: 'hue',\n value: this.hsva.h,\n color: this.outputColor\n });\n }\n onValueChange(value) {\n this.hsva.v = value.v / value.rgX;\n this.updateColorPicker();\n this.directiveInstance.sliderChanged({\n slider: 'value',\n value: this.hsva.v,\n color: this.outputColor\n });\n }\n onAlphaChange(value) {\n this.hsva.a = value.v / value.rgX;\n this.updateColorPicker();\n this.directiveInstance.sliderChanged({\n slider: 'alpha',\n value: this.hsva.a,\n color: this.outputColor\n });\n }\n onHexInput(value) {\n if (value === null) {\n this.updateColorPicker();\n } else {\n if (value && value[0] !== '#') {\n value = '#' + value;\n }\n let validHex = /^#([a-f0-9]{3}|[a-f0-9]{6})$/gi;\n if (this.cpAlphaChannel === 'always') {\n validHex = /^#([a-f0-9]{3}|[a-f0-9]{6}|[a-f0-9]{8})$/gi;\n }\n const valid = validHex.test(value);\n if (valid) {\n if (value.length < 5) {\n value = '#' + value.substring(1).split('').map(c => c + c).join('');\n }\n if (this.cpAlphaChannel === 'forced') {\n value += Math.round(this.hsva.a * 255).toString(16);\n }\n this.setColorFromString(value, true, false);\n }\n this.directiveInstance.inputChanged({\n input: 'hex',\n valid: valid,\n value: value,\n color: this.outputColor\n });\n }\n }\n onRedInput(value) {\n const rgba = this.service.hsvaToRgba(this.hsva);\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n rgba.r = value.v / value.rg;\n this.hsva = this.service.rgbaToHsva(rgba);\n this.sliderH = this.hsva.h;\n this.updateColorPicker();\n }\n this.directiveInstance.inputChanged({\n input: 'red',\n valid: valid,\n value: rgba.r,\n color: this.outputColor\n });\n }\n onBlueInput(value) {\n const rgba = this.service.hsvaToRgba(this.hsva);\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n rgba.b = value.v / value.rg;\n this.hsva = this.service.rgbaToHsva(rgba);\n this.sliderH = this.hsva.h;\n this.updateColorPicker();\n }\n this.directiveInstance.inputChanged({\n input: 'blue',\n valid: valid,\n value: rgba.b,\n color: this.outputColor\n });\n }\n onGreenInput(value) {\n const rgba = this.service.hsvaToRgba(this.hsva);\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n rgba.g = value.v / value.rg;\n this.hsva = this.service.rgbaToHsva(rgba);\n this.sliderH = this.hsva.h;\n this.updateColorPicker();\n }\n this.directiveInstance.inputChanged({\n input: 'green',\n valid: valid,\n value: rgba.g,\n color: this.outputColor\n });\n }\n onHueInput(value) {\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n this.hsva.h = value.v / value.rg;\n this.sliderH = this.hsva.h;\n this.updateColorPicker();\n }\n this.directiveInstance.inputChanged({\n input: 'hue',\n valid: valid,\n value: this.hsva.h,\n color: this.outputColor\n });\n }\n onValueInput(value) {\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n this.hsva.v = value.v / value.rg;\n this.updateColorPicker();\n }\n this.directiveInstance.inputChanged({\n input: 'value',\n valid: valid,\n value: this.hsva.v,\n color: this.outputColor\n });\n }\n onAlphaInput(value) {\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n this.hsva.a = value.v / value.rg;\n this.updateColorPicker();\n }\n this.directiveInstance.inputChanged({\n input: 'alpha',\n valid: valid,\n value: this.hsva.a,\n color: this.outputColor\n });\n }\n onLightnessInput(value) {\n const hsla = this.service.hsva2hsla(this.hsva);\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n hsla.l = value.v / value.rg;\n this.hsva = this.service.hsla2hsva(hsla);\n this.sliderH = this.hsva.h;\n this.updateColorPicker();\n }\n this.directiveInstance.inputChanged({\n input: 'lightness',\n valid: valid,\n value: hsla.l,\n color: this.outputColor\n });\n }\n onSaturationInput(value) {\n const hsla = this.service.hsva2hsla(this.hsva);\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n hsla.s = value.v / value.rg;\n this.hsva = this.service.hsla2hsva(hsla);\n this.sliderH = this.hsva.h;\n this.updateColorPicker();\n }\n this.directiveInstance.inputChanged({\n input: 'saturation',\n valid: valid,\n value: hsla.s,\n color: this.outputColor\n });\n }\n onCyanInput(value) {\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n this.cmyk.c = value.v;\n this.updateColorPicker(false, true, true);\n }\n this.directiveInstance.inputChanged({\n input: 'cyan',\n valid: true,\n value: this.cmyk.c,\n color: this.outputColor\n });\n }\n onMagentaInput(value) {\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n this.cmyk.m = value.v;\n this.updateColorPicker(false, true, true);\n }\n this.directiveInstance.inputChanged({\n input: 'magenta',\n valid: true,\n value: this.cmyk.m,\n color: this.outputColor\n });\n }\n onYellowInput(value) {\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n this.cmyk.y = value.v;\n this.updateColorPicker(false, true, true);\n }\n this.directiveInstance.inputChanged({\n input: 'yellow',\n valid: true,\n value: this.cmyk.y,\n color: this.outputColor\n });\n }\n onBlackInput(value) {\n const valid = !isNaN(value.v) && value.v >= 0 && value.v <= value.rg;\n if (valid) {\n this.cmyk.k = value.v;\n this.updateColorPicker(false, true, true);\n }\n this.directiveInstance.inputChanged({\n input: 'black',\n valid: true,\n value: this.cmyk.k,\n color: this.outputColor\n });\n }\n onAddPresetColor(event, value) {\n event.stopPropagation();\n if (!this.cpPresetColors.filter(color => color === value).length) {\n this.cpPresetColors = this.cpPresetColors.concat(value);\n this.directiveInstance.presetColorsChanged(this.cpPresetColors);\n }\n }\n onRemovePresetColor(event, value) {\n event.stopPropagation();\n this.cpPresetColors = this.cpPresetColors.filter(color => color !== value);\n this.directiveInstance.presetColorsChanged(this.cpPresetColors);\n }\n // Private helper functions for the color picker dialog status\n openColorPicker() {\n if (!this.show) {\n this.show = true;\n this.hidden = true;\n setTimeout(() => {\n this.hidden = false;\n this.setDialogPosition();\n this.cdRef.detectChanges();\n }, 0);\n this.directiveInstance.stateChanged(true);\n if (!this.isIE10) {\n // The change detection should be run on `mousedown` event only when the condition\n // is met within the `onMouseDown` method.\n this.ngZone.runOutsideAngular(() => {\n // There's no sense to add both event listeners on touch devices since the `touchstart`\n // event is handled earlier than `mousedown`, so we'll get 2 change detections and the\n // second one will be unnecessary.\n if (SUPPORTS_TOUCH) {\n document.addEventListener('touchstart', this.listenerMouseDown);\n } else {\n document.addEventListener('mousedown', this.listenerMouseDown);\n }\n });\n }\n window.addEventListener('resize', this.listenerResize);\n }\n }\n closeColorPicker() {\n if (this.show) {\n this.show = false;\n this.directiveInstance.stateChanged(false);\n if (!this.isIE10) {\n if (SUPPORTS_TOUCH) {\n document.removeEventListener('touchstart', this.listenerMouseDown);\n } else {\n document.removeEventListener('mousedown', this.listenerMouseDown);\n }\n }\n window.removeEventListener('resize', this.listenerResize);\n if (!this.cdRef['destroyed']) {\n this.cdRef.detectChanges();\n }\n }\n }\n updateColorPicker(emit = true, update = true, cmykInput = false) {\n if (this.sliderDimMax) {\n if (this.cpColorMode === 2) {\n this.hsva.s = 0;\n }\n let hue, hsla, rgba;\n const lastOutput = this.outputColor;\n hsla = this.service.hsva2hsla(this.hsva);\n if (!this.cpCmykEnabled) {\n rgba = this.service.denormalizeRGBA(this.service.hsvaToRgba(this.hsva));\n } else {\n if (!cmykInput) {\n rgba = this.service.hsvaToRgba(this.hsva);\n this.cmyk = this.service.denormalizeCMYK(this.service.rgbaToCmyk(rgba));\n } else {\n rgba = this.service.cmykToRgb(this.service.normalizeCMYK(this.cmyk));\n this.hsva = this.service.rgbaToHsva(rgba);\n }\n rgba = this.service.denormalizeRGBA(rgba);\n this.sliderH = this.hsva.h;\n }\n hue = this.service.denormalizeRGBA(this.service.hsvaToRgba(new Hsva(this.sliderH || this.hsva.h, 1, 1, 1)));\n if (update) {\n this.hslaText = new Hsla(Math.round(hsla.h * 360), Math.round(hsla.s * 100), Math.round(hsla.l * 100), Math.round(hsla.a * 100) / 100);\n this.rgbaText = new Rgba(rgba.r, rgba.g, rgba.b, Math.round(rgba.a * 100) / 100);\n if (this.cpCmykEnabled) {\n this.cmykText = new Cmyk(this.cmyk.c, this.cmyk.m, this.cmyk.y, this.cmyk.k, Math.round(this.cmyk.a * 100) / 100);\n }\n const allowHex8 = this.cpAlphaChannel === 'always';\n this.hexText = this.service.rgbaToHex(rgba, allowHex8);\n this.hexAlpha = this.rgbaText.a;\n }\n if (this.cpOutputFormat === 'auto') {\n if (this.format !== ColorFormats.RGBA && this.format !== ColorFormats.CMYK && this.format !== ColorFormats.HSLA) {\n if (this.hsva.a < 1) {\n this.format = this.hsva.a < 1 ? ColorFormats.RGBA : ColorFormats.HEX;\n }\n }\n }\n this.hueSliderColor = 'rgb(' + hue.r + ',' + hue.g + ',' + hue.b + ')';\n this.alphaSliderColor = 'rgb(' + rgba.r + ',' + rgba.g + ',' + rgba.b + ')';\n this.outputColor = this.service.outputFormat(this.hsva, this.cpOutputFormat, this.cpAlphaChannel);\n this.selectedColor = this.service.outputFormat(this.hsva, 'rgba', null);\n if (this.format !== ColorFormats.CMYK) {\n this.cmykColor = '';\n } else {\n if (this.cpAlphaChannel === 'always' || this.cpAlphaChannel === 'enabled' || this.cpAlphaChannel === 'forced') {\n const alpha = Math.round(this.cmyk.a * 100) / 100;\n this.cmykColor = `cmyka(${this.cmyk.c},${this.cmyk.m},${this.cmyk.y},${this.cmyk.k},${alpha})`;\n } else {\n this.cmykColor = `cmyk(${this.cmyk.c},${this.cmyk.m},${this.cmyk.y},${this.cmyk.k})`;\n }\n }\n this.slider = new SliderPosition((this.sliderH || this.hsva.h) * this.sliderDimMax.h - 8, this.hsva.s * this.sliderDimMax.s - 8, (1 - this.hsva.v) * this.sliderDimMax.v - 8, this.hsva.a * this.sliderDimMax.a - 8);\n if (emit && lastOutput !== this.outputColor) {\n if (this.cpCmykEnabled) {\n this.directiveInstance.cmykChanged(this.cmykColor);\n }\n this.directiveInstance.colorChanged(this.outputColor);\n }\n }\n }\n // Private helper functions for the color picker dialog positioning\n setDialogPosition() {\n if (this.cpDialogDisplay === 'inline') {\n this.position = 'relative';\n } else {\n let position = 'static',\n transform = '',\n style;\n let parentNode = null,\n transformNode = null;\n let node = this.directiveElementRef.nativeElement.parentNode;\n const dialogHeight = this.dialogElement.nativeElement.offsetHeight;\n while (node !== null && node.tagName !== 'HTML') {\n style = window.getComputedStyle(node);\n position = style.getPropertyValue('position');\n transform = style.getPropertyValue('transform');\n if (position !== 'static' && parentNode === null) {\n parentNode = node;\n }\n if (transform && transform !== 'none' && transformNode === null) {\n transformNode = node;\n }\n if (position === 'fixed') {\n parentNode = transformNode;\n break;\n }\n node = node.parentNode;\n }\n const boxDirective = this.createDialogBox(this.directiveElementRef.nativeElement, position !== 'fixed');\n if (this.useRootViewContainer || position === 'fixed' && (!parentNode || parentNode instanceof HTMLUnknownElement)) {\n this.top = boxDirective.top;\n this.left = boxDirective.left;\n } else {\n if (parentNode === null) {\n parentNode = node;\n }\n const boxParent = this.createDialogBox(parentNode, position !== 'fixed');\n this.top = boxDirective.top - boxParent.top;\n this.left = boxDirective.left - boxParent.left;\n }\n if (position === 'fixed') {\n this.position = 'fixed';\n }\n let usePosition = this.cpPosition;\n const dialogBounds = this.dialogElement.nativeElement.getBoundingClientRect();\n if (this.cpPosition === 'auto') {\n const triggerBounds = this.cpTriggerElement.nativeElement.getBoundingClientRect();\n usePosition = calculateAutoPositioning(dialogBounds, triggerBounds);\n }\n this.arrowTop = usePosition === 'top' ? dialogHeight - 1 : undefined;\n this.cpArrowPosition = undefined;\n switch (usePosition) {\n case 'top':\n this.top -= dialogHeight + this.dialogArrowSize;\n this.left += this.cpPositionOffset / 100 * boxDirective.width - this.dialogArrowOffset;\n break;\n case 'bottom':\n this.top += boxDirective.height + this.dialogArrowSize;\n this.left += this.cpPositionOffset / 100 * boxDirective.width - this.dialogArrowOffset;\n break;\n case 'top-left':\n case 'left-top':\n this.top -= dialogHeight - boxDirective.height + boxDirective.height * this.cpPositionOffset / 100;\n this.left -= this.cpWidth + this.dialogArrowSize - 2 - this.dialogArrowOffset;\n break;\n case 'top-right':\n case 'right-top':\n this.top -= dialogHeight - boxDirective.height + boxDirective.height * this.cpPositionOffset / 100;\n this.left += boxDirective.width + this.dialogArrowSize - 2 - this.dialogArrowOffset;\n break;\n case 'left':\n case 'bottom-left':\n case 'left-bottom':\n this.top += boxDirective.height * this.cpPositionOffset / 100 - this.dialogArrowOffset;\n this.left -= this.cpWidth + this.dialogArrowSize - 2;\n break;\n case 'right':\n case 'bottom-right':\n case 'right-bottom':\n default:\n this.top += boxDirective.height * this.cpPositionOffset / 100 - this.dialogArrowOffset;\n this.left += boxDirective.width + this.dialogArrowSize - 2;\n break;\n }\n const windowInnerHeight = window.innerHeight;\n const windowInnerWidth = window.innerWidth;\n const elRefClientRect = this.elRef.nativeElement.getBoundingClientRect();\n const bottom = this.top + dialogBounds.height;\n if (bottom > windowInnerHeight) {\n this.top = windowInnerHeight - dialogBounds.height;\n this.cpArrowPosition = elRefClientRect.x / 2 - 20;\n }\n const right = this.left + dialogBounds.width;\n if (right > windowInnerWidth) {\n this.left = windowInnerWidth - dialogBounds.width;\n this.cpArrowPosition = elRefClientRect.x / 2 - 20;\n }\n this.cpUsePosition = usePosition;\n }\n }\n // Private helper functions for the color picker dialog positioning and opening\n isDescendant(parent, child) {\n let node = child.parentNode;\n while (node !== null) {\n if (node === parent) {\n return true;\n }\n node = node.parentNode;\n }\n return false;\n }\n createDialogBox(element, offset) {\n const {\n top,\n left\n } = element.getBoundingClientRect();\n return {\n top: top + (offset ? window.pageYOffset : 0),\n left: left + (offset ? window.pageXOffset : 0),\n width: element.offsetWidth,\n height: element.offsetHeight\n };\n }\n static ɵfac = function ColorPickerComponent_Factory(t) {\n return new (t || ColorPickerComponent)(i0.ɵɵdirectiveInject(i0.NgZone), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(DOCUMENT), i0.ɵɵdirectiveInject(PLATFORM_ID), i0.ɵɵdirectiveInject(ColorPickerService));\n };\n static ɵcmp = /* @__PURE__ */i0.ɵɵdefineComponent({\n type: ColorPickerComponent,\n selectors: [[\"color-picker\"]],\n viewQuery: function ColorPickerComponent_Query(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵviewQuery(_c0, 7);\n i0.ɵɵviewQuery(_c1, 7);\n i0.ɵɵviewQuery(_c2, 7);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.dialogElement = _t.first);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.hueSlider = _t.first);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.alphaSlider = _t.first);\n }\n },\n hostBindings: function ColorPickerComponent_HostBindings(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵlistener(\"keyup.esc\", function ColorPickerComponent_keyup_esc_HostBindingHandler($event) {\n return ctx.handleEsc($event);\n }, false, i0.ɵɵresolveDocument)(\"keyup.enter\", function ColorPickerComponent_keyup_enter_HostBindingHandler($event) {\n return ctx.handleEnter($event);\n }, false, i0.ɵɵresolveDocument);\n }\n },\n decls: 30,\n vars: 51,\n consts: [[\"dialogPopup\", \"\"], [\"hueSlider\", \"\"], [\"valueSlider\", \"\"], [\"alphaSlider\", \"\"], [1, \"color-picker\", 3, \"click\"], [3, \"left\", \"class\", \"top\", 4, \"ngIf\"], [\"class\", \"saturation-lightness\", 3, \"slider\", \"rgX\", \"rgY\", \"background-color\", \"newValue\", \"dragStart\", \"dragEnd\", 4, \"ngIf\"], [1, \"hue-alpha\", \"box\"], [1, \"left\"], [1, \"selected-color-background\"], [1, \"selected-color\", 3, \"click\"], [\"class\", \"eyedropper-icon\", \"xmlns\", \"http://www.w3.org/2000/svg\", \"height\", \"24px\", \"viewBox\", \"0 0 24 24\", \"width\", \"24px\", \"fill\", \"#000000\", 4, \"ngIf\"], [\"type\", \"button\", 3, \"class\", \"disabled\", \"click\", 4, \"ngIf\"], [1, \"right\"], [\"style\", \"height: 16px;\", 4, \"ngIf\"], [1, \"hue\", 3, \"newValue\", \"dragStart\", \"dragEnd\", \"slider\", \"rgX\"], [1, \"cursor\"], [1, \"value\", 3, \"newValue\", \"dragStart\", \"dragEnd\", \"slider\", \"rgX\"], [1, \"alpha\", 3, \"newValue\", \"dragStart\", \"dragEnd\", \"slider\", \"rgX\"], [\"class\", \"cmyk-text\", 3, \"display\", 4, \"ngIf\"], [\"class\", \"hsla-text\", 3, \"display\", 4, \"ngIf\"], [\"class\", \"rgba-text\", 3, \"display\", 4, \"ngIf\"], [\"class\", \"hex-text\", 3, \"hex-alpha\", \"display\", 4, \"ngIf\"], [\"class\", \"value-text\", 4, \"ngIf\"], [\"class\", \"type-policy\", 4, \"ngIf\"], [\"class\", \"preset-area\", 4, \"ngIf\"], [\"class\", \"button-area\", 4, \"ngIf\"], [\"class\", \"extra-template\", 4, \"ngIf\"], [1, \"saturation-lightness\", 3, \"newValue\", \"dragStart\", \"dragEnd\", \"slider\", \"rgX\", \"rgY\"], [\"xmlns\", \"http://www.w3.org/2000/svg\", \"height\", \"24px\", \"viewBox\", \"0 0 24 24\", \"width\", \"24px\", \"fill\", \"#000000\", 1, \"eyedropper-icon\"], [\"d\", \"M0 0h24v24H0V0z\", \"fill\", \"none\"], [\"d\", \"M17.66 5.41l.92.92-2.69 2.69-.92-.92 2.69-2.69M17.67 3c-.26 0-.51.1-.71.29l-3.12 3.12-1.93-1.91-1.41 1.41 1.42 1.42L3 16.25V21h4.75l8.92-8.92 1.42 1.42 1.41-1.41-1.92-1.92 3.12-3.12c.4-.4.4-1.03.01-1.42l-2.34-2.34c-.2-.19-.45-.29-.7-.29zM6.92 19L5 17.08l8.06-8.06 1.92 1.92L6.92 19z\"], [\"type\", \"button\", 3, \"click\", \"disabled\"], [2, \"height\", \"16px\"], [1, \"cmyk-text\"], [1, \"box\"], [\"type\", \"number\", \"pattern\", \"[0-9]*\", \"min\", \"0\", \"max\", \"100\", 3, \"keyup.enter\", \"newValue\", \"text\", \"rg\", \"value\"], [\"type\", \"number\", \"pattern\", \"[0-9]+([\\\\.,][0-9]{1,2})?\", \"min\", \"0\", \"max\", \"1\", \"step\", \"0.1\", 3, \"text\", \"rg\", \"value\", \"keyup.enter\", \"newValue\", 4, \"ngIf\"], [4, \"ngIf\"], [\"type\", \"number\", \"pattern\", \"[0-9]+([\\\\.,][0-9]{1,2})?\", \"min\", \"0\", \"max\", \"1\", \"step\", \"0.1\", 3, \"keyup.enter\", \"newValue\", \"text\", \"rg\", \"value\"], [1, \"hsla-text\"], [\"type\", \"number\", \"pattern\", \"[0-9]*\", \"min\", \"0\", \"max\", \"360\", 3, \"keyup.enter\", \"newValue\", \"text\", \"rg\", \"value\"], [1, \"rgba-text\"], [\"type\", \"number\", \"pattern\", \"[0-9]*\", \"min\", \"0\", \"max\", \"255\", 3, \"keyup.enter\", \"newValue\", \"text\", \"rg\", \"value\"], [1, \"hex-text\"], [3, \"blur\", \"keyup.enter\", \"newValue\", \"text\", \"value\"], [1, \"value-text\"], [1, \"type-policy\"], [1, \"type-policy-arrow\", 3, \"click\"], [1, \"preset-area\"], [1, \"preset-label\"], [3, \"class\", 4, \"ngIf\"], [\"class\", \"preset-color\", 3, \"backgroundColor\", \"click\", 4, \"ngFor\", \"ngForOf\"], [1, \"preset-color\", 3, \"click\"], [3, \"class\", \"click\", 4, \"ngIf\"], [3, \"click\"], [1, \"button-area\"], [\"type\", \"button\", 3, \"class\", \"click\", 4, \"ngIf\"], [\"type\", \"button\", 3, \"click\"], [1, \"extra-template\"], [4, \"ngTemplateOutlet\"]],\n template: function ColorPickerComponent_Template(rf, ctx) {\n if (rf & 1) {\n const _r1 = i0.ɵɵgetCurrentView();\n i0.ɵɵelementStart(0, \"div\", 4, 0);\n i0.ɵɵlistener(\"click\", function ColorPickerComponent_Template_div_click_0_listener($event) {\n i0.ɵɵrestoreView(_r1);\n return i0.ɵɵresetView($event.stopPropagation());\n });\n i0.ɵɵtemplate(2, ColorPickerComponent_div_2_Template, 1, 7, \"div\", 5)(3, ColorPickerComponent_div_3_Template, 2, 8, \"div\", 6);\n i0.ɵɵelementStart(4, \"div\", 7)(5, \"div\", 8);\n i0.ɵɵelement(6, \"div\", 9);\n i0.ɵɵelementStart(7, \"div\", 10);\n i0.ɵɵlistener(\"click\", function ColorPickerComponent_Template_div_click_7_listener() {\n i0.ɵɵrestoreView(_r1);\n return i0.ɵɵresetView(ctx.eyeDropperSupported && ctx.cpEyeDropper && ctx.onEyeDropper());\n });\n i0.ɵɵtemplate(8, ColorPickerComponent__svg_svg_8_Template, 3, 0, \"svg\", 11);\n i0.ɵɵelementEnd();\n i0.ɵɵtemplate(9, ColorPickerComponent_button_9_Template, 2, 5, \"button\", 12);\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(10, \"div\", 13);\n i0.ɵɵtemplate(11, ColorPickerComponent_div_11_Template, 1, 0, \"div\", 14);\n i0.ɵɵelementStart(12, \"div\", 15, 1);\n i0.ɵɵlistener(\"newValue\", function ColorPickerComponent_Template_div_newValue_12_listener($event) {\n i0.ɵɵrestoreView(_r1);\n return i0.ɵɵresetView(ctx.onHueChange($event));\n })(\"dragStart\", function ColorPickerComponent_Template_div_dragStart_12_listener() {\n i0.ɵɵrestoreView(_r1);\n return i0.ɵɵresetView(ctx.onDragStart(\"hue\"));\n })(\"dragEnd\", function ColorPickerComponent_Template_div_dragEnd_12_listener() {\n i0.ɵɵrestoreView(_r1);\n return i0.ɵɵresetView(ctx.onDragEnd(\"hue\"));\n });\n i0.ɵɵelement(14, \"div\", 16);\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(15, \"div\", 17, 2);\n i0.ɵɵlistener(\"newValue\", function ColorPickerComponent_Template_div_newValue_15_listener($event) {\n i0.ɵɵrestoreView(_r1);\n return i0.ɵɵresetView(ctx.onValueChange($event));\n })(\"dragStart\", function ColorPickerComponent_Template_div_dragStart_15_listener() {\n i0.ɵɵrestoreView(_r1);\n return i0.ɵɵresetView(ctx.onDragStart(\"value\"));\n })(\"dragEnd\", function ColorPickerComponent_Template_div_dragEnd_15_listener() {\n i0.ɵɵrestoreView(_r1);\n return i0.ɵɵresetView(ctx.onDragEnd(\"value\"));\n });\n i0.ɵɵelement(17, \"div\", 16);\n i0.ɵɵelementEnd();\n i0.ɵɵelementStart(18, \"div\", 18, 3);\n i0.ɵɵlistener(\"newValue\", function ColorPickerComponent_Template_div_newValue_18_listener($event) {\n i0.ɵɵrestoreView(_r1);\n return i0.ɵɵresetView(ctx.onAlphaChange($event));\n })(\"dragStart\", function ColorPickerComponent_Template_div_dragStart_18_listener() {\n i0.ɵɵrestoreView(_r1);\n return i0.ɵɵresetView(ctx.onDragStart(\"alpha\"));\n })(\"dragEnd\", function ColorPickerComponent_Template_div_dragEnd_18_listener() {\n i0.ɵɵrestoreView(_r1);\n return i0.ɵɵresetView(ctx.onDragEnd(\"alpha\"));\n });\n i0.ɵɵelement(20, \"div\", 16);\n i0.ɵɵelementEnd()()();\n i0.ɵɵtemplate(21, ColorPickerComponent_div_21_Template, 17, 12, \"div\", 19)(22, ColorPickerComponent_div_22_Template, 14, 10, \"div\", 20)(23, ColorPickerComponent_div_23_Template, 14, 10, \"div\", 21)(24, ColorPickerComponent_div_24_Template, 8, 7, \"div\", 22)(25, ColorPickerComponent_div_25_Template, 9, 3, \"div\", 23)(26, ColorPickerComponent_div_26_Template, 3, 0, \"div\", 24)(27, ColorPickerComponent_div_27_Template, 6, 3, \"div\", 25)(28, ColorPickerComponent_div_28_Template, 3, 2, \"div\", 26)(29, ColorPickerComponent_div_29_Template, 2, 1, \"div\", 27);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n i0.ɵɵstyleProp(\"display\", !ctx.show ? \"none\" : \"block\")(\"visibility\", ctx.hidden ? \"hidden\" : \"visible\")(\"top\", ctx.top, \"px\")(\"left\", ctx.left, \"px\")(\"position\", ctx.position)(\"height\", ctx.cpHeight, \"px\")(\"width\", ctx.cpWidth, \"px\");\n i0.ɵɵclassProp(\"open\", ctx.show);\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngIf\", ctx.cpDialogDisplay === \"popup\");\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", (ctx.cpColorMode || 1) === 1);\n i0.ɵɵadvance(4);\n i0.ɵɵstyleProp(\"background-color\", ctx.selectedColor)(\"cursor\", ctx.eyeDropperSupported && ctx.cpEyeDropper ? \"pointer\" : null);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", ctx.eyeDropperSupported && ctx.cpEyeDropper);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", ctx.cpAddColorButton);\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"ngIf\", ctx.cpAlphaChannel === \"disabled\");\n i0.ɵɵadvance();\n i0.ɵɵstyleProp(\"display\", (ctx.cpColorMode || 1) === 1 ? \"block\" : \"none\");\n i0.ɵɵproperty(\"rgX\", 1);\n i0.ɵɵadvance(2);\n i0.ɵɵstyleProp(\"left\", ctx.slider == null ? null : ctx.slider.h, \"px\");\n i0.ɵɵadvance();\n i0.ɵɵstyleProp(\"display\", (ctx.cpColorMode || 1) === 2 ? \"block\" : \"none\");\n i0.ɵɵproperty(\"rgX\", 1);\n i0.ɵɵadvance(2);\n i0.ɵɵstyleProp(\"right\", ctx.slider == null ? null : ctx.slider.v, \"px\");\n i0.ɵɵadvance();\n i0.ɵɵstyleProp(\"display\", ctx.cpAlphaChannel === \"disabled\" ? \"none\" : \"block\")(\"background-color\", ctx.alphaSliderColor);\n i0.ɵɵproperty(\"rgX\", 1);\n i0.ɵɵadvance(2);\n i0.ɵɵstyleProp(\"left\", ctx.slider == null ? null : ctx.slider.a, \"px\");\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", !ctx.cpDisableInput && (ctx.cpColorMode || 1) === 1);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", !ctx.cpDisableInput && (ctx.cpColorMode || 1) === 1);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", !ctx.cpDisableInput && (ctx.cpColorMode || 1) === 1);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", !ctx.cpDisableInput && (ctx.cpColorMode || 1) === 1);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", !ctx.cpDisableInput && (ctx.cpColorMode || 1) === 2);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", !ctx.cpDisableInput && (ctx.cpColorMode || 1) === 1);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", (ctx.cpPresetColors == null ? null : ctx.cpPresetColors.length) || ctx.cpAddColorButton);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", ctx.cpOKButton || ctx.cpCancelButton);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"ngIf\", ctx.cpExtraTemplate);\n }\n },\n dependencies: [i2.NgForOf, i2.NgIf, i2.NgTemplateOutlet, TextDirective, SliderDirective],\n styles: [\".color-picker{position:absolute;z-index:1000;width:230px;height:auto;border:#777 solid 1px;cursor:default;-webkit-user-select:none;user-select:none;background-color:#fff}.color-picker *{box-sizing:border-box;margin:0;font-size:11px}.color-picker input{width:0;height:26px;min-width:0;font-size:13px;text-align:center;color:#000}.color-picker input:invalid,.color-picker input:-moz-ui-invalid,.color-picker input:-moz-submit-invalid{box-shadow:none}.color-picker input::-webkit-inner-spin-button,.color-picker input::-webkit-outer-spin-button{margin:0;-webkit-appearance:none}.color-picker .arrow{position:absolute;z-index:999999;width:0;height:0;border-style:solid}.color-picker .arrow.arrow-top{left:8px;border-width:10px 5px;border-color:#777 rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0)}.color-picker .arrow.arrow-bottom{top:-20px;left:8px;border-width:10px 5px;border-color:rgba(0,0,0,0) rgba(0,0,0,0) #777 rgba(0,0,0,0)}.color-picker .arrow.arrow-top-left,.color-picker .arrow.arrow-left-top{right:-21px;bottom:8px;border-width:5px 10px;border-color:rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0) #777}.color-picker .arrow.arrow-top-right,.color-picker .arrow.arrow-right-top{bottom:8px;left:-20px;border-width:5px 10px;border-color:rgba(0,0,0,0) #777 rgba(0,0,0,0) rgba(0,0,0,0)}.color-picker .arrow.arrow-left,.color-picker .arrow.arrow-left-bottom,.color-picker .arrow.arrow-bottom-left{top:8px;right:-21px;border-width:5px 10px;border-color:rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0) #777}.color-picker .arrow.arrow-right,.color-picker .arrow.arrow-right-bottom,.color-picker .arrow.arrow-bottom-right{top:8px;left:-20px;border-width:5px 10px;border-color:rgba(0,0,0,0) #777 rgba(0,0,0,0) rgba(0,0,0,0)}.color-picker .cursor{position:relative;width:16px;height:16px;border:#222 solid 2px;border-radius:50%;cursor:default}.color-picker .box{display:flex;padding:4px 8px}.color-picker .left{position:relative;padding:16px 8px}.color-picker .right{flex:1 1 auto;padding:12px 8px}.color-picker .button-area{padding:0 16px 16px;text-align:right}.color-picker .button-area button{margin-left:8px}.color-picker .preset-area{padding:4px 15px}.color-picker .preset-area .preset-label{overflow:hidden;width:100%;padding:4px;font-size:11px;white-space:nowrap;text-align:left;text-overflow:ellipsis;color:#555}.color-picker .preset-area .preset-color{position:relative;display:inline-block;width:18px;height:18px;margin:4px 6px 8px;border:#a9a9a9 solid 1px;border-radius:25%;cursor:pointer}.color-picker .preset-area .preset-empty-message{min-height:18px;margin-top:4px;margin-bottom:8px;font-style:italic;text-align:center}.color-picker .hex-text{width:100%;padding:4px 8px;font-size:11px}.color-picker .hex-text .box{padding:0 24px 8px 8px}.color-picker .hex-text .box div{float:left;flex:1 1 auto;text-align:center;color:#555;clear:left}.color-picker .hex-text .box input{flex:1 1 auto;padding:1px;border:#a9a9a9 solid 1px}.color-picker .hex-alpha .box div:first-child,.color-picker .hex-alpha .box input:first-child{flex-grow:3;margin-right:8px}.color-picker .cmyk-text,.color-picker .hsla-text,.color-picker .rgba-text,.color-picker .value-text{width:100%;padding:4px 8px;font-size:11px}.color-picker .cmyk-text .box,.color-picker .hsla-text .box,.color-picker .rgba-text .box{padding:0 24px 8px 8px}.color-picker .value-text .box{padding:0 8px 8px}.color-picker .cmyk-text .box div,.color-picker .hsla-text .box div,.color-picker .rgba-text .box div,.color-picker .value-text .box div{flex:1 1 auto;margin-right:8px;text-align:center;color:#555}.color-picker .cmyk-text .box div:last-child,.color-picker .hsla-text .box div:last-child,.color-picker .rgba-text .box div:last-child,.color-picker .value-text .box div:last-child{margin-right:0}.color-picker .cmyk-text .box input,.color-picker .hsla-text .box input,.color-picker .rgba-text .box input,.color-picker .value-text .box input{float:left;flex:1;padding:1px;margin:0 8px 0 0;border:#a9a9a9 solid 1px}.color-picker .cmyk-text .box input:last-child,.color-picker .hsla-text .box input:last-child,.color-picker .rgba-text .box input:last-child,.color-picker .value-text .box input:last-child{margin-right:0}.color-picker .hue-alpha{align-items:center;margin-bottom:3px}.color-picker .hue{direction:ltr;width:100%;height:16px;margin-bottom:16px;border:none;cursor:pointer;background-size:100% 100%;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAAAQCAYAAAD06IYnAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AIWDwkUFWbCCAAAAFxJREFUaN7t0kEKg0AQAME2x83/n2qu5qCgD1iDhCoYdpnbQC9bbY1qVO/jvc6k3ad91s7/7F1/csgPrujuQ17BDYSFsBAWwgJhISyEBcJCWAgLhIWwEBYIi2f7Ar/1TCgFH2X9AAAAAElFTkSuQmCC)}.color-picker .value{direction:rtl;width:100%;height:16px;margin-bottom:16px;border:none;cursor:pointer;background-size:100% 100%;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAAAQCAYAAAD06IYnAAACTklEQVR42u3SYUcrABhA4U2SkmRJMmWSJklKJiWZZpKUJJskKUmaTFImKZOUzMySpGRmliRNJilJSpKSJEtmSpIpmWmSdO736/6D+x7OP3gUCoWCv1cqlSQlJZGcnExKSgqpqamkpaWRnp5ORkYGmZmZqFQqsrKyyM7OJicnh9zcXNRqNXl5eeTn56PRaCgoKKCwsJCioiK0Wi3FxcWUlJRQWlpKWVkZ5eXlVFRUUFlZiU6no6qqiurqampqaqitraWurg69Xk99fT0GgwGj0UhDQwONjY00NTXR3NxMS0sLra2ttLW10d7ejslkwmw209HRQWdnJ11dXXR3d9PT00Nvby99fX309/czMDDA4OAgFouFoaEhrFYrw8PDjIyMMDo6ytjYGDabjfHxcSYmJpicnGRqagq73c709DQzMzPMzs4yNzfH/Pw8DocDp9OJy+XC7XazsLDA4uIiS0tLLC8vs7KywurqKmtra3g8HrxeLz6fD7/fz/r6OhsbG2xubrK1tcX29jaBQICdnR2CwSC7u7vs7e2xv7/PwcEBh4eHHB0dcXx8zMnJCaenp5ydnXF+fs7FxQWXl5dcXV1xfX3Nzc0Nt7e33N3dEQqFuL+/5+HhgXA4TCQS4fHxkaenJ56fn3l5eeH19ZVoNMrb2xvv7+98fHwQi8WIx+N8fn6SSCT4+vri+/ubn58ffn9/+VcKgSWwBJbAElgCS2AJLIElsASWwBJYAktgCSyBJbAElsASWAJLYAksgSWwBJbAElgCS2AJLIElsP4/WH8AmJ5Z6jHS4h8AAAAASUVORK5CYII=)}.color-picker .alpha{direction:ltr;width:100%;height:16px;border:none;cursor:pointer;background-size:100% 100%;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAAAQCAYAAAD06IYnAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AIWDwYQlZMa3gAAAWVJREFUaN7tmEGO6jAQRCsOArHgBpyAJYGjcGocxAm4A2IHpmoWE0eBH+ezmFlNvU06shJ3W6VEelWMUQAIIF9f6qZpimsA1LYtS2uF51/u27YVAFZVRUkEoGHdPV/sIcbIEIIkUdI/9Xa7neyv61+SWFUVAVCSct00TWn2fv6u3+Ecfd3tXzy/0+nEUu+SPjo/kqzrmiQpScN6v98XewfA8/lMkiLJ2WxGSUopcT6fM6U0NX9/frfbjev1WtfrlZfLhYfDQQHG/AIOlnGwjINlHCxjHCzjYJm/TJWdCwquJXseFFzGwDNNeiKMOJTO8xQdDQaeB29+K9efeLaBo9J7vdvtJj1RjFFjfiv7qv95tjx/7leSQgh93e1ffMeIp6O+YQjho/N791t1XVOSSI7N//K+4/GoxWLBx+PB5/Op5XLJ+/3OlJJWqxU3m83ovv5iGf8KjYNlHCxjHCzjYBkHy5gf5gusvQU7U37jTAAAAABJRU5ErkJggg==)}.color-picker .type-policy{position:absolute;top:218px;right:12px;width:16px;height:24px;background-size:8px 16px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAgCAYAAAAffCjxAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAACewAAAnsB01CO3AAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAIASURBVEiJ7ZY9axRRFIafsxMStrLQJpAgpBFhi+C9w1YSo00I6RZ/g9vZpBf/QOr4GyRgkSKNSrAadsZqQGwCkuAWyRZJsySwvhZ7N/vhzrgbLH3Ld8597jlzz50zJokyxXH8DqDVar0qi6v8BbItqSGpEcfxdlmsFWXkvX8AfAVWg3UKPEnT9GKujMzsAFgZsVaCN1VTQd77XUnrgE1kv+6935268WRpzrnHZvYRWC7YvC3pRZZl3wozqtVqiyH9IgjAspkd1Gq1xUJQtVrdB9ZKIAOthdg/Qc65LUk7wNIMoCVJO865rYFhkqjX6/d7vV4GPJwBMqofURS5JEk6FYBer/eeYb/Mo9WwFnPOvQbeAvfuAAK4BN4sAJtAG/gJIElmNuiJyba3EGNmZiPeZuEVmVell/Y/6N+CzDn3AXhEOOo7Hv/3BeAz8IzQkMPnJbuPx1wC+yYJ7/0nYIP5S/0FHKdp+rwCEEXRS/rf5Hl1Gtb2M0iSpCOpCZzPATmX1EySpHMLAsiy7MjMDoHrGSDXZnaYZdnRwBh7J91utwmczAA6CbG3GgPleX4jqUH/a1CktqRGnuc3hSCAMB32gKspkCtgb3KCQMmkjeP4WNJThrNNZval1WptTIsv7JtQ4tmIdRa8qSoEpWl6YWZNoAN0zKxZNPehpLSBZv2t+Q0CJ9lLnARQLAAAAABJRU5ErkJggg==);background-repeat:no-repeat;background-position:center}.color-picker .type-policy .type-policy-arrow{display:block;width:100%;height:50%}.color-picker .selected-color{position:absolute;top:16px;left:8px;width:40px;height:40px;border:1px solid #a9a9a9;border-radius:50%}.color-picker .selected-color-background{width:40px;height:40px;border-radius:50%;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAh0lEQVRYR+2W0QlAMQgD60zdfwOdqa8TmI/wQMr5K0I5bZLIzLOa2nt37VVVbd+dDx5obgCC3KBLwJ2ff4PnVidkf+ucIhw80HQaCLo3DMH3CRK3iFsmAWVl6hPNDwt8EvNE5q+YuEXcMgkonVM6SdyCoEvAnZ8v1Hjx817MilmxSUB5rdLJDycZgUAZUch/AAAAAElFTkSuQmCC)}.color-picker .saturation-lightness{direction:ltr;width:100%;height:130px;border:none;cursor:pointer;touch-action:manipulation;background-size:100% 100%;background-image:url(data:image/png;base64,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)}.color-picker .cp-add-color-button-class{position:absolute;display:inline;padding:0;margin:3px -3px;border:0;cursor:pointer;background:transparent}.color-picker .cp-add-color-button-class:hover{text-decoration:underline}.color-picker .cp-add-color-button-class:disabled{cursor:not-allowed;color:#999}.color-picker .cp-add-color-button-class:disabled:hover{text-decoration:none}.color-picker .cp-remove-color-button-class{position:absolute;top:-5px;right:-5px;display:block;width:10px;height:10px;border-radius:50%;cursor:pointer;text-align:center;background:#fff;box-shadow:1px 1px 5px #333}.color-picker .cp-remove-color-button-class:before{content:\\\"x\\\";position:relative;bottom:3.5px;display:inline-block;font-size:10px}.color-picker .eyedropper-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);fill:#fff;mix-blend-mode:exclusion}\\n\"],\n encapsulation: 2\n });\n }\n return ColorPickerComponent;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// Caretaker note: we have still left the `typeof` condition in order to avoid\n// creating a breaking change for projects that still use the View Engine.\n// The `ngDevMode` is always available when Ivy is enabled.\n// This will be evaluated during compilation into `const NG_DEV_MODE = false`,\n// thus Terser will be able to tree-shake `console.warn` calls.\nconst NG_DEV_MODE = typeof ngDevMode === 'undefined' || !!ngDevMode;\nlet ColorPickerDirective = /*#__PURE__*/(() => {\n class ColorPickerDirective {\n injector;\n cfr;\n appRef;\n vcRef;\n elRef;\n _service;\n dialog;\n dialogCreated = false;\n ignoreChanges = false;\n cmpRef;\n viewAttachedToAppRef = false;\n colorPicker;\n cpWidth = '230px';\n cpHeight = 'auto';\n cpToggle = false;\n cpDisabled = false;\n cpIgnoredElements = [];\n cpFallbackColor = '';\n cpColorMode = 'color';\n cpCmykEnabled = false;\n cpOutputFormat = 'auto';\n cpAlphaChannel = 'enabled';\n cpDisableInput = false;\n cpDialogDisplay = 'popup';\n cpSaveClickOutside = true;\n cpCloseClickOutside = true;\n cpUseRootViewContainer = false;\n cpPosition = 'auto';\n cpPositionOffset = '0%';\n cpPositionRelativeToArrow = false;\n cpOKButton = false;\n cpOKButtonText = 'OK';\n cpOKButtonClass = 'cp-ok-button-class';\n cpCancelButton = false;\n cpCancelButtonText = 'Cancel';\n cpCancelButtonClass = 'cp-cancel-button-class';\n cpEyeDropper = false;\n cpPresetLabel = 'Preset colors';\n cpPresetColors;\n cpPresetColorsClass = 'cp-preset-colors-class';\n cpMaxPresetColorsLength = 6;\n cpPresetEmptyMessage = 'No colors added';\n cpPresetEmptyMessageClass = 'preset-empty-message';\n cpAddColorButton = false;\n cpAddColorButtonText = 'Add color';\n cpAddColorButtonClass = 'cp-add-color-button-class';\n cpRemoveColorButtonClass = 'cp-remove-color-button-class';\n cpArrowPosition = 0;\n cpExtraTemplate;\n cpInputChange = new EventEmitter(true);\n cpToggleChange = new EventEmitter(true);\n cpSliderChange = new EventEmitter(true);\n cpSliderDragEnd = new EventEmitter(true);\n cpSliderDragStart = new EventEmitter(true);\n colorPickerOpen = new EventEmitter(true);\n colorPickerClose = new EventEmitter(true);\n colorPickerCancel = new EventEmitter(true);\n colorPickerSelect = new EventEmitter(true);\n colorPickerChange = new EventEmitter(false);\n cpCmykColorChange = new EventEmitter(true);\n cpPresetColorsChange = new EventEmitter(true);\n handleClick() {\n this.inputFocus();\n }\n handleFocus() {\n this.inputFocus();\n }\n handleInput(event) {\n this.inputChange(event);\n }\n constructor(injector, cfr, appRef, vcRef, elRef, _service) {\n this.injector = injector;\n this.cfr = cfr;\n this.appRef = appRef;\n this.vcRef = vcRef;\n this.elRef = elRef;\n this._service = _service;\n }\n ngOnDestroy() {\n if (this.cmpRef != null) {\n if (this.viewAttachedToAppRef) {\n this.appRef.detachView(this.cmpRef.hostView);\n }\n this.cmpRef.destroy();\n this.cmpRef = null;\n this.dialog = null;\n }\n }\n ngOnChanges(changes) {\n if (changes.cpToggle && !this.cpDisabled) {\n if (changes.cpToggle.currentValue) {\n this.openDialog();\n } else if (!changes.cpToggle.currentValue) {\n this.closeDialog();\n }\n }\n if (changes.colorPicker) {\n if (this.dialog && !this.ignoreChanges) {\n if (this.cpDialogDisplay === 'inline') {\n this.dialog.setInitialColor(changes.colorPicker.currentValue);\n }\n this.dialog.setColorFromString(changes.colorPicker.currentValue, false);\n if (this.cpUseRootViewContainer && this.cpDialogDisplay !== 'inline') {\n this.cmpRef.changeDetectorRef.detectChanges();\n }\n }\n this.ignoreChanges = false;\n }\n if (changes.cpPresetLabel || changes.cpPresetColors) {\n if (this.dialog) {\n this.dialog.setPresetConfig(this.cpPresetLabel, this.cpPresetColors);\n }\n }\n }\n openDialog() {\n if (!this.dialogCreated) {\n let vcRef = this.vcRef;\n this.dialogCreated = true;\n this.viewAttachedToAppRef = false;\n if (this.cpUseRootViewContainer && this.cpDialogDisplay !== 'inline') {\n const classOfRootComponent = this.appRef.componentTypes[0];\n const appInstance = this.injector.get(classOfRootComponent, Injector.NULL);\n if (appInstance !== Injector.NULL) {\n vcRef = appInstance.vcRef || appInstance.viewContainerRef || this.vcRef;\n if (NG_DEV_MODE && vcRef === this.vcRef) {\n console.warn('You are using cpUseRootViewContainer, ' + 'but the root component is not exposing viewContainerRef!' + 'Please expose it by adding \\'public vcRef: ViewContainerRef\\' to the constructor.');\n }\n } else {\n this.viewAttachedToAppRef = true;\n }\n }\n const compFactory = this.cfr.resolveComponentFactory(ColorPickerComponent);\n if (this.viewAttachedToAppRef) {\n this.cmpRef = compFactory.create(this.injector);\n this.appRef.attachView(this.cmpRef.hostView);\n document.body.appendChild(this.cmpRef.hostView.rootNodes[0]);\n } else {\n const injector = Injector.create({\n providers: [],\n // We shouldn't use `vcRef.parentInjector` since it's been deprecated long time ago and might be removed\n // in newer Angular versions: https://github.com/angular/angular/pull/25174.\n parent: vcRef.injector\n });\n this.cmpRef = vcRef.createComponent(compFactory, 0, injector, []);\n }\n this.cmpRef.instance.setupDialog(this, this.elRef, this.colorPicker, this.cpWidth, this.cpHeight, this.cpDialogDisplay, this.cpFallbackColor, this.cpColorMode, this.cpCmykEnabled, this.cpAlphaChannel, this.cpOutputFormat, this.cpDisableInput, this.cpIgnoredElements, this.cpSaveClickOutside, this.cpCloseClickOutside, this.cpUseRootViewContainer, this.cpPosition, this.cpPositionOffset, this.cpPositionRelativeToArrow, this.cpPresetLabel, this.cpPresetColors, this.cpPresetColorsClass, this.cpMaxPresetColorsLength, this.cpPresetEmptyMessage, this.cpPresetEmptyMessageClass, this.cpOKButton, this.cpOKButtonClass, this.cpOKButtonText, this.cpCancelButton, this.cpCancelButtonClass, this.cpCancelButtonText, this.cpAddColorButton, this.cpAddColorButtonClass, this.cpAddColorButtonText, this.cpRemoveColorButtonClass, this.cpEyeDropper, this.elRef, this.cpExtraTemplate);\n this.dialog = this.cmpRef.instance;\n if (this.vcRef !== vcRef) {\n this.cmpRef.changeDetectorRef.detectChanges();\n }\n } else if (this.dialog) {\n this.dialog.openDialog(this.colorPicker);\n }\n }\n closeDialog() {\n if (this.dialog && this.cpDialogDisplay === 'popup') {\n this.dialog.closeDialog();\n }\n }\n cmykChanged(value) {\n this.cpCmykColorChange.emit(value);\n }\n stateChanged(state) {\n this.cpToggleChange.emit(state);\n if (state) {\n this.colorPickerOpen.emit(this.colorPicker);\n } else {\n this.colorPickerClose.emit(this.colorPicker);\n }\n }\n colorChanged(value, ignore = true) {\n this.ignoreChanges = ignore;\n this.colorPickerChange.emit(value);\n }\n colorSelected(value) {\n this.colorPickerSelect.emit(value);\n }\n colorCanceled() {\n this.colorPickerCancel.emit();\n }\n inputFocus() {\n const element = this.elRef.nativeElement;\n const ignored = this.cpIgnoredElements.filter(item => item === element);\n if (!this.cpDisabled && !ignored.length) {\n if (typeof document !== 'undefined' && element === document.activeElement) {\n this.openDialog();\n } else if (!this.dialog || !this.dialog.show) {\n this.openDialog();\n } else {\n this.closeDialog();\n }\n }\n }\n inputChange(event) {\n if (this.dialog) {\n this.dialog.setColorFromString(event.target.value, true);\n } else {\n this.colorPicker = event.target.value;\n this.colorPickerChange.emit(this.colorPicker);\n }\n }\n inputChanged(event) {\n this.cpInputChange.emit(event);\n }\n sliderChanged(event) {\n this.cpSliderChange.emit(event);\n }\n sliderDragEnd(event) {\n this.cpSliderDragEnd.emit(event);\n }\n sliderDragStart(event) {\n this.cpSliderDragStart.emit(event);\n }\n presetColorsChanged(value) {\n this.cpPresetColorsChange.emit(value);\n }\n static ɵfac = function ColorPickerDirective_Factory(t) {\n return new (t || ColorPickerDirective)(i0.ɵɵdirectiveInject(i0.Injector), i0.ɵɵdirectiveInject(i0.ComponentFactoryResolver), i0.ɵɵdirectiveInject(i0.ApplicationRef), i0.ɵɵdirectiveInject(i0.ViewContainerRef), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(ColorPickerService));\n };\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: ColorPickerDirective,\n selectors: [[\"\", \"colorPicker\", \"\"]],\n hostBindings: function ColorPickerDirective_HostBindings(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵlistener(\"click\", function ColorPickerDirective_click_HostBindingHandler() {\n return ctx.handleClick();\n })(\"focus\", function ColorPickerDirective_focus_HostBindingHandler() {\n return ctx.handleFocus();\n })(\"input\", function ColorPickerDirective_input_HostBindingHandler($event) {\n return ctx.handleInput($event);\n });\n }\n },\n inputs: {\n colorPicker: \"colorPicker\",\n cpWidth: \"cpWidth\",\n cpHeight: \"cpHeight\",\n cpToggle: \"cpToggle\",\n cpDisabled: \"cpDisabled\",\n cpIgnoredElements: \"cpIgnoredElements\",\n cpFallbackColor: \"cpFallbackColor\",\n cpColorMode: \"cpColorMode\",\n cpCmykEnabled: \"cpCmykEnabled\",\n cpOutputFormat: \"cpOutputFormat\",\n cpAlphaChannel: \"cpAlphaChannel\",\n cpDisableInput: \"cpDisableInput\",\n cpDialogDisplay: \"cpDialogDisplay\",\n cpSaveClickOutside: \"cpSaveClickOutside\",\n cpCloseClickOutside: \"cpCloseClickOutside\",\n cpUseRootViewContainer: \"cpUseRootViewContainer\",\n cpPosition: \"cpPosition\",\n cpPositionOffset: \"cpPositionOffset\",\n cpPositionRelativeToArrow: \"cpPositionRelativeToArrow\",\n cpOKButton: \"cpOKButton\",\n cpOKButtonText: \"cpOKButtonText\",\n cpOKButtonClass: \"cpOKButtonClass\",\n cpCancelButton: \"cpCancelButton\",\n cpCancelButtonText: \"cpCancelButtonText\",\n cpCancelButtonClass: \"cpCancelButtonClass\",\n cpEyeDropper: \"cpEyeDropper\",\n cpPresetLabel: \"cpPresetLabel\",\n cpPresetColors: \"cpPresetColors\",\n cpPresetColorsClass: \"cpPresetColorsClass\",\n cpMaxPresetColorsLength: \"cpMaxPresetColorsLength\",\n cpPresetEmptyMessage: \"cpPresetEmptyMessage\",\n cpPresetEmptyMessageClass: \"cpPresetEmptyMessageClass\",\n cpAddColorButton: \"cpAddColorButton\",\n cpAddColorButtonText: \"cpAddColorButtonText\",\n cpAddColorButtonClass: \"cpAddColorButtonClass\",\n cpRemoveColorButtonClass: \"cpRemoveColorButtonClass\",\n cpArrowPosition: \"cpArrowPosition\",\n cpExtraTemplate: \"cpExtraTemplate\"\n },\n outputs: {\n cpInputChange: \"cpInputChange\",\n cpToggleChange: \"cpToggleChange\",\n cpSliderChange: \"cpSliderChange\",\n cpSliderDragEnd: \"cpSliderDragEnd\",\n cpSliderDragStart: \"cpSliderDragStart\",\n colorPickerOpen: \"colorPickerOpen\",\n colorPickerClose: \"colorPickerClose\",\n colorPickerCancel: \"colorPickerCancel\",\n colorPickerSelect: \"colorPickerSelect\",\n colorPickerChange: \"colorPickerChange\",\n cpCmykColorChange: \"cpCmykColorChange\",\n cpPresetColorsChange: \"cpPresetColorsChange\"\n },\n exportAs: [\"ngxColorPicker\"],\n features: [i0.ɵɵNgOnChangesFeature]\n });\n }\n return ColorPickerDirective;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet ColorPickerModule = /*#__PURE__*/(() => {\n class ColorPickerModule {\n static ɵfac = function ColorPickerModule_Factory(t) {\n return new (t || ColorPickerModule)();\n };\n static ɵmod = /* @__PURE__ */i0.ɵɵdefineNgModule({\n type: ColorPickerModule\n });\n static ɵinj = /* @__PURE__ */i0.ɵɵdefineInjector({\n providers: [ColorPickerService],\n imports: [CommonModule]\n });\n }\n return ColorPickerModule;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { Cmyk, ColorPickerComponent, ColorPickerDirective, ColorPickerModule, ColorPickerService, Hsla, Hsva, Rgba, SliderDirective, TextDirective };\n","import { Injectable } from '@angular/core';\r\nimport {environment} from \"../../environments/environment\";\r\nimport {HttpClient} from \"@angular/common/http\";\r\nimport {Language} from \"../_models/metadata/language\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class LocalizationService {\r\n\r\n baseUrl = environment.apiUrl;\r\n\r\n constructor(private httpClient: HttpClient) { }\r\n\r\n getLocales() {\r\n return this.httpClient.get(this.baseUrl + 'locale');\r\n }\r\n}\r\n","import {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n DestroyRef,\r\n inject,\r\n OnDestroy,\r\n OnInit\r\n} from '@angular/core';\r\nimport {FormControl, FormGroup, ReactiveFormsModule} from '@angular/forms';\r\nimport {ToastrService} from 'ngx-toastr';\r\nimport {take} from 'rxjs/operators';\r\nimport {Title} from '@angular/platform-browser';\r\nimport {\r\n bookLayoutModes,\r\n bookWritingStyles,\r\n layoutModes,\r\n pageLayoutModes,\r\n pageSplitOptions,\r\n pdfLayoutModes,\r\n pdfScrollModes,\r\n pdfSpreadModes,\r\n pdfThemes,\r\n Preferences,\r\n readingDirections,\r\n readingModes,\r\n scalingOptions\r\n} from 'src/app/_models/preferences/preferences';\r\nimport {User} from 'src/app/_models/user';\r\nimport {AccountService} from 'src/app/_services/account.service';\r\nimport {ActivatedRoute, Router, RouterLink} from '@angular/router';\r\nimport {SettingsService} from 'src/app/admin/settings.service';\r\nimport {BookPageLayoutMode} from 'src/app/_models/readers/book-page-layout-mode';\r\nimport {forkJoin} from 'rxjs';\r\nimport {bookColorThemes} from 'src/app/book-reader/_components/reader-settings/reader-settings.component';\r\nimport {BookService} from 'src/app/book-reader/_services/book.service';\r\nimport {takeUntilDestroyed} from \"@angular/core/rxjs-interop\";\r\nimport {SentenceCasePipe} from '../../_pipes/sentence-case.pipe';\r\nimport {UserHoldsComponent} from '../user-holds/user-holds.component';\r\nimport {UserScrobbleHistoryComponent} from '../../_single-module/user-scrobble-history/user-scrobble-history.component';\r\nimport {UserStatsComponent} from '../../statistics/_components/user-stats/user-stats.component';\r\nimport {ManageDevicesComponent} from '../manage-devices/manage-devices.component';\r\nimport {ThemeManagerComponent} from '../theme-manager/theme-manager.component';\r\nimport {ApiKeyComponent} from '../api-key/api-key.component';\r\nimport {ColorPickerModule} from 'ngx-color-picker';\r\nimport {ChangeAgeRestrictionComponent} from '../change-age-restriction/change-age-restriction.component';\r\nimport {ChangePasswordComponent} from '../change-password/change-password.component';\r\nimport {ChangeEmailComponent} from '../change-email/change-email.component';\r\nimport {NgFor, NgIf, NgTemplateOutlet, TitleCasePipe} from '@angular/common';\r\nimport {\r\n NgbAccordionBody,\r\n NgbAccordionButton,\r\n NgbAccordionCollapse,\r\n NgbAccordionDirective,\r\n NgbAccordionHeader,\r\n NgbAccordionItem,\r\n NgbAccordionToggle,\r\n NgbCollapse,\r\n NgbNav,\r\n NgbNavContent,\r\n NgbNavItem,\r\n NgbNavItemRole,\r\n NgbNavLink,\r\n NgbNavOutlet,\r\n NgbTooltip\r\n} from '@ng-bootstrap/ng-bootstrap';\r\nimport {\r\n SideNavCompanionBarComponent\r\n} from '../../sidenav/_components/side-nav-companion-bar/side-nav-companion-bar.component';\r\nimport {LocalizationService} from \"../../_services/localization.service\";\r\nimport {Language} from \"../../_models/metadata/language\";\r\nimport {translate, TranslocoDirective} from \"@ngneat/transloco\";\r\nimport {LoadingComponent} from \"../../shared/loading/loading.component\";\r\nimport {ManageScrobblingProvidersComponent} from \"../manage-scrobbling-providers/manage-scrobbling-providers.component\";\r\nimport {PdfLayoutModePipe} from \"../../pdf-reader/_pipe/pdf-layout-mode.pipe\";\r\nimport {PdfTheme} from \"../../_models/preferences/pdf-theme\";\r\nimport {PdfScrollMode} from \"../../_models/preferences/pdf-scroll-mode\";\r\nimport {PdfLayoutMode} from \"../../_models/preferences/pdf-layout-mode\";\r\nimport {PdfSpreadMode} from \"../../_models/preferences/pdf-spread-mode\";\r\n\r\nenum AccordionPanelID {\r\n ImageReader = 'image-reader',\r\n BookReader = 'book-reader',\r\n GlobalSettings = 'global-settings',\r\n PdfReader = 'pdf-reader'\r\n}\r\n\r\nenum FragmentID {\r\n Account = 'account',\r\n Preferences = '',\r\n Clients = 'clients',\r\n Theme = 'theme',\r\n Devices = 'devices',\r\n Stats = 'stats',\r\n Scrobbling = 'scrobbling'\r\n}\r\n\r\n@Component({\r\n selector: 'app-user-preferences',\r\n templateUrl: './user-preferences.component.html',\r\n styleUrls: ['./user-preferences.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n standalone: true,\r\n imports: [SideNavCompanionBarComponent, NgbNav, NgFor, NgbNavItem, NgbNavItemRole, NgbNavLink, RouterLink, NgbNavContent, NgIf, ChangeEmailComponent,\r\n ChangePasswordComponent, ChangeAgeRestrictionComponent, ReactiveFormsModule, NgbAccordionDirective, NgbAccordionItem, NgbAccordionHeader,\r\n NgbAccordionToggle, NgbAccordionButton, NgbCollapse, NgbAccordionCollapse, NgbAccordionBody, NgbTooltip, NgTemplateOutlet, ColorPickerModule, ApiKeyComponent,\r\n ThemeManagerComponent, ManageDevicesComponent, UserStatsComponent, UserScrobbleHistoryComponent, UserHoldsComponent, NgbNavOutlet, TitleCasePipe, SentenceCasePipe,\r\n TranslocoDirective, LoadingComponent, ManageScrobblingProvidersComponent, PdfLayoutModePipe],\r\n})\r\nexport class UserPreferencesComponent implements OnInit, OnDestroy {\r\n\r\n private readonly destroyRef = inject(DestroyRef);\r\n private readonly accountService = inject(AccountService);\r\n private readonly toastr = inject(ToastrService);\r\n private readonly bookService = inject(BookService);\r\n private readonly titleService = inject(Title);\r\n private readonly route = inject(ActivatedRoute);\r\n private readonly settingsService = inject(SettingsService);\r\n private readonly router = inject(Router);\r\n private readonly cdRef = inject(ChangeDetectorRef);\r\n private readonly localizationService = inject(LocalizationService);\r\n protected readonly AccordionPanelID = AccordionPanelID;\r\n protected readonly FragmentID = FragmentID;\r\n\r\n readingDirectionsTranslated = readingDirections.map(this.translatePrefOptions);\r\n scalingOptionsTranslated = scalingOptions.map(this.translatePrefOptions);\r\n pageSplitOptionsTranslated = pageSplitOptions.map(this.translatePrefOptions);\r\n readingModesTranslated = readingModes.map(this.translatePrefOptions);\r\n layoutModesTranslated = layoutModes.map(this.translatePrefOptions);\r\n bookLayoutModesTranslated = bookLayoutModes.map(this.translatePrefOptions);\r\n bookColorThemesTranslated = bookColorThemes.map(o => {\r\n const d = {...o};\r\n d.name = translate('theme.' + d.translationKey);\r\n return d;\r\n });\r\n\r\n pageLayoutModesTranslated = pageLayoutModes.map(this.translatePrefOptions);\r\n bookWritingStylesTranslated = bookWritingStyles.map(this.translatePrefOptions);\r\n // pdfLayoutModesTranslated = pdfLayoutModes.map(this.translatePrefOptions);\r\n pdfScrollModesTranslated = pdfScrollModes.map(this.translatePrefOptions);\r\n pdfSpreadModesTranslated = pdfSpreadModes.map(this.translatePrefOptions);\r\n pdfThemesTranslated = pdfThemes.map(this.translatePrefOptions);\r\n\r\n\r\n settingsForm: FormGroup = new FormGroup({});\r\n user: User | undefined = undefined;\r\n\r\n observableHandles: Array = [];\r\n fontFamilies: Array = [];\r\n\r\n tabs: Array<{title: string, fragment: string}> = [\r\n {title: 'account-tab', fragment: FragmentID.Account},\r\n {title: 'preferences-tab', fragment: FragmentID.Preferences},\r\n {title: '3rd-party-clients-tab', fragment: FragmentID.Clients},\r\n {title: 'theme-tab', fragment: FragmentID.Theme},\r\n {title: 'devices-tab', fragment: FragmentID.Devices},\r\n {title: 'stats-tab', fragment: FragmentID.Stats},\r\n ];\r\n locales: Array = [{title: 'English', isoCode: 'en'}];\r\n active = this.tabs[1];\r\n opdsEnabled: boolean = false;\r\n opdsUrl: string = '';\r\n makeUrl: (val: string) => string = (val: string) => { return this.opdsUrl; };\r\n hasActiveLicense = false;\r\n\r\n\r\n\r\n constructor() {\r\n this.fontFamilies = this.bookService.getFontFamilies().map(f => f.title);\r\n this.cdRef.markForCheck();\r\n\r\n this.accountService.getOpdsUrl().subscribe(res => {\r\n this.opdsUrl = res;\r\n this.cdRef.markForCheck();\r\n });\r\n\r\n this.settingsService.getOpdsEnabled().subscribe(res => {\r\n this.opdsEnabled = res;\r\n this.cdRef.markForCheck();\r\n });\r\n\r\n this.localizationService.getLocales().subscribe(res => {\r\n this.locales = res;\r\n this.cdRef.markForCheck();\r\n });\r\n\r\n\r\n\r\n this.accountService.hasValidLicense$.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(res => {\r\n if (res) {\r\n if (this.tabs.filter(t => t.fragment == FragmentID.Scrobbling).length === 0) {\r\n this.tabs.push({title: 'scrobbling-tab', fragment: FragmentID.Scrobbling});\r\n }\r\n\r\n this.hasActiveLicense = true;\r\n this.cdRef.markForCheck();\r\n }\r\n\r\n this.route.fragment.subscribe(frag => {\r\n const tab = this.tabs.filter(item => item.fragment === frag);\r\n if (tab.length > 0) {\r\n this.active = tab[0];\r\n } else {\r\n this.active = this.tabs[1]; // Default to preferences\r\n }\r\n this.cdRef.markForCheck();\r\n });\r\n });\r\n\r\n\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.titleService.setTitle('Kavita - User Preferences');\r\n\r\n forkJoin({\r\n user: this.accountService.currentUser$.pipe(take(1)),\r\n pref: this.accountService.getPreferences()\r\n }).subscribe(results => {\r\n if (results.user === undefined) {\r\n this.router.navigateByUrl('/login');\r\n return;\r\n }\r\n\r\n this.user = results.user;\r\n this.user.preferences = results.pref;\r\n\r\n if (this.fontFamilies.indexOf(this.user.preferences.bookReaderFontFamily) < 0) {\r\n this.user.preferences.bookReaderFontFamily = 'default';\r\n }\r\n\r\n this.settingsForm.addControl('readingDirection', new FormControl(this.user.preferences.readingDirection, []));\r\n this.settingsForm.addControl('scalingOption', new FormControl(this.user.preferences.scalingOption, []));\r\n this.settingsForm.addControl('pageSplitOption', new FormControl(this.user.preferences.pageSplitOption, []));\r\n this.settingsForm.addControl('autoCloseMenu', new FormControl(this.user.preferences.autoCloseMenu, []));\r\n this.settingsForm.addControl('showScreenHints', new FormControl(this.user.preferences.showScreenHints, []));\r\n this.settingsForm.addControl('readerMode', new FormControl(this.user.preferences.readerMode, []));\r\n this.settingsForm.addControl('layoutMode', new FormControl(this.user.preferences.layoutMode, []));\r\n this.settingsForm.addControl('emulateBook', new FormControl(this.user.preferences.emulateBook, []));\r\n this.settingsForm.addControl('swipeToPaginate', new FormControl(this.user.preferences.swipeToPaginate, []));\r\n\r\n this.settingsForm.addControl('bookReaderFontFamily', new FormControl(this.user.preferences.bookReaderFontFamily, []));\r\n this.settingsForm.addControl('bookReaderFontSize', new FormControl(this.user.preferences.bookReaderFontSize, []));\r\n this.settingsForm.addControl('bookReaderLineSpacing', new FormControl(this.user.preferences.bookReaderLineSpacing, []));\r\n this.settingsForm.addControl('bookReaderMargin', new FormControl(this.user.preferences.bookReaderMargin, []));\r\n this.settingsForm.addControl('bookReaderReadingDirection', new FormControl(this.user.preferences.bookReaderReadingDirection, []));\r\n this.settingsForm.addControl('bookReaderWritingStyle', new FormControl(this.user.preferences.bookReaderWritingStyle, []))\r\n this.settingsForm.addControl('bookReaderTapToPaginate', new FormControl(this.user.preferences.bookReaderTapToPaginate, []));\r\n this.settingsForm.addControl('bookReaderLayoutMode', new FormControl(this.user.preferences.bookReaderLayoutMode || BookPageLayoutMode.Default, []));\r\n this.settingsForm.addControl('bookReaderThemeName', new FormControl(this.user?.preferences.bookReaderThemeName || bookColorThemes[0].name, []));\r\n this.settingsForm.addControl('bookReaderImmersiveMode', new FormControl(this.user?.preferences.bookReaderImmersiveMode, []));\r\n\r\n this.settingsForm.addControl('pdfTheme', new FormControl(this.user?.preferences.pdfTheme || PdfTheme.Dark, []));\r\n this.settingsForm.addControl('pdfScrollMode', new FormControl(this.user?.preferences.pdfScrollMode || PdfScrollMode.Vertical, []));\r\n this.settingsForm.addControl('pdfSpreadMode', new FormControl(this.user?.preferences.pdfSpreadMode || PdfSpreadMode.None, []));\r\n\r\n this.settingsForm.addControl('theme', new FormControl(this.user.preferences.theme, []));\r\n this.settingsForm.addControl('globalPageLayoutMode', new FormControl(this.user.preferences.globalPageLayoutMode, []));\r\n this.settingsForm.addControl('blurUnreadSummaries', new FormControl(this.user.preferences.blurUnreadSummaries, []));\r\n this.settingsForm.addControl('promptForDownloadSize', new FormControl(this.user.preferences.promptForDownloadSize, []));\r\n this.settingsForm.addControl('noTransitions', new FormControl(this.user.preferences.noTransitions, []));\r\n this.settingsForm.addControl('collapseSeriesRelationships', new FormControl(this.user.preferences.collapseSeriesRelationships, []));\r\n this.settingsForm.addControl('shareReviews', new FormControl(this.user.preferences.shareReviews, []));\r\n this.settingsForm.addControl('locale', new FormControl(this.user.preferences.locale || 'en', []));\r\n\r\n if (this.locales.length === 1) {\r\n this.settingsForm.get('locale')?.disable();\r\n }\r\n\r\n this.cdRef.markForCheck();\r\n });\r\n\r\n this.settingsForm.get('bookReaderImmersiveMode')?.valueChanges.pipe(takeUntilDestroyed(this.destroyRef)).subscribe(mode => {\r\n if (mode) {\r\n this.settingsForm.get('bookReaderTapToPaginate')?.setValue(true);\r\n this.cdRef.markForCheck();\r\n }\r\n });\r\n this.cdRef.markForCheck();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.observableHandles.forEach(o => o.unsubscribe());\r\n }\r\n\r\n\r\n resetForm() {\r\n if (this.user === undefined) { return; }\r\n this.settingsForm.get('readingDirection')?.setValue(this.user.preferences.readingDirection);\r\n this.settingsForm.get('scalingOption')?.setValue(this.user.preferences.scalingOption);\r\n this.settingsForm.get('autoCloseMenu')?.setValue(this.user.preferences.autoCloseMenu);\r\n this.settingsForm.get('showScreenHints')?.setValue(this.user.preferences.showScreenHints);\r\n this.settingsForm.get('readerMode')?.setValue(this.user.preferences.readerMode);\r\n this.settingsForm.get('layoutMode')?.setValue(this.user.preferences.layoutMode);\r\n this.settingsForm.get('pageSplitOption')?.setValue(this.user.preferences.pageSplitOption);\r\n this.settingsForm.get('bookReaderFontFamily')?.setValue(this.user.preferences.bookReaderFontFamily);\r\n this.settingsForm.get('bookReaderFontSize')?.setValue(this.user.preferences.bookReaderFontSize);\r\n this.settingsForm.get('bookReaderLineSpacing')?.setValue(this.user.preferences.bookReaderLineSpacing);\r\n this.settingsForm.get('bookReaderMargin')?.setValue(this.user.preferences.bookReaderMargin);\r\n this.settingsForm.get('bookReaderTapToPaginate')?.setValue(this.user.preferences.bookReaderTapToPaginate);\r\n this.settingsForm.get('bookReaderReadingDirection')?.setValue(this.user.preferences.bookReaderReadingDirection);\r\n this.settingsForm.get('bookReaderWritingStyle')?.setValue(this.user.preferences.bookReaderWritingStyle);\r\n this.settingsForm.get('bookReaderLayoutMode')?.setValue(this.user.preferences.bookReaderLayoutMode);\r\n this.settingsForm.get('bookReaderThemeName')?.setValue(this.user.preferences.bookReaderThemeName);\r\n this.settingsForm.get('theme')?.setValue(this.user.preferences.theme);\r\n this.settingsForm.get('bookReaderImmersiveMode')?.setValue(this.user.preferences.bookReaderImmersiveMode);\r\n this.settingsForm.get('globalPageLayoutMode')?.setValue(this.user.preferences.globalPageLayoutMode);\r\n this.settingsForm.get('blurUnreadSummaries')?.setValue(this.user.preferences.blurUnreadSummaries);\r\n this.settingsForm.get('promptForDownloadSize')?.setValue(this.user.preferences.promptForDownloadSize);\r\n this.settingsForm.get('noTransitions')?.setValue(this.user.preferences.noTransitions);\r\n this.settingsForm.get('emulateBook')?.setValue(this.user.preferences.emulateBook);\r\n this.settingsForm.get('swipeToPaginate')?.setValue(this.user.preferences.swipeToPaginate);\r\n this.settingsForm.get('collapseSeriesRelationships')?.setValue(this.user.preferences.collapseSeriesRelationships);\r\n this.settingsForm.get('shareReviews')?.setValue(this.user.preferences.shareReviews);\r\n this.settingsForm.get('locale')?.setValue(this.user.preferences.locale);\r\n\r\n this.settingsForm.get('pdfTheme')?.setValue(this.user.preferences.pdfTheme);\r\n this.settingsForm.get('pdfScrollMode')?.setValue(this.user.preferences.pdfScrollMode);\r\n this.settingsForm.get('pdfSpreadMode')?.setValue(this.user.preferences.pdfSpreadMode);\r\n\r\n this.cdRef.markForCheck();\r\n this.settingsForm.markAsPristine();\r\n }\r\n\r\n save() {\r\n if (this.user === undefined) return;\r\n const modelSettings = this.settingsForm.value;\r\n const data: Preferences = {\r\n readingDirection: parseInt(modelSettings.readingDirection, 10),\r\n scalingOption: parseInt(modelSettings.scalingOption, 10),\r\n pageSplitOption: parseInt(modelSettings.pageSplitOption, 10),\r\n autoCloseMenu: modelSettings.autoCloseMenu,\r\n readerMode: parseInt(modelSettings.readerMode, 10),\r\n layoutMode: parseInt(modelSettings.layoutMode, 10),\r\n showScreenHints: modelSettings.showScreenHints,\r\n backgroundColor: this.user.preferences.backgroundColor,\r\n bookReaderFontFamily: modelSettings.bookReaderFontFamily,\r\n bookReaderLineSpacing: modelSettings.bookReaderLineSpacing,\r\n bookReaderFontSize: modelSettings.bookReaderFontSize,\r\n bookReaderMargin: modelSettings.bookReaderMargin,\r\n bookReaderTapToPaginate: modelSettings.bookReaderTapToPaginate,\r\n bookReaderReadingDirection: parseInt(modelSettings.bookReaderReadingDirection, 10),\r\n bookReaderWritingStyle: parseInt(modelSettings.bookReaderWritingStyle, 10),\r\n bookReaderLayoutMode: parseInt(modelSettings.bookReaderLayoutMode, 10),\r\n bookReaderThemeName: modelSettings.bookReaderThemeName,\r\n theme: modelSettings.theme,\r\n bookReaderImmersiveMode: modelSettings.bookReaderImmersiveMode,\r\n globalPageLayoutMode: parseInt(modelSettings.globalPageLayoutMode, 10),\r\n blurUnreadSummaries: modelSettings.blurUnreadSummaries,\r\n promptForDownloadSize: modelSettings.promptForDownloadSize,\r\n noTransitions: modelSettings.noTransitions,\r\n emulateBook: modelSettings.emulateBook,\r\n swipeToPaginate: modelSettings.swipeToPaginate,\r\n collapseSeriesRelationships: modelSettings.collapseSeriesRelationships,\r\n shareReviews: modelSettings.shareReviews,\r\n locale: modelSettings.locale,\r\n pdfTheme: parseInt(modelSettings.pdfTheme, 10),\r\n pdfScrollMode: parseInt(modelSettings.pdfScrollMode, 10),\r\n pdfSpreadMode: parseInt(modelSettings.pdfSpreadMode, 10),\r\n };\r\n\r\n this.observableHandles.push(this.accountService.updatePreferences(data).subscribe((updatedPrefs) => {\r\n this.toastr.success(translate('user-preferences.success-toast'));\r\n if (this.user) {\r\n this.user.preferences = updatedPrefs;\r\n\r\n this.cdRef.markForCheck();\r\n }\r\n this.resetForm();\r\n }));\r\n }\r\n\r\n\r\n handleBackgroundColorChange() {\r\n this.settingsForm.markAsDirty();\r\n this.settingsForm.markAsTouched();\r\n this.cdRef.markForCheck();\r\n }\r\n\r\n translatePrefOptions(o: {text: string, value: any}) {\r\n const d = {...o};\r\n d.text = translate('preferences.' + o.text);\r\n return d;\r\n }\r\n\r\n protected readonly undefined = undefined;\r\n}\r\n","\r\n \r\n

\r\n {{t('title')}}\r\n

\r\n
\r\n
\r\n
    \r\n
  • \r\n {{ t(tab.title) }}\r\n \r\n @defer (when tab.fragment === FragmentID.Account; prefetch on idle) {\r\n \r\n \r\n \r\n \r\n }\r\n\r\n @defer (when tab.fragment === FragmentID.Preferences; prefetch on idle) {\r\n \r\n

    \r\n {{t('pref-description')}}\r\n

    \r\n\r\n
    \r\n
    \r\n\r\n
    \r\n

    \r\n \r\n

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n {{t('page-layout-mode-tooltip')}}\r\n \r\n \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n \r\n {{t('locale-tooltip')}}\r\n \r\n \r\n \r\n \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n {{t('blur-unread-summaries-tooltip')}}\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n \r\n {{t('prompt-on-download-tooltip', {size: '100'})}}\r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n\r\n {{t('disable-animations-tooltip')}}\r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n \r\n {{t('collapse-series-relationships-tooltip')}}\r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n \r\n \r\n \r\n
    \r\n {{t('share-series-reviews-tooltip')}}\r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n

    \r\n \r\n

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n {{t('reading-direction-tooltip')}}\r\n \r\n \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n {{t('scaling-option-tooltip')}}\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n {{t('page-splitting-tooltip')}}\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n {{t('layout-mode-tooltip')}}\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n

    \r\n \r\n

    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n {{t('tap-to-paginate-tooltip')}}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n \r\n {{t('immersive-mode-label')}}\r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n {{t('reading-direction-book-tooltip')}}\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n\r\n
    \r\n \r\n {{t('font-family-tooltip')}}\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n {{t('writing-style-tooltip')}}\r\n \r\n \r\n \r\n \r\n
    \r\n\r\n
    \r\n \r\n {{t('layout-mode-book-tooltip')}}\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n\r\n
    \r\n \r\n {{t('color-theme-book-tooltip')}}\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n \r\n {{settingsForm.get('bookReaderFontSize')?.value + '%'}}\r\n
    \r\n\r\n\r\n
    \r\n
    \r\n \r\n {{t('line-height-book-tooltip')}}\r\n \r\n \r\n \r\n
    \r\n \r\n {{settingsForm.get('bookReaderLineSpacing')?.value + '%'}}\r\n
    \r\n\r\n
    \r\n
    \r\n \r\n {{t('margin-book-tooltip')}}\r\n \r\n \r\n \r\n
    \r\n\r\n \r\n {{settingsForm.get('bookReaderMargin')?.value + '%'}}\r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n\r\n
    \r\n

    \r\n \r\n

    \r\n
    \r\n
    \r\n \r\n\r\n
    \r\n
    \r\n \r\n {{t('pdf-spread-mode-tooltip')}}\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n
    \r\n \r\n {{t('pdf-scroll-mode-tooltip')}}\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n\r\n
    \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n }\r\n\r\n @defer (when tab.fragment === FragmentID.Clients; prefetch on idle) {\r\n
    {{t('clients-opds-alert')}}
    \r\n

    {{t('clients-opds-description')}}

    \r\n \r\n \r\n }\r\n @defer (when tab.fragment === FragmentID.Theme; prefetch on idle) {\r\n \r\n }\r\n\r\n @defer (when tab.fragment === FragmentID.Devices; prefetch on idle) {\r\n \r\n }\r\n\r\n @defer (when tab.fragment === FragmentID.Stats; prefetch on idle) {\r\n \r\n }\r\n\r\n @defer (when tab.fragment === FragmentID.Scrobbling; prefetch on idle) {\r\n @if(hasActiveLicense) {\r\n \r\n \r\n }\r\n }\r\n
    \r\n
  • \r\n
\r\n
\r\n
\r\n
\r\n","import { Routes } from '@angular/router';\r\nimport { UserPreferencesComponent } from '../user-settings/user-preferences/user-preferences.component';\r\n\r\nexport const routes: Routes = [\r\n {path: '', component: UserPreferencesComponent, pathMatch: 'full'},\r\n];\r\n"],"mappings":"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","names":["_c0","_c1","_c2","ColorPickerComponent_div_2_Template","rf","ctx","ɵɵelement","ctx_r1","ɵɵnextContext","ɵɵclassMapInterpolate1","ɵɵstyleProp","ColorPickerComponent_div_3_Template","_r3","ɵɵgetCurrentView","ɵɵelementStart","ɵɵlistener","$event","ɵɵrestoreView","ɵɵresetView","ɵɵelementEnd","ɵɵproperty","ɵɵadvance","ColorPickerComponent__svg_svg_8_Template","ɵɵnamespaceSVG","ColorPickerComponent_button_9_Template","_r4","ɵɵtext","ɵɵclassMap","ɵɵtextInterpolate1","ColorPickerComponent_div_11_Template","ColorPickerComponent_div_21_input_6_Template","_r6","ColorPickerComponent_div_21_div_16_Template","ColorPickerComponent_div_21_Template","_r5","ɵɵtemplate","ColorPickerComponent_div_22_input_5_Template","_r8","ColorPickerComponent_div_22_div_13_Template","ColorPickerComponent_div_22_Template","_r7","ColorPickerComponent_div_23_input_5_Template","_r10","ColorPickerComponent_div_23_div_13_Template","ColorPickerComponent_div_23_Template","_r9","ColorPickerComponent_div_24_input_3_Template","_r12","ColorPickerComponent_div_24_div_7_Template","ColorPickerComponent_div_24_Template","_r11","ɵɵclassProp","ColorPickerComponent_div_25_input_3_Template","_r14","ColorPickerComponent_div_25_Template","_r13","ColorPickerComponent_div_26_Template","_r15","ColorPickerComponent_div_27_div_4_div_1_span_1_Template","_r18","color_r17","ColorPickerComponent_div_27_div_4_div_1_Template","_r16","ColorPickerComponent_div_27_div_4_Template","ColorPickerComponent_div_27_div_5_Template","ɵɵtextInterpolate","ColorPickerComponent_div_27_Template","ColorPickerComponent_div_28_button_1_Template","_r19","ColorPickerComponent_div_28_button_2_Template","_r20","ColorPickerComponent_div_28_Template","ColorPickerComponent_div_29_ng_container_1_Template","ɵɵelementContainer","ColorPickerComponent_div_29_Template","ColorFormats","Rgba","r","g","b","a","Hsva","h","s","v","Hsla","l","Cmyk","c","m","y","k","calculateAutoPositioning","elBounds","triggerElBounds","usePositionX","usePositionY","height","width","top","left","bottom","right","collisionTop","collisionBottom","collisionLeft","collisionRight","collisionAll","prev","next","detectIE","ua","msie","TextDirective","EventEmitter","event","value","numeric","t","ɵɵdefineDirective","SliderDirective","elRef","position","x","ɵɵdirectiveInject","ElementRef","SliderPosition","SliderDimension","ColorPickerService","active","hsva","hsla","i","f","p","q","cmyk","rgba","max","min","d","allowHex8","hex","colorString","stringParsers","execResult","key","parser","match","color","outputFormat","alphaChannel","hslaText","ɵɵdefineInjectable","SUPPORTS_TOUCH","ColorPickerComponent","ngZone","cdRef","document","platformId","service","isPlatformBrowser","hueWidth","alphaWidth","emit","instance","elementRef","cpWidth","cpHeight","cpDialogDisplay","cpFallbackColor","cpColorMode","cpCmykEnabled","cpAlphaChannel","cpOutputFormat","cpDisableInput","cpIgnoredElements","cpSaveClickOutside","cpCloseClickOutside","cpUseRootViewContainer","cpPosition","cpPositionOffset","cpPositionRelativeToArrow","cpPresetLabel","cpPresetColors","cpPresetColorsClass","cpMaxPresetColorsLength","cpPresetEmptyMessage","cpPresetEmptyMessageClass","cpOKButton","cpOKButtonClass","cpOKButtonText","cpCancelButton","cpCancelButtonClass","cpCancelButtonText","cpAddColorButton","cpAddColorButtonClass","cpAddColorButtonText","cpRemoveColorButtonClass","cpEyeDropper","cpTriggerElement","cpExtraTemplate","mode","update","slider","item","eyeDropperResult","change","availableFormats","nextFormat","validHex","valid","cmykInput","hue","lastOutput","alpha","transform","style","parentNode","transformNode","node","dialogHeight","boxDirective","boxParent","usePosition","dialogBounds","triggerBounds","windowInnerHeight","windowInnerWidth","elRefClientRect","parent","child","element","offset","NgZone","ChangeDetectorRef","DOCUMENT","PLATFORM_ID","ɵɵdefineComponent","ɵɵviewQuery","_t","ɵɵqueryRefresh","ɵɵloadQuery","ɵɵresolveDocument","_r1","NgForOf","NgIf","NgTemplateOutlet","NG_DEV_MODE","ColorPickerDirective","injector","cfr","appRef","vcRef","_service","changes","classOfRootComponent","appInstance","Injector","compFactory","state","ignore","ignored","ComponentFactoryResolver$1","ApplicationRef","ViewContainerRef","ɵɵNgOnChangesFeature","ColorPickerModule","ɵɵdefineNgModule","ɵɵdefineInjector","CommonModule","LocalizationService","constructor","httpClient","baseUrl","environment","apiUrl","getLocales","get","ɵɵinject","HttpClient","factory","ɵfac","providedIn","_LocalizationService","NgFor","NgIf","ɵNgNoValidate","NgSelectOption","ɵNgSelectMultipleOption","DefaultValueAccessor","RangeValueAccessor","CheckboxControlValueAccessor","SelectControlValueAccessor","NgControlStatus","NgControlStatusGroup","FormGroupDirective","FormControlName","NgbAccordionDirective","NgbAccordionItem","NgbAccordionHeader","NgbAccordionButton","NgbAccordionCollapse","NgbAccordionBody","NgbTooltip","NgTemplateOutlet","ColorPickerDirective","TitleCasePipe","then","m","ApiKeyComponent","ɵɵelement","ɵɵtext","ɵɵtextInterpolate","t_r4","ɵɵelementStart","ɵɵelementEnd","ɵɵproperty","opt_r5","value","ɵɵadvance","ɵɵtextInterpolate1","ɵɵpipeBind1","text","opt_r6","isoCode","title","ɵɵpureFunction0","_c0","ɵɵtemplate","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_9_ng_template_5_Template","ɵɵtemplateRefExtractor","ɵɵelementContainer","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_9_option_10_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_9_ng_template_15_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_9_option_20_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_9_ng_template_28_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_9_ng_template_39_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_9_ng_template_50_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_9_ng_template_61_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_9_ng_template_72_Template","ɵɵlistener","ɵɵrestoreView","_r3","ctx_r1","ɵɵnextContext","ɵɵresetView","resetForm","save","layoutModeTooltip_r7","pageLayoutModesTranslated","localeTooltip_r8","locales","blurUnreadSummariesTooltip_r9","promptForDownloadSizeTooltip_r10","noTransitionsTooltip_r11","collapseSeriesRelationshipsTooltip_r12","shareReviewsTooltip_r13","settingsForm","dirty","opt_r15","opt_r16","opt_r17","opt_r18","opt_r19","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_16_div_38_ng_template_4_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_16_div_38_option_9_Template","layoutModeTooltip_r20","layoutModesTranslated","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_16_ng_template_5_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_16_option_10_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_16_ng_template_15_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_16_option_20_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_16_ng_template_26_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_16_option_31_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_16_option_36_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_16_div_38_Template","_r14","handleBackgroundColorChange","ɵɵtwoWayListener","$event","i0","ɵɵtwoWayBindingSet","user","preferences","backgroundColor","readingDirectionTooltip_r21","readingDirectionsTranslated","scalingOptionTooltip_r22","scalingOptionsTranslated","pageSplitOptionTooltip_r23","pageSplitOptionsTranslated","readingModesTranslated","ɵɵstyleProp","ɵɵtwoWayProperty","opt_r25","opt_r26","opt_r27","opt_r28","opt_r29","name","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_23_ng_template_9_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_23_ng_template_21_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_23_ng_template_30_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_23_option_35_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_23_ng_template_40_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_23_option_45_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_23_ng_template_51_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_23_option_56_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_23_ng_template_61_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_23_option_66_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_23_ng_template_72_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_23_option_77_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_23_ng_template_90_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_23_ng_template_102_Template","_r24","tapToPaginateOptionTooltip_r30","immersivemodeOptionTooltip_r31","bookReadingDirectionTooltip_r32","fontFamilyOptionTooltip_r33","fontFamilies","bookWritingStyleToolTip_r34","bookWritingStylesTranslated","bookLayoutModeTooltip_r35","bookLayoutModesTranslated","bookColorThemeTooltip_r36","bookColorThemesTranslated","tmp_49_0","get","bookLineHeightOptionTooltip_r37","tmp_53_0","bookReaderMarginOptionTooltip_r38","tmp_57_0","opt_r40","opt_r41","opt_r42","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_30_ng_template_5_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_30_option_10_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_30_option_15_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_30_ng_template_21_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_30_option_26_Template","_r39","pdfSpreadModeTooltip_r43","pdfSpreadModesTranslated","pdfThemesTranslated","pdfScrollModeTooltip_r44","pdfScrollModesTranslated","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_9_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_16_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_23_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_ng_template_30_Template","AccordionPanelID","GlobalSettings","ImageReader","BookReader","PdfReader","ɵɵelementContainerStart","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_form_3_Template","undefined","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_ng_container_0_Template","tab_r46","fragment","FragmentID","Preferences","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_6_div_0_Template","opdsEnabled","makeUrl","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_18_Conditional_0_Template","ɵɵconditional","hasActiveLicense","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_0_Template","ɵɵdefer","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_1_DepsFn","ɵɵdeferPrefetchOnIdle","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_3_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_4_DepsFn","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_6_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_7_DepsFn","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_9_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_10_DepsFn","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_12_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_13_DepsFn","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_15_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_16_DepsFn","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_18_Template","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Defer_19_DepsFn","ɵɵdeferWhen","Account","Clients","Theme","Devices","Stats","Scrobbling","UserPreferencesComponent_ng_container_0_li_7_ng_template_3_Template","_r1","active","UserPreferencesComponent_ng_container_0_li_7_Template","tabs","nav_r47","UserPreferencesComponent","constructor","destroyRef","inject","DestroyRef","accountService","AccountService","toastr","ToastrService","bookService","BookService","titleService","Title","route","ActivatedRoute","settingsService","SettingsService","router","Router","cdRef","ChangeDetectorRef","localizationService","LocalizationService","readingDirections","map","translatePrefOptions","scalingOptions","pageSplitOptions","readingModes","layoutModes","bookLayoutModes","bookColorThemes","o","d","__spreadValues","translate","translationKey","pageLayoutModes","bookWritingStyles","pdfScrollModes","pdfSpreadModes","pdfThemes","FormGroup","observableHandles","opdsUrl","val","getFontFamilies","f","markForCheck","getOpdsUrl","subscribe","res","getOpdsEnabled","getLocales","hasValidLicense$","pipe","takeUntilDestroyed","filter","t","length","push","frag","tab","item","ngOnInit","setTitle","forkJoin","currentUser$","take","pref","getPreferences","results","navigateByUrl","indexOf","bookReaderFontFamily","addControl","FormControl","readingDirection","scalingOption","pageSplitOption","autoCloseMenu","showScreenHints","readerMode","layoutMode","emulateBook","swipeToPaginate","bookReaderFontSize","bookReaderLineSpacing","bookReaderMargin","bookReaderReadingDirection","bookReaderWritingStyle","bookReaderTapToPaginate","bookReaderLayoutMode","BookPageLayoutMode","Default","bookReaderThemeName","bookReaderImmersiveMode","pdfTheme","PdfTheme","Dark","pdfScrollMode","PdfScrollMode","Vertical","pdfSpreadMode","PdfSpreadMode","None","theme","globalPageLayoutMode","blurUnreadSummaries","promptForDownloadSize","noTransitions","collapseSeriesRelationships","shareReviews","locale","disable","valueChanges","mode","setValue","ngOnDestroy","forEach","unsubscribe","markAsPristine","modelSettings","data","parseInt","updatePreferences","updatedPrefs","success","markAsDirty","markAsTouched","selectors","standalone","features","ɵɵStandaloneFeature","decls","vars","consts","template","rf","ctx","UserPreferencesComponent_ng_container_0_Template","SideNavCompanionBarComponent","NgbNav","NgbNavItem","NgbNavItemRole","NgbNavLink","RouterLink","NgbNavContent","ReactiveFormsModule","ColorPickerModule","NgbNavOutlet","TranslocoDirective","styles","changeDetection","_UserPreferencesComponent","routes","path","component","UserPreferencesComponent","pathMatch"],"x_google_ignoreList":[0]}